-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* sb/branch-attributes: Add test for the default merges in fetch. fetch: get the remote branches to merge from the branch properties Add t5510 to test per branch configuration affecting git-fetch. Fetch: default remote repository from branch properties
- Loading branch information
Showing
4 changed files
with
115 additions
and
13 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
#!/bin/sh | ||
# Copyright (c) 2006, Junio C Hamano. | ||
|
||
test_description='Per branch config variables affects "git fetch". | ||
' | ||
|
||
. ./test-lib.sh | ||
|
||
D=`pwd` | ||
|
||
test_expect_success setup ' | ||
echo >file original && | ||
git add file && | ||
git commit -a -m original' | ||
|
||
test_expect_success "clone and setup child repos" ' | ||
git clone . one && | ||
cd one && | ||
echo >file updated by one && | ||
git commit -a -m "updated by one" && | ||
cd .. && | ||
git clone . two && | ||
cd two && | ||
git repo-config branch.master.remote one && | ||
{ | ||
echo "URL: ../one/.git/" | ||
echo "Pull: refs/heads/master:refs/heads/one" | ||
} >.git/remotes/one | ||
cd .. && | ||
git clone . three && | ||
cd three && | ||
git repo-config branch.master.remote two && | ||
git repo-config branch.master.merge refs/heads/one && | ||
{ | ||
echo "URL: ../two/.git/" | ||
echo "Pull: refs/heads/master:refs/heads/two" | ||
echo "Pull: refs/heads/one:refs/heads/one" | ||
} >.git/remotes/two | ||
' | ||
|
||
test_expect_success "fetch test" ' | ||
cd "$D" && | ||
echo >file updated by origin && | ||
git commit -a -m "updated by origin" && | ||
cd two && | ||
git fetch && | ||
test -f .git/refs/heads/one && | ||
mine=`git rev-parse refs/heads/one` && | ||
his=`cd ../one && git rev-parse refs/heads/master` && | ||
test "z$mine" = "z$his" | ||
' | ||
|
||
test_expect_success "fetch test for-merge" ' | ||
cd "$D" && | ||
cd three && | ||
git fetch && | ||
test -f .git/refs/heads/two && | ||
test -f .git/refs/heads/one && | ||
master_in_two=`cd ../two && git rev-parse master` && | ||
one_in_two=`cd ../two && git rev-parse one` && | ||
{ | ||
echo "$master_in_two not-for-merge" | ||
echo "$one_in_two " | ||
} >expected && | ||
cut -f -2 .git/FETCH_HEAD >actual && | ||
diff expected actual' | ||
|
||
test_done |