TortoiseGit:因冲突而变基
TortoiseGit: Rebase with conflict
我想我做错了什么,但我不确定在哪里。我有一个工作分支和一个主分支。工作分支有一些提交还没有在主分支上。现在我有一个关键的错误修正,我承诺要掌握。我也想在工作分支中进行此提交,因此我使用 rebase。
我在 TortoiseGit 中打开 rebase window,它显示了这一提交。单击 "Start Rebase" 后,它通知我发生了几次冲突。我修复了冲突并在 rebase window.
中按 "Commit"
现在提交显示在提交日志中。好的。但是当我想将它推送到服务器时,我被告知 HEAD 已分离。我用 git checkout -b temp
解决了这个问题并推送了这个临时分支。
如果我现在从原点获取并再次打开变基 window,我刚刚推送的提交会再次显示变基。我认为它不应该出现在那里,因为它已经重新定位了。
我在没有冲突的情况下进行提交时也进行了检查,它不会在变基中再次显示 window。
我做错了什么?
当使用命令行界面时:修复了rebase冲突后,你必须提交,然后告诉git "proceed with the remaining actions of the current rebase" :
git rebase --continue
我不知道 TortoiseGit 做什么或不做什么,看看你是否有一些动作看起来像 "continue rebase",或 "resume rebase",或 ...
关于变基的另一件事:git
不跟踪已经变基的提交,
相反,它会查看每个要重新定位的提交引入的补丁,并扫描目标分支以查看提交是否已经应用了相同的补丁。
当您遇到冲突时,您通常会修改生成的补丁中的某些内容,因此重新设置基准不会检测到实际应用了初始提交,并且该提交会重新出现。
避免此问题的一种方法是 合并 master
到 branch
,而不是变基。
我想我做错了什么,但我不确定在哪里。我有一个工作分支和一个主分支。工作分支有一些提交还没有在主分支上。现在我有一个关键的错误修正,我承诺要掌握。我也想在工作分支中进行此提交,因此我使用 rebase。
我在 TortoiseGit 中打开 rebase window,它显示了这一提交。单击 "Start Rebase" 后,它通知我发生了几次冲突。我修复了冲突并在 rebase window.
中按 "Commit"现在提交显示在提交日志中。好的。但是当我想将它推送到服务器时,我被告知 HEAD 已分离。我用 git checkout -b temp
解决了这个问题并推送了这个临时分支。
如果我现在从原点获取并再次打开变基 window,我刚刚推送的提交会再次显示变基。我认为它不应该出现在那里,因为它已经重新定位了。
我在没有冲突的情况下进行提交时也进行了检查,它不会在变基中再次显示 window。
我做错了什么?
当使用命令行界面时:修复了rebase冲突后,你必须提交,然后告诉git "proceed with the remaining actions of the current rebase" :
git rebase --continue
我不知道 TortoiseGit 做什么或不做什么,看看你是否有一些动作看起来像 "continue rebase",或 "resume rebase",或 ...
关于变基的另一件事:git
不跟踪已经变基的提交,
相反,它会查看每个要重新定位的提交引入的补丁,并扫描目标分支以查看提交是否已经应用了相同的补丁。
当您遇到冲突时,您通常会修改生成的补丁中的某些内容,因此重新设置基准不会检测到实际应用了初始提交,并且该提交会重新出现。
避免此问题的一种方法是 合并 master
到 branch
,而不是变基。