{"thread":{"id":"24834","subject":"git-svn mirror in bare repo","startedAt":"2010-08-23T12:24:25Z","lastAt":"2010-08-28T16:45:14Z","messageCount":5,"participants":["Enrico Weigelt","Michael J Gruber","Wesley J. Landaker"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"148749","messageId":"20100823122425.GB12810@nibiru.local","threadId":"24834","inReplyTo":null,"subject":"git-svn mirror in bare repo","fromName":"Enrico Weigelt","fromEmail":"weigelt@metux.de","sentAt":"2010-08-23T12:24:25Z","receivedAt":"2010-08-23T12:24:25Z","isPatch":false,"sender":{"key":"weigelt@metux.de","avatar":null},"body":"\nHi folks,\n\nis it possible to use git-svn w/ an bare repository (eg. using\nan temporary workdir when necessary or directly creating tree\nand commit objects w/o going through workdir at all) ?\n\nI'm running a dozen of mirrors (also from cvs), some from fairly\nlarge and I'd like to get rid of the working copies.\n\n\ncu\n-- \n----------------------------------------------------------------------\n Enrico Weigelt, metux IT service -- http://www.metux.de/\n\n phone:  +49 36207 519931  email: weigelt@metux.de\n mobile: +49 151 27565287  icq:   210169427         skype: nekrad666\n----------------------------------------------------------------------\n Embedded-Linux / Portierung / Opensource-QM / Verteilte Systeme\n----------------------------------------------------------------------\n"},{"id":"148750","messageId":"4C72708B.202@drmicha.warpmail.net","threadId":"24834","inReplyTo":"20100823122425.GB12810@nibiru.local","subject":"Re: git-svn mirror in bare repo","fromName":"Michael J Gruber","fromEmail":"git@drmicha.warpmail.net","sentAt":"2010-08-23T12:58:51Z","receivedAt":"2010-08-23T12:58:51Z","isPatch":false,"sender":{"key":"git@grubix.eu","avatar":"https://avatars.githubusercontent.com/u/233215?v=4"},"body":"Enrico Weigelt venit, vidit, dixit 23.08.2010 14:24:\n> \n> Hi folks,\n> \n> is it possible to use git-svn w/ an bare repository (eg. using\n> an temporary workdir when necessary or directly creating tree\n> and commit objects w/o going through workdir at all) ?\n\nNo.\n\n> I'm running a dozen of mirrors (also from cvs), some from fairly\n> large and I'd like to get rid of the working copies.\n\nYour only option is a different conversion tool. GSoC resulted in a lot\nof code in this direction, but I'm not sure it can do without a workdir.\nIt is based on svndump\n\nMichael\n"},{"id":"148751","messageId":"20100823131348.GC12810@nibiru.local","threadId":"24834","inReplyTo":"4C72708B.202@drmicha.warpmail.net","subject":"Re: git-svn mirror in bare repo","fromName":"Enrico Weigelt","fromEmail":"weigelt@metux.de","sentAt":"2010-08-23T13:13:48Z","receivedAt":"2010-08-23T13:13:48Z","isPatch":false,"sender":{"key":"weigelt@metux.de","avatar":null},"body":"* Michael J Gruber <git@drmicha.warpmail.net> wrote:\n> Enrico Weigelt venit, vidit, dixit 23.08.2010 14:24:\n> > \n> > Hi folks,\n> > \n> > is it possible to use git-svn w/ an bare repository (eg. using\n> > an temporary workdir when necessary or directly creating tree\n> > and commit objects w/o going through workdir at all) ?\n> \n> No.\n\nhmm, can it work with an external workdir ?\n\n> > I'm running a dozen of mirrors (also from cvs), some from fairly\n> > large and I'd like to get rid of the working copies.\n> \n> Your only option is a different conversion tool. GSoC resulted in a lot\n> of code in this direction, but I'm not sure it can do without a workdir.\n> It is based on svndump\n\nI guess that requires access to the raw repository (on the server),\nnot just unprivileged svn client access, right ?\n\n\ncu\n-- \n----------------------------------------------------------------------\n Enrico Weigelt, metux IT service -- http://www.metux.de/\n\n phone:  +49 36207 519931  email: weigelt@metux.de\n mobile: +49 151 27565287  icq:   210169427         skype: nekrad666\n----------------------------------------------------------------------\n Embedded-Linux / Portierung / Opensource-QM / Verteilte Systeme\n----------------------------------------------------------------------\n"},{"id":"148754","messageId":"4C728E2C.8080003@drmicha.warpmail.net","threadId":"24834","inReplyTo":"20100823131348.GC12810@nibiru.local","subject":"Re: git-svn mirror in bare repo","fromName":"Michael J Gruber","fromEmail":"git@drmicha.warpmail.net","sentAt":"2010-08-23T15:05:16Z","receivedAt":"2010-08-23T15:05:16Z","isPatch":false,"sender":{"key":"git@grubix.eu","avatar":"https://avatars.githubusercontent.com/u/233215?v=4"},"body":"Enrico Weigelt venit, vidit, dixit 23.08.2010 15:13:\n> * Michael J Gruber <git@drmicha.warpmail.net> wrote:\n>> Enrico Weigelt venit, vidit, dixit 23.08.2010 14:24:\n>>>\n>>> Hi folks,\n>>>\n>>> is it possible to use git-svn w/ an bare repository (eg. using\n>>> an temporary workdir when necessary or directly creating tree\n>>> and commit objects w/o going through workdir at all) ?\n>>\n>> No.\n> \n> hmm, can it work with an external workdir ?\n\nYou can have the workdir anywhere you like by using the core.worktree\nsetting. So, if you mind the size requirements you can put it onto some\nfast tempdir (tmpfs, say). In fact, if all you do is \"git svn fetch\"\nthen git svn may not even notice a missing worktree (would have to try).\n\"git svn rebase\" does need a worktree.\n\n> \n>>> I'm running a dozen of mirrors (also from cvs), some from fairly\n>>> large and I'd like to get rid of the working copies.\n>>\n>> Your only option is a different conversion tool. GSoC resulted in a lot\n>> of code in this direction, but I'm not sure it can do without a workdir.\n>> It is based on svndump\n> \n> I guess that requires access to the raw repository (on the server),\n> not just unprivileged svn client access, right ?\n\nIn fact, Ram's GSoC project started off with svnrdump which is now part\nof the subversion code base (i.e. in their trunk). It is basically\n\"svndump remote\", i.e. a client outputting svn dump format.\n\nMichael\n\nP.S.: We usually keep cc's when replying here.\n"},{"id":"149167","messageId":"4C793D1A.8050200@icecavern.net","threadId":"24834","inReplyTo":"20100823122425.GB12810@nibiru.local","subject":"Re: git-svn mirror in bare repo","fromName":"Wesley J. Landaker","fromEmail":"wjl@icecavern.net","sentAt":"2010-08-28T16:45:14Z","receivedAt":"2010-08-28T16:45:14Z","isPatch":false,"sender":{"key":"wjl@icecavern.net","avatar":"https://avatars.githubusercontent.com/u/67229?v=4"},"body":"On 08/23/2010 05:24 AM, Enrico Weigelt wrote:\n> is it possible to use git-svn w/ an bare repository (eg. using\n> an temporary workdir when necessary or directly creating tree\n> and commit objects w/o going through workdir at all) ?\n> \n> I'm running a dozen of mirrors (also from cvs), some from fairly\n> large and I'd like to get rid of the working copies.\n\nWhen I have a large repository with git-svn that I only occasionally\nwant to use the working copy of it, here is what I do:\n\n1) git svn clone the SVN repository normally\n2) Create an \"empty\" branch with no files (\"git checkout --orphan\")\n\nWhen I want to update SVN, I do:\n\n  git checkout trunk\n  git svn rebase\n  git checkout empty\n\nWhen I want to push something to SVN I do:\n\n  git checkout trunk\n  git svn dcommit\n  git checkout empty\n\nThis makes it work sort of like a bare repository, but it still works\nwith git-svn. I use this when I have a bunch of SVN repositories I need\nto be able to work with quickly at any time, but I don't want to waste\nthe disk space having all of their working copies checked out\nsimultaneously.\n"}]}