Re: git fast-import: how to prevent incremental commit with no changes

2 messages, 2 authors, 2016-06-15 · open the first message on its own page

Re: git fast-import: how to prevent incremental commit with no changes

From: Junio C Hamano <hidden>
Date: 2016-06-15 23:01:01

Timo Teras [off-list ref] writes:
I'm trying to script a setup that would periodically import a tarball
to git with fast-import. But things do not always change, so I'd like
fast-import to be able to not do the commit in case there is no change.

That is, I'm constructing the commit with "deleteall" + importing each
object by mark after that. Now, in case nothing changed, fast-import
will happily create an empty commit for me.

Would it be possible to add some flag that would make commit fail in
case nothing changed?

Any suggestions how to do this?
I am not sure if such a conditional logically belongs to what
fast-import does.  Would it be an option for your script to rewind
the HEAD after the import is done and it finds that the tarball did
not have anything interesting new?

Re: git fast-import: how to prevent incremental commit with no changes

From: Timo Teras <hidden>
Date: 2016-06-15 23:01:02

On Tue, 06 May 2014 12:18:16 -0700
Junio C Hamano [off-list ref] wrote:
Timo Teras [off-list ref] writes:
quoted
I'm trying to script a setup that would periodically import a
tarball to git with fast-import. But things do not always change,
so I'd like fast-import to be able to not do the commit in case
there is no change.

That is, I'm constructing the commit with "deleteall" + importing
each object by mark after that. Now, in case nothing changed,
fast-import will happily create an empty commit for me.

Would it be possible to add some flag that would make commit fail in
case nothing changed?

Any suggestions how to do this?
I am not sure if such a conditional logically belongs to what
fast-import does.  Would it be an option for your script to rewind
the HEAD after the import is done and it finds that the tarball did
not have anything interesting new?
Yes, this is what I ended up with for now. I wanted to avoid this mostly
so that I would not need to run "git gc --prune=now" or similar after
each import (or at least not "often").

Thanks.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help