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

Re: Your favorite version control software



On 2011-03-25 11:39:17 Jason Hsu wrote:
>Why do you prefer Subversion for the central repository and git for laptops?

I can think of at least one reason: history.  I haven't checked the default 
settings recently, but I seem to remember that git allowed "forced" pushes by 
default.  This is great for your personal repositories, but not usually good 
for central repositories since a "forced" push can cause loss of history.  
Perhaps forced pushes are turned off when you create a shared / bare 
repository now; few central repositories are not created as one (or both) of 
these types.

For laptops, or in any case where you may not have an active, reliable 
connection to the central repository, subversion just fails.  You can't 
commit, branch, etc.  All of the distributed VCSes support disconnected 
operations, even if they aren't the default.

I prefer not-subversion for the central repository when developers are using a 
distributed VCS in practice.  Subversion forces the history to be linearized, 
which often involves what git calls a "rebase".  Whatever your DVCS calls it, 
it makes new "revisions/patches" that whose relationship with the original 
ones are not tracked.  Requiring this process before getting changes into the 
central repository can limits some of the effectiveness of the DVCS model.  
(Last I heard though, PostgreSQL forces this behavior even though they are 
using a DVCS to manage their central repository; there were enough developers 
that found a linear history easier to work with that it became policy.)
-- 
Boyd Stephen Smith Jr.           	 ,= ,-_-. =.
bss@iguanasuicide.net            	((_/)o o(\_))
ICQ: 514984 YM/AIM: DaTwinkDaddy 	 `-'(. .)`-'
http://iguanasuicide.net/        	     \_/

Attachment: signature.asc
Description: This is a digitally signed message part.


Reply to: