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

How to clone git repository with git-svn meta-data included?

From
Grzegorz Kossakowski <grek@tuffmail.com>
Date
Dec 6, 2008, 12:15 UTC
Message-ID
<493A6CEC.4060601@tuffmail.com>
Hello,

Some folks at Apache are experimenting with Git and we are currently seeking for the git-svn integration that fits our needs and infrastructure.

After some evaluation we decided that our setup could be described using following points:
  a) our svn repository remains our main, official server where every committer is obligated to push
their changes to at some time.
  b) we set up clone of svn repository using git-svn. One of our members, Jukka Zitting, maintains
such a service here[1]. Such repositories should be usable both for our committers (that have rights
to push to svn) and our contributors that want to contribute random patches
  c) we want carefully track who committed/contributed what

Basically, a) implies b) and point b) looks little bit problematic right now. Jukka has set up his hosting using method described in his e-mail[2] which basically makes use of git svn. The major problem is that if one clones Jukka's repository then git svn information is not being cloned so committers have no means to push their changes to main, svn server.

I've tried to play a little bit around with this issue and I tried to copy information from .git directory found on Jukka's server. This made me able to push my changes but git svn insisted on rebasing my repository using commits found in svn which is wrong. Basically we want such a setup that uses git repository (Jukka's clone) for pulling changes and local git svn for pushing changes. Git svn should never try to rebase local repository because this will lead to two different trees on two different machines so we won't be able to exchange and merge changesets.

Is it possible with Git right now?

Another point (c) which seems to be brought a couple of times but never a definitive answer has been given, AFAIK. Let's imagine we have committer C and two contributors A and B.

A and B start to work on some feature and C agreed to help A and B and once their work is finished to merge their changes into his repository and eventually push them to main, svn repository. Now A and B work on implementation and from time to time their merge changes from each other. Once they are finished A asks C to merge their work into C's repository. Everything is fine provided we can trust both A and B.

What if A was not fair and has rewritten a few commits coming from B so they contain malicious code? How we can detect something like that and how C be sure that what he merges is really work attributed by correct names?

Thanks for your answers.

[1] http://jukka.zitting.name/git/ [2] http://markmail.org/message/fzzy7nepk7olx5fl

-- 
Best regards,
Grzegorz Kossakowski
Next: Jacob Helwig
Message 1 of 17 in “How to clone git repository with git-svn meta-data included?”
  1. Grzegorz KossakowskiDec 6, 2008
  2. Jacob HelwigDec 7, 2008
  3. Nick AndrewDec 8, 2008
  4. Peter HarrisDec 7, 2008
  5. Grzegorz KossakowskiDec 7, 2008
  6. Peter HarrisDec 7, 2008
  7. Grzegorz KossakowskiDec 7, 2008
  8. Peter HarrisDec 7, 2008
  9. Michael J GruberDec 8, 2008
  10. Grzegorz KossakowskiDec 8, 2008
  11. Peter HarrisDec 8, 2008
  12. Grzegorz KossakowskiDec 8, 2008
  13. Sam VilainDec 9, 2008
  14. Grzegorz KossakowskiDec 9, 2008
  15. Michael J GruberDec 9, 2008
  16. Shawn O. PearceDec 8, 2008
  17. Grzegorz KossakowskiDec 8, 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.