I previously sent this to Junio, but I think I should have just sent it to the list. I'd like to be able to call git-push --dry-run and process the result from a perl script, but there's a snag: what does "foobar -> foobar" mean? foobar could be a tag or a branch. In fact, it could be a branch on on side and a tag on the other! I've tried duplicating the refspec processing in the perl script, but this approach is highly sub-optimal because the refspec parsing and matching is so complicated. I would wind up duplicating a lot of functionality, and every time it changed in git my script would become broken. Would you accept a patch that changes the behavior of git-push so that instead of $ git-push --dry-run -v origin : Pushing to ~/repos/bin To ~/repos/bin = [up to date] master -> master Everything up-to-date It would print the full names like this (only if -v is used) $ git-push --dry-run -v origin : Pushing to ~/repos/bin To ~/repos/bin = [up to date] refs/heads/master -> refs/heads/master Everything up-to-date Or, if you don't like changing the behavior of -v, would you accept a patch with a new option (perhaps --symbolic-full-name) that caused git-push to behave this way? Once I know what the user interface should be (-v or --symbolic-full-name or whatever) I'll post a patch. Thanks! --larry -- 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