为了能在任意 Git 项目上协作,你需要知道如何管理自己的远程仓库。 远程仓库是指托管在因特网或其他网络中的你的项目的版本库。 你可以有好几个远程仓库,通常有些仓库对你只读,有些则可以读写。 与他人协作涉及管理远程仓库以及根据需要推送或拉取数据。 管理远程仓库包括了解如何添加远程仓库、移除无效的远程仓库、管理不同的远程分支并定义它们是否被跟踪等等。 在本节中,我们将介绍一部分远程管理的技能。
1、添加多个远程仓库
要为一个git本地仓库添加多个远程仓库,可以使用以下命令:
$ git remote add <仓库名1> <url1>
$ git remote add <仓库名2> <url2>
其中,<仓库名1> 和 <仓库名2> 是你希望给这两个远程仓库取的别名,<url1> 和 <url2> 则是这两个远程仓库的URL。
例如,要给一个本地仓库添加名为"origin"和名为"github"的两个远程仓库,可以使用以下命令:
$ git remote add origin git@github.com:username/repo.git
$ git remote add github git@github.com:username/repo.git
这样,你就可以使用以下命令推送到指定的远程仓库:
$ git push origin <分支名>
$ git push github <分支名>
2、将本地分支推送远程分支
如果你已经给本地仓库添加了多个远程仓库,可以使用以下命令切换分支并将代码推送到特定的远程仓库:
$ git push <远程仓库名> <本地分支>:<远程分支>
其中,<远程仓库名> 是你希望推送到的远程仓库的别名,<本地分支> 是你希望推送的本地分支名称,<远程分支> 是你希望该分支在远程仓库中所对应的分支名称。
例如,如果你想要将本地仓库的dev分支推送到远程仓库origin的main分支,可以使用以下命令:
$ git push origin dev:main
同样,如果你想要将本地仓库的dev分支推送到远程仓库github的dev分支,可以使用以下命令:
$ git push github dev:dev
这样就可以成功切换分支并将代码推送到指定的远程仓库了。
3、移除远程仓库
如果你想要移除一个远程仓库的关联,可以使用以下命令:
$ git remote rm <仓库名>
其中,<仓库名> 是你想要取消关联的远程仓库的别名。
例如,如果你想要取消本地仓库与名为github的远程仓库的关联,可以使用以下命令:
$ git remote rm github
这样就可以成功取消本地仓库与该远程仓库的关联了。