Skip to content

Commit

Permalink
Merge 1.5.0.7 in
Browse files Browse the repository at this point in the history
Signed-off-by: Junio C Hamano <junkio@cox.net>
  • Loading branch information
Junio C Hamano committed Apr 4, 2007
2 parents 0448352 + 9694ec4 commit 045f575
Show file tree
Hide file tree
Showing 3 changed files with 44 additions and 4 deletions.
18 changes: 18 additions & 0 deletions Documentation/RelNotes-1.5.0.7.txt
@@ -0,0 +1,18 @@
GIT v1.5.0.7 Release Notes
==========================

Fixes since v1.5.0.6
--------------------

* Bugfixes

- git-upload-pack failed to close unused pipe ends, resulting
in many zombies to hang around.

- git-rerere was recording the contents of earlier hunks
duplicated in later hunks. This prevented resolving the same
conflict when performing the same merge the other way around.

* Documentation

- a few documentation fixes from Debian package maintainer.
9 changes: 9 additions & 0 deletions builtin-rerere.c
Expand Up @@ -78,6 +78,13 @@ static void append_line(struct buffer *buffer, const char *line)
buffer->nr += len;
}

static void clear_buffer(struct buffer *buffer)
{
free(buffer->ptr);
buffer->ptr = NULL;
buffer->nr = buffer->alloc = 0;
}

static int handle_file(const char *path,
unsigned char *sha1, const char *output)
{
Expand Down Expand Up @@ -131,6 +138,8 @@ static int handle_file(const char *path,
SHA1_Update(&ctx, two->ptr, two->nr);
SHA1_Update(&ctx, "\0", 1);
}
clear_buffer(one);
clear_buffer(two);
} else if (hunk == 1)
append_line(one, buf);
else if (hunk == 2)
Expand Down
21 changes: 17 additions & 4 deletions t/t4200-rerere.sh
Expand Up @@ -34,27 +34,35 @@ EOF
git commit -q -a -m first

git checkout -b second master
git show first:a1 | sed 's/To die, t/To die! T/' > a1
git show first:a1 |
sed -e 's/To die, t/To die! T/' -e 's/life;$/life./' > a1
git commit -q -a -m second

# activate rerere
mkdir .git/rr-cache

test_expect_failure 'conflicting merge' 'git pull . first'

sha1=4f58849a60b4f969a2848966b6d02893b783e8fb
sha1=$(sed -e 's/\t.*//' .git/rr-cache/MERGE_RR)
rr=.git/rr-cache/$sha1
test_expect_success 'recorded preimage' "grep ======= $rr/preimage"

test_expect_success 'no postimage or thisimage yet' \
"test ! -f $rr/postimage -a ! -f $rr/thisimage"

test_expect_success 'preimage have right number of lines' '
cnt=$(sed -ne "/^<<<<<<</,/^>>>>>>>/p" $rr/preimage | wc -l) &&
test "$cnt" = 10
'

git show first:a1 > a1

cat > expect << EOF
--- a/a1
+++ b/a1
@@ -6,11 +6,7 @@
@@ -6,17 +6,9 @@
The heart-ache and the thousand natural shocks
That flesh is heir to, 'tis a consummation
Devoutly to be wish'd.
Expand All @@ -66,8 +74,13 @@ cat > expect << EOF
To sleep: perchance to dream: ay, there's the rub;
For in that sleep of death what dreams may come
When we have shuffled off this mortal coil,
Must give us pause: there's the respect
-<<<<<<<
-That makes calamity of so long life.
-=======
That makes calamity of so long life;
->>>>>>>
EOF

git rerere diff > out

test_expect_success 'rerere diff' 'git diff expect out'
Expand Down

0 comments on commit 045f575

Please sign in to comment.