I did a checkout recently, and one of the files was not the file that I checked in, but rather it was a diff
of that file and the previous version.
Is cvs
known for this kind of error?
Are you sure it was a 'diff' of that file and the previous file?
I aske because if two developers work on the same line(s) of the same file, the second cvs commit
can cause cvs to leave two versions of the same line(s) in place, with extra lines that have '>>>>>' or '<<<<<' in them.
Do cvs log thefileinquestion
and see what the commit history looks like. You may see the problem there.
It seem that someone forced a commit, but there were conflicts. You should check who committed this version, because it is a signal of uneducated use of CVS.
If the cvs status
or a failing cvs commit
indicates unresolved conflicts you have to search through the conflicting file for >>>>>>
lines and decide on which of the two conflicting parts (on until ++++
the other from that to <<<<
) is the valid one, edit and merge the 'unconflicted' version.
You can also use xxdiff to unmerge these conflicts. That program is also availble with many distros