Browse Source

Merge branch 'lt/default-abbrev'

* lt/default-abbrev:
  Rename core.abbrevlength back to core.abbrev
  Make the default abbrev length configurable
maint
Junio C Hamano 14 years ago
parent
commit
da2584243e
  1. 6
      Documentation/config.txt
  2. 6
      builtin/describe.c
  3. 5
      cache.h
  4. 8
      config.c
  5. 1
      environment.c

6
Documentation/config.txt

@ -558,6 +558,12 @@ core.sparseCheckout::
Enable "sparse checkout" feature. See section "Sparse checkout" in Enable "sparse checkout" feature. See section "Sparse checkout" in
linkgit:git-read-tree[1] for more information. linkgit:git-read-tree[1] for more information.


core.abbrev::
Set the length object names are abbreviated to. If unspecified,
many commands abbreviate to 7 hexdigits, which may not be enough
for abbreviated object names to stay unique for sufficiently long
time.

add.ignore-errors:: add.ignore-errors::
add.ignoreErrors:: add.ignoreErrors::
Tells 'git add' to continue adding files when some files cannot be Tells 'git add' to continue adding files when some files cannot be

6
builtin/describe.c

@ -21,7 +21,7 @@ static int debug; /* Display lots of verbose info */
static int all; /* Any valid ref can be used */ static int all; /* Any valid ref can be used */
static int tags; /* Allow lightweight tags */ static int tags; /* Allow lightweight tags */
static int longformat; static int longformat;
static int abbrev = DEFAULT_ABBREV; static int abbrev = -1; /* unspecified */
static int max_candidates = 10; static int max_candidates = 10;
static struct hash_table names; static struct hash_table names;
static int have_util; static int have_util;
@ -420,7 +420,11 @@ int cmd_describe(int argc, const char **argv, const char *prefix)
OPT_END(), OPT_END(),
}; };


git_config(git_default_config, NULL);
argc = parse_options(argc, argv, prefix, options, describe_usage, 0); argc = parse_options(argc, argv, prefix, options, describe_usage, 0);
if (abbrev < 0)
abbrev = DEFAULT_ABBREV;

if (max_candidates < 0) if (max_candidates < 0)
max_candidates = 0; max_candidates = 0;
else if (max_candidates > MAX_TAGS) else if (max_candidates > MAX_TAGS)

5
cache.h

@ -556,6 +556,7 @@ extern int trust_executable_bit;
extern int trust_ctime; extern int trust_ctime;
extern int quote_path_fully; extern int quote_path_fully;
extern int has_symlinks; extern int has_symlinks;
extern int minimum_abbrev, default_abbrev;
extern int ignore_case; extern int ignore_case;
extern int assume_unchanged; extern int assume_unchanged;
extern int prefer_symlink_refs; extern int prefer_symlink_refs;
@ -775,8 +776,8 @@ static inline unsigned int hexval(unsigned char c)
} }


/* Convert to/from hex/sha1 representation */ /* Convert to/from hex/sha1 representation */
#define MINIMUM_ABBREV 4 #define MINIMUM_ABBREV minimum_abbrev
#define DEFAULT_ABBREV 7 #define DEFAULT_ABBREV default_abbrev


struct object_context { struct object_context {
unsigned char tree[20]; unsigned char tree[20];

8
config.c

@ -523,6 +523,14 @@ static int git_default_core_config(const char *var, const char *value)
return 0; return 0;
} }


if (!strcmp(var, "core.abbrev")) {
int abbrev = git_config_int(var, value);
if (abbrev < minimum_abbrev || abbrev > 40)
return -1;
default_abbrev = abbrev;
return 0;
}

if (!strcmp(var, "core.loosecompression")) { if (!strcmp(var, "core.loosecompression")) {
int level = git_config_int(var, value); int level = git_config_int(var, value);
if (level == -1) if (level == -1)

1
environment.c

@ -15,6 +15,7 @@ int user_ident_explicitly_given;
int trust_executable_bit = 1; int trust_executable_bit = 1;
int trust_ctime = 1; int trust_ctime = 1;
int has_symlinks = 1; int has_symlinks = 1;
int minimum_abbrev = 4, default_abbrev = 7;
int ignore_case; int ignore_case;
int assume_unchanged; int assume_unchanged;
int prefer_symlink_refs; int prefer_symlink_refs;

Loading…
Cancel
Save