远程仓库是指托管在因特网或其他网络中的你的项目的版本库。

你可以有好几个远程仓库,通常有些仓库对你只读,有些则可以读写。

1、查看远程仓库

1)查看你已经配置的远程仓库服务器,可以运行 git remote 命令

git remote // 会显示origin

它会列出你指定的每一个远程服务器的简写。如果你已经克隆了自己的仓库,那么至少应该能看到 origin - 这是 Git 给你克隆的仓库服务器的默认名字

2)指定选项 -v,会显示需要读写远程仓库使用的 Git 保存的简写与其对应的 URL

git remote -v

如果你的远程仓库不止一个,该命令会将它们全部列出。


2、添加远程仓库

git remote add <shortname> <url>

git remote add pb https://github.com/paulboone/ticgit


现在你可以在命令行中使用字符串 pb 来代替整个 URL。如:

git fetch pb // 拉取 Paul 的仓库中有但你没有的信息


3、从远程仓库中抓取与拉取

1)从远程库中获取信息

git fetch [remote-name]

这个命令会访问远程仓库,从中拉取所有你还没有的数据。

执行完成后,你将会拥有那个远程仓库中所有分支的引用,可以随时合并或查看。

注意 git fetch 命令会将数据拉取到你的本地仓库 - 它并不会自动合并或修改你当前的工作。 当准备好时你必须手动将其合并入你的工作。

运行 git pull 通常会从最初克隆的服务器上抓取数据并自动尝试合并到当前所在的分支。


4、推送到远程仓库

分享你的项目时,必须将其推送到上游

git push [remote-name] [branch-name]

当你想要将 master 分支推送到 origin 服务器时(再次说明,克隆时通常会自动帮你设置好那两个名字),那么运行这个命令就可以将你所做的备份到服务器:

git push origin master

只有当你有所克隆服务器的写入权限,并且之前没有人推送过时,这条命令才能生效。

当你和其他人在同一时间克隆,他们先推送到上游然后你再推送到上游,你的推送就会毫无疑问地被拒绝。 你必须先将他们的工作拉取下来并将其合并进你的工作后才能推送。


5、查看远程仓库

查看某一个远程仓库的更多信息

git remote show [remote-name]

它同样会列出远程仓库的 URL 与跟踪分支的信息。


6、远程仓库的移除与重命名

1)重命名引用的名字

git remote rename // 如下: 
git remote rename pb paul

注意的是这同样也会修改你的远程分支名字。 那些过去引用 pb/master 的现在会引用 paul/master

2)移除一个远程仓库

git remote rm 
git remote rm paul