How do I ignore the changes made by CVS keyword substitution efficiently?

4 messages, 3 authors, 2010-06-04 · open the first message on its own page

How do I ignore the changes made by CVS keyword substitution efficiently?

From: Lin Mac <hidden>
Date: 2010-06-03 19:13:32

Hi,

I'm merging kernel from others, and they used CVS to manage their
code, and so do some part of linux kernel. Unfortunatly CVS would
substitude the keywords in the source, result in unecessary changes in
the code, like the one in the following diff. In fact, there are
around 1174 of CVS keywords in the kernel source. I don't want those
useless changes to get into my tree.

Currently I use the attached scripts to as a basic filter, which could
filter out 1-line changes by CVS keyword in a patch. But I still have
to handle other cases (multi-line changes, $Log, which would result in
log of latest commit) myself.

Do you have better idea to get this task done?
diff --git a/kernels/linux-2.6.31.1-cavm1/Documentation/cris/README
b/kernels/linux-2.6.31.1-cavm1/Documentation/cris/README
index d9b0868..c7bb74b 100644
--- a/kernels/linux-2.6.31.1-cavm1/Documentation/cris/README
+++ b/kernels/linux-2.6.31.1-cavm1/Documentation/cris/README
@@ -1,6 +1,6 @@
 Linux 2.4 on the CRIS architecture
 ==================================
-$Id: README,v 1.7 2001/04/19 12:38:32 bjornw Exp $
+$Id: README,v 1.1 2010-05-14 09:47:54 XXXXXXXX Exp $

 This is a port of Linux 2.4 to Axis Communications ETRAX 100LX embedded
 network CPU. For more information about CRIS and ETRAX please see further
@@ -103,7 +103,7 @@ block: queued sectors max/low 9109kB/3036kB, 64
slots per queue
 ETRAX 100LX 10/100MBit ethernet v2.0 (c) 2000 Axis Communications AB
 eth0 initialized
 eth0: changed MAC to 00:40:8C:CD:00:00
-ETRAX 100LX serial-driver $Revision: 1.7 $, (c) 2000 Axis Communications AB
+ETRAX 100LX serial-driver $Revision: 1.1 $, (c) 2000 Axis Communications AB
 ttyS0 at 0xb0000060 is a builtin UART with DMA
 ttyS1 at 0xb0000068 is a builtin UART with DMA
 ttyS2 at 0xb0000070 is a builtin UART with DMA
@@ -133,7 +133,7 @@ Default gateway is 10.13.9.1
 Hostname is bbox1
 Telnetd starting, using port 23.
   using /bin/sash as shell.
-sftpd[15]: sftpd $Revision: 1.7 $ starting up
+sftpd[15]: sftpd $Revision: 1.1 $ starting up

Re: How do I ignore the changes made by CVS keyword substitution efficiently?

From: Kyle McMartin <hidden>
Date: 2010-06-03 19:35:29

On Fri, Jun 04, 2010 at 03:13:29AM +0800, Lin Mac wrote:
I'm merging kernel from others, and they used CVS to manage their
code, and so do some part of linux kernel. Unfortunatly CVS would
substitude the keywords in the source, result in unecessary changes in
the code, like the one in the following diff. In fact, there are
around 1174 of CVS keywords in the kernel source. I don't want those
useless changes to get into my tree.
You want the -ko option to cvs checkout/update which will use the
original keywords from the import.

regards, Kyle

Re: How do I ignore the changes made by CVS keyword substitution efficiently?

From: Lin Mac <hidden>
Date: 2010-06-03 19:50:40

2010/6/4 Kyle McMartin [off-list ref]:
You want the -ko option to cvs checkout/update which will use the
original keywords from the import.
Yes, that could be done. But usually it would be faster if I could
solve it myself than asking them to release again.

Best Regards,
Mac Lin.

Re: How do I ignore the changes made by CVS keyword substitution efficiently?

From: Steven Michalske <hidden>
Date: 2010-06-04 07:13:47

Look into the git attributes and filters, make a clean command that  
strips out the cvs/svn keywords.

On Jun 3, 2010, at 12:13 PM, Lin Mac wrote:
quoted hunk
Hi,

I'm merging kernel from others, and they used CVS to manage their
code, and so do some part of linux kernel. Unfortunatly CVS would
substitude the keywords in the source, result in unecessary changes in
the code, like the one in the following diff. In fact, there are
around 1174 of CVS keywords in the kernel source. I don't want those
useless changes to get into my tree.

Currently I use the attached scripts to as a basic filter, which could
filter out 1-line changes by CVS keyword in a patch. But I still have
to handle other cases (multi-line changes, $Log, which would result in
log of latest commit) myself.

Do you have better idea to get this task done?
diff --git a/kernels/linux-2.6.31.1-cavm1/Documentation/cris/README
b/kernels/linux-2.6.31.1-cavm1/Documentation/cris/README
index d9b0868..c7bb74b 100644
--- a/kernels/linux-2.6.31.1-cavm1/Documentation/cris/README
+++ b/kernels/linux-2.6.31.1-cavm1/Documentation/cris/README
@@ -1,6 +1,6 @@
Linux 2.4 on the CRIS architecture
==================================
-$Id: README,v 1.7 2001/04/19 12:38:32 bjornw Exp $
+$Id: README,v 1.1 2010-05-14 09:47:54 XXXXXXXX Exp $

This is a port of Linux 2.4 to Axis Communications ETRAX 100LX  
embedded
network CPU. For more information about CRIS and ETRAX please see  
further
@@ -103,7 +103,7 @@ block: queued sectors max/low 9109kB/3036kB, 64
slots per queue
ETRAX 100LX 10/100MBit ethernet v2.0 (c) 2000 Axis Communications AB
eth0 initialized
eth0: changed MAC to 00:40:8C:CD:00:00
-ETRAX 100LX serial-driver $Revision: 1.7 $, (c) 2000 Axis  
Communications AB
+ETRAX 100LX serial-driver $Revision: 1.1 $, (c) 2000 Axis  
Communications AB
ttyS0 at 0xb0000060 is a builtin UART with DMA
ttyS1 at 0xb0000068 is a builtin UART with DMA
ttyS2 at 0xb0000070 is a builtin UART with DMA
@@ -133,7 +133,7 @@ Default gateway is 10.13.9.1
Hostname is bbox1
Telnetd starting, using port 23.
  using /bin/sash as shell.
-sftpd[15]: sftpd $Revision: 1.7 $ starting up
+sftpd[15]: sftpd $Revision: 1.1 $ starting up
<undo-cvs-tag-one-line-chage.pl><refine.sh>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help