2017-06-13 62 views
0

說我有提交如何重定義提交列表?

  • bb8d6cc3c7
  • aa213lk321
  • f0j9123r9j

我想做爲他們每個人的互動變基。我認爲這樣做的唯一方法是爲每個提交輸入git rebase -i 'commit_hash',並逐個完成rebase。

有沒有一下子變基,SMT更簡單的方法。像

git rebase -i 'commit_hash_1' 'commit_hash_2' 'commit_hash_3'

+1

'git的重訂'適用於連續提交的範圍。如果你的提交是不連續的,那麼你正在尋找的命令是['git的櫻桃pick'(https://git-scm.com/docs/git-cherry-pick) – axiac

回答

1

這是你想壁球提交的名單。

1. bb8d6cc3c7 <- This is the HEAD or latest commit 
2. aa213lk321 
3. f0j9123r9j 

命令

git rebase -i HEAD~3,如果上述所有三個提交順序

然後通過輸入s需要pick bb8d6cc3c7和壁球等兩次提交,這意味着壁球。

如果提交不是按順序進行的,那麼只需執行git rebase -i,這將打開一個編輯器,並選擇一個提交併壓縮其他兩個提交。

0

的Weel,如果你有master分支和some-feature分支。

如果有人更新master分支和你想要衍合你some-feature分支,...

只是

git checkout some-feature 
git rebase -i master 

所有some-feature的提交合併到主分支