Git从本地存储库中删除上游


94

我正在使用ruby on rails应用程序,并且正在尝试同步fork。值得一提的是,我也在Mac上。我执行了以下操作:

$ git remote -v

以查看我的本地存储库。我试图去时一团糟upstream

$ git remote add upstream https://github.com/foo/repo.git

当我应该大写Foo时:

$ git remote add upstream https://github.com/Foo/repos.git

问题是如何删除,upstream因为每次尝试更改此设置时,它都会产生fatal错误?

Answers:


150

使用git版本1.7.9.5,没有用于远程的“删除”命令。使用“ rm”代替。

$ git remote rm upstream
$ git remote add upstream https://github.com/Foo/repos.git

或者,如前一个答案所述,set-url有效。

我不知道命令何时更改,但是Ubuntu 12.04随1.7.9.5一起提供。


37

git remote联机帮助页非常简单:

使用

Older (backwards-compatible) syntax:
$ git remote rm upstream
Newer syntax for newer git versions: (* see below)
$ git remote remove upstream

Then do:    
$ git remote add upstream https://github.com/Foo/repos.git

或直接更新网址:

$ git remote set-url upstream https://github.com/Foo/repos.git

或者,如果您对此感到满意,只需直接更新.git / config-您可能会发现需要更改的内容(留给读者练习)。

...
[remote "upstream"]
    fetch = +refs/heads/*:refs/remotes/upstream/*
    url = https://github.com/foo/repos.git
...

===

*关于'git remote rm'vs'git remote remove'-围绕git 1.7.10.3 / 1.7.12 2进行了更改-参见

https://code.google.com/p/git-core/source/detail?spec=svne17dba8fe15028425acd6a4ebebf1b8e9377d3c6&r=e17dba8fe15028425acd6a4ebebf1b8e9377d3c6

Log message

remote: prefer subcommand name 'remove' to 'rm'

All remote subcommands are spelled out words except 'rm'. 'rm', being a
popular UNIX command name, may mislead users that there are also 'ls' or
'mv'. Use 'remove' to fit with the rest of subcommands.

'rm' is still supported and used in the test suite. It's just not
widely advertised.

1
该答案似乎需要更新。在git 1.7.9中,git remote remove upstream产生“错误:未知子命令:删除”
Michael Scheper

22
$ git remote remove <name>

即。

$ git remote remove upstream

这应该够了吧


10

在git版本2.14.3中,

您可以使用以下方式删除上游

git branch --unset-upstream

上面的命令还将删除跟踪流分支,因此,如果您想从已使用的存储库中重新定位

git rebase origin master 

代替 git pull --rebase


1
这非常适合我的分支机构,具有2个不同的上游
Jason,
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.