【问题标题】:How do I mark conflicts as resolved in the git GUI tool?如何在 git GUI 工具中将冲突标记为已解决?
【发布时间】:2013-06-24 02:43:39
【问题描述】:

我正在尝试将功能分支中的更改合并到我项目的开发分支中。我使用 Mac OS X 的 GitHub GUI 应用程序和命令行来管理我的 git 项目。很长一段时间以来,我一直能够使用命令行管理合并冲突,但我不知道是否以及如何在 GUI 客户端中执行相同的操作。即使我在 BBEdit 中解决了冲突,然后单击“提交”按钮,它仍然显示:

•error: 'commit' is not possible because you have unmerged files.
hint: Fix them up in the work tree,
hint: and then use 'git add/rm <file>' as
hint: appropriate to mark resolution and make a commit,
hint: or use 'git commit -a'.
fatal: Exiting because of an unresolved conflict.
 (128)

如何在不使用命令行的情况下解决此问题?

【问题讨论】:

  • 您确定没有任何合并标记吗? (合并标记如stackoverflow.com/q/4755059/6309所示)
  • 是的。我删除了合并标记并保存了文件,但在 GitHub GUI 列表中,黄色的“冲突”标记仍然出现在文件旁边。
  • 您已经保存了文件,但是您是否在 git 索引中添加该文件?只有这样 GitHub GUI 才应该将该合并文件视为“已解决”而不是“冲突”。
  • 如何从 GUI 中“添加”文件?我熟悉命令行中的git add,但据我所知,GUI 中的“添加”只是选中文件旁边的框,对吗?
  • 是的,正确的。但是,如果您从命令行“git add”它们,检查“Mac 版 GitHub”如何考虑这些文件会很有趣(您可以从 Mac 版 Github 打开一个外壳,或者如果外壳抱怨缺少 git:stackoverflow.com/a/17131161/6309)

标签: git merge


【解决方案1】:

我也有同样的问题。我在 Dreamweaver 中修改了冲突文件,但冲突仍然出现在 GUI 中。解决的唯一方法是从命令行执行 git add 。在这种情况下,我直接从 Dreamweaver 打开文件。接下来,我重新创建了冲突情况,但这次从 Git GUI 在 Dreamweaver 中打开了文件并解决了冲突。 GUI 识别了该分辨率,并允许我在不使用 git add 的情况下从命令行提交。

简短的回答,使用 Git GUI 打开文件。

【讨论】:

    【解决方案2】:

    可能不是您正在寻找的答案,但是,我遇到了同样的问题,我从 git bash CLI 而不是代码 IDE CLI 做了 git add .git commit -m "commit message here" 然后 git push 并且它有效。

    【讨论】:

      【解决方案3】:

      如果使用“git mergetool”启动beyond compare 3,当解决冲突并关闭beyond compare 3时,有冲突的文件已被标记为已解决,可以提交。 但是,如果使用“git gui”启动beyond compare 3,当解决冲突并关闭beyond compare 3时,git gui也会提示“冲突”。然后,你应该点击左边栏中的文件来标记解决方案.

      【讨论】:

        猜你喜欢
        • 2012-05-05
        • 1970-01-01
        • 1970-01-01
        • 2021-05-16
        • 2018-05-15
        • 1970-01-01
        • 2017-08-13
        • 2010-11-28
        • 1970-01-01
        相关资源
        最近更新 更多