Git解决冲突额外文件

时间:2017-10-06 10:02:53

标签: git github version-control tortoisegit

我经常遇到解决冲突问题的情况。

  • 让我的PR(功能 - >开发)我在2个文件中有冲突。
  • 我在我的功能分支git pull origin develop
  • 中运行命令
  • 这有时会在我的功能分支中添加许多红色,绿色等文件。
  • 我解决了2个文件中的冲突。然后运行
  • git add .
  • git commit -m"resolved conflict"
  • git push origin feature-branch。 问题是:在diff选项卡中,出现了许多与我的功能无关的文件。

我该如何解决?

我也使用Tortoise Git来解决这个问题但是没有用:

  • 一旦我的公关出现冲突,我会执行以下步骤。
  • 从我的功能分支,git - >拉 - >远程分支(开发)
  • 这也会添加大量不必要的文件。
  • 我解决了冲突。
  • 在提交时,git要求选择提交文件,我只选择两个文件并推送。
  • 即使这样,所有文件都会转到远程/ origin / feature-branch。
  • 这次准备索引耗时太长,一旦推动,对审稿人来说很难。

任何解决方案?

谢谢,

1 个答案:

答案 0 :(得分:0)

对于大多数情况,PR存在合并冲突。

  • 如果您只是创建PR以将feature分支合并到develop分支的开发人员,则无需解决潜在的合并冲突。解决合并冲突是PR审批人/审核人的业务。他们应该在完成PR时解决冲突。

    如果您真的想在创建PR之前查看/解决潜在的合并冲突,可以使用git diff feature develop检查两个分支之间的差异。然后使用git checkout develop filename解决潜在的冲突。

    假设featuredevelop分支都更改了文件test.txt,您可以通过将文件test.txt保留在feature分支上来解决潜在的合并冲突develop分支上的相同版本。你可以用

    git checkout develop test.txt
    git commit -m 'change test.txt same as develop branch'
    

    现在test.txt分支上的featuredevelop分支上的版本相同。然后你可以创建一个PR。

  • 如果您不仅是创建PR的开发人员,还是审核和批准PR的审批者,您可以解决本地仓库中的合并冲突,然后推送直接更改为develop分支。