git-p4: add initial support for RCS keywords
authorLuke Diamand <luke@diamand.org>
Thu, 23 Feb 2012 07:51:30 +0000 (07:51 +0000)
committerJunio C Hamano <gitster@pobox.com>
Thu, 23 Feb 2012 21:25:35 +0000 (13:25 -0800)
commit60df071c6cce6ee3f92f62042da11c62fe113817
treec68c7515aad766bf7108850401dfba5d0ae6bbbb
parent12766861cdf10fbbfda1023fd65aaf864eb8136a
git-p4: add initial support for RCS keywords

RCS keywords cause problems for git-p4 as perforce always
expands them (if +k is set) and so when applying the patch,
git reports that the files have been modified by both sides,
when in fact they haven't.

This change means that when git-p4 detects a problem applying
a patch, it will check to see if keyword expansion could be
the culprit. If it is, it strips the keywords in the p4
repository so that they match what git is expecting. It then
has another go at applying the patch.

This behaviour is enabled with a new git-p4 configuration
option and is off by default.

Acked-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Luke Diamand <luke@diamand.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/git-p4.txt
contrib/fast-import/git-p4
t/t9810-git-p4-rcs.sh [new file with mode: 0755]