我見過很多關於使用git commit --amend
的博客文章,或者重新壓縮提交。壓扁和重組提交
我發現將git重置爲最後一個檢查點(比如在我的所有'保存點'微提交之前說)比較容易一些,然後使用交互式添加來挑選最佳提交順序。
這是否有缺點?
我想知道B/C爲我讀的大多數博客使用修改或爲此目的使用底座
我見過很多關於使用git commit --amend
的博客文章,或者重新壓縮提交。壓扁和重組提交
我發現將git重置爲最後一個檢查點(比如在我的所有'保存點'微提交之前說)比較容易一些,然後使用交互式添加來挑選最佳提交順序。
這是否有缺點?
我想知道B/C爲我讀的大多數博客使用修改或爲此目的使用底座
缺點是您可以再次選擇所有單個文件,以便在提交中再次對它們進行分組。
如果您的提交需要組合在一起(而不必在這些提交中添加或刪除文件),那麼rebase - 交互更容易:您提交文件集的原因。
其實,有了正確的提交意見,rebase --interactive --autosquash
可以爲您重新排序。
如果您的提交純粹是中間保存點,沒有考慮到它們在文件集方面的構成,那麼您的解決方案就足夠了。
要添加到VonC的答案,它取決於你有多少提交。
發生在我身上什麼最經常是這樣的:在一個
與互動變基,它是微不足道的重新排序,然後壓扁修正到原來的承諾爲A.
另一個例子是,當我只是想重新提交一條提交消息。
另一個例子是,當我有這樣的事情
A-------------------master
\
B-----C-----D-----branch
,我想結合ç& d但不 B插入主。我可以使用rebase重新排序我的分支提交到C,D,B,然後git checkout master
和git merge D
謝謝馮!我已經看到你的其他答案,他們都很棒,有針對性的建議 – ambertch 2011-04-01 20:14:09