我有我的项目在GitHub上的一些位置,git@github.com:myname/oldrep.git。

现在,我想将所有代码推到其他位置的新存储库git@github.com:newname/newrep.git。

我使用命令:

git remote add origin git@github.com:myname/oldrep.git

但我所领受的是:

致命:远程源已经存在。


当前回答

我也遇到过同样的问题,在做了一些研究之后,我是这样解决的:

下载GitHub for Windows,或使用类似的东西,其中包括一个shell。 从任务菜单中打开Git Shell。这将打开一个包含Git命令的power shell。 在shell中,切换到旧的存储库,例如cd C:\path\到\old\存储库。 显示旧存储库的状态。

输入git remote -v获取获取和推送remote的远程路径。如果您的本地存储库连接到远程存储库,它将显示如下内容: 来源https://user@bitbucket.org/team-or-user-name/myproject.git(获取) 来源https://user@bitbucket.org/team-or-user-name/myproject.git(推送) 如果没有连接,可能只显示原点。

现在通过使用从本地存储库删除远程存储库 Git远程rm来源 使用git remote -v再次检查,如步骤4所示。它应该只显示原点,而不是读取和推送路径。 现在旧的远程存储库已经断开连接,可以添加新的远程存储库了。使用以下命令连接到新的存储库:

注意:如果你正在使用Bitbucket,你会先在Bitbucket上创建一个项目。创建后,Bitbucket将显示将存储库推送到远程所需的所有Git命令,这看起来类似于下一个代码片段。但是,这也适用于其他存储库。

cd /path/to/my/repo # If you haven't done that yet.
git remote add mynewrepo https://user@bitbucket.org/team-or-user-name/myproject.git
git push -u mynewrepo master # To push changes for the first time.

就是这样。

其他回答

您可以简单地在文本编辑器中编辑配置文件。

在~/。你需要在Gitconfig中输入如下内容:

[user]
        name  = Uzumaki Naruto
        email = myname@example.com

[github]
        user = myname
        token = ff44ff8da195fee471eed6543b53f1ff

In the oldrep/。Git /配置文件(在存储库的配置文件中):

[remote "github"]
        url = git@github.com:myname/oldrep.git
        push  = +refs/heads/*:refs/heads/*
        push  = +refs/tags/*:refs/tags/*

如果您的存储库的配置文件中有一个远程部分,并且URL匹配,您只需要添加推送配置。如果你使用一个公共URL进行抓取,你可以将用于推送的URL输入为“pushurl”(警告:这需要刚刚发布的Git 1.6.4版本)。

我也有同样的问题,但我找到了解决方案。基本上,“origin”是项目克隆位置的另一个名称。现在是错误

fatal: remote origin already exists.

字面意思是原点已经存在。因此,要解决这个问题,我们的目标应该是消除它。 为此目的:

git remote rm origin

现在再添加一次

git remote add origin https://github.com/__enter your username here__/__your repositoryname.git__

这确实解决了我的问题。

git remote rm origin 

然后

git push -f 

如果您错误地将本地名称命名为“origin”,您可以使用以下方法删除它:

git remote rm origin

当您忘记进行第一次提交时,也会发生这种情况。