我正在使用git作为版本控制项目。
我做了第一次提交,把它推给了gerrit进行审查。
我开始进一步开发并做了第二次提交,也将它推向了gerrit进行审核。
现在,我在第一次提交时遇到了一些合并冲突,在第二次提交时遇到了一些反馈。我必须将这些变化纳入其中:
我遵循了以下步骤:
git reset --soft Head~1
- >这使HEAD变为先前的变化
已解决的冲突
上传了Commit1的新补丁集(我使用git gui
- 修改上次提交选项)
纳入对Commit2的反馈
从Commit2添加了所有文件并进行了新的提交。现在无法从git gui
修改Commit2。
在这种情况下理想情况应该做什么,以便我可以修改以前的Commit2而不是创建新的提交。
PS:如果这些变化之间合并了一些其他变化,情况就变得更加棘手。这会在选择Amend Last Commit
时获得这些更改。
答案 0 :(得分:0)
当您拥有链式评论列表时,使用gerrit可能会有问题。在这种情况下,我倾向于做以下事情:
git commit --amend
git commit --amend
git push origin <local branch>:refs/for/<remote branch>
您可以直接从Gerrit GUI获取更改的樱桃选择URL,这样可以保留提交消息中的change-id,这样您就可以为每个评论获得一个新的补丁集,并且它们仍然是链接的
Git GUI应用程序是探索存储库及其历史记录的有用方法。但他们从来没有真正揭露git命令行的全部功能。