【问题标题】:Git in VS Code says I've got unmerged files, but I'm sure I have merged themVS Code 中的 Git 说我有未合并的文件,但我确定我已经合并了它们
【发布时间】:2020-09-04 00:12:46
【问题描述】:

我正在尝试使用 Visual Studio Code 合并我在 Azure DevOps Services (ADS) 上的 Git 存储库。我没有使用 VS Code 和合并到 Git 存储库的经验。我有冲突,但我认为我已经通过接受所有传入的更改来解决它们(这是我想做的)。

如果我理解正确的话,我只有一个冲突,我已经解决了。所以,现在在侧边栏中(我不知道它在 VS Code 中的正确名称)有很多文件,它们旁边有一个“A”或一个“M”。 “A”我认为意味着要添加的文件。 “M”是一个修改,如果我理解正确的话,它已经被 VS Code 中的 Git 解释了。

我发出了Merge branch 命令,然后是我试图合并到主分支的功能分支。我不明白的是为什么 VS Code 一直向我抱怨我有问题,

Git:无法提交,因为您有未合并的文件

什么未合并的文件?我如何识别它们?有两个按钮,一个是 Cancel(很明显是做什么的),另一个是“Open Git Log”。我按了那个按钮我不知道多少次,但如果它应该为我打开一个日志文件,我肯定想知道我应该在哪里找到包含日志文件的窗口,因为它是对我来说,它在任何地方都不是很明显。

【问题讨论】:

    标签: git visual-studio-code azure-devops


    【解决方案1】:

    我们可以使用 Ctrl+Shift+U 打开输出选项卡并获取详细的错误消息:

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

    我们需要使用 cmd git add {file name} 再次添加文件,然后才能提交。

    此外,我们还可以在输出选项卡中看到错误消息

    【讨论】:

    • 嗨 Vito,我有 1 个合并更改,我以为我已经处理好了,因为我接受了从功能分支到主分支的所有更改。加上 52 个阶段性更改。如果我将鼠标悬停在Merge Changes 上,它确实为我提供了进行更改的选项。我应该这样做吗?
    • 顺便说一句,Vito,我确实在 VS Code 的 OUTPUT 选项卡中得到了这 4 行,从 error:、hint:、hint: 和 fatal: 开始。但是,之后没有列出任何文件。
    • 我继续并暂存了报告为能够暂存的文件。然后我再次尝试合并分支。那一次,它终于让我合并了分支。我想把它推到起源/主人。哇,这并不容易。 VS Code 不会告诉我是什么文件导致了问题,这并没有帮助。
    猜你喜欢
    • 2014-11-11
    • 2011-10-11
    • 2020-12-23
    • 1970-01-01
    • 1970-01-01
    • 2013-03-20
    • 1970-01-01
    • 2022-01-22
    • 1970-01-01
    相关资源
    最近更新 更多