Thread Tools Display Modes
12-07-11, 03:56 PM   #1
Gregity
A Wyrmkin Dreamwalker
AddOn Author - Click to view addons
Join Date: Oct 2007
Posts: 54
To Git or to SVN, that is the question

I've started working on a larger project and I'm wondering which version control system I should use?

I've seen discussions on SVN (Which I've heard of) and GIT (Which I haven't heard of).

I haven't seen a discussion comparing the pros and cons of each and why I should choose one or the other.

Looking for some input before I decide.

Thanks all!

-g
  Reply With Quote
12-07-11, 04:21 PM   #2
Rilgamon
Premium Member
 
Rilgamon's Avatar
Premium Member
AddOn Author - Click to view addons
Join Date: Sep 2009
Posts: 822
I started myself a while ago using svn for my addons. The choice was easy as most libraries I use for my addons are svn repositories,too and so its easier to keep everything updated

I think for a starter both systems are equaly "easy" and offer the same tools.
But with TortoiseSVN there is a really easy/powerfull helper in a windowsenvironment.
__________________
The cataclysm broke the world ... and the pandas could not fix it!
  Reply With Quote
12-07-11, 06:32 PM   #3
Tuller
A Warpwood Thunder Caller
 
Tuller's Avatar
AddOn Author - Click to view addons
Join Date: Dec 2005
Posts: 91
SVN (with Tortoise) is still more user friendly on Windows than Git. Git offers more control, and nicer hosting options, I think.
  Reply With Quote
12-07-11, 06:52 PM   #4
Gregity
A Wyrmkin Dreamwalker
AddOn Author - Click to view addons
Join Date: Oct 2007
Posts: 54
I am definitely Windows-centric so I need a good windows interface for whatever I do.
  Reply With Quote
12-07-11, 06:57 PM   #5
Torhal
A Pyroguard Emberseer
 
Torhal's Avatar
AddOn Author - Click to view addons
Join Date: Aug 2008
Posts: 1,196
There's always SmartGit.
__________________
Whenever someone says "pls" because it's shorter than "please", I say "no" because it's shorter than "yes".

Author of NPCScan and many other AddOns.
  Reply With Quote
12-07-11, 07:55 PM   #6
Phanx
Cat.
 
Phanx's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2006
Posts: 5,617
There's also TortoiseGit, a TortoiseSVN clone for Git.

Personally, I use SVN, and find Git extremely annoying to work with.

1) SVN's workflow seems more logical: there is a single master repository on the server, I check out a local copy, I make changes to my local copy, and then I commit my changes to the central repository. Git's workflow is more complicated, and does not seem logical at all, especially for a single-author project.

2) SVN's revision numbers are directly usable as addon version numbers, and are intrinsically useful when providing support. For instance, if someone reports a problem with "r12" of my addon, but I know that I just released "r16", I immediately know that they are running an out-of-date copy and can tell them to update.

By contrast, Git identifies "revisions" with long hash strings that are useless for version numbering, and do not provide any information on their own. For instance, "e515c869e9ec8c6cbdfe252a5391d69e484c5234" is basically meaningless gibberish. In order to have any idea what it referred to, you would need to go look up a list of commits in your repository log.

3) Most libraries are hosted in SVN repositories, and svn:externals is infinitely easier to work with than either of the "equivalent" features Git offers.
  Reply With Quote
12-07-11, 08:31 PM   #7
yj589794
A Rage Talon Dragon Guard
AddOn Author - Click to view addons
Join Date: Mar 2009
Posts: 314
If your already familiar with a revision control system and it does everything you want it too, then use that one.

If it's a case of looking for a new RCS that supports you needs, then in this case use SVN. The libraries you will be using are already in SVN, so save a lot of pain and use the same RCS.

I personally think Git is brilliant but unless you have a need for a distributed revision control system, with all power and headaches they bring, it's not worth the effort over something that is as capable as SVN (at least for the situation the OP describes).
  Reply With Quote
12-07-11, 11:50 PM   #8
Ketho
A Pyroguard Emberseer
 
Ketho's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2010
Posts: 1,026
I've used both SVN first and Git afterwards, and while I can't give detailed reasoning like Phanx, and myself only having single-author projects, it might depend on what you're more used to. otherwise I'd say start with SVN :|
  Reply With Quote
12-08-11, 02:13 AM   #9
Gregity
A Wyrmkin Dreamwalker
AddOn Author - Click to view addons
Join Date: Oct 2007
Posts: 54
Great Info!

Thanks. It sounds like the TortiseSVN is going to be up my alley. Both would be free for me to use for non-profit work like this. SmartGit looked really good also.

-g
  Reply With Quote
12-08-11, 08:39 PM   #10
Phanx
Cat.
 
Phanx's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2006
Posts: 5,617
SmartGit (and SmartSVN) are free for non-commercial use, but after 30 days some functionality is disabled. Also, SmartSVN can't handle SVN 1.7 working copies yet. I have both installed on a USB stick for use when I'm not at home, but only because there isn't a portable TortoiseSVN/TortoiseGit.
  Reply With Quote
12-08-11, 10:36 PM   #11
Katae
A Cobalt Mageweaver
AddOn Author - Click to view addons
Join Date: Jun 2007
Posts: 208
I use Git whenever possible, but I manage files exclusively via the shell. I hear great things about TortoiseSVN for Windows. TortoiseGit looks promising.
  Reply With Quote
12-09-11, 01:56 PM   #12
lokyst
A Deviate Faerie Dragon
 
lokyst's Avatar
AddOn Author - Click to view addons
Join Date: Jun 2006
Posts: 16
I'm just setting up Git for the first time and I was wondering, is it possible to do a beta release from WowInterface with Git? I see instructions for creating a beta release under SVN but no such instructions under the Git help.
  Reply With Quote
12-09-11, 02:28 PM   #13
Zidomo
A Cliff Giant
 
Zidomo's Avatar
Join Date: Apr 2006
Posts: 76
Despite it being "less advanced", like Phanx I find GIT annoying to work with. At least in a workplace enviroment here. Have always preferred SVN.

One Windows option for GIT that hasn't been mentioned yet that I currently use: Git Extensions. 100% free/GPL open source, been around for quite a while, is regularly updated and works from Windows Explorer like TortoiseSVN does. Find it a lot more convenient to use than, say, msysgit. And looks to be more stable than TortoiseGIT (though I haven't tested that).

For SVN, the #1 Windows choice is as others have mentioned: TortoiseSVN (also 100% free/GPL open source).

Last edited by Zidomo : 12-09-11 at 02:35 PM.
  Reply With Quote
12-09-11, 04:24 PM   #14
p3lim
A Pyroguard Emberseer
 
p3lim's Avatar
AddOn Author - Click to view addons
Join Date: Feb 2007
Posts: 1,710
Tekkub has hinted about a Windows-native github.com client, until that I am using msysgit with mintty terminal.
  Reply With Quote

WoWInterface » Developer Discussions » General Authoring Discussion » To Git or to SVN, that is the question


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off