On Thu Nov 28, 2024 at 8:44 PM CST, Caleb White wrote: > The `es/worktree-repair-copied` topic added support for repairing a > worktree from a copy scenario. I noted[1,2] that the topic added the > ability for a repository to "take over" a worktree from another > repository if the worktree_id matched a worktree inside the current > repository which can happen if two repositories use the same worktree name. > > This series teaches Git to create worktrees with a unique suffix so > that the worktree_id is unique across all repositories even if they have > the same name. For example creating a worktree `develop` would look like: > > foo/ > ├── .git/worktrees/develop-5445874156/ > └── develop/ > bar/ > ├── .git/worktrees/develop-1549518426/ > └── develop/ > > The actual worktree directory name is still `develop`, but the > worktree_id is unique and prevents the "take over" scenario. The suffix > is given by the `git_rand()` function, but I'm open to suggestions if > there's a better random or hashing function to use. > > [1]: https://lore.kernel.org/git/20241008153035.71178-1-cdwhite3@xxxxx/ > [2]: https://lore.kernel.org/git/r4zmcET41Skr_FMop47AKd7cms9E8bKPSvHuAUpnYavzKEY6JybJta0_7GfuYB0q-gD-XNcvh5VDTfiT3qthGKjqhS1sbT4M2lUABynOz2Q=@pm.me/ I forgot to mention, but the base for this series is obtained by merging the `cw/worktree-extension` topic (2024-11-26, 20241125-wt_relative_options-v5-0-356d122ff3db@xxxxx) onto 090d24e9af. Best, Caleb