Steven Walter wrote:
On Sat, Feb 02, 2008 at 05:21:59PM -0800, Wink Saville wrote:
What steps would be needed to recreate a "local git repo" from the
"git repo on srvr" that I could use against the svn repo?
I tried a little test, I cloned my git repo on srvr locally to amc-xx
and added the [svn-remote "svn"] section to amc-xx/.git/config
and then did a git-svn fetch. From what happened it looks like I
just did a git svn clone and didn't save any time.
After adding the svn-remote section, you'll want to copy
.git/refs/remotes/origin/master to .git/refs/remotes/git-svn. After
doing that, "git svn fetch" should see that you have all the needed
commits and do a quick rebuild of its metadata.
Also, a follow up can I create an svn repo from a git repo.
I've not done it, but it should be possible. You would create the new
svn repository with a single empty commit (as empty as SVN would allow).
Import that revision into your git repository with git-svn. Then you
would either rebase or use grafts to make all of your git commits a
descendent of that single svn commit. In that way, the next time you
run "git svn dcommit" it will see all your local git commits as new
commits to send to subversion.
No guarantees though, as I've not tried it.
Steve,
That worked thanks, I did make some minor adjustments as when
I recloned I used the "-s" switch because my svn repo was in standard
format so rather than copying master to .git/refs/remotes/git-svn I copied
it to .git/refs/remotes/trunk. I also used git svn init to create the
remotes
section instead of editing .git/config directly. So the following worked
for me:
lcl ~/ $ git clone git://srv/amc.git amc
lcl ~/ $ cd amc
lcl ~/amc $ git svn init -s http://async-msgcomp.googlecode.com/svn
lcl ~/amc $ rm -rf .git/svn
lcl ~/amc $ cp .git/refs/remotes/origin/master .git/refs/remotes/trunk
lcl ~/amc $ git svn fetch
It would seem creating a "git svn connect" command which did the above
might be nice. I took a quick look at git-svn and decided that since I
don't know
perl and git-svn was almost 5000 LOC it would be dangerous for me to try
to make the change:)
Thanks for all of your help.
Wink
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html