From a2239b79e554bab92abe47d8568cbbfe5c77ce85 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Sat, 15 Oct 2005 17:30:15 -0700 Subject: GIT v0.99.8d Contains the following changes since v0.99.8c. Johannes Schindelin: Teach git-status about spaces in file names also on MacOSX t5400-send-pack relies on a working cpio Jonas Fonseca: git.sh: quote all paths Junio C Hamano: Also force LC_ALL in test scripts. OpenBSD needs the strcasestr replacement. git-check-ref-format: reject funny ref names. Refuse to create funny refs in clone-pack, git-fetch and receive-pack. Ignore funny refname sent from remote Introduce notation "ref^{type}". Martin Langhoff: cvsimport: don't pass --cvs-direct if user options contradict us Ralf Baechle: rsh.c: typo fix Note that "funny ref" bits are not strictly fixes but rather backport from the "master" branch. They will prevent refs and heads with funny names from being created. In addition, what is in the master branch will start feeding the clients unwrapped tag information to help Martin's findtags and possibly later Cogito. These backported "funny ref" changes are to prevent clients on the "maint" branch from getting confused when talking with newer git-upload-pack and when reading from info/refs file prepared with newer git-update-server-info. Signed-off-by: Junio C Hamano diff --git a/Makefile b/Makefile index 3ae3d3b..a4a5ec4 100644 --- a/Makefile +++ b/Makefile @@ -48,7 +48,7 @@ # DEFINES += -DUSE_STDEV -GIT_VERSION = 0.99.8c +GIT_VERSION = 0.99.8d CFLAGS = -g -O2 -Wall ALL_CFLAGS = $(CFLAGS) $(PLATFORM_DEFINES) $(DEFINES) diff --git a/connect.c b/connect.c index c577f2e..e21d39a 100644 --- a/connect.c +++ b/connect.c @@ -1,6 +1,7 @@ #include "cache.h" #include "pkt-line.h" #include "quote.h" +#include "refs.h" #include #include #include diff --git a/debian/changelog b/debian/changelog index abd8ff4..42332b6 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +git-core (0.99.8d-0) unstable; urgency=low + + * GIT 0.99.8d + + -- Junio C Hamano Sat, 15 Oct 2005 17:22:58 -0700 + git-core (0.99.8c-0) unstable; urgency=low * GIT 0.99.8c diff --git a/git-clone.sh b/git-clone.sh index 7143131..78c83e8 100755 --- a/git-clone.sh +++ b/git-clone.sh @@ -53,7 +53,11 @@ Perhaps git-update-server-info needs to be run there?" while read sha1 refname do name=`expr "$refname" : 'refs/\(.*\)'` && - git-http-fetch -v -a -w "$name" "$name" "$1/" || exit 1 + case "$name" in + *^{}) ;; + *) + git-http-fetch -v -a -w "$name" "$name" "$1/" || exit 1 ;; + esac done <"$clone_tmp/refs" rm -fr "$clone_tmp" } diff --git a/git-fetch.sh b/git-fetch.sh index d398866..8fb6fba 100755 --- a/git-fetch.sh +++ b/git-fetch.sh @@ -170,7 +170,11 @@ esac reflist=$(get_remote_refs_for_fetch "$@") if test "$tags" then - taglist=$(git-ls-remote --tags "$remote" | awk '{ print "."$2":"$2 }') + taglist=$(git-ls-remote --tags "$remote" | + sed -e ' + /\^{}$/d + s/^[^ ]* // + s/.*/&:&/') if test "$#" -gt 1 then # remote URL plus explicit refspecs; we need to merge them. -- cgit v0.10.2-6-g49f6