远程仓库是指托管在网络上的项目仓库,可能会有好多个,其中有些只能读,另外有些可以写。
查看当前的远程库
执行命令git remote
会列出每个远程库的简短名字,例如下面的执行结果:
$ git remote
origin
如果想查看仓库的详细地址信息,可以添加参数-v
。例如执行命令git remote -v
,就可以看到类似下面的内容:
$ git remote -v
origin git@git.benben.com:benben/test.git (fetch)
origin git@git.benben.com:benben/test.git (pull)
添加远程仓库
命令格式git remote add [<options>] <name> <url>
,其中name
的值就是你拉取远程代码的仓库名字,例如git remote add boy [email protected]:benben/boy.git
添加一个名为boy
,地址为[email protected]:benben/test.git
的仓库。
当你拉取此仓库的内容时,可以使用命令git fetch boy
。一般情况下,当你不输仓库名时,默认会去拉取名为origin
仓库的内容。
重命名远程仓库
命令格式git remote rename <old> <new>
可以修改某个远程仓库在本地的简称。比如想把上面的boy
仓库名改为girl
,可以使用命令:$ git remote rename boy girl
。
远程仓库名的改变也可能导致对应的分支名称发生变化,例如原来的boy/master
分支现在成了girl/master
。
删除和移除远程仓库
命令格式git remote remove <仓库名>
或者git remote rm <仓库名>
,会删除远程的仓库的所有跟踪分支和配置设置。
设置远程仓库的地址
命令格式git remote set-url [--push] <name> <newurl> [<oldurl>]
,或者git remote set-url -add <name> <newurl>
,或者git remote set-url --delete <name> <url>
。第一条命令是用新的仓库地址替换旧的仓库地址,其他两条命令分别对应添加一个仓库和删除一个仓库。
例如:使用命令git remote set-url origin [email protected]:benben/newtest.git
,就可以将旧的仓库地址替换掉。
查看远程仓库信息
命令格式git remote show <仓库名>
,查看某个远程仓库的详细信息,比如要查看$ git remote show origin
仓库。
* remote origin
Fetch URL: [email protected]:benben/test.git
Push URL: [email protected]:benben/test.git
HEAD branch: develop
Remote branches:
develop tracked
refs/remotes/origin/master stale (use 'git remote prune' to remove)
Local branches configured for 'git pull':
develop merges with remote develop
master merges with remote master
Local ref configured for 'git push':
develop pushes to develop (up to date)