-
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.
* tr/previous-branch: t1505: remove debugging cruft Simplify parsing branch switching events in reflog Introduce for_each_recent_reflog_ent(). interpret_nth_last_branch(): plug small memleak Fix reflog parsing for a malformed branch switching entry Fix parsing of @{-1}@{1} interpret_nth_last_branch(): avoid traversing the reflog twice checkout: implement "-" abbreviation, add docs and tests sha1_name: support @{-N} syntax in get_sha1() sha1_name: tweak @{-N} lookup checkout: implement "@{-N}" shortcut name for N-th last branch Conflicts: sha1_name.c
- Loading branch information
Showing
9 changed files
with
324 additions
and
7 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
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 | ||
|
||
test_description='test @{-N} syntax' | ||
|
||
. ./test-lib.sh | ||
|
||
|
||
make_commit () { | ||
echo "$1" > "$1" && | ||
git add "$1" && | ||
git commit -m "$1" | ||
} | ||
|
||
|
||
test_expect_success 'setup' ' | ||
make_commit 1 && | ||
git branch side && | ||
make_commit 2 && | ||
make_commit 3 && | ||
git checkout side && | ||
make_commit 4 && | ||
git merge master && | ||
git checkout master | ||
' | ||
|
||
# 1 -- 2 -- 3 master | ||
# \ \ | ||
# \ \ | ||
# --- 4 --- 5 side | ||
# | ||
# and 'side' should be the last branch | ||
|
||
test_rev_equivalent () { | ||
|
||
git rev-parse "$1" > expect && | ||
git rev-parse "$2" > output && | ||
test_cmp expect output | ||
|
||
} | ||
|
||
test_expect_success '@{-1} works' ' | ||
test_rev_equivalent side @{-1} | ||
' | ||
|
||
test_expect_success '@{-1}~2 works' ' | ||
test_rev_equivalent side~2 @{-1}~2 | ||
' | ||
|
||
test_expect_success '@{-1}^2 works' ' | ||
test_rev_equivalent side^2 @{-1}^2 | ||
' | ||
|
||
test_expect_success '@{-1}@{1} works' ' | ||
test_rev_equivalent side@{1} @{-1}@{1} | ||
' | ||
|
||
test_expect_success '@{-2} works' ' | ||
test_rev_equivalent master @{-2} | ||
' | ||
|
||
test_expect_success '@{-3} fails' ' | ||
test_must_fail git rev-parse @{-3} | ||
' | ||
|
||
test_done | ||
|
||
|
Oops, something went wrong.