Skip to content

Instantly share code, notes, and snippets.

@schacon
Created February 24, 2025 15:58
Show Gist options
  • Save schacon/b6ad79b4974eb4a55e330502fde1095b to your computer and use it in GitHub Desktop.
Save schacon/b6ad79b4974eb4a55e330502fde1095b to your computer and use it in GitHub Desktop.
trace packet for a simple git clone
❯ GIT_TRACE_PACKET=1 git clone https://github.com/schacon/blink
Cloning into 'blink'...
16:58:04.532660 pkt-line.c:85 packet: git< # service=git-upload-pack
16:58:04.533707 pkt-line.c:85 packet: git< 0000
16:58:04.533715 pkt-line.c:85 packet: git< version 2
16:58:04.533731 pkt-line.c:85 packet: git< agent=git/github-d6c9584635a2
16:58:04.533737 pkt-line.c:85 packet: git< ls-refs=unborn
16:58:04.533742 pkt-line.c:85 packet: git< fetch=shallow wait-for-done filter
16:58:04.533751 pkt-line.c:85 packet: git< server-option
16:58:04.533756 pkt-line.c:85 packet: git< object-format=sha1
16:58:04.533761 pkt-line.c:85 packet: git< 0000
16:58:04.533865 pkt-line.c:85 packet: clone< version 2
16:58:04.534636 pkt-line.c:85 packet: clone< agent=git/github-d6c9584635a2
16:58:04.534647 pkt-line.c:85 packet: clone< ls-refs=unborn
16:58:04.534653 pkt-line.c:85 packet: clone< fetch=shallow wait-for-done filter
16:58:04.534658 pkt-line.c:85 packet: clone< server-option
16:58:04.534663 pkt-line.c:85 packet: clone< object-format=sha1
16:58:04.534667 pkt-line.c:85 packet: clone< 0000
16:58:04.534688 pkt-line.c:85 packet: clone> command=ls-refs
16:58:04.534703 pkt-line.c:85 packet: clone> agent=git/2.48.1
16:58:04.534708 pkt-line.c:85 packet: clone> object-format=sha1
16:58:04.534712 pkt-line.c:85 packet: clone> 0001
16:58:04.534716 pkt-line.c:85 packet: clone> peel
16:58:04.534720 pkt-line.c:85 packet: clone> symrefs
16:58:04.534725 pkt-line.c:85 packet: clone> unborn
16:58:04.534729 pkt-line.c:85 packet: clone> ref-prefix HEAD
16:58:04.534734 pkt-line.c:85 packet: clone> ref-prefix refs/heads/
16:58:04.534738 pkt-line.c:85 packet: clone> ref-prefix refs/tags/
16:58:04.534742 pkt-line.c:85 packet: clone> 0000
16:58:04.534753 pkt-line.c:85 packet: git< command=ls-refs
16:58:04.534768 pkt-line.c:85 packet: git< agent=git/2.48.1
16:58:04.534774 pkt-line.c:85 packet: git< object-format=sha1
16:58:04.534779 pkt-line.c:85 packet: git< 0001
16:58:04.534783 pkt-line.c:85 packet: git< peel
16:58:04.534788 pkt-line.c:85 packet: git< symrefs
16:58:04.534792 pkt-line.c:85 packet: git< unborn
16:58:04.534797 pkt-line.c:85 packet: git< ref-prefix HEAD
16:58:04.534911 pkt-line.c:85 packet: git< ref-prefix refs/heads/
16:58:04.534918 pkt-line.c:85 packet: git< ref-prefix refs/tags/
16:58:04.534922 pkt-line.c:85 packet: git< 0000
16:58:04.670555 pkt-line.c:85 packet: git> 0002
16:58:04.670579 pkt-line.c:85 packet: clone< 10d539600d86723087810ec636870a504f4fee4d HEAD symref-target:refs/heads/master
16:58:04.670639 pkt-line.c:85 packet: clone< 10d539600d86723087810ec636870a504f4fee4d refs/heads/master
16:58:04.670660 pkt-line.c:85 packet: clone< 0000
16:58:04.670696 pkt-line.c:85 packet: clone< 0002
16:58:04.674924 pkt-line.c:85 packet: clone> command=fetch
16:58:04.674939 pkt-line.c:85 packet: clone> agent=git/2.48.1
16:58:04.674943 pkt-line.c:85 packet: clone> object-format=sha1
16:58:04.674945 pkt-line.c:85 packet: clone> 0001
16:58:04.674948 pkt-line.c:85 packet: clone> thin-pack
16:58:04.674951 pkt-line.c:85 packet: clone> ofs-delta
16:58:04.674955 pkt-line.c:85 packet: clone> want 10d539600d86723087810ec636870a504f4fee4d
16:58:04.674958 pkt-line.c:85 packet: clone> want 10d539600d86723087810ec636870a504f4fee4d
16:58:04.674961 pkt-line.c:85 packet: clone> done
16:58:04.674964 pkt-line.c:85 packet: clone> 0000
16:58:04.674982 pkt-line.c:85 packet: git< command=fetch
16:58:04.674993 pkt-line.c:85 packet: git< agent=git/2.48.1
16:58:04.674996 pkt-line.c:85 packet: git< object-format=sha1
16:58:04.674999 pkt-line.c:85 packet: git< 0001
16:58:04.675003 pkt-line.c:85 packet: git< thin-pack
16:58:04.675006 pkt-line.c:85 packet: git< ofs-delta
16:58:04.675010 pkt-line.c:85 packet: git< want 10d539600d86723087810ec636870a504f4fee4d
16:58:04.675013 pkt-line.c:85 packet: git< want 10d539600d86723087810ec636870a504f4fee4d
16:58:04.675017 pkt-line.c:85 packet: git< done
16:58:04.675020 pkt-line.c:85 packet: git< 0000
16:58:04.809902 pkt-line.c:85 packet: clone< packfile
16:58:04.809996 pkt-line.c:85 packet: sideband< \2Enumerating objects: 9, done.
remote: Enumerating objects: 9, done.
16:58:04.811503 pkt-line.c:85 packet: git> 0002
16:58:04.811589 pkt-line.c:85 packet: sideband< PACK ...
16:58:04.811634 pkt-line.c:85 packet: sideband< \2Total 9 (delta 0), reused 0 (delta 0), pack-reused 9 (from 1)
remote: Total 9 (delta 0), reused 0 (delta 0), pack-reused 9 (from 1)
16:58:04.811658 pkt-line.c:85 packet: sideband< 0000
Receiving objects: 100% (9/9), done.
Resolving deltas: 100% (1/1), done.
16:58:04.825039 pkt-line.c:85 packet: clone< 0002
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment