【学习笔记】git分布式管理(分支策略,bug分支,强行删除分支,多人协作抓取提交)

分支策略

在实际开发中,master分支应该是非常稳定的,也就是仅仅用来发布信版本,平时不在上面干活。干活都应该在dev分支上,每个人都在dev分支上干活,然后每个人又有各自的分支,等到版本发布的在网上发布,团队合作就像
这里写图片描述
合并的分支的时候可以加上git merge --no-ff -m "merge"这里ff指的是Fsat Forward合并,使用no-ff参数能够看到曾经做过合并,fastforwrad却看不出。

bug分支

bug分支指的就是在刚好在一个分支上开发,突然领导让你去修改另外一个bug,但是当前工作区的修改的文件还没到提交的层次, 可以使用git stash将当前工作区隐藏起来,建立另外个bug分支修改bug,
其中需要记住几个重要的命令:

隐藏工作区:git stash
查看隐藏工作区:git stash list
恢复工作区:git stash apply 恢复 git stash drop 删除
git stash pop 恢复+删除。

当然也可以多次stash ,
恢复指定的stash

 git stash apply stash@{0}

强制删除分支

丢弃不需要合并的分支

git branch -D <name>

多人协作

当你git clone远程项目的时候的,已经讲远程的master与本地的master建立了连接,查看远程库的信息可以使用命令:

git remote

或者用git remote -v显示更详细的内容
上面会显示可以抓取和推送的远程库的地址。如果没有推送权限是看不到的。

推送分支

git push origin branchName

推送本地库的内容到远程库对应的远程分支上,dev,master分支都需要往上推送,其他些bug分支就不需要推送到版本库上的

拉取分支

从远程库上colone

git colone git@github.com:toothsmile/gitTEST

这只能将远程版本库的master拉到本地,这时候想要切换远程的分支dev到本地,需要输入命令

git checkout -b dev origin/dev 

这样就把远程目录上的分支clone下来了。
接下来就可以通过push命令一直往上面推送了,如果是团队协作的时候,有人提交内容比你早,会推送失败,需要将新版本抓取下来,可以先用git pull把最新的提交从origin/dev抓下来,然后,在本地合并,解决冲突,再推送。
如果git pull失败的话,原因是没有指定本地dev分支与远程origin/dev分支的链接,根据提示,设置dev和origin/dev的

git branch --set-upstream dev origin/dev

在进行pull,这回git pull成功,但是合并有冲突,需要手动解决,解决的方法和分支管理中的解决冲突完全一样。解决后,提交,再push。
查看远程库信息,使用git remote -v;

小结

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

  • 从本地推送分支,使用git push origin branch-name,如果推送失败,先用git pull抓取远程的新提交;

  • 在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致;

  • 建立本地分支和远程分支的关联,使用git branch –set-upstream branch-name origin/branch-name;

  • 从远程抓取分支,使用git pull,如果有冲突,要先处理冲突。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值