login
Header Space

 
 

Re: metastore

Score:
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Junio C Hamano <gitster@...>
Cc: Johannes Schindelin <Johannes.Schindelin@...>, Daniel Barkalow <barkalow@...>, martin f krafft <madduck@...>, <git@...>, Thomas Harning Jr. <harningt@...>, Francis Moreau <francis.moro@...>, Nicolas Vilz <niv@...>, David <david@...>
Subject: Re: metastore
Date: Sunday, September 16, 2007 - 5:45 pm

some of this duplicates thoughts from other messages in this thread. 
apologies for the duplication, but I want to be clear the response to 
Junio's concerns here as well

On Sun, 16 Sep 2007, Junio C Hamano wrote:


as I understand it, at this point you already choose between three 
options.

1. write to a file (and set the write bit if needed)
2. write to stdout
3. write to a pager program

I am suggesting adding

4. write to a .gitattributes defined program and pass it some parameters.
    (and only if the .gitattributes tell you to)

this should be a very small change to the codepath

or am I missing something major here?

if this program can get the contents of the permission file out of the 
index, then the requirement I listed before to make sure the permission 
file gets written before anything else goes away, and the only requirement 
left is the ability to specify a different write method


I had not thought of this condition.

however, I think this may be easier then you are thinking

we have two conditions.

1. the permission file hasn't changed.

Solution:  do nothing

2. the permission file has changed

Solution: set all the permissions to match the new file

this could be done by useing .gitattributes to specify a different program 
for checking out the permission file, and that program goes through the 
file and sets the permssions on everything. yes this is a bit inefficiant 
compared to diffing the two permission files and only touching the files 
that have changed, but is the efficiancy at this point that critical? if 
so then instead of feeding the program the contents of the new file you 
could feed it the diff between the old and the new file.

in theory you could do this for any file, and it would be a win for some 
files (a large file that has a few changes to it would possibly be more 
efficiant to modify in place then to re-write), but I'm not sure the 
results would be worth the complications. if .gitattributes gains the 
ability to specify the program to be used to write the file, it could also 
gain the ability to specify feeding that file the diff instead of the full 
contents.

the one drawback to just setting all the permissions is that this will 
overrule any local changes to files that weren't otherwise modified. how 
big of a problem is this?


nobody is suggesting anything that wouldn't be at least conditional based 
on some config variable.


this is an area I wasn't aware of, but it doesn't seem that difficult to 
do. the issue (as I address above) is if this needs to be done as a diff 
or if it can be done simply by setting all the permissions according to 
the new file.


this is saying you want a wrapper around git instead of a hook in git.


no matter how small the change? (see the above comments) If so this 
converstion isn't worth continuing, if you are just concerned about 
maintainability and are willing to consider small changes that won't cause 
big maintinance problems then we can continue to discuss if the changes I 
am suggesting are small enough. the need to be able to close the 
vunerability window is a showstopper to many uses.


you don't always have a makefile. if other tools that you use make 
modifications to the files in the locations where they reside, having to 
pull those changes back before you can do a checking is a complication as 
well


but you are not willing to allow the hook to be created, you are saying 
that there would need to be an external wrapper instead.

at this point it appears that having a hook to be able to specify external 
programs at a point where you are already deciding between different 
options would be sufficiant.


this is why I was asking about this approach. do changes like this seem 
small enough to be worth the effort of coding and submitting?

David Lang
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Track /etc directory using Git, Francis Moreau, (Thu Sep 13, 8:11 am)
Re: Track /etc directory using Git, martin f krafft, (Thu Sep 13, 8:31 am)
Re: Track /etc directory using Git, Francis Moreau, (Fri Sep 14, 4:08 am)
Re: Track /etc directory using Git, martin f krafft, (Fri Sep 14, 5:15 am)
Re: Track /etc directory using Git, Thomas Harning Jr., (Fri Sep 14, 1:31 pm)
metastore (was: Track /etc directory using Git), martin f krafft, (Sat Sep 15, 9:26 am)
Re: metastore (was: Track /etc directory using Git), Johannes Schindelin, (Sat Sep 15, 10:10 am)
Re: metastore (was: Track /etc directory using Git), martin f krafft, (Sat Sep 15, 10:54 am)
Re: metastore (was: Track /etc directory using Git), Daniel Barkalow, (Sat Sep 15, 3:56 pm)
Re: metastore (was: Track /etc directory using Git), martin f krafft, (Sun Sep 16, 2:08 am)
Re: metastore (was: Track /etc directory using Git), martin f krafft, (Tue Oct 2, 3:53 pm)
Re: metastore (was: Track /etc directory using Git), Daniel Barkalow, (Tue Oct 2, 5:02 pm)
Re: metastore, David Kastrup, (Tue Oct 2, 4:04 pm)
Re: metastore, David , (Tue Oct 2, 5:15 pm)
Re: metastore, Julian Phillips, (Tue Oct 2, 7:32 pm)
Re: metastore, , (Tue Oct 2, 8:52 pm)
Re: metastore, Johannes Schindelin, (Tue Oct 2, 8:52 pm)
Re: metastore, martin f krafft, (Tue Oct 2, 5:44 pm)
Re: metastore, , (Tue Oct 2, 4:18 pm)
Re: metastore, martin f krafft, (Tue Oct 2, 4:23 pm)
Re: metastore, , (Tue Oct 2, 4:29 pm)
Re: metastore, martin f krafft, (Tue Oct 2, 4:39 pm)
Re: metastore, , (Tue Oct 2, 4:54 pm)
Re: metastore, martin f krafft, (Tue Oct 2, 5:42 pm)
Re: metastore (was: Track /etc directory using Git), Johannes Schindelin, (Sat Sep 15, 6:14 pm)
Re: metastore (was: Track /etc directory using Git), martin f krafft, (Sun Sep 16, 2:14 am)
Re: metastore (was: Track /etc directory using Git), Jan Hudec, (Sun Sep 16, 11:51 am)
Re: metastore (was: Track /etc directory using Git), martin f krafft, (Mon Sep 17, 9:31 am)
Re: metastore (was: Track /etc directory using Git), Jan Hudec, (Sun Sep 16, 11:59 am)
Re: metastore, Junio C Hamano, (Sun Sep 16, 4:06 am)
Re: metastore, , (Sun Sep 16, 5:45 pm)
Re: metastore, Junio C Hamano, (Sun Sep 16, 6:11 pm)
Re: metastore, , (Sun Sep 16, 6:52 pm)
Re: metastore, Junio C Hamano, (Sun Sep 16, 8:58 pm)
Re: metastore, , (Sun Sep 16, 10:31 pm)
Re: metastore, Junio C Hamano, (Mon Sep 17, 12:23 am)
Re: metastore, Daniel Barkalow, (Mon Sep 17, 1:42 pm)
Re: metastore, Junio C Hamano, (Mon Sep 17, 3:19 pm)
Re: metastore, , (Mon Sep 17, 12:35 am)
Re: metastore, Junio C Hamano, (Mon Sep 17, 2:06 am)
Re: metastore, Daniel Barkalow, (Sun Sep 16, 11:51 am)
Re: metastore, , (Sun Sep 16, 5:12 pm)
Re: metastore, Daniel Barkalow, (Sun Sep 16, 6:02 pm)
Re: metastore, , (Sun Sep 16, 6:37 pm)
Re: metastore, martin f krafft, (Mon Sep 17, 9:30 am)
Re: metastore, , (Mon Sep 17, 1:17 pm)
Re: metastore, Josh England, (Mon Sep 17, 3:46 pm)
Re: metastore, Junio C Hamano, (Sun Sep 16, 5:28 pm)
Re: metastore, , (Sun Sep 16, 5:53 pm)
Re: metastore, Daniel Barkalow, (Sun Sep 16, 5:45 pm)
Re: metastore, David Kastrup, (Sun Sep 16, 4:30 am)
Re: metastore, , (Sun Sep 16, 4:19 pm)
Re: metastore (was: Track /etc directory using Git), Johannes Schindelin, (Sat Sep 15, 10:48 pm)
Re: metastore (was: Track /etc directory using Git), Grzegorz Kulewski, (Sat Sep 15, 12:22 pm)
Re: metastore, Randal L. Schwartz, (Sat Sep 15, 7:33 pm)
Re: metastore, Francis Moreau, (Mon Sep 17, 9:04 am)
Re: metastore, Randal L. Schwartz, (Mon Sep 17, 11:32 am)
Re: metastore, , (Sat Sep 15, 8:37 pm)
Re: metastore, Randal L. Schwartz, (Sat Sep 15, 9:10 pm)
Re: metastore, , (Sat Sep 15, 9:49 pm)
Re: metastore (was: Track /etc directory using Git), Johannes Schindelin, (Sat Sep 15, 1:43 pm)
Re: metastore, David Kastrup, (Sat Sep 15, 10:16 am)
Re: Track /etc directory using Git, Nicolas Vilz, (Fri Sep 14, 5:26 pm)
Re: Track /etc directory using Git, Pierre Habouzit, (Sat Sep 15, 10:29 am)
Re: Track /etc directory using Git, martin f krafft, (Sat Sep 15, 11:24 am)
Re: Track /etc directory using Git, Pierre Habouzit, (Sat Sep 15, 11:27 am)
Re: Track /etc directory using Git, martin f krafft, (Sat Sep 15, 11:42 am)
Re: Track /etc directory using Git, Miklos Vajna, (Thu Sep 13, 8:20 am)
Re: Track /etc directory using Git, Francis Moreau, (Fri Sep 14, 4:20 am)
Re: Track /etc directory using Git, martin f krafft, (Sat Sep 15, 12:32 pm)
Re: Track /etc directory using Git, David Kastrup, (Sat Sep 15, 12:57 pm)
speck-geostationary