我使用此方法添加多个远程存储库URL。我错误地使用此命令两次添加了相同的远程url:
git remote set-url origin --push --add <a remote>
现在git remote -v
显示:
origin https://github.com/<user>/<repo>.git (fetch)
origin https://github.com/<user>/<repo>.git (push) // remote-1
origin https://github.com/<user>/<repo>.git (push) // duplicate reference to same remote-1
origin https://bitbucket.com/<user>/<repo>.git (push) // remote-2
所以现在,每当我推送时,git都会推送3次,假设有3个URL
如何删除此重复的URL,同时保留原始的&新的远程引用。
您可以使用类似的东西
CCD_ 2,然后只重新添加一次URL。
关于set-url
的git文档指出:
设置url更改远程的URL。设置与regex匹配的远程的第一个URL(如果没有,则设置第一个URL(。如果与任何URL都不匹配,则会发生错误,并且不会更改任何内容。
使用--push,可以操作push URL而不是fetch URL。
使用--add,将添加新的URL,而不是更改现有的URL。
使用--delete,不会更改现有的URL,而是删除所有匹配regex的远程URL。尝试删除所有非推送URL是一个错误。
所以我们可以将--push
和--delete
参数组合起来,以实现我们想要的。