git 分支管理

1.创建切换分支
git checkout -b dev
等同于:
git branch dev
git checkout dev

查看当前分支以所有分支情况:
git branch

2.合并分支
git merge 命令用于合并指定分支到当前分支。合并后,再查看readme.txt的内容,就可以看到,和 dev 分支的最新提交是完全一样的
git checkout master
git merge dev

3.删除分支
git branch -d dev

4.解决冲突
git merge feature1
直接查看 file
Git is a distributed version control system.
Git is free software distributed under the GPL.
Git has a mutable index called stage.
Git tracks changes of files.
<<<<<<< HEADCreating a new branch is quick & simple.
=======Creating a new branch is quick AND simple.
>>>>>>> feature1
Git用<<<<<<<=======>>>>>>>标记出不同分支的内容

用带参数的 git log 也可以看到分支的合并情况:
$ git log --graph --pretty=oneline --abbrev-commit
*   59bc1cb conflict fixed
|\
| * 75a857c AND simple
* | 400b400 & simple
|/
* fec145a branch test

5.分支管理策略
采用 --no-ff 参数,表示禁用 Fast forward 策略
git merge --no-ff -m "merge with no-ff" dev
因为本次合并要创建一个新的commit,所以加上 -m 参数,把commit描述写进去
合并 后用 git log 查看分支历史:
git log --graph --pretty=oneline --abbrev-commit

6.BUG 分支
Git还提供了一个 stash 功能,可以把当前工作现场“储藏”起来,等以后恢复现场后继续工作
git stash
接下去就可以进行 Bug 分支处理
git checkout master
git checkout -b issue-101
git add.../git commit
git checkout master
git merge --no-ff -m "" issue-101
git branch -d issue-101


最后切换回 dev 工作目录
git checkout dev
查看 stash list
git stash list
stash@{0}: WIP on dev: 6224937 add merge

工作现场还在,Git把stash内容存在某个地方了,但是需要恢复一下,有两个办法:

一是用git stash apply恢复,但是恢复后,stash内容并不删除,你需要用git stash drop来删除;

另一种方式是用git stash pop,恢复的同时把stash内容也删了

你可以多次stash,恢复的时候,先用 git stash list 查看,然后恢复指定的stash,用命令:
git stash apply stash@{0}

7. Feature 分支
新功能分支,如果顺利并且上线,那么就合并到 master,如果不需要就删除该分支
git branch -d feature-vulcan
强制删除
git branch -D feature-vulcan

8.多人协作
查看远程库的信息
git remote (-v)

但是,并不是一定要把本地分支往远程推送,那么,哪些分支需要推送,哪些不需要呢?

  • master分支是主分支,因此要时刻与远程同步;

  • dev分支是开发分支,团队所有成员都需要在上面工作,所以也需要与远程同步;

  • bug分支只用于在本地修复bug,就没必要推到远程了,除非老板要看看你每周到底修复了几个bug;

  • feature分支是否推到远程,取决于你是否和你的小伙伴合作在上面开发。


解决冲突:
git branch --set-upstream dev origin/dev
git pull
解决冲突后再提交
git add /git commit
git push origin dev








评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值