git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: git-svn equivalent to "svn switch --relocate"

From
Steven Walter <stevenrwalter@gmail.com>
Date
Jun 17, 2008, 21:42 UTC
Message-ID
<e06498070806171442s6c097884j76ed6c98908a3eb1@mail.gmail.com>
In-Reply-To
<20080617160602.GB29897@zoy.org>
On Tue, Jun 17, 2008 at 12:06 PM, Sam Hocevar <sam@zoy.org> wrote:
Show 15 quoted lines
>   I know this has been addressed a few times, but since I haven't found
> any reasonable way to relocate a git-svn repository (after a protocol
> change, or a server name change) I thought I'd share how I did it.
>
>   Step 1 is to edit ".git/config" and modify the "url = " line so
> that it reflects the new repository address. For instance:
>
> -       url = http://svn.gnome.org/svn/gimp
> +       url = svn+ssh://svn.gnome.org/svn/gimp
>
>   From now on, git-svn will basically stop working, because the
> "git-svn-id:" lines in the commit logs will no longer match its
> configuration. And git-filter-branch is of no use here either, because
> it will change the md5sum of each commit, and git-svn will no longer be
> able to track the commits.

It is not so hard to work around this problem. After you run filter-branch, make sure the ref used by git-svn in refs/remotes points to the new (altered) hash. Then, delete the .git/svn/<remote> directory corresponding to the svn-remote you changed (trunk, probably). When you next run "git svn fetch", git-svn will regenerate its revmap using the new hash, and everything should be peachy after that.

-- 
-Steven Walter <stevenrwalter@gmail.com>
"A human being should be able to change a diaper, plan an invasion,
butcher a hog, conn a ship, design a building, write a sonnet, balance
accounts, build a wall, set a bone, comfort the dying, take orders,
give orders, cooperate, act alone, solve equations, analyze a new
problem, pitch manure, program a computer, cook a tasty meal, fight
efficiently, die gallantly. Specialization is for insects."
 -Robert Heinlein
Previous: Sam Hocevar
Message 2 of 2 in “git-svn equivalent to "svn switch --relocate"”
  1. Sam HocevarJun 17, 2008
  2. Steven WalterJun 17, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.