git和github入门指南(3.2)
2024-10-09 07:55:26
3.3.解决多人协作开发过程中的代码冲突问题
1.在多人协作开发的项目中,每次开发之前每个人最好先同步更新一下github上最新的代码,可以减少冲突的概率
git pull
2.产生冲突
目前咱们演示项目git-demo中有两个开发这,第一个人,nodeing666,第二个,nd-00002,github仓库中最新的代码是nd-00002这个人提交的代码,这个时候,如果nodeing666这个人在开发之前并没有拉取github中最新的代码,而是直接去修改index.html这个页面,例如:
<style>
body{
// nodeing666 修改了首页背景色
background-color: red;
}
</style>
代码写完后,nodeing666把本地代码push到github,此时是提交不上去的,效果如下:
3.解决冲突
第一步,产生冲突后,我们首先得去把远程仓库(origin/master)中的代码拉取下来,再去查看哪里产生冲突了,执行命令:
git fetch
执行结果:
第二步,接下来,我们需要去对比本地master分支和远程仓库中的master分支
git diff master origin/master
执行结果:
第三步,手动把远程master分支和本地master分支合并
git merge origin/master
执行后,index.html页面中变成了这样:
此时,你需要取舍一下,当前冲突的代码到底保留什么,本次案例中,经过讨论,认为背景色保留为红色更好,因此,我们把index.html的代码修改成这样:
经过上一步手动修改代码,咱们已经解决好了冲突
第四步,重新提交代码并同步到远程仓库
git add index.html
git commit -m '解决背景冲突问题'
git push origin master
执行结果:
螺钉课堂视频课程地址:http://edu.nodeing.com
最新文章
- 使用Autolayout实现UITableView的Cell动态布局和高度动态改变
- C#系统委托之Action And Func
- 获取当前IP地址,跳转到对应城市网站。
- JavaScript之常用方法讲解
- Windows下Mysql5.6启用监控执行脚本的日志
- UI:基础
- Eclipse对svn操作切换账号或更换svn地址方法
- Codeforces Round #138 (Div. 2) ACBDE
- qt容器在并发时需要注意的地方
- iOS NSDictionary、NSData、JSON等 数据类型相互转换
- Umbraco安装权限问题
- java基本输入类型数据System.out.println()或System.out.print()
- JavaScript算法 ,Python算法,Go算法,java算法,系列之【归并排序】篇
- Django_xamdin安装与使用
- 洛谷P1879 [USACO06NOV]玉米田Corn Fields【状压DP】题解+AC代码
- XA-分布式事物
- Objective-C不能以new开头命名属性
- 04基于python玩转人工智能最火框架之TensorFlow开发环境搭建
- 软工团队(hello world)组员介绍
- 16.网络《果壳中的c#》