[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Working copy vs Branch

From: Ulrich Eckhardt <eckhardt_at_satorlaser.com>
Date: Wed, 17 Nov 2010 09:40:43 +0100

On Wednesday 17 November 2010, jeffraro wrote:
> My project is at version 3.15 and I have a working copy in ...\MyApp
> \Source
> I want to start working on v3.16 and continue to have 3.15 available
> so that I can fix bugs for the existing users and later carry these
> bug fixes forward into my 3.16 source.
> Do I simply make a new WC in (say) ...\MyAppv3.16\Source and start
> working on my changes there?
> If so, I presume that I do my bug fixes 3.15 and "commit" them, then
> go to my 3.16 WC and "update". And not "commit" any 3.16 changes
> until I have finished working on that version?

Imagine, the 3.16 changes take a bit longer, maybe a month or two. Sometime in
the middle you go on holiday for two weeks. Then, your harddisk with your
working copy crashes. That means that two months of work are lost (You do
have regular backups of your repository in place and you have tested
recovering from them, do you?).

Anyway, the second time it's easier, so in three weeks or so you manage to get
to a state that resembles the one before. In the meantime, you still add the
occasional bugfix to 3.15. Then, you commit the whole thing and call it 3.16.
After a few days, you get a report about crashes from a customer. Now, which
of these changes caused the crash? Typically, you just take a vanilla working
copy and update to earlier revisions until you hit the step where crashes
stopped, so you can find the revision that caused things to break. Since you
only have a single commit, you can then start reading through several weeks
of work trying to find the one change that caused things to break.

Now, in the meantime, someone reports a bug on 3.15, which is also present in
3.16. You can fix it in 3.16 and tell them to upgrade, but they only come
back at you because they now find that 3.16 is buggy in other ways, i.e. the
bug you're searching for.

> OR do I use branches?

Yes, you want branches. You would have been able to commit even unfinished
steps leading to the next version to the repository. You could have
backtracked each step to circle in a bug. You could commit a bugfix to an
earlier revision and release that without having to finish your current

Also, you should read the Subversion book online (see the SVN homepage), as it
explains several strategies concerning SVN use.


ML: http://tortoisesvn.tigris.org/list_etiquette.html
FAQ: http://tortoisesvn.net/faq
Sator Laser GmbH, Fangdieckstraße 75a, 22547 Hamburg, Deutschland
Geschäftsführer: Thorsten Föcking, Amtsgericht Hamburg HR B62 932
Sator Laser GmbH, Fangdieckstraße 75a, 22547 Hamburg, Deutschland
Geschäftsführer: Thorsten Föcking, Amtsgericht Hamburg HR B62 932
           Visit our website at <http://www.satorlaser.de/>
Diese E-Mail einschließlich sämtlicher Anhänge ist nur für den Adressaten bestimmt und kann vertrauliche Informationen enthalten. Bitte benachrichtigen Sie den Absender umgehend, falls Sie nicht der beabsichtigte Empfänger sein sollten. Die E-Mail ist in diesem Fall zu löschen und darf weder gelesen, weitergeleitet, veröffentlicht oder anderweitig benutzt werden.
E-Mails können durch Dritte gelesen werden und Viren sowie nichtautorisierte Änderungen enthalten. Sator Laser GmbH ist für diese Folgen nicht verantwortlich.
To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2010-11-17 09:40:52 CET

This is an archived mail posted to the TortoiseSVN Users mailing list.