我们提到的在冲突问题:
一个代码你改了,我也改了然后发布,这就会产生冲突,因为版本工具无法识别到底哪个是该留下来的。我们如何解决冲突?
要想解决冲突,我们先制造冲突。
首先打开两个shell客户端连上linux服务器进行操作,也就是我们模拟两个人对同一项目进行提交操作
我们到当前test仓库对文件进行操作
ls #查看有什么
cp -r Driectory-notepad Driectory-notepad1 #复制文件以及目录
cd Driectory-notepad #进入目录
我们修改下日记文件,添加“番茄很酸!”保存退出
vi 日记
现在我们切入到第二个人环境下,编辑文件
添加“番茄好甜啊~”保存退出
接下来我们查看工作区,实际上我们的版本工具不知道番茄是酸还是甜,这个东西由我们来决定。
现在对新增文件建立一个跟踪
git add 日记
然后提交
git commit
在第一行填上评论如图
发起对github上的提交
git push
刚从输错密码了不好意思!
我们看到显示干净的工作区说明提交完成,开始切换第二个人
我们发现第二个人尚未提交
我们再一次发起提交操作
我们将这修改push到github上
git push
此时我们发现了一个异常!错误:更新被拒绝,远程版本库包含不存在的提交,或推送相同的引用!
此时冲突我们已经制造出来了,现在开始解决了
遇到上图情况,我们可以使用git pull合并冲突。
我们虽然看到自动合并失败但是同时保留了两个文件
输入
git status #查看工作区
git diff #打开这个冲突合并文件
于是我们决定保留哪一个
vi 日记
好!我们进行提交
git status #查看工作区
git add 日记 #添加提交的日记
git commit #提交到本地git
git push #提交到github上,由github进行维护
我们在进入github网上进行刷新