commit -v: strip diffs and submodule shortlogs from the commit message
[gitweb.git] / builtin / pack-objects.c
index 035ed3b2d0e21a725c002779aad54987e317cee1..36273dd6f0ebf3eab1062a0e24b9aa0c1834ce02 100644 (file)
@@ -20,8 +20,8 @@
 #include "thread-utils.h"
 
 static const char *pack_usage[] = {
-       "git pack-objects --stdout [options...] [< ref-list | < object-list]",
-       "git pack-objects [options...] base-name [< ref-list | < object-list]",
+       N_("git pack-objects --stdout [options...] [< ref-list | < object-list]"),
+       N_("git pack-objects [options...] base-name [< ref-list | < object-list]"),
        NULL
 };
 
@@ -38,17 +38,18 @@ struct object_entry {
        void *delta_data;       /* cached delta (uncompressed) */
        unsigned long delta_size;       /* delta data size (uncompressed) */
        unsigned long z_delta_size;     /* delta data size (compressed) */
-       unsigned int hash;      /* name hint hash */
        enum object_type type;
        enum object_type in_pack_type;  /* could be delta */
+       uint32_t hash;                  /* name hint hash */
        unsigned char in_pack_header_size;
-       unsigned char preferred_base; /* we do not pack this, but is available
-                                      * to be used as the base object to delta
-                                      * objects against.
-                                      */
-       unsigned char no_try_delta;
-       unsigned char tagged; /* near the very tip of refs */
-       unsigned char filled; /* assigned write-order */
+       unsigned preferred_base:1; /*
+                                   * we do not pack this, but is available
+                                   * to be used as the base object to delta
+                                   * objects against.
+                                   */
+       unsigned no_try_delta:1;
+       unsigned tagged:1; /* near the very tip of refs */
+       unsigned filled:1; /* assigned write-order */
 };
 
 /*
@@ -859,9 +860,9 @@ static void rehash_objects(void)
        }
 }
 
-static unsigned name_hash(const char *name)
+static uint32_t name_hash(const char *name)
 {
-       unsigned c, hash = 0;
+       uint32_t c, hash = 0;
 
        if (!name)
                return 0;
@@ -908,7 +909,7 @@ static int add_object_entry(const unsigned char *sha1, enum object_type type,
        struct packed_git *p, *found_pack = NULL;
        off_t found_offset = 0;
        int ix;
-       unsigned hash = name_hash(name);
+       uint32_t hash = name_hash(name);
 
        ix = nr_objects ? locate_object_entry_hash(sha1) : -1;
        if (ix >= 0) {
@@ -1809,7 +1810,7 @@ static void find_deltas(struct object_entry **list, unsigned *list_size,
 static void try_to_free_from_threads(size_t size)
 {
        read_lock();
-       release_pack_memory(size, -1);
+       release_pack_memory(size);
        read_unlock();
 }
 
@@ -2378,7 +2379,7 @@ static void get_object_list(int ac, const char **av)
 
        if (prepare_revision_walk(&revs))
                die("revision walk setup failed");
-       mark_edges_uninteresting(revs.commits, &revs, show_edge);
+       mark_edges_uninteresting(&revs, show_edge);
        traverse_commit_list(&revs, show_commit, show_object, NULL);
 
        if (keep_unreachable)
@@ -2444,67 +2445,67 @@ int cmd_pack_objects(int argc, const char **argv, const char *prefix)
        int rev_list_unpacked = 0, rev_list_all = 0, rev_list_reflog = 0;
        struct option pack_objects_options[] = {
                OPT_SET_INT('q', "quiet", &progress,
-                           "do not show progress meter", 0),
+                           N_("do not show progress meter"), 0),
                OPT_SET_INT(0, "progress", &progress,
-                           "show progress meter", 1),
+                           N_("show progress meter"), 1),
                OPT_SET_INT(0, "all-progress", &progress,
-                           "show progress meter during object writing phase", 2),
+                           N_("show progress meter during object writing phase"), 2),
                OPT_BOOL(0, "all-progress-implied",
                         &all_progress_implied,
-                        "similar to --all-progress when progress meter is shown"),
-               { OPTION_CALLBACK, 0, "index-version", NULL, "version[,offset]",
-                 "write the pack index file in the specified idx format version",
+                        N_("similar to --all-progress when progress meter is shown")),
+               { OPTION_CALLBACK, 0, "index-version", NULL, N_("version[,offset]"),
+                 N_("write the pack index file in the specified idx format version"),
                  0, option_parse_index_version },
                OPT_ULONG(0, "max-pack-size", &pack_size_limit,
-                         "maximum size of each output pack file"),
+                         N_("maximum size of each output pack file")),
                OPT_BOOL(0, "local", &local,
-                        "ignore borrowed objects from alternate object store"),
+                        N_("ignore borrowed objects from alternate object store")),
                OPT_BOOL(0, "incremental", &incremental,
-                        "ignore packed objects"),
+                        N_("ignore packed objects")),
                OPT_INTEGER(0, "window", &window,
-                           "limit pack window by objects"),
+                           N_("limit pack window by objects")),
                OPT_ULONG(0, "window-memory", &window_memory_limit,
-                         "limit pack window by memory in addition to object limit"),
+                         N_("limit pack window by memory in addition to object limit")),
                OPT_INTEGER(0, "depth", &depth,
-                           "maximum length of delta chain allowed in the resulting pack"),
+                           N_("maximum length of delta chain allowed in the resulting pack")),
                OPT_BOOL(0, "reuse-delta", &reuse_delta,
-                        "reuse existing deltas"),
+                        N_("reuse existing deltas")),
                OPT_BOOL(0, "reuse-object", &reuse_object,
-                        "reuse existing objects"),
+                        N_("reuse existing objects")),
                OPT_BOOL(0, "delta-base-offset", &allow_ofs_delta,
-                        "use OFS_DELTA objects"),
+                        N_("use OFS_DELTA objects")),
                OPT_INTEGER(0, "threads", &delta_search_threads,
-                           "use threads when searching for best delta matches"),
+                           N_("use threads when searching for best delta matches")),
                OPT_BOOL(0, "non-empty", &non_empty,
-                        "do not create an empty pack output"),
+                        N_("do not create an empty pack output")),
                OPT_BOOL(0, "revs", &use_internal_rev_list,
-                        "read revision arguments from standard input"),
+                        N_("read revision arguments from standard input")),
                { OPTION_SET_INT, 0, "unpacked", &rev_list_unpacked, NULL,
-                 "limit the objects to those that are not yet packed",
+                 N_("limit the objects to those that are not yet packed"),
                  PARSE_OPT_NOARG | PARSE_OPT_NONEG, NULL, 1 },
                { OPTION_SET_INT, 0, "all", &rev_list_all, NULL,
-                 "include objects reachable from any reference",
+                 N_("include objects reachable from any reference"),
                  PARSE_OPT_NOARG | PARSE_OPT_NONEG, NULL, 1 },
                { OPTION_SET_INT, 0, "reflog", &rev_list_reflog, NULL,
-                 "include objects referred by reflog entries",
+                 N_("include objects referred by reflog entries"),
                  PARSE_OPT_NOARG | PARSE_OPT_NONEG, NULL, 1 },
                OPT_BOOL(0, "stdout", &pack_to_stdout,
-                        "output pack to stdout"),
+                        N_("output pack to stdout")),
                OPT_BOOL(0, "include-tag", &include_tag,
-                        "include tag objects that refer to objects to be packed"),
+                        N_("include tag objects that refer to objects to be packed")),
                OPT_BOOL(0, "keep-unreachable", &keep_unreachable,
-                        "keep unreachable objects"),
-               { OPTION_CALLBACK, 0, "unpack-unreachable", NULL, "time",
-                 "unpack unreachable objects newer than <time>",
+                        N_("keep unreachable objects")),
+               { OPTION_CALLBACK, 0, "unpack-unreachable", NULL, N_("time"),
+                 N_("unpack unreachable objects newer than <time>"),
                  PARSE_OPT_OPTARG, option_parse_unpack_unreachable },
                OPT_BOOL(0, "thin", &thin,
-                        "create thin packs"),
+                        N_("create thin packs")),
                OPT_BOOL(0, "honor-pack-keep", &ignore_packed_keep,
-                        "ignore packs that have companion .keep file"),
+                        N_("ignore packs that have companion .keep file")),
                OPT_INTEGER(0, "compression", &pack_compression_level,
-                           "pack compression level"),
+                           N_("pack compression level")),
                OPT_SET_INT(0, "keep-true-parents", &grafts_replace_parents,
-                           "do not hide commits by grafts", 0),
+                           N_("do not hide commits by grafts"), 0),
                OPT_END(),
        };