2017-08-07 192 views
0

我不知道這是多麼的典型,但是我需要做的是替換部分本地倉庫。替換遠程git倉庫

我已經在Team Foundation Server(TFS)中啓動了包含具有多個項目的Visual Studio解決方案的git存儲庫。其結構是在Visual Studio與此類似:

Solution Folder (root) 
| 
|- WPF 
| 
|- C# services 
| 
|- Angular App // <-- I want to replace just this 

在遠程倉庫的角度應用程序有惡意代碼,它已經從地上爬起來重建。我只需要完全替換git倉庫的Angular App部分!

這樣做的最好方法是什麼?同樣,Visual Studio解決方案的其餘部分必須保持不變並且可以正常工作。

我寧願在提交任何新的Angular文件之前,先前版本的Angular應用程序在遠程存儲庫中消失。

我能做到這一點,只需刪除在我的本地文件夾中的所有文件角,然後做一個「混帳推」,這應該刪除所有文件角因爲沒有在本地文件夾?

然後就可以複製我的新工作角應用到本地文件夾,做一套「混帳推」,這應該提交所有新的角度文件到同一現有的遠程存儲庫?

底線是我不能保留以前的Angular應用程序的任何文件。

回答

1

是的,您可以刪除文件,提交刪除,然後將更改推送到遠程。這將消除文件。

但是,這些文件的歷史將仍然在回購。這是正確和正常的行爲。

如果您還需要刪除歷史記錄,則可以重寫過去的提交歷史記錄(使用filter-branch或專門的歷史記錄重寫工具,如BFG)以消除它們。然而,這是一個破壞性的操作,因爲重寫的提交會分配給它們新的哈希值,導致每個人都需要重新克隆該回購。就個人而言,我不會打擾。

+0

我可以和歷史在那裏住,我就犯了條消息刪除後,認爲這是爲新的清潔應用的新起點。 –