tags:

views:

865

answers:

3

Is it possible to use a different diff program with CVS? I'd like to use something like meld to give me a side-by-side graphical view of the repository and my changes. It's out of my control to use a different CMS. What would be ideal is some undocumented command line argument that would work like this:

cvs diff -prog /usr/bin/meld foo.cc

This would give me a diff of my checked out, modified version of foo.cc with the repository version, but using the diff program meld.

I realize an undocumented command line argument is unlikely, so if you have to hack it together, that works for me.

+1  A: 

If you use WinCVS, you can setup a Diff application such as WinMerge in the preferences.

In WinCVS preferences, tab WinCVS, "External diff program"

decasteljau
Useful for those on Windows, but I'm using Linux.
Scottie T
+1  A: 

Meld supports this natively. See "Working Copy" screenshot from meld.sourceforge.net

Alex B
Yes, but it's horribly documented. I can't find where I specify where the repository lives. My current method is to type the long path beyond $CVSROOT to the directory that matches my current working directory.
Scottie T
meld foo.cc $CVSROOT/dir1/dir2/dir3/foo.cc,v
Scottie T
+1  A: 

I use tkcvs and tkdiff (not the lastest version either)

the cool thing is that tkcvs also supports subversion.

tkdiff works on the command line and takes cvs tags...

  • tkdiff -rfoo_v5_0 -rfoo_v6_5 silly.c (compare two different versions than the one in your local directory)
  • tkdiff spring.h (compare my local version to the repository)
  • tkdiff -r1.6 happy.c (compare my local version to a specific repository version)
Sally
Thanks for pointing that out. Is there any documentation available for this?
Scottie T