git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
* [PATCHv1 0/3] git-p4: improved unshelving
@ 2018-10-12  5:28 Luke Diamand
  2018-10-12  5:28 ` [PATCHv1 1/3] git-p4: do not fail in verbose mode for missing 'fileSize' key Luke Diamand
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Luke Diamand @ 2018-10-12  5:28 UTC (permalink / raw)
  To: git
  Cc: SZEDER Gábor, Chen Bin, Miguel Torroja, George Vanburgh,
	Merland Romain, Vinicius Kursancew, larsxschneider, Lex Spoon,
	Luke Diamand

This patch series teaches the git-p4 unshelve command to handle
intervening changes to the Perforce files.

At the moment if you try to unshelve a file, and that file has been
modified since the shelving, git-p4 refuses. That is so that it
doesn't end up generating a commit containing deltas from several P4
changes.

This gets to be more annoying as time goes on and the files you are
interested in get updated by other people.

However, what we can do is to create a parent commit matching the
state of the tree when the shelve happened, which then lets git-p4
create a git commit containing just the changes that are wanted.

It's still impossible to determine the true state of the complete
tree when the P4 shelve was created, since this information is not
recorded by Perforce. Manual intervention is required to fix that.

There are also a few other smaller fixes, the main one being
that it no longer unshelves into refs/remotes/p4/master/unshelved, but
instead into refs/remotes/p4-unshelved.

That's because the git-p4 branch detection gets confused by branches
appearing in refs/remotes/p4.


Luke Diamand (3):
  git-p4: do not fail in verbose mode for missing 'fileSize' key
  git-p4: unshelve into refs/remotes/p4-unshelved, not
    refs/remotes/p4/unshelved
  git-p4: fully support unshelving changelists

 Documentation/git-p4.txt | 10 ++---
 git-p4.py                | 90 +++++++++++++++++++++++-----------------
 t/t9832-unshelve.sh      | 75 ++++++++++++++++++++++++++-------
 3 files changed, 117 insertions(+), 58 deletions(-)

-- 
2.19.1.272.gf84b9b09d4


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

end of thread, other threads:[~2018-10-15 11:04 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-10-12  5:28 [PATCHv1 0/3] git-p4: improved unshelving Luke Diamand
2018-10-12  5:28 ` [PATCHv1 1/3] git-p4: do not fail in verbose mode for missing 'fileSize' key Luke Diamand
2018-10-12  5:28 ` [PATCHv1 2/3] git-p4: unshelve into refs/remotes/p4-unshelved, not refs/remotes/p4/unshelved Luke Diamand
2018-10-12 13:45   ` Junio C Hamano
2018-10-12 18:19     ` Luke Diamand
2018-10-15 11:03       ` Luke Diamand
2018-10-12  5:28 ` [PATCHv1 3/3] git-p4: fully support unshelving changelists Luke Diamand

Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).