diff --git a/Documentation/git-pack-objects.txt b/Documentation/git-pack-objects.txt index 5ebe34eebf..fdc6f97289 100644 --- a/Documentation/git-pack-objects.txt +++ b/Documentation/git-pack-objects.txt @@ -99,6 +99,23 @@ base-name:: Only create a packed archive if it would contain at least one object. +--progress:: + Progress status is reported on the standard error stream + by default when it is attached to a terminal, unless -q + is specified. This flag forces progress status even if + the standard error stream is not directed to a terminal. + +--all-progress:: + When --stdout is specified then progress report is + displayed during the object count and deltification phases + but inhibited during the write-out phase. The reason is + that in some cases the output stream is directly linked + to another command which may wish to display progress + status of its own as it processes incoming pack data. + This flag is like --progress except that it forces progress + report for the write-out phase as well even if --stdout is + used. + -q:: This flag makes the command not to report its progress on the standard error stream. diff --git a/GIT-VERSION-GEN b/GIT-VERSION-GEN index 0cacac38fc..9796e9118b 100755 --- a/GIT-VERSION-GEN +++ b/GIT-VERSION-GEN @@ -1,7 +1,7 @@ #!/bin/sh GVF=GIT-VERSION-FILE -DEF_VER=v1.4.3.GIT +DEF_VER=v1.4.4-rc1.GIT LF=' ' diff --git a/builtin-pack-objects.c b/builtin-pack-objects.c index 270bcbded6..69e5dd39ca 100644 --- a/builtin-pack-objects.c +++ b/builtin-pack-objects.c @@ -15,7 +15,12 @@ #include #include -static const char pack_usage[] = "git-pack-objects [-q] [--no-reuse-delta] [--delta-base-offset] [--non-empty] [--local] [--incremental] [--window=N] [--depth=N] [--all-progress] [--revs [--unpacked | --all]*] [--stdout | base-name] ,+20" to mean starting at + * for 20 lines, or "-L ,-5" for 5 lines ending at + * . + */ + if (1 < begin && (spec[0] == '+' || spec[0] == '-')) { + num = strtol(spec + 1, &term, 10); + if (term != spec + 1) { + if (spec[0] == '-') + num = 0 - num; + if (0 < num) + *ret = begin + num - 2; + else if (!num) + *ret = begin; + else + *ret = begin + num; + return term; + } + return spec; + } num = strtol(spec, &term, 10); if (term != spec) { *ret = num; diff --git a/wt-status.c b/wt-status.c index 9692dfa325..794394480c 100644 --- a/wt-status.c +++ b/wt-status.c @@ -102,8 +102,6 @@ static void wt_status_print_updated_cb(struct diff_queue_struct *q, struct wt_status *s = data; int shown_header = 0; int i; - if (q->nr) { - } for (i = 0; i < q->nr; i++) { if (q->queue[i]->status == 'U') continue;