Hi Caleb On 29/11/2024 22:22, Caleb White wrote:
Changes in v6: - Re-add test for extensions.relativeworktrees config setting - Link to v5: https://lore.kernel.org/r/20241125-wt_relative_options-v5-0-356d122ff3db@xxxxx
The range-diff below looks good, thanks for working on this I think it's ready for next Best Wishes Phillip 1: 0986f98022 = 1: d897f2c16d setup: correctly reinitialize repository version 2: c36e1a59fa = 2: 1860ba1a2a worktree: add `relativeWorktrees` extension 3: 5b19b63040 = 3: 5976310916 worktree: refactor infer_backlink return 4: ec143ae00e = 4: 4dac9e3c01 worktree: add `write_worktree_linking_files()` function 5: 237206b08f ! 5: b7016344f1 worktree: add relative cli/config options to `add` command @@ t/t2400-worktree-add.sh: test_expect_success '"add" with initialized submodule, + git init repo && + git -C repo commit --allow-empty -m base && + git -C repo worktree add --relative-paths ./foo && -+ test_cmp_config -C repo 1 core.repositoryformatversion ++ test_cmp_config -C repo 1 core.repositoryformatversion && ++ test_cmp_config -C repo true extensions.relativeworktrees +' + test_done 6: 8e4307f520 = 6: 298d2917e2 worktree: add relative cli/config options to `move` command 7: 4f951f4088 = 7: e6df1ee2c1 worktree: add relative cli/config options to `repair` command 8: 28eb7f66b2 = 8: 2037ca85ad worktree: refactor `repair_worktree_after_gitdir_move()`
Changes in v5: - Added docs to `--relative-paths` option. - Added test coverage for `repair_worktrees()` and relative paths. - Move `strbuf_reset` call in `infer_backlink()`. - Cleaned up tests. - Slight stylistic changes. - Tweaked commit messages. - Updated base to 090d24e9af. - Link to v4: https://lore.kernel.org/r/20241031-wt_relative_options-v4-0-07a3dc0f02a3@xxxxx Changes in v4: - Fixed failing test in ci - Link to v3: https://lore.kernel.org/r/20241031-wt_relative_options-v3-0-3e44ccdf64e6@xxxxx Changes in v3: - Split patches into smaller edits. - Moved tests into the patches with the relevant code changes. - Removed global `use_relative_paths` and instead pass parameter to functions. - Changed `infer_backlink` return type from `int` to `ssize_t`. - Updated `worktree.useRelativePaths` and `--relative-paths` descriptions. - Reordered patches - Link to v2: https://lore.kernel.org/r/20241028-wt_relative_options-v2-0-33a5021bd7bb@xxxxx Changes in v2: - Fixed a bug where repositories with valid extensions would be downgraded to v0 during reinitialization, causing future operations to fail. - Split patch [1/2] into three separate patches. - Updated cover letter and commit messages. - Updated documentation wording. - Link to v1: https://lore.kernel.org/r/20241025-wt_relative_options-v1-0-c3005df76bf9@xxxxx --- Caleb White (8): setup: correctly reinitialize repository version worktree: add `relativeWorktrees` extension worktree: refactor infer_backlink return worktree: add `write_worktree_linking_files()` function worktree: add relative cli/config options to `add` command worktree: add relative cli/config options to `move` command worktree: add relative cli/config options to `repair` command worktree: refactor `repair_worktree_after_gitdir_move()` Documentation/config/extensions.txt | 6 ++ Documentation/config/worktree.txt | 10 +++ Documentation/git-worktree.txt | 8 ++ builtin/worktree.c | 29 ++++--- repository.c | 1 + repository.h | 1 + setup.c | 39 ++++++--- setup.h | 1 + t/t0001-init.sh | 22 ++++- t/t2400-worktree-add.sh | 46 +++++++++++ t/t2401-worktree-prune.sh | 3 +- t/t2402-worktree-list.sh | 22 +++++ t/t2403-worktree-move.sh | 25 ++++++ t/t2406-worktree-repair.sh | 39 +++++++++ t/t2408-worktree-relative.sh | 39 --------- t/t5504-fetch-receive-strict.sh | 6 +- worktree.c | 157 ++++++++++++++++++++---------------- worktree.h | 22 ++++- 18 files changed, 334 insertions(+), 142 deletions(-) --- base-commit: 090d24e9af6e9f59c3f7bee97c42bb1ae3c7f559 change-id: 20241025-wt_relative_options-afa41987bc32 Best regards,