git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Metadata and checkin file date

From
Andreas Ericsson <ae@op5.se>
Date
Apr 27, 2010, 19:47 UTC
Message-ID
<4BD73F64.1070604@op5.se>
In-Reply-To
<alpine.LFD.2.00.1004272111540.5630@bbs.intern>
On 04/27/2010 09:38 PM, Gerhard Wiesinger wrote:
Show 23 quoted lines
> On Tue, 27 Apr 2010, Andreas Ericsson wrote:
> 
>> On 04/27/2010 07:23 AM, Gerhard Wiesinger wrote:
>>> Hello,
>>>
>>> I'm new to git and I'm looking for the following features:
>>> 1.) Metadata for
>>> a.) directory versioning (e.g. add/rm, mv)
>>
>> If you're talking about empty directories, that feature doesn't
>> exist and I can't imagine why you'd want it to. If you'd care to
>> explain why you want it, I'm sure we can find a different way of
>> achieving your goal.
> 
> Git focuses on content but I think git should also focus on metadata. 
> For example restructuring source code moves (git mv file1.c file2.c, git 
> mv dir1 dir2) should be documented also in the repository like e.g. 
> subversion and commercial SCM like clearcase do. Otherwise we are on 
> "CVS" level.
> 
> Empty directories is a special case and sometimes you need just 
> versioned empty directies.
> 

This has been discussed to death several times before on this mailing list. Browse the archives. There haven't been any new arguments the last 14 times it came up, so I doubt you'll be able to come up with a single good reason to track file renames explicitly.

Show 23 quoted lines
>>> b.) rights (basic: chmod, chow, chgrp, extended: extended attributes
>>> like ACLs and selinux), necessary for versioning e.g. /etc
>>
>> Sounds like you want a backup-program. Some projects have been
>> aimed towards this goal already. I'm sure google can provide
>> more information. AFAIR, most of them work with two hook-scripts
>> that update a regular file with the meta-data of all tracked
>> files. This makes committing and checking out slower than it
>> would otherwise be, but since it's doing more I suppose that's
>> to be expected.
>>
>> Adding it to core git would mean re-designing git's basic data
>> model, which is obviously not something we're about to do on
>> a whim.
> 
> No, I'm NOT looking for a backup program. Every admin has the problem of 
> versioning config files (for example /etc). Versioning of config files 
> makes sense because one can track the changes and e.g. correlate to 
> problems. A backup program doesn't have features like history, committer 
> and comments on file changes. Therefore git would be a perfect tool also 
> for versioning configuration. (Software development doesn't end with the 
> build but typically also has deployment&configuration issues).
> 

Right. So you want a *fancy* backup program and not just any random backup solution. There are solutions for this. Someone else already mentioned them elsewhere in this thread, so I'll refrain from further comments on this.

In short: What you want can be (and has been) done, but it's written as addons and not integral parts of git.

-- 
Andreas Ericsson                   andreas.ericsson@op5.se
OP5 AB                             www.op5.se
Tel: +46 8-230225                  Fax: +46 8-230231

Considering the successes of the wars on alcohol, poverty, drugs and
terror, I think we should give some serious thought to declaring war
on peace.
Previous: Gerhard WiesingerNext: Gerhard Wiesinger
Message 4 of 10 in “Metadata and checkin file date”
  1. Gerhard WiesingerApr 27, 2010
  2. Andreas EricssonApr 27, 2010
  3. Gerhard WiesingerApr 27, 2010
  4. Andreas EricssonApr 27, 2010
  5. Gerhard WiesingerApr 27, 2010
  6. Jakub NarebskiApr 27, 2010
  7. Jakub NarebskiApr 27, 2010
  8. Jakub NarebskiApr 27, 2010
  9. Gerhard WiesingerApr 27, 2010
  10. Jakub NarebskiApr 27, 2010

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.