<br><br><div class="gmail_quote">On Wed, Mar 5, 2008 at 4:51 PM, David Brown <<a href="mailto:lisp@davidb.org">lisp@davidb.org</a>> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="Ih2E3d">On Wed, Mar 05, 2008 at 11:24:42AM -0800, Steve Morin wrote:<br>
<br>
>I have worked on branches in cvs svn and perforce. I don't know so please<br>
>educate me how do these other version control systems make a marked<br>
>improvement in branching and distributed development?<br>
<br>
</div>They're all broken in different ways, but it all boils down to not storing<br>
enough metadata with the branch/merges. CVS and Perforce share in that<br>
they track files individually, not directories. This breaks down when<br>
there are renames and such in one branch. SVN doesn't store merge history,<br>
so has to be told what might be a common ancestor for a merge.<br>
</blockquote><div><br>I agree with you here. For just about everyone merging is always a frustrating process. Currently I am working on a project with svn where I have to merge with 3 seperate branches and trunk not fun. This I don't know much about other techniques but, here I would need the ability to make a change in one branch and apply it to the two other branches and trunk. This needs to be very flexible.<br>
<br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>
None of them do distributed development, they only let other developers<br>
connect remotely. Each still checks out and checks into a single repo. A<br>
distributed system allows me to create my own branches without even needing<br>
write permission on a central repo.<br>
</blockquote><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>
Without using and understanding a distributed revision control system, it's<br>
hard to understand why it is so much more powerful and useful. It is<br>
really a much better way of working.</blockquote><div><br>I have done to a couple presentations on Mecurial but If people are working on a common project I am not sure there is a
usual need to create your own branch. If I am doing work I am not
sharing with others I get my own copy or setup my own repository.
Otherwise I am usually commiting to the main project, and work the with
project maintainer for a branch if it's a serious effort that needs
that or else you for the project if you can't see eye to eye with the
"establishment"</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>
We use Perforce at my work. Most of us on my team use a Perforce->git<br>
gateway to be able to do useful tracking and distributed development.<br>
<font color="#888888"><br>
David<br>
</font></blockquote></div><br>