You are not logged in.

#1 2007-09-25 06:17:31

drakosha
Member
Registered: 2006-01-03
Posts: 253
Website

which revision control system?

I'm familiar with CVS and some proprietary tool i use at work. I want to set up a repository for two reasons - my home development and learning one more revision control. What do u use at home and why? What would u recommend?

Offline

#2 2007-09-25 07:59:50

chicha
Member
From: France
Registered: 2007-04-20
Posts: 271

Re: which revision control system?

Hello drakosha,

I have had the same questions as you just a few weeks ago smile

At work we intensively use CVS. It is a great tool but it is old and not developed anymore. It also lack some functionalities such renaming. Branching, merging, fallbacking are also not very easy with CVS.

SVN is an active project, which aims at replacing CVS. It is a very good alternative to CVS, imho. Things that were a bit tricky on CVS are a bit simpler with SVN. But it still is a centralized source contain management, and all the base concepts are exactly the same between CVS and SVN.

I started interest my self in what is called a "de-centralized source contain management". To make it short : developers have their own copy of the repository, allowing to work in your corner on a project without disturbing others. Of course you can synchronize your work with other people on a server (like CVS). But you can also synchronize your work with only one person, without impacting others ... Also branching and merging are a lot easier.

"de-centralized" source contain management seem to be the next generation of such tools, and are becoming more and more popular.

3 (Free off course ) softwares are taking the lead :

- Git : Developed by Linus Torvald himself for the Kernel developement.
- Mercurial (HG) : Developed by a company.
- Bazaar : Developed by Canonical (shall I present them ?).


Here are the common pros and drawbacks you will find for those tools :

- Git : Very powerfull but documentation not very well organized, not very easy for a beginner.
- Mercurial : Very similar to Git, well documented, easy to use.
- Bazaar : Well documented, easy to use, but very slow compared to Mercurial and Git.

Git and Mercurial are taking the lead. Git is used by the Kernel, Xorg and others. Mercurial is used by Mozilla, Open Solaris and others.

As you see they are both very serious projects !

I have tried Mercurial, because I wanted a very easy to use software. I can say that it is really easy to install and use. No need to have a server to configure or run for a personal use at home. You can also find a free hosting solution for mercurial repositories if you want to share your sources with other people at sharesource.org

I really recommand Mercurial for a beginner, and now concidere CVS and SVN as disonaures tongue
I am no more afraid to get back to a previous version or to merge a branch, it is very easy !

I hope it helped !
Cheers,

Chicha

Offline

#3 2007-09-25 09:13:34

Ramses de Norre
Member
From: Leuven - Belgium
Registered: 2007-03-27
Posts: 1,289

Re: which revision control system?

I'm using svn frequently and I find it very good for what it's intended for. I'm not familiar with the newer technologies (git, mercurial, bazaar) though, they might be a better alternative when you're learning something new anyway.

Offline

#4 2007-09-25 09:40:04

bboozzoo
Member
From: Poland
Registered: 2006-08-01
Posts: 125

Re: which revision control system?

For centralised CVS is obsolete, SVN works fine for me. You'll get by with a limited number of commands:

svnadmin create
svn import
svn commit
svn update
svn resolved
svn -u status

Then for decentralised I have tried git, but couldn't get used to it. There's always SVK which is like decentralised SVN, worth checking out.

Last edited by bboozzoo (2007-09-25 09:40:19)

Offline

#5 2007-09-25 11:34:44

lang2
Member
Registered: 2006-02-10
Posts: 386

Re: which revision control system?

I've used svn, darcs, and am using git right now. For personal use without much merging, they're all fine. But git performs much better than the other two.

Offline

#6 2007-09-25 13:21:54

kensai
Member
From: Puerto Rico
Registered: 2005-06-03
Posts: 2,484
Website

Re: which revision control system?

Well, I find git performance to be top notch, so even if I'm not a master of version control systems, I can add that git is very good performance wise, in my case it outperforms svn.


Follow me in: Identi.ca, Twitter, Google+

Offline

#7 2007-09-25 14:37:09

bboozzoo
Member
From: Poland
Registered: 2006-08-01
Posts: 125

Re: which revision control system?

kensai wrote:

Well, I find git performance to be top notch, so even if I'm not a master of version control systems, I can add that git is very good performance wise, in my case it outperforms svn.

what do you mean by performance?

Offline

#8 2007-09-25 15:00:34

drakosha
Member
Registered: 2006-01-03
Posts: 253
Website

Re: which revision control system?

Chicha and all the others, thanks a lot!

Offline

#9 2007-10-01 17:32:07

lovedaddy
Member
From: Sunderland, UK
Registered: 2005-12-24
Posts: 1

Re: which revision control system?

So which version control system, ideally distrubuted, would people use for code and binary asset management (possibly upwards of 2TB of data?)

At work we are using SVN for code, and a custom SQL based solution for assets.  However, I've been pushing to have them merged as one system, but whilst I'm on, I'd like to get rid of most of the headache we have with out sourced assets by having a distributed system.

Pointers?  Anyone have any experience?

Cheers

Offline

#10 2007-10-01 17:55:11

kensai
Member
From: Puerto Rico
Registered: 2005-06-03
Posts: 2,484
Website

Re: which revision control system?

bboozzoo wrote:

what do you mean by performance?

Sorry for late reply, I think it isn't performance really I just didn't expressed the point to well, what I meant was that svn thesite.org took some time, and whet that site changed to git, git thesite.org was faster for me to get everything. But this as well might be placebo effect big_smile.


Follow me in: Identi.ca, Twitter, Google+

Offline

#11 2007-10-01 23:35:50

tam1138
Member
Registered: 2007-09-10
Posts: 238

Re: which revision control system?

I hate CVS.  I really like perforce, but I prefer using open-source stuff where I can.  I've tried monotone, but I found it too cumbersome.  I'm currently playing with mercurial and I like it so far.

Offline

#12 2007-10-02 04:51:51

phrakture
Arch Overlord
From: behind you
Registered: 2003-10-29
Posts: 7,879
Website

Re: which revision control system?

Just adding some info in here:
http://projects.archlinux.org/git/

Most of us that are going to be moving forward with these Arch projects are leaning on git. We seem to have a lot of zealots for version control.

(PS we're not clear on the direction for the repos, so don't think I'm saying we're moving the repos to git.... yet, heh)

Offline

#13 2007-10-02 08:00:33

bboozzoo
Member
From: Poland
Registered: 2006-08-01
Posts: 125

Re: which revision control system?

ok, I recently started using git for a couple of my project and it seems to be nice. actually even if you happen to break the commit it's easy to fix smile

Offline

#14 2007-10-02 16:17:36

phrakture
Arch Overlord
From: behind you
Registered: 2003-10-29
Posts: 7,879
Website

Re: which revision control system?

bboozzoo wrote:

ok, I recently started using git for a couple of my project and it seems to be nice. actually even if you happen to break the commit it's easy to fix smile

The thing that sold me on git (other SCMs have this feature now) were the fast local branches and merging capability.

See, here's how I work.

git checkout master # switch to the master branch
git pull # update master branch
git checkout -b feature-a # create a new branch and switch to it
... make changes ...
git commit -a -s # commit everything and sign off
git checkout master # switch back
git merge feature-a

You can also throw a rebase in there if the master branch changed during your changes.

Offline

#15 2007-10-02 17:39:57

efleming969
Member
Registered: 2007-03-14
Posts: 39

Re: which revision control system?

FLOSS "not so weekly" has a good podcast on git (http://www.twit.tv/floss19), if anyone is interested.  Most of the projects i work on use subversion, but git can act as a subversion client (it's pretty cool).

Last edited by efleming969 (2007-10-02 17:40:28)

Offline

#16 2007-10-02 19:19:35

buttons
Member
From: NJ, USA
Registered: 2007-08-04
Posts: 620

Re: which revision control system?

+1 for the FLOSS podcast.  I had a listen and, not having used revision control before (ever), decided to give git a try.  In a day all my projects were on git.  Don't be discouraged by the decentralized/centralized bit if you're not used to it, git will happily be both if you like.  Simply "git push" and all your changes can be pushed to the origin you cloned them from.  It's quite a neat trick at work where I can't ssh in.  Then, I can use the decentralized method to work at home or on my laptop on the road.

Also, what silly version control won't let you create new directory hierarchies without forgetting which file is which? I change my directory trees and rename files all the time.  Git doesn't care, and keeps track of trees and files by hash, not by name.


Cthulhu For President!

Offline

#17 2007-10-03 18:24:15

codemac
Member
From: Cliche Tech Place
Registered: 2005-05-13
Posts: 794
Website

Re: which revision control system?

phrakture wrote:

See, here's how I work.

git checkout master # switch to the master branch
git pull # update master branch
git checkout -b feature-a # create a new branch and switch to it
... make changes ...
git commit -a -s # commit everything and sign off
git checkout master # switch back
git merge feature-a

You can also throw a rebase in there if the master branch changed during your changes.

Well, I'll probably still be using mercurial for anything that I head up... I like that it can run on other os' besides GNU/Linux easily.  In the event I do a project that more than just ArchLinux users might want to look at.

But looking at your workflow, git's ui is finally getting to a point that it's not gonna matter so much to me if I'm using git or merucurial... though is there anything for git that works like MQ(a patch queue thing) for mercurial?  hg qinit, hg qrefresh, hg q<command> stuff is awesome.  It's like a WAY better git stash.

Offline

#18 2007-10-05 15:55:52

phrakture
Arch Overlord
From: behind you
Registered: 2003-10-29
Posts: 7,879
Website

Re: which revision control system?

codemac wrote:

though is there anything for git that works like MQ(a patch queue thing) for mercurial?  hg qinit, hg qrefresh, hg q<command> stuff is awesome.  It's like a WAY better git stash.

Not sure what you mean - I haven't used mercurial enough to understand this feature - could you explain it?

Offline

#19 2007-10-05 20:33:49

cactus
Taco Eater
From: t͈̫̹ͨa͖͕͎̱͈ͨ͆ć̥̖̝o̫̫̼s͈̭̱̞͍̃!̰
Registered: 2004-05-25
Posts: 4,622
Website

Re: which revision control system?

I believe it holds individual patches, which you can take off or lay on as you want.

git has rebase and easy local branching and pulling, so it presents an alternate workflow for the many-individual-patch-management methodology.

I think quilt on git started it, and mercurial used the idea to make a plugin (mq). Not sure if that timeline is accurate though.


"Be conservative in what you send; be liberal in what you accept." -- Postel's Law
"tacos" -- Cactus' Law
"t̥͍͎̪̪͗a̴̻̩͈͚ͨc̠o̩̙͈ͫͅs͙͎̙͊ ͔͇̫̜t͎̳̀a̜̞̗ͩc̗͍͚o̲̯̿s̖̣̤̙͌ ̖̜̈ț̰̫͓ạ̪͖̳c̲͎͕̰̯̃̈o͉ͅs̪ͪ ̜̻̖̜͕" -- -̖͚̫̙̓-̺̠͇ͤ̃ ̜̪̜ͯZ͔̗̭̞ͪA̝͈̙͖̩L͉̠̺͓G̙̞̦͖O̳̗͍

Offline

#20 2007-10-06 19:46:25

elasticdog
Member
From: Washington, USA
Registered: 2005-05-02
Posts: 995
Website

Re: which revision control system?

It's basically the same as Stacked GIT...

Offline

Board footer

Powered by FluxBB