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

Re: Basic question about TortoiseSVN versioning

From: Ulrich Eckhardt <eckhardt_at_satorlaser.com>
Date: Mon, 12 Apr 2010 11:17:17 +0200

On Friday 09 April 2010, Kovacs Janos wrote:
> I am new with TortoiseSVN and have a basic question about how it works in
> the background.
>
> Imagine a scenario when you develop an app and just just finished your day
> at work so you want to upload 100 modified files to the repo.

It's hard for me to image a change that affects 100 files at once. Generally,
just checking in because it's 5 o'clock is a bad idea. Check separate changes
in when they are done, one change per commit. This also allows later merging
that one feature separately or reverting the change separately, as you found
out yourself.

> At the next morning you realize that one out of those 100 files you have
> changed yesterday is faulty so you have to go back to the previous version.
>
> It is very easy to do with tool like Perforce because you just reving back
> that individual file, but in TortoiseSVN if you go back one rev then all
> the hundred files go back one rev.

There are two ways to "go back":
1. You update to a certain revision. This just means that you retrieve a
snapshot of a certain revision. The "normal" update command will just update
to the latest revision of the repository.
2. You merge changes from a revision. Reverse-merging is the way to revert
changes from a revision.

In both cases you have a choice how much of your sources are affected. The
smallest granularity is one file and one revision. Keep in mind that while
you probably have a concept of what constitutes a project, Subversion itself
doesn't. Subversion only versions files and directories, it doesn't know what
you consider a project.

Merging single files has a drawback though: If you (reverse-)merge a single
file only, that file will have merge infos attached to it, while otherwise it
will implicitly have the merge info of the parent (or the parent's parent
etc) dir, so typically only the project's root dir has this info. For that
reason, it is a good idea to separate changes as mentioned above and always
merge from and to the root dir of your project.

> I'd also like to understand what is the benefit of reving the folder
> instead of reving the individual files. I have read the manual, but its
> still not really clear for me!

Updating or merging a directory is always recursive, that's all, apart from
perhaps the above-mentioned merge infos.

Uli

-- 
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.
**************************************************************************************
------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=2566643
To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2010-04-12 11:17:38 CEST

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.