2011-04-14 300 views
0

保存提交歷史記錄存在問題。我有一個名爲「主」的主分支。在根文件夾中,我有一個名爲'kp'的目錄和其他一些我不需要的東西。我想將'kp'文件夾中的所有內容都放到根目錄下,並將文件的提交歷史記錄保存到一個文件夾中。我試過(一步一步):在git中保存歷史記錄

  1. 克隆回購;
  2. 創建新分支;
  3. 使用命令git filter-branch從'kp'文件夾中獲取我的數據;
  4. 將新分支推送到回購。

但是沒有歷史。我做錯了什麼?

+0

爲什麼不只是「刪除所有其他」? – KingCrunch 2011-04-14 13:41:39

+0

你是什麼意思? – alexvassel 2011-04-14 13:43:40

+0

據我所知:您想要刪除除kp /'文件夾內容以外的所有內容,並且想要將文件夾「kp /'的內容移動到您的存儲庫的根目錄中。所以我的第一個建議就是這樣。只需刪除所有內容,除了一個文件夾,將所有內容全部向下並提交。 – KingCrunch 2011-04-14 13:49:14

回答

0

我相信你要找的答案是here

+0

我會試試看。但有一個問題。我確實很喜歡KingCrunch所說的(上圖),歷史已被保存。那麼爲什麼我應該使用git filter-branch的方式?或者,也許我誤解了一些東西? – alexvassel 2011-04-14 14:15:12

+0

人們爲你所做的事情提供過濾器分支的原因大多數時候是有人問這個問題,他們希望它看起來像內容甚至從未在存儲庫中,你可以使用過濾器分支。有了KingCrunch的建議,所有這些內容仍然存在於回購協議中,如果您簽出之前的提交,它將全部存在。如果您不擔心回購規模(通常是過濾器分支的浮躁),這很好。 – asm 2011-04-14 17:21:25

+0

感謝您的解釋。 – alexvassel 2011-04-14 17:31:30

相關問題