git fetch <远程主机名> #将远程主机的更新,取回本地
git fetch <远程主机名> <分支名> #取回远程主机的master分支
git fetch origin master #取回origin的master分支
所取回的更新,默认会以"远程主机名/分支名"的形式读取。好比origin主机的master,就要用origin/master读取git
git branch -r 查看远程分支
git branch -a 查看全部分支服务器
git pull命令的做用是,取回远程主机某个分支的更新,并与本地的指定分支合并
git pull <远程主机名> <远程分支名>:<本地分支名>
git pull origin next:master #取回origin主机的next分支,与本地的master分支合并
git pull origin next #远程分支是与当前分支合并
Git会在本地分支与远程分支之间,创建追踪关系。如:在git clone时,本地分支默认与远程主机的同名分支,创建追踪关系,如:本地的master分支自动"追踪"origin/master分支ide
手动创建追踪关系
git branch --set-upstream master origin/next #指定master分支追踪origin/next分支fetch
若是远程主机删除了某个分支,默认状况下,git pull不会在拉取远程分支的时候,删除对应的本地分支。这是为了防止,因为其余人操做了远程主机
git pull -p #在本地删除远程服务器上已经不存在的分支it
git push命令用于将本地分支的更新,推送到远程主机
git push <远程主机名> <本地分支名>:<远程分支名> #若是该远程分支不存在,则会被新建
git push origin master #将本地的master分支推送到origin主机的master分支。若是后者不存在,则会被新建ast
若是省略本地分支名,则表示删除指定的远程分支,由于这等同于推送一个空的本地分支到远程分支
git push origin :master #删除origin主机的master分支
git push origin --delete master #删除origin主机的master分支class
git push --all origin #将全部本地分支都推送到origin主机
若是远程主机的版本比本地版本更新,推送时Git会报错,要求先在本地作git pull合并差别,而后再推送到远程主机,使用--force强制推送stream
git push --force origin #使用--force选项,将会致使远程主机上更新的版本被覆盖
git push origin --tags #git push默认不会推送标签,须要使用--tags指定next