我发现我的Git存储库有两个原点遥控器,因为当我运行它时:
git config --get-regexp 'remote\\.origin\\..*'
我得到两个结果:
remote.origin.url https://user:password@my-repo:7990
remote.origin.url http://my-repo.com:7990/scm/my-project.git
但是,我没有删除其中任何一个。例如,如果我尝试删除第一个,如下所示:
git remote set-url --delete origin https://user:password@my-repo:7990
我明白了:
fatal: could not unset 'remote.origin.url'
知道为什么会出现这个错误吗?
答案 0 :(得分:1)
您可以移除远程origin
,然后重新添加。
$ git remote rm origin # remove a first remote
$ git remote -v
# if you see your second origin
$ git remote rm origin # remove the second origin
$ git remote add origin <repo-url> # add new origin
$ git remote -v # see all the remotes you have
答案 1 :(得分:0)
git unset-all remote.origin.push
答案 2 :(得分:0)
如果它是一个 remote 添加了 --push
选项,你必须再次使用 --push
选项来删除遥控器,如下所示:
git remote set-url --delete --push <remote_name> <remote_url_to_delete>
这只会删除 URL,不会删除遥控器。
我在添加了 --add --push
选项的可推送遥控器时遇到了同样的问题:
git remote set-url --add --push <remote_name> <remote_url>
这通常是为了将不同的 URL 指向同一个遥控器,以便更快地将更改推送到不同的地方。
如果你想这样做,在添加你必须使用的 URL 之后:
git push <remote> <branch>
它会推送到添加到您的远程
的每个网址