SZEDER Gábor <szeder@xxxxxxxxxx> writes: > 'rerere gc' prunes resolutions of conflicted merges that occurred long > time ago, and when doing so it takes the creation time of the > conflicted automerge results into account. This can cause the loss of > frequently used conflict resolutions (e.g. long-living topic branches > are merged into a regularly rebuilt integration branch (think of git's > pu)) when they become old enough to exceed 'rerere gc's threshold. > > To prevent the loss of valuable merge resolutions 'rerere' will (1) > update the timestamp of the recorded conflict resolution (i.e. > 'postimage') each time when encountering and resolving the same merge > conflict, and (2) take this timestamp, i.e. the time of the last usage > into account when gc'ing. Thanks. > +static time_t rerere_last_used_at(const char *name) > +{ > + struct stat st; > + return stat(rerere_path(name, "postimage"), &st) ? (time_t) 0 : st.st_mtime; > +} Doesn't has_rerere_resolution() already do a stat on this path? There are only two allers of the function so it would probably make sense to pass a pointer to struct stat from the caller to avoid one extra call to stat. -- 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