目录
- 第一章、本地分支的切换测试
- 1.1)切换之前的master分支下文件内容
- 1.2)切换到develop分支后修改文件
- 1.3)切回master分支出现报错:
- 第二章、解决方式
- 2.1)方式1:commit提交修改
- 2.2)方式2:stash
- 2.3)方式3;放弃修改
- 第三章、commit后将develop分支合并到master分支
- 3.1)查看develop分支下的内容
- 3.2)查看master分支下的内容
- 3.3)合并develop分支到master分支
友情提醒:
先看文章目录,大致了解文章知识点结构,点击文章目录可直接跳转到文章指定位置。
第一章、本地分支的切换测试
1.1)切换之前的master分支下文件内容
执行命令 切换到master分支
git checkout master
此时的master分支下的文件内容如下:
1.2)切换到develop分支后修改文件
执行命令 切换到develop分支
git checkout develop
对文件内容进行以下修改:修改后内容如下:
1.3)切回master分支出现报错:
报错如下: error: Your local changes to the following files would be overwritten by checkout: fileMergeTest.txt Please commit your changes or stash them before you switch branches. Aborting |
您对以下文件的本地更改将被签出覆盖:
fileMergeTest.txt
请在切换分支之前提交(commit),或者缓存(stash )。
第二章、解决方式
2.1)方式1:commit提交修改
先在develop分支修改本地文件内容,如图:
切换到master分支时提示:
使用commit,提交保存到本地仓库再切换分支:
git add filename
git commit -m "message"
如图执行:
提交后,本地文件就被修改了,这时候切换成功了
git checkout develop
切换回develop分支会发现,文件内容是修改保存的。
想要还原这次commit提交的话可以:
使用git log
查看提交的历史记录 找到,
再使用下面命令恢复本次提交的修改
git revert <commit-id>
#也就是
git revert fceb33de10e82ed956fe68aa25c0c567bfdace47
出现下面的界面:Git会打开一个文本编辑器,让您输入撤销提交的相关信息。可以按i然后直接按下Esc键,输入:wq,然后按下Enter键。默认使用当前信息。
2.2)方式2:stash
先在本地develop分支下修改文件内容
切换到master分支时提示:
可以使用git stash #封存修改
切换到master以后再切回来,
发现文件内容怎么少了一段
原来是要把封存的修改用git stash pop
命令取出来
git stash pop #把封存的还原
封存的修改就还原了
2.3)方式3;放弃修改
不推荐这样做,改完了又放弃,这不是傻嘛。
git clean -n //这个是清除文件预览
git clean -f fileName //强制清除文件
执行后效果如下:
86130@Bms MINGW64 /f/Git/mergetest (develop)
git clean -n
Would rempve fileMergeTest.txt.bak
86130@Bms MINGW64 /f/Git/mergetest (develop)
git clean -f fileMergeTest.txt.bak
Removing fileMergeTest.txt.bak
第三章、commit后将develop分支合并到master分支
3.1)查看develop分支下的内容
执行命令 切换到develop分支
git checkout develop
发现内容如下:
3.2)查看master分支下的内容
执行命令 切换到master分支
git checkout master
master分支下的文件内容如下:
3.3)合并develop分支到master分支
执行下面的命令先切到master
git checkout master
合并develop分支到当前的master分支
git merge develop
这是在master分支下查看文件内容,发现已经和develop分支同步了