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

RE: [Question] Signature calculation ignoring parts of binary files

From
Randall S. Becker <rsbecker@nexbridge.com>
Date
Sep 12, 2018, 20:53 UTC
Message-ID
<004e01d44ada$b4a11ad0$1de35070$@nexbridge.com>
In-Reply-To
<4102803b-d5de-5812-4cef-569c9869fed1@kdbg.org>
Show 31 quoted lines
> -----Original Message-----
> From: git-owner@vger.kernel.org <git-owner@vger.kernel.org> On Behalf
> Of Johannes Sixt
> Sent: September 12, 2018 4:48 PM
> To: Randall S. Becker <rsbecker@nexbridge.com>
> Cc: git@vger.kernel.org
> Subject: Re: [Question] Signature calculation ignoring parts of binary files
> 
> Am 12.09.18 um 21:16 schrieb Randall S. Becker:
> > I feel really bad asking this, and I should know the answer, and yet.
> >
> > I have a binary file that needs to go into a repo intact (unchanged).
> > I also have a program that interprets the contents, like a textconv,
> > that can output the relevant portions of the file in whatever format I
> > like - used for diff typically, dumps in 1K chunks by file section.
> > What I'm looking for is to have the SHA1 signature calculated with
> > just the relevant portions of the file so that two actually different
> > files will be considered the same by git during a commit or status. In
> > real terms, I'm trying to ignore the Creator metadata of a JPG because
> > it is mutable and irrelevant to my repo contents.
> >
> > I'm sorry to ask, but I thought this was in .gitattributes but I can't
> > confirm the SHA1 behaviour.
> 
> You are looking for a clean filter. See the 'filter' attribute in gitattributes(5).
> Your clean filter program or script should strip the unwanted metadata or set
> it to a constant known-good value.
> 
> (You shouldn't need a smudge filter.)
> 
> -- Hannes
Thanks Hannes. I thought about the clean filter, but I don't actually want to modify the file when going into git, just for SHA calculation. I need to be able to keep some origin metadata that might change with subsequent copies, so just cleaning the origin is not going to work - actually knowing the original author is important to our process. My objective is to keep the original file 100% exact as supplied and then ignore any changes to the metadata that I don't care about (like Creator) if the remainder of the file is the same.

Regards, Randall

Previous: Johannes SixtNext: Randall S. Becker
Message 3 of 10 in “[Question] Signature calculation ignoring parts of binary files”
  1. Randall S. BeckerSep 12, 2018
  2. Johannes SixtSep 12, 2018
  3. Randall S. BeckerSep 12, 2018
  4. Randall S. BeckerSep 12, 2018
  5. Junio C HamanoSep 12, 2018
  6. Randall S. BeckerSep 13, 2018
  7. Junio C HamanoSep 13, 2018
  8. Randall S. BeckerSep 13, 2018
  9. Junio C HamanoSep 13, 2018
  10. Randall S. BeckerSep 13, 2018

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.