Re: git and binary files

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 16 Jan 2008, Jeff King wrote:

On Wed, Jan 16, 2008 at 03:39:06PM +0200, Petko Manolov wrote:

What i am trying to suggest is that there might be cases when you need
something in the repository, but you don't want GIT to keep it's history
nor it's predecessors.  Leaving it out breaks the atomicity of such
repository and makes the project management more complex.

But not versioning some files while versioning others breaks the
atomicity of project version, which is at the core of git's model. There
is no such thing as "this file is at revision X, but that one is at
revision Y." There is only "the project is at revision X."

Sigh.  You are right.

However, the said project is kind of exception. The binaries are there from the very beginning - they are indivisible part of the project and it won't work without them. This is why i am not worried if i revert to previous source code version, but actually check-out fresh binary - in my case it won't break things.

There's a few examples out there that shows how to solve this, but it
seems inconvenient and involves branching, cloning, etc.  Isn't it
possible to add something like:

	"git nohistory firmware.bin"

or
	"git nohistory -i-understand-this-might-be-dangerous firmware.bin"

Not easily. It goes against the underlying data model at the core of
git.

Damn, i knew you'd say something like this. :-)

How big are your firmware files? How often do they change, and how large are the changes? IOW, have you confirmed that repacking does not produce an acceptable delta, meaning you get versioning for very low space cost?

Changes don't happen too often, but the size of everything binary in the tree easily goes to about 100MB. Three commits later it ends up at about 300MB...


cheers,
Petko
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux