On Tue, 21 May 2019 at 23:50, Simon Williams <simon@xxxxxxxxxxxxxxxxx> wrote: > > When unshelving a changelist, git-p4 tries to work out the appropriate > parent commit in a given branch (default: HEAD). To do this, it looks > at the state of any pre-existing files in the target Perforce branch, > omiting files added in the shelved changelist. Currently, only files > added (or move targets) are classed as new. However, files integrated > from other branches (i.e. a 'branch' action) also need to be considered > as added, for this purpose. Looks good to me! "omiting" in the comment should perhaps be "omitting". > > Signed-off-by: Simon Williams <simon@xxxxxxxxxxxxxxxxx> > --- > git-p4.py | 2 +- > t/t9832-unshelve.sh | 8 +++++++- > 2 files changed, 8 insertions(+), 2 deletions(-) > > diff --git a/git-p4.py b/git-p4.py > index 5b79920f46..81a525858b 100755 > --- a/git-p4.py > +++ b/git-p4.py > @@ -1309,7 +1309,7 @@ def processContent(self, git_mode, relPath, contents): > > class Command: > delete_actions = ( "delete", "move/delete", "purge" ) > - add_actions = ( "add", "move/add" ) > + add_actions = ( "add", "branch", "move/add" ) > > def __init__(self): > self.usage = "usage: %prog [options]" > diff --git a/t/t9832-unshelve.sh b/t/t9832-unshelve.sh > index 41c09f11f4..cde9f86cd6 100755 > --- a/t/t9832-unshelve.sh > +++ b/t/t9832-unshelve.sh > @@ -22,7 +22,10 @@ test_expect_success 'init depot' ' > : >file_to_move && > p4 add file_to_delete && > p4 add file_to_move && > - p4 submit -d "add files to delete" > + p4 submit -d "add files to delete" && > + echo file_to_integrate >file_to_integrate && > + p4 add file_to_integrate && > + p4 submit -d "add file to integrate" > ) > ' > > @@ -40,6 +43,7 @@ test_expect_success 'create shelved changelist' ' > p4 delete file_to_delete && > p4 edit file_to_move && > p4 move file_to_move moved_file && > + p4 integrate file_to_integrate integrated_file && > p4 opened && > p4 shelve -i <<EOF > Change: new > @@ -53,6 +57,7 @@ Files: > //depot/file_to_delete > //depot/file_to_move > //depot/moved_file > + //depot/integrated_file > EOF > > ) && > @@ -65,6 +70,7 @@ EOF > test_path_is_file file2 && > test_cmp file1 "$cli"/file1 && > test_cmp file2 "$cli"/file2 && > + test_cmp file_to_integrate "$cli"/integrated_file && > test_path_is_missing file_to_delete && > test_path_is_missing file_to_move && > test_path_is_file moved_file > -- > 2.17.1 > > > -- > Simon Williams <simon@xxxxxxxxxxxxxxxxx> > PGP Key ID: 0xF4A23C69 >