hfettig Posted September 20, 2007 Report Share Posted September 20, 2007 Hi Folks, I am setting up subversion and have a few questions. Say I have a server at home that has all my subversion repositories on it. Now I work at with my laptop at home committing as we go. What do I do when I take the laptop to a customer and make changes there in which I want a few commit steps in between changes? Is there a way to have a local repository that syncs to a server when I get back home? Cheers, Heiko Quote Link to comment
Chris Davis Posted September 21, 2007 Report Share Posted September 21, 2007 I'm not a subversion expert, but I have had some experience replacing a subversion server after a motherboard went bad. My experience went something like this. Everything working Friday afternoon, come in Monday and my subversion machine was not working. Couldn't get it to boot or respond in any way. Ended up pulling the hard drive and putting it in another machine. After installing apache and the same version of subversion on a new machine I was able to replace the default subversion repository directory with the one I had on another hard drive from another machine. I had to setup apache to use the same setup as I had before, but other than that everything worked fine. The moral is, have daily hotcopies of your subversion repository on some external media for safekeeping. The lesson that you might be able to take away is that if you are a lone developer you should be able to take a copy of your subversion repository on your laptop hard drive, setup your subversion system to sync to your laptop hard drive, then when you get back home, copy your laptop's subversion repository back to your "server". I've also seen people try keeping thier subversion repository on external media (such as a usb hard drive or flash drive) you might want to investigate that too. If you are a lone developer it may meet your needs. Quote Link to comment
rkanders Posted September 21, 2007 Report Share Posted September 21, 2007 I think it is fairly tricky and only needed if you are not a sole developer. I keep my repository and even working copy on a removable mini usb drive (e.g. WD Passport). Usb Drive is fast enough for development, and it makes it easy to develop at work/laptop and at home, and LV does not complain about linking problems. I do make frequent backups of repository and have a duplicate working copies on network that get synched via script/button using SVN update command. It would be interesting to know if anyone has a solution for your problem. I have thought about this before and could not come up with anything that could be implemented, especially if more than one developer are involved. Reinis Quote Link to comment
siva Posted September 21, 2007 Report Share Posted September 21, 2007 I was using CVS some time back. Tortoise-CVS uses the network connectivity only during "commit" and "update" activity. Rest of the time, user doesnt need any network connectivity. The user can work at his code. If the user wants to commit(crreating the next version without check-in-out activity) his work., at that time only he needs the network.. I believe CVS-NT/Tortoise-CVS (freeware) is the right choice for dynamic connectivity situations.. QUOTE(rkanders @ Sep 20 2007, 09:52 AM) I think it is fairly tricky and only needed if you are not a sole developer.I keep my repository and even working copy on a removable mini usb drive (e.g. WD Passport). Usb Drive is fast enough for development, and it makes it easy to develop at work/laptop and at home, and LV does not complain about linking problems. I do make frequent backups of repository and have a duplicate working copies on network that get synched via script/button using SVN update command. It would be interesting to know if anyone has a solution for your problem. I have thought about this before and could not come up with anything that could be implemented, especially if more than one developer are involved. Reinis Quote Link to comment
Rolf Kalbermatter Posted September 23, 2007 Report Share Posted September 23, 2007 QUOTE(siva @ Sep 20 2007, 03:33 AM) I was using CVS some time back. Tortoise-CVS uses the network connectivity only during "commit" and "update" activity. Rest of the time, user doesnt need any network connectivity. The user can work at his code. If the user wants to commit(crreating the next version without check-in-out activity) his work., at that time only he needs the network.. I believe CVS-NT/Tortoise-CVS (freeware) is the right choice for dynamic connectivity situations.. SVN really works the same. But the OP request was explicit intermediate commits to the server while away from the network, and here CVS will fail exactly the same as SVN. Only solution I see is to keep the CVS server on the local machine too and put it's repositry on an external harddrive or maybe make a regular backup copy of the entire local repository to some other location. I know that that will work with SVN since a repository is there completely self contained without any external information that could get lost when doing a simple file backup. Rolf Kalbermatter Quote Link to comment
eaolson Posted September 23, 2007 Report Share Posted September 23, 2007 This is a possibly crazy idea, and I've never tried it, but can you put a SVN repository inside an SVN repository? While you're away, you check out a repository and use that, then check it in when you get back. Quote Link to comment
Jim Kring Posted September 23, 2007 Report Share Posted September 23, 2007 Heiko, You might want to look into svk. From thier website: QUOTE svk is a decentralized version control system built with the robust Subversion filesystem. It supports repository mirroring, disconnected operation, history-sensitive merging, and integrates with other version control systems, as well as popular visual merge tools. I haven't actually used this tool. But, I don't think they have any GUI client for Windows (or any platform). Cheers, -Jim Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.