一个项目可以有两个(或更多)Git中的“origins”?

我想把一个项目推到github和Heroku服务器。

具体来说,在添加github存储库时出现这个错误:

$ git remote add origin https://github.com/Company_Name/repository_name.git
fatal: remote origin already exists.

当前回答

值得注意的是,可以同时将origin推到多个git存储库服务器。

可以通过使用以下命令向源远程添加另一个URL来实现这一点。

git remote set-url --add origin ssh://git@bitbucket.org/user/myproject.git

其他回答

您可以按照以下步骤将更改从现有存储库推送到新远程中。

cd existing_repo

重命名当前远程(可选)

git remote rename origin old-origin

添加新的远程(此处使用的原点)

git remote add origin https://github.com/repository_name.git

现在可以将代码推到新的源远程

git push -u origin --all
git push -u origin --tags

您可以拥有任意多的遥控器,但只能拥有一个名为“origin”的遥控器。名为“origin”的远程服务器在任何方面都不特殊,除了它是Git在克隆现有存储库时创建的默认远程服务器。您可以配置第二个远程,从该远程上推/拉,并设置一些分支从该远程而不是原点跟踪分支。

尝试添加一个名为“github”的远程代替:

$ git remote add github https://github.com/Company_Name/repository_name.git

# push master to github
$ git push github master

# Push my-branch to github and set it to track github/my-branch
$ git push -u github my-branch

# Make some existing branch track github instead of origin
$ git branch --set-upstream other-branch github/other-branch

值得注意的是,可以同时将origin推到多个git存储库服务器。

可以通过使用以下命令向源远程添加另一个URL来实现这一点。

git remote set-url --add origin ssh://git@bitbucket.org/user/myproject.git

你可以使用 而不是原始使用GitHub或GitLab

对于github在地方的起源使用github

git remote add github https://github.com/repository_name.git
git push github branchname

对于gitlab,请使用gitlab

git remote add gitlab https://github.com/repository_name.git
git push gitlab branchname
git remote set-url --add --push origin git@github.com:user/my-project.git
git remote set-url --add --push origin git@bitbucket.org:user/my-project.git

现在你有两个原点。