On Monday 25 January 2010, Adam wrote: > I must be making progress, because now I'm on the development team, > sort of, for a major project, as I'm assisting the developer of > one small area of libgphoto2, if you call that a major project. I > figured I'm likely to do something that will trash my development > system, so I used VirtualBox to create a VM just for this project. > This way, no matter how badly I wreck the "development" system, > my "production" system (I only have the one box) will remain > usable.
I think that's unnecessary, but you'll also find that out for yourself by doing the experiment. Breaking libgphoto2 would be something that is reversible without much impact -- whereas badly breaking something fundamentally needed for the system, like libc6, could be more catastrophic. However even then you could revert libc6 with a LiveCD. As such, any development (and testing) I do is on the same systems I normally use. > Anyway, I'm on a development team for this project which uses SVN. > I think I need to keep three separate versions on my "development" > system: (a) the latest SVN version, (b) the latest SVN version > plus whatever the developer sends me (as I think I'm the only > other person involved, he just emails me, instead of using "svn > commit" for every minor change), and (c) the latest SVN version > plus whatever the developer sends me plus whatever changes I'm > trying out. This is essentially exactly what "branches" were meant to be for, at least in 'git' terms of them. So if I were in this situation, I would locally use 'git' which contained the 'lastes SVN' repo (a) in the 'master' branch, another branch for (b) named something like 'developer-updated' which you patch and commit locally yourself, and a third branch for (c) named something like 'my-local-changes'. From there you can either send patches back to the developer for the differences between branches (b) and (c), or you can copy your local changes so SVN and work with SVN to commit from there, etc. Pulling in changes in branch (b) into (c) can be done from (c) using 'git pull', and it's actually that simple unless you've changed exactly the same lines in the same files the other developer has. Alternatively I guess another way would be to set up your own local SVN repo, to illeviate needing to populate the public repo with branches. -- Chris -- Chris Knadle [email protected] _______________________________________________ Mid-Hudson Valley Linux Users Group http://mhvlug.org http://mhvlug.org/cgi-bin/mailman/listinfo/mhvlug Upcoming Meetings (6pm - 8pm) MHVLS Auditorium Feb 3 - Why Arduino? An Introduction Mar 3 - Sahana and 7 Years of MHVLUG Celebration Apr 7 - Nagios
