Skip to content

Commit 7a10946

Browse files
luked99gitster
authored andcommitted
git-p4: handle update of moved/copied files when updating a shelve
Perforce requires a complete list of files being operated on. If git is updating an existing shelved changelist, then any files which are moved or copied were not being added to this list. Signed-off-by: Luke Diamand <[email protected]> Acked-by: Andrey Mazo <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
1 parent 7a10bb3 commit 7a10946

File tree

2 files changed

+3
-1
lines changed

2 files changed

+3
-1
lines changed

git-p4.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1859,6 +1859,7 @@ def applyCommit(self, id):
18591859
filesToAdd.remove(path)
18601860
elif modifier == "C":
18611861
src, dest = diff['src'], diff['dst']
1862+
all_files.append(dest)
18621863
p4_integrate(src, dest)
18631864
pureRenameCopy.add(dest)
18641865
if diff['src_sha1'] != diff['dst_sha1']:
@@ -1875,6 +1876,7 @@ def applyCommit(self, id):
18751876
editedFiles.add(dest)
18761877
elif modifier == "R":
18771878
src, dest = diff['src'], diff['dst']
1879+
all_files.append(dest)
18781880
if self.p4HasMoveCommand:
18791881
p4_edit(src) # src must be open before move
18801882
p4_move(src, dest) # opens for (move/delete, move/add)

t/t9807-git-p4-submit.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -546,7 +546,7 @@ test_expect_success 'submit --update-shelve' '
546546
)
547547
'
548548

549-
test_expect_failure 'update a shelve involving moved and copied files' '
549+
test_expect_success 'update a shelve involving moved and copied files' '
550550
test_when_finished cleanup_git &&
551551
(
552552
cd "$cli" &&

0 commit comments

Comments
 (0)