On 7/25/08, Jakub Narebski <jnareb@xxxxxxxxx> wrote: > On Thu, 24 Jul 2008, Nguyen Thai Ngoc Duy wrote: > > > On 7/24/08, Jakub Narebski <jnareb@xxxxxxxxx> wrote: > > > > > > Second, I think you can simply special case .git* files (.gitignore, > > > .gitattributes, .gitmodules), and always check them out for all > > > intermediate directories (unless configured otherwise, of course). > > > So for example if you have the following directory structure: > > > > > > A/.gitignore > > > A/a > > > A/B1/.gitignore > > > A/B1/b > > > A/B2/.gitignore > > > A/B2/c > > > > > > and you are checking out only subdirectory 'B1' (and all files in it; > > > if subdirectories are checked out recursively it depends on > > > configuration), and if for example there is .gitignore in every > > > directory, then checked out tree would look like this: > > > > > > A/.gitignore > > > A/B1/.gitignore > > > A/B1/b > > > > > > The ability to do this is one of advantages of 'sparse' checkout over > > > 'subtree' checkout. > > > > Or teach git to use index version of those files. Or collect all those > > files, combine them and put the result to .git/info/exclude (and > > similar places). Anyway well organized repos won't have this problem. > > > > Checking some files out as read-only (like this case) may be > > interesting. Though I do not how much complicated it can be. > > > I think teaching git to use index version of .git* files (.gitignore, > .gitattributes, .gitmodules) would be much more work than adding > default rule that .git* files in leading directories are by default > checked out, just like leading directories are checked out. This > would limit modifying git code, I think, and chances for errors. > > Having "leading" directories and files read-only would be a good idea, > I think. > > I don't understand the sentence "well organized repos won't have this > problem". I think well organized repos _would_ have this problem, > because of maintained and distributed top-level .gitignore and > .gitattributes. I wrote that with svn repos in mind. If those repos are to be partially checked out, .svnignore would be in subdirectories rather than at toplevel. Anyway that may not be true. > P.S. I hope that 'sparse checkout' feature would be ready for 1.7.0 > > -- > Jakub Narebski > Poland > -- Duy -- 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