Daniel L. Rall wrote:
> On Tue, 20 Nov 2007, C. Michael Pilato wrote:
>
>> Daniel L. Rall wrote:
>>> On Mon, 19 Nov 2007, cmpilato@tigris.org wrote:
>>>
>>>> Author: cmpilato
>>>> Date: Mon Nov 19 20:28:57 2007
>>>> New Revision: 27939
>>>>
>>>> Log:
>>>> Allow disabling of mergeinfo considerations with the --ignore-ancestry
>>>> option to 'svn merge'. This allows folks to effectively force merges
>>>> that mergeinfo would otherwise prevent without sacrificing the
>>>> recording -- and therefore, future consideration -- of the merge.
>>>>
>>>> * subversion/libsvn_client/merge.c
>>>> (notification_receiver): Add some comments.
>>>> (filter_reflected_revisions, filter_merged_revisions,
>>>> populate_remaining_ranges): Add note about only calling this
>>>> function when honoring mergeinfo.
>>>> (calculate_remaining_ranges): Lose 'same_repos' argument, and add a
>>>> note about only calling this function when honoring mergeinfo.
>>>> (populate_remaining_ranges): Add 'honor_mergeinfo' parameter, and if
>>>> it isn't set, populate the remaining ranges with the whole
>>>> requested range. Update call to calculate_remaining_ranges().
>>>> (drive_merge_report_editor, do_directory_merge, do_file_merge): Grow
>>>> awareness of merge-tracking-disabled invocations.
>>> ...
>>>> @@ -3494,6 +3530,12 @@
>>>> apr_pool_t *subpool;
>>>> svn_boolean_t is_rollback = (revision1 > revision2);
>>>> const char *primary_url = is_rollback ? url1 : url2;
>>>> + svn_boolean_t honor_mergeinfo = (merge_b->sources_related
>>>> + && merge_b->same_repos
>>>> + && (! merge_b->ignore_ancestry));
>>>> + svn_boolean_t record_mergeinfo = (merge_b->sources_related
>>>> + && merge_b->same_repos
>>>> + && (! merge_b->dry_run));
>>> Mike, shouldn't sources_related (currently) imply same_repos?
>> I would have thought so, but apparently not. We have a regression test
>> aimed specifically at supporting merges from one repository into a working
>> copy of another repository altogether.
>
> We currently allow merging from one repository into another's WC (e.g. to
> support vendor branches), but we can't consider -- and so also shouldn't
> record -- mergeinfo in these cases, because we don't record a repository URL,
> only a path relative to the current repository.
Right.
I can't tell if you are trying to educate me or correct me. Was there a
problem with what I said?
You do realize that sources_related means "the left and right side of the
merge have an ancestral relationship", and same_repos means "the sources of
the merge come from the same repository as the target working copy", right?
So, sources_related and same_repos are truly independent of one another.
--
C. Michael Pilato <cmpilato@collab.net>
CollabNet <> www.collab.net <> Distributed Development On Demand
Received on Wed Nov 21 07:29:39 2007