2017-03-08 32 views
0

所以這是我的情況:合併遠程分支時保留所有文件

甲方有一個巨大的項目需要new_feature。乙方克隆回購,並開始在new_feature上工作。然而,乙方缺乏必需的咖啡因和腦細胞,而且是Git的新手,刪除了與新功能無關的所有文件,以減輕編譯和簡化工作空間的負擔。既然new_feature已準備好重新合併到甲方的回購協議中,甲方如何合併它而不合並刪除他的任何文件?

(注:甲方具有比乙方一點Git的經驗,因爲他們都是同一個白癡 - 我)

+0

他們刪除了所有內容,然後在文件層次結構頂部寫了一個與之前的狀態有些類似的文件? – nir0s

+0

刪除了大部分內容,但稍後寫入的文件並未與刪除的文件共享任何名稱 – automaton

+0

乙方添加了多少新文件?在5或500的順序? – mprat

回答

1

安全的方法收回new_feature分支被刪除的文件和然後合併爲主人(假設主分支是這裏的主人)。

要恢復new_feature分支中已刪除的文件,您需要簽出一個臨時分支並從主存儲文件,然後將存儲工作應用到new_branch分支中。詳細步驟如下:

git checkout new_feature 
git checkout -b temp 
git rm *.* 
git commit -am 'keep empty' 
git checkout <latest commit id on master> *.* 
git stash 
git checkout new_feature 
git stash pop 
git commit -am 'recovery the deleted files' 
git branch -D temp