問題
既然我已經提交類似如下:我如何簡單地線性化我的git歷史記錄?
A - B - C - D - G - H
\ /
- E - F -
如何獲得以下僅第一家長完全線性的歷史?
例如,我想:
A - B - C - D - G'- H'
據預計,G和H的SHA1的會發生變化,如上所述。 (由於顯而易見的原因)。如果sha1的A,B,C和D也改變,那麼我想知道爲什麼。
背景
的目的是爲了避免潛在的合併的提交,將做一個天真的git的變基-i時,會出現。
真正的問題是希望更深入地瞭解,以確定哪些提交是在一個特定的分支,例如,如果我們有如下圖:
I - J - K - L - M
\ ///
- N - O - P -
其中N被合併到K,但Ø與--strategy = our合併爲L,P合併爲M.
我希望能夠線性化我的歷史記錄,以便可以識別和檢查此類有問題的提交。我希望有一棵樹可以識別出O沒有放入上游分支,即使我可能通過使用git cherry也可能將N和P識別爲可能從上游分支丟失,但是這裏的任何建議都將被讚賞。
要改寫你的問題,你想修改每個合併提交,只保留其第一個父,忘記合併的分支(保留差異當然) – CharlesB
@CharlesB:是的,沒錯! – Arafangion