views:

142

answers:

2

A few years ago, TortoiseSVN 1.4.3 was deployed to our software development team and we are now looking at upgrading the client to the latest 1.6.x version. I had hoped this upgrade would be transparent with the additional features and modifications being client-side. For the most part, this was true except for a very important feature -- merging. When I try to merge a feature branch back into truck I get a show-stopping "Merge tracking not supported error."

Here are some facts worth noting:

  1. When the repo was first created (before I was on board), it was created via the TortoiseSVN client itself. We do not have a 'svn server daemon' per se, rather the repository folders/database resides on a share folder that is accessible from our workstation machines via file:///. This was actually an eye opener for me, I had always thought there was some SVN server daemon we were talking to.

  2. We do not have any access to the underlying machine hosting the SVN share other than the ability to read/write to the share itself. I don't even know what OS the machine is running on. This share server was chosen because its drives are backed up nightly by our IT group.

  3. In all honesty, we really don't need the merge tracking feature although it would be nice to have. For the time being it would be sufficient to be able to use a 1.6.x TortoiseSVN client on the 1.4.3 repository and have it merge (sans tracking) without error.

So now the question becomes, how does one upgrade a client-created 1.4.3 repo to a 1.6.x compatible version without access to the underlying machine the repo resides on? I was hoping the TortoiseSVN client itself had the ability to do this but that does not appear to be the case.

Will I be forced to copy the entire repo over to my local drive, run some svn commands to upgrade the repo locally then copy the repo back to the share point? If so, will doing this break any compatibility with the the 1.4.3 clients in case we cant upgrade them all at the same time?

Thanks for the help.

NOTE
The question has been completely reworded in light of some of the answers given.

+2  A: 

Based on this it looks like compatibility should not be an issue.

However, specific missing functionality will likely occur as you already experienced.

for upgrades:

http://stackoverflow.com/questions/1160761/how-to-upgrade-svn-1-4-4-r25188-to-svn-1-6

http://svnbook.red-bean.com/en/1.5/svn.ref.svnadmin.c.upgrade.html

EDIT - after additional information

It's probably time to re-evaluate the svn situation

I can't imagine not having access to the machine. I would demand/request that either the IT people do the upgrade after doing a backup (do your own svn backup as well) or grant you access to the machine.

As for using file// svn access. Yikes. I would change that right away also so it is available via https. I can't imagine only being able to access it on your local network - although I suppose vpn would work int hat case.

good luck

Tim
I completely reworded my question to provide additional details in light of your answer, could you please go over it once more. Thanks
SiegeX
+3  A: 

You will need to do an svnadmin -upgrade to convert the repository format. Just make sure you backup the repository first...just in case.

For the most part 1.4.x clients should be able to talk to a 1.6.x server. Of course the 1.6.x server has features that the 1.4.x clients do not support so those features will be unavailable.

Edit:

It does not really matter that you created the repository via TortoiseSVN. It all happens the same way. You will need to download the Subversion command line tools to be able to use svnadmin. I would definitely copy the repository to your local drive first so you can experiment with the upgrade. Without upgrading that repository you will be forced to forfeit the new features. I think you will be okay upgrading the repository without affecting the existing 1.4.x clients, but it never hurts to test that out before you replace the production copy of the repository on the server.

Brian Gideon
I completely reworded my question to provide additional details in light of your answer, could you please go over it once more. Thanks
SiegeX
I updated my answer.
Brian Gideon