【GIT学习总结 2】GIT Debugging汇总

维护分支的Pull Request时,最怵Master Branch有新Release,在Merge Master时会遇到各式各样的问题。GIT使用时间不长,对界面上弹出的各式出错提示,心有戚戚焉。一直以来也总想多学点GIT命令,以便可以灵活应对,但纸上谈兵,印象不深,用时不明就里。今天十一假期最后一天,为两个分支Merge的Master,也是问题不断。但好在,不急不赶,做错了,沉下心来在网上带着问题与想法,寻找合适的命令组合。成功解决了问题,学到了新技能。

总结一下,便于今后翻阅借鉴!


回退到某个Commit (敲错了命令也不怕!)

事件还原:执行以下操作,想让本地分支与远端Master同步

操作命令:

(branch) git pull origin master

Result: VS Code出错提示Staged changes.

(branch) git commit -am "merge" (提交staged changes)

(branch) git push  (提交到远端分支)

Result:

提示有冲突。//后经分析:这次冲突是分支的Local repo与Remote repo间有冲突!

Reason:

这次,远端分支lead writer帮我做过一次merge操作,而我并没有在意,没有git pull把远端分支同步到本地库。

在执行pull origin操作前一定要git status!! 检查一下本地版本是否是与最新的远端版本同步! 

Solution:

回退至本地pull origin master前的版本,然后再git pull远程分支,再完成其余操作!!!

Git log

Git reset - -hard

Git pull  //pull同名远端

Git pull origin master //pull 远端master

//最近两次发现pull后,不需要commit,已经在local repo了。网上文章里也说同时更新本地库与工作目录。图示中pull只到working directory有误!

Git commit -am "merge"

Git push

!!本地库回退后,如想远端库同样回退

git push -f

Stashed内容必须及时删除

事件还原

重新Pull master,commit时,总是提示另一Branch里某一MD中新增加的内容(见下图)待处理??

好在知道了可以回退,沉下心,反复操作,认真读界面文字,发现了原来是让我选择是否保存Stashed内容... 想起来,我为了减少commit次数,在另一分支采用了Stash命令来暂存修改,当我切换到其它分支时,暂时不提交修改到本地库。

我在处理Stash恢复时,用的是Stash apply,这样,每次Stash都有一个Stash ID记录

Reason:

Stash的管理并不区分分支!!

解决办法

Git stash drop      //删除Stash,或者手工确认。

Stash命令说明

Push时会无故出现Validation Failure

事件还原:

Git push后,做markdown与Video validation,提示Video validation出错。

Solution:

再Git push一次,没有再出现error。分析有可能是网络问题!

相关话题:


GIT学习总结 I TW常用GIT命令

GIT学习总结 3 GIT 进阶学习

你可能感兴趣的:(【GIT学习总结 2】GIT Debugging汇总)