On Wed, 13 Feb 2013 20:26:32 +0100 Andreas Volz <li...@brachttal.net> wrote:
> Am Wed, 13 Feb 2013 12:47:55 +0000 schrieb Daniel Willmann: > > > Hello, > > > > this Friday (15/02/2013) libefl will be moving from SVN to Git. > > > > Timeframe is as follows: > > > > 09:00 UTC: Final warning mail. You should stop committing > > to /trunk/efl in SVN > > 10:00 UTC: Raster will lock the directory /trunk/efl so nobody > > accidentally commits there. When that is done I will update the Git > > repository for efl and verify that everything is working. > > > > ??:00 UTC: Access will be restored to Git and I'll send an > > announcement that the migration is done. > > This shouldn't take too long. I updated the repository yesterday and > > have the whole work flow figured out. Keep your fingers crossed. > > > > > > The new web frontend is here (phabricator is there as well, but > > requires login): > > https://git.enlightenment.org/core/efl.git/ > > > > Read-only git access: > > git clone git://git.enlightenment.org/core/efl.git > > > > Or for developers (not available at the moment): > > git clone ssh://g...@git.enlightenment.org/core/efl.git > > I've many pending changes in efl that I couldn't commit until this > time. > > If you say "move" does this include to remove it in SVN? Even for > reading operations (e.g. svn diff)? Reading will be allowed for the foreseeable future. From Friday on you shouldn't commit to the repository any more. > Should I get a diff with latest freeze and then apply it to my local > GIT branch after the change? Ah, I was wondering if it made sense to explain this - but that answers my question! Here is how you could do it depending on whether you have pure svn or git-svn: Pure SVN -------- * Update SVN and note the current revision: $ svn up $ svn info |grep Revision -> Let's say it's svn rev 83335 * Clone the new repo with git clone * Find the matching commit in git $ git log --grep "SVN revision: 83335" -> This will show you commit 3fe5d4d * Reset your working directory to this commit (in a new branch) $ git checkout -b svn-import 3fe5d4d * Copy your files over from SVN. You can just copy everything (do omit the .svn directories, though) as the repositories will be in the same state now. * Check that the changes make sense - git diff should now provide the same output as svn diff * Save the changes temporarily $ git stash * Checkout master $ git checkout master * Apply the changes again $ git stash pop git svn ------- * Export all your commits that are not upstream yet $ git format-patch git-svn..HEAD -> Creates numbered patch files * Clone the new repository with git clone somewhere * Apply the patches to the new repository $ git am 00*.patch * For the last command - depending on your checkout - you will probably need to add the option -p to adjust the location of the patches. So if you did a checkout of the complete trunk/ you'll need to pass (I think) -p2 to git am. I hope this makes sense. Regards, Daniel ------------------------------------------------------------------------------ Free Next-Gen Firewall Hardware Offer Buy your Sophos next-gen firewall before the end March 2013 and get the hardware for free! Learn more. http://p.sf.net/sfu/sophos-d2d-feb _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel