{"thread":{"id":"12666","subject":"git-svn clone duplicates content","startedAt":"2008-03-13T09:52:15Z","lastAt":"2008-03-13T11:36:21Z","messageCount":3,"participants":["martin f krafft","Björn Steinbrink"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"71914","messageId":"20080313095215.GA22241@piper.oerlikon.madduck.net","threadId":"12666","inReplyTo":null,"subject":"git-svn clone duplicates content","fromName":"martin f krafft","fromEmail":"madduck@madduck.net","sentAt":"2008-03-13T09:52:15Z","receivedAt":"2008-03-13T09:52:15Z","isPatch":false,"sender":{"key":"madduck@madduck.net","avatar":null},"body":"Hi list,\n\nif I\n\n  git-svn clone --stdlayout svn://svn.debian.org/svn/python-modules/packages/python-docutils\n\nthen I get\n\n  drwx------ 3 madduck madduck 4096 2008-03-13 10:11 debian/\n  drwx------ 3 madduck madduck 4096 2008-03-13 10:11 trunk/\n  drwx------ 3 madduck madduck 4096 2008-03-13 10:11 trunk/debian/\n\nand the diff between the two debian directories is equivalent to the\nlast commit to the trunk. If I create a new branch off the remote\n'trunk' branch, then the trunk/ directory will be gone, as it\nshould.\n\nI am a bit wary to dcommit off anything else than master though for\nI've already killed SVN repos with git-svn in the past. I'd rather\nnot to that to Debian's python-modules repo, or else would have to\nspend the rest of my life hidden on some island.\n\nIt seems that master is branched off a tag in this case.\nDoes anyone have an idea what's going on?\nIs this something weird in the svn or with git-svn?\n\n-- \nmartin | http://madduck.net/ | http://two.sentenc.es/\n \nwhat do you mean, it's not packaged in debian?\n \nspamtraps: madduck.bogus@madduck.net\n"},{"id":"71917","messageId":"20080313113013.GA31522@atjola.homenet","threadId":"12666","inReplyTo":"20080313095215.GA22241@piper.oerlikon.madduck.net","subject":"Re: git-svn clone duplicates content","fromName":"Björn Steinbrink","fromEmail":"b.steinbrink@gmx.de","sentAt":"2008-03-13T11:30:13Z","receivedAt":"2008-03-13T11:30:13Z","isPatch":false,"sender":{"key":"b.steinbrink@gmx.de","avatar":"https://avatars.githubusercontent.com/u/230962?v=4"},"body":"On 2008.03.13 10:52:15 +0100, martin f krafft wrote:\n> Hi list,\n> \n> if I\n> \n>   git-svn clone --stdlayout svn://svn.debian.org/svn/python-modules/packages/python-docutils\n> \n> then I get\n> \n>   drwx------ 3 madduck madduck 4096 2008-03-13 10:11 debian/\n>   drwx------ 3 madduck madduck 4096 2008-03-13 10:11 trunk/\n>   drwx------ 3 madduck madduck 4096 2008-03-13 10:11 trunk/debian/\n> \n> and the diff between the two debian directories is equivalent to the\n> last commit to the trunk. If I create a new branch off the remote\n> 'trunk' branch, then the trunk/ directory will be gone, as it\n> should.\n> \n> I am a bit wary to dcommit off anything else than master though for\n> I've already killed SVN repos with git-svn in the past. I'd rather\n> not to that to Debian's python-modules repo, or else would have to\n> spend the rest of my life hidden on some island.\n> \n> It seems that master is branched off a tag in this case.\n> Does anyone have an idea what's going on?\n> Is this something weird in the svn or with git-svn?\n\nThe \"fetch\" part of git-svn will create a master branch if it doesn't\nexist(*) and makes it point to whatever branch was last fetched. In your\ncase, it seems that the last change on the svn side was to create tag\n0.4-5, so master pointed to that one.\n\nAs things are, a \"git reset --hard remotes/trunk\" (or wherever you want\nyour master to descend from) is pretty mandatory after git svn clone.\nThe example in the man page \"kind of\" mentions that. ;-)\n\nBjörn\n\n(*) Which can be a bit \"surprising\", because even if you don't want a\n    master branch and deleted the original one, the next fetch will\n    create a new one.\n"},{"id":"71918","messageId":"20080313113621.GA13221@piper.oerlikon.madduck.net","threadId":"12666","inReplyTo":"20080313113013.GA31522@atjola.homenet","subject":"Re: git-svn clone duplicates content","fromName":"martin f krafft","fromEmail":"madduck@madduck.net","sentAt":"2008-03-13T11:36:21Z","receivedAt":"2008-03-13T11:36:21Z","isPatch":false,"sender":{"key":"madduck@madduck.net","avatar":null},"body":"also sprach Björn Steinbrink <B.Steinbrink@gmx.de> [2008.03.13.1230 +0100]:\n> The \"fetch\" part of git-svn will create a master branch if it\n> doesn't exist(*) and makes it point to whatever branch was last\n> fetched. In your case, it seems that the last change on the svn\n> side was to create tag 0.4-5, so master pointed to that one.\n\nThat makes sense.\n\n> As things are, a \"git reset --hard remotes/trunk\" (or wherever you\n> want your master to descend from) is pretty mandatory after git\n> svn clone. The example in the man page \"kind of\" mentions that.\n> ;-)\n\nI saw that a bit later too. Thanks for the explanation regardless!\n\n-- \nmartin | http://madduck.net/ | http://two.sentenc.es/\n \n\"and if the cloud bursts, thunder in your ear\n you shout and no one seems to hear\n and if the band you're in starts playing different tunes\n i'll see you on the dark side of the moon.\"\n                                                   -- pink floyd, 1972\n \nspamtraps: madduck.bogus@madduck.net\n"}]}