标签: git-merge-conflict

合并冲突,当分支不修改同一行时

我试图围绕git冲突,为什么合并这两个会导致冲突?

分支上的file.txt master:

This is line number one
Run Code Online (Sandbox Code Playgroud)

分支上的file.txt feature:

This is line number one
This is line number two
Run Code Online (Sandbox Code Playgroud)

git merge-conflict-resolution git-merge-conflict

4
推荐指数
1
解决办法
760
查看次数

如何解决git中的冲突?

当我尝试拉动时,我有以下消息:

Automatic merge failed; fix conflicts and then commit the result.
Run Code Online (Sandbox Code Playgroud)

因此,我尝试修复冲突(如git建议),因为我遵循这些说明.

我需要做的第一件事就是在文本编辑器中打开"有问题"的文件并查找类似的行

If you have questions, please
<<<<<<< HEAD
open an issue
=======
ask your question in IRC.
>>>>>>> branch-a
Run Code Online (Sandbox Code Playgroud)

问题是我在文件中看不到类似的东西.特别是我搜索了HEAD并且它不在那里.

git merge git-merge git-merge-conflict

4
推荐指数
1
解决办法
9348
查看次数

如何解决git stash冲突?

我有一个stash应用a的存储库.但是现在代码看起来像这样:

<<<<<<< HEAD
        wp_redirect( set_url_scheme( $_SERVER['REQUEST_URI'], 'https' ) );
        exit();
    } else {
        wp_redirect( 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] );
=======
        wp_safe_redirect( set_url_scheme( $_SERVER['REQUEST_URI'], 'https' ) );
        exit();
    } else {
        wp_safe_redirect( 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] );
>>>>>>> dev-wip
Run Code Online (Sandbox Code Playgroud)

问题是现在stash没有出现在git.它没有显示任何冲突.怎么解决这个?

git gitlab git-merge-conflict

4
推荐指数
1
解决办法
1688
查看次数

无法解决与 git submodule 文件夹的合并冲突

我有两个 git 分支,开发和重新设计需要合并。我有一个名为 library 的子模块,其更新正在由开发跟踪。当我运行 ' git merge' 时,它说库已被两者修改,即使我没有触及库子模块。当我单击 VS Code 中的库以查看冲突的更改时,我看到了以下内容:

diff --cc library
index 749618f9,589a7ae5..00000000
--- a/library
+++ b/library
Run Code Online (Sandbox Code Playgroud)

我尝试删除库文件夹并git submodule update在重新设计分支中运行“ ”,然后再合并没有成功。我在重新设计中将 ignore = all 添加到 .gitmodules 文件中,但没有用。如何摆脱与此子模块的合并冲突?

git git-merge git-submodules git-merge-conflict

4
推荐指数
3
解决办法
3349
查看次数

由于已删除文件,无法进行 git merge

我解决了一个相当大的合并冲突。不过,我不能承诺解决冲突。

当我想提交时,git commit - m "Resolved conflicts"我收到这样的错误

错误:无法合并,因为您有未合并的文件。

当我查看 时git status,我可以看到在我的分支和合并的分支中,删除了一个文件 - 这是 git 识别的:

在此处输入图片说明

您可以在both deleted符号中看到这一点。

我不能 - 按照建议 - 添加或删除文件。我收到文件丢失的错误。这是正确的,因为该文件已被删除,因此不在文件系统上。

有任何想法吗?

罗恩

git git-merge git-merge-conflict

4
推荐指数
1
解决办法
385
查看次数

git merge 与 git rebase 的合并冲突场景

我想确保我正确地看待这个。

当我执行导致冲突的 git merge 时,我看到存在冲突的文件为:

<<<<<<<<<HEAD
my local changes first
=============
The remote github changes here.
>>>>>>>>>>
Run Code Online (Sandbox Code Playgroud)

而当我由于 git rebase 而遇到冲突时,我看到了相反的情况:

<<<<<<<<<
The remote github changes here.
=============
my local changes first
>>>>>>>>>>
Run Code Online (Sandbox Code Playgroud)

我在这里错过了什么吗?

git git-merge git-merge-conflict

4
推荐指数
1
解决办法
2557
查看次数

即使冲突解决后如何查看三向 git diff

如果我在 git 中存在冲突(我使用 rebase 但同样适用于合并),它会向我的文件添加冲突标记,以便我可以通过编辑来解决

  line1
++<<<<<<< HEAD
 +line1a
++=======
+ line1b
++>>>>>>> b


  line2
++<<<<<<< HEAD
 +line2a
++=======
+ line2b
++>>>>>>> b
Run Code Online (Sandbox Code Playgroud)

合并的一部分git diff仍然显示三向差异

  line1
 +line1a
+ line1b


  line2
++<<<<<<< HEAD
 +line2a
++=======
+ line2b
++>>>>>>> b
Run Code Online (Sandbox Code Playgroud)

但是一旦我解决了所有冲突并添加它们,就git diff什么也没有显示。如何查看三向差异?具体来说,我想看到类似的东西

  line1
 +line1a
+ line1b


  line2
 +line2a
+ line2b
Run Code Online (Sandbox Code Playgroud)

git git-rebase git-merge-conflict

4
推荐指数
1
解决办法
1214
查看次数

Git Merge - 二进制文件冲突解决

如何在 git 中的合并操作期间解决二进制文件冲突解决方案?这是我到目前为止所做的:

git checkout master
git fetch origin
git merge working_branch

... [Conflicts] ...

git status
...
Unmerged paths:
        both modified:   Path/file.dll
        ...
Run Code Online (Sandbox Code Playgroud)

我想保留 中的版本working_branch并丢弃master. 我该怎么做呢?

git binaryfiles git-merge merge-conflict-resolution git-merge-conflict

3
推荐指数
1
解决办法
5732
查看次数

git合并冲突的不同场景

我试图了解在 git 合并后可能发生 git 冲突的情况以及如何避免它们。

我创建了一个 git 存储库并向其中添加了一个文本文件。

  • 我已将“1”添加到文本文件并将其提交给 master。
  • 我从 master(branch2) 创建了一个新分支,并在文本文件中添加了一个新行,内容为“2”。
  • 我从 master(branch3) 创建了一个新分支,并在文本文件中添加了一个新行,内容为“3”。

在此之后,我做了以下工作:

  • 我已将 branch2 合并到 master 中。没有冲突,这是正确的,我已经预料到了。
  • 我已将 master 合并到 branch3 中。我有冲突,因为文本文件的第二行有不同的内容。我通过保留“3”而不是“2”来解决冲突。
  • 我想将 branch3 合并到 master 中。现在我的问题是: 1. 进行合并时是否有可能发生冲突?如果是,为什么?如果没有,为什么?2.如果不应该有冲突,但我仍然有冲突,可能是什么原因?

git git-merge merge-conflict-resolution git-merge-conflict

3
推荐指数
1
解决办法
687
查看次数

Git合并冲突:找不到问题

一些背景故事!
我一直在使用 git 为一个开源包做出贡献,我在这方面有点新手。我知道一些基本的东西。此外,我还读到如果发生合并冲突,我们可以遍历文件,标记可以帮助我们找到同一文件的两个版本中相互冲突的代码块。

最近第一次遇到合并冲突,是在 Jupyter notebook 文件(.ipynb)上。但是,合并冲突的标记使 Jupyter 无法读取笔记本。所以,我尝试了 JSON 编辑器和 VS CODE 和 Notepad++。虽然我现在可以看到该文件,但它真的很乱,因为它不仅包含 Jupyter notebook 的所有元数据,而且甚至在执行次数方面也显示冲突。另外,如果笔记本中有一个图形作为一个单元格的输出,它会被转换成很多字符,向下滚动并浏览它们是很头疼的。

在搜索 google 和 stackoverflow 并与项目所有者讨论问题后,我们决定采取另一种方法。但是,它不起作用。(我在下面进行了解释,但首先我需要提供更多信息。请耐心等待)

根据提交的历史记录,我应该是在本地通过更改 PARENT 分支上的相同文件而在本地创建此类冲突的人,因为没有人在上游更改它(在原始存储库中)

因此,请让我首先简要介绍一下分支和我对文件所做的一些更改。

  • 在分叉和克隆之后,我创建了一个分支 branch-A
  • 我更改了笔记本“notebook-file”
  • 我做了拉取请求(PR)
  • 我创建了 A 的一个子分支,我们称之为 sub-branch-of-A
  • 切换到子分支后,我更改了两个 .py 文件,然后也更改了 notebook-file
  • 合并sub-branch-of-Abranch-A

在 my 中branch-A,我做到了:git push origin branch-A但我non-fast-forward出错了。这意味着发生了分歧。对?所以,我确实git pull origin branch-A解决了它,但是我遇到了notebook-file.

替代方案

所以,我被告知我可以将文件复制到本地 git 存储库之外的某个地方,然后git checkout notebook-file在发生分歧的父节点中获取文件。对?然后,如果我这样做git pull ...应该没有问题(然后我可以包含该复制文件的更改)

但...

我再次遇到合并冲突错误。我疯了,尝试了几件事,但仍然没有。

我附上了下面的git日志。我所说的分支是Snippets_Tutorial,而它的子分支是 …

git git-pull git-log git-merge-conflict jupyter-notebook

3
推荐指数
1
解决办法
284
查看次数