cvsopendiff


#!/usr/bin/perl -w

use File::Basename;

my $args = join ' ', @ARGV;

open (DIFF, "cvs -nq update $args 2>/dev/null |") || die "Couldn't cvs -nq update";

while(<DIFF>) {
  if (/^M ([^\s]+)/) {
      my $file = $1;

      ($filename,$path,$suffix)=fileparse($file,"\.[^.]*");	
      system("cvs up -p $file > $path/.#$filename$suffix~");
      system("opendiff $file $path/.#$filename$suffix~ -merge $file 2>/dev/null");
  }
}