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

Re: [RFD] Proposal for git-svn: storing SVN metadata (git-svn-id) in notes

From
Dave Zarzycki <zarzycki@apple.com>
Date
May 29, 2011, 06:37 UTC
Message-ID
<0DF6602C-9DF3-42B3-AFB1-CDAA71D9E2F0@apple.com>
In-Reply-To
<BANLkTinorqTQOBw46mYJYfEWTEXC+Myzpw@mail.gmail.com>
On May 28, 2011, at 8:55 AM, Ævar Arnfjörð Bjarmason wrote:
> One good thing about git-svn's current system is that you can easily
> share your repository with someone else, and they can bootstrap from
> the same commits.
I wish that was practical for some projects.
It would be a huge improvement if git-svn could fully incorporate *all* of the metadata that it needs into native git objects (notes/tags/something). That way a git clone of a git-svn repository doesn't need to re-bootstrap anything. :-)
For example, a project that I follow has 26k branches (one per bug fix due to organizational workflow/policy). The project took five days to "git svn clone -s" and the re-bootstrap after blowing away the .git/svn directory is similarly painful. Why? Well, let's consider how much data must be rebuilt:
$ git svn gc
$ find */.git/svn -type f -name unhandled.log.gz -print0 | xargs -0 rm
$ du -sh .git/svn
445M	.git/svn
$ find .git/svn | wc -l
   52467
$ 
Crazy, huh?
davez
P.S. -- To the credit of git, the space savings are incredible for this project. The svn repository is 33.6 GiB vs 133.2 MiB for git (minus git-svn and git-reflog overhead). That's ~260x!
Previous: Jakub NarebskiNext: Eric Wong
Message 5 of 8 in “[RFD] Proposal for git-svn: storing SVN metadata (git-svn-id) in notes”
  1. Jakub NarebskiMay 28, 2011
  2. Arnaud LacurieMay 28, 2011
  3. Ævar Arnfjörð BjarmasonMay 28, 2011
  4. Jakub NarebskiMay 28, 2011
  5. Dave ZarzyckiMay 29, 2011
  6. Eric WongMay 31, 2011
  7. Jakub NarebskiMay 31, 2011
  8. Michael HaggertyMay 31, 2011

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.