Tue 18 Dec 2007 01:12:45 AM UTC, original submission:
Summarization of feature requests:
(detailed description follows in bottom part of this message:
1) Manual merge should be managed by merge ACTION.
I think, it is not good approach (logic & design) to join manual merge enforcement to "file & revision" couple using file attribute.
Plus: manual merge enforcement should be addressable to desired files during merge action.
2) Selection of appropriate merge tool should be file TYPE specific.
--------------------------------
Detailed description:
1)
Manual merge enforcement is currently implemented using mtn:manual_merge attribute which is specific per "file & revision" couple.
Such relationship (enforcing manual merge and "file & revision" couple) is not good from logical and design point of view. Manual merge is logically independent to "file & revision" couple.
Enforcement of manual merge should be managed by merge ACTION (mtn merge, mtn explicit_merge, ...) using reserved command line switch - for example:
"mtn explicit_merge rev1 rev2 branch --manual-merge=file1 --manual_merge=file2"
or
"mtn explicit_merge rev1 rev2 branch --manual-merge-all"
or some other analogical useful variation.
2)
Central configuration should allow to pre-configure binding between desired merge tool and file type - e.g.: M$ Word of OpenOffice for .doc files, AltovaXMLSpy for .xml *.html files, ...)
Approach of merge tool versus file type binding is very similar to approach used Rational ClearCase. It is proven by time, number of users and by big projects.
For example, well known binary files (like .so, .dll, .lib, .o(bj), ...) should be pre-configured to use some merge tool which allows to select left or right revision to make pure copy to resulting revision.
Unrecognized file types (unknown suffixes) should be evaluated for binary content in runtime (during merge action) and handled exactly like well known pure binary files.
Perhaps, sometime in future, there could be introduced special command line switch to select desired merge tool for desired file in current merge action.
Regards,
m3x
|