Git学习笔记(4)-多人协作

Git学习笔记第四篇,主要参照廖雪峰的Git教程,好记性不如烂笔头,学习成果形成文档,加油!

1 多人协作

1.1 克隆分支

当从远程仓库克隆时,实际上Git自动把本地的master分支和远程的master分支对应起来了。远程仓库的默认名称是origin
要查看远程库的信息,用git remote
也可以用下述命令查看远程仓库更加详细的信息:git remote -v

origin  git@github.com:AlphaGKH/learngit.git (fetch)
origin  git@github.com:AlphaGKH/learngit.git (push)

上述内容显示的是可以抓取和推送的origin的地址,如果没有推送权限就看不到push地址。

1.2 推送分支

推送分支,就是把本地某个分支上的所有本地提交推送到远程库。比如将本地仓库learngit目录下的所有提交推送到GitHub远程库对应的分支上。
推送时,要指定本地分支,这样,Git就会把该分支推送到远程库对应的远程分支上。比如:
git push origin master就是把本地的master分支推送到远程库origin对应的远程master分支上。
git push origin dev把本地的dev分支推送到远程库origin对应的远程dev分支上。
关于推送分支的原则有以下几条:
(1)master分支是主分支,因此要时刻与远程保持同步;
(2)dev分支是开发分支,所有人都在上面工作,因此也要与远程保持同步;
(3)bug分支只用于修复bug,用完即删除,因此不用推送到远程;
(4)feature分支如果是与人合作开发则需要推送到远程,与他人共享开发进度,否则就不需要。

1.3 抓取分支

多人协作时,大家都会往同一个项目的远程库的masterdev分支上推送自己的修改。现在一个程序员王小二从GitHub上克隆learngit仓库到他的本地目录。

git clone git@github.com:AlphaGKH/learngit.git

此时王小二能够在他的电脑上看到目录learngit,此时该目录下只有分支master。但是王小二要在dev分支上进行开发,于是他使用下列命令在本地创建与远程分支对应的分支。

git checkout -b dev origin/dev

这个命令的作用是:将远程库origin中的dev分支创建到本地dev,并切换到本地dev分支。
现在王小二就可以在本地的dev分支上进行工作,然后不断的将本地的dev推送到远程仓库learngit中对应的dev分支了。
王小二使用git push origin dev将本地dev分支上的最新修改推送到远程库origindev分支,
同时,另外一个程序员张小四也对同样的文件做了修改,并准备推送到远程,这个时候,张小四发现推送失败了,这是因为张小四的推送与王小二的推送有冲突,这个时候,张小四把最新的提交(即是王小二刚刚的提交)从远程库origin/dev上抓取到本地,然后在本地解决冲突后,再重新推送。

步骤 作用 指令
1 指定本地dev分支与origin/dev的链接 git branch --set-upstream dev origin/dev
2 从origin/dev上抓取到本地 git pull

猜你喜欢

转载自blog.csdn.net/weixin_40528417/article/details/79392374