Staging
v0.5.1
https://github.com/git/git
Revision 6dc78e696b8597204b903073da932fc5ed0f419e authored by Junio C Hamano on 22 February 2006, 21:10:37 UTC, committed by Junio C Hamano on 23 February 2006, 00:04:08 UTC
Unless --no-tags flag was given, git-fetch tried to always
follow remote tags that point at the commits we picked up.

It is not very useful to pick up tags from remote unless storing
the fetched branch head in a local tracking branch.  This is
especially true if the fetch is done to merge the remote branch
into our current branch as one-shot basis (i.e. "please pull"),
and is even harmful if the remote repository has many irrelevant
tags.

This proposed update disables the automated tag following unless
we are storing the a fetched branch head in a local tracking
branch.

Signed-off-by: Junio C Hamano <junkio@cox.net>
1 parent 183bdb2
Raw File
Tip revision: 6dc78e696b8597204b903073da932fc5ed0f419e authored by Junio C Hamano on 22 February 2006, 21:10:37 UTC
git-fetch: follow tag only when tracking remote branch.
Tip revision: 6dc78e6
verify-pack.c
#include "cache.h"
#include "pack.h"

static int verify_one_pack(char *arg, int verbose)
{
	int len = strlen(arg);
	struct packed_git *g;
	
	while (1) {
		/* Should name foo.idx, but foo.pack may be named;
		 * convert it to foo.idx
		 */
		if (!strcmp(arg + len - 5, ".pack")) {
			strcpy(arg + len - 5, ".idx");
			len--;
		}
		/* Should name foo.idx now */
		if ((g = add_packed_git(arg, len, 1)))
			break;
		/* No?  did you name just foo? */
		strcpy(arg + len, ".idx");
		len += 4;
		if ((g = add_packed_git(arg, len, 1)))
			break;
		return error("packfile %s not found.", arg);
	}
	return verify_pack(g, verbose);
}

static const char verify_pack_usage[] = "git-verify-pack [-v] <pack>...";

int main(int ac, char **av)
{
	int errs = 0;
	int verbose = 0;
	int no_more_options = 0;

	while (1 < ac) {
		char path[PATH_MAX];

		if (!no_more_options && av[1][0] == '-') {
			if (!strcmp("-v", av[1]))
				verbose = 1;
			else if (!strcmp("--", av[1]))
				no_more_options = 1;
			else
				usage(verify_pack_usage);
		}
		else {
			strcpy(path, av[1]);
			if (verify_one_pack(path, verbose))
				errs++;
		}
		ac--; av++;
	}
	return !!errs;
}
back to top