Commit Briefs

a966211500 Christian Weisgerber

add missing "return 1" to failure handling in the regress scripts

ok stsp@


8f2a2f4f1c Christian Weisgerber

drop realloc_ids() initialization calls, one of which had a typo

realloc_ids() is called again in the loops that assign to the ID arrays, before the first assignment. ok stsp


43e4eb1bf2 Stefan Sperling

Add got(1) command tab-completion for ksh(1) to EXAMPLES section.

Suggested by Clint Pachl, thanks!


27b75514d9 Stefan Sperling

do not send a pack file when 'got send' is only deleting branches

The git protocol spec says the client MUST NOT send a pack file if the only command used is 'delete'. Fixes 'got send -d' against Github's server which closed the session upon receiving the empty pack file we sent. This problem wasn't caught by regression tests since git-daemon does accept an empty pack file. Problem reported by jrick.


2ae2891d0e Stefan Sperling

remove github capabilities workaround from got-send-pack, it is not needed

This workaround was inherited from git9, which claims that Github did not send capabilities. Protocol traces show that Github's server does in fact advertise its capabilities. Git protocol capabilities are hidden behind a NUL byte in the middle of the first refline sent by the server. This makes them easy to miss when treating a refline as a C string. I guess this is why Ori concluded that Github didn't send any capabilities. Or perhaps Github has been fixed since.


26ac815fc4 Tracey Emery

remove unused name variables, noticed by naddy@


0ff2bf469b Tracey Emery

clean up weird grammar. not sure what i was thinking.


16c4be8c1c Tracey Emery

fix to allow empty send and fetch blocks, ok stsp@


cfd923335b Tracey Emery

add send and fetch plumbing to parser for got.conf

This is the beginning of support for naddy's suggestion to break this out similar to git. More code to come from stsp. ok stsp@


2f1457c6cc Stefan Sperling

allow deletion of refs/remotes/ branches with got branch -d

Also, make requirements for branch name arguments more flexible. Absolute reference names are now accepted. ok naddy@



93a300b296 Stefan Sperling

small man page spelling fixes


4408b20f8e Stefan Sperling

update the TODO list


fd44090b62 Stefan Sperling

tweak the man page section about 'got send'

In particular, attempt to describe the -f option better.


1bd76734ce Stefan Sperling

fix the output of 'got send -d' upon success

Previous output was: Already up-to-date New output is: Server has deleted refs/heads/branch Check this behavour in the related regression test.



f8a36e2210 Stefan Sperling

add 'got send' command for sending changes to remote repositories

Known to work against git-daemon and github Git server implementations. Tests by abieber, naddy, jrick, and myself. Man page additions reviewed by Lucas.


3379373c62 Christian Weisgerber

use POSIX [ s1 = s2 ] syntax instead of [ s1 == s2 ]


8991a32853 Stefan Sperling

add a missing bounds-check in got-fetch-pack when parsing server response

The tokenize_refline() function could end up reading past the end of the buffer if the refline is not terminated with whitespace or \0.


a90356f7c4 Stefan Sperling

prevent NULL deref in got-fetch-pack if server does not announce capabilities

The my_capabilities pointer may remain NULL. Check for NULL before use.


14d2b281dd Stefan Sperling

fix the error message shown when the server sends a bad ref line

Exposed by trying to run got clone -l against shithub.us over git:// found by abieber@


63e5aa5c34 Stefan Sperling

Expose got_ref_name_is_valid() for general purpose use.

This will be needed for a future 'got send' command.



cce2f4851e Stefan Sperling

expose got_ref_resolve_symbolic() at the public library API

This will be needed by a future 'got send' command.


0af64e8644 Stefan Sperling

plug a memory leak in an error path of got_deltify()