Git: says origin already exists on “NEW” (init) re

2019-03-08 04:40发布

问题:

I wonder if anyone can help?

I installed git for windows, although i am using the shell not the windows interface.

if I do a git init. and then try and do a

 git remote add origin git@github.com:someuser/testme.git

I get the following error

 fatal: remote origin already exists.

So I do a

 git remote -v

and it returns the following

origin upstream

SO it appears its there but has no url set, i don't understand why its there?

If I do a

 git remote rm origin

it produces this

 error: Could not remove config section 'remote.origin'

It says that it can't remove the remote.origin config section.. I checked the .gitconfig under my home directory and i don't see anything...

Anyway I was able to remedy this by using

 git remote set-url origin git@github.com:someuser/testme.git

But i am getting confused as I have used git before and this never happend..

Could this be something to do with git for windows?

Any help would be really appreciated.

回答1:

I'm the developer who put this in. Here's why I added this to the system gitconfig, it's pretty useful!

## Because of this change, git fetch knows about PRs
git fetch

## Now, I can merge PRs by number
git merge origin/pr/24

## See changes from PR #53
git diff master...origin/pr/53

## Get the commit log from PR #25
git log origin/pr/25

Unfortunately, this does have the consequence that the origin remote always exists, even when it doesn't.

Workaround

Whenever you see git remote add origin https://..., instead:

git remote set-url origin https://...


回答2:

I've been running into the same issue, and I think I've figured it out finally. GitHub for windows installs a version of PortableGit in /Users/<username>/AppData/GitHub. In the PortableGit directory, under /etc, there's a gitconfig file. This is the system config. It defines "origin" and "upstream", presumably with defaults that are meaningful to GitHub.

I can't say for sure, but I started noticing this problem in the latest few updates of the GitHub for Windows client. Sadly, the release notes don't point to anything probative and the Windows client isn't open-source so it's hard to tell.

I've sent a message to their support address, so I'll update here if I hear anything back.

Edit: GitHub support responded saying this is a known issue and will be fixed soon.



回答3:

I simply deleted the origin section in %appdata%/Local/GitHub/PortableGit_.../etc/gitconfig and everything went back to normal - new repos act accordingly when I add remote origin to them, since they have none when they are created.

There might be side effects for this deletion, but so far I haven't ran into any trouble.