-
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.
Adapt tutorial to cygwin and add test case
Lacking reliable symlinks, the instructions in the tutorial did not work in a cygwin setup. Also, a few outputs were not correct. This patch fixes these, and adds a test case which follows the instructions of the tutorial (except git-clone, -fetch and -push, which I have not done yet). Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
- Loading branch information
Johannes Schindelin
authored and
Junio C Hamano
committed
Oct 13, 2005
1 parent
2573808
commit 2ae6c70
Showing
2 changed files
with
212 additions
and
19 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,160 @@ | ||
#!/bin/sh | ||
# | ||
# Copyright (c) 2005 Johannes Schindelin | ||
# | ||
|
||
test_description='Test git-rev-parse with different parent options' | ||
|
||
. ./test-lib.sh | ||
|
||
echo "Hello World" > hello | ||
echo "Silly example" > example | ||
|
||
git-update-index --add hello example | ||
|
||
test_expect_success 'blob' "test blob = \"$(git-cat-file -t 557db03)\"" | ||
|
||
test_expect_success 'blob 557db03' "test \"Hello World\" = \"$(git-cat-file blob 557db03)\"" | ||
|
||
echo "It's a new day for git" >>hello | ||
cat > diff.expect << EOF | ||
diff --git a/hello b/hello | ||
index 557db03..263414f 100644 | ||
--- a/hello | ||
+++ b/hello | ||
@@ -1 +1,2 @@ | ||
Hello World | ||
+It's a new day for git | ||
EOF | ||
git-diff-files -p > diff.output | ||
test_expect_success 'git-diff-files -p' 'cmp diff.expect diff.output' | ||
git diff > diff.output | ||
test_expect_success 'git diff' 'cmp diff.expect diff.output' | ||
|
||
tree=$(git-write-tree 2>/dev/null) | ||
|
||
test_expect_success 'tree' "test 8988da15d077d4829fc51d8544c097def6644dbb = $tree" | ||
|
||
output="$(echo "Initial commit" | git-commit-tree $(git-write-tree) 2>&1 > .git/refs/heads/master)" | ||
|
||
test_expect_success 'commit' "test 'Committing initial tree 8988da15d077d4829fc51d8544c097def6644dbb' = \"$output\"" | ||
|
||
git-diff-index -p HEAD > diff.output | ||
test_expect_success 'git-diff-index -p HEAD' 'cmp diff.expect diff.output' | ||
|
||
git diff HEAD > diff.output | ||
test_expect_success 'git diff HEAD' 'cmp diff.expect diff.output' | ||
|
||
#rm hello | ||
#test_expect_success 'git-read-tree --reset HEAD' "git-read-tree --reset HEAD ; test \"hello: needs update\" = \"$(git-update-index --refresh)\"" | ||
|
||
cat > whatchanged.expect << EOF | ||
diff-tree VARIABLE (from root) | ||
Author: VARIABLE | ||
Date: VARIABLE | ||
Initial commit | ||
diff --git a/example b/example | ||
new file mode 100644 | ||
index 0000000..f24c74a | ||
--- /dev/null | ||
+++ b/example | ||
@@ -0,0 +1 @@ | ||
+Silly example | ||
diff --git a/hello b/hello | ||
new file mode 100644 | ||
index 0000000..557db03 | ||
--- /dev/null | ||
+++ b/hello | ||
@@ -0,0 +1 @@ | ||
+Hello World | ||
EOF | ||
|
||
git-whatchanged -p --root | \ | ||
sed -e "1s/^\(.\{10\}\).\{40\}/\1VARIABLE/" \ | ||
-e "2,3s/^\(.\{8\}\).*$/\1VARIABLE/" \ | ||
> whatchanged.output | ||
test_expect_success 'git-whatchanged -p --root' 'cmp whatchanged.expect whatchanged.output' | ||
|
||
git tag my-first-tag | ||
test_expect_success 'git tag my-first-tag' 'cmp .git/refs/heads/master .git/refs/tags/my-first-tag' | ||
|
||
# TODO: test git-clone | ||
|
||
git checkout -b mybranch | ||
test_expect_success 'git checkout -b mybranch' 'cmp .git/refs/heads/master .git/refs/heads/mybranch' | ||
|
||
cat > branch.expect <<EOF | ||
master | ||
* mybranch | ||
EOF | ||
|
||
git branch > branch.output | ||
test_expect_success 'git branch' 'cmp branch.expect branch.output' | ||
|
||
git checkout mybranch | ||
echo "Work, work, work" >>hello | ||
git commit -m 'Some work.' hello | ||
|
||
git checkout master | ||
|
||
echo "Play, play, play" >>hello | ||
echo "Lots of fun" >>example | ||
git commit -m 'Some fun.' hello example | ||
|
||
test_expect_failure 'git resolve now fails' 'git resolve HEAD mybranch "Merge work in mybranch"' | ||
|
||
cat > hello << EOF | ||
Hello World | ||
It's a new day for git | ||
Play, play, play | ||
Work, work, work | ||
EOF | ||
|
||
git commit -m 'Merged "mybranch" changes.' hello | ||
|
||
cat > show-branch.expect << EOF | ||
* [master] Merged "mybranch" changes. | ||
! [mybranch] Some work. | ||
-- | ||
+ [master] Merged "mybranch" changes. | ||
++ [mybranch] Some work. | ||
EOF | ||
|
||
git show-branch master mybranch > show-branch.output | ||
test_expect_success 'git show-branch' 'cmp show-branch.expect show-branch.output' | ||
|
||
git checkout mybranch | ||
|
||
cat > resolve.expect << EOF | ||
Updating from VARIABLE to VARIABLE. | ||
example | 1 + | ||
hello | 1 + | ||
2 files changed, 2 insertions(+), 0 deletions(-) | ||
EOF | ||
|
||
git resolve HEAD master "Merge upstream changes." | \ | ||
sed -e "1s/[0-9a-f]\{40\}/VARIABLE/g" > resolve.output | ||
test_expect_success 'git resolve' 'cmp resolve.expect resolve.output' | ||
|
||
cat > show-branch2.expect << EOF | ||
! [master] Merged "mybranch" changes. | ||
* [mybranch] Merged "mybranch" changes. | ||
-- | ||
++ [master] Merged "mybranch" changes. | ||
EOF | ||
|
||
git show-branch master mybranch > show-branch2.output | ||
test_expect_success 'git show-branch' 'cmp show-branch2.expect show-branch2.output' | ||
|
||
# TODO: test git fetch | ||
|
||
# TODO: test git push | ||
|
||
test_expect_success 'git repack' 'git repack' | ||
test_expect_success 'git prune-packed' 'git prune-packed' | ||
test_expect_failure '-> only packed objects' 'find -type f .git/objects/[0-9a-f][0-9a-f]' | ||
|
||
test_done | ||
|