Code

Merge branch 'maint'
authorJunio C Hamano <gitster@pobox.com>
Fri, 11 Mar 2011 06:45:49 +0000 (22:45 -0800)
committerJunio C Hamano <gitster@pobox.com>
Fri, 11 Mar 2011 06:45:49 +0000 (22:45 -0800)
* maint:
  Revert "core.abbrevguard: Ensure short object names stay unique a bit longer"

Documentation/config.txt
cache.h
config.c
environment.c
sha1_name.c

index c995a1a47b3cfb99a2bebbadf4f7a5360cbe3d1a..701fba92dc1cfda8982aee8b66eb39b8b1c5816b 100644 (file)
@@ -376,15 +376,6 @@ core.warnAmbiguousRefs::
        If true, git will warn you if the ref name you passed it is ambiguous
        and might match multiple refs in the .git/refs/ tree. True by default.
 
-core.abbrevguard::
-       Even though git makes sure that it uses enough hexdigits to show
-       an abbreviated object name unambiguously, as more objects are
-       added to the repository over time, a short name that used to be
-       unique will stop being unique.  Git uses this many extra hexdigits
-       that are more than necessary to make the object name currently
-       unique, in the hope that its output will stay unique a bit longer.
-       Defaults to 0.
-
 core.compression::
        An integer -1..9, indicating a default compression level.
        -1 is the zlib default. 0 means no compression,
diff --git a/cache.h b/cache.h
index 08a902210c6374c65f94a1238d895a65c7cde43a..d0bbc9120e33e96ad89a0d520b1da6359086c700 100644 (file)
--- a/cache.h
+++ b/cache.h
@@ -560,7 +560,6 @@ extern int assume_unchanged;
 extern int prefer_symlink_refs;
 extern int log_all_ref_updates;
 extern int warn_ambiguous_refs;
-extern int unique_abbrev_extra_length;
 extern int shared_repository;
 extern const char *apply_default_whitespace;
 extern const char *apply_default_ignorewhitespace;
index 31f778b5e8999bd898a18d8ea121c23a01fed352..b94de8f51c860b2804c8e16a33343d55e32c2733 100644 (file)
--- a/config.c
+++ b/config.c
@@ -499,13 +499,6 @@ static int git_default_core_config(const char *var, const char *value)
                return 0;
        }
 
-       if (!strcmp(var, "core.abbrevguard")) {
-               unique_abbrev_extra_length = git_config_int(var, value);
-               if (unique_abbrev_extra_length < 0)
-                       unique_abbrev_extra_length = 0;
-               return 0;
-       }
-
        if (!strcmp(var, "core.bare")) {
                is_bare_repository_cfg = git_config_bool(var, value);
                return 0;
index 9564475f429312a467a020106f7443112367d5da..c3efbb96084de04465f7eff45376cadc3ab2526b 100644 (file)
@@ -21,7 +21,6 @@ int prefer_symlink_refs;
 int is_bare_repository_cfg = -1; /* unspecified */
 int log_all_ref_updates = -1; /* unspecified */
 int warn_ambiguous_refs = 1;
-int unique_abbrev_extra_length;
 int repository_format_version;
 const char *git_commit_encoding;
 const char *git_log_output_encoding;
index 709ff2eee64cf106191ad274bede82a95d00e2a3..faea58dc8c27de23e8fbaff17b39cb9e57708510 100644 (file)
@@ -208,9 +208,7 @@ const char *find_unique_abbrev(const unsigned char *sha1, int len)
                if (exists
                    ? !status
                    : status == SHORT_NAME_NOT_FOUND) {
-                       int cut_at = len + unique_abbrev_extra_length;
-                       cut_at = (cut_at < 40) ? cut_at : 40;
-                       hex[cut_at] = 0;
+                       hex[len] = 0;
                        return hex;
                }
                len++;