Chris Shoemaker <c.shoemaker@xxxxxxx> wrote: > On Mon, Oct 15, 2007 at 04:45:13PM +0200, Karl Hasselström wrote: > > On 2007-10-15 09:07:21 +0200, Benoit SIGOURE wrote: > > > > > - git svn create-ignore (to create one .gitignore per directory > > > from the svn:ignore properties. This has the disadvantage of > > > committing the .gitignore during the next dcommit, > > > > I built ignore support for git-svnignore a long time ago. It converts > > the per-directory svn:ignore to per-directory .gitignore at commit > > import time, which is very handy: > > > > -I <ignorefile_name>:: > > Import the svn:ignore directory property to files with this > > name in each directory. (The Subversion and GIT ignore > > syntaxes are similar enough that using the Subversion patterns > > directly with "-I .gitignore" will almost always just work.) > > > > The only downside with that is that svn ignore patterns are > > non-recursive, while git ignore patterns are recursive. This could be > > solved by prefixing them with a "/". > > Has anyone put any thought into mapping the other direction? > i.e. .gitignore -> svn:ignore If we support .gitignore <-> svn:ignore in git-svn; bidirectional, transparent mapping is the only way I want to go. This means that *all* .gitignore files will be translated to svn:ignore files and vice versa; and the .gitignore files will be NOT be committed to SVN itself, but present in the git-svn created mirrors. Recursive .gitignore definitions will be mapped to svn:ignore recursively on the client side; and non-recursive ones will only map to one directory. Sound good? I may be sleepy at the moment, but the thought of implementing this is sounding complicated now... One goal of git-svn is that other users shouldn't be able to tell if a user is using git-svn or plain svn; even. But back to submodules, I plan on mapping svn:externals <=> .gitmodules files in a similar fashion. .gitmodule files will never be seen by SVN users, period. That being said, the first step to submodule/externals support in git-svn will be to allow /any/ git repository to use a submodule that points to SVN; and then git-submodule will invoke git-svn if it sees such a submodule. Yes, I have a plan, sort of... Since externals/submodules don't operate recursively in either system like .gitignore; supporting svn:externals <=> submodules will be much easier and done first[1] :) [1] - I've personally rarely bothered with putting svn:ignores in the repository and have been very much spoiled by .git/info/exclude; whereas externals support I have semi-immediate use for. -- Eric Wong - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html