问题描述
最近在和小伙伴一起开发前端项目,本人恍恍惚惚,在git pull
项目仓库最近一次跟新后,并没有切换到自己的yn
分支进行开发,开发到一半才发现自己在master
分支上进行开发,同时在合并冲突时也遇到了困难。
问题1、如何将master分支上的开发内容转移到自己的分支上?
问题2、在master上执行git merge "分支名"
后,想回退到合并前
解决方案:
问题1:
// 1、将新开发的内容暂存,暂存后git status能看到当前工作台是干净的~
git stash save '功能暂存'/git stash
// 2、切换分支到自己的分支
git checkout 分支名称
eg:
//我的分支名为yn,故执行
git checkout yn
// 3、查看stash中的内容,可以看到暂存的一些内容列表
git stash list
// 4、将stash中的内容pop到新的分支上面,pop之后会将缓存在堆栈中的对应stash删除
git stash pop
如下图:
此时我们已经将开发内容转移到了自己的分支上,进一步执行
git add .
git commit -m "操作描述"
git push
到这里所有开发的内容已经上传到云端git仓库自己的分支了,后续可以和master合并。
问题2:
终端输入:
git merge --abort
回退到合并前。
原文地址