summaryrefslogtreecommitdiff
path: root/builtin
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2021-02-18 01:21:43 (GMT)
committerJunio C Hamano <gitster@pobox.com>2021-02-18 01:21:43 (GMT)
commite68f62be8dd65cd181be20b414fa45126b39d481 (patch)
tree4db666f1b5c3b3a08ffeb527673e3305526c0c74 /builtin
parent726b11d68a5e9092a668fd42acb3e25394f92995 (diff)
parentc809798b2acf1afdeeea02a9175677590ad8d689 (diff)
downloadgit-e68f62be8dd65cd181be20b414fa45126b39d481.zip
git-e68f62be8dd65cd181be20b414fa45126b39d481.tar.gz
git-e68f62be8dd65cd181be20b414fa45126b39d481.tar.bz2
Merge branch 'js/reflog-expire-stale-fix'
"git reflog expire --stale-fix" can be used to repair the reflog by removing entries that refer to objects that have been pruned away, but was not careful to tolerate missing objects. * js/reflog-expire-stale-fix: reflog expire --stale-fix: be generous about missing objects
Diffstat (limited to 'builtin')
-rw-r--r--builtin/reflog.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/builtin/reflog.c b/builtin/reflog.c
index ca1d807..09541d1 100644
--- a/builtin/reflog.c
+++ b/builtin/reflog.c
@@ -602,6 +602,9 @@ static int cmd_reflog_expire(int argc, const char **argv, const char *prefix)
*/
if (cb.cmd.stalefix) {
repo_init_revisions(the_repository, &cb.cmd.revs, prefix);
+ cb.cmd.revs.do_not_die_on_missing_tree = 1;
+ cb.cmd.revs.ignore_missing = 1;
+ cb.cmd.revs.ignore_missing_links = 1;
if (flags & EXPIRE_REFLOGS_VERBOSE)
printf(_("Marking reachable objects..."));
mark_reachable_objects(&cb.cmd.revs, 0, 0, NULL);