Re: git gc fails with "unable to resolve reference" for worktree
- From
Duy Nguyen <pclouds@gmail.com>
- Date
- Feb 18, 2019, 15:02 UTC
- Message-ID
- <CACsJy8Bjryv5Of0kN-wwiQs5S3Km=z=WRDTPcBD_Sgsm6Mvjag@mail.gmail.com>
- In-Reply-To
- <1550500586.2865.0@yandex.ru>
On Mon, Feb 18, 2019 at 9:44 PM <hi-angel@yandex.ru> wrote:
Show 20 quoted lines
> > # Steps to reproduce (in terms of terminal commands) > > $ mkdir foo > $ cd foo > $ git init > Initialized empty Git repository in /tmp/foo/.git/ > $ echo hello > testfile > $ git add testfile && git commit -m "my commit1" > [master (root-commit) d5f0b47] my commit1 > 1 file changed, 1 insertion(+) > create mode 100644 testfile > $ git checkout -b bar > Switched to a new branch 'bar' > $ git worktree add ../bar\ \(worktree\) master > Preparing worktree (checking out 'master') > HEAD is now at d5f0b47 my commit1 > $ git gc > error: cannot lock ref 'worktrees/bar (worktree)/HEAD': unable to > resolve reference 'worktrees/bar (worktree)/HEAD': Invalid argument
Thanks for reporting. This is not a valid reference and causes the problem. The worktree's name has to sanitized. I'll fix it tomorrow.
Show 12 quoted lines
> fatal: failed to run reflog > > # Expected > > No errors > > # Actual > > error: cannot lock ref 'worktrees/bar (worktree)/HEAD': unable to > resolve reference 'worktrees/bar (worktree)/HEAD': Invalid argument > >
-- Duy