On Dec 10, 2006, at 13:26:32, Jakub Narebski wrote:
The idea is to not store /etc in git directly, but use import/
export scripts, which for example saves permissions and ownership
in some file also tracked by git on import, and restores correct
permissions on export. That is what I remember from this
discussion. This of course means that you would have to write your
own porcelain...
What about mentioned in other email IsiSetup?
The real problem I have with that is you literally have to duplicate
all sorts of functionality. I want to run "foo-status" in /etc and
get something useful, but if /etc is not a git directory in and of
itself then you have to duplicate most of "git-status" anyways. And
the same applies to all the other commands. From what I can see of
IsiSetup the tools for checking out, merging, modifying, cloning, etc
are all much more limited and immature than the ones available
through GIT/cogito, and I would be loathe to discard all that extra
functionality and duplicate a few thousand lines of code in the name
of "concept purity".
GIT already has _some_ idea about file permissions, it just discards
most of the data before writing to disk. Of course, adding POSIX
ACLs and user-extended-attributes requires a new data format, but
those are very similar to filesystem permissions; they differ only in
amount of data stored, not in purpose.
Import/export scripts literally require wrapping every single GIT
command with a script that changes directory a few times, reads from
a different checked-out tree, and permutes some extended-attribute
data slightly before storing it in the underlying GIT tree. Even
without adding any new functionality whatsoever that doubles the
amount of code just for finding your repository and checking command-
line arguments, and that's a crazy trade-off to make in any situation.
Cheers,
Kyle Moffett
-
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