Git 冲突指南

什么是GIT冲突?

当两个分支更改文件的同一部分并且GIT无法自动合并更改时,就会发生GIT冲突。当你尝试合并或重新安排分支机构时,GIT将暂停该过程并标记冲突文件。

解决GIT冲突的步骤

1. 识别矛盾的文件

当你遇到冲突时,GIT会标记冲突文件。你可以通过运行看到这些文件:

git status
2. 打开冲突文件

打开冲突文件(s) 在你的代码编辑器中。你会看到GIT的冲突标记:

<<<<<<< HEAD
Your changes
=======
Incoming changes
>>>>>>> branch-name
  • <<<<<<< HEAD 标志着你的变化的开始。
  • ======= 将你的变化与传入的变化分开。
  • >>>>>>> branch-name 标志着传入的变化的末尾。
3. 解决冲突

手动编辑冲突文件以选择要保留的更改。你可能想要:

  • 保持更改:删除传入的变化和冲突标记。
  • 继续传入的更改:删除你的变化和冲突标记。
  • 保持两种更改:手动编辑文件以包括必要的更改。
4. 删除冲突标记

解决冲突后,删除冲突标记( <<<<<<< ,,,, ======= ,,,, >>>>>>> ) 从文件。

5. 添加已解决的文件

解决冲突后,阶段已解决的文件:

git add <conflicted-file>
6. 提交更改

分期已解决文件后,提交更改:

git commit -m  "Resolved conflict by merging changes" 
7. 验证和推动

解决你合并或重新合并中的所有冲突后,请验证一切都是正确的:

git status

然后,将更改推向远程存储库:

git push

处理冲突的提示

  • 保持冷静: 冲突是协作工作的正常组成部分。
  • 评论更改: 在解决冲突之前,请了解两组变化。
  • 使用工具: 一些IDE和GIT GUI提供冲突解决工具。
  • 沟通: 与团队成员协调以防止发生冲突的变化。

示例工作流程

假设你正在尝试合并 feature-branch 进入 main

git checkout main
git merge feature-branch

如果发生冲突,请按照上述步骤解决。这是一个例子:

<<<<<<< HEAD
console.log( "Hello, World!" );
=======
console.log( "Bonjour, le monde!" );
>>>>>>> feature-branch

解决之后:

console.log( "Hello, World!" );
console.log( "Bonjour, le monde!" );

然后:

git add filename.js
git commit -m  "Resolved conflict" 
git push

其他资源

请记住,解决冲突是一项随着实践而提高的技能。不要犹豫,在安全的环境中进行实验,以使其适应该过程。

  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

琴歌声声送我

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值