Subject: git-p4, RCS keywords

From: Luke Diamand <[email-masked]>
Date: Tue, 12 Jul 2011 07:50:36 +0100

A bit of an ancient topic now, I'm afraid, but back in May I was 
attempting to find a way to get git-p4 to cope with RCS keyword 
expansion causing merge conflicts.

http://marc.info/?l=git&m=130492741320889&w=2

I've given up trying to make this work.

I had thought that I had a scheme that could plausibly work. git-p4 
detects when a merge would fail. At this point, look for RCS keywords in 
the file, and strip them out. For an edit that's easy, for a deletion 
it's a bit trickier.

I then discovered that the third way RCS keywords can cause grief is if 
a user copies a file containing expanded RCS keywords into their git 
repo. My scheme then gave some very weird results!

Maybe this is now the complete list of ways in which RCS keywords can 
mess you up, but I'm not sure. We've got ~9.5k files in our repo with 
RCS keywords. I think it's easier and safer just to go through and turn 
off ktext everywhere. I've actually only seen two or three merge 
conflicts caused by this problem in this time (not sure how many commits 
that is, but it must be in the hundreds).

I'm not saying it's not possible, just that my approach isn't going to work.

Who invented RCS keyword expansion anyway? They need a good talking to!

Luke