Re: VCS comparison table
From: Jakub Narebski <hidden>
Date: 2016-06-15 22:42:43
Robert Collins wrote:
On Tue, 2006-10-17 at 01:45 +0200, Johannes Schindelin wrote:quoted
If you really, really think about it: it makes much more sense to record your intention in the commit message. So, instead of recording for _every_ _single_ file in folder1/ that it was moved to folder2/, it is better to say that you moved folder1/ to folder2/ _because of some special reason_!Just a small nit here: bzr does /not/ record the move of every file: it records the rename of folder1 to folder2. One piece of data is all thats recorded - no new manifest for the subdirectory is needed. Of course, a user can choose to move all the contents of a folder and not the folder itself - its up to the user. By recording the folder rename rather than the contents rename, we get merges of new files added to folder1 in other branches come into folder2 automatically, without needing to do arbitrarily deep history processing to determine that.
Hmmm... I wonder how well git manages that (merge with renamed directory).
folder1/a --> folder2/a --------> folder2/a
folder1/b --> folder2/b / folder2/b
\ / folder2/c
\-------> folder1/a ---/
folder1/b
folder1/c
I wonder how bzr manages "separate some files into subdirectory" (and how
well git does that), i.e. we have
sub-file1
sub-file2
filea
fileb
In the 'main' branch we separated "sub-*" files into subdirectory
sub/file1
sub/file2
filea
fileb
How would that merge with adding new sub-* file on the branch to be merged?
sub-file1
sub-file2
sub-file3
filea
fileb
Or how bzr manages sub-level movement, such as splitting file into two,
or joining two files into one file.
P.S. is anyone working on --follow option for renames following path
limiting?
--
Jakub Narebski
Warsaw, Poland
ShadeHawk on #git