<div>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">On 4/23/07, Rohit Rai &lt;<a href="mailto:rohitbrai@gmail.com">rohitbrai@gmail.com</a>&gt; wrote:<br>&gt; Point 1:
<br>&gt;<br>&gt; On the website it says,<br>&gt; Although Bazaar&#39;s major focus is software development, it can be used for<br>&gt; other kinds of projects, as well. It works best with textual files, like<br>&gt; source code, marked-up text ( 
e.g. HTML), and plaintext. It is less<br>&gt; effective with tree-structured data (e.g. XML), and is most limited in<br>&gt; dealing with opaque binary files (e.g. Microsoft Word documents).</blockquote>
<div>&nbsp;</div>
<div>How does Bazaar&nbsp;compare to SVN or the commercial SCMs like Perforce, Clearcase on this one? Means how weak/stromng it is in their comparison while dealing with non plaintext data. Specially, XML.</div><br>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">&gt;<br>&gt; I am preparing a model for implementing open source practices and tools to a<br>&gt; software factory. And I see distributed SCMs as the way to go. Out of all
<br>&gt; the distributed SVNs I have found Bazaar and Hg most appealing with various<br>&gt; features and an important criterion being support for Windows as well as<br>&gt; Linux OS.<br>&gt; But I am not sure about the maturity of these systems as compared to SVN and
<br>&gt; other client-server SCMs.<br><br>Alexander can tell you more about our Windows support - I think it is<br>pretty good.&nbsp;&nbsp;You can get an idea from the list that we do regularly<br>test on Windows and fix problems if they come up.&nbsp;&nbsp;Ian is working
<br>towards doing regular cross-platform tests.</blockquote>
<div>&nbsp;</div>
<div>Yes, that is one reason I hhave picked up Bazaar</div><br>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">&gt; On important consideration will be how well can these non text data in<br>&gt; comparison to SVN.<br>
&gt;<br>&gt; Point 2:<br>&gt;<br>&gt; I have a strong gut feeling and am analyzing the implementation using<br>&gt; automatic gatekeeper as the way to go, with might be a reviewer in between.<br>&gt;<br>&gt; So it is,<br>
&gt; developer -&gt; reviewer -&gt; gatekeeper -&gt; main repository line.<br>&gt;<br>&gt; Will this preserve the change history and logs from the developer unto the<br>&gt; main repository???<br><br>That is the model we use for developing Bazaar, and it works very
<br>well.&nbsp;&nbsp;People do their&nbsp;&nbsp;individual development on their own branch -<br>this can be either totally distributed, or it can be a bound branch<br>shared by a team if they want to work more closely as in cvs/svn.<br>When their work has got to a good stage of completion they post a
<br>bundle to the list for others to review.&nbsp;&nbsp;</blockquote>
<div>&nbsp;</div>
<div>Will the record log that developer XYZ had made the particular change be maintained when the PQM commits the paatch to the main repository, or everything on the main repository will show up as a commit/development done by the PQM. That is important with statistical point of view in a software 
company.At one location I have seen similar flow using&nbsp;SVN, but finally in the log we notice that all the commits are made by PQM, and the name of the original developer are lost.</div><br>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">We have a great tool Bundle<br>Buggy that keeps track of things that need review and what comments<br>have been made:
<br><br><a href="http://bundlebuggy.aaronbentley.com/">http://bundlebuggy.aaronbentley.com/</a><br><br>We normally require one core developer to review a change from<br>another, or two developers to review a change from a less experienced
<br>person.<br><br>After that the change goes to pqm (the patch queue manager), which<br>checks that all the tests pass.&nbsp;&nbsp;This includes some structural tests<br>like checking copyright statements, checking that particular
<br>constructs are not used and so on.&nbsp;&nbsp;Another installation at Canonical<br>makes checks depending on the project state - sometimes no database<br>changes are allowed.</blockquote>
<div>&nbsp;</div>
<div>The tool&#39;s cool :)&nbsp; What happenes when the patch is rejected?</div><br>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">It&#39;s more of a toolkit than the integrated solution of Aegis, but<br>being able to mix central control and close cooperation with
<br>distributed work is a very nice feature of Bazaar.<br><br>--<br>Martin<br></blockquote></div>
<div>I have been wondering about this thing for long, and these are a few questions I came up with,</div>
<p>But then I see quite few problems in this approach too, and wonder will the existing tools actually work in this manner,</p>
<ol>
<li>First problem is the commit time of the patch may be prolonged at reviewer of gateway post 
<li>Will all the histroy of modifications by the developer and his log comments be maintained?<br>
<li>There are a few interesting use cases when, Developer writes a patch and sends it to the reviewer and coninues writing his next patch. What code base should he write this patch against. The global base or his modified base? 
<ol>
<li>Suppose he writes it against the global code base, in the meanwhile, the reviewer and gatekeeper&nbsp; approve the patch1 and it makes to the global repos. Does the next patch that the developer sends apply to the global repos when it is sent? 
<li>Suppose he works against his local copy and generates patch2, in the meanwhile his patch1 is rejected and returned to him, he has to revert that patch and keep patch2, how does that work? Does the patch2 apply to the global codebase when approved? 
<li>How important is the sequence of patches?<br></li></li></li></ol>
<li>There are few other problems with respect to applying the patch at the global repos and it requiring manual help and stuff. 
<li>can you think of more??? </li></li></li></li></li></ol>
<div>Regarding to why I am thinking all this, you may visit my blog, <a href="http://mytechrantings.blogspot.com">http://mytechrantings.blogspot.com</a> where I have starteed writing a series of articles for the next generation software factory and role of Open Source systems in this.
</div>
<div><br>Kind regards,</div>
<div>Rohit<br clear="all"><br><br>&nbsp;</div>