我對 Git 還很陌生,但是我正在嘗試糾正我之前創建的一些非常糟糕的檔案結構并且不確定如何。
基本上我們擁有的是這個結構:
--original_folder
-- file1
-- file2
-- file3
-- file4
-- file5
--corrections_to_original_files_folder
-- file1
-- file2
-- file3
-- file4
-- file5
original_folder表示第一個合并的分支,并corrections_to_original_files_folder表示第二個合并的分支(您猜對了,其中包含對這些檔案的更正)。
顯然,這是一種非常糟糕的方法。為了減少冗余,我試圖做的是創建一個新分支,并從本質上將 的內容替換為original_folder的內容,corrections_to_original_files_folder并從那里進行額外的編輯。
但是我嘗試了幾種方法,因為這段代碼都被合并了,我不能依賴任何git mv方法,或者git checkout origin/BRANCH_TO_MOVE_FROM desired_file.py.
誰能幫我解決這個垃圾箱火災?
uj5u.com熱心網友回復:
聽起來你可以做你想做的事,而且你不會有任何問題:
為了減少冗余,我試圖做的是創建一個新分支,并從本質上將 的內容替換為
original_folder的內容,corrections_to_original_files_folder并從那里進行額外的編輯。
假設您當前描述的重復檔案夾結構存在于main. 現在讓我們按照你說的做:
- 從 main 創建一個新分支:
git switch -c new-branch main - 將檔案夾中的檔案復制
corrections_to_original_files_folder到original_folder. Git 會將這些檔案顯示為全部已編輯。 - 洗掉整個檔案夾
corrections_to_original_files_folder。Git 將繼續將其他檔案夾的檔案顯示為已編輯,并另外將所有這些檔案顯示為已洗掉。 - 使用措辭恰當的提交訊息提交更改,說明您做了什么以及為什么。
- 像往常一樣作業。
現在,您可以根據需要合并new-branch,main以便每個人都可以立即獲得修復,或者您可以繼續作業new-branch并稍后合并它。一旦new-branch被合并到main“修復”中,就會被應用。
請注意,這幾乎正是您所說的想要做的。我猜你只是沒有意識到它會起作用,但它應該起作用。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/438261.html
上一篇:撤消git-lfs中的本地更改
