1. Post #1
    This title has been removed due to a copyright claim from Viacom Inc.
    neos300's Avatar
    July 2008
    3,486 Posts
    Personally, I feel that SVN is a better choice for me because I am the only one working on it, but I still use Git because of GitHub's nice stuff.

    Some info about these:
    Git and SVN are version control systems for managing code.
    They both have the ability to save multiple revisions of each file.
    SVN has a central server, and the client sends a commit of code to the server.
    Git has a central server, but you clone the servers repository to your computer, and commit to that, than sync that to the central server.
    SVN uses numbers (ie r1, r105, r142319843124321) to mark revisions, and they go in order.
    Git uses weird hash tags.

  2. Post #2
    Gold Member
    BlkDucky's Avatar
    May 2008
    6,498 Posts
    Using SVN at the moment. Considering switching to Git, but I don't think any of the advantages it has would be any use to me.

  3. Post #3
    I <3 OTTERS~
    Dennab
    July 2011
    9,935 Posts
    An Admin posted:
    • Posts/Threads: Don’t post just to proclaim your stance on the topic. An effort when making posts is required, we have higher-standards here. The OP also needs to be well-written instead of some two-liner shit.
    With that being said. I have no idea what Git is.
    I still would prefer SVN since I don't like to try out new things, and I often stay on page one happy that way.

  4. Post #4
    Icedshot's Avatar
    April 2010
    2,344 Posts
    Mercurial is best(est) in my opinion because it supports a bunch of features (i like the local push, then the push to the main repo from your local repo.), as well as being piss easy to use

    Is this a thread about version control generally or git and svn specifically?

  5. Post #5
    dajoh's Avatar
    March 2011
    625 Posts
    Git, it's very flexible, I can for example set up a bare Git repository in a Dropbox folder, then push/pull from that.

  6. Post #6
    Richy19's Avatar
    May 2010
    5,394 Posts
    Git support sucks on windows

  7. Post #7
    Gold Member
    esalaka's Avatar
    July 2007
    10,191 Posts
    Local commits are the biggest advantage I can think of, really, and branching. I think Torvalds once said he didn't think of git as a VCS but as a filesystem when he designed it, and I think that design really works. Everything you have from commits to files is an object.

    And it's decentralized, which might be a pro in itself. I prefer git but SVN has its good sides as well, such as being simply and quickly deployable and easy for the end-user.

  8. Post #8
    garry's Avatar
    September 2001
    12,401 Posts
    I'm still using SVN until a decent GIT solution is released for Windows.

  9. Post #9
    Gold Member

    October 2008
    3,838 Posts
    I've been using SVN for a long time now (thanks to Gmod addons and such), and I really like how easy it is to use (with TortoiseSVN), although all the .svn folders can get pretty annoying. Git seems really really confusing to me, and being a windows user, I could easily notice Git was made for Linux, not for Windows. That's why I currently prefer SVN.

  10. Post #10
    Gold Member
    esalaka's Avatar
    July 2007
    10,191 Posts
    Git support sucks on windows
    Not really, you just have to use a terminal. Git isn't designed to be used from a GUI. Most of its advanced functions are desgined to be used from a CLI

    Edited:

    I'm still using SVN until a decent GIT solution is released for Windows.
    By which you probably mean "proper IDE integration", am I correct?

  11. Post #11
    Gold Member
    danharibo's Avatar
    July 2006
    4,497 Posts
    I really prefer Git (and other DVCS) since there's no need for a server to do your work, a Git repository is a stand-alone repository and you can push to any other repository, much better than SVN's Client -> Server model.

  12. Post #12
    Icedshot's Avatar
    April 2010
    2,344 Posts
    I'm still using SVN until a decent GIT solution is released for Windows.
    Have you tried tortoisegit? The tortoise series of tools seems to be pretty good for version control on windows

  13. Post #13
    Gold Member
    danharibo's Avatar
    July 2006
    4,497 Posts
    Have you tried tortoisegit? The tortoise series of tools seems to be pretty good for version control on windows
    TortoiseGit is terrible, I've just been using Cygwin and Git alone, along with a 'Open Git Shell Here' shortcut in Explorer.

  14. Post #14
    garry's Avatar
    September 2001
    12,401 Posts
    TortoiseGIT still uses the ass backwards Cygwin stuff IIRC. It isn't so much a windows version of GIT, as a Linux emulator running GIT.

  15. Post #15
    This title has been removed due to a copyright claim from Viacom Inc.
    neos300's Avatar
    July 2008
    3,486 Posts
    TortiseGit works very well for me, only downside is no IDE stuff

  16. Post #16
    Gold Member
    Dr Magnusson's Avatar
    July 2008
    2,695 Posts
    Git support sucks on windows
    This is my experience as well.

    The interface just seems overly technical compared to SVN, specifically TortoiseSVN which I believe most of us are somewhat familiar with.

    I'm sure it comes with loads of advantages over subversion, but for projects of the size that I work with (usually not more than 3 people), it just doesn't seem worth the effort to switch to a much more complicated tool.

  17. Post #17
    Icedshot's Avatar
    April 2010
    2,344 Posts
    TortoiseGit is terrible, I've just been using Cygwin and Git alone, along with a 'Open Git Shell Here' shortcut in Explorer.
    Really? Shame, tortoisesvn and tortoisehg have both worked really well for me, so it was just a stab in the dark that tortoisegit wouldn't be awful

  18. Post #18
    Gold Member
    danharibo's Avatar
    July 2006
    4,497 Posts
    Really? Shame, tortoisesvn and tortoisehg have both worked really well for me, so it was just a stab in the dark that tortoisegit wouldn't be awful
    It is just tortoisesvn patched to work with Git, and a few extra forms. The patchwork shows.

  19. Post #19
    This title has been removed due to a copyright claim from Viacom Inc.
    neos300's Avatar
    July 2008
    3,486 Posts
    It is just tortoisesvn patched to work with Git, and a few extra forms. The patchwork shows.
    That's true, but it's not like it doesn't work.
    You do have to touch the console to get it to work (for example setting up github I had to do it), but normally you can just use the GUI and it's easy to use.

  20. Post #20
    Gold Member
    iPope's Avatar
    October 2008
    1,774 Posts
    In terms of the actual systems I like to think that simply SVN is simpler but GIT gives more control to the developers. I like the idea of local repositories connect to a central one but then I think that maybe it would just be easier to use SVN.

  21. Post #21
    Gold Member
    danharibo's Avatar
    July 2006
    4,497 Posts
    That's true, but it's not like it doesn't work.
    You do have to touch the console to get it to work (for example setting up github I had to do it), but normally you can just use the GUI and it's easy to use.
    It does work yes, I just found I preferred the CLI to using tortoisegit so I stick with that instead.

  22. Post #22
    Gold Member
    Eltro102's Avatar
    February 2008
    11,000 Posts
    as a rule I think that git is more useful to the programmers & devs whilst SVN is more useful to the end-use/client

    correct me if I'm wrong

  23. Post #23
    Gold Member
    Lexic's Avatar
    March 2009
    6,123 Posts
    TortoiseGit works fine for me. I installed the official Git For Windows, got the TortoiseGit version that integrates with PuTTY and GFW instead of anything else, adjusted PuTTY's default settings to autoload my key without a password and it's just as easy to use as TortoiseSVN.

    The main reason I prefer Git to SVN is that SVN repos instantly destroy themselves if you dare delete or rename files without doing it through SVN, and I've never been able to undestroy a repo without losing all my changes.

    Edited:

    To qualify, you have to tell SVN exactly what you've done as you do it, whereas with Git you say "I've done some stuff, go find out what it was."
    I love that.

  24. Post #24
    Gold Member
    ace13's Avatar
    August 2006
    955 Posts
    I'm mainly using msysgit myself, it works rather well as long as you're not afraid to run some shell commands every now and then. I'm hoping for better IDE integration though, GitHub and such just makes it that much more awesome than SVN.

  25. Post #25
    Gold Member
    Sam Za Nemesis's Avatar
    November 2007
    5,677 Posts
    I prefer SVN as it is much easier to set up, specially in Windows, The only downside of it in my opinion is that it fills your project folder with .svn files

  26. Post #26
    Gold Member
    Robber's Avatar
    January 2006
    6,124 Posts
    as a rule I think that git is more useful to the programmers & devs whilst SVN is more useful to the end-use/client

    correct me if I'm wrong
    What kind of end-user/client uses a source control system? :confused:

    Edit:
    I prefer SVN by the way. I'm much more experienced with it since we also use it at work and it has great Eclipse integration.

  27. Post #27
    Gold Member
    BlkDucky's Avatar
    May 2008
    6,498 Posts
    I prefer SVN by the way. I'm much more experienced with it since we also use it at work and it has great Eclipse integration.
    Wait, really? I tried it earlier and it kept corrupting my files when I tried to commit through Eclipse.

    Which doesn't really make sense...

  28. Post #28
    Gold Member
    Xeon06's Avatar
    September 2005
    1,223 Posts
    I used to use SVN then I switched to Git. Never going back. What I like most is the ability to partially commit some changes (you can even just commit a single change in a file where you changed a bunch of stuff), the ability to commit locally (so you can work without internet) and GitHub in itself is a big reason to switch to Git.

    I use Git on windows, with mysisgit, and I love it. Having a bash shell in Windows is pretty cool, you don't need to use dir instead of ls and all that. I don't understand why programmers need a pretty interface for a source control system. The command line is powerful and as a programmer, you shouldn't be affraid of it.

  29. Post #29
    Map in a box's Avatar
    July 2009
    7,310 Posts
    TortoiseGIT still uses the ass backwards Cygwin stuff IIRC. It isn't so much a windows version of GIT, as a Linux emulator running GIT.
    Basically, so does TurtoiseSVN. Afaik, it just runs the svn exe and pipes input/output.

    Edited:

    Personally, I prefer SVN. I don't need any of the extra features git has, SVN is simple and smooth enough for me.

  30. Post #30
    Gold Member
    robmaister12's Avatar
    January 2008
    4,969 Posts
    About git integration with IDEs:
    Eclipse has EGit, it's pretty good as of recently.
    MonoDevelop just recently (2 weeks ago) added integration with Git,
    Visual Studio has GitExtensions (decent, but I can never get it to connect to my server), and some other plugin to get Solution explorer to show git details, I've never gotten it to work though.

    On Windows, msysgit is decent. EGit uses a Java implementation of git, JGit, and it seems to run well on Windows. I think MonoDevelop uses a C# implementation of git, not sure though.

    SVN would be fine if I were working on projects by myself. I use git because I have 6-7 friends that I work on different projects with and it's a lot easier to manage all the branching/merging with git (IMO)

  31. Post #31
    Gold Member
    Jookia's Avatar
    July 2007
    6,768 Posts
    Git user here, when deciding my project was going to work on Windows and I was going to develop with somebody I tried to use SVN but it all came down to a horrible mess when I realized I couldn't do offline commits and that I had to have a central repo.

    I usually have 3 repos: One in a Windows VM, one in Linux, one on Google Code.

    My Windows and Linux repos have a 'win32' branch that the Windows VM uses, then in Linux I make sure the changes work in LInux, then commit it to my main branch as a single commit, then push it to Google Code without it having my hacky 'win32' branch.

    I also generally have a branch per new feature which I merge in later, I've heard that merging in SVN is a bad experience, but I've never done it.

    Edited:

    TortoiseGIT still uses the ass backwards Cygwin stuff IIRC. It isn't so much a windows version of GIT, as a Linux emulator running GIT.
    Dunno if you're still reading this, but MSysGit is native, yet includes a command line emulator to run the commands (which may look like cygwin, which it isn't. it's just a shell, not a full POSIX layer). It's compiled with MinGW. To get a GUI you can use gitextensions which is some wizardy stuff. I haven't used it, I use TortoiseGit.

    However, I'd advise to just use the MSys shell to use Git, as you don't have two things to learn.

  32. Post #32
    I'm rocketsnail full of rocketfail! Drop boxes ⇒⇒⇒
    Rocket's Avatar
    January 2011
    1,311 Posts
    I use git, because there's github. For anything I use them for, SVN and Git are basically the same.

  33. Post #33
    Gold Member
    jA_cOp's Avatar
    May 2006
    2,685 Posts
    Git has a central server, but you clone the servers repository to your computer, and commit to that, than sync that to the central server.
    While Git defines intra-repository operations, you don't have to use them; Git works fine with just a single repository. It's common to use remote servers with Git, but there's nothing particularly "central" about them, they're just repositories exactly like your local one.

    SVN uses numbers (ie r1, r105, r142319843124321) to mark revisions, and they go in order.
    Git uses weird hash tags.
    Wow, that's terribly biased of you, good to see you didn't bother doing any research either.

    Git uses SHA hashes because commits are not ordered. A commit can have multiple named references to it (branches, tags etc) and multiple parent commits.

    Edited:

    TortoiseGIT still uses the ass backwards Cygwin stuff IIRC. It isn't so much a windows version of GIT, as a Linux emulator running GIT.
    MsysGit still doesn't use Cygwin and Git is still not an acronym.

  34. Post #34
    VENEZOLANO
    Big Bang's Avatar
    August 2006
    3,417 Posts
    I'm using Git as SVN has continuously proven to be entirely unreliable for repos with more than one developer. TortoiseGit may be kinda tough to work with but once you get it going it's as simple as TortoiseSVN to use, with all it's context menu goodies and even some new features.

    That and GitHub is just blissful.

  35. Post #35
    open.gl
    Overv's Avatar
    February 2007
    7,431 Posts
    On a side note, when working with Git, you really shouldn't be using a GUI.

  36. Post #36
    Gold Member
    Lexic's Avatar
    March 2009
    6,123 Posts
    On a side note, when working with Git, you really shouldn't be using a GUI.
    Care to explain why?

  37. Post #37
    open.gl
    Overv's Avatar
    February 2007
    7,431 Posts
    A lot of times a GUI will slow down your progress with Git. It may be nice to visualize branches and commits, but the amount of options Git offers just doesn't suit a GUI. Using a GUI essentially dumbs down the process and takes away a substantial amount of options and flow.

  38. Post #38
    Andrew McWatters
    Dennab
    March 2011
    4,658 Posts
    A lot of times a GUI will slow down your progress with Git. It may be nice to visualize branches and commits, but the amount of options Git offers just doesn't suit a GUI. Using a GUI essentially dumbs down the process and takes away a substantial amount of options and flow.
    What options do you legitimately need to use in variance most of the time? I made a change, I find it to be stable in tests, and I want to push it to a central location. Done.

    In the time it would take me to merge with one or two clicks, I'd either have to type out my explicit demands, or write scripts/batch files to handle it for me.

    In what manner is having so many options that you shouldn't be using a "dumbed down" version of an interface a good thing? GUIs serve to speed up interaction and make that interaction intuitive.

  39. Post #39
    Gold Member
    OogalaBoogal's Avatar
    November 2008
    4,061 Posts
    I prefer mercurial, it's really simple to use, and it works on many platforms.

  40. Post #40
    Project Lead, Internet Explorer for Linux
    lavacano's Avatar
    October 2008
    14,551 Posts
    A lot of times a GUI will slow down your progress with Git. It may be nice to visualize branches and commits, but the amount of options Git offers just doesn't suit a GUI. Using a GUI essentially dumbs down the process and takes away a substantial amount of options and flow.
    Well maybe for commit jobs a GUI would be fine (I don't use Git or even SVN all that much so I'm not an ~expert~), but for advanced shit CLI would be the best.

    of course I tend to prefer CLI for things anyway (even in video games, I prefer to quit using developer consoles) so that probably makes me even less credible on such things