1.先在master 分支创建文件
# 文件名为master.txt# 文件内容是:mastergit add .git commit -m "master"git push origin master
2.再从master分支切出dev1分支并提交文件
# 文件名为dev1.txt# 文件内容是:dev1git add .git commit -m "dev1"git push origin dev1
注:dev1分支下会存在两个文件:master.txt、dev1.txt。必须将dev1分支的数据进行提交,否则切换到master分支时,会将修改数据带到master分支
3.切回master
git checkout master
4.从master分支切出dev2分支并提交文件
# 文件名为dev2.txt# 文件内容是:dev2git add .git commit -m "dev2"git push origin dev2
注:dev2分支下会存在两个文件:master.txt、dev2.txt。必须将dev2分支的数据进行提交,否则切换到master分支时,会将修改数据带到master分支
5.如果没有提交还想切换,修改记录不带过去的话使用stash
# 保存dev分支的修改到堆栈中$ git stash# 切换master分支$ git checkout master# 切回dev分支$ git checkout dev# 获取堆栈列表$ git stash list# 取回堆栈最新的修改$ git stash pop
6.优雅的将当前分支的修改带到其它分支
# 由于 git stash的堆栈是所有分支共享的,所以 master分支也可以取得dev分支的修改,过程非常的简单。# 保存dev分支的修改到堆栈中$ git stash# 切换master分支$ git checkout master# 取回堆栈最新的修改$ git stash pop# 或者取回堆栈指定的修改$ git stash apply stash@{0}
7.将dev1分支合并到master分支
# 先从dev1切换到master分支git merge dev1
注:此时master分支上就有两个文件:master.txt 、dev1.txt
8.将dev2分支合并到master分支
# 先从dev2切换到master分支(如果在master分支不用操作)git merge dev2
注:此时master分支上就有三个文件:master.txt 、dev1.txt、dev2.txt
