git clone

$ git clone <版本库的网址> <本地目录名>

git remote

Git要求每个远程主机都必须指定一个主机名,git remote命令就用于管理主机名。

不带选项的时候,git remote命令列出所有远程主机。

$ git remote
origin

使用-v选项,可以参看远程主机的网址。

$ git remote -v
origin	https://github.com/pytorch/pytorch (fetch)
origin	https://github.com/pytorch/pytorch (push)

其他操作

$ git remote show <主机名>
$ git remote add <主机名> <网址>
$ git remote rm <主机名>
$ git remote rename <原主机名> <新主机名>

git fetch

一旦远程主机的版本库有了更新(Git术语叫做commit),需要将这些更新取回本地,这时就要用到git fetch命令。默认情况下,git fetch取回所有分支(branch)的更新。如果只想取回特定分支的更新,可以指定分支名。

$ git fetch <远程主机名>
$ git fetch <远程主机名> <分支名>

git branch命令的-r选项,可以用来查看远程分支,-a选项查看所有分支。

$ git branch -r
origin/master

$ git branch -a
* master
  remotes/origin/master

取回远程主机的更新以后,可以在它的基础上,使用git checkout命令创建一个新的分支。

$ git checkout -b newBrach origin/master

此外,也可以使用git merge命令或者git rebase命令,在本地分支上合并远程分支。

$ git merge origin/master

git pull

git pull命令的作用是,取回远程主机某个分支的更新,再与本地的指定分支合并。如果远程分支是与当前分支合并,则冒号后面的部分可以省略。

$ git pull <远程主机名> <远程分支名>:<本地分支名>
$ git pull origin next:master
$ git pull origin next

$ git submodule update

上面命令表示,取回origin/next分支,再与当前分支合并。实质上,这等同于先做git fetch,再做git merge

$ git fetch origin
$ git merge origin/next

git push

git push命令用于将本地分支的更新,推送到远程主机。如果省略远程分支名,则表示将本地分支推送与之存在”追踪关系”的远程分支(通常两者同名),如果该远程分支不存在,则会被新建。

$ git push <远程主机名> <本地分支名>:<远程分支名>
git push origin master

ShengYg

Step after step the ladder is ascended.


Tags •