Bug#921124: elpa-git-commit: bad interaction with worktree/branch renaming
Package: elpa-git-commit
Version: 2.90.1-1
Followup-For: Bug #921124
Thanks for your patience while I investigated a bit further.
It appears that this is related to worktrees and branch migration. I can
reproduce like so:
# set up repo
git init testrepo
cd testrepo
# make HEAD valid so worktrees work
echo test > testf
git add testf
git commit -m test
# muck about with worktrees
git worktree add ugly-1
mv ugly-1 ugly-2
cd ugly-2
git branch -m ugly-2
# try to commit
echo test2 > testf
git commit -a
Assuming that's set up to spawn emacs with elpa-magit/elpa-git-commit, you
should see the failure at that point (warning that it renders my terminal
near-useless). The content of *Messages* is:
Diffing changes to be committed (C-g to abort diffing)
Type C-c C-c to finish, or C-c C-k to cancel
error in process sentinel: user-error: Don’t kill this buffer. Instead cancel using C-c C-k
error in process sentinel: Don’t kill this buffer. Instead cancel using C-c C-k
Both (cli-only git) and (cli-git with emacs as editor but no magit) to have no
problem committing here.
Deleting and recreating the worktree using the new branchname seems to resolve
the problem.
Thanks,
--Robbie
-- System Information:
Debian Release: buster/sid
APT prefers testing-debug
APT policy: (700, 'testing-debug'), (700, 'testing'), (500, 'unstable-debug'), (500, 'unstable'), (300, 'experimental-debug'), (300, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 4.19.0-2-rt-amd64 (SMP w/4 CPU cores; PREEMPT)
Locale: LANG=es_US.UTF-8, LC_CTYPE=es_US.UTF-8 (charmap=UTF-8), LANGUAGE=es_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages elpa-git-commit depends on:
ii elpa-dash 2.14.1+dfsg-1
ii elpa-with-editor 2.8.1-1
ii emacsen-common 3.0.4
elpa-git-commit recommends no packages.
elpa-git-commit suggests no packages.
-- no debconf information
Reply to: