diff options
author | Junio C Hamano <gitster@pobox.com> | 2012-05-23 13:35:05 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2012-05-23 13:35:06 -0700 |
commit | 4809ff858b78c94ada8bd8a61a89ae8d39eda193 (patch) | |
tree | 1fef747fa1f6ee157441152a789a9ed472d60405 /t | |
parent | aa3bb87176d42f1782c5030fa41e6e62492551c0 (diff) | |
parent | 5e73633dbf8a62190611f6eb438a1a2eaaffa919 (diff) | |
download | git-4809ff858b78c94ada8bd8a61a89ae8d39eda193.tar.gz git-4809ff858b78c94ada8bd8a61a89ae8d39eda193.tar.xz |
Merge branch 'hv/submodule-alt-odb'
When peeking into object stores of submodules, the code forgot that they
might borrow objects from alternate object stores on their own.
By Heiko Voigt
* hv/submodule-alt-odb:
teach add_submodule_odb() to look for alternates
Diffstat (limited to 't')
-rwxr-xr-x | t/t4041-diff-submodule-option.sh | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/t/t4041-diff-submodule-option.sh b/t/t4041-diff-submodule-option.sh index bf9a7526b..6c01d0c05 100755 --- a/t/t4041-diff-submodule-option.sh +++ b/t/t4041-diff-submodule-option.sh @@ -458,4 +458,38 @@ EOF test_cmp expected actual ' +test_expect_success 'diff --submodule with objects referenced by alternates' ' + mkdir sub_alt && + (cd sub_alt && + git init && + echo a >a && + git add a && + git commit -m a + ) && + mkdir super && + (cd super && + git clone -s ../sub_alt sub && + git init && + git add sub && + git commit -m "sub a" + ) && + (cd sub_alt && + sha1_before=$(git rev-parse --short HEAD) + echo b >b && + git add b && + git commit -m b + sha1_after=$(git rev-parse --short HEAD) + echo "Submodule sub $sha1_before..$sha1_after: + > b" >../expected + ) && + (cd super && + (cd sub && + git fetch && + git checkout origin/master + ) && + git diff --submodule > ../actual + ) + test_cmp expected actual +' + test_done |