Erosika
886092bc54
fix(tools): block worktree removal and moves of the running source root
...
`worktree` sat in _KNOWN_GIT_BUILTINS, so the guard returned safe for the
whole family. That allowed `git worktree remove [--force] <root>` and
`git worktree move <root> <dest>` against the very checkout this process
runs from, which the guard already treats as a source root when its .git
is a linked-worktree file.
Both name their target as an argument rather than acting on the cwd, so
they also slipped past the "is the cwd inside root" gate when run from
outside. Resolve the target against the command's cwd and block it when
it lands on the running root, from any directory. `worktree add`, list,
prune, lock, unlock, and operations on other worktrees stay allowed.
2026-08-08 14:56:38 +05:30
..
2026-08-02 20:21:59 -07:00
2026-08-07 09:07:55 -07:00
2026-07-28 07:58:16 -07:00
2026-07-17 04:53:38 -07:00
2026-08-08 14:56:38 +05:30
2026-08-02 15:11:37 -07:00
2026-07-28 11:52:44 -07:00
2026-08-07 17:45:06 +05:30
2026-08-02 00:11:50 -07:00
2026-07-27 14:32:05 -07:00
2026-07-29 10:54:04 -07:00
2026-08-02 11:18:41 +05:30
2026-06-21 17:46:38 +05:30
2026-07-29 10:14:11 -07:00
2026-07-26 17:46:55 -07:00
2026-07-29 10:14:00 -07:00
2026-08-06 19:35:47 -06:00
2026-08-06 23:08:23 -05:00
2026-07-29 12:19:37 -07:00
2026-07-31 17:43:37 -04:00
2026-08-08 13:48:00 +05:30
2026-07-02 04:20:43 -07:00
2026-06-25 13:52:06 -07:00
2026-08-07 09:07:42 -07:00
2026-07-20 06:50:31 -07:00
2026-08-07 09:07:42 -07:00
2026-07-22 12:13:01 -05:00
2026-08-02 00:11:50 -07:00
2026-08-02 00:36:03 -07:00
2026-08-01 21:17:51 -04:00
2026-08-06 05:31:17 +05:30
2026-08-07 08:58:38 -07:00
2026-07-31 10:17:55 -04:00
2026-08-06 19:35:47 -06:00
2026-08-02 15:51:43 -07:00
2026-08-02 00:11:50 -07:00
2026-07-29 09:33:48 -07:00
2026-07-14 02:59:39 +05:30
2026-08-07 09:11:48 -07:00
2026-07-06 04:58:42 -07:00
2026-08-06 03:16:26 +05:30
2026-08-07 13:28:43 +05:30
2026-08-02 10:02:33 -07:00
2026-07-17 04:50:47 -07:00
2026-07-28 00:53:16 -05:00
2026-07-29 10:02:03 -07:00
2026-08-03 14:24:37 +05:30
2026-07-18 04:15:13 -07:00
2026-08-08 02:21:36 -05:00
2026-07-29 16:49:07 +05:30
2026-07-29 10:13:50 -07:00
2026-07-28 14:07:21 -07:00
2026-08-06 19:35:47 -06:00
2026-08-02 10:02:33 -07:00
2026-08-01 10:47:20 -07:00
2026-08-04 14:34:24 +05:30
2026-07-29 10:14:00 -07:00
2026-08-08 01:12:16 +05:30
2026-06-25 16:40:27 -05:00
2026-08-06 19:35:47 -06:00
2026-08-05 22:02:42 -07:00
2026-08-06 19:35:47 -06:00
2026-08-06 19:35:47 -06:00
2026-08-08 14:56:38 +05:30
2026-08-07 08:58:25 -07:00
2026-08-08 14:56:38 +05:30
2026-08-02 10:01:16 -07:00
2026-08-03 17:50:58 +05:30
2026-07-31 07:30:30 -07:00
2026-07-31 07:30:30 -07:00
2026-08-03 09:56:36 +05:30
2026-08-02 20:12:37 -07:00
2026-07-30 22:31:42 -07:00
2026-07-28 04:24:50 -05:00
2026-08-07 09:44:21 -07:00
2026-08-02 15:08:35 -07:00
2026-08-08 14:56:38 +05:30
2026-05-29 03:44:49 -07:00
2026-07-01 01:05:28 -07:00
2026-08-02 10:04:48 -07:00
2026-07-22 06:56:53 -07:00
2026-08-02 10:04:48 -07:00
2026-05-31 00:50:19 -07:00
2026-06-30 16:39:41 -07:00
2026-08-03 19:11:30 +05:30
2026-08-07 19:26:12 +05:30
2026-07-28 22:31:40 -07:00
2026-07-28 11:55:01 -07:00
2026-08-03 10:25:15 +05:30
2026-07-28 14:17:45 -07:00
2026-07-14 02:59:39 +05:30
2026-08-07 08:58:49 -07:00
2026-08-07 14:38:02 +05:30
2026-08-08 13:49:24 +05:30
2026-07-29 11:53:39 -07:00
2026-07-04 15:08:49 -07:00
2026-07-26 18:28:20 -07:00
2026-06-10 02:57:15 -07:00
2026-07-23 21:06:47 -07:00
2026-08-02 10:04:48 -07:00
2026-06-29 21:11:58 -07:00