mirror of
https://github.com/git/git.git
synced 2024-11-23 18:05:29 +08:00
git p4: handle files with wildcards when doing RCS scrubbing
Commit 9d7d446
(git p4: submit files with wildcards, 2012-04-29)
fixed problems with handling files that had p4 wildcard
characters, like "@" and "*". But it missed one case, that of
RCS keyword scrubbing, which uses "p4 fstat" to extract type
information. Fix it by calling wildcard_encode() on the raw
filename.
Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
0cf1b72a38
commit
79467e61aa
@ -310,8 +310,8 @@ def split_p4_type(p4type):
|
|||||||
#
|
#
|
||||||
# return the raw p4 type of a file (text, text+ko, etc)
|
# return the raw p4 type of a file (text, text+ko, etc)
|
||||||
#
|
#
|
||||||
def p4_type(file):
|
def p4_type(f):
|
||||||
results = p4CmdList(["fstat", "-T", "headType", file])
|
results = p4CmdList(["fstat", "-T", "headType", wildcard_encode(f)])
|
||||||
return results[0]['headType']
|
return results[0]['headType']
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@ -188,6 +188,29 @@ test_expect_success 'p4 deleted a wildcard file' '
|
|||||||
)
|
)
|
||||||
'
|
'
|
||||||
|
|
||||||
|
test_expect_success 'wildcard files requiring keyword scrub' '
|
||||||
|
(
|
||||||
|
cd "$cli" &&
|
||||||
|
cat <<-\EOF >scrub@wild &&
|
||||||
|
$Id$
|
||||||
|
line2
|
||||||
|
EOF
|
||||||
|
p4 add -t text+k -f scrub@wild &&
|
||||||
|
p4 submit -d "scrub at wild"
|
||||||
|
) &&
|
||||||
|
test_when_finished cleanup_git &&
|
||||||
|
git p4 clone --dest="$git" //depot &&
|
||||||
|
(
|
||||||
|
cd "$git" &&
|
||||||
|
git config git-p4.skipSubmitEdit true &&
|
||||||
|
git config git-p4.attemptRCSCleanup true &&
|
||||||
|
sed "s/^line2/line2 edit/" <scrub@wild >scrub@wild.tmp &&
|
||||||
|
mv -f scrub@wild.tmp scrub@wild &&
|
||||||
|
git commit -m "scrub at wild line2 edit" scrub@wild &&
|
||||||
|
git p4 submit
|
||||||
|
)
|
||||||
|
'
|
||||||
|
|
||||||
test_expect_success 'kill p4d' '
|
test_expect_success 'kill p4d' '
|
||||||
kill_p4d
|
kill_p4d
|
||||||
'
|
'
|
||||||
|
Loading…
Reference in New Issue
Block a user