Re: metastore

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: <david@...>
Cc: Junio C Hamano <gitster@...>, Johannes Schindelin <Johannes.Schindelin@...>, 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 - 6:02 pm

On Sun, 16 Sep 2007, david@lang.hm wrote:


A lot of the git commands are actually currently shell scripts  that call 
back to git, so that's not too different. The reason to have a single copy 
of the writing program is that it would be able to get the whole set of 
differences that need to be handled, and first pick out the metadata file, 
process it to figure out the writing instructions once, figure out the 
changes in the writing instructions, and figure out the changes in the 
content, and decide what to do.


This is two-way merge, not three-way merge. The basic concept is that 
you're in state A, and you want to be in state B. Rather than writing out 
all of state B, you write out all of state B that's different from state 
A. Think of taking a diff of two big trees and then applying it as a 
patch, instead of copying the new tree onto the old tree; the benefit is 
that stuff that doesn't change doesn't get rewritten, and the diff is 
blazingly fast, given how we store our information.

3-way merge will be handled by git, and not in a live /etc directory 
anyway (that is, you'd want to fix up the metadata files as plain text 
files, not as metadata bits on a checked out directory; otherwise, you'll 
be trying to put conflict markers in mode bits, and that's clearly not 
what you want).


While we're at it, you probably don't even want to write the permission 
file to the live filesystem. It's just one more thing that could leak 
information, and changes to the permissions of files that you record by 
committing the live filesystem would presumably be done by changing the 
permissions of files in the filesystem, not by changing the text file.

(Of course, you could check out the same commits as ordinary source, with 
developer-owned 644 files and a 644 "permissions" file, and there you'd 
have the permissions file appear in the work tree, and you could edit it 
and check it in in a totally mundane way.)


You probably want to be able to keep local uncommitted changes. People 
like to be able to have things slightly different in their particular 
deployment from the way things are in the repository, for stuff that only 
applies to one system and isn't "how it should be".

	-Daniel
*This .sig left intentionally blank*
-
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)