40c813e00c
Commit 842abf0
(Teach resolve_gitlink_ref() about the .git file, 2008-02-20)
taught resolve_gitlink_ref() to call read_gitfile_gently() to resolve .git
files. In this commit teach read_gitfile_gently() to interpret a relative
path in a .git file with respect to the file location.
This change allows update-index to recognize a submodule that uses a relative
path in its .git file. It previously failed because the relative path was
wrongly interpreted with respect to the superproject directory.
Signed-off-by: Brad King <brad.king@kitware.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
39 lines
697 B
Bash
Executable File
39 lines
697 B
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# Copyright (c) 2010 Brad King
|
|
#
|
|
|
|
test_description='git update-index for gitlink to .git file.
|
|
'
|
|
|
|
. ./test-lib.sh
|
|
|
|
test_expect_success 'submodule with absolute .git file' '
|
|
mkdir sub1 &&
|
|
(cd sub1 &&
|
|
git init &&
|
|
REAL="$(pwd)/.real" &&
|
|
mv .git "$REAL"
|
|
echo "gitdir: $REAL" >.git &&
|
|
test_commit first)
|
|
'
|
|
|
|
test_expect_success 'add gitlink to absolute .git file' '
|
|
git update-index --add -- sub1
|
|
'
|
|
|
|
test_expect_success 'submodule with relative .git file' '
|
|
mkdir sub2 &&
|
|
(cd sub2 &&
|
|
git init &&
|
|
mv .git .real &&
|
|
echo "gitdir: .real" >.git &&
|
|
test_commit first)
|
|
'
|
|
|
|
test_expect_success 'add gitlink to relative .git file' '
|
|
git update-index --add -- sub2
|
|
'
|
|
|
|
test_done
|