Thread (8 messages) flat view 8 messages, 5 authors, 2016-06-15

I'd like to be able to know what git-push will do

From: Larry D'Anna <hidden>
Date: 2016-06-15 22:46:58

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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help