• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

git为什么会产生冲突

武飞扬头像
PHP中文网
帮助72

git为什么会产生冲突

一、常见产生冲突操作:

  • 两分支合并

  • 远程仓库代码拉取(pull)到本地

二。冲突产生原因:

合并文件时,同一个文件的同一个位置都修改了,且内容不同,会产生冲突

三。解决步骤:

1. git status 查看冲突文件

2.vim src/main/java/a.txt (假设a.txt为冲突文件,这里需要为文件的全路径),手动修改冲突部分

3.git add src/main/java/a.txt 告诉Git冲突解决了

4.git commit -m ‘解决冲突’ (解决冲突为注释,可自定义)

两个已经提交的分支的相同文件相同位置的的不同操作进行了合并.

实战演示

(1)情景

  本地库中两个不同分支,修改同一个文件同一代码块,两分支先后将修改合并到master分支上,master在合并第二个分支代码时,报错:合并冲突。

(2)本地库

<1>master分支

学新通技术网

学新通技术网

<2>建立两个分支

学新通技术网

<3>两分支修改提交

aBranch分支:

学新通技术网

学新通技术网

学新通技术网

学新通技术网

bBranch分支:

学新通技术网

学新通技术网

学新通技术网

(3)合并分支产生冲突

合并aBranch分支(将aBranch分支合并到当前master分支上):

学新通技术网

学新通技术网

注:
git merge:默认情况下,Git执行"快进式合并"(fast-farward merge),会直接将Master分支指向Develop分支。
使用--no-ff参数后,会执行正常合并,在Master分支上生成一个新节点。为了保证版本演进的清晰,建议采用这种方法。

再合并bBranch分支,产生冲突:

学新通技术网

mergeTest.txt 文件内容:

学新通技术网

(4)解决冲突

在当前分支上(master),找到冲突文件,直接修改冲突代码,add,commit。

学新通技术网

注:简单方法,使用vim修改,cat查看冲突文件。(注意要删除git自动生成的冲突代码分隔符)

(5)完成冲突解决

学新通技术网

注:提交或者合并都会生成git节点。每个节点对应一个代码版本。

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanffeec
系列文章
更多 icon
同类精品
更多 icon
继续加载