2014-10-17 55 views
1

如何基於時間戳重複提交包含重複提交的repo?基於時間戳的git rebase master

一些背景: 我們有一個髒回購,因爲從一個git遠程轉移到另一個git遠程並在新的git遠程端點上調整用戶名。這導致來自「另一個」用戶的雙重提交,這實際上是相同的。單一一致性是時間戳 - 那麼是否有辦法自動刪除重複項?

+1

如果提交包含相同的更改,那麼'rebase'應該根據它自動刪除它們。 – 2014-10-17 21:31:24

+0

你的編輯沒有多大意義。你嘗試重新裝訂嗎?這些提交是線性還是你有一個合併提交指向兩個單獨的路徑? – 2014-10-18 23:09:59

+0

我試圖重新綁定。我選擇了第一個「挑選」,下面提交了相同的消息來「擠壓」,但是這隻會導致HEAD上的新合併。我想要做的是從歷史中刪除提交。有很多,但我可以手動做到這一點 - 如果可以用時間戳完成,那將是很好的。那些提交是在一個獨立的路徑。我們的一位用戶更改了用戶名,我的錯就是將這些更改從新舊版本更改爲舊版本。所以現在我們有多條路徑,因爲存在重複的提交。謝謝 – 2014-10-19 09:49:33

回答

0

由於noted通過Andrew C,並提到在git rebase man page

先前保存到暫存區的提交,然後重新應用到當前分支,一個接一個,爲了。
請注意,在HEAD中引入與HEAD..<upstream>中的提交相同的文本更改的任何提交被省略(即,已經用不同的提交消息或時間戳上游接受的補丁將被跳過)。

因此,一個rebase -i master,接受提交列表的原樣,應導致只有一組提交,沒有重複。