通过上一遍文章,我们的B同学已经顺利的把本地的代码提交到了本地git仓库,完成了一大半了,如果同学A想得到他的代码,怎么办?
一)代码上传远程git仓库
因为前面我们已经在同学B处执行了本地开发分支feature/002合并到了master,所以我们现在把同学B的master分支代码提交到远程仓库
①瞅一瞅仓库
还停留在比较老的版本,也是我们前面拉取分支时候的版本
看到这,大家对origin/master有了深刻的认识了吧
②使用命令 git push origin master
我们再去git远程服务器查看一下日志
嗯,数据是最新的了,且版本跟B同时的master版本一致
二)协作
同学B是把分支拉了,改好了,合并了,然后也提交了,可A同学的分支咋办【假设同学A的分支是feature/001】
我们试着在同学A的分支下执行代码提交
嗯,这是报了一堆错,我们简单看一下异常,是说有别的分支已经有代码提交了,你这代码有点旧了,不能直接提交的
那么怎么办呢,换一个命令,用git pull
这个命令实现的效果
①将远程仓库提交的历史拉取到本地进行合并
②将远程仓库的master跟本地仓库的master进行合并,从而保持一致
三)冲突
这个冲突和svn一样,就不演示了
【包含>>>和<<<,删掉冲突代码,然后拉取,在贴回去自己的代码,然后提交】
四)当分支代码合并到了master之后,其实分支的使命就完成了,这个时候就要删掉
git branch -d feature/001
如果fueture/001还有未提交的代码,删除会报错,并删除失败,如果强制删除,可以使用大d,git branch -D feature/001
还有一些其他分支命令
git branch 显示当前所有分支列表
git branch -v 显示每个分支指向的commit
git branch --merged 可以看到哪些分支被merge进入到当前分支
git branch --no-merged 可以看到哪些分支还没被merge到当前分支