Commit Briefs

Omar Polo

cmd_tag: avoid unnecessary strdup of signer_id

ok jrick


Omar Polo

got merge: call the right usage_*() function

Diff from Mikhail, thanks!


Mark Jamsek

got: don't leak pathlist in commit and revert commands

ok stsp@


Mark Jamsek

refactor got log -d and tog diffstat to compute diff once

This eliminates the previous performance cost by making 'got log -d' and tog diff view compute the diffstat while building the diff in a temp file like we do with 'got diff -d'. Also, keep the current 'got log -d' UI as per stsp's suggestion. ok stsp@


Mark Jamsek

don't use plural noun after 1 in diffstat total

Use singular form when appropriate; for example, turn the top into the bottom: 1 file changed, 1 insertions(+), 1 deletions(-) 1 file changed, 1 insertion(+), 1 deletion(-) ok op@


Mark Jamsek

got: set error on asprintf() failure

ok op@


Mark Jamsek

catch a few missed got_pathlist_append() error checks

ok stsp@


Mark Jamsek

got: zap dead variable in add_branch()

ok stsp@ op@


Mark Jamsek

got: minor refactor of got_pathlist_free() API

Accept flag parameter to optionally specify which pointers to free. This saves callers looping through the list to free pointers. ok + fix stsp@


Mark Jamsek

got: expand diffstat -d option to 'got diff'

Like got log -d, add the switch to 'got diff' to display a diffstat of changes; as per stsp's suggestion, we always include diff output with the diffstat. Disabled in gotwebd (for now :) Includes tweaks from op@ ok stsp@


Stefan Sperling

fix 'got rebase' not detecting an out-of-date work tree in some cases

ok jamsek, op


Stefan Sperling

show from: and via: headers on consecutive lines in 'got log' and 'tog log'

ok jamsek


Mark Jamsek

add -d switch to log usage and sort lexicographically

patch by Josiah Frentsos


Mark Jamsek

got: implement diffstat for got log and tog diff view

Add new got_diff_blob_cb() implementation to compute added/removed line metrics for a given diff. This enables displaying a diffstat with 'got log -d'. As per suggestion from stsp, change tog diff view to display the diffstat by default. ok stsp@


Omar Polo

show full URL during got clone/fetch/send

discussed with and ok jamsek, stsp


Omar Polo

got send: show server error

Print the error message reported by the remote server when failing to update a branch (for e.g. because of a server-side check.) Reported by gonzalo@, with help and ok stsp@.


Stefan Sperling

make 'got clone -b' work for repositories which lack a HEAD reference

ok op@


Stefan Sperling

use mkstemps(3) instead of mkstemp(3) for opening named temporary files

Allows 'got commit' to use a ".diff" suffix for temporary diff files. ok op@


Stefan Sperling

provide a diff of changes in a temp file while editing a commit log message

ok landry@


Stefan Sperling

require space between commit author name and email, for Git compatibility

Allowing such author fields breaks 'got send' towards Github for affected commits because git-index-pack --strict will error out on the server: $ git index-pack --strict pack-de791fb6a3a1961e44ac5d98d72fd533bf9277c8.pack error: object 5d6bde9eaaf27f41ae8fa7112bb45e489d3c16b9: missingSpaceBeforeEmail: invalid author/committer line - missing space before email fatal: fsck error in packed object problem encountered by landry@ ok op@



Stefan Sperling

simplify the way 'got patch' opens a tempfile when reading from stdin

Also add basic test coverage for reading patches from stdin, while here. ok op@



Omar Polo

sync usage with reality

The -h and -V/--version flags must be given before the command; with those flags the command is actually optional, but don't over-complicate the usage string with these nitpicks. ok/improvements stsp@


Josh Rickmar

disallow integrating into references outside refs/heads/

Spotted by stsp@ while considering a feature request for cmd_integrate. ok stsp@