[cvsnt] Re: Mergepoints & Binary files
Tony Hoyle
tmh at nodomain.org
Fri Jun 4 15:14:47 BST 2004
On Fri, 4 Jun 2004 15:00:29 +0100, "Harrison, Andrew"
<andy.harrison at anite.com> wrote:
>> From: Tony Hoyle [mailto:tmh at nodomain.org]
>>
>> There are two parts to a mergepoint:
>>
>> 1. The automatic tagging, which is done by the client sending the tags
>> from the last merge back to the server during commmit. That's what
>> adds the 'mergepoint1' data to the RCS file.
>> 2. The merging itself, which is part of the general merging algorithm
>> - the mergpoint acts as a stopping point when looking for the range of
>> revisions to merge with.
>>
>> Binary files get (1) but they don't get (2) as they're never merged.
>
>Ok. I know that the binary files don't get merged, but they do get copied.
>Why can't the mergepoint that gets written in (1) be used?
>
>As I understand it, when merging branch1 -> branch2, the following rule
>applies to binary files:
>
> if binary file has changed in branch 1 since branchpoint
> copy binary file from branch 1 into (branch 2) sandbox
> if binary file has changed in branch 2 since branchpoint
> raise conflict
> end if
Nothing so complex...
For a binary file a merge is always a conflict. In practice this
means that if the version in the sandbox is different from the latest
version then you will conflict.
There is no branchpoint/mergepoint logic involved with a binary file
as it's never needed.
Tony
More information about the cvsnt
mailing list