monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Monotone-devel] Re: How do I merge 2 unrelated branches into 1 ?


From: Larry Hastings
Subject: Re: [Monotone-devel] Re: How do I merge 2 unrelated branches into 1 ?
Date: Fri, 06 Oct 2006 12:24:19 -0700
User-agent: Thunderbird 1.5.0.7 (Windows/20060909)


Bruce Stephens wrote:
"Dmitry Kakurin" <address@hidden> writes:
  
I also wonder why keeping track of dirs is necessary. Perforce (for
example) gets away with only keeping track of files and creates dirs
on demand.
    
Monotone did that (pre 0.26).  It turned out that tracking directories
as well would make some things better.
It's definitely better.  Since Perforce can't tell the difference between a file and a directory, sooner or later you always seem to wind up with a file checked in that shares the name of a directory.  Back in the day when I used Perforce (2002.1 iirc), if you said
    p4 add foo
and foo was a subdirectory, Perforce would just *assume* it was a file.  An unpleasant shock for the first-time user coming from another SCM that does explicitly support directories.

But even the seasoned Perforce user might stumble across this; if they ran
    p4 add *
it would happily add *all* the subdirectories.

Once a directory is checked in, it becomes a race to see who gets created first, the "foo" file or the "foo" directory.  Whichever one wins the race means the other one loses ("can't write file"), at which point the checkout fails.  Now you have to fix it in the repository before you can checkout, as you mutter quietly to yourself about SCMs that don't understand freaking *subdirectories*, they've only been around for more than thirty years, grumble grumble grumble.

I believe they had a hack that said "if the last character of a file specified to p4 add is a /, ignore it", relying on the globbing of some shells that add the slash there.  Globbing under Windows doesn't add that, so that didn't help me.  I dimly wonder if they have a better fix in place now, but I stopped following Perforce years ago.


larry

reply via email to

[Prev in Thread] Current Thread [Next in Thread]