[英]Is commit needed after resolving merge conflict during Git rebase?
我将另一个分支重新绑定到我的结账分支上,并在rebase期间发生冲突。 我解决了合并冲突。
$ git status
rebase in progress; onto 77c951b
You are currently rebasing branch 'test' on '77c951b'.
(all conflicts fixed: run "git rebase --continue")
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: br_boss_buha_faktura/forms/br_boss_buha_faktura_head_dtl.frm
modified: br_boss_buha_faktura/valuelists/br_boss_buha_faktura_client.val
new file: br_boss_buha_faktura/valuelists/br_boss_buha_faktura_client_name.val
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: br_boss_buha_faktura/valuelists/br_boss_buha_faktura_client.val
我是否需要提交上述已解决的合并冲突git commit
还是可以直接使用git rebase --continue
?
这里有一些好的答案,但要回答这个问题。 不,您在解决合并冲突后不需要提交。
通过git add <file>
将解决方案添加到git staging区域后, git rebase --continue
将使用原始提交消息为您提交 。
注意提交哈希值会改变! 因此,当您将此合并到另一个已提交您在分支中更改的分支时,您将遇到将这些分支合并在一起的问题。
注意我说在解决git rebase
冲突后你不需要 git commit
,但如果你愿意,你可以 。
如果更有意义的话,将文件从一个提交拆分为一系列单独的提交可能很有用。 通常你只想解决冲突。 如下所示: 将先前的提交分解为多个提交 。
我明白了
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: br_boss_buha_faktura/valuelists/br_boss_buha_faktura_client.val
请做
git add br_boss_buha_faktura/valuelists/br_boss_buha_faktura_client.val
然后
git rebase --continue
执行git rebase --continue
会重写您应用于您更改它的表单的当前提交。 它将以与您在test
分支中相同的名称提交更改。
注意你在提交时变基础,可能是一个独立的HEAD状态! 通常,在master
或staging
分支上有一个rebase。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.