初学Git之SourceTree遇到的一些问题汇总
1、push时提示no new changes
1)第一次想push到leader去review,结果没提交直接push。
没理解提交和推送的区别:提交时提交到本地分支,推送时更新到远程服务器分支。需要先提交,再push,同时在push时,在分支名前面加:refs/for/
提交后push按钮应该会显示1,表示有一个提交待推送
2) 第二次也是想push给leader去review,结果提交后push按钮没显示有待推送,push时提示no new changes
原因:在提交时,不小心勾选了立即推送变更到xxxx(远程分支)!
2、有几个文件push到leader那边review,但leader还没看。后面又修改了这几个文件,同时远程分支的其他文件有人更新了。我先贮藏了本地的修改,然后拉取远程分支的修改到本地分支。最后再从本地贮藏区拿出我修改的文件,提交和推送review。结果推送到review那边的不止是我修改的文件,还包括从远程拉取的所有文件!
解决:先去review那边抛弃掉那两个review,然后回滚本地分支到第一次提交之前(这里我总共有两次提交),贮藏了本地的修改,拉取远程修改,最后再提交和推送review。
另一个方法:选择远程最新的一次提交,强制合并,这样会丢弃掉你本地的修改,所以前提是已经储藏本地修改