DonationCoder.com Forum

Other Software => Developer's Corner => Topic started by: tinjaw on October 01, 2007, 01:39 PM

Title: Good Article For Beginners On Version Control (w/ Pictures & Examples)
Post by: tinjaw on October 01, 2007, 01:39 PM
There is a very good introduction to version control at BetterExplained.

A Visual Guide to Version Control
[attachthumb=#1][/attachthumb]
 (http://betterexplained.com/articles/a-visual-guide-to-version-control/)

Found via Lifehacker (http://lifehacker.com/software/version-control/-304907.php).
Title: Re: Good Article For Beginners On Version Control (w/ Pictures & Examples)
Post by: mouser on October 01, 2007, 07:42 PM
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?
Title: Re: Good Article For Beginners On Version Control (w/ Pictures & Examples)
Post by: justice on October 02, 2007, 07:21 AM
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.
Title: Re: Good Article For Beginners On Version Control (w/ Pictures & Examples)
Post by: mouser on October 02, 2007, 09:56 AM
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 (http://tortoisesvn and http://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.
Title: Re: Good Article For Beginners On Version Control (w/ Pictures & Examples)
Post by: mwb1100 on October 02, 2007, 10:31 AM
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.
Title: Re: Good Article For Beginners On Version Control (w/ Pictures & Examples)
Post by: justice on October 02, 2007, 10:55 AM
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 :)
Title: Re: Good Article For Beginners On Version Control (w/ Pictures & Examples)
Post by: Armando on October 02, 2007, 05:04 PM
Nice articles. Thanks guys.
Title: Re: Good Article For Beginners On Version Control (w/ Pictures & Examples)
Post by: housetier on October 18, 2007, 11:10 AM
hah very good find! got me into reading about VCS again

thanks tinjaw  :Thmbsup:
Title: Re: Good Article For Beginners On Version Control (w/ Pictures & Examples)
Post by: Mandork on October 19, 2007, 05:02 PM
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.
Title: Re: Good Article For Beginners On Version Control (w/ Pictures & Examples)
Post by: tinjaw on October 19, 2007, 05:52 PM
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.
Title: Re: Good Article For Beginners On Version Control (w/ Pictures & Examples)
Post by: nevf on October 21, 2007, 05:00 PM
I wrote "Get up and running with TortoiseSVN and Subversion in 15 minutes." (http://blog.surfulater.com/2007/02/28/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.
Title: Re: Good Article For Beginners On Version Control (w/ Pictures & Examples)
Post by: mouser on October 21, 2007, 06:25 PM
Oh that's excellent nevf!  Very nice  :up: :up: :up:
Title: Re: Good Article For Beginners On Version Control (w/ Pictures & Examples)
Post by: tinjaw on October 21, 2007, 08:47 PM
Yes, nevf, very nice. I have sent you a few credits for this. Thanks.
Title: Re: Good Article For Beginners On Version Control (w/ Pictures & Examples)
Post by: jandi on October 22, 2007, 02:09 AM
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.
Title: Re: Good Article For Beginners On Version Control (w/ Pictures & Examples)
Post by: tinjaw on October 22, 2007, 07:06 AM
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:
Title: Re: Good Article For Beginners On Version Control (w/ Pictures & Examples)
Post by: Muadib on October 25, 2007, 04:21 PM
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".

Title: Re: Good Article For Beginners On Version Control (w/ Pictures & Examples)
Post by: f0dder on October 25, 2007, 06:38 PM
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?
/me 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...