![]() |
1
0
当您第一次提交时,您的本地头从A更改为B。通过推到远程,您可以快速向前移动远程分支,使其头也指向B。 当你修改时,你不是在B之后创建修订版C,你是在修改B,本质上是在修改B。最后,当您第二次尝试推送时,Git会验证B和B'具有相同的父级A,但具有不同的哈希,这是一个冲突。
解决这个问题的一种方法是只使用-f标志覆盖远程提交,因为明显的原因,这是非常不鼓励的。 听起来你的工作流程也有缺陷。理想情况下,您应该使用像gerrit或类似的代码审查系统,它允许您为同一提交推送后续的修改。只有通过审查、验证等的最后一次修订才在一个分支中结束。 |
![]() |
2
0
如果你仔细观察你的命令,你会发现
第一次尝试:
第二次尝试:
(
在推动后改变承诺很少是一个好主意。我只会让它保持原样。 如果需要更改,只需创建一个新的提交。
因为你是自己工作的
最好不要修改推送的承诺。 |
![]() |
usergs · 推送到github时忽略某些文件 7 年前 |
![]() |
codingbbq · Git push,分支名称应该是什么? 7 年前 |
![]() |
Julien M · 使用git日志创建推送列表 7 年前 |
![]() |
Bludzee · 为什么Git毫无怨言地签出这个被删除的分支? 7 年前 |
![]() |
Ved · Git-排除特定提交和推送 8 年前 |