Git使用(五):解决冲突以及如何避免冲突
说明:多人开发时,两人同时修改同一个文件,第一个人修改完push代码之后,第二个人再pull代码时就会发生冲突:因为远程仓库的文件和你本地仓库的文件有差异。
一、首先,记住
- 在
push
之前先pull
- 在
pull
之前先commit
- 在修改文件之前先
pull
二、模拟冲突
1、创建两个客户端
将本地项目复制一份出来,模拟制造出两个客户端,这里成为 客户端1、客户端2。
2、修改并提交代码
修改客户端1代码:console.log('冲突测试:客户端1的修改')
,并提交到远程仓库:
git add .
git commit -m ‘冲突测试:客户端1的提交’
git pull
git push
修改客户端2代码:console.log('冲突测试:客户端2的修改')
,并提交到远程仓库:
git add .
git commit -m ‘冲突测试:客户端2的提交’
git pull
git pull 之后,就会发现冲突。这时候会看到文件变成了这样:
三、解决冲突
1、手动修改冲突文件
如下:
2、git add
执行命令 git add
更新文件的索引(index);
3、合并冲突
执行命令 git rebase --continue
合并冲突;
再次 push 即可
四、处理冲突的相关命令
git rebase 参数说明
命令 | 描述 |
---|---|
git rebase --abort | 放弃合并,回到pull之前的状态 |
git rebase --skip | 会将引起冲突的commits丢弃掉(慎用!!) |
git rebase --continue | 合并冲突,结合"git add filename"命令一起用与修复冲突 |
系列文章
Git专栏
Git使用(五):解决冲突以及如何避免冲突相关推荐
- 从0到1演示用 Git Rerere 自动解决冲突
前言 git rerere 功能是一个隐藏的功能. 正如它的名字 "reuse recorded resolution" 所指,它允许你让 Git 记住解决一个块冲突的方法,这样在 ...
- 【Git】Git 分支管理 ( 解决分支合并冲突 | 本地处理文件冲突 )
文章目录 一.本地处理文件冲突 一.本地处理文件冲突 在下面的 [Git]Git 分支管理 ( 解决分支合并冲突 | 创建并切换分支 git switch -c feature1 | 修改 featu ...
- git 冲突覆盖_git pull冲突解决之强制覆盖
今天在更新git本地仓库时发生了奇怪的冲突,想说一下这个问题的解决办法. 本地仓库工作目录中并没有未提交的修改,很干净,这时我想更新到远程仓库最新的状态,所以执行了git pull命令,结果发生了Co ...
- 1git命令的使用,查看git仓库状态,添加文件到git跟踪,git提交,查看git分支,查看git仓库日志信息,切换git分支,解决git分支合并后出现冲突的问题
1新建一个存储git的文件夹,命令是: toto@toto-K45VD:~$ mkdir gitfolder 2初始化一个git仓库,命令是: toto@toto-K45VD:~$cd gitfold ...
- 配置Beyond Compare 4作为git mergetool来解决git merge命令导致的文件冲突
文章目录 前言 解决方案 前提 配置 Beyond Compare 文件冲突及处理 产生冲突 解决冲突 工具配置的参数含义 git config git mergetool 思考 总结 前言 使用 g ...
- idea+git合并分支解决冲突及详解
1.什么是冲突 冲突是指当你在提交或者更新代码时被合并的文件与当前文件不一致.读起来有点绕,结合下面的案例理解. 从上面对冲突的定义来看,冲突时发生在同一个文件上的. 2.生产上冲突的场景 常见冲突的 ...
- git pull 代码库时提示冲突需Merge 快速解决代码同步遇到的冲突问题 so easy的方法
前言 git pull 代码库时提示冲突需Merge 快速解决代码同步遇到的冲突问题 so easy的方法. 问题 1.> git pull origin master 提示信息:error: ...
- zbb20190109 git命令行解决冲突文件步骤
git命令行解决冲突文件步骤 方法一(推荐使用): git pull 出现冲突后丢弃本地冲突文件修改,采用远程文件覆盖本地文件 git checkout [文件路径] 例:git checkout ...
- git 主干修改合并到分支_idea+git合并分支解决冲突及详解步骤
Git分支详解参考: 分支管理组成 1.1.master主干 在版本管理中,代码库应该仅有一个主干.此主干是和当前生产保持一致的,是可用的.稳定的可直接发布的版本,不能再主干上进行任何开发操作.git ...
最新文章
- 一份可以让 Python 变得更快的工具清单
- 我使用的博客和通讯工具汇总
- Java高版本编译低版本运行_Java高版本编译低版本运行错误(ConcurrentHashMap.keySet)...
- ubuntu系统安装socket服务器,Ubuntu上进行socket编程,并且实现通信功能
- android java 调试快捷键_Android Studio 代码页跳界面 /java和XML快速切换技巧
- 一建管道工程122知识点_背诵的知识点是否边缘化?一建市政一本通+学霸笔记,教你只记重点...
- flask v0.1 flask.py
- java web 对cookie技术、session技术进行小结
- 似懂非懂的Comparable与Comparator
- centos7.0配置php环境,如何在centos7中配置一个php开发环境
- 8421码转16进制的c语言,将8421BCD码转换为十进制数(转)
- C语言二元一次方程求解(求出共轭实根)
- 游戏开发中常用的设计模式 【game design patterns】
- 电脑设备管理器无端口显示怎么办?
- (附源码)计算机毕业设计SSM基于的校园卡管理系统
- Django(10)-模板层的变量和标签
- 金额平均分配算法 python实现
- JAVA 建造者模式
- python中pd是什么意思_python中时间转换datetime和pd.to_datetime详析
- 【Java基础】控制台打印日历