Johan Herland <johan@xxxxxxxxxxx> writes: > On Friday 20 July 2007, David Kastrup wrote: >> Johan Herland <johan@xxxxxxxxxxx> writes: > >> > 4. Whether or not git should track directories by default. You >> > say yes, I say no. >> >> Element of least surprise. But since my proposal allows easy and >> intuitive declaration of the preference at user, project, and >> directory level without one choice messing with the choice of other >> projects and contributors with mixed preferences, this is quite >> unimportant. >> >> We are in agreement that adding or removing the tracking explicitly >> for a single directory might be useful to have. But it can't be >> the only way. > > As long as you can add/remove tracking recursively for a whole > (sub)tree, I don't see what's the problem. Neither do I. But a --directory option never is recursive. That is the whole point. Probably we are in violent agreement again. > Of course, if you want to change the default behaviour, you should > be able either set a config variable somewhere, or - as a last > resort - alias git-add and git-rm to always supply the appropriate > command-line option. Or declare diverging behaviors using a !. or . entry in the gitignore mechanisms. Which work everywhere where we need them. >> > 5. How the tracking of directories should be implemented in git's >> > object database. I want to keep the index/tree as-is except for >> > adding directory entries (w/mode 040000) for the tracked >> > directories only. You seem to want to add directory entries for >> > _all_ directories and then additional "." entries for directories >> > you don't want deleted if/when empty. >> >> No. I don't want to change _anything_ for untracked directories. >> They are, as previously, implied by the contents and have a "tree" >> entry for efficiency reasons. Nothing new here. >> >> The directory mode entries are named "." and are for tracked >> directories only. > > Ok. So our difference in opinion on implementation is even smaller > than I imagined; basically only whether the directory is tracked by > a mode "040000" entry, or by a "." entry. Actually, even smaller: I'd track them by a "." entry with mode 1777755755 or whatever is the natural expression for "this is a directory". The mode would be different from the existing "this is a tree". _If_ one wants at one time track permissions of files apart from "x", the "." entry would be natural for carrying directory permissions. Without ".", you basically tell git "I don't care about the existence of this directory. Just do what is necessary for checking out my files". >> > Am I making sense, or have I misunderstood our misunderstandings? >> >> The latter. You are violently arguing for what I outlined. Which >> probably shows that I am not the best at explaining my ideas, and >> that it reflects badly upon them. > > That probably goes for both of us :) > > Well, as long as we have this clarified, I don't see much point in > continuing this part of the thread. I feel confident that the git > community as a whole will converge on the best technical solution, > once it surfaces. I'll probably crank out some insolently primitive proof of concept eventually. -- David Kastrup - 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