I'm trying to create a branch on the current branch on my Ubuntu guest. Unfortunately I keep getting this error:
git checkout -b origin/feature/IF-53-change-validation-window/Tommaso
fatal: cannot lock ref 'refs/heads/origin/feature/IF-53-change-validation-window/Tommaso':
'refs/heads/origin/branch' exists;
cannot create 'refs/heads/origin/branch/Tommaso'
I tried git gc --prune=now
as suggested here link, but keep getting the same error.
You shouldn't be checking out branches like that. Assuming that branch exists on origin, you should do the following:
git checkout feature/IF-53-change-validation-window/Tommaso
If you run git branch
I expect you will see local branches with origin
in the name.
The format git checkout X
is shorthand for "look for a local branch X
and check that out if it exists; otherwise look for a remote branch X
and check that out locally (git checkout -b X origin/X
)."
If you are creating a new local branch, you will often do the following:
git checkout -b new-branch
This will create a new branch pointing at the same commit as you had checked out previously.
To fix your current state, you can likely do this (see here):
git update-ref -d refs/heads/origin/branch