Re: git branch doesn't allow me to forcibly delete branch which was checked out in a now-deleted worktree dir
- From
Erik Johnson <palehose@gmail.com>
- Date
- Jul 8, 2016, 00:36 UTC
- Message-ID
- <20160708003646.GB1916@gmail.com>
- In-Reply-To
- <CA+P7+xoM=-=sokA_+WDuY7KYUwSa=Qu8Y9U1aPHOgSH3n-VZnA@mail.gmail.com>
On Thu, Jul 07, 2016 at 04:39:26PM -0700, Jacob Keller wrote:
Show 28 quoted lines
>On Thu, Jul 7, 2016 at 11:44 AM, Erik Johnson <palehose@gmail.com> wrote: >> % git branch -D archive-extracted-xz >> error: Cannot delete branch 'archive-extracted-xz' checked out at >> '/home/erik/git/salt/archive-extracted-xz' >> % test -d /home/erik/git/salt/archive-extracted-xz || echo "directory >> doesn't exist" >> directory doesn't exist >> % git --version >> git version 2.9.0 >> >> I know that I can just get rid of this error by pruning the worktrees, >> but this still seems like incorrect behavior on the part of git branch. >> It shouldn't be telling me that the branch is checked out in a directory >> that does not exist, that is just factually incorrect. >> > >Until the worktree status is updated git branch probably isn't >checking itself. It might be worth triggering a worktree prune when >doing branch work. Note that some worktrees may be on removable media >or similar, and thus even if the directory doesn't exist right now, >that does not mean it's no longer checked out. There is already >support for setting a worktree as "persistent", but this means git >branch definitely shouldn't just do its own check for non existent >directory. > >Thanks, >Jake >
I'm not expecting _any_ git branch command to prune worktrees, but a branch _deletion_ shouldn't fail because git thinks the branch is checked out in a worktree that doesn't exist anymore. Even in the scenario where the worktree corresponding to that branch is on removable media, does it really matter? You're trying to delete the branch.
I feel like this is a recent change in behavior, too. I've been using worktrees since they were first available in 2.5, and I don't remember having to prune to be able to delete the branch until recently.
--
-Erik
"For me, it is far better to grasp the universe as it really is than to persist in delusion, however satisfying and reassuring." --Carl Sagan