2012-08-11 54 views
3

我有一個問題,我的git倉庫中的一個(FYI:我真的與git)如何在不重新開始的情況下對git存儲庫進行重大更改?

基本上,我忘了我會爲一個項目創建的回購,在錯誤的工作集的文件(我的原始副本),做了一些大的更改並重命名了大部分文件。

現在我意識到我的錯誤我在想如何將新文件放到我的回購站中,替換舊文件,這樣我就不會在兩個不同的名稱下得到兩個不同版本的相同文件。

我不想完全刪除舊的repo,並用新文件重新創建它,因爲我已經將它推到github上。

任何人都可以提供一些幫助和/或建議嗎? nb:不確定最好的'堆棧'網站把它放在這裏,想通了或編程?!

+0

感謝grawity - 葉,我不知道哪裏最好把這個問題。如果有需要,它會被標記爲感動嗎?我可能會給你的解決方案。我幾天前才創建了回購協議,而且我是唯一的開發人員,所以我懷疑其他人正在使用它。謝謝 – Chris 2012-08-11 21:24:56

+2

所有的重命名已經用'git mv'完成了嗎?如果他們都跟蹤了變化,什麼阻止了你推動它? – Christopher 2012-08-12 03:48:30

+0

只是因爲得到的主要是程序員使用並不意味着它在這裏脫離主題。這是git的一個使用問題,如果它可以在這裏回答,它可以留在這裏,但請注意它可能會*更快地回答SO。 – Mokubai 2012-08-12 09:38:35

回答

3

因此,您有一個存儲庫R和一個不同的工作目錄W,在這個目錄下工作時沒有任何版本控制,對嗎?

基本上,在確定R中沒有無限制的更改後,將R的簽出替換爲W的內容:刪除R的內容,除.git目錄和任何.git *文件外,以及將W的內容複製到它中,以便保持原樣的文件位於舊的位置。

然後你創建一個新的提交併將其推到github。

+0

謝謝@Ozan這就是我所做的,它工作得很好!我意識到我的問題最終可能是一個非問題,但正如我所說,我仍然在學習如何正確使用git(以及通常的版本控制)。 – Chris 2012-08-21 09:16:06

相關問題