git push&pull命令详解
git pull的作用是从一个仓库或者本地的分支拉取并且整合代码。
git pull [<options>] [<repository> [<refspec>…]]
描述
git pull
相当于 git fetch
跟着一个 git merge FETCH_HEAD
。<repository>
是仓库的名字,<refspec>
是分支的名字。如果都不写,会有一个默认值。如果发生了冲突,可以使用git reset --merge
进行回退。
git push命令用于将本地分支的更新,推送到远程主机。它的格式与git pull命令相仿。
git push <远程主机名> <本地分支名>:<远程分支名>
如果省略远程分支名,则表示将本地分支推送与之存在"追踪关系"的远程分支(通常两者同名),如果该远程分支不存在,则会被新建。
git push origin master
上面命令表示,将本地的master分支推送到origin主机的master分支。如果后者不存在,则会被新建。
如果省略本地分支名,则表示删除指定的远程分支,因为这等同于推送一个空的本地分支到远程分支。
#慎用!删除远程仓库的分支
git push origin :master
# 等同于
git push origin --delete master
上面命令表示删除origin主机的master分支。
如果当前分支与远程分支之间存在追踪关系,则本地分支和远程分支都可以省略。
git push origin
上面命令表示,将当前分支推送到origin主机的对应分支。
如果当前分支只有一个追踪分支,那么主机名都可以省略。
git push
如果当前分支与多个主机存在追踪关系,则可以使用-u选项指定一个默认主机,这样后面就可以不加任何参数使用git push。
git push -u origin master
上面命令将本地的master分支推送到origin主机,同时指定origin为默认主机,后面就可以不加任何参数使用git push了。
git push <远程主机名> <本地分支名>:<远程分支名>