1.本地分支与远程分支的关联
当把本地代码push到远程分支时,命令为:
git push origin feature1
如果要省略为git push,那么本地分支需要与远程的分支相关联,可以使用--set-upstream-to或者--track,后面接的顺序为:远程分支 本地分支
git branch --set-upstream-to origin/feature1 feature1
git branch --track origin/feature1 feature1
可以使用命令git branch -vv来查看是否关联成功。
2.撤销上一次提交
当我们push代码后发现某次提交有错误,此时可以修改本地代码,然后push到远程去覆盖错误的代码,也可以用:
git revert HEAD^
此时,会增加新的一条commit,错误的commit记录还存在,但是错误的内容已经被新的commit撤销掉了。
当然除了git revert,还可以使用
git reset --hard HEAD^
来达到撤销的效果。实际上此命令不是撤销,而是移动HEAD到父commit上,此时本地代码是要落后远程代码一个commit,可以强制push到远程分支:
git push -f
但是通常不建议这么做,如果强制push到远程,那么本地的新改动,且历史记录全部会抹去。