The SHA-1 hash which identifies each commit in git is generated from the
state of the tree at that point and thus having a version of that commit
with binaries and a version without results in -- as far as git is
concerned -- entirely separate commits. It is really useful when the
same commit maps to the same SHA-1 on everyone's copy of the repo, so in
general I would say this is a bad idea.
What I would possibly do in your situation is to have a separate,
binaries-only repository. You could put it in a subdirectory of your
main repo if you liked, and stop it spamming `git status` output by
adding it to .git/info/excludes. Then, you could write a post-commit
hook which could automatically commit the binaries into the binaries
repo, perhaps inserting the commit hash on the main repository which
that binary corresponds to in order to help you map them later on.
There may be a better way around it, but that's probably how I'd go
Angelo Borsotti (Tue, Sep 25, 2012 at 02:11:14AM -0700) >>
> Suppose I have a private repository and a public one. I develop using my
> private repository, and at significant steps I do a commit in which I save
> all, sources] and binaries. The reason for saving binaries is to allow to
> recover a previously committed version without having then to rebuild all
> binaries. When I have completed the development of a feature, I push it to
> a public repository, one that is accessed by an integrator, that takes my
> contributes and other developers' as well, and integrates all of them.
> After having pulled all the contributed, the integrator always rebuilds the
> binaries. Therefore, there is no need for me to push binaries from my
> private repository to the public one, and for him to pull them. Is there a
> way in git to avoid to push and pull binaries in this workflow?
> You received this message because you are subscribed to the Google Groups
> "Git for human beings" group.
> To view this discussion on the web visit
> To post to this group, send email to firstname.lastname@example.org.
> To unsubscribe from this group, send email to
> For more options, visit this group at
You received this message because you are subscribed to the Google Groups "Git
for human beings" group.
To post to this group, send email to email@example.com.
To unsubscribe from this group, send email to
For more options, visit this group at