Here are cleaned-up versions of the previous patches I sent. The improvements are: 1/3 send-pack: track errors for each ref - there was a t5404 regression because I removed the is_null_sha1() check before updating a tracking ref (but the replacement fix doesn't come until 2/3). Even though this check is not correct, it's better to fix it all at once correctly in 2/3. - clarified the desired git-push exit code in t5404 - I renamed the struct elements to (hopefully) be a bit more obvious - readability cleanups (fixed some very long lines, hoisted some code into its own functions) 2/3 send-pack: check ref->status before updating tracking refs - moved in fix from 1/3 mentioned above - add test for deleting tracking branches, which was broken in next but fixed by this patch 3/3 send-pack: assign remote errors to each ref - squashed optimization patch - remove bogus parsing drawback in commit message - add test I'm hoping to get feedback from the cc'd people: - Alex: please OK the modifications to t5404 - Pierre: this should fix the tracking ref update issues you reported - Daniel: a general OK, since I am mangling your code :) -Peff - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html