由于项目中分支很多经常遇到一些比如说需要回退的操作,由于不经常使用这些Git命令特此记录.
一、放弃本地已修改的代码,拉取远程仓库最新代码进行合并(相当于回退:由于本地合并或者切换分支是可能会造成本地代码仓库崩溃无法运行,对于本地的项目中修改不做保存操作(或代码改崩),可以用到Git pull的强制覆盖)
1、下载远程仓库最新内容,不做合并
git fetch --all
2、把hard指向master(你当前所在崩溃分支)最新版本
git reset --hard origin/master
3、拉取更新代码(可以省略)
git pull
截图如下:
image二、有的时候,在develop分支开发,是大家公用的开发分支,但是只想合并自己提交的到master,如何操作呢?那就要用cherry-pick了。
方法一:利用git命令解决
语法:
git cherry -pick commitid
首先,git log查看自己提交的log,找到版本号,如最近的版本号是 ee3c72
然后,切换到想要合并的分支,如想把develop的合并到master,切换到master,执行 git cherry-pick ee3c72,执行完之后,提交就会在master上体现了,然后push,就可以了。
方法二:如果你是用的idea工具的话可以这么操作:
选择idea 底部 Version Control查看提交日志
image然后选择你想要合并节点的分支(origin/h...)
image右键 有一个Cherry-Pick 这个就是合并某个分支节点的 其实和命令是一个道理的 只不过idea给工具化了更方便使用了
image然后就会有一个弹窗出现 这个就是合并分支和你当前分支的一些冲突
image然后就是解决冲突的过程,这个应该不需要我再教了吧 (左边是本地代码,右边是拉取分支的代码,中间是你Apply的代码,合并到中间然后应用,想用哪边的代码直接点击箭头就可以)
image当然最下面也给出了其他的操作方式 (Accept Left)使用左边的代码,(Accept
Right)使用右边的代码,(About)终止忽略的意思 类似于cancel,(Apply)应用中间的代码,也就是刚开始说的合并到中间的代码
,然后解决完冲突就ok了
image本身到这里就应该结束的,但是由于可能代码量比较大或者合并中出现了问题,比较着急的小伙伴应该会很难受,这里有一个解决办法就是看我第一个 Git不常用命令行可以试着回退到仓库最新代码(本地代码不会被保存需要重新搞),然后又可以愉快的玩耍了美滋滋,试他个一百遍不香么,再也不用担心合并代码出问题了(注意 :回退到仓库最新代码不会保存本地修改的代码哦 回退到仓库最新代码不会保存本地修改的代码 回退到仓库最新代码不会保存本地修改的代码哦重要的事情说三遍)这个大家要注意
网友评论