Yes. I meant the "update" command in that context. It is not possible to simply update the Orbiter beta installation in which you pre-test your add-on, if you also use Subversion there for the add-on.
Hi Urwumpe, et al.,
you can also use a combination of 'sparse checkout' and 'symbolic links':
In my example let's assume
your project is 'SSU'. I will do everything direct at "D:\" which might not be what you do, but it keeps the example instuctions simple.
- Checkout Orbiter trunk as 'sparse checkout'
Do this by checking out in a folder (here: "D:\Orbiter") and select the repository root (NOT down to trunk!).
Then select "Choose items..." and only select "trunk" there. You can of course select the others ("branches" and "tags") too, but that's not needed.
The checkout dialog should look like [image_1] now.
Note that the Repository URL is the repositories base-path (without "trunk") while the Checkout Depth indicates that we selected only some of the children (only "trunk") as we like to make a sparse checkout.
Click O.K. to check out.
- You should now have a Orbiter working copy that looks something like [image_3]
Important is just, that the (hidden) .svn folder is located above "trunk" (here "D:\Orbiter\.svn")
- Checkout your project (SSU) in a temporary directory of your choice (e.g. "C:\tmp\SSU").
- Then create a symbolic link for your projects working copy:
Code:
$> junction.exe d:\SSU d:\Orbiter\trunk
- Now just copy or move the complete content of the temporary project checkout-directory into that new location (from c:\tmp\SSU\..." to "D:\SSU\...")
IMPORTANT is, that the hidden Subversion folder(.svn) is also copied/moved!
- Et voila: A combined working copy!
The steps (3) and (5) are neccessary cause TortoiseSVN doesn't like symbolic links as checkout target. for update/commit/etc. that's fine!
- Now you can work / develop your project under "D:\SSU\..." as usual. And when you think it's time to check for a new Orbiter beta revision, just update the according folder ("D:\Orbiter" or "D:\Orbiter\trunk" it doesn't matter here).
The trick here is, that Subversion identifies the repository via the path, and it doesn't care where those files / directories are actually located on your harddrive (all files will be physically stored in the "D:\Orbiter\trunk"
directory!).
Fortunately Subversion will handle all the SSU-Files in the Orbiter-working-copy as local unversioned files of Orbiter-working copy and all the Orbiter-Files in the SSU as local unversioned files of SSU-working copy.
The TSVNCache background task however might not be able to recognize our dirty deeds here and might display Overlay Icons at the working-copy roots that might not be accurate.
However as long as there is not a file versioned in BOTH repositories[1], this works!
/Kuddel
[1] ...as a addon-Developer you should not do that anyway!