Conflict on commit (was RE: [cvsnt] Re: How do I commit again after using cvs update -rpre-bookmark?)
torsten at tiscali.dk
Sat Oct 30 21:40:17 BST 2004
Siegfried Heintze wrote:
>So I try CVS UPDATE -r HEAD header.h.
Use "cvs update -A header.h" instead (like you wrote below).
>This does a merge. Why does this do a
>merge? I thought -j does a merge.
"cvs update" always does a merge if necessary, i.e. if a new revision
has been committed since you last updated the file in question.
>I resolve the merges and I try to commit
>again and it still complains that the header.h file is not a branch! Why?
>So then I CVS LOG header.h and see that 1.5 is the latest. So then CVS
>UPDATE -r 1.5 header.h and then try to commit. No luck, same error. Why?
Because "cvs update -r" tells CVS that you want to get that specific
revision and *stay* on that revision.
>So then I try CVS UPDATE -A header.h and then CVS COMMIT and I get the
>error: "cvs server: file 'header.h' had a conflict and has not been
>modified". I don't why it says that. The source code compiles.
In rare cases, CVS might get confused regarding whether there really is
a conflict - if there are no conflict markers in the file (even if the
file compiles, there could still be a conflict inside an #ifdef or a
comment - search for ">>>"), just e.g. add a space, delete the space,
and save the file again.
More information about the cvsnt