Re: [PATCH] git-p4: Allow unshelving of branched files

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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
>



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux