提示:解决冲突后,标记更正的路径



git 有时会在冲突时给我这条消息(在还原或挑选期间)

hint: after resolving the conflicts, mark the corrected paths

这是什么意思?

这意味着你需要明确告诉 Git 你已经解决了每个文件或文件夹(即路径)的冲突。

1. 查看尚未解决冲突的文件列表

git status

2. 将每个文件标记为已解决

解决

文件中的冲突后,将其添加到标记冲突已解决:

git add file-which-had-conflicts

如果要删除文件而不是解决冲突,请使用 git rm .但是,这种情况很少见。

git rm file-which-had-conflicts

3. 继续变基/合并/任何内容

git rebase --continue
git merge --continue
git cherry-pick --continue

因为有些文件有冲突,所以可以输入git status找出冲突的文件是什么,冲突结束后,就git commit -m sth log,最后git cherry-pick your-commmit-id。 查看详情 http://wiki.koha-community.org/wiki/Using_Git_Cherry_Pick#Resolve_conflicts

这...可能会令人困惑,并且在 Git 2.34(2021 年第 4 季度)中," git cherry-pick"(man)给出的建议信息更清晰:

当它要求最终用户解决提交的冲突重播时,它现在(Git 2.34,2021 年第 4 季度)说:

  • 对于git cherry-pick
After resolving the conflicts, mark them with
`git add`/`rm <pathspec>`, then run
`git cherry-pick --continue`
You can instead skip this commit with `git cherry-pick --skip`.
To abort and get back to the state before `git cherry-pick`
run `git cherry-pick --abort`.
  • 对于git revert
After resolving the conflicts, mark them with
`git add`/`rm <pathspec>`, then run
`git revert --continue`
You can instead skip this commit with `git revert --skip`.
To abort and get back to the state before `git revert`
run `git revert --abort`.

参见提交 f172556 (2021 年 8 月 22 日) 由 胡哲宁 ( adlternative ).
(由 Junio C Hamano -- gitster -- 合并于 提交 173368d,2021 年 9 月 10 日)

cherry-pick:使用更好的建议消息

指导: Christian Couder
指导:Hariom Verma<</sup>br/>帮助: 菲利普·伍德
帮助者: Junio C Hamano
署名:胡哲宁

"git cherry-pick"(人)在看到冲突时说:

hint: after resolving the conflicts, mark the corrected paths 
hint: with `git add <paths>` or `git rm <paths>` 
hint: and commit the result with `git commit`.

仿佛跑"git commit"来结束这一步的解决是故事的结局。

这源于这样一个事实,即该命令最初是选择单个提交而不是一系列提交,并且消息是当时编写的,尚未调整。

当选择一系列提交时,命令因范围中间的冲突而停止,但是,在解决冲突并(可选)用"git commit"记录结果后,用户必须运行"git cherry-pick --continue"来处理范围的其余部分,"--skip"删除当前提交, 或"--abort"丢弃该系列。

建议使用 " git cherry-pick --continue/--skip/--abort,以便消息也涵盖选取一系列提交的情况。

同样,此优化可以应用于git revert(man),建议使用" git revert --continue/--skip/--abort,以便消息也涵盖还原一系列提交的情况。

值得一提的是,现在我们用advice()来打印print_advice() GIT_CHERRY_PICK_HELP的内容,每一行输出都会以"hint:"开头。

相关内容

  • 没有找到相关文章

最新更新