----- Ursprungligt meddelande ----- > Robin Rosenberg <robin.rosenberg@xxxxxxxxxx> writes: > > > At least JGit does sets uid, gid, ctime, ino and dev fields to zero > > on update. To Git this looks like the stat data does not match and > > a full file compare will be forced even it size and mtime match. > > This > > is in practice unnecessary. Sense JGit's presence by checking if > > ino > > and dev is zero. > > > > Signed-off-by: Robin Rosenberg <robin.rosenberg@xxxxxxxxxx> > > --- > > read-cache.c | 21 +++++++++++++-------- > > 1 file changed, 13 insertions(+), 8 deletions(-) > > > > diff --git a/read-cache.c b/read-cache.c > > index fda78bc..6f13a22 100644 > > --- a/read-cache.c > > +++ b/read-cache.c > > @@ -197,21 +197,26 @@ static int ce_match_stat_basic(struct > > cache_entry *ce, struct stat *st) > > } > > if (ce->ce_mtime.sec != (unsigned int)st->st_mtime) > > changed |= MTIME_CHANGED; > > - if (trust_ctime && ce->ce_ctime.sec != (unsigned > > int)st->st_ctime) > > + > > + int minimal_stat = (ce->ce_ino == 0 && ce->ce_dev == 0); > > decl-after-stmt. Ok, btw. Which C version do we adhere to? C99 is quite old by now. > Besides, is it sane to do this unconditionally to affect people who > do not use JGit? > Would a config option like core.minstat be better? The name would imply no dynamic detection. - robin -- 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