git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: shallow clone failed git pull

From
Aneesh Kumar K.V <aneesh.kumar@gmail.com>
Date
Nov 10, 2006, 05:58 UTC
Message-ID
<45541503.4020604@gmail.com>
In-Reply-To
<4552A865.5000201@gmail.com>
Aneesh Kumar K.V wrote:
Show 15 quoted lines
> I was using the pu branch i tried to update the git repository and i got 
> this error.
> 
> alk 9e950efa20dc8037c27509666cba6999da9368e8
> walk 3b6a792f6ace33584897d1af08630c9acc0ce221
> * refs/heads/origin: fast forward to branch 'master' of 
> http://repo.or.cz/r/linux-2.6
>  old..new: 3d42488..088406b
> Auto-following refs/tags/v2.6.19-rc5
> shallow clone with http not supported
> 
> 
> This repository was not cloned with -depth. I only updated the git tools 
> using the pu branch
> 

The attached patch gets it working. I am not sure whether the fix is the right one. I am a little bit confused regarding the $depth being incremented.

-aneesh
diff --git a/git-fetch.sh b/git-fetch.sh
index 8b46e73..6459994 100755
--- a/git-fetch.sh
+++ b/git-fetch.sh
@@ -21,7 +21,7 @@ update_head_ok=
 exec=
 upload_pack=
 keep=
-depth=
+depth=0
 while case "$#" in 0) break ;; esac
 do
 	case "$1" in
@@ -304,7 +304,7 @@ fetch_main () {
       # There are transports that can fetch only one head at a time...
       case "$remote" in
       http://* | https://* | ftp://*)
-	  test -n "$depth" && die "shallow clone with http not supported"
+	  [ x"$depth" != x0 ] && die "shallow clone with http not supported"
 	  proto=`expr "$remote" : '\([^:]*\):'`
 	  if [ -n "$GIT_SSL_NO_VERIFY" ]; then
 	      curl_extra_args="-k"
@@ -325,7 +325,7 @@ fetch_main () {
 	      print "$u";
 	  ' "$head")
 	    head=$(curl -nsfL $curl_extra_args $noepsv_opt "$remote/$remote_name_quoted")
-	    depth=$( expr \( $depth + 1 \) )
+	   # depth=$( expr \( $depth + 1 \) )
 	  done
 	  expr "z$head" : "z$_x40\$" >/dev/null ||
 	      die "Failed to fetch $remote_name from $remote"
@@ -333,7 +333,7 @@ fetch_main () {
 	  git-http-fetch -v -a "$head" "$remote/" || exit
 	  ;;
       rsync://*)
-	  test -n "$depth" && die "shallow clone with rsync not supported"
+	  [ x"$depth" != x0 ] && die "shallow clone with http not supported"
 	  TMP_HEAD="$GIT_DIR/TMP_HEAD"
 	  rsync -L -q "$remote/$remote_name" "$TMP_HEAD" || exit 1
 	  head=$(git-rev-parse --verify TMP_HEAD)
Previous: Aneesh Kumar K.VNext: Aneesh Kumar K.V
Message 2 of 4 in “shallow clone failed git pull”
  1. Aneesh Kumar K.VNov 9, 2006
  2. Aneesh Kumar K.VNov 10, 2006
  3. FIX git pull failure with shallow clone changesAneesh Kumar K.V, Nov 10, 2006
  4. Johannes SchindelinNov 13, 2006

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.