git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/1] git-p4: add unshelve command
@ 2018-02-22  9:50 Luke Diamand
  2018-02-22  9:50 ` [PATCH 1/1] " Luke Diamand
  0 siblings, 1 reply; 6+ messages in thread
From: Luke Diamand @ 2018-02-22  9:50 UTC (permalink / raw)
  To: git; +Cc: Lars Schneider, miguel.torroja, gvanburgh, Luke Diamand

This is an initial attempt at adding an unshelve command to
git-p4.

For those not familiar with it, p4 shelve creates a "pending"
changelist, which isn't committed into the central repo but is
nonetheless visible to other develoeprs. The "unshelve" command
takes one of these pending changelists and applies it to your repo.
It is used quite a lot for code review.

git-p4 learned about shelving changelists recently; this completes
the picture by letting you unshelve them as well.

This was inspired by the stackoverflow answer here:

    https://stackoverflow.com/questions/41841917/git-p4-how-to-fetch-a-changelist

The secret is to use the "p4 print file@=N" syntax to get the
contents of a shelved changelist, which has long perplexed me.

I haven't used this a great deal, so it may still have a few rough
edges.

In particular, it currently puts the unshelved commit into
    refs/remotes/p4/unshelved/<N>

where <N> is the changelist being unshelved. That might not be
the best way to do this.


Luke Diamand (1):
  git-p4: add unshelve command

 Documentation/git-p4.txt |  22 ++++++++
 git-p4.py                | 128 +++++++++++++++++++++++++++++++++++------------
 t/t9832-unshelve.sh      |  67 +++++++++++++++++++++++++
 3 files changed, 186 insertions(+), 31 deletions(-)
 create mode 100755 t/t9832-unshelve.sh

-- 
2.15.1.272.gc310869385


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2018-02-24 12:50 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-02-22  9:50 [PATCH 0/1] git-p4: add unshelve command Luke Diamand
2018-02-22  9:50 ` [PATCH 1/1] " Luke Diamand
2018-02-22 21:39   ` Miguel Torroja
2018-02-22 22:28     ` Luke Diamand
2018-02-23 17:22       ` Luke Diamand
2018-02-24 12:50         ` Miguel Torroja

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).