[PATCH 0/8] worktree: tighten duplicate path detection

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This patch series started as a (presumably) simple enhancement to make
"git worktree prune" more helpful to users who shoot themselves in the
foot[1] by causing a linked worktree to point at the main worktree, a
situation which "git worktree add" tries hard to disallow but which
users can accomplish merely be deleting and renaming directories
(without even mucking around inside the .git/worktrees/<id> directory).
The series grew as I realized that "git worktree move" does not employ
the same protections as "git worktree add" and happily allows multiple
linked worktrees to references the same location, thus that also had to
be fixed.

[1]: https://lore.kernel.org/git/CAPig+cTU8+N6Chimpoa2_T-TcXxw-3B9-9pjCLz7WeOh472P_A@xxxxxxxxxxxxxx/

Eric Sunshine (8):
  worktree: factor out repeated string literal
  worktree: prune corrupted worktree even if locked
  worktree: give "should be pruned?" function more meaningful name
  worktree: make high-level pruning re-usable
  worktree: prune duplicate entries referencing same worktree path
  worktree: prune linked worktree referencing main worktree path
  worktree: generalize candidate worktree path validation
  worktree: make "move" refuse to move atop missing registered worktree

 Documentation/git-worktree.txt |   4 +-
 builtin/worktree.c             | 142 ++++++++++++++++++++++-----------
 t/t2401-worktree-prune.sh      |  38 ++++++++-
 t/t2403-worktree-move.sh       |  21 +++++
 4 files changed, 157 insertions(+), 48 deletions(-)

-- 
2.27.0.290.gba653c62da




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux