DonationCoder.com forum
 
Read-only archive. This is a static copy of the DonationCoder.com forum. Reading and searching work as before; logging in, posting and private messages do not.
Archive of 2026-10-21 · About this archive · Main site

Author Topic: Good Article For Beginners On Version Control (w/ Pictures & Examples)  (Read 26,008 times)

tinjaw

  • I'm so glad breakbeat techno isn't an illegal drug
  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 1,927
    • Participated in NANY Challenge Twice
    • Coding Snacks
    • Military Service Badge - US Army
    • Linux User
There is a very good introduction to version control at BetterExplained.


Found via Lifehacker.

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,931
    • Gathering Badge
    • Plugin Coding Medal
    • Participated in NANY Challenge Seventeen Times
    • Cody Award
    • Coding Snacks
    • Volunteers/Staff
something's missing..
where the picture of the user screaming at the computer screen when he can't get the thing to check out properly because of some nonsensical error?

justice

  • Solve issues simply.
  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 1,898
    • Participated in NANY Challenge Four Times
    • Cody Award
    • Coding Snacks
    • DJ Badge - DJ
Always funny to read:
either: save your word document with _v2 at the end
or read through several pages of information to set up a version control system.

That said I can't get my colleague to use one of these or I would be a lot happier working on a functions include (web development) without having to yell "do you have this file open" a few times each day.

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,931
    • Gathering Badge
    • Plugin Coding Medal
    • Participated in NANY Challenge Seventeen Times
    • Cody Award
    • Coding Snacks
    • Volunteers/Staff
in case my comment gave the wrong impression, as annoying as version control can sometimes be, it's simply something you must learn how to use these days as a programmer.

svn is the easy choice of software, and there are some nice easy programs to get you started on a windows platform (tortoisesvn and rapidsvn).  I use to be a big fan of tortoisesvn but the shell integration can be a bit intrusive so i tend to use RapidSvn mostly now (it's a bit buggy but it gets the job done).

on linux the commandline main svn programs are fine -- but if you are hosting an svn repository, do expect to struggle a little to get it up and running initially.

mwb1100

  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 1,645
Here's the best intro to version control I've come across:

http://www.ericsink.com/scm/source_control.html

Eric Sink is pretty much always a good read.

justice

  • Solve issues simply.
  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 1,898
    • Participated in NANY Challenge Four Times
    • Cody Award
    • Coding Snacks
    • DJ Badge - DJ
There was some kind of decentralized version control software that started with a 'd' i think but I can't remember the name just a professor that created it mostly himself with his team. It worked really well but at the time I was looking for filehamster instead (i realised)... ahh I think it was Darcs (http://darcs.net/). ahh I have to say i just dabbled with it but in princple it seemed less strict than subversion + tortoise. Always found it overly complex for personel development use but then I only create websites and AHK scripts :)
« Last Edit: October 02, 2007, 03:58 PM by justice »

Armando

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 2,727
    • Coding Snacks
Nice articles. Thanks guys.
"I suppose it can be said that I'm an absent-minded driver. It's true that I've driven through a number of red lights on occasion, but on the other hand, I've stopped at a lot of green ones but never gotten credit for it."
Glenn Gould

housetier

  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 1,321
    • Gathering Badge
hah very good find! got me into reading about VCS again

thanks tinjaw  :Thmbsup:

Mandork

  • Hopeless or hapless?
  • Supporting Member
  • Joined in 2007
  • **
  • Posts: 64
Speaking of FileHamster, does anyone here actually use it for day-to-day work?  I have downloaded it and started using it (in conjunction with SyncBack, just in case) as a means of keeping track of my PhD thesis stuff.  It seems okay, but I just wondered what others' experiences were like.
Computers are useless. They can only give you answers.
Pablo Picasso

tinjaw

  • I'm so glad breakbeat techno isn't an illegal drug
  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 1,927
    • Participated in NANY Challenge Twice
    • Coding Snacks
    • Military Service Badge - US Army
    • Linux User
I haven't used it daily, but I have used it very often. I haven't had any problems and I trust it on some of my most important projects.

nevf

  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 115
I wrote "Get up and running with TortoiseSVN and Subversion in 15 minutes." a while back which will be of interest to folks starting out with SubVersion.
Neville Franks, Clibu a better way to collect, use, manage and share information across all devices.

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,931
    • Gathering Badge
    • Plugin Coding Medal
    • Participated in NANY Challenge Seventeen Times
    • Cody Award
    • Coding Snacks
    • Volunteers/Staff
Oh that's excellent nevf!  Very nice  :up: :up: :up:

tinjaw

  • I'm so glad breakbeat techno isn't an illegal drug
  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 1,927
    • Participated in NANY Challenge Twice
    • Coding Snacks
    • Military Service Badge - US Army
    • Linux User
Yes, nevf, very nice. I have sent you a few credits for this. Thanks.

jandi

  • Participant
  • Joined in 2007
  • *
  • Posts: 7
Speaking of FileHamster, does anyone here actually use it for day-to-day work?

I tried.  I really really tried.  Seemed like an ideal, easy solution for my MSc Thesis.  But given that it creates copies at every save, and that I am a compulsive saver (habit acquired from long time use of MS Word for sensitive documents that cause the program to crash precisely when you have not saved your work), I was not too happy with the tons of copies generated every day.  I decided to take the time to learn SVN (well, I'm using TortoiseSVN on a local repository), and am quite happy.

tinjaw

  • I'm so glad breakbeat techno isn't an illegal drug
  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 1,927
    • Participated in NANY Challenge Twice
    • Coding Snacks
    • Military Service Badge - US Army
    • Linux User
But given that it creates copies at every save,

FYI: There is an option (look at the files properties in FileHamster) for TimeDelayBetweenRevisions. This will limit how often a file is saved if you save often and don't want saves from every minute. The description of the option is "Specifies an artificial time delay between revisions limiting the number of revisions that can occur during a specified time period."

I decided to take the time to learn SVN (well, I'm using TortoiseSVN on a local repository), and am quite happy.

Glad to hear that another person has joined the cult learned to use Subversion.  :Thmbsup:

Muadib

  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 29
I was not too happy with the tons of copies generated every day.

Complementing tinjaw reply, you can adjust FileHamster to limit the amount of copies you wish to keep. Above that limit, it starts deleting old versions. I use this approach together with the one cited by tinjaw. In my case, I've adjusted to not save within the period of 5 minutes. You can find these options with a right-click above the folder been monitored (inside FileHamster's main window), choosing "Options" and going to "MaxRevisions".

f0dder

  • [Well, THAT escalated quickly!]
  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 9,153
    • Participated in NANY Challenge Once
something's missing..
where the picture of the user screaming at the computer screen when he can't get the thing to check out properly because of some nonsensical error?
* f0dder remembers mouser trying to set up subversion on the server.

on linux the commandline main svn programs are fine -- but if you are hosting an svn repository, do expect to struggle a little to get it up and running initially.

Well, if you do have some unix/linux experience, subversion is actually extremely easy to set up. Especially if you have a distro with a decent package manager (and you choose to use it). All it takes is running svnserve with a few well-explained command-line parameters, and "svnadmin create" to create a repository.

What's harder, and requires reading the handbook, is choosing a decent layout. And this can be hard when you're starting with subversion, I know I certainly messed up myself: first I thought I'd use a single repository for all my stuff. Once I moved to repo-per-project I didn't think about stuffing files in a "dev" (or "trunk" or "current" or whatever you want to call it) subfolder, etc...

And then there's of course getting into the habit and mindset of using version control, which tends to be the hardest, at least for some people. But it's nice once you get everything clicking into place.

The thing that remains for me, personally, is some commit log dicipline, deciding on some tags to add, and a format that's easily grepable so I can write a changelog.txt automagically...
- carpe noctem

Original address: https://www.donationcoder.com/forum/index.php?topic=10212.0