[Adium-devl] Version control

David Smith catfish.man at gmail.com
Mon Oct 8 08:22:18 UTC 2007


On Oct 8, 2007, at 12:46 AM, Colin Barrett wrote:

> On Oct 7, 2007, at 11:54 PM, David Smith wrote:
>
>> 	So, I'm looking at this tutorial, and it looks just dreadful. Almost
>> no vocabulary commonality between it and svn, most of the commands
>> appear to be significantly more complex/less readable (say, mtn --
>> db=abe.mtn sync jim-laptop.juicebot.co.jp "jp.co.juicebot.jb7*" vs.
>> "svn checkout svn://svn.adiumx.com/adium/trunk"), the output is
>> somehow both more verbose but less useful (no, I don't care about the
>> number of bytes that came in. I do, however, care about which files
>> changed) and things that used to be single step operations are often
>> now two.
>
> If you mean that "committing" is now "commit" and then "push" well,
> that's just the price you have to pay with a DVCS. If you're talking
> about something specific to MTN
>
> What about the first two points I mentioned? Any thoughts on those?
>
> -Colin

I'm fine with both 0 and 1. As for "just the price you have to pay", I  
would definitely be in favor of taking into account all costs relative  
to the current approach, not just those unique to mtn. You'll hear the  
same bitching from me about the other DVCSs if they're brought up :)  
Same goes for the revision number thing.

I have constructed a partial list of what I consider to be frequent  
and infrequent things I do with version control. The principle I'm  
working from is that everything in the frequent list should be very  
simple, and as short as possible. The rest are less important. These  
are all a single command in svn except local commit (which doesn't  
exist, of course), but some of them are definitely worse than I would  
like. In particular the merge syntax is quite arcane, and my setup for  
'local branches' is just duplicate checkouts that I cd between when  
needed.  I haven't looked up the mtn equivalents for all of these yet.

"fast path" tasks:

Local Commit of Some Files
Remote Commit of Some Files
Update of All Files
Add File
Get Diff of Changes
Get Diff of Changes in a Revision
Get Log Entry for a Revision
Get All Log Entries for a File, Directory, or Checkout
Get List of Changed Files
Merge Patch to Maintenance Branch
Create Clean Local Copy
Switch To Patch-In-Progress Local Copy
<others?>

less frequent tasks:

Create Remote Branch
Merge Branch Into Trunk
Local Commit of All Files
Remote Commit of All Files
Get Diff of Changes in a Revision Range
Anything Involving svn blame
<others>

					David




More information about the devel mailing list