{"thread":{"id":"16595","subject":"git-svn feature request: exclude certain subpaths on clone","startedAt":"2008-12-04T16:43:47Z","lastAt":"2008-12-06T00:13:04Z","messageCount":2,"participants":["Wade Berrier","Eric Wong"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"97153","messageId":"bbbeeccd0812040843p3e5547c4tac88b0d01562a37f@mail.gmail.com","threadId":"16595","inReplyTo":null,"subject":"git-svn feature request: exclude certain subpaths on clone","fromName":"Wade Berrier","fromEmail":"wberrier@gmail.com","sentAt":"2008-12-04T16:43:47Z","receivedAt":"2008-12-04T16:43:47Z","isPatch":false,"sender":{"key":"wberrier@gmail.com","avatar":null},"body":"Hi,\n\nConsider the following example layout:\n\ntrunk/src\ntrunk/big_fat_binary_blobs\ntrunk/doc\n\nI think it would be really nice to be able to tell git-svn to ignore\n'big_fat_binary_blobs' while keeping 'src' and 'doc'.\n\nI know someone is thinking, \"Why did you check in\n'big_fat_binary_blobs' in the first place?\"  In this case, the\nrepository is out of my control.  For the svn users, it's not that big\nof a deal since they only get one HEAD version of the binary_blobs.\nBut when trying to clone with git-svn, I repeatedly get out of memory\nand packing errors (every 1000 commits) when packing several revisions\nof these binary_blobs.  (Now, that may be a bug in of itself... which\ncan reproduced by creating an svn repo with several revisions of\nKNOPPIX at the same path, followed by a git svn clone )\n\nAnyway, I still think it may be useful to be able to ignore certain\npaths on a clone.  In thinking about the implementation details, I\nfigure probably the best approach would be to manually purge the\nunwanted path after it has been fetched, but before it is committed.\nThat way, if a commit contains changes in paths that are both wanted\nand unwanted, the commit could be 'pruned'.\n\nI've looked at the git-svn script a little, but wanted to solicit\nfeedback and ideas before continuing further.\n\nThoughts?\n\nWade\n"},{"id":"97228","messageId":"20081206001304.GA31770@yp-box.dyndns.org","threadId":"16595","inReplyTo":"bbbeeccd0812040843p3e5547c4tac88b0d01562a37f@mail.gmail.com","subject":"Re: git-svn feature request: exclude certain subpaths on clone","fromName":"Eric Wong","fromEmail":"normalperson@yhbt.net","sentAt":"2008-12-06T00:13:04Z","receivedAt":"2008-12-06T00:13:04Z","isPatch":false,"sender":{"key":"e@80x24.org","avatar":null},"body":"Wade Berrier <wberrier@gmail.com> wrote:\n> Hi,\n> \n> Consider the following example layout:\n> \n> trunk/src\n> trunk/big_fat_binary_blobs\n> trunk/doc\n> \n> I think it would be really nice to be able to tell git-svn to ignore\n> 'big_fat_binary_blobs' while keeping 'src' and 'doc'.\n> \n> I know someone is thinking, \"Why did you check in\n> 'big_fat_binary_blobs' in the first place?\"  In this case, the\n> repository is out of my control.  For the svn users, it's not that big\n> of a deal since they only get one HEAD version of the binary_blobs.\n> But when trying to clone with git-svn, I repeatedly get out of memory\n> and packing errors (every 1000 commits) when packing several revisions\n> of these binary_blobs.  (Now, that may be a bug in of itself... which\n> can reproduced by creating an svn repo with several revisions of\n> KNOPPIX at the same path, followed by a git svn clone )\n> \n> Anyway, I still think it may be useful to be able to ignore certain\n> paths on a clone.  In thinking about the implementation details, I\n> figure probably the best approach would be to manually purge the\n> unwanted path after it has been fetched, but before it is committed.\n> That way, if a commit contains changes in paths that are both wanted\n> and unwanted, the commit could be 'pruned'.\n> \n> I've looked at the git-svn script a little, but wanted to solicit\n> feedback and ideas before continuing further.\n\nMaybe... What about git-filter-branch?\n\nI realize that doing it at the git-svn level can save bandwidth; but it\nmight not be possible with the way SVN deltas work...\n\nI'll try to get around to splitting git-svn.perl out to separate source\nfiles this weekend so it's easier to navigate.\n\n-- \nEric Wong\n"}]}