From: Junio C Hamano <gitster@pobox.com>
To: Michael Haggerty <mhagger@alum.mit.edu>
Cc: Andy Lutomirski <luto@amacapital.net>, git@vger.kernel.org
Subject: Re: Verifiable git archives?
Date: Tue, 21 Jan 2014 11:38:35 -0800 [thread overview]
Message-ID: <xmqqiotdunus.fsf@gitster.dls.corp.google.com> (raw)
In-Reply-To: <52DB1DB4.7080806@alum.mit.edu> (Michael Haggerty's message of "Sun, 19 Jan 2014 01:35:00 +0100")
Michael Haggerty <mhagger@alum.mit.edu> writes:
> On 01/09/2014 09:11 PM, Junio C Hamano wrote:
>> Andy Lutomirski <luto@amacapital.net> writes:
>>
>>> It's possible, in principle, to shove enough metadata into the output
>>> of 'git archive' to allow anyone to verify (without cloning the repo)
>>> to verify that the archive is a correct copy of a given commit. Would
>>> this be considered a useful feature?
>>>
>>> Presumably there would be a 'git untar' command that would report
>>> failure if it fails to verify the archive contents.
>>>
>>> This could be as simple as including copies of the commit object and
>>> all relevant tree objects and checking all of the hashes when
>>> untarring.
>>
>> You only need the object name of the top-level tree. After "untar"
>> the archive into an empty directory, make it a new repository and
>> "git add . && git write-tree"---the result should match the
>> top-level tree the archive was supposed to contain.
>> [...]
>
> This wouldn't work if any files were excluded from the archive using
> gitattribute "export-ignore" (or "export-subst", which you already
> mentioned in a follow-up email).
Correct. By "and such" below, I meant any and all futzing that
makes the resulting working tree different from the tree object
being archived ;-) That includes the line-ending configuration
and other things as well.
Also, if you used keyword substitution and such when creating an
archive, then the filesystem entities resulting from expanding
it would not match the original.
next prev parent reply other threads:[~2014-01-21 19:38 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-01-09 3:10 Verifiable git archives? Andy Lutomirski
2014-01-09 19:26 ` Stefan Beller
2014-01-09 20:11 ` Junio C Hamano
2014-01-09 20:51 ` Andy Lutomirski
2014-01-09 22:46 ` Junio C Hamano
2014-01-09 22:50 ` Andy Lutomirski
2014-01-19 0:35 ` Michael Haggerty
2014-01-21 19:38 ` Junio C Hamano [this message]
2014-01-25 21:56 ` Andy Lutomirski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=xmqqiotdunus.fsf@gitster.dls.corp.google.com \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
--cc=luto@amacapital.net \
--cc=mhagger@alum.mit.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).