git学习笔记(十二):多人协作

从远程仓库克隆时,git 自动把本地的master分支和远程的master分支对应起来了,可以使用git remote命令查看远程库的信息。git remote -v显示信息更加详细。

推送分支

推送分支就是把该分支上的所有本地提交推送到远程库。推送时,要指定本地分支。这样,git就会把该分支推送到远程库对应的远程分支上。(很像复制粘贴文件夹)

$ git push origin master

不是所有的分支都必须和远程同步喔,master是主分支,要时刻与远程同步;dev是开发分支,团队成员都在上边工作,也需要与远程同步;bug分支只用于在本地修复bug,没必要推到远程。

本地新建的分支如果不推送到远程,对其他人就是不可见的。

抓取分支

多人协作时,大家都会往master和dev分支上推送修改。你的电脑和github账号连起来(SSH key),去克隆别人的远程库。

$ git clone git@github.com:你的目录

从远程库clone时,默认情况下,只能看到本地master分支。但开发要在dev分支上进行,所以必须创建远程origin的dev分支到本地。

$ git checkout -b dev origin/dev

把dev分支push到远程。

$ git push origin dev

头脑风暴

如果两个人修改了同样的文件,推送到同一个远程分支,会发生什么?

  1. 总有先后,人家交了,你抓下来看看哪里改了,然后自己合并,重新提交

Rebase

多人在同一个分支上协作时,很容易出现冲突。即使没有冲突,后提交的人也要先下载,本地合并,然后才能提交。(谁知道这个过程中会不会又有人提交了,然后你可能要接着排队。)

这个也太难了,一时半会儿真是看不懂-_-

参考链接

  1. 廖雪峰网站:https://www.liaoxuefeng.com/wiki/896043488029600/900375748016320
  2. git log:https://zhuanlan.zhihu.com/p/183131156
posted @ 2023-08-01 11:32  芋圆院长  阅读(14)  评论(0编辑  收藏  举报