Changes between Version 4 and Version 5 of Notes/SubversionAndRCS
- Timestamp:
- 02/08/08 13:54:37 (16 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Notes/SubversionAndRCS
v4 v5 4 4 5 5 1) The one-to-one association between a file and its RCS version (,v) file is used by the Miriad makefiles to define rules that 6 keep the plain-text sources up-to-date automatically. These 7 rules are used explicitly when rebuilding the system and 8 implicitly in the dependency analysis. For example, an included 9 header file (.h) is checked out automatically if necessary, even 10 if it resides in a different directory, simply by appearing as a 11 dependency of the target. Without a one-to-one association, there 12 is no way to implement these rules in svn. 6 keep the plain-text sources up-to-date automatically. These rules are used explicitly when rebuilding the system and 7 implicitly in the dependency analysis. For example, an included header file (.h) is checked out automatically if necessary, even if it resides in a different directory, simply by appearing as a dependency of the target. Without a one-to-one association, there is no way to implement these rules in svn. 13 8 14 9 2) There is no equivalent for gmake's inbuilt rule to update the makefile and no way to implement it short of hacking gmake itself 15 10 because it must work in the absence of any makefile. 16 11 17 3) Per-file versioning in RCS has been replaced by global versioning in svn which, for Miriad, involves a loss of historical information. 18 In contrast, the effect of global versioning is available in RCS via the '-d' option specifying a date. 12 3) Per-file versioning in RCS has been replaced by global versioning in svn which, for Miriad, involves a loss of historical information. In contrast, the effect of global versioning is available in RCS via the '-d' option specifying a date. 19 13 20 4) Version dates for revisions 0.0 to 1.0 in the svn repository are incorrect, apparently because svn and/or cvs2svn appear to require 21 that increasing global version numbers correspond to increasing times. RCS does not have this limitation. 14 4) Version dates for revisions 0.0 to 1.0 in the svn repository are incorrect, apparently because svn and/or cvs2svn appear to require that increasing global version numbers correspond to increasing times. RCS does not have this limitation. 22 15 23 5) Lack of per-file versioning will make it inconvenient to perform the common task of determining at what revision a particular change 24 to a source file was made. Currently I do a binary chop on the RCS version number for the file, but with svn, changes to a file are tagged with non-consecutive global version numbers. 16 5) Lack of per-file versioning will make it inconvenient to perform the common task of determining at what revision a particular change to a source file was made. Currently I do a binary chop on the RCS version number for the file, but with svn, changes to a file are tagged with non-consecutive global version numbers. 25 17 26 18 6) Presumably because of global versioning, 'svn log' provides no indication of the extent of changes made to a file at each