[PATCH] Implement --recover for git-*-fetch

With the --recover option, we verify that we have absolutely
everything reachable from the target, not assuming that things
reachable from refs will be complete.

Signed-off-by: Daniel Barkalow <barkalow@iabervon.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Daniel Barkalow 2005-09-26 21:38:08 -04:00 коммит произвёл Junio C Hamano
Родитель 5da1606d0b
Коммит 820eca68c2
5 изменённых файлов: 13 добавлений и 1 удалений

Просмотреть файл

@ -15,6 +15,7 @@ int get_tree = 0;
int get_history = 0;
int get_all = 0;
int get_verbosely = 0;
int get_recover = 0;
static unsigned char current_commit_sha1[20];
void pull_say(const char *fmt, const char *hex)
@ -214,7 +215,9 @@ int pull(char *target)
return -1;
}
for_each_ref(mark_complete);
if (!get_recover) {
for_each_ref(mark_complete);
}
if (interpret_target(target, sha1))
return error("Could not interpret %s as something to pull",

Просмотреть файл

@ -40,6 +40,9 @@ extern int get_all;
/* Set to be verbose */
extern int get_verbosely;
/* Set to check on all reachable objects. */
extern int get_recover;
/* Report what we got under get_verbosely */
extern void pull_say(const char *, const char *);

Просмотреть файл

@ -491,6 +491,8 @@ int main(int argc, char **argv)
} else if (argv[arg][1] == 'w') {
write_ref = argv[arg + 1];
arg++;
} else if (!strcmp(argv[arg], "--recover")) {
get_recover = 1;
}
arg++;
}

Просмотреть файл

@ -231,6 +231,8 @@ int main(int argc, char **argv)
get_verbosely = 1;
else if (argv[arg][1] == 'w')
write_ref = argv[++arg];
else if (!strcmp(argv[arg], "--recover"))
get_recover = 1;
else
usage(local_pull_usage);
arg++;

Просмотреть файл

@ -119,6 +119,8 @@ int main(int argc, char **argv)
} else if (argv[arg][1] == 'w') {
write_ref = argv[arg + 1];
arg++;
} else if (!strcmp(argv[arg], "--recover")) {
get_recover = 1;
}
arg++;
}