summaryrefslogtreecommitdiffstats
path: root/t/t2408-worktree-relative.sh
diff options
context:
space:
mode:
authorCaleb White <cdwhite3@pm.me>2024-11-29 23:22:55 +0100
committerJunio C Hamano <gitster@pobox.com>2024-12-02 01:36:17 +0100
commitb7016344f1d4ef8457821e0436f335ec388b8dac (patch)
tree285880f500b6d9187ff3b5bbee93f9d2b3fa8d75 /t/t2408-worktree-relative.sh
parentworktree: add `write_worktree_linking_files()` function (diff)
downloadgit-b7016344f1d4ef8457821e0436f335ec388b8dac.tar.xz
git-b7016344f1d4ef8457821e0436f335ec388b8dac.zip
worktree: add relative cli/config options to `add` command
This introduces the `--[no-]relative-paths` CLI option and `worktree.useRelativePaths` configuration setting to the `worktree add` command. When enabled these options allow worktrees to be linked using relative paths, enhancing portability across environments where absolute paths may differ (e.g., containerized setups, shared network drives). Git still creates absolute paths by default, but these options allow users to opt-in to relative paths if desired. The t2408 test file is removed and more comprehensive tests are written for the various worktree operations in their own files. Signed-off-by: Caleb White <cdwhite3@pm.me> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to '')
-rwxr-xr-xt/t2408-worktree-relative.sh39
1 files changed, 0 insertions, 39 deletions
diff --git a/t/t2408-worktree-relative.sh b/t/t2408-worktree-relative.sh
deleted file mode 100755
index a3136db7e2..0000000000
--- a/t/t2408-worktree-relative.sh
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/bin/sh
-
-test_description='test worktrees linked with relative paths'
-
-TEST_PASSES_SANITIZE_LEAK=true
-. ./test-lib.sh
-
-test_expect_success 'links worktrees with relative paths' '
- test_when_finished rm -rf repo &&
- git init repo &&
- (
- cd repo &&
- test_commit initial &&
- git worktree add wt1 &&
- echo "../../../wt1/.git" >expected_gitdir &&
- cat .git/worktrees/wt1/gitdir >actual_gitdir &&
- echo "gitdir: ../.git/worktrees/wt1" >expected_git &&
- cat wt1/.git >actual_git &&
- test_cmp expected_gitdir actual_gitdir &&
- test_cmp expected_git actual_git
- )
-'
-
-test_expect_success 'move repo without breaking relative internal links' '
- test_when_finished rm -rf repo moved &&
- git init repo &&
- (
- cd repo &&
- test_commit initial &&
- git worktree add wt1 &&
- cd .. &&
- mv repo moved &&
- cd moved/wt1 &&
- git status >out 2>err &&
- test_must_be_empty err
- )
-'
-
-test_done