情形:协同开发,加入一个在开发过程中的项目,即码云远程仓库的 master 分支已有代码,需要新建分支并且合并远程 master 主分支

首先,线上要新建个分支名,比如 samsara,然后就可一开始动手了(搓手手~

第一步:本地将项目初始化,会默认为 master 主分支

1
git init #初始化本地项目,变成一个 Git 本地仓库

第二步:将本地仓库与码云上的远程仓库关联起来

1
git remote add origin http://XXX    #http://XXX就是线上项目地址

第三步:拉远程主分支的代码,将本地项目与线上同步

1
git pull --rebase origin master

第四步:本地新建自己的分支

1
2
3
git branch samsara #新建名为 samsara 的分支

git checkout samsara #切换到 samsara 分支

两句命令可以合写成为

1
git checkout -b samsara

这样本地就有了属于自己的分支。可以用git branch查看当前本地的分支列表

第五步:将本地 master 分支的代码合并到 samsara

1
git merge master

此时本地的状态是,线上 master 有代码,samsara 为空分支,本地 master 有代码,samsara 也有刚合并过来的 master 里的代码

第六步:将本地 samsara 推到远程仓库之前建好的 samsara 分支

1
2
3
4
5
git add .		#提交变化到暂存区

git commit -m '注释内容' #将暂存区的内容提交到本地仓库,并标注此次变化的内容

git push origin samsara #git push 仓库名 分支名,提交这些改动到远程仓库origin的samsara

好了,到这整个流程走完了,接下来协同开发时,自己是 samsara 分支,需要合并其他分支时(以 master 为例)

1
2
3
4
5
6
7
git checkout master		#切换到需要被合并的分支,在切换前要确保本地samsara分支与远程samsara同步,要先push一遍(第六步)

git pull origin master #拉取该分支的线上版本

git checkout samsara #切换回自己的分支

git merge master #合并master分支

Tips:所有 pull,push 等与远程有关的操作一定要保证本地与线上是同一个分支,比如不能在本地的 samsara 下直接拉取远程 master 分支的内容或者是推到 master 分支。

新建分支,合并他人分支大概就这样,over~



一根名为“前端”的胡萝北      git

本博客所有文章除特别声明外,均采用 CC BY-SA 3.0协议 。转载请注明出处!