You are not logged in.
Hi guys !
I've just begun using SVN here and I was wondering how you guys integrate Xinha with your SVN managed projects?
I came across the svn:external attribute, but, I was wondering how such a thing integrates with my project. Would I still be able to make local changes to Xinha and push them to MY repository and, once in a while, do and update to my Xinha module and merge the changes with what I did here? I'm using Tortoise here so any tips on how to do this would be useful. I tried to assign the svn:external property to a folder but my stuff seems to always end up in a subdirectory. Am I supposed to set the svn:external on the parent folder?
Have fun !
Chuck
Offline
imho if you use xinha for a cms in production it is dangerous to use the nightly direct from svn!
better would be to update once a while, test everything and then commit into your own svn-repository.
Once xinha releases its own stable version it might be best for you to use these, currently the nightly is the best.
how did you set svn:external?
usually you can set it on a folder named "xinha" and set it to http://svn.xinha.python-hosting.com/trunk/
niko
Niko
Offline
Well, I noticed that CVS and SVN can safely be installed on the same system, so I installed it. And after some testing (This is not at all the same as CVS it appears), I noticed that the way to grab the fresh files you need to right click on a folder, and choose EXPORT, there you paste the url :
http://svn.xinha.python-hosting.com/trunk/
And you are ready to go, it seems that is,
Offline
imho if you use xinha for a cms in production it is dangerous to use the nightly direct from svn!
If you don't at least do a cursory test first, yes
Chuck:
for one way see this section of the subversion docs, http://svnbook.red-bean.com/en/1.0/ch07 … 7-sect-4.1
but you might be able to get away with using svn merge, heres how (don't know if this works, worth a try)...
For this example I'll denote revisions in the Xinha svn as X.<rev> and in your own svn as Y.<rev>
To get setup
1. svn export http://svn.xinha.python-hosting.com/trunk wc; cd wc
...this exports a copy of Xinha at revision X.a
2. svn import <Y repos>
...import this into your repository at revsion Y.b
3. Make local changes in your version, after some time you are at rev Y.d
... in the meantime Xinha has progressed to X.e and you want to bring in those changes from us ...
4. svn co -rY.b <Y repos> wc; cd wc
... this checks out a clean copy of the version of Xinha you imported, ready to be "upgraded"
5. svn merge -rX.a:X.e http://svn.xinha.python-hosting.com/trunk .
... this should merge the changes from X.a (the one you originally imported) to X.e (the latest one) in the Xinha svn into your Y.b revision working copy
6. svn update
... this will update the working copy (which is now X.e) with all the local changes you have made locally up to Y.d
7. resolve any conflicts that might have occurred
8. svn ci -m "Merging changes from Xinha, now at Xinha Rev:X.e"
... this checks in everything, you are now at Y.e
From this point on you just follow this procedure...
9. make more changes, say now you're at Y.g and Xinha is at X.h
10. svn co -rY.e <Y repos> wc; cd wc #get the revision where you synced at X.e previously
11. svn merge -rX.e:X.h http://svn.xinha.python-hosting.com/trunk . #bring in the X.h changes
12. svn update # bring in your local changes (in this case Y.f and Y.g)
13. resolve conflicts
14. svn ci -m "Merging changes from Xinha, now at Xinha Rev:X.h" # commit it
Of course I've shown all this using the command line client, you can do the same thing with Tortoise or whatever, just substitute mouse clicks for commands as appropriate
James Sleeman
Offline