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

Re: Stupid, stupid, stupid mistake

From: Ulrich Eckhardt <eckhardt_at_satorlaser.com>
Date: Thu, 17 Jul 2008 16:10:57 +0200

On Thursday 17 July 2008, Lyallex wrote:
> I wanted to start a brand new project that used much of the code in
> the existing one so ... and this still hurts when I think about it.
> I forgot everything I had learnt about how Subversion manages change
> and used Eclipse to copy the old project into the new one ...
> .svn folders and all.

So far, this isn't that bad, you can copy working copies around as you like,
no problem there. The problems might start with what Eclipse does to the
working copy which SVN is not aware of while it should be told about it. E.g.
if you add or delete files from the Eclipse project, you also need to tell
SVN about that. I believe there are plugins for Eclipse that help you do just

> Somehow I managed to get this into version control under a new project
> directory.

I'm not sure what you mean here. Did you actually create anything new in the
repository or are these still local changes?

> In the meantime one of my fellow developers continued working
> on the old project.
> I expect you can imagine what happend next, as soon as I started to
> try and commit my changes I started seeing conflicts with code that
> the other guy had been adding to the old project

Technically, you created a fork of the old project by using its sources to
create something new. So, what you need is to create a separate space within
the repository to store this now separate project. For that, you simply
create a copy: Open the repository browser, select the old project and look
at the log. Click the 'revision' button and select the revision where the
fork should happen. Now, select "Copy to..." and give it the new location.

What remains is the working copy with the changes, which still points at the
old project's location. You should use the switch command to point it at the
new location and can then start committing stuff.

Note: if the changes (s.o.) are not still local, you must already have created
a fork, so you only have to switch the working copy. If they are in fact
still local, you can use an easier way out and simply use the "Branch/tag.."
function to create the fork.

> I was thinking maybe 'relocate' might do it but I'm a bit 'gun shy' of
> trying new stuff without getting some sort of validation first.

Ahem, as already mentioned, you can copy working copies, so you could easily
have tried what this does on a copy. In fact there is only one thing that
will actually modify the repository (and those changes are versioned, so you
can undo them!) and that is the commit button. Well, almost just one, in the
repository browser, you can directly perform some server-side operations like
copying, deleting and moving.


ML: http://tortoisesvn.tigris.org/list_etiquette.html
FAQ: http://tortoisesvn.net/faq
Sator Laser GmbH
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, e-mail: users-unsubscribe_at_tortoisesvn.tigris.org
For additional commands, e-mail: users-help_at_tortoisesvn.tigris.org
Received on 2008-07-17 16:11:11 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.