diff options
36 files changed, 2054 insertions, 1532 deletions
diff --git a/Documentation/RelNotes/2.1.1.txt b/Documentation/RelNotes/2.1.1.txt new file mode 100644 index 0000000000..830fc3cc6d --- /dev/null +++ b/Documentation/RelNotes/2.1.1.txt @@ -0,0 +1,44 @@ +Git v2.1.1 Release Notes +======================== + + * Git 2.0 had a regression where "git fetch" into a shallowly + cloned repository from a repository with bitmap object index + enabled did not work correctly. This has been corrected. + + * Git 2.0 had a regression which broke (rarely used) "git diff-tree + -t". This has been corrected. + + * "git log --pretty/format=" with an empty format string did not + mean the more obvious "No output whatsoever" but "Use default + format", which was counterintuitive. Now it means "nothing shown + for the log message part". + + * "git -c section.var command" and "git -c section.var= command" + should pass the configuration differently (the former should be a + boolean true, the latter should be an empty string), but they + didn't work that way. Now it does. + + * Applying a patch not generated by Git in a subdirectory used to + check the whitespace breakage using the attributes for incorrect + paths. Also whitespace checks were performed even for paths + excluded via "git apply --exclude=<path>" mechanism. + + * "git bundle create" with date-range specification were meant to + exclude tags outside the range, but it did not work correctly. + + * "git add x" where x that used to be a directory has become a + symbolic link to a directory misbehaved. + + * The prompt script checked $GIT_DIR/ref/stash file to see if there + is a stash, which was a no-no. + + * "git checkout -m" did not switch to another branch while carrying + the local changes forward when a path was deleted from the index. + + * With sufficiently long refnames, fast-import could have overflown + an on-stack buffer. + + * After "pack-refs --prune" packed refs at the top-level, it failed + to prune them. + + * "git gc --auto" triggered from "git fetch --quiet" was not quiet. diff --git a/Documentation/git-rebase.txt b/Documentation/git-rebase.txt index 2a93c645bd..4138554912 100644 --- a/Documentation/git-rebase.txt +++ b/Documentation/git-rebase.txt @@ -9,7 +9,7 @@ SYNOPSIS -------- [verse] 'git rebase' [-i | --interactive] [options] [--exec <cmd>] [--onto <newbase>] - [<upstream>] [<branch>] + [<upstream> [<branch>]] 'git rebase' [-i | --interactive] [options] [--exec <cmd>] [--onto <newbase>] --root [<branch>] 'git rebase' --continue | --skip | --abort | --edit-todo @@ -316,11 +316,8 @@ which makes little sense. -f:: --force-rebase:: - Force the rebase even if the current branch is a descendant - of the commit you are rebasing onto. Normally non-interactive rebase will - exit with the message "Current branch is up to date" in such a - situation. - Incompatible with the --interactive option. + Force a rebase even if the current branch is up-to-date and + the command without `--force` would return without doing anything. + You may find this (or --no-ff with an interactive rebase) helpful after reverting a topic branch merge, as this option recreates the topic branch with diff --git a/Documentation/git-send-pack.txt b/Documentation/git-send-pack.txt index dc3a568baa..2a0de42a75 100644 --- a/Documentation/git-send-pack.txt +++ b/Documentation/git-send-pack.txt @@ -35,6 +35,16 @@ OPTIONS Instead of explicitly specifying which refs to update, update all heads that locally exist. +--stdin:: + Take the list of refs from stdin, one per line. If there + are refs specified on the command line in addition to this + option, then the refs from stdin are processed after those + on the command line. ++ +If '--stateless-rpc' is specified together with this option then +the list of refs must be in packet format (pkt-line). Each ref must +be in a separate packet, and the list must end with a flush packet. + --dry-run:: Do everything except actually send the updates. @@ -77,7 +87,8 @@ this flag. Without '--all' and without any '<ref>', the heads that exist both on the local side and on the remote side are updated. -When one or more '<ref>' are specified explicitly, it can be either a +When one or more '<ref>' are specified explicitly (whether on the +command line or via `--stdin`), it can be either a single pattern, or a pair of such pattern separated by a colon ":" (this means that a ref name cannot have a colon in it). A single pattern '<name>' is just a shorthand for '<name>:<name>'. diff --git a/Documentation/git.txt b/Documentation/git.txt index de7b870a35..8b2c5424c4 100644 --- a/Documentation/git.txt +++ b/Documentation/git.txt @@ -43,9 +43,10 @@ unreleased) version of Git, that is available from the 'master' branch of the `git.git` repository. Documentation for older releases are available here: -* link:v2.1.0/git.html[documentation for release 2.1] +* link:v2.1.1/git.html[documentation for release 2.1.1] * release notes for + link:RelNotes/2.1.1.txt[2.1.1], link:RelNotes/2.1.0.txt[2.1]. * link:v2.0.4/git.html[documentation for release 2.0.4] @@ -452,6 +453,11 @@ example the following invocations are equivalent: given will override values from configuration files. The <name> is expected in the same format as listed by 'git config' (subkeys separated by dots). ++ +Note that omitting the `=` in `git -c foo.bar ...` is allowed and sets +`foo.bar` to the boolean true value (just like `[foo]bar` would in a +config file). Including the equals but with an empty value (like `git -c +foo.bar= ...`) sets `foo.bar` to the empty string. --exec-path[=<path>]:: Path to wherever your core Git programs are installed. diff --git a/Documentation/technical/pack-protocol.txt b/Documentation/technical/pack-protocol.txt index 18dea8d15f..569c48a352 100644 --- a/Documentation/technical/pack-protocol.txt +++ b/Documentation/technical/pack-protocol.txt @@ -467,7 +467,7 @@ references. ---- update-request = *shallow command-list [pack-file] - shallow = PKT-LINE("shallow" SP obj-id) + shallow = PKT-LINE("shallow" SP obj-id LF) command-list = PKT-LINE(command NUL capability-list LF) *PKT-LINE(command LF) diff --git a/GIT-VERSION-GEN b/GIT-VERSION-GEN index a4cdfbf7f6..c76c8d6dfd 100755 --- a/GIT-VERSION-GEN +++ b/GIT-VERSION-GEN @@ -1,7 +1,7 @@ #!/bin/sh GVF=GIT-VERSION-FILE -DEF_VER=v2.1.0 +DEF_VER=v2.1.1 LF=' ' @@ -1 +1 @@ -Documentation/RelNotes/2.1.0.txt
\ No newline at end of file +Documentation/RelNotes/2.1.1.txt
\ No newline at end of file diff --git a/builtin/apply.c b/builtin/apply.c index be2b4ce2fd..6b7c764918 100644 --- a/builtin/apply.c +++ b/builtin/apply.c @@ -1920,6 +1920,66 @@ static int parse_binary(char *buffer, unsigned long size, struct patch *patch) return used; } +static void prefix_one(char **name) +{ + char *old_name = *name; + if (!old_name) + return; + *name = xstrdup(prefix_filename(prefix, prefix_length, *name)); + free(old_name); +} + +static void prefix_patch(struct patch *p) +{ + if (!prefix || p->is_toplevel_relative) + return; + prefix_one(&p->new_name); + prefix_one(&p->old_name); +} + +/* + * include/exclude + */ + +static struct string_list limit_by_name; +static int has_include; +static void add_name_limit(const char *name, int exclude) +{ + struct string_list_item *it; + + it = string_list_append(&limit_by_name, name); + it->util = exclude ? NULL : (void *) 1; +} + +static int use_patch(struct patch *p) +{ + const char *pathname = p->new_name ? p->new_name : p->old_name; + int i; + + /* Paths outside are not touched regardless of "--include" */ + if (0 < prefix_length) { + int pathlen = strlen(pathname); + if (pathlen <= prefix_length || + memcmp(prefix, pathname, prefix_length)) + return 0; + } + + /* See if it matches any of exclude/include rule */ + for (i = 0; i < limit_by_name.nr; i++) { + struct string_list_item *it = &limit_by_name.items[i]; + if (!wildmatch(it->string, pathname, 0, NULL)) + return (it->util != NULL); + } + + /* + * If we had any include, a path that does not match any rule is + * not used. Otherwise, we saw bunch of exclude rules (or none) + * and such a path is used. + */ + return !has_include; +} + + /* * Read the patch text in "buffer" that extends for "size" bytes; stop * reading after seeing a single patch (i.e. changes to a single file). @@ -1935,9 +1995,14 @@ static int parse_chunk(char *buffer, unsigned long size, struct patch *patch) if (offset < 0) return offset; - patch->ws_rule = whitespace_rule(patch->new_name - ? patch->new_name - : patch->old_name); + prefix_patch(patch); + + if (!use_patch(patch)) + patch->ws_rule = 0; + else + patch->ws_rule = whitespace_rule(patch->new_name + ? patch->new_name + : patch->old_name); patchsize = parse_single_patch(buffer + offset + hdrsize, size - offset - hdrsize, patch); @@ -4127,64 +4192,6 @@ static int write_out_results(struct patch *list) static struct lock_file lock_file; -static struct string_list limit_by_name; -static int has_include; -static void add_name_limit(const char *name, int exclude) -{ - struct string_list_item *it; - - it = string_list_append(&limit_by_name, name); - it->util = exclude ? NULL : (void *) 1; -} - -static int use_patch(struct patch *p) -{ - const char *pathname = p->new_name ? p->new_name : p->old_name; - int i; - - /* Paths outside are not touched regardless of "--include" */ - if (0 < prefix_length) { - int pathlen = strlen(pathname); - if (pathlen <= prefix_length || - memcmp(prefix, pathname, prefix_length)) - return 0; - } - - /* See if it matches any of exclude/include rule */ - for (i = 0; i < limit_by_name.nr; i++) { - struct string_list_item *it = &limit_by_name.items[i]; - if (!wildmatch(it->string, pathname, 0, NULL)) - return (it->util != NULL); - } - - /* - * If we had any include, a path that does not match any rule is - * not used. Otherwise, we saw bunch of exclude rules (or none) - * and such a path is used. - */ - return !has_include; -} - - -static void prefix_one(char **name) -{ - char *old_name = *name; - if (!old_name) - return; - *name = xstrdup(prefix_filename(prefix, prefix_length, *name)); - free(old_name); -} - -static void prefix_patches(struct patch *p) -{ - if (!prefix || p->is_toplevel_relative) - return; - for ( ; p; p = p->next) { - prefix_one(&p->new_name); - prefix_one(&p->old_name); - } -} - #define INACCURATE_EOF (1<<0) #define RECOUNT (1<<1) @@ -4210,8 +4217,6 @@ static int apply_patch(int fd, const char *filename, int options) break; if (apply_in_reverse) reverse_patches(patch); - if (prefix) - prefix_patches(patch); if (use_patch(patch)) { patch_stats(patch); *listp = patch; diff --git a/builtin/fetch.c b/builtin/fetch.c index e8d0cca3e4..159fb7e916 100644 --- a/builtin/fetch.c +++ b/builtin/fetch.c @@ -1110,9 +1110,7 @@ int cmd_fetch(int argc, const char **argv, const char *prefix) struct string_list list = STRING_LIST_INIT_NODUP; struct remote *remote; int result = 0; - static const char *argv_gc_auto[] = { - "gc", "--auto", NULL, - }; + struct argv_array argv_gc_auto = ARGV_ARRAY_INIT; packet_trace_identity("fetch"); @@ -1198,7 +1196,11 @@ int cmd_fetch(int argc, const char **argv, const char *prefix) list.strdup_strings = 1; string_list_clear(&list, 0); - run_command_v_opt(argv_gc_auto, RUN_GIT_CMD); + argv_array_pushl(&argv_gc_auto, "gc", "--auto", NULL); + if (verbosity < 0) + argv_array_push(&argv_gc_auto, "--quiet"); + run_command_v_opt(argv_gc_auto.argv, RUN_GIT_CMD); + argv_array_clear(&argv_gc_auto); return result; } diff --git a/builtin/index-pack.c b/builtin/index-pack.c index 5568a5bc3b..eebf1a8fc2 100644 --- a/builtin/index-pack.c +++ b/builtin/index-pack.c @@ -112,6 +112,10 @@ static pthread_mutex_t deepest_delta_mutex; #define deepest_delta_lock() lock_mutex(&deepest_delta_mutex) #define deepest_delta_unlock() unlock_mutex(&deepest_delta_mutex) +static pthread_mutex_t type_cas_mutex; +#define type_cas_lock() lock_mutex(&type_cas_mutex) +#define type_cas_unlock() unlock_mutex(&type_cas_mutex) + static pthread_key_t key; static inline void lock_mutex(pthread_mutex_t *mutex) @@ -135,6 +139,7 @@ static void init_thread(void) init_recursive_mutex(&read_mutex); pthread_mutex_init(&counter_mutex, NULL); pthread_mutex_init(&work_mutex, NULL); + pthread_mutex_init(&type_cas_mutex, NULL); if (show_stat) pthread_mutex_init(&deepest_delta_mutex, NULL); pthread_key_create(&key, NULL); @@ -157,6 +162,7 @@ static void cleanup_thread(void) pthread_mutex_destroy(&read_mutex); pthread_mutex_destroy(&counter_mutex); pthread_mutex_destroy(&work_mutex); + pthread_mutex_destroy(&type_cas_mutex); if (show_stat) pthread_mutex_destroy(&deepest_delta_mutex); for (i = 0; i < nr_threads; i++) @@ -862,7 +868,6 @@ static void resolve_delta(struct object_entry *delta_obj, { void *base_data, *delta_data; - delta_obj->real_type = base->obj->real_type; if (show_stat) { delta_obj->delta_depth = base->obj->delta_depth + 1; deepest_delta_lock(); @@ -888,6 +893,26 @@ static void resolve_delta(struct object_entry *delta_obj, counter_unlock(); } +/* + * Standard boolean compare-and-swap: atomically check whether "*type" is + * "want"; if so, swap in "set" and return true. Otherwise, leave it untouched + * and return false. + */ +static int compare_and_swap_type(enum object_type *type, + enum object_type want, + enum object_type set) +{ + enum object_type old; + + type_cas_lock(); + old = *type; + if (old == want) + *type = set; + type_cas_unlock(); + + return old == want; +} + static struct base_data *find_unresolved_deltas_1(struct base_data *base, struct base_data *prev_base) { @@ -915,7 +940,10 @@ static struct base_data *find_unresolved_deltas_1(struct base_data *base, struct object_entry *child = objects + deltas[base->ref_first].obj_no; struct base_data *result = alloc_base_data(); - assert(child->real_type == OBJ_REF_DELTA); + if (!compare_and_swap_type(&child->real_type, OBJ_REF_DELTA, + base->obj->real_type)) + die("BUG: child->real_type != OBJ_REF_DELTA"); + resolve_delta(child, base, result); if (base->ref_first == base->ref_last && base->ofs_last == -1) free_base_data(base); @@ -929,6 +957,7 @@ static struct base_data *find_unresolved_deltas_1(struct base_data *base, struct base_data *result = alloc_base_data(); assert(child->real_type == OBJ_OFS_DELTA); + child->real_type = base->obj->real_type; resolve_delta(child, base, result); if (base->ofs_first == base->ofs_last) free_base_data(base); diff --git a/builtin/send-pack.c b/builtin/send-pack.c index f420b74665..4b1bc0fef7 100644 --- a/builtin/send-pack.c +++ b/builtin/send-pack.c @@ -110,6 +110,7 @@ int cmd_send_pack(int argc, const char **argv, const char *prefix) int flags; unsigned int reject_reasons; int progress = -1; + int from_stdin = 0; struct push_cas_option cas = {0}; argv++; @@ -169,6 +170,10 @@ int cmd_send_pack(int argc, const char **argv, const char *prefix) args.stateless_rpc = 1; continue; } + if (!strcmp(arg, "--stdin")) { + from_stdin = 1; + continue; + } if (!strcmp(arg, "--helper-status")) { helper_status = 1; continue; @@ -201,6 +206,28 @@ int cmd_send_pack(int argc, const char **argv, const char *prefix) } if (!dest) usage(send_pack_usage); + + if (from_stdin) { + struct argv_array all_refspecs = ARGV_ARRAY_INIT; + + for (i = 0; i < nr_refspecs; i++) + argv_array_push(&all_refspecs, refspecs[i]); + + if (args.stateless_rpc) { + const char *buf; + while ((buf = packet_read_line(0, NULL))) + argv_array_push(&all_refspecs, buf); + } else { + struct strbuf line = STRBUF_INIT; + while (strbuf_getline(&line, stdin, '\n') != EOF) + argv_array_push(&all_refspecs, line.buf); + strbuf_release(&line); + } + + refspecs = all_refspecs.argv; + nr_refspecs = all_refspecs.argc; + } + /* * --all and --mirror are incompatible; neither makes sense * with any refspecs. @@ -221,8 +221,8 @@ static int is_tag_in_date_range(struct object *tag, struct rev_info *revs) line = memmem(buf, size, "\ntagger ", 8); if (!line++) return 1; - lineend = memchr(line, buf + size - line, '\n'); - line = memchr(line, lineend ? lineend - line : buf + size - line, '>'); + lineend = memchr(line, '\n', buf + size - line); + line = memchr(line, '>', lineend ? lineend - line : buf + size - line); if (!line++) return 1; date = strtoul(line, NULL, 10); diff --git a/combine-diff.c b/combine-diff.c index 60cb4f81f9..91edce58e1 100644 --- a/combine-diff.c +++ b/combine-diff.c @@ -1407,7 +1407,8 @@ void diff_tree_combined(const unsigned char *sha1, show_log(rev); if (rev->verbose_header && opt->output_format && - opt->output_format != DIFF_FORMAT_NO_OUTPUT) + opt->output_format != DIFF_FORMAT_NO_OUTPUT && + !commit_format_is_empty(rev->commit_format)) printf("%s%c", diff_line_prefix(opt), opt->line_termination); } @@ -159,6 +159,7 @@ extern void get_commit_format(const char *arg, struct rev_info *); extern const char *format_subject(struct strbuf *sb, const char *msg, const char *line_separator); extern void userformat_find_requirements(const char *fmt, struct userformat_want *w); +extern int commit_format_is_empty(enum cmit_fmt); extern void format_commit_message(const struct commit *commit, const char *format, struct strbuf *sb, const struct pretty_print_context *context); @@ -162,19 +162,27 @@ void git_config_push_parameter(const char *text) int git_config_parse_parameter(const char *text, config_fn_t fn, void *data) { + const char *value; struct strbuf **pair; + pair = strbuf_split_str(text, '=', 2); if (!pair[0]) return error("bogus config parameter: %s", text); - if (pair[0]->len && pair[0]->buf[pair[0]->len - 1] == '=') + + if (pair[0]->len && pair[0]->buf[pair[0]->len - 1] == '=') { strbuf_setlen(pair[0], pair[0]->len - 1); + value = pair[1] ? pair[1]->buf : ""; + } else { + value = NULL; + } + strbuf_trim(pair[0]); if (!pair[0]->len) { strbuf_list_free(pair); return error("bogus config parameter: %s", text); } strbuf_tolower(pair[0]); - if (fn(pair[0]->buf, pair[1] ? pair[1]->buf : NULL, data) < 0) { + if (fn(pair[0]->buf, value, data) < 0) { strbuf_list_free(pair); return -1; } diff --git a/contrib/completion/git-prompt.sh b/contrib/completion/git-prompt.sh index 9d684b10a6..c5473dc8db 100644 --- a/contrib/completion/git-prompt.sh +++ b/contrib/completion/git-prompt.sh @@ -468,7 +468,8 @@ __git_ps1 () fi fi if [ -n "${GIT_PS1_SHOWSTASHSTATE-}" ] && - [ -r "$g/refs/stash" ]; then + git rev-parse --verify --quiet refs/stash >/dev/null + then s="$" fi diff --git a/fast-import.c b/fast-import.c index e380804831..a40b4ea2d0 100644 --- a/fast-import.c +++ b/fast-import.c @@ -946,10 +946,12 @@ static void unkeep_all_packs(void) static void end_packfile(void) { - struct packed_git *old_p = pack_data, *new_p; + if (!pack_data) + return; clear_delta_base_cache(); if (object_count) { + struct packed_git *new_p; unsigned char cur_pack_sha1[20]; char *idx_name; int i; @@ -991,10 +993,11 @@ static void end_packfile(void) pack_id++; } else { - close(old_p->pack_fd); - unlink_or_warn(old_p->pack_name); + close(pack_data->pack_fd); + unlink_or_warn(pack_data->pack_name); } - free(old_p); + free(pack_data); + pack_data = NULL; /* We can't carry a delta across packfiles. */ strbuf_release(&last_blob.data); @@ -1735,14 +1738,16 @@ static void dump_tags(void) static const char *msg = "fast-import"; struct tag *t; struct ref_lock *lock; - char ref_name[PATH_MAX]; + struct strbuf ref_name = STRBUF_INIT; for (t = first_tag; t; t = t->next_tag) { - sprintf(ref_name, "tags/%s", t->name); - lock = lock_ref_sha1(ref_name, NULL); + strbuf_reset(&ref_name); + strbuf_addf(&ref_name, "tags/%s", t->name); + lock = lock_ref_sha1(ref_name.buf, NULL); if (!lock || write_ref_sha1(lock, t->sha1, msg) < 0) - failure |= error("Unable to update %s", ref_name); + failure |= error("Unable to update %s", ref_name.buf); } + strbuf_release(&ref_name); } static void dump_marks_helper(FILE *f, diff --git a/log-tree.c b/log-tree.c index 0c53dc11ab..95e9b1da25 100644 --- a/log-tree.c +++ b/log-tree.c @@ -649,7 +649,7 @@ void show_log(struct rev_info *opt) graph_show_commit_msg(opt->graph, &msgbuf); else fwrite(msgbuf.buf, sizeof(char), msgbuf.len, stdout); - if (opt->use_terminator) { + if (opt->use_terminator && !commit_format_is_empty(opt->commit_format)) { if (!opt->missing_newline) graph_show_padding(opt->graph); putchar(opt->diffopt.line_termination); @@ -676,7 +676,8 @@ int log_tree_diff_flush(struct rev_info *opt) show_log(opt); if ((opt->diffopt.output_format & ~DIFF_FORMAT_NO_OUTPUT) && opt->verbose_header && - opt->commit_format != CMIT_FMT_ONELINE) { + opt->commit_format != CMIT_FMT_ONELINE && + !commit_format_is_empty(opt->commit_format)) { /* * When showing a verbose header (i.e. log message), * and not in --pretty=oneline format, we would want @@ -15,6 +15,9 @@ Leader: Ralf Thielow <ralf.thielow@googlemail.com> Members: Thomas Rast <tr@thomasrast.ch> Jan Krüger <jk@jk.gs> Christian Stimming <stimming@tuhh.de> + Phillip Szelat <phillip.szelat@gmail.com> + Matthias Rüster <matthias.ruester@gmail.com> + Magnus Görlitz <magnus.goerlitz@googlemail.com> Language: fr (French) Repository: https://github.com/jnavila/git @@ -5,9 +5,9 @@ # msgid "" msgstr "" -"Project-Id-Version: git 2.0.0\n" +"Project-Id-Version: Git\n" "Report-Msgid-Bugs-To: Git Mailing List <git@vger.kernel.org>\n" -"POT-Creation-Date: 2014-04-17 12:13+0800\n" +"POT-Creation-Date: 2014-08-04 14:48+0800\n" "PO-Revision-Date: 2013-07-28 18:42+0200\n" "Last-Translator: Ralf Thielow <ralf.thielow@gmail.com>\n" "Language-Team: German <>\n" @@ -22,17 +22,15 @@ msgstr "" msgid "hint: %.*s\n" msgstr "Hinweis: %.*s\n" -#: advice.c:85 +#: advice.c:88 msgid "" -"Fix them up in the work tree,\n" -"and then use 'git add/rm <file>' as\n" -"appropriate to mark resolution and make a commit,\n" -"or use 'git commit -a'." +"Fix them up in the work tree, and then use 'git add/rm <file>'\n" +"as appropriate to mark resolution and make a commit, or use\n" +"'git commit -a'." msgstr "" -"Korrigieren Sie dies im Arbeitsverzeichnis,\n" -"und benutzen Sie dann 'git add/rm <Datei>'\n" -"um die Auflösung entsprechend zu markieren und zu committen,\n" -"oder benutzen Sie 'git commit -a'." +"Korrigieren Sie dies im Arbeitsverzeichnis, und benutzen Sie\n" +"dann 'git add/rm <Datei>', um die Auflösung entsprechend zu markieren\n" +"und zu committen, oder benutzen Sie 'git commit -a'." #: archive.c:10 msgid "git archive [options] <tree-ish> [<path>...]" @@ -53,7 +51,7 @@ msgstr "" msgid "git archive --remote <repo> [--exec <cmd>] --list" msgstr "git archive --remote <Repository> [--exec <Programm>] --list" -#: archive.c:243 builtin/add.c:136 builtin/add.c:428 builtin/rm.c:328 +#: archive.c:243 builtin/add.c:136 builtin/add.c:427 builtin/rm.c:328 #, c-format msgid "pathspec '%s' did not match any files" msgstr "Pfadspezifikation '%s' stimmt mit keinen Dateien überein" @@ -66,7 +64,7 @@ msgstr "Format" msgid "archive format" msgstr "Archivformat" -#: archive.c:329 builtin/log.c:1193 +#: archive.c:329 builtin/log.c:1201 msgid "prefix" msgstr "Präfix" @@ -74,9 +72,9 @@ msgstr "Präfix" msgid "prepend prefix to each pathname in the archive" msgstr "stellt einen Präfix vor jeden Pfadnamen in dem Archiv" -#: archive.c:331 builtin/archive.c:88 builtin/blame.c:2258 -#: builtin/blame.c:2259 builtin/config.c:57 builtin/fast-export.c:680 -#: builtin/fast-export.c:682 builtin/grep.c:714 builtin/hash-object.c:77 +#: archive.c:331 builtin/archive.c:88 builtin/blame.c:2517 +#: builtin/blame.c:2518 builtin/config.c:57 builtin/fast-export.c:709 +#: builtin/fast-export.c:711 builtin/grep.c:712 builtin/hash-object.c:77 #: builtin/ls-files.c:489 builtin/ls-files.c:492 builtin/notes.c:412 #: builtin/notes.c:569 builtin/read-tree.c:108 parse-options.h:151 msgid "file" @@ -268,7 +266,7 @@ msgstr "'%s' sieht nicht wie eine v2 Paketdatei aus" msgid "unrecognized header: %s%s (%d)" msgstr "nicht erkannter Kopfbereich: %s%s (%d)" -#: bundle.c:86 builtin/commit.c:706 +#: bundle.c:86 builtin/commit.c:755 #, c-format msgid "could not open '%s'" msgstr "Konnte '%s' nicht öffnen" @@ -277,8 +275,8 @@ msgstr "Konnte '%s' nicht öffnen" msgid "Repository lacks these prerequisite commits:" msgstr "Dem Repository fehlen folgende vorausgesetzte Commits:" -#: bundle.c:162 sequencer.c:669 sequencer.c:1123 builtin/log.c:332 -#: builtin/log.c:821 builtin/log.c:1418 builtin/log.c:1644 builtin/merge.c:357 +#: bundle.c:162 sequencer.c:630 sequencer.c:1085 builtin/log.c:330 +#: builtin/log.c:821 builtin/log.c:1428 builtin/log.c:1665 builtin/merge.c:357 #: builtin/shortlog.c:158 msgid "revision walk setup failed" msgstr "Einrichtung des Revisionsgangs fehlgeschlagen" @@ -301,47 +299,47 @@ msgid_plural "The bundle requires these %d refs:" msgstr[0] "Das Paket benötigt diese Referenz:" msgstr[1] "Das Paket benötigt diese %d Referenzen:" -#: bundle.c:293 +#: bundle.c:289 msgid "rev-list died" msgstr "\"rev-list\" abgebrochen" -#: bundle.c:299 builtin/log.c:1329 builtin/shortlog.c:261 +#: bundle.c:295 builtin/log.c:1339 builtin/shortlog.c:261 #, c-format msgid "unrecognized argument: %s" msgstr "nicht erkanntes Argument: %s" -#: bundle.c:334 +#: bundle.c:330 #, c-format msgid "ref '%s' is excluded by the rev-list options" msgstr "Referenz '%s' wird durch \"rev-list\" Optionen ausgeschlossen" -#: bundle.c:379 +#: bundle.c:375 msgid "Refusing to create empty bundle." msgstr "Erstellung eines leeren Pakets zurückgewiesen." -#: bundle.c:395 +#: bundle.c:390 msgid "Could not spawn pack-objects" msgstr "Konnte Paketobjekte nicht erstellen" -#: bundle.c:413 +#: bundle.c:408 msgid "pack-objects died" msgstr "Erstellung der Paketobjekte abgebrochen" -#: bundle.c:416 +#: bundle.c:411 #, c-format msgid "cannot create '%s'" msgstr "kann '%s' nicht erstellen" -#: bundle.c:438 +#: bundle.c:433 msgid "index-pack died" msgstr "Erstellung der Paketindexdatei abgebrochen" -#: commit.c:54 +#: commit.c:40 #, c-format msgid "could not parse %s" msgstr "konnte %s nicht parsen" -#: commit.c:56 +#: commit.c:42 #, c-format msgid "%s %s is not a commit!" msgstr "%s %s ist kein Commit!" @@ -437,27 +435,27 @@ msgstr[1] "vor %lu Jahren" msgid "failed to read orderfile '%s'" msgstr "Fehler beim Lesen der Reihenfolgedatei '%s'." -#: diffcore-rename.c:517 +#: diffcore-rename.c:514 msgid "Performing inexact rename detection" msgstr "Führe Erkennung für ungenaue Umbenennung aus" -#: diff.c:113 +#: diff.c:114 #, c-format msgid " Failed to parse dirstat cut-off percentage '%s'\n" msgstr "" " Fehler beim Parsen des abgeschnittenen \"dirstat\" Prozentsatzes '%s'\n" -#: diff.c:118 +#: diff.c:119 #, c-format msgid " Unknown dirstat parameter '%s'\n" msgstr " Unbekannter \"dirstat\" Parameter '%s'\n" -#: diff.c:213 +#: diff.c:214 #, c-format msgid "Unknown value for 'diff.submodule' config variable: '%s'" msgstr "Unbekannter Wert in Konfigurationsvariable 'diff.dirstat': '%s'" -#: diff.c:263 +#: diff.c:267 #, c-format msgid "" "Found errors in 'diff.dirstat' config variable:\n" @@ -466,7 +464,16 @@ msgstr "" "Fehler in 'diff.dirstat' Konfigurationsvariable gefunden:\n" "%s" -#: diff.c:3495 +#: diff.c:2934 +#, c-format +msgid "external diff died, stopping at %s" +msgstr "externes Diff-Programm unerwartet beendet, angehalten bei %s" + +#: diff.c:3329 +msgid "--follow requires exactly one pathspec" +msgstr "--follow erfordert genau eine Pfadspezifikation" + +#: diff.c:3492 #, c-format msgid "" "Failed to parse --dirstat/-X option parameter:\n" @@ -475,58 +482,58 @@ msgstr "" "Fehler beim Parsen des --dirstat/-X Optionsparameters:\n" "%s" -#: diff.c:3509 +#: diff.c:3506 #, c-format msgid "Failed to parse --submodule option parameter: '%s'" msgstr "Fehler beim Parsen des --submodule Optionsparameters: '%s'" -#: gpg-interface.c:59 gpg-interface.c:131 +#: gpg-interface.c:73 gpg-interface.c:145 msgid "could not run gpg." msgstr "konnte gpg nicht ausführen" -#: gpg-interface.c:71 +#: gpg-interface.c:85 msgid "gpg did not accept the data" msgstr "gpg hat die Daten nicht akzeptiert" -#: gpg-interface.c:82 +#: gpg-interface.c:96 msgid "gpg failed to sign the data" msgstr "gpg beim Signieren der Daten fehlgeschlagen" -#: gpg-interface.c:115 +#: gpg-interface.c:129 #, c-format msgid "could not create temporary file '%s': %s" msgstr "konnte temporäre Datei '%s' nicht erstellen: %s" -#: gpg-interface.c:118 +#: gpg-interface.c:132 #, c-format msgid "failed writing detached signature to '%s': %s" msgstr "Fehler beim Schreiben der Signatur nach '%s': %s" -#: grep.c:1698 +#: grep.c:1703 #, c-format msgid "'%s': unable to read %s" msgstr "'%s': konnte nicht lesen %s" -#: grep.c:1715 +#: grep.c:1720 #, c-format msgid "'%s': %s" msgstr "'%s': %s" -#: grep.c:1726 +#: grep.c:1731 #, c-format msgid "'%s': short read %s" msgstr "'%s': read() zu kurz %s" -#: help.c:209 +#: help.c:207 #, c-format msgid "available git commands in '%s'" msgstr "Vorhandene Git-Kommandos in '%s'" -#: help.c:216 +#: help.c:214 msgid "git commands available from elsewhere on your $PATH" msgstr "Vorhandene Git-Kommandos irgendwo in Ihrem $PATH" -#: help.c:232 +#: help.c:230 msgid "The most commonly used git commands are:" msgstr "Die allgemein verwendeten Git-Kommandos sind:" @@ -562,7 +569,7 @@ msgstr "Automatische Ausführung in %0.1f Sekunden..." msgid "git: '%s' is not a git command. See 'git --help'." msgstr "git: '%s' ist kein Git-Kommando. Siehe 'git --help'." -#: help.c:384 help.c:443 +#: help.c:384 help.c:444 msgid "" "\n" "Did you mean this?" @@ -576,16 +583,16 @@ msgstr[1] "" "\n" "Haben Sie eines von diesen gemeint?" -#: help.c:439 +#: help.c:440 #, c-format msgid "%s: %s - %s" msgstr "%s: %s - %s" -#: merge.c:56 +#: merge.c:40 msgid "failed to read the cache" msgstr "Lesen des Zwischenspeichers fehlgeschlagen" -#: merge.c:110 builtin/checkout.c:357 builtin/checkout.c:558 +#: merge.c:93 builtin/checkout.c:356 builtin/checkout.c:556 #: builtin/clone.c:661 msgid "unable to write new index file" msgstr "Konnte neue Staging-Area-Datei nicht schreiben." @@ -595,7 +602,7 @@ msgstr "Konnte neue Staging-Area-Datei nicht schreiben." msgid "(bad commit)\n" msgstr "(ungültiger Commit)\n" -#: merge-recursive.c:208 +#: merge-recursive.c:210 #, c-format msgid "addinfo_cache failed for path '%s'" msgstr "addinfo_cache für Pfad '%s' fehlgeschlagen" @@ -604,64 +611,64 @@ msgstr "addinfo_cache für Pfad '%s' fehlgeschlagen" msgid "error building trees" msgstr "Fehler beim Erstellen der \"Tree\"-Objekte" -#: merge-recursive.c:675 +#: merge-recursive.c:692 #, c-format msgid "failed to create path '%s'%s" msgstr "Fehler beim Erstellen des Pfades '%s'%s" -#: merge-recursive.c:686 +#: merge-recursive.c:703 #, c-format msgid "Removing %s to make room for subdirectory\n" -msgstr "Entferne %s um Platz für Unterverzeichnis zu schaffen\n" +msgstr "Entferne %s, um Platz für Unterverzeichnis zu schaffen\n" -#: merge-recursive.c:700 merge-recursive.c:721 +#: merge-recursive.c:717 merge-recursive.c:738 msgid ": perhaps a D/F conflict?" msgstr ": vielleicht ein Verzeichnis/Datei-Konflikt?" -#: merge-recursive.c:711 +#: merge-recursive.c:728 #, c-format msgid "refusing to lose untracked file at '%s'" msgstr "verweigere, da unbeobachtete Dateien in '%s' verloren gehen würden" -#: merge-recursive.c:751 +#: merge-recursive.c:768 #, c-format msgid "cannot read object %s '%s'" msgstr "kann Objekt %s '%s' nicht lesen" -#: merge-recursive.c:753 +#: merge-recursive.c:770 #, c-format msgid "blob expected for %s '%s'" msgstr "Blob erwartet für %s '%s'" -#: merge-recursive.c:776 builtin/clone.c:317 +#: merge-recursive.c:793 builtin/clone.c:317 #, c-format msgid "failed to open '%s'" msgstr "Fehler beim Öffnen von '%s'" -#: merge-recursive.c:784 +#: merge-recursive.c:801 #, c-format msgid "failed to symlink '%s'" msgstr "Fehler beim Erstellen eines symbolischen Verweises für '%s'" -#: merge-recursive.c:787 +#: merge-recursive.c:804 #, c-format msgid "do not know what to do with %06o %s '%s'" msgstr "weiß nicht was mit %06o %s '%s' zu machen ist" -#: merge-recursive.c:925 +#: merge-recursive.c:942 msgid "Failed to execute internal merge" msgstr "Fehler bei Ausführung des internen Merges" -#: merge-recursive.c:929 +#: merge-recursive.c:946 #, c-format msgid "Unable to add %s to database" msgstr "Konnte %s nicht zur Datenbank hinzufügen" -#: merge-recursive.c:945 +#: merge-recursive.c:962 msgid "unsupported object type in the tree" msgstr "nicht unterstützter Objekttyp im Verzeichnis" -#: merge-recursive.c:1024 merge-recursive.c:1038 +#: merge-recursive.c:1037 merge-recursive.c:1051 #, c-format msgid "" "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left " @@ -670,7 +677,7 @@ msgstr "" "KONFLIKT (%s/löschen): %s gelöscht in %s und %s in %s. Stand %s von %s wurde " "im Arbeitsbereich gelassen." -#: merge-recursive.c:1030 merge-recursive.c:1043 +#: merge-recursive.c:1043 merge-recursive.c:1056 #, c-format msgid "" "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left " @@ -679,20 +686,20 @@ msgstr "" "KONFLIKT (%s/löschen): %s gelöscht in %s und %s in %s. Stand %s von %s wurde " "im Arbeitsbereich bei %s gelassen." -#: merge-recursive.c:1084 +#: merge-recursive.c:1097 msgid "rename" msgstr "umbenennen" -#: merge-recursive.c:1084 +#: merge-recursive.c:1097 msgid "renamed" msgstr "umbenannt" -#: merge-recursive.c:1140 +#: merge-recursive.c:1153 #, c-format msgid "%s is a directory in %s adding as %s instead" msgstr "%s ist ein Verzeichnis in %s, füge es stattdessen als %s hinzu" -#: merge-recursive.c:1162 +#: merge-recursive.c:1175 #, c-format msgid "" "CONFLICT (rename/rename): Rename \"%s\"->\"%s\" in branch \"%s\" rename \"%s" @@ -701,162 +708,162 @@ msgstr "" "KONFLIKT (umbenennen/umbenennen): Benenne um \"%s\"->\"%s\" in Branch \"%s\" " "und \"%s\"->\"%s\" in Branch \"%s\"%s" -#: merge-recursive.c:1167 +#: merge-recursive.c:1180 msgid " (left unresolved)" msgstr " (bleibt unaufgelöst)" -#: merge-recursive.c:1221 +#: merge-recursive.c:1234 #, c-format msgid "CONFLICT (rename/rename): Rename %s->%s in %s. Rename %s->%s in %s" msgstr "" "KONFLIKT (umbenennen/umbenennen): Benenne um %s->%s in %s. Benenne um %s->%s " "in %s" -#: merge-recursive.c:1251 +#: merge-recursive.c:1264 #, c-format msgid "Renaming %s to %s and %s to %s instead" msgstr "Benenne stattdessen %s nach %s und %s nach %s um" -#: merge-recursive.c:1450 +#: merge-recursive.c:1463 #, c-format msgid "CONFLICT (rename/add): Rename %s->%s in %s. %s added in %s" msgstr "" "KONFLIKT (umbenennen/hinzufügen): Benenne um %s->%s in %s. %s hinzugefügt in " "%s" -#: merge-recursive.c:1460 +#: merge-recursive.c:1473 #, c-format msgid "Adding merged %s" msgstr "Füge zusammengeführte Datei %s hinzu" -#: merge-recursive.c:1465 merge-recursive.c:1663 +#: merge-recursive.c:1478 merge-recursive.c:1676 #, c-format msgid "Adding as %s instead" msgstr "Füge stattdessen als %s hinzu" -#: merge-recursive.c:1516 +#: merge-recursive.c:1529 #, c-format msgid "cannot read object %s" msgstr "kann Objekt %s nicht lesen" -#: merge-recursive.c:1519 +#: merge-recursive.c:1532 #, c-format msgid "object %s is not a blob" msgstr "Objekt %s ist kein Blob" -#: merge-recursive.c:1567 +#: merge-recursive.c:1580 msgid "modify" msgstr "ändern" -#: merge-recursive.c:1567 +#: merge-recursive.c:1580 msgid "modified" msgstr "geändert" -#: merge-recursive.c:1577 +#: merge-recursive.c:1590 msgid "content" msgstr "Inhalt" -#: merge-recursive.c:1584 +#: merge-recursive.c:1597 msgid "add/add" msgstr "hinzufügen/hinzufügen" -#: merge-recursive.c:1618 +#: merge-recursive.c:1631 #, c-format msgid "Skipped %s (merged same as existing)" msgstr "%s ausgelassen (Ergebnis des Merges existiert bereits)" -#: merge-recursive.c:1632 +#: merge-recursive.c:1645 #, c-format msgid "Auto-merging %s" msgstr "automatischer Merge von %s" -#: merge-recursive.c:1636 git-submodule.sh:1149 +#: merge-recursive.c:1649 git-submodule.sh:1150 msgid "submodule" msgstr "Submodul" -#: merge-recursive.c:1637 +#: merge-recursive.c:1650 #, c-format msgid "CONFLICT (%s): Merge conflict in %s" msgstr "KONFLIKT (%s): Merge-Konflikt in %s" -#: merge-recursive.c:1727 +#: merge-recursive.c:1740 #, c-format msgid "Removing %s" msgstr "Entferne %s" -#: merge-recursive.c:1752 +#: merge-recursive.c:1765 msgid "file/directory" msgstr "Datei/Verzeichnis" -#: merge-recursive.c:1758 +#: merge-recursive.c:1771 msgid "directory/file" msgstr "Verzeichnis/Datei" -#: merge-recursive.c:1763 +#: merge-recursive.c:1776 #, c-format msgid "CONFLICT (%s): There is a directory with name %s in %s. Adding %s as %s" msgstr "" "KONFLIKT (%s): Es existiert bereits ein Verzeichnis %s in %s. Füge %s als %s " "hinzu." -#: merge-recursive.c:1773 +#: merge-recursive.c:1786 #, c-format msgid "Adding %s" msgstr "Füge %s hinzu" -#: merge-recursive.c:1790 +#: merge-recursive.c:1803 msgid "Fatal merge failure, shouldn't happen." msgstr "Fataler Merge-Fehler. Sollte nicht passieren." -#: merge-recursive.c:1809 +#: merge-recursive.c:1822 msgid "Already up-to-date!" msgstr "Bereits aktuell!" -#: merge-recursive.c:1818 +#: merge-recursive.c:1831 #, c-format msgid "merging of trees %s and %s failed" msgstr "Zusammenführen der \"Tree\"-Objekte %s und %s fehlgeschlagen" -#: merge-recursive.c:1848 +#: merge-recursive.c:1861 #, c-format msgid "Unprocessed path??? %s" msgstr "unverarbeiteter Pfad??? %s" -#: merge-recursive.c:1893 +#: merge-recursive.c:1906 msgid "Merging:" msgstr "Merge:" -#: merge-recursive.c:1906 +#: merge-recursive.c:1919 #, c-format msgid "found %u common ancestor:" msgid_plural "found %u common ancestors:" msgstr[0] "%u gemeinsamen Vorgänger-Commit gefunden" msgstr[1] "%u gemeinsame Vorgänger-Commits gefunden" -#: merge-recursive.c:1943 +#: merge-recursive.c:1956 msgid "merge returned no commit" msgstr "Merge hat keinen Commit zurückgegeben" -#: merge-recursive.c:2000 +#: merge-recursive.c:2013 #, c-format msgid "Could not parse object '%s'" msgstr "Konnte Objekt '%s' nicht parsen." -#: merge-recursive.c:2012 builtin/merge.c:668 +#: merge-recursive.c:2024 builtin/merge.c:666 msgid "Unable to write index." msgstr "Konnte Staging-Area nicht schreiben." -#: notes-utils.c:40 +#: notes-utils.c:41 msgid "Cannot commit uninitialized/unreferenced notes tree" msgstr "" "Kann uninitialisiertes/unreferenzierte Notiz-Verzeichnis nicht committen." -#: notes-utils.c:81 +#: notes-utils.c:83 #, c-format msgid "Bad notes.rewriteMode value: '%s'" msgstr "Ungültiger notes.rewriteMode Wert: '%s'" -#: notes-utils.c:91 +#: notes-utils.c:93 #, c-format msgid "Refusing to rewrite notes in %s (outside of refs/notes/)" msgstr "" @@ -864,38 +871,38 @@ msgstr "" #. TRANSLATORS: The first %s is the name of the #. environment variable, the second %s is its value -#: notes-utils.c:118 +#: notes-utils.c:120 #, c-format msgid "Bad %s value: '%s'" msgstr "Ungültiger %s Wert: '%s'" -#: object.c:229 +#: object.c:234 #, c-format msgid "unable to parse object: %s" msgstr "Konnte Objekt '%s' nicht parsen." -#: parse-options.c:532 +#: parse-options.c:534 msgid "..." msgstr "..." -#: parse-options.c:550 +#: parse-options.c:552 #, c-format msgid "usage: %s" msgstr "Verwendung: %s" #. TRANSLATORS: the colon here should align with the #. one in "usage: %s" translation -#: parse-options.c:554 +#: parse-options.c:556 #, c-format msgid " or: %s" msgstr " oder: %s" -#: parse-options.c:557 +#: parse-options.c:559 #, c-format msgid " %s" msgstr " %s" -#: parse-options.c:591 +#: parse-options.c:593 msgid "-NUM" msgstr "-NUM" @@ -953,12 +960,12 @@ msgid "%s: pathspec magic not supported by this command: %s" msgstr "" "%s: Pfadspezifikationsangabe wird von diesem Kommando nicht unterstützt: %s" -#: pathspec.c:433 +#: pathspec.c:432 #, c-format msgid "pathspec '%s' is beyond a symbolic link" msgstr "Pfadspezifikation '%s' ist hinter einem symbolischen Verweis" -#: pathspec.c:442 +#: pathspec.c:441 msgid "" "There is nothing to exclude from by :(exclude) patterns.\n" "Perhaps you forgot to add either ':/' or '.' ?" @@ -966,11 +973,11 @@ msgstr "" ":(exclude) Muster, aber keine anderen Pfadspezifikationen angegeben.\n" "Vielleicht haben Sie vergessen entweder ':/' oder '.' hinzuzufügen?" -#: progress.c:224 +#: progress.c:225 msgid "done" msgstr "Fertig" -#: read-cache.c:1238 +#: read-cache.c:1260 #, c-format msgid "" "index.version set, but the value is invalid.\n" @@ -979,7 +986,7 @@ msgstr "" "index.version gesetzt, aber Wert ungültig.\n" "Verwende Version %i" -#: read-cache.c:1248 +#: read-cache.c:1270 #, c-format msgid "" "GIT_INDEX_VERSION set, but the value is invalid.\n" @@ -988,51 +995,51 @@ msgstr "" "GIT_INDEX_VERSION gesetzt, aber Wert ungültig.\n" "Verwende Version %i" -#: remote.c:758 +#: remote.c:753 #, c-format msgid "Cannot fetch both %s and %s to %s" msgstr "Kann 'fetch' nicht für sowohl %s als auch %s nach %s ausführen." -#: remote.c:762 +#: remote.c:757 #, c-format msgid "%s usually tracks %s, not %s" msgstr "%s folgt üblicherweise %s, nicht %s" -#: remote.c:766 +#: remote.c:761 #, c-format msgid "%s tracks both %s and %s" msgstr "%s folgt sowohl %s als auch %s" -#: remote.c:774 +#: remote.c:769 msgid "Internal error" msgstr "Interner Fehler" -#: remote.c:1948 +#: remote.c:1943 #, c-format msgid "Your branch is based on '%s', but the upstream is gone.\n" msgstr "Ihr Branch basiert auf '%s', aber Upstream-Branch wurde entfernt.\n" -#: remote.c:1952 +#: remote.c:1947 msgid " (use \"git branch --unset-upstream\" to fixup)\n" msgstr " (benutzen Sie \"git branch --unset-upstream\" zum Beheben)\n" -#: remote.c:1955 +#: remote.c:1950 #, c-format msgid "Your branch is up-to-date with '%s'.\n" msgstr "Ihr Branch ist auf dem selben Stand wie '%s'.\n" -#: remote.c:1959 +#: remote.c:1954 #, c-format msgid "Your branch is ahead of '%s' by %d commit.\n" msgid_plural "Your branch is ahead of '%s' by %d commits.\n" msgstr[0] "Ihr Branch ist vor '%s' um %d Commit.\n" msgstr[1] "Ihr Branch ist vor '%s' um %d Commits.\n" -#: remote.c:1965 +#: remote.c:1960 msgid " (use \"git push\" to publish your local commits)\n" -msgstr " (benutzen Sie \"git push\" um lokale Commits zu publizieren)\n" +msgstr " (benutzen Sie \"git push\", um lokale Commits zu publizieren)\n" -#: remote.c:1968 +#: remote.c:1963 #, c-format msgid "Your branch is behind '%s' by %d commit, and can be fast-forwarded.\n" msgid_plural "" @@ -1042,12 +1049,12 @@ msgstr[0] "" msgstr[1] "" "Ihr Branch ist zu '%s' um %d Commits hinterher, und kann vorgespult werden.\n" -#: remote.c:1976 +#: remote.c:1971 msgid " (use \"git pull\" to update your local branch)\n" msgstr "" -" (benutzen Sie \"git pull\" um Ihren lokalen Branch zu aktualisieren)\n" +" (benutzen Sie \"git pull\", um Ihren lokalen Branch zu aktualisieren)\n" -#: remote.c:1979 +#: remote.c:1974 #, c-format msgid "" "Your branch and '%s' have diverged,\n" @@ -1062,10 +1069,10 @@ msgstr[1] "" "Ihr Branch und '%s' sind divergiert,\n" "und haben jeweils %d und %d unterschiedliche Commits.\n" -#: remote.c:1989 +#: remote.c:1984 msgid " (use \"git pull\" to merge the remote branch into yours)\n" msgstr "" -" (benutzen Sie \"git pull\" um Ihren Branch mit dem Remote-Branch " +" (benutzen Sie \"git pull\", um Ihren Branch mit dem Remote-Branch " "zusammenzuführen)\n" #: run-command.c:80 @@ -1077,19 +1084,19 @@ msgstr "Öffnen von /dev/null fehlgeschlagen" msgid "dup2(%d,%d) failed" msgstr "dup2(%d,%d) fehlgeschlagen" -#: sequencer.c:206 builtin/merge.c:786 builtin/merge.c:899 -#: builtin/merge.c:1009 builtin/merge.c:1019 +#: sequencer.c:171 builtin/merge.c:782 builtin/merge.c:893 +#: builtin/merge.c:1003 builtin/merge.c:1013 #, c-format msgid "Could not open '%s' for writing" msgstr "Konnte '%s' nicht zum Schreiben öffnen." -#: sequencer.c:208 builtin/merge.c:343 builtin/merge.c:789 -#: builtin/merge.c:1011 builtin/merge.c:1024 +#: sequencer.c:173 builtin/merge.c:343 builtin/merge.c:785 +#: builtin/merge.c:1005 builtin/merge.c:1018 #, c-format msgid "Could not write to '%s'" msgstr "Konnte nicht nach '%s' schreiben." -#: sequencer.c:229 +#: sequencer.c:194 msgid "" "after resolving the conflicts, mark the corrected paths\n" "with 'git add <paths>' or 'git rm <paths>'" @@ -1097,7 +1104,7 @@ msgstr "" "nach Auflösung der Konflikte, markieren Sie die korrigierten Pfade\n" "mit 'git add <Pfade>' oder 'git rm <Pfade>'" -#: sequencer.c:232 +#: sequencer.c:197 msgid "" "after resolving the conflicts, mark the corrected paths\n" "with 'git add <paths>' or 'git rm <paths>'\n" @@ -1107,222 +1114,226 @@ msgstr "" "mit 'git add <Pfade>' oder 'git rm <Pfade>'und tragen Sie das Ergebnis mit\n" "'git commit' ein" -#: sequencer.c:245 sequencer.c:879 sequencer.c:962 +#: sequencer.c:210 sequencer.c:841 sequencer.c:924 #, c-format msgid "Could not write to %s" msgstr "Konnte nicht nach %s schreiben" -#: sequencer.c:248 +#: sequencer.c:213 #, c-format msgid "Error wrapping up %s" msgstr "Fehler bei Nachbereitung von %s" -#: sequencer.c:263 +#: sequencer.c:228 msgid "Your local changes would be overwritten by cherry-pick." msgstr "" "Ihre lokalen Änderungen würden von \"cherry-pick\" überschrieben werden." -#: sequencer.c:265 +#: sequencer.c:230 msgid "Your local changes would be overwritten by revert." msgstr "Ihre lokalen Änderungen würden von \"revert\" überschrieben werden." -#: sequencer.c:268 +#: sequencer.c:233 msgid "Commit your changes or stash them to proceed." msgstr "" -"Tragen Sie Ihre Änderungen ein oder benutzen Sie \"stash\" um fortzufahren." +"Tragen Sie Ihre Änderungen ein oder benutzen Sie \"stash\", um fortzufahren." + +#: sequencer.c:250 +msgid "Failed to lock HEAD during fast_forward_to" +msgstr "Fehler beim Sperren von HEAD während fast_forward_to" #. TRANSLATORS: %s will be "revert" or "cherry-pick" -#: sequencer.c:325 +#: sequencer.c:293 #, c-format msgid "%s: Unable to write new index file" msgstr "%s: Konnte neue Staging-Area-Datei nicht schreiben" -#: sequencer.c:356 +#: sequencer.c:324 msgid "Could not resolve HEAD commit\n" msgstr "Konnte Commit von HEAD nicht auflösen\n" -#: sequencer.c:378 +#: sequencer.c:344 msgid "Unable to update cache tree\n" msgstr "Konnte Cache-Verzeichnis nicht aktualisieren\n" -#: sequencer.c:430 +#: sequencer.c:391 #, c-format msgid "Could not parse commit %s\n" msgstr "Konnte Commit %s nicht parsen\n" -#: sequencer.c:435 +#: sequencer.c:396 #, c-format msgid "Could not parse parent commit %s\n" msgstr "Konnte Eltern-Commit %s nicht parsen\n" -#: sequencer.c:501 +#: sequencer.c:462 msgid "Your index file is unmerged." msgstr "Ihre Staging-Area-Datei ist nicht zusammengeführt." -#: sequencer.c:520 +#: sequencer.c:481 #, c-format msgid "Commit %s is a merge but no -m option was given." msgstr "Commit %s ist ein Merge, aber die Option -m wurde nicht angegeben." -#: sequencer.c:528 +#: sequencer.c:489 #, c-format msgid "Commit %s does not have parent %d" msgstr "Commit %s hat keinen Elternteil %d" -#: sequencer.c:532 +#: sequencer.c:493 #, c-format msgid "Mainline was specified but commit %s is not a merge." msgstr "Hauptlinie wurde spezifiziert, aber Commit %s ist kein Merge." #. TRANSLATORS: The first %s will be "revert" or #. "cherry-pick", the second %s a SHA1 -#: sequencer.c:545 +#: sequencer.c:506 #, c-format msgid "%s: cannot parse parent commit %s" msgstr "%s: kann Eltern-Commit %s nicht parsen" -#: sequencer.c:549 +#: sequencer.c:510 #, c-format msgid "Cannot get commit message for %s" msgstr "Kann keine Commit-Beschreibung für %s bekommen" -#: sequencer.c:635 +#: sequencer.c:596 #, c-format msgid "could not revert %s... %s" msgstr "Konnte \"revert\" nicht auf %s ausführen... %s" -#: sequencer.c:636 +#: sequencer.c:597 #, c-format msgid "could not apply %s... %s" msgstr "Konnte %s nicht anwenden... %s" -#: sequencer.c:672 +#: sequencer.c:633 msgid "empty commit set passed" msgstr "leere Menge von Commits übergeben" -#: sequencer.c:680 +#: sequencer.c:641 #, c-format msgid "git %s: failed to read the index" msgstr "git %s: Fehler beim Lesen der Staging-Area" -#: sequencer.c:685 +#: sequencer.c:645 #, c-format msgid "git %s: failed to refresh the index" msgstr "git %s: Fehler beim Aktualisieren der Staging-Area" -#: sequencer.c:743 +#: sequencer.c:705 #, c-format msgid "Cannot %s during a %s" msgstr "Kann %s nicht während eines %s durchführen" -#: sequencer.c:765 +#: sequencer.c:727 #, c-format msgid "Could not parse line %d." msgstr "Konnte Zeile %d nicht parsen." -#: sequencer.c:770 +#: sequencer.c:732 msgid "No commits parsed." msgstr "Keine Commits geparst." -#: sequencer.c:783 +#: sequencer.c:745 #, c-format msgid "Could not open %s" msgstr "Konnte %s nicht öffnen" -#: sequencer.c:787 +#: sequencer.c:749 #, c-format msgid "Could not read %s." msgstr "Konnte %s nicht lesen." -#: sequencer.c:794 +#: sequencer.c:756 #, c-format msgid "Unusable instruction sheet: %s" msgstr "Unbenutzbares Instruktionsblatt: %s" -#: sequencer.c:824 +#: sequencer.c:786 #, c-format msgid "Invalid key: %s" msgstr "Ungültiger Schlüssel: %s" -#: sequencer.c:827 +#: sequencer.c:789 #, c-format msgid "Invalid value for %s: %s" msgstr "Ungültiger Wert für %s: %s" -#: sequencer.c:839 +#: sequencer.c:801 #, c-format msgid "Malformed options sheet: %s" msgstr "Fehlerhaftes Optionsblatt: %s" -#: sequencer.c:860 +#: sequencer.c:822 msgid "a cherry-pick or revert is already in progress" msgstr "\"cherry-pick\" oder \"revert\" ist bereits im Gang" -#: sequencer.c:861 +#: sequencer.c:823 msgid "try \"git cherry-pick (--continue | --quit | --abort)\"" msgstr "versuchen Sie \"git cherry-pick (--continue | --quit | --abort)\"" -#: sequencer.c:865 +#: sequencer.c:827 #, c-format msgid "Could not create sequencer directory %s" msgstr "Konnte \"sequencer\"-Verzeichnis %s nicht erstellen" -#: sequencer.c:881 sequencer.c:966 +#: sequencer.c:843 sequencer.c:928 #, c-format msgid "Error wrapping up %s." msgstr "Fehler beim Einpacken von %s." -#: sequencer.c:900 sequencer.c:1036 +#: sequencer.c:862 sequencer.c:998 msgid "no cherry-pick or revert in progress" msgstr "kein \"cherry-pick\" oder \"revert\" im Gang" -#: sequencer.c:902 +#: sequencer.c:864 msgid "cannot resolve HEAD" msgstr "kann HEAD nicht auflösen" -#: sequencer.c:904 +#: sequencer.c:866 msgid "cannot abort from a branch yet to be born" msgstr "kann nicht abbrechen: bin auf einem Branch, der noch geboren wird" -#: sequencer.c:926 builtin/apply.c:4061 +#: sequencer.c:888 builtin/apply.c:4062 #, c-format msgid "cannot open %s: %s" msgstr "Kann %s nicht öffnen: %s" -#: sequencer.c:929 +#: sequencer.c:891 #, c-format msgid "cannot read %s: %s" msgstr "Kann %s nicht lesen: %s" -#: sequencer.c:930 +#: sequencer.c:892 msgid "unexpected end of file" msgstr "Unerwartetes Dateiende" -#: sequencer.c:936 +#: sequencer.c:898 #, c-format msgid "stored pre-cherry-pick HEAD file '%s' is corrupt" msgstr "gespeicherte \"pre-cherry-pick\" HEAD Datei '%s' ist beschädigt" -#: sequencer.c:959 +#: sequencer.c:921 #, c-format msgid "Could not format %s." msgstr "Konnte %s nicht formatieren." -#: sequencer.c:1104 +#: sequencer.c:1066 #, c-format msgid "%s: can't cherry-pick a %s" msgstr "%s: %s kann nicht in \"cherry-pick\" benutzt werden" -#: sequencer.c:1107 +#: sequencer.c:1069 #, c-format msgid "%s: bad revision" msgstr "%s: ungültiger Commit" -#: sequencer.c:1141 +#: sequencer.c:1103 msgid "Can't revert as initial commit" msgstr "Kann nicht als allerersten Commit einen Revert ausführen." -#: sequencer.c:1142 +#: sequencer.c:1104 msgid "Can't cherry-pick into empty head" msgstr "Kann nicht als allerersten Commit einen Cherry-Pick ausführen." @@ -1351,21 +1362,21 @@ msgstr "" "indem Sie \"git config advice.objectNameWarning false\"\n" "ausführen." -#: sha1_name.c:1072 +#: sha1_name.c:1060 msgid "HEAD does not point to a branch" msgstr "HEAD zeigt auf keinen Branch" -#: sha1_name.c:1075 +#: sha1_name.c:1063 #, c-format msgid "No such branch: '%s'" msgstr "Kein solcher Branch '%s'" -#: sha1_name.c:1077 +#: sha1_name.c:1065 #, c-format msgid "No upstream configured for branch '%s'" msgstr "Kein Upstream-Branch für Branch '%s' konfiguriert." -#: sha1_name.c:1081 +#: sha1_name.c:1069 #, c-format msgid "Upstream branch '%s' not stored as a remote-tracking branch" msgstr "Upstream-Branch '%s' ist nicht als Remote-Tracking-Branch gespeichert" @@ -1395,17 +1406,17 @@ msgstr "Konnte Eintrag '%s' nicht aus .gitmodules entfernen" msgid "staging updated .gitmodules failed" msgstr "Konnte aktualisierte .gitmodules-Datei nicht zum Commit vormerken" -#: submodule.c:1121 builtin/init-db.c:363 +#: submodule.c:1118 builtin/init-db.c:363 #, c-format msgid "Could not create git link %s" msgstr "Konnte git-Verweis %s nicht erstellen" -#: submodule.c:1132 +#: submodule.c:1129 #, c-format msgid "Could not set core.worktree in %s" msgstr "Konnte core.worktree in '%s' nicht setzen." -#: unpack-trees.c:206 +#: unpack-trees.c:202 msgid "Checking out files" msgstr "Checke Dateien aus" @@ -1438,22 +1449,22 @@ msgstr "ungültige Portnummer" msgid "invalid '..' path segment" msgstr "ungültiges '..' Pfadsegment" -#: wrapper.c:422 +#: wrapper.c:460 #, c-format msgid "unable to access '%s': %s" msgstr "konnte nicht auf '%s' zugreifen: %s" -#: wrapper.c:443 +#: wrapper.c:481 #, c-format msgid "unable to access '%s'" msgstr "konnte nicht auf '%s' zugreifen" -#: wrapper.c:454 +#: wrapper.c:492 #, c-format msgid "unable to look up current user in the passwd file: %s" msgstr "konnte aktuellen Benutzer nicht in Passwort-Datei finden: %s" -#: wrapper.c:455 +#: wrapper.c:493 msgid "no such user" msgstr "kein solcher Benutzer" @@ -1477,18 +1488,18 @@ msgstr "" #: wt-status.c:183 msgid " (use \"git add <file>...\" to mark resolution)" msgstr "" -" (benutzen Sie \"git add/rm <Datei>...\" um die Auflösung zu markieren)" +" (benutzen Sie \"git add/rm <Datei>...\", um die Auflösung zu markieren)" #: wt-status.c:185 wt-status.c:189 msgid " (use \"git add/rm <file>...\" as appropriate to mark resolution)" msgstr "" -" (benutzen Sie \"git add/rm <Datei>...\" um die Auflösung entsprechend zu " +" (benutzen Sie \"git add/rm <Datei>...\", um die Auflösung entsprechend zu " "markieren)" #: wt-status.c:187 msgid " (use \"git rm <file>...\" to mark resolution)" msgstr "" -" (benutzen Sie \"git add/rm <Datei>...\" um die Auflösung zu markieren)" +" (benutzen Sie \"git add/rm <Datei>...\", um die Auflösung zu markieren)" #: wt-status.c:198 msgid "Changes to be committed:" @@ -1501,20 +1512,20 @@ msgstr "Änderungen, die nicht zum Commit vorgemerkt sind:" #: wt-status.c:220 msgid " (use \"git add <file>...\" to update what will be committed)" msgstr "" -" (benutzen Sie \"git add <Datei>...\" um die Änderungen zum Commit " +" (benutzen Sie \"git add <Datei>...\", um die Änderungen zum Commit " "vorzumerken)" #: wt-status.c:222 msgid " (use \"git add/rm <file>...\" to update what will be committed)" msgstr "" -" (benutzen Sie \"git add/rm <Datei>...\" um die Änderungen zum Commit " +" (benutzen Sie \"git add/rm <Datei>...\", um die Änderungen zum Commit " "vorzumerken)" #: wt-status.c:223 msgid "" " (use \"git checkout -- <file>...\" to discard changes in working directory)" msgstr "" -" (benutzen Sie \"git checkout -- <Datei>...\" um die Änderungen im " +" (benutzen Sie \"git checkout -- <Datei>...\", um die Änderungen im " "Arbeitsverzeichnis zu verwerfen)" #: wt-status.c:225 @@ -1527,7 +1538,7 @@ msgstr "" #, c-format msgid " (use \"git %s <file>...\" to include in what will be committed)" msgstr "" -" (benutzen Sie \"git %s <Datei>...\" um die Änderungen zum Commit " +" (benutzen Sie \"git %s <Datei>...\", um die Änderungen zum Commit " "vorzumerken)" #: wt-status.c:252 @@ -1612,15 +1623,15 @@ msgstr "unbeobachteter Inhalt, " msgid "bug: unhandled diff status %c" msgstr "Fehler: unbehandelter Differenz-Status %c" -#: wt-status.c:765 +#: wt-status.c:764 msgid "Submodules changed but not updated:" msgstr "Submodule geändert, aber nicht aktualisiert:" -#: wt-status.c:767 +#: wt-status.c:766 msgid "Submodule changes to be committed:" msgstr "Änderungen in Submodul zum Committen:" -#: wt-status.c:846 +#: wt-status.c:845 msgid "" "Do not touch the line above.\n" "Everything below will be removed." @@ -1628,75 +1639,75 @@ msgstr "" "Ändern Sie nicht die obige Zeile.\n" "Alles unterhalb von ihr wird entfernt." -#: wt-status.c:937 +#: wt-status.c:936 msgid "You have unmerged paths." msgstr "Sie haben nicht zusammengeführte Pfade." -#: wt-status.c:940 +#: wt-status.c:939 msgid " (fix conflicts and run \"git commit\")" msgstr " (beheben Sie die Konflikte und führen Sie \"git commit\" aus)" -#: wt-status.c:943 +#: wt-status.c:942 msgid "All conflicts fixed but you are still merging." msgstr "Alle Konflikte sind behoben, aber Sie sind immer noch beim Merge." -#: wt-status.c:946 +#: wt-status.c:945 msgid " (use \"git commit\" to conclude merge)" -msgstr " (benutzen Sie \"git commit\" um den Merge abzuschließen)" +msgstr " (benutzen Sie \"git commit\", um den Merge abzuschließen)" -#: wt-status.c:956 +#: wt-status.c:955 msgid "You are in the middle of an am session." msgstr "Eine \"am\"-Sitzung ist im Gange." -#: wt-status.c:959 +#: wt-status.c:958 msgid "The current patch is empty." msgstr "Der aktuelle Patch ist leer." -#: wt-status.c:963 +#: wt-status.c:962 msgid " (fix conflicts and then run \"git am --continue\")" msgstr "" " (beheben Sie die Konflikte und führen Sie dann \"git am --continue\" aus)" -#: wt-status.c:965 +#: wt-status.c:964 msgid " (use \"git am --skip\" to skip this patch)" -msgstr " (benutzen Sie \"git am --skip\" um diesen Patch auszulassen)" +msgstr " (benutzen Sie \"git am --skip\", um diesen Patch auszulassen)" -#: wt-status.c:967 +#: wt-status.c:966 msgid " (use \"git am --abort\" to restore the original branch)" msgstr "" -" (benutzen Sie \"git am --abort\" um den ursprünglichen Branch " +" (benutzen Sie \"git am --abort\", um den ursprünglichen Branch " "wiederherzustellen)" -#: wt-status.c:1027 wt-status.c:1044 +#: wt-status.c:1026 wt-status.c:1043 #, c-format msgid "You are currently rebasing branch '%s' on '%s'." msgstr "Sie sind gerade beim Rebase von Branch '%s' auf '%s'." -#: wt-status.c:1032 wt-status.c:1049 +#: wt-status.c:1031 wt-status.c:1048 msgid "You are currently rebasing." msgstr "Sie sind gerade beim Rebase." -#: wt-status.c:1035 +#: wt-status.c:1034 msgid " (fix conflicts and then run \"git rebase --continue\")" msgstr "" " (beheben Sie die Konflikte und führen Sie dann \"git rebase --continue\" " "aus)" -#: wt-status.c:1037 +#: wt-status.c:1036 msgid " (use \"git rebase --skip\" to skip this patch)" -msgstr " (benutzen Sie \"git rebase --skip\" um diesen Patch auszulassen)" +msgstr " (benutzen Sie \"git rebase --skip\", um diesen Patch auszulassen)" -#: wt-status.c:1039 +#: wt-status.c:1038 msgid " (use \"git rebase --abort\" to check out the original branch)" msgstr "" -" (benutzen Sie \"git rebase --abort\" um den ursprünglichen Branch " +" (benutzen Sie \"git rebase --abort\", um den ursprünglichen Branch " "auszuchecken)" -#: wt-status.c:1052 +#: wt-status.c:1051 msgid " (all conflicts fixed: run \"git rebase --continue\")" msgstr " (alle Konflikte behoben: führen Sie \"git rebase --continue\" aus)" -#: wt-status.c:1056 +#: wt-status.c:1055 #, c-format msgid "" "You are currently splitting a commit while rebasing branch '%s' on '%s'." @@ -1704,129 +1715,129 @@ msgstr "" "Sie teilen gerade einen Commit auf, während ein Rebase von Branch '%s' auf " "'%s' im Gange ist." -#: wt-status.c:1061 +#: wt-status.c:1060 msgid "You are currently splitting a commit during a rebase." msgstr "Sie teilen gerade einen Commit während eines Rebase auf." -#: wt-status.c:1064 +#: wt-status.c:1063 msgid " (Once your working directory is clean, run \"git rebase --continue\")" msgstr "" " (Sobald Ihr Arbeitsverzeichnis unverändert ist, führen Sie \"git rebase --" "continue\" aus)" -#: wt-status.c:1068 +#: wt-status.c:1067 #, c-format msgid "You are currently editing a commit while rebasing branch '%s' on '%s'." msgstr "" "Sie editieren gerade einen Commit während eines Rebase von Branch '%s' auf " "'%s'." -#: wt-status.c:1073 +#: wt-status.c:1072 msgid "You are currently editing a commit during a rebase." msgstr "Sie editieren gerade einen Commit während eines Rebase." -#: wt-status.c:1076 +#: wt-status.c:1075 msgid " (use \"git commit --amend\" to amend the current commit)" msgstr "" -" (benutzen Sie \"git commit --amend\" um den aktuellen Commit nachzubessern)" +" (benutzen Sie \"git commit --amend\", um den aktuellen Commit nachzubessern)" -#: wt-status.c:1078 +#: wt-status.c:1077 msgid "" " (use \"git rebase --continue\" once you are satisfied with your changes)" msgstr "" " (benutzen Sie \"git rebase --continue\" sobald Ihre Änderungen " "abgeschlossen sind)" -#: wt-status.c:1088 +#: wt-status.c:1087 #, c-format msgid "You are currently cherry-picking commit %s." msgstr "Sie führen gerade \"cherry-pick\" von Commit %s aus." -#: wt-status.c:1093 +#: wt-status.c:1092 msgid " (fix conflicts and run \"git cherry-pick --continue\")" msgstr "" " (beheben Sie die Konflikte und führen Sie dann \"git cherry-pick --continue" "\" aus)" -#: wt-status.c:1096 +#: wt-status.c:1095 msgid " (all conflicts fixed: run \"git cherry-pick --continue\")" msgstr "" " (alle Konflikte behoben: führen Sie \"git cherry-pick --continue\" aus)" -#: wt-status.c:1098 +#: wt-status.c:1097 msgid " (use \"git cherry-pick --abort\" to cancel the cherry-pick operation)" msgstr "" -" (benutzen Sie \"git cherry-pick --abort\" um die Cherry-Pick-Operation " +" (benutzen Sie \"git cherry-pick --abort\", um die Cherry-Pick-Operation " "abzubrechen)" -#: wt-status.c:1107 +#: wt-status.c:1106 #, c-format msgid "You are currently reverting commit %s." msgstr "Sie sind gerade an einem Revert von Commit '%s'." -#: wt-status.c:1112 +#: wt-status.c:1111 msgid " (fix conflicts and run \"git revert --continue\")" msgstr "" " (beheben Sie die Konflikte und führen Sie dann \"git revert --continue\" " "aus)" -#: wt-status.c:1115 +#: wt-status.c:1114 msgid " (all conflicts fixed: run \"git revert --continue\")" msgstr " (alle Konflikte behoben: führen Sie \"git revert --continue\" aus)" -#: wt-status.c:1117 +#: wt-status.c:1116 msgid " (use \"git revert --abort\" to cancel the revert operation)" msgstr "" -" (benutzen Sie \"git revert --abort\" um die Revert-Operation abzubrechen)" +" (benutzen Sie \"git revert --abort\", um die Revert-Operation abzubrechen)" -#: wt-status.c:1128 +#: wt-status.c:1127 #, c-format msgid "You are currently bisecting, started from branch '%s'." msgstr "Sie sind gerade bei einer binären Suche, gestartet von Branch '%s'." -#: wt-status.c:1132 +#: wt-status.c:1131 msgid "You are currently bisecting." msgstr "Sie sind gerade bei einer binären Suche." -#: wt-status.c:1135 +#: wt-status.c:1134 msgid " (use \"git bisect reset\" to get back to the original branch)" msgstr "" -" (benutzen Sie \"git bisect reset\" um zum ursprünglichen Branch " +" (benutzen Sie \"git bisect reset\", um zum ursprünglichen Branch " "zurückzukehren)" -#: wt-status.c:1310 +#: wt-status.c:1309 msgid "On branch " msgstr "Auf Branch " -#: wt-status.c:1317 +#: wt-status.c:1316 msgid "rebase in progress; onto " msgstr "Rebase im Gange; auf " -#: wt-status.c:1324 +#: wt-status.c:1323 msgid "HEAD detached at " msgstr "HEAD losgelöst bei " -#: wt-status.c:1326 +#: wt-status.c:1325 msgid "HEAD detached from " msgstr "HEAD losgelöst von " -#: wt-status.c:1329 +#: wt-status.c:1328 msgid "Not currently on any branch." msgstr "Im Moment auf keinem Branch." -#: wt-status.c:1346 +#: wt-status.c:1345 msgid "Initial commit" msgstr "Initialer Commit" -#: wt-status.c:1360 +#: wt-status.c:1359 msgid "Untracked files" msgstr "Unbeobachtete Dateien" -#: wt-status.c:1362 +#: wt-status.c:1361 msgid "Ignored files" msgstr "Ignorierte Dateien" -#: wt-status.c:1366 +#: wt-status.c:1365 #, c-format msgid "" "It took %.2f seconds to enumerate untracked files. 'status -uno'\n" @@ -1837,32 +1848,32 @@ msgstr "" "'status -uno' könnte das beschleunigen, aber Sie müssen darauf achten,\n" "neue Dateien selbstständig hinzuzufügen (siehe 'git help status')." -#: wt-status.c:1372 +#: wt-status.c:1371 #, c-format msgid "Untracked files not listed%s" msgstr "Unbeobachtete Dateien nicht aufgelistet%s" -#: wt-status.c:1374 +#: wt-status.c:1373 msgid " (use -u option to show untracked files)" -msgstr " (benutzen Sie die Option -u um unbeobachteten Dateien anzuzeigen)" +msgstr " (benutzen Sie die Option -u, um unbeobachteten Dateien anzuzeigen)" -#: wt-status.c:1380 +#: wt-status.c:1379 msgid "No changes" msgstr "Keine Änderungen" -#: wt-status.c:1385 +#: wt-status.c:1384 #, c-format msgid "no changes added to commit (use \"git add\" and/or \"git commit -a\")\n" msgstr "" "keine Änderungen zum Commit vorgemerkt (benutzen Sie \"git add\" und/oder " "\"git commit -a\")\n" -#: wt-status.c:1388 +#: wt-status.c:1387 #, c-format msgid "no changes added to commit\n" msgstr "keine Änderungen zum Commit vorgemerkt\n" -#: wt-status.c:1391 +#: wt-status.c:1390 #, c-format msgid "" "nothing added to commit but untracked files present (use \"git add\" to " @@ -1871,48 +1882,48 @@ msgstr "" "nichts zum Commit vorgemerkt, aber es gibt unbeobachtete Dateien (benutzen " "Sie \"git add\" zum Beobachten)\n" -#: wt-status.c:1394 +#: wt-status.c:1393 #, c-format msgid "nothing added to commit but untracked files present\n" msgstr "nichts zum Commit vorgemerkt, aber es gibt unbeobachtete Dateien\n" -#: wt-status.c:1397 +#: wt-status.c:1396 #, c-format msgid "nothing to commit (create/copy files and use \"git add\" to track)\n" msgstr "" "nichts zu committen (Erstellen/Kopieren Sie Dateien und benutzen Sie \"git " "add\" zum Beobachten)\n" -#: wt-status.c:1400 wt-status.c:1405 +#: wt-status.c:1399 wt-status.c:1404 #, c-format msgid "nothing to commit\n" msgstr "nichts zu committen\n" -#: wt-status.c:1403 +#: wt-status.c:1402 #, c-format msgid "nothing to commit (use -u to show untracked files)\n" msgstr "" "nichts zu committen (benutzen Sie die Option -u, um unbeobachtete Dateien " "anzuzeigen)\n" -#: wt-status.c:1407 +#: wt-status.c:1406 #, c-format msgid "nothing to commit, working directory clean\n" msgstr "nichts zu committen, Arbeitsverzeichnis unverändert\n" -#: wt-status.c:1516 +#: wt-status.c:1515 msgid "HEAD (no branch)" msgstr "HEAD (kein Branch)" -#: wt-status.c:1522 +#: wt-status.c:1521 msgid "Initial commit on " msgstr "Initialer Commit auf " -#: wt-status.c:1554 +#: wt-status.c:1553 msgid "gone" msgstr "entfernt" -#: wt-status.c:1556 wt-status.c:1564 +#: wt-status.c:1555 wt-status.c:1563 msgid "behind " msgstr "hinterher " @@ -1944,7 +1955,7 @@ msgid "Unstaged changes after refreshing the index:" msgstr "" "Nicht zum Commit vorgemerkte Änderungen nach Aktualisierung der Staging-Area:" -#: builtin/add.c:193 +#: builtin/add.c:193 builtin/rev-parse.c:781 msgid "Could not read the index" msgstr "Konnte die Staging-Area nicht lesen" @@ -1977,15 +1988,15 @@ msgstr "" "Die folgenden Pfade werden durch eine Ihrer \".gitignore\" Dateien " "ignoriert:\n" -#: builtin/add.c:248 builtin/clean.c:876 builtin/fetch.c:93 builtin/mv.c:70 -#: builtin/prune-packed.c:77 builtin/push.c:489 builtin/remote.c:1344 +#: builtin/add.c:248 builtin/clean.c:875 builtin/fetch.c:108 builtin/mv.c:70 +#: builtin/prune-packed.c:77 builtin/push.c:488 builtin/remote.c:1367 #: builtin/rm.c:269 msgid "dry run" msgstr "Probelauf" -#: builtin/add.c:249 builtin/apply.c:4410 builtin/check-ignore.c:19 -#: builtin/commit.c:1256 builtin/count-objects.c:95 builtin/fsck.c:612 -#: builtin/log.c:1592 builtin/mv.c:69 builtin/read-tree.c:113 +#: builtin/add.c:249 builtin/apply.c:4411 builtin/check-ignore.c:19 +#: builtin/commit.c:1328 builtin/count-objects.c:95 builtin/fsck.c:606 +#: builtin/log.c:1613 builtin/mv.c:69 builtin/read-tree.c:113 msgid "be verbose" msgstr "erweiterte Ausgaben" @@ -1993,7 +2004,7 @@ msgstr "erweiterte Ausgaben" msgid "interactive picking" msgstr "interaktives Auswählen" -#: builtin/add.c:252 builtin/checkout.c:1108 builtin/reset.c:283 +#: builtin/add.c:252 builtin/checkout.c:1102 builtin/reset.c:285 msgid "select hunks interactively" msgstr "Blöcke interaktiv auswählen" @@ -2049,31 +2060,31 @@ msgstr "keine Dateien hinzugefügt" msgid "adding files failed" msgstr "Hinzufügen von Dateien fehlgeschlagen" -#: builtin/add.c:330 +#: builtin/add.c:329 msgid "-A and -u are mutually incompatible" msgstr "Die Optionen -A und -u sind zueinander inkompatibel." -#: builtin/add.c:337 +#: builtin/add.c:336 msgid "Option --ignore-missing can only be used together with --dry-run" msgstr "" "Die Option --ignore-missing kann nur zusammen mit --dry-run verwendet werden." -#: builtin/add.c:358 +#: builtin/add.c:357 #, c-format msgid "Nothing specified, nothing added.\n" msgstr "Nichts spezifiziert, nichts hinzugefügt.\n" -#: builtin/add.c:359 +#: builtin/add.c:358 #, c-format msgid "Maybe you wanted to say 'git add .'?\n" msgstr "Wollten Sie vielleicht 'git add .' sagen?\n" -#: builtin/add.c:364 builtin/check-ignore.c:172 builtin/clean.c:920 -#: builtin/commit.c:320 builtin/mv.c:90 builtin/reset.c:234 builtin/rm.c:299 +#: builtin/add.c:363 builtin/check-ignore.c:172 builtin/clean.c:919 +#: builtin/commit.c:319 builtin/mv.c:90 builtin/reset.c:234 builtin/rm.c:299 msgid "index file corrupt" msgstr "Staging-Area-Datei beschädigt" -#: builtin/add.c:448 builtin/apply.c:4506 builtin/mv.c:280 builtin/rm.c:432 +#: builtin/add.c:446 builtin/apply.c:4506 builtin/mv.c:280 builtin/rm.c:431 msgid "Unable to write new index file" msgstr "Konnte neue Staging-Area-Datei nicht schreiben." @@ -2091,41 +2102,41 @@ msgstr "nicht erkannte Whitespace-Option: '%s'" msgid "unrecognized whitespace ignore option '%s'" msgstr "nicht erkannte Option zum Ignorieren von Whitespace: '%s'" -#: builtin/apply.c:823 +#: builtin/apply.c:825 #, c-format msgid "Cannot prepare timestamp regexp %s" msgstr "Kann regulären Ausdruck für Zeitstempel %s nicht verarbeiten" -#: builtin/apply.c:832 +#: builtin/apply.c:834 #, c-format msgid "regexec returned %d for input: %s" msgstr "Ausführung des regulären Ausdrucks gab %d zurück. Eingabe: %s" -#: builtin/apply.c:913 +#: builtin/apply.c:915 #, c-format msgid "unable to find filename in patch at line %d" msgstr "Konnte keinen Dateinamen in Zeile %d des Patches finden." -#: builtin/apply.c:945 +#: builtin/apply.c:947 #, c-format msgid "git apply: bad git-diff - expected /dev/null, got %s on line %d" msgstr "" "git apply: ungültiges 'git-diff' - erwartete /dev/null, erhielt %s in Zeile " "%d" -#: builtin/apply.c:949 +#: builtin/apply.c:951 #, c-format msgid "git apply: bad git-diff - inconsistent new filename on line %d" msgstr "" "git apply: ungültiges 'git-diff' - Inkonsistenter neuer Dateiname in Zeile %d" -#: builtin/apply.c:950 +#: builtin/apply.c:952 #, c-format msgid "git apply: bad git-diff - inconsistent old filename on line %d" msgstr "" "git apply: ungültiges 'git-diff' - Inkonsistenter alter Dateiname in Zeile %d" -#: builtin/apply.c:957 +#: builtin/apply.c:959 #, c-format msgid "git apply: bad git-diff - expected /dev/null on line %d" msgstr "git apply: ungültiges 'git-diff' - erwartete /dev/null in Zeile %d" @@ -2224,7 +2235,7 @@ msgstr[1] "" #: builtin/apply.c:2818 #, c-format msgid "Context reduced to (%ld/%ld) to apply fragment at %d" -msgstr "Kontext reduziert zu (%ld/%ld) um Patch-Bereich bei %d anzuwenden" +msgstr "Kontext reduziert zu (%ld/%ld), um Patch-Bereich bei %d anzuwenden" #: builtin/apply.c:2824 #, c-format @@ -2240,18 +2251,18 @@ msgstr "" msgid "missing binary patch data for '%s'" msgstr "keine Daten in Binär-Patch für '%s'" -#: builtin/apply.c:2946 +#: builtin/apply.c:2944 #, c-format msgid "binary patch does not apply to '%s'" msgstr "Konnte Binär-Patch nicht auf '%s' anwenden" -#: builtin/apply.c:2952 +#: builtin/apply.c:2950 #, c-format msgid "binary patch to '%s' creates incorrect result (expecting %s, got %s)" msgstr "" "Binär-Patch für '%s' erzeugt falsches Ergebnis (erwartete %s, bekam %s)" -#: builtin/apply.c:2973 +#: builtin/apply.c:2971 #, c-format msgid "patch failed: %s:%ld" msgstr "Anwendung des Patches fehlgeschlagen: %s:%ld" @@ -2340,230 +2351,230 @@ msgstr "make_cache_entry für Pfad '%s' fehlgeschlagen" msgid "unable to remove %s from index" msgstr "konnte %s nicht aus der Staging-Area entfernen" -#: builtin/apply.c:3851 +#: builtin/apply.c:3852 #, c-format msgid "corrupt patch for submodule %s" msgstr "fehlerhafter Patch für Submodul %s" -#: builtin/apply.c:3855 +#: builtin/apply.c:3856 #, c-format msgid "unable to stat newly created file '%s'" msgstr "konnte neu erstellte Datei '%s' nicht lesen" -#: builtin/apply.c:3860 +#: builtin/apply.c:3861 #, c-format msgid "unable to create backing store for newly created file %s" msgstr "kann internen Speicher für eben erstellte Datei %s nicht erzeugen" -#: builtin/apply.c:3863 builtin/apply.c:3971 +#: builtin/apply.c:3864 builtin/apply.c:3972 #, c-format msgid "unable to add cache entry for %s" msgstr "kann für %s keinen Eintrag in den Zwischenspeicher hinzufügen" -#: builtin/apply.c:3896 +#: builtin/apply.c:3897 #, c-format msgid "closing file '%s'" msgstr "schließe Datei '%s'" -#: builtin/apply.c:3945 +#: builtin/apply.c:3946 #, c-format msgid "unable to write file '%s' mode %o" msgstr "konnte Datei '%s' mit Modus %o nicht schreiben" -#: builtin/apply.c:4032 +#: builtin/apply.c:4033 #, c-format msgid "Applied patch %s cleanly." msgstr "Patch %s sauber angewendet" -#: builtin/apply.c:4040 +#: builtin/apply.c:4041 msgid "internal error" msgstr "interner Fehler" -#: builtin/apply.c:4043 +#: builtin/apply.c:4044 #, c-format msgid "Applying patch %%s with %d reject..." msgid_plural "Applying patch %%s with %d rejects..." msgstr[0] "Wende Patch %%s mit %d Zurückweisung an..." msgstr[1] "Wende Patch %%s mit %d Zurückweisungen an..." -#: builtin/apply.c:4053 +#: builtin/apply.c:4054 #, c-format msgid "truncating .rej filename to %.*s.rej" msgstr "Verkürze Name von .rej Datei zu %.*s.rej" -#: builtin/apply.c:4074 +#: builtin/apply.c:4075 #, c-format msgid "Hunk #%d applied cleanly." msgstr "Patch-Bereich #%d sauber angewendet." -#: builtin/apply.c:4077 +#: builtin/apply.c:4078 #, c-format msgid "Rejected hunk #%d." msgstr "Patch-Block #%d zurückgewiesen." -#: builtin/apply.c:4227 +#: builtin/apply.c:4228 msgid "unrecognized input" msgstr "nicht erkannte Eingabe" -#: builtin/apply.c:4238 +#: builtin/apply.c:4239 msgid "unable to read index file" msgstr "Konnte Staging-Area-Datei nicht lesen" -#: builtin/apply.c:4357 builtin/apply.c:4360 builtin/clone.c:90 -#: builtin/fetch.c:78 +#: builtin/apply.c:4358 builtin/apply.c:4361 builtin/clone.c:90 +#: builtin/fetch.c:93 msgid "path" msgstr "Pfad" -#: builtin/apply.c:4358 +#: builtin/apply.c:4359 msgid "don't apply changes matching the given path" msgstr "wendet keine Änderungen im angegebenen Pfad an" -#: builtin/apply.c:4361 +#: builtin/apply.c:4362 msgid "apply changes matching the given path" msgstr "wendet Änderungen nur im angegebenen Pfad an" -#: builtin/apply.c:4363 +#: builtin/apply.c:4364 msgid "num" msgstr "Anzahl" -#: builtin/apply.c:4364 +#: builtin/apply.c:4365 msgid "remove <num> leading slashes from traditional diff paths" msgstr "" "entfernt <Anzahl> vorangestellte Schrägstriche von herkömmlichen " "Differenzpfaden" -#: builtin/apply.c:4367 +#: builtin/apply.c:4368 msgid "ignore additions made by the patch" msgstr "ignoriert hinzugefügte Zeilen des Patches" -#: builtin/apply.c:4369 +#: builtin/apply.c:4370 msgid "instead of applying the patch, output diffstat for the input" msgstr "" "anstatt der Anwendung des Patches, wird der \"diffstat\" für die Eingabe " "ausgegeben" -#: builtin/apply.c:4373 +#: builtin/apply.c:4374 msgid "show number of added and deleted lines in decimal notation" msgstr "" "zeigt die Anzahl von hinzugefügten/entfernten Zeilen in Dezimalnotation" -#: builtin/apply.c:4375 +#: builtin/apply.c:4376 msgid "instead of applying the patch, output a summary for the input" msgstr "" "anstatt der Anwendung des Patches, wird eine Zusammenfassung für die Eingabe " "ausgegeben" -#: builtin/apply.c:4377 +#: builtin/apply.c:4378 msgid "instead of applying the patch, see if the patch is applicable" msgstr "" "anstatt der Anwendung des Patches, zeige ob Patch angewendet werden kann" -#: builtin/apply.c:4379 +#: builtin/apply.c:4380 msgid "make sure the patch is applicable to the current index" msgstr "" "stellt sicher, dass der Patch in der aktuellen Staging-Area angewendet " "werden kann" -#: builtin/apply.c:4381 +#: builtin/apply.c:4382 msgid "apply a patch without touching the working tree" msgstr "" "wendet einen Patch an, ohne Änderungen im Arbeitsverzeichnis vorzunehmen" -#: builtin/apply.c:4383 +#: builtin/apply.c:4384 msgid "also apply the patch (use with --stat/--summary/--check)" msgstr "wendet den Patch an (Benutzung mit --stat/--summary/--check)" -#: builtin/apply.c:4385 +#: builtin/apply.c:4386 msgid "attempt three-way merge if a patch does not apply" msgstr "versucht 3-Wege-Merge, wenn der Patch nicht angewendet werden konnte" -#: builtin/apply.c:4387 +#: builtin/apply.c:4388 msgid "build a temporary index based on embedded index information" msgstr "" "erstellt eine temporäre Staging-Area basierend auf den integrierten Staging-" "Area-Informationen" -#: builtin/apply.c:4389 builtin/checkout-index.c:197 builtin/ls-files.c:455 +#: builtin/apply.c:4390 builtin/checkout-index.c:198 builtin/ls-files.c:455 msgid "paths are separated with NUL character" msgstr "Pfade sind getrennt durch NUL Zeichen" -#: builtin/apply.c:4392 +#: builtin/apply.c:4393 msgid "ensure at least <n> lines of context match" msgstr "stellt sicher, dass mindestens <n> Zeilen des Kontextes übereinstimmen" -#: builtin/apply.c:4393 +#: builtin/apply.c:4394 msgid "action" msgstr "Aktion" -#: builtin/apply.c:4394 +#: builtin/apply.c:4395 msgid "detect new or modified lines that have whitespace errors" msgstr "ermittelt neue oder geänderte Zeilen die Whitespace-Fehler haben" -#: builtin/apply.c:4397 builtin/apply.c:4400 +#: builtin/apply.c:4398 builtin/apply.c:4401 msgid "ignore changes in whitespace when finding context" msgstr "ignoriert Änderungen im Whitespace bei der Suche des Kontextes" -#: builtin/apply.c:4403 +#: builtin/apply.c:4404 msgid "apply the patch in reverse" msgstr "wendet den Patch in umgekehrter Reihenfolge an" -#: builtin/apply.c:4405 +#: builtin/apply.c:4406 msgid "don't expect at least one line of context" msgstr "erwartet keinen Kontext" -#: builtin/apply.c:4407 +#: builtin/apply.c:4408 msgid "leave the rejected hunks in corresponding *.rej files" msgstr "" "hinterlässt zurückgewiesene Patch-Blöcke in entsprechenden *.rej Dateien" -#: builtin/apply.c:4409 +#: builtin/apply.c:4410 msgid "allow overlapping hunks" msgstr "erlaubt sich überlappende Patch-Blöcke" -#: builtin/apply.c:4412 +#: builtin/apply.c:4413 msgid "tolerate incorrectly detected missing new-line at the end of file" msgstr "toleriert fehlerhaft erkannten fehlenden Zeilenumbruch am Dateiende" -#: builtin/apply.c:4415 +#: builtin/apply.c:4416 msgid "do not trust the line counts in the hunk headers" msgstr "vertraut nicht den Zeilennummern im Kopf des Patch-Blocks" -#: builtin/apply.c:4417 +#: builtin/apply.c:4418 msgid "root" msgstr "Wurzelverzeichnis" -#: builtin/apply.c:4418 +#: builtin/apply.c:4419 msgid "prepend <root> to all filenames" msgstr "stellt <Wurzelverzeichnis> vor alle Dateinamen" -#: builtin/apply.c:4440 +#: builtin/apply.c:4441 msgid "--3way outside a repository" msgstr "" "Die Option --3way kann nicht außerhalb eines Repositories verwendet werden." -#: builtin/apply.c:4448 +#: builtin/apply.c:4449 msgid "--index outside a repository" msgstr "" "Die Option --index kann nicht außerhalb eines Repositories verwendet werden." -#: builtin/apply.c:4451 +#: builtin/apply.c:4452 msgid "--cached outside a repository" msgstr "" "Die Option --cached kann nicht außerhalb eines Repositories verwendet werden." -#: builtin/apply.c:4467 +#: builtin/apply.c:4468 #, c-format msgid "can't open patch '%s'" msgstr "kann Patch '%s' nicht öffnen" -#: builtin/apply.c:4481 +#: builtin/apply.c:4482 #, c-format msgid "squelched %d whitespace error" msgid_plural "squelched %d whitespace errors" msgstr[0] "unterdrückte %d Whitespace-Fehler" msgstr[1] "unterdrückte %d Whitespace-Fehler" -#: builtin/apply.c:4487 builtin/apply.c:4497 +#: builtin/apply.c:4488 builtin/apply.c:4498 #, c-format msgid "%d line adds whitespace errors." msgid_plural "%d lines add whitespace errors." @@ -2617,107 +2628,117 @@ msgstr "führt 'git bisect next' aus" msgid "update BISECT_HEAD instead of checking out the current commit" msgstr "aktualisiert BISECT_HEAD, anstatt den aktuellen Commit auszuchecken" -#: builtin/blame.c:27 +#: builtin/blame.c:30 msgid "git blame [options] [rev-opts] [rev] [--] file" msgstr "git blame [Optionen] [rev-opts] [rev] [--] Datei" -#: builtin/blame.c:32 +#: builtin/blame.c:35 msgid "[rev-opts] are documented in git-rev-list(1)" msgstr "[rev-opts] sind dokumentiert in git-rev-list(1)" -#: builtin/blame.c:2242 +#: builtin/blame.c:2501 msgid "Show blame entries as we find them, incrementally" msgstr "Zeigt \"blame\"-Einträge schrittweise, während wir sie generieren" -#: builtin/blame.c:2243 +#: builtin/blame.c:2502 msgid "Show blank SHA-1 for boundary commits (Default: off)" msgstr "Zeigt leere SHA-1 für Grenz-Commits (Standard: aus)" -#: builtin/blame.c:2244 +#: builtin/blame.c:2503 msgid "Do not treat root commits as boundaries (Default: off)" msgstr "Behandelt Ursprungs-Commit nicht als Grenzen (Standard: aus)" -#: builtin/blame.c:2245 +#: builtin/blame.c:2504 msgid "Show work cost statistics" msgstr "Zeigt Statistiken zum Arbeitsaufwand" -#: builtin/blame.c:2246 +#: builtin/blame.c:2505 msgid "Show output score for blame entries" msgstr "Zeigt Ausgabebewertung für \"blame\"-Einträge" -#: builtin/blame.c:2247 +#: builtin/blame.c:2506 msgid "Show original filename (Default: auto)" msgstr "Zeigt ursprünglichen Dateinamen (Standard: auto)" -#: builtin/blame.c:2248 +#: builtin/blame.c:2507 msgid "Show original linenumber (Default: off)" msgstr "Zeigt ursprüngliche Zeilennummer (Standard: aus)" -#: builtin/blame.c:2249 +#: builtin/blame.c:2508 msgid "Show in a format designed for machine consumption" msgstr "Anzeige in einem Format für maschinelle Auswertung" -#: builtin/blame.c:2250 +#: builtin/blame.c:2509 msgid "Show porcelain format with per-line commit information" msgstr "" "Anzeige in Format für Fremdprogramme mit Commit-Informationen pro Zeile" -#: builtin/blame.c:2251 +#: builtin/blame.c:2510 msgid "Use the same output mode as git-annotate (Default: off)" msgstr "Benutzt den gleichen Ausgabemodus wie \"git-annotate\" (Standard: aus)" -#: builtin/blame.c:2252 +#: builtin/blame.c:2511 msgid "Show raw timestamp (Default: off)" msgstr "Zeigt unbearbeiteten Zeitstempel (Standard: aus)" -#: builtin/blame.c:2253 +#: builtin/blame.c:2512 msgid "Show long commit SHA1 (Default: off)" msgstr "Zeigt langen Commit-SHA1 (Standard: aus)" -#: builtin/blame.c:2254 +#: builtin/blame.c:2513 msgid "Suppress author name and timestamp (Default: off)" msgstr "Unterdrückt den Namen des Autors und den Zeitstempel (Standard: aus)" -#: builtin/blame.c:2255 +#: builtin/blame.c:2514 msgid "Show author email instead of name (Default: off)" -msgstr "Zeigt anstatt des Namens die Email-Adresse des Autors (Standard: aus)" +msgstr "Zeigt anstatt des Namens die E-Mail-Adresse des Autors (Standard: aus)" -#: builtin/blame.c:2256 +#: builtin/blame.c:2515 msgid "Ignore whitespace differences" msgstr "Ignoriert Unterschiede im Whitespace" -#: builtin/blame.c:2257 +#: builtin/blame.c:2516 msgid "Spend extra cycles to find better match" msgstr "arbeite länger, um bessere Übereinstimmungen zu finden" -#: builtin/blame.c:2258 +#: builtin/blame.c:2517 msgid "Use revisions from <file> instead of calling git-rev-list" msgstr "Benutzt Commits von <Datei> anstatt \"git-rev-list\" aufzurufen" -#: builtin/blame.c:2259 +#: builtin/blame.c:2518 msgid "Use <file>'s contents as the final image" msgstr "Benutzt Inhalte der <Datei>en als entgültiges Abbild" -#: builtin/blame.c:2260 builtin/blame.c:2261 +#: builtin/blame.c:2519 builtin/blame.c:2520 msgid "score" msgstr "Bewertung" -#: builtin/blame.c:2260 +#: builtin/blame.c:2519 msgid "Find line copies within and across files" msgstr "Findet kopierte Zeilen innerhalb oder zwischen Dateien" -#: builtin/blame.c:2261 +#: builtin/blame.c:2520 msgid "Find line movements within and across files" msgstr "Findet verschobene Zeilen innerhalb oder zwischen Dateien" -#: builtin/blame.c:2262 +#: builtin/blame.c:2521 msgid "n,m" msgstr "n,m" -#: builtin/blame.c:2262 +#: builtin/blame.c:2521 msgid "Process only line range n,m, counting from 1" msgstr "Verarbeitet nur Zeilen im Bereich n,m, gezählt von 1" +#. TRANSLATORS: This string is used to tell us the maximum +#. display width for a relative timestamp in "git blame" +#. output. For C locale, "4 years, 11 months ago", which +#. takes 22 places, is the longest among various forms of +#. relative timestamps, but your language may need more or +#. fewer display columns. +#: builtin/blame.c:2599 +msgid "4 years, 11 months ago" +msgstr "vor 4 Jahren, und 11 Monaten" + #: builtin/branch.c:24 msgid "git branch [options] [-r | -a] [--merged | --no-merged]" msgstr "git branch [Optionen] [-r | -a] [--merged | --no-merged]" @@ -2961,9 +2982,9 @@ msgid "act on remote-tracking branches" msgstr "wirkt auf Remote-Tracking-Branches" #: builtin/branch.c:817 builtin/branch.c:823 builtin/branch.c:844 -#: builtin/branch.c:850 builtin/commit.c:1494 builtin/commit.c:1495 -#: builtin/commit.c:1496 builtin/commit.c:1497 builtin/tag.c:527 -#: builtin/tag.c:533 +#: builtin/branch.c:850 builtin/commit.c:1573 builtin/commit.c:1574 +#: builtin/commit.c:1575 builtin/commit.c:1576 builtin/tag.c:615 +#: builtin/tag.c:621 msgid "commit" msgstr "Commit" @@ -3028,7 +3049,7 @@ msgstr "listet Branches in Spalten auf" msgid "Failed to resolve HEAD as a valid ref." msgstr "Konnte HEAD nicht als gültige Referenz auflösen." -#: builtin/branch.c:872 builtin/clone.c:635 +#: builtin/branch.c:872 builtin/clone.c:636 msgid "HEAD not found below refs/heads!" msgstr "HEAD wurde nicht unter \"refs/heads\" gefunden!" @@ -3064,7 +3085,7 @@ msgstr "zu viele Branches für eine Umbenennen-Operation angegeben" #: builtin/branch.c:952 msgid "too many branches to set new upstream" -msgstr "zu viele Branches angegeben um Upstream-Branch zu setzen" +msgstr "zu viele Branches angegeben, um Upstream-Branch zu setzen" #: builtin/branch.c:956 #, c-format @@ -3087,7 +3108,7 @@ msgstr "Branch '%s' existiert nicht" #: builtin/branch.c:975 msgid "too many branches to unset upstream" msgstr "" -"zu viele Branches angegeben um Konfiguration zu Upstream-Branch zu entfernen" +"zu viele Branches angegeben, um Konfiguration zu Upstream-Branch zu entfernen" #: builtin/branch.c:979 msgid "could not unset upstream of HEAD when it does not point to any branch." @@ -3221,7 +3242,7 @@ msgstr "liest Dateinamen von der Standard-Eingabe" msgid "terminate input and output records by a NUL character" msgstr "schließt Einträge von Ein- und Ausgabe mit NUL-Zeichen ab" -#: builtin/check-ignore.c:18 builtin/checkout.c:1089 builtin/gc.c:271 +#: builtin/check-ignore.c:18 builtin/checkout.c:1083 builtin/gc.c:285 msgid "suppress progress reporting" msgstr "unterdrückt Fortschrittsanzeige" @@ -3279,46 +3300,46 @@ msgstr "keine Kontakte angegeben" msgid "git checkout-index [options] [--] [<file>...]" msgstr "git checkout-index [Optionen] [--] [<Datei>...]" -#: builtin/checkout-index.c:187 +#: builtin/checkout-index.c:188 msgid "check out all files in the index" msgstr "checkt alle Dateien in der Staging-Area aus" -#: builtin/checkout-index.c:188 +#: builtin/checkout-index.c:189 msgid "force overwrite of existing files" msgstr "erzwingt das Überschreiben bereits existierender Dateien" -#: builtin/checkout-index.c:190 +#: builtin/checkout-index.c:191 msgid "no warning for existing files and files not in index" msgstr "" "keine Warnung für existierende Dateien, und Dateien, die sich nicht in der " "Staging-Area befinden" -#: builtin/checkout-index.c:192 +#: builtin/checkout-index.c:193 msgid "don't checkout new files" msgstr "checkt keine neuen Dateien aus" -#: builtin/checkout-index.c:194 +#: builtin/checkout-index.c:195 msgid "update stat information in the index file" msgstr "aktualisiert Dateiinformationen in der Staging-Area-Datei" -#: builtin/checkout-index.c:200 +#: builtin/checkout-index.c:201 msgid "read list of paths from the standard input" msgstr "liest eine Liste von Pfaden von der Standard-Eingabe" -#: builtin/checkout-index.c:202 +#: builtin/checkout-index.c:203 msgid "write the content to temporary files" msgstr "schreibt den Inhalt in temporäre Dateien" -#: builtin/checkout-index.c:203 builtin/column.c:30 +#: builtin/checkout-index.c:204 builtin/column.c:30 msgid "string" msgstr "Zeichenkette" -#: builtin/checkout-index.c:204 +#: builtin/checkout-index.c:205 msgid "when creating files, prepend <string>" msgstr "" "wenn Dateien erzeugt werden, stelle <Zeichenkette> dem Dateinamen voran" -#: builtin/checkout-index.c:207 +#: builtin/checkout-index.c:208 msgid "copy out the files from named stage" msgstr "kopiert Dateien von dem benannten Stand" @@ -3360,76 +3381,76 @@ msgstr "Pfad '%s': kann nicht zusammenführen" msgid "Unable to add merge result for '%s'" msgstr "Konnte Merge-Ergebnis von '%s' nicht hinzufügen." -#: builtin/checkout.c:232 builtin/checkout.c:235 builtin/checkout.c:238 -#: builtin/checkout.c:241 +#: builtin/checkout.c:231 builtin/checkout.c:234 builtin/checkout.c:237 +#: builtin/checkout.c:240 #, c-format msgid "'%s' cannot be used with updating paths" msgstr "'%s' kann nicht mit Pfaden verwendet werden" -#: builtin/checkout.c:244 builtin/checkout.c:247 +#: builtin/checkout.c:243 builtin/checkout.c:246 #, c-format msgid "'%s' cannot be used with %s" msgstr "'%s' kann nicht mit '%s' verwendet werden" -#: builtin/checkout.c:250 +#: builtin/checkout.c:249 #, c-format msgid "Cannot update paths and switch to branch '%s' at the same time." msgstr "" "Kann nicht gleichzeitig Pfade aktualisieren und zu Branch '%s' wechseln" -#: builtin/checkout.c:261 builtin/checkout.c:450 +#: builtin/checkout.c:260 builtin/checkout.c:449 msgid "corrupt index file" msgstr "beschädigte Staging-Area-Datei" -#: builtin/checkout.c:321 builtin/checkout.c:328 +#: builtin/checkout.c:320 builtin/checkout.c:327 #, c-format msgid "path '%s' is unmerged" msgstr "Pfad '%s' ist nicht zusammengeführt." -#: builtin/checkout.c:472 +#: builtin/checkout.c:471 msgid "you need to resolve your current index first" msgstr "Sie müssen zuerst Ihre aktuelle Staging-Area auflösen." -#: builtin/checkout.c:593 +#: builtin/checkout.c:591 #, c-format msgid "Can not do reflog for '%s'\n" msgstr "Konnte \"reflog\" für '%s' nicht durchführen\n" -#: builtin/checkout.c:631 +#: builtin/checkout.c:629 msgid "HEAD is now at" msgstr "HEAD ist jetzt bei" -#: builtin/checkout.c:638 +#: builtin/checkout.c:636 #, c-format msgid "Reset branch '%s'\n" msgstr "Setze Branch '%s' neu\n" -#: builtin/checkout.c:641 +#: builtin/checkout.c:639 #, c-format msgid "Already on '%s'\n" msgstr "Bereits auf '%s'\n" -#: builtin/checkout.c:645 +#: builtin/checkout.c:643 #, c-format msgid "Switched to and reset branch '%s'\n" msgstr "Zu umgesetztem Branch '%s' gewechselt\n" -#: builtin/checkout.c:647 builtin/checkout.c:1032 +#: builtin/checkout.c:645 builtin/checkout.c:1026 #, c-format msgid "Switched to a new branch '%s'\n" msgstr "Zu neuem Branch '%s' gewechselt\n" -#: builtin/checkout.c:649 +#: builtin/checkout.c:647 #, c-format msgid "Switched to branch '%s'\n" msgstr "Zu Branch '%s' gewechselt\n" -#: builtin/checkout.c:705 +#: builtin/checkout.c:699 #, c-format msgid " ... and %d more.\n" msgstr " ... und %d weitere.\n" -#: builtin/checkout.c:711 +#: builtin/checkout.c:705 #, c-format msgid "" "Warning: you are leaving %d commit behind, not connected to\n" @@ -3452,7 +3473,7 @@ msgstr[1] "" "\n" "%s\n" -#: builtin/checkout.c:729 +#: builtin/checkout.c:723 #, c-format msgid "" "If you want to keep them by creating a new branch, this may be a good time\n" @@ -3467,139 +3488,139 @@ msgstr "" " git branch neuer_branch_name %s\n" "\n" -#: builtin/checkout.c:759 +#: builtin/checkout.c:753 msgid "internal error in revision walk" msgstr "interner Fehler im Revisionsgang" -#: builtin/checkout.c:763 +#: builtin/checkout.c:757 msgid "Previous HEAD position was" msgstr "Vorherige Position von HEAD war" -#: builtin/checkout.c:790 builtin/checkout.c:1027 +#: builtin/checkout.c:784 builtin/checkout.c:1021 msgid "You are on a branch yet to be born" msgstr "Sie sind auf einem Branch, der noch geboren wird" -#: builtin/checkout.c:934 +#: builtin/checkout.c:928 #, c-format msgid "only one reference expected, %d given." msgstr "nur eine Referenz erwartet, %d gegeben." -#: builtin/checkout.c:973 +#: builtin/checkout.c:967 #, c-format msgid "invalid reference: %s" msgstr "Ungültige Referenz: %s" -#: builtin/checkout.c:1002 +#: builtin/checkout.c:996 #, c-format msgid "reference is not a tree: %s" msgstr "Referenz ist kein \"Tree\"-Objekt: %s" -#: builtin/checkout.c:1041 +#: builtin/checkout.c:1035 msgid "paths cannot be used with switching branches" msgstr "Pfade können nicht beim Wechseln von Branches verwendet werden" -#: builtin/checkout.c:1044 builtin/checkout.c:1048 +#: builtin/checkout.c:1038 builtin/checkout.c:1042 #, c-format msgid "'%s' cannot be used with switching branches" msgstr "'%s' kann nicht beim Wechseln von Branches verwendet werden" -#: builtin/checkout.c:1052 builtin/checkout.c:1055 builtin/checkout.c:1060 -#: builtin/checkout.c:1063 +#: builtin/checkout.c:1046 builtin/checkout.c:1049 builtin/checkout.c:1054 +#: builtin/checkout.c:1057 #, c-format msgid "'%s' cannot be used with '%s'" msgstr "'%s' kann nicht mit '%s' verwendet werden" -#: builtin/checkout.c:1068 +#: builtin/checkout.c:1062 #, c-format msgid "Cannot switch branch to a non-commit '%s'" msgstr "Kann Branch nicht zu Nicht-Commit '%s' wechseln" -#: builtin/checkout.c:1090 builtin/checkout.c:1092 builtin/clone.c:88 +#: builtin/checkout.c:1084 builtin/checkout.c:1086 builtin/clone.c:88 #: builtin/remote.c:159 builtin/remote.c:161 msgid "branch" msgstr "Branch" -#: builtin/checkout.c:1091 +#: builtin/checkout.c:1085 msgid "create and checkout a new branch" msgstr "erzeugt und checkt einen neuen Branch aus" -#: builtin/checkout.c:1093 +#: builtin/checkout.c:1087 msgid "create/reset and checkout a branch" msgstr "erzeugt/setzt um und checkt einen Branch aus" -#: builtin/checkout.c:1094 +#: builtin/checkout.c:1088 msgid "create reflog for new branch" msgstr "erzeugt das Reflog für den neuen Branch" -#: builtin/checkout.c:1095 +#: builtin/checkout.c:1089 msgid "detach the HEAD at named commit" msgstr "setzt HEAD zu benanntem Commit" -#: builtin/checkout.c:1096 +#: builtin/checkout.c:1090 msgid "set upstream info for new branch" msgstr "setzt Informationen zum Upstream-Branch für den neuen Branch" -#: builtin/checkout.c:1098 +#: builtin/checkout.c:1092 msgid "new-branch" msgstr "neuer Branch" -#: builtin/checkout.c:1098 +#: builtin/checkout.c:1092 msgid "new unparented branch" msgstr "neuer Branch ohne Eltern-Commit" -#: builtin/checkout.c:1099 +#: builtin/checkout.c:1093 msgid "checkout our version for unmerged files" msgstr "checkt unsere Variante für nicht zusammengeführte Dateien aus" -#: builtin/checkout.c:1101 +#: builtin/checkout.c:1095 msgid "checkout their version for unmerged files" msgstr "checkt ihre Variante für nicht zusammengeführte Dateien aus" -#: builtin/checkout.c:1103 +#: builtin/checkout.c:1097 msgid "force checkout (throw away local modifications)" msgstr "erzwingt Auschecken (verwirft lokale Änderungen)" -#: builtin/checkout.c:1104 +#: builtin/checkout.c:1098 msgid "perform a 3-way merge with the new branch" msgstr "führt einen 3-Wege-Merge mit dem neuen Branch aus" -#: builtin/checkout.c:1105 builtin/merge.c:225 +#: builtin/checkout.c:1099 builtin/merge.c:225 msgid "update ignored files (default)" msgstr "aktualisiert ignorierte Dateien (Standard)" -#: builtin/checkout.c:1106 builtin/log.c:1228 parse-options.h:245 +#: builtin/checkout.c:1100 builtin/log.c:1236 parse-options.h:245 msgid "style" msgstr "Stil" -#: builtin/checkout.c:1107 +#: builtin/checkout.c:1101 msgid "conflict style (merge or diff3)" msgstr "Konfliktstil (merge oder diff3)" -#: builtin/checkout.c:1110 +#: builtin/checkout.c:1104 msgid "do not limit pathspecs to sparse entries only" msgstr "Pfadspezifikationen ignorieren Einstellungen zum partiellen Auschecken" -#: builtin/checkout.c:1112 +#: builtin/checkout.c:1106 msgid "second guess 'git checkout no-such-branch'" msgstr "second guess 'git checkout no-such-branch'" -#: builtin/checkout.c:1135 +#: builtin/checkout.c:1129 msgid "-b, -B and --orphan are mutually exclusive" msgstr "Die Optionen -b, -B und --orphan schließen sich gegenseitig aus." -#: builtin/checkout.c:1152 +#: builtin/checkout.c:1146 msgid "--track needs a branch name" msgstr "Bei der Option --track muss ein Branchname angegeben werden." -#: builtin/checkout.c:1159 +#: builtin/checkout.c:1153 msgid "Missing branch name; try -b" msgstr "Vermisse Branchnamen; versuchen Sie -b" -#: builtin/checkout.c:1196 +#: builtin/checkout.c:1190 msgid "invalid path specification" msgstr "ungültige Pfadspezifikation" -#: builtin/checkout.c:1203 +#: builtin/checkout.c:1197 #, c-format msgid "" "Cannot update paths and switch to branch '%s' at the same time.\n" @@ -3609,12 +3630,12 @@ msgstr "" "Haben Sie beabsichtigt '%s' auszuchecken, welcher nicht als Commit aufgelöst " "werden kann?" -#: builtin/checkout.c:1208 +#: builtin/checkout.c:1202 #, c-format msgid "git checkout: --detach does not take a path argument '%s'" msgstr "git checkout: --detach nimmt kein Pfad-Argument '%s'" -#: builtin/checkout.c:1212 +#: builtin/checkout.c:1206 msgid "" "git checkout: --ours/--theirs, --force and --merge are incompatible when\n" "checking out of the index." @@ -3690,30 +3711,30 @@ msgstr "" msgid "Huh (%s)?" msgstr "Wie bitte (%s)?" -#: builtin/clean.c:660 +#: builtin/clean.c:659 #, c-format msgid "Input ignore patterns>> " msgstr "Ignorier-Muster eingeben>> " -#: builtin/clean.c:697 +#: builtin/clean.c:696 #, c-format msgid "WARNING: Cannot find items matched by: %s" msgstr "WARNUNG: Kann keine Einträge finden die Muster entsprechen: %s" -#: builtin/clean.c:718 +#: builtin/clean.c:717 msgid "Select items to delete" msgstr "Wählen Sie Einträge zum Löschen" -#: builtin/clean.c:758 +#: builtin/clean.c:757 #, c-format msgid "remove %s? " msgstr "'%s' löschen? " -#: builtin/clean.c:783 +#: builtin/clean.c:782 msgid "Bye." msgstr "Tschüss." -#: builtin/clean.c:791 +#: builtin/clean.c:790 msgid "" "clean - start cleaning\n" "filter by pattern - exclude items from deletion\n" @@ -3731,62 +3752,62 @@ msgstr "" "help - diese Meldung anzeigen\n" "? - Hilfe zur Auswahl mittels Eingabe anzeigen" -#: builtin/clean.c:818 +#: builtin/clean.c:817 msgid "*** Commands ***" msgstr "*** Kommandos ***" -#: builtin/clean.c:819 +#: builtin/clean.c:818 msgid "What now" msgstr "Was nun" -#: builtin/clean.c:827 +#: builtin/clean.c:826 msgid "Would remove the following item:" msgid_plural "Would remove the following items:" msgstr[0] "Würde das folgende Element entfernen:" msgstr[1] "Würde die folgenden Elemente entfernen:" -#: builtin/clean.c:844 +#: builtin/clean.c:843 msgid "No more files to clean, exiting." msgstr "Keine Dateien mehr zum Löschen, beende." -#: builtin/clean.c:875 +#: builtin/clean.c:874 msgid "do not print names of files removed" msgstr "gibt keine Namen von gelöschten Dateien aus" -#: builtin/clean.c:877 +#: builtin/clean.c:876 msgid "force" msgstr "erzwingt Aktion" -#: builtin/clean.c:878 +#: builtin/clean.c:877 msgid "interactive cleaning" msgstr "interaktives Clean" -#: builtin/clean.c:880 +#: builtin/clean.c:879 msgid "remove whole directories" msgstr "löscht ganze Verzeichnisse" -#: builtin/clean.c:881 builtin/describe.c:415 builtin/grep.c:716 -#: builtin/ls-files.c:486 builtin/name-rev.c:314 builtin/show-ref.c:185 +#: builtin/clean.c:880 builtin/describe.c:406 builtin/grep.c:714 +#: builtin/ls-files.c:486 builtin/name-rev.c:311 builtin/show-ref.c:185 msgid "pattern" msgstr "Muster" -#: builtin/clean.c:882 +#: builtin/clean.c:881 msgid "add <pattern> to ignore rules" msgstr "fügt <Muster> zu den Regeln für ignorierte Pfade hinzu" -#: builtin/clean.c:883 +#: builtin/clean.c:882 msgid "remove ignored files, too" msgstr "löscht auch ignorierte Dateien" -#: builtin/clean.c:885 +#: builtin/clean.c:884 msgid "remove only ignored files" msgstr "löscht nur ignorierte Dateien" -#: builtin/clean.c:903 +#: builtin/clean.c:902 msgid "-x and -X cannot be used together" msgstr "Die Optionen -x und -X können nicht gemeinsam verwendet werden." -#: builtin/clean.c:907 +#: builtin/clean.c:906 msgid "" "clean.requireForce set to true and neither -i, -n, nor -f given; refusing to " "clean" @@ -3794,7 +3815,7 @@ msgstr "" "clean.requireForce auf \"true\" gesetzt und weder -i, -n noch -f gegeben; " "\"clean\" verweigert" -#: builtin/clean.c:910 +#: builtin/clean.c:909 msgid "" "clean.requireForce defaults to true and neither -i, -n, nor -f given; " "refusing to clean" @@ -3806,8 +3827,8 @@ msgstr "" msgid "git clone [options] [--] <repo> [<dir>]" msgstr "git clone [Optionen] [--] <Repository> [<Verzeichnis>]" -#: builtin/clone.c:64 builtin/fetch.c:97 builtin/merge.c:222 -#: builtin/push.c:504 +#: builtin/clone.c:64 builtin/fetch.c:112 builtin/merge.c:222 +#: builtin/push.c:503 msgid "force progress reporting" msgstr "erzwingt Fortschrittsanzeige" @@ -3867,7 +3888,7 @@ msgstr "checkt <Branch> aus, anstatt HEAD des Remote-Repositories" msgid "path to git-upload-pack on the remote" msgstr "Pfad zu \"git-upload-pack\" auf der Gegenseite" -#: builtin/clone.c:92 builtin/fetch.c:98 builtin/grep.c:661 +#: builtin/clone.c:92 builtin/fetch.c:113 builtin/grep.c:659 msgid "depth" msgstr "Tiefe" @@ -3973,100 +3994,100 @@ msgstr "Prüfe Konnektivität... " msgid "remote did not send all necessary objects" msgstr "Remote-Repository hat nicht alle erforderlichen Objekte gesendet." -#: builtin/clone.c:626 +#: builtin/clone.c:627 msgid "remote HEAD refers to nonexistent ref, unable to checkout.\n" msgstr "" "Externer HEAD bezieht sich auf eine nicht existierende Referenz und kann " "nicht ausgecheckt werden.\n" -#: builtin/clone.c:657 +#: builtin/clone.c:658 msgid "unable to checkout working tree" msgstr "Arbeitsverzeichnis konnte nicht ausgecheckt werden" -#: builtin/clone.c:765 +#: builtin/clone.c:768 msgid "Too many arguments." msgstr "Zu viele Argumente." -#: builtin/clone.c:769 +#: builtin/clone.c:772 msgid "You must specify a repository to clone." msgstr "Sie müssen ein Repository zum Klonen angeben." -#: builtin/clone.c:780 +#: builtin/clone.c:783 #, c-format msgid "--bare and --origin %s options are incompatible." msgstr "Die Optionen --bare und --origin %s sind inkompatibel." -#: builtin/clone.c:783 +#: builtin/clone.c:786 msgid "--bare and --separate-git-dir are incompatible." msgstr "Die Optionen --bare und --separate-git-dir sind inkompatibel." -#: builtin/clone.c:796 +#: builtin/clone.c:799 #, c-format msgid "repository '%s' does not exist" msgstr "Repository '%s' existiert nicht." -#: builtin/clone.c:802 -msgid "--depth is ignored in local clones; use file:// instead." -msgstr "" -"Die Option --depth wird in lokalen Klonen ignoriert; benutzen Sie " -"stattdessen file://" - -#: builtin/clone.c:805 -msgid "source repository is shallow, ignoring --local" -msgstr "" -"Quelle ist ein Repository mit unvollständiger Historie (shallow),ignoriere --" -"local" - -#: builtin/clone.c:810 -msgid "--local is ignored" -msgstr "--local wird ignoriert" - -#: builtin/clone.c:814 builtin/fetch.c:1119 +#: builtin/clone.c:805 builtin/fetch.c:1143 #, c-format msgid "depth %s is not a positive number" msgstr "Tiefe %s ist keine positive Zahl" -#: builtin/clone.c:824 +#: builtin/clone.c:815 #, c-format msgid "destination path '%s' already exists and is not an empty directory." msgstr "Zielpfad '%s' existiert bereits und ist kein leeres Verzeichnis." -#: builtin/clone.c:834 +#: builtin/clone.c:825 #, c-format msgid "working tree '%s' already exists." msgstr "Arbeitsverzeichnis '%s' existiert bereits." -#: builtin/clone.c:847 builtin/clone.c:859 +#: builtin/clone.c:838 builtin/clone.c:850 #, c-format msgid "could not create leading directories of '%s'" msgstr "Konnte führende Verzeichnisse von '%s' nicht erstellen." -#: builtin/clone.c:850 +#: builtin/clone.c:841 #, c-format msgid "could not create work tree dir '%s'." msgstr "Konnte Arbeitsverzeichnis '%s' nicht erstellen." -#: builtin/clone.c:869 +#: builtin/clone.c:860 #, c-format msgid "Cloning into bare repository '%s'...\n" msgstr "Klone in Bare-Repository '%s'...\n" -#: builtin/clone.c:871 +#: builtin/clone.c:862 #, c-format msgid "Cloning into '%s'...\n" msgstr "Klone nach '%s'...\n" +#: builtin/clone.c:898 +msgid "--depth is ignored in local clones; use file:// instead." +msgstr "" +"Die Option --depth wird in lokalen Klonen ignoriert; benutzen Sie " +"stattdessen file://" + +#: builtin/clone.c:901 +msgid "source repository is shallow, ignoring --local" +msgstr "" +"Quelle ist ein Repository mit unvollständiger Historie (shallow),ignoriere --" +"local" + #: builtin/clone.c:906 +msgid "--local is ignored" +msgstr "--local wird ignoriert" + +#: builtin/clone.c:910 #, c-format msgid "Don't know how to clone %s" msgstr "Weiß nicht wie %s zu klonen ist." -#: builtin/clone.c:957 builtin/clone.c:965 +#: builtin/clone.c:961 builtin/clone.c:969 #, c-format msgid "Remote branch %s not found in upstream %s" msgstr "Remote-Branch %s nicht im Upstream-Repository %s gefunden" -#: builtin/clone.c:968 +#: builtin/clone.c:972 msgid "You appear to have cloned an empty repository." msgstr "Sie scheinen ein leeres Repository geklont zu haben." @@ -4185,90 +4206,99 @@ msgstr "" msgid "failed to unpack HEAD tree object" msgstr "Fehler beim Entpacken des \"Tree\"-Objektes von HEAD." -#: builtin/commit.c:330 +#: builtin/commit.c:328 msgid "unable to create temporary index" msgstr "Konnte temporäre Staging-Area nicht erstellen." -#: builtin/commit.c:336 +#: builtin/commit.c:334 msgid "interactive add failed" msgstr "interaktives Hinzufügen fehlgeschlagen" -#: builtin/commit.c:369 builtin/commit.c:390 builtin/commit.c:440 +#: builtin/commit.c:366 builtin/commit.c:387 builtin/commit.c:435 msgid "unable to write new_index file" msgstr "Konnte new_index Datei nicht schreiben" -#: builtin/commit.c:421 +#: builtin/commit.c:418 msgid "cannot do a partial commit during a merge." msgstr "Kann keinen Teil-Commit durchführen, während ein Merge im Gange ist." -#: builtin/commit.c:423 +#: builtin/commit.c:420 msgid "cannot do a partial commit during a cherry-pick." msgstr "" "Kann keinen Teil-Commit durchführen, während \"cherry-pick\" im Gange ist." -#: builtin/commit.c:433 +#: builtin/commit.c:429 msgid "cannot read the index" msgstr "Kann Staging-Area nicht lesen" -#: builtin/commit.c:453 +#: builtin/commit.c:447 msgid "unable to write temporary index file" msgstr "Konnte temporäre Staging-Area-Datei nicht schreiben." -#: builtin/commit.c:544 builtin/commit.c:550 +#: builtin/commit.c:557 builtin/commit.c:563 #, c-format msgid "invalid commit: %s" msgstr "Ungültiger Commit: %s" -#: builtin/commit.c:572 +#: builtin/commit.c:585 msgid "malformed --author parameter" msgstr "Fehlerhafter --author Parameter" #: builtin/commit.c:592 #, c-format +msgid "invalid date format: %s" +msgstr "Ungültiges Datumsformat: %s" + +#: builtin/commit.c:609 +#, c-format msgid "Malformed ident string: '%s'" msgstr "Fehlerhafter Ident-String: '%s'" -#: builtin/commit.c:629 builtin/commit.c:663 builtin/commit.c:1014 +#: builtin/commit.c:642 +msgid "" +"unable to select a comment character that is not used\n" +"in the current commit message" +msgstr "" +"Konnte kein Kommentar-Zeichen auswählen, das nicht in\n" +"der aktuellen Commit-Beschreibung verwendet wird." + +#: builtin/commit.c:679 builtin/commit.c:712 builtin/commit.c:1086 #, c-format msgid "could not lookup commit %s" msgstr "Konnte Commit %s nicht nachschlagen" -#: builtin/commit.c:641 builtin/shortlog.c:273 +#: builtin/commit.c:691 builtin/shortlog.c:273 #, c-format msgid "(reading log message from standard input)\n" msgstr "(lese Log-Nachricht von Standard-Eingabe)\n" -#: builtin/commit.c:643 +#: builtin/commit.c:693 msgid "could not read log from standard input" msgstr "Konnte Log nicht von Standard-Eingabe lesen." -#: builtin/commit.c:647 +#: builtin/commit.c:697 #, c-format msgid "could not read log file '%s'" msgstr "Konnte Log-Datei '%s' nicht lesen" -#: builtin/commit.c:654 -msgid "commit has empty message" -msgstr "Commit hat eine leere Beschreibung" - -#: builtin/commit.c:670 +#: builtin/commit.c:719 msgid "could not read MERGE_MSG" msgstr "Konnte MERGE_MSG nicht lesen" -#: builtin/commit.c:674 +#: builtin/commit.c:723 msgid "could not read SQUASH_MSG" msgstr "Konnte SQUASH_MSG nicht lesen" -#: builtin/commit.c:678 +#: builtin/commit.c:727 #, c-format msgid "could not read '%s'" msgstr "Konnte '%s' nicht lesen" -#: builtin/commit.c:749 +#: builtin/commit.c:798 msgid "could not write commit template" msgstr "Konnte Commit-Vorlage nicht schreiben" -#: builtin/commit.c:764 +#: builtin/commit.c:816 #, c-format msgid "" "\n" @@ -4283,7 +4313,7 @@ msgstr "" "\t%s\n" "und versuchen Sie es erneut.\n" -#: builtin/commit.c:769 +#: builtin/commit.c:821 #, c-format msgid "" "\n" @@ -4298,7 +4328,7 @@ msgstr "" "\t%s\n" "und versuchen Sie es erneut.\n" -#: builtin/commit.c:782 +#: builtin/commit.c:834 #, c-format msgid "" "Please enter the commit message for your changes. Lines starting\n" @@ -4308,7 +4338,7 @@ msgstr "" "die mit '%c' beginnen, werden ignoriert, und eine leere Beschreibung\n" "bricht den Commit ab.\n" -#: builtin/commit.c:789 +#: builtin/commit.c:841 #, c-format msgid "" "Please enter the commit message for your changes. Lines starting\n" @@ -4321,150 +4351,155 @@ msgstr "" "entfernen.\n" "Eine leere Beschreibung bricht den Commit ab.\n" -#: builtin/commit.c:802 +#: builtin/commit.c:855 #, c-format -msgid "%sAuthor: %s" -msgstr "%sAutor: %s" +msgid "%sAuthor: %.*s <%.*s>" +msgstr "%sAutor: %.*s <%.*s>" -#: builtin/commit.c:809 +#: builtin/commit.c:863 #, c-format -msgid "%sCommitter: %s" -msgstr "%sCommit-Ersteller: %s" +msgid "%sDate: %s" +msgstr "%sDatum: %s" -#: builtin/commit.c:829 +#: builtin/commit.c:870 +#, c-format +msgid "%sCommitter: %.*s <%.*s>" +msgstr "%sCommit-Ersteller: %.*s <%.*s>" + +#: builtin/commit.c:888 msgid "Cannot read index" msgstr "Kann Staging-Area nicht lesen" -#: builtin/commit.c:872 +#: builtin/commit.c:945 msgid "Error building trees" msgstr "Fehler beim Erzeugen der \"Tree\"-Objekte" -#: builtin/commit.c:887 builtin/tag.c:391 +#: builtin/commit.c:960 builtin/tag.c:495 #, c-format msgid "Please supply the message using either -m or -F option.\n" msgstr "" "Bitte liefern Sie eine Beschreibung entweder mit der Option -m oder -F.\n" -#: builtin/commit.c:989 +#: builtin/commit.c:1061 #, c-format msgid "No existing author found with '%s'" msgstr "Kein existierender Autor mit '%s' gefunden." -#: builtin/commit.c:1004 builtin/commit.c:1244 +#: builtin/commit.c:1076 builtin/commit.c:1316 #, c-format msgid "Invalid untracked files mode '%s'" msgstr "Ungültiger Modus '%s' für unbeobachtete Dateien" -#: builtin/commit.c:1041 +#: builtin/commit.c:1113 msgid "--long and -z are incompatible" msgstr "Die Optionen --long und -z sind inkompatibel." -#: builtin/commit.c:1071 +#: builtin/commit.c:1143 msgid "Using both --reset-author and --author does not make sense" msgstr "" "Die Optionen --reset-author und --author können nicht gemeinsam verwendet " "werden." -#: builtin/commit.c:1080 +#: builtin/commit.c:1152 msgid "You have nothing to amend." msgstr "Sie haben nichts für \"--amend\"." -#: builtin/commit.c:1083 +#: builtin/commit.c:1155 msgid "You are in the middle of a merge -- cannot amend." msgstr "Ein Merge ist im Gange -- kann \"--amend\" nicht ausführen." -#: builtin/commit.c:1085 +#: builtin/commit.c:1157 msgid "You are in the middle of a cherry-pick -- cannot amend." msgstr "\"cherry-pick\" ist im Gange -- kann \"--amend\" nicht ausführen." -#: builtin/commit.c:1088 +#: builtin/commit.c:1160 msgid "Options --squash and --fixup cannot be used together" msgstr "" "Die Optionen --squash und --fixup können nicht gemeinsam verwendet werden." -#: builtin/commit.c:1098 +#: builtin/commit.c:1170 msgid "Only one of -c/-C/-F/--fixup can be used." msgstr "Es kann nur eine Option von -c/-C/-F/--fixup verwendet werden." -#: builtin/commit.c:1100 +#: builtin/commit.c:1172 msgid "Option -m cannot be combined with -c/-C/-F/--fixup." msgstr "Die Option -m kann nicht mit -c/-C/-F/--fixup kombiniert werden." -#: builtin/commit.c:1108 +#: builtin/commit.c:1180 msgid "--reset-author can be used only with -C, -c or --amend." msgstr "" "Die Option --reset--author kann nur mit -C, -c oder --amend verwendet werden." -#: builtin/commit.c:1125 +#: builtin/commit.c:1197 msgid "Only one of --include/--only/--all/--interactive/--patch can be used." msgstr "" "Es kann nur eine Option von --include/--only/--all/--interactive/--patch " "verwendet werden." -#: builtin/commit.c:1127 +#: builtin/commit.c:1199 msgid "No paths with --include/--only does not make sense." msgstr "" "Die Optionen --include und --only können nur mit der Angabe von Pfaden " "verwendet werden." -#: builtin/commit.c:1129 +#: builtin/commit.c:1201 msgid "Clever... amending the last one with dirty index." msgstr "" "Klug... den letzten Commit mit einer geänderten Staging-Area nachbessern." -#: builtin/commit.c:1131 +#: builtin/commit.c:1203 msgid "Explicit paths specified without -i or -o; assuming --only paths..." msgstr "Explizite Pfade ohne -i oder -o angegeben; nehme --only an" -#: builtin/commit.c:1143 builtin/tag.c:639 +#: builtin/commit.c:1215 builtin/tag.c:727 #, c-format msgid "Invalid cleanup mode %s" msgstr "Ungültiger \"cleanup\" Modus %s" -#: builtin/commit.c:1148 +#: builtin/commit.c:1220 msgid "Paths with -a does not make sense." msgstr "Die Option -a kann nur mit der Angabe von Pfaden verwendet werden." -#: builtin/commit.c:1258 builtin/commit.c:1516 +#: builtin/commit.c:1330 builtin/commit.c:1595 msgid "show status concisely" msgstr "zeigt Status im Kurzformat" -#: builtin/commit.c:1260 builtin/commit.c:1518 +#: builtin/commit.c:1332 builtin/commit.c:1597 msgid "show branch information" msgstr "zeigt Branchinformationen" -#: builtin/commit.c:1262 builtin/commit.c:1520 builtin/push.c:490 +#: builtin/commit.c:1334 builtin/commit.c:1599 builtin/push.c:489 msgid "machine-readable output" msgstr "maschinenlesbare Ausgabe" -#: builtin/commit.c:1265 builtin/commit.c:1522 +#: builtin/commit.c:1337 builtin/commit.c:1601 msgid "show status in long format (default)" msgstr "zeigt Status im Langformat (Standard)" -#: builtin/commit.c:1268 builtin/commit.c:1525 +#: builtin/commit.c:1340 builtin/commit.c:1604 msgid "terminate entries with NUL" msgstr "schließt Einträge mit NUL-Zeichen ab" -#: builtin/commit.c:1270 builtin/commit.c:1528 builtin/fast-export.c:674 -#: builtin/fast-export.c:677 builtin/tag.c:514 +#: builtin/commit.c:1342 builtin/commit.c:1607 builtin/fast-export.c:703 +#: builtin/fast-export.c:706 builtin/tag.c:602 msgid "mode" msgstr "Modus" -#: builtin/commit.c:1271 builtin/commit.c:1528 +#: builtin/commit.c:1343 builtin/commit.c:1607 msgid "show untracked files, optional modes: all, normal, no. (Default: all)" msgstr "" "zeigt nicht beobachtete Dateien, optionale Modi: all, normal, no. (Standard: " "all)" -#: builtin/commit.c:1274 +#: builtin/commit.c:1346 msgid "show ignored files" msgstr "zeigt ignorierte Dateien" -#: builtin/commit.c:1275 parse-options.h:153 +#: builtin/commit.c:1347 parse-options.h:153 msgid "when" msgstr "wann" -#: builtin/commit.c:1276 +#: builtin/commit.c:1348 msgid "" "ignore changes to submodules, optional when: all, dirty, untracked. " "(Default: all)" @@ -4472,219 +4507,219 @@ msgstr "" "ignoriert Änderungen in Submodulen, optional wenn: all, dirty, untracked. " "(Standard: all)" -#: builtin/commit.c:1278 +#: builtin/commit.c:1350 msgid "list untracked files in columns" msgstr "listet unbeobachtete Dateien in Spalten auf" -#: builtin/commit.c:1347 +#: builtin/commit.c:1419 msgid "couldn't look up newly created commit" msgstr "Konnte neu erstellten Commit nicht nachschlagen." -#: builtin/commit.c:1349 +#: builtin/commit.c:1421 msgid "could not parse newly created commit" msgstr "Konnte neulich erstellten Commit nicht analysieren." -#: builtin/commit.c:1390 +#: builtin/commit.c:1469 msgid "detached HEAD" msgstr "losgelöster HEAD" -#: builtin/commit.c:1392 +#: builtin/commit.c:1471 msgid " (root-commit)" msgstr " (Basis-Commit)" -#: builtin/commit.c:1486 +#: builtin/commit.c:1565 msgid "suppress summary after successful commit" msgstr "unterdrückt Zusammenfassung nach erfolgreichem Commit" -#: builtin/commit.c:1487 +#: builtin/commit.c:1566 msgid "show diff in commit message template" msgstr "zeigt Unterschiede in Commit-Beschreibungsvorlage an" -#: builtin/commit.c:1489 +#: builtin/commit.c:1568 msgid "Commit message options" msgstr "Optionen für Commit-Beschreibung" -#: builtin/commit.c:1490 builtin/tag.c:512 +#: builtin/commit.c:1569 builtin/tag.c:600 msgid "read message from file" msgstr "liest Beschreibung von Datei" -#: builtin/commit.c:1491 +#: builtin/commit.c:1570 msgid "author" msgstr "Autor" -#: builtin/commit.c:1491 +#: builtin/commit.c:1570 msgid "override author for commit" msgstr "überschreibt Autor eines Commits" -#: builtin/commit.c:1492 builtin/gc.c:272 +#: builtin/commit.c:1571 builtin/gc.c:286 msgid "date" msgstr "Datum" -#: builtin/commit.c:1492 +#: builtin/commit.c:1571 msgid "override date for commit" msgstr "überschreibt Datum eines Commits" -#: builtin/commit.c:1493 builtin/merge.c:216 builtin/notes.c:409 -#: builtin/notes.c:566 builtin/tag.c:510 +#: builtin/commit.c:1572 builtin/merge.c:216 builtin/notes.c:409 +#: builtin/notes.c:566 builtin/tag.c:598 msgid "message" msgstr "Beschreibung" -#: builtin/commit.c:1493 +#: builtin/commit.c:1572 msgid "commit message" msgstr "Commit-Beschreibung" -#: builtin/commit.c:1494 +#: builtin/commit.c:1573 msgid "reuse and edit message from specified commit" msgstr "verwendet wieder und editiert Beschreibung des angegebenen Commits" -#: builtin/commit.c:1495 +#: builtin/commit.c:1574 msgid "reuse message from specified commit" msgstr "verwendet Beschreibung des angegebenen Commits wieder" -#: builtin/commit.c:1496 +#: builtin/commit.c:1575 msgid "use autosquash formatted message to fixup specified commit" msgstr "" "verwendet eine automatisch zusammengesetzte Beschreibung zum Nachbessern des " "angegebenen Commits" -#: builtin/commit.c:1497 +#: builtin/commit.c:1576 msgid "use autosquash formatted message to squash specified commit" msgstr "" "verwendet eine automatisch zusammengesetzte Beschreibung beim \"squash\" des " "angegebenen Commits" -#: builtin/commit.c:1498 +#: builtin/commit.c:1577 msgid "the commit is authored by me now (used with -C/-c/--amend)" msgstr "Setzt Sie als Autor des Commits (verwendet mit -C/-c/--amend)" -#: builtin/commit.c:1499 builtin/log.c:1180 builtin/revert.c:86 +#: builtin/commit.c:1578 builtin/log.c:1188 builtin/revert.c:86 msgid "add Signed-off-by:" msgstr "fügt 'Signed-off-by:'-Zeile hinzu" -#: builtin/commit.c:1500 +#: builtin/commit.c:1579 msgid "use specified template file" msgstr "verwendet angegebene Vorlagendatei" -#: builtin/commit.c:1501 +#: builtin/commit.c:1580 msgid "force edit of commit" msgstr "erzwingt Bearbeitung des Commits" -#: builtin/commit.c:1502 +#: builtin/commit.c:1581 msgid "default" msgstr "Standard" -#: builtin/commit.c:1502 builtin/tag.c:515 +#: builtin/commit.c:1581 builtin/tag.c:603 msgid "how to strip spaces and #comments from message" msgstr "" "wie Leerzeichen und #Kommentare von der Beschreibung getrennt werden sollen" -#: builtin/commit.c:1503 +#: builtin/commit.c:1582 msgid "include status in commit message template" msgstr "fügt Status in die Commit-Beschreibungsvorlage ein" -#: builtin/commit.c:1504 builtin/merge.c:223 builtin/revert.c:92 -#: builtin/tag.c:516 +#: builtin/commit.c:1583 builtin/merge.c:223 builtin/revert.c:92 +#: builtin/tag.c:604 msgid "key-id" msgstr "GPG-Schlüsselkennung" -#: builtin/commit.c:1505 builtin/merge.c:224 builtin/revert.c:93 +#: builtin/commit.c:1584 builtin/merge.c:224 builtin/revert.c:93 msgid "GPG sign commit" msgstr "signiert Commit mit GPG" -#: builtin/commit.c:1508 +#: builtin/commit.c:1587 msgid "Commit contents options" msgstr "Optionen für Commit-Inhalt" -#: builtin/commit.c:1509 +#: builtin/commit.c:1588 msgid "commit all changed files" msgstr "committet alle geänderten Dateien" -#: builtin/commit.c:1510 +#: builtin/commit.c:1589 msgid "add specified files to index for commit" msgstr "merkt die angegebenen Dateien zusätzlich zum Commit vor" -#: builtin/commit.c:1511 +#: builtin/commit.c:1590 msgid "interactively add files" msgstr "interaktives Hinzufügen von Dateien" -#: builtin/commit.c:1512 +#: builtin/commit.c:1591 msgid "interactively add changes" msgstr "interaktives Hinzufügen von Änderungen" -#: builtin/commit.c:1513 +#: builtin/commit.c:1592 msgid "commit only specified files" msgstr "committet nur die angegebenen Dateien" -#: builtin/commit.c:1514 +#: builtin/commit.c:1593 msgid "bypass pre-commit hook" msgstr "umgeht \"pre-commit hook\"" -#: builtin/commit.c:1515 +#: builtin/commit.c:1594 msgid "show what would be committed" msgstr "zeigt an, was committet werden würde" -#: builtin/commit.c:1526 +#: builtin/commit.c:1605 msgid "amend previous commit" msgstr "ändert vorherigen Commit" -#: builtin/commit.c:1527 +#: builtin/commit.c:1606 msgid "bypass post-rewrite hook" msgstr "umgeht \"post-rewrite hook\"" -#: builtin/commit.c:1532 +#: builtin/commit.c:1611 msgid "ok to record an empty change" msgstr "erlaubt Aufzeichnung einer leeren Änderung" -#: builtin/commit.c:1534 +#: builtin/commit.c:1613 msgid "ok to record a change with an empty message" msgstr "erlaubt Aufzeichnung einer Änderung mit einer leeren Beschreibung" -#: builtin/commit.c:1562 +#: builtin/commit.c:1641 msgid "could not parse HEAD commit" msgstr "Konnte Commit von HEAD nicht analysieren." -#: builtin/commit.c:1601 builtin/merge.c:518 +#: builtin/commit.c:1680 builtin/merge.c:518 #, c-format msgid "could not open '%s' for reading" msgstr "Konnte '%s' nicht zum Lesen öffnen." -#: builtin/commit.c:1608 +#: builtin/commit.c:1687 #, c-format msgid "Corrupt MERGE_HEAD file (%s)" msgstr "Beschädigte MERGE_HEAD-Datei (%s)" -#: builtin/commit.c:1615 +#: builtin/commit.c:1694 msgid "could not read MERGE_MODE" msgstr "Konnte MERGE_MODE nicht lesen" -#: builtin/commit.c:1634 +#: builtin/commit.c:1713 #, c-format msgid "could not read commit message: %s" msgstr "Konnte Commit-Beschreibung nicht lesen: %s" -#: builtin/commit.c:1645 +#: builtin/commit.c:1724 #, c-format msgid "Aborting commit; you did not edit the message.\n" msgstr "Commit abgebrochen; Sie haben die Beschreibung nicht editiert.\n" -#: builtin/commit.c:1650 +#: builtin/commit.c:1729 #, c-format msgid "Aborting commit due to empty commit message.\n" msgstr "Commit aufgrund leerer Beschreibung abgebrochen.\n" -#: builtin/commit.c:1665 builtin/merge.c:857 builtin/merge.c:882 +#: builtin/commit.c:1744 builtin/merge.c:851 builtin/merge.c:876 msgid "failed to write commit object" msgstr "Fehler beim Schreiben des Commit-Objektes." -#: builtin/commit.c:1686 +#: builtin/commit.c:1756 msgid "cannot lock HEAD ref" msgstr "Kann Referenz von HEAD nicht sperren." -#: builtin/commit.c:1690 +#: builtin/commit.c:1769 msgid "cannot update HEAD ref" msgstr "Kann Referenz von HEAD nicht aktualisieren." -#: builtin/commit.c:1701 +#: builtin/commit.c:1780 msgid "" "Repository has been updated, but unable to write\n" "new_index file. Check that disk is not full or quota is\n" @@ -4839,47 +4874,47 @@ msgstr "git describe [Optionen] <commit-ish>*" msgid "git describe [options] --dirty" msgstr "git describe [Optionen] --dirty" -#: builtin/describe.c:225 +#: builtin/describe.c:216 #, c-format msgid "annotated tag %s not available" msgstr "annotiertes Tag %s ist nicht verfügbar" -#: builtin/describe.c:229 +#: builtin/describe.c:220 #, c-format msgid "annotated tag %s has no embedded name" msgstr "annotiertes Tag %s hat keinen eingebetteten Namen" -#: builtin/describe.c:231 +#: builtin/describe.c:222 #, c-format msgid "tag '%s' is really '%s' here" msgstr "Tag '%s' ist eigentlich '%s' hier" -#: builtin/describe.c:258 +#: builtin/describe.c:249 #, c-format msgid "Not a valid object name %s" msgstr "%s ist kein gültiger Objekt-Name" -#: builtin/describe.c:261 +#: builtin/describe.c:252 #, c-format msgid "%s is not a valid '%s' object" msgstr "%s ist kein gültiges '%s' Objekt" -#: builtin/describe.c:278 +#: builtin/describe.c:269 #, c-format msgid "no tag exactly matches '%s'" msgstr "kein Tag entspricht exakt '%s'" -#: builtin/describe.c:280 +#: builtin/describe.c:271 #, c-format msgid "searching to describe %s\n" msgstr "suche zur Beschreibung von %s\n" -#: builtin/describe.c:327 +#: builtin/describe.c:318 #, c-format msgid "finished search at %s\n" msgstr "beendete Suche bei %s\n" -#: builtin/describe.c:354 +#: builtin/describe.c:345 #, c-format msgid "" "No annotated tags can describe '%s'.\n" @@ -4888,7 +4923,7 @@ msgstr "" "Keine annotierten Tags können '%s' beschreiben.\n" "Jedoch gab es nicht-annotierte Tags: versuchen Sie --tags." -#: builtin/describe.c:358 +#: builtin/describe.c:349 #, c-format msgid "" "No tags can describe '%s'.\n" @@ -4897,12 +4932,12 @@ msgstr "" "Keine Tags können '%s' beschreiben.\n" "Versuchen Sie --always oder erstellen Sie einige Tags." -#: builtin/describe.c:379 +#: builtin/describe.c:370 #, c-format msgid "traversed %lu commits\n" msgstr "%lu Commits durchlaufen\n" -#: builtin/describe.c:382 +#: builtin/describe.c:373 #, c-format msgid "" "more than %i tags found; listed %i most recent\n" @@ -4911,65 +4946,65 @@ msgstr "" "mehr als %i Tags gefunden; Führe die ersten %i auf\n" "Suche bei %s aufgegeben\n" -#: builtin/describe.c:404 +#: builtin/describe.c:395 msgid "find the tag that comes after the commit" msgstr "findet das Tag, das nach Commit kommt" -#: builtin/describe.c:405 +#: builtin/describe.c:396 msgid "debug search strategy on stderr" msgstr "protokolliert die Suchstrategie in der Standard-Fehlerausgabe" -#: builtin/describe.c:406 +#: builtin/describe.c:397 msgid "use any ref" msgstr "verwendet alle Referenzen" -#: builtin/describe.c:407 +#: builtin/describe.c:398 msgid "use any tag, even unannotated" msgstr "verwendet jedes Tag, auch nicht-annotierte" -#: builtin/describe.c:408 +#: builtin/describe.c:399 msgid "always use long format" msgstr "verwendet immer langes Format" -#: builtin/describe.c:409 +#: builtin/describe.c:400 msgid "only follow first parent" msgstr "folgt nur erstem Elternteil" -#: builtin/describe.c:412 +#: builtin/describe.c:403 msgid "only output exact matches" msgstr "gibt nur exakte Übereinstimmungen aus" -#: builtin/describe.c:414 +#: builtin/describe.c:405 msgid "consider <n> most recent tags (default: 10)" msgstr "betrachtet die jüngsten <n> Tags (Standard: 10)" -#: builtin/describe.c:416 +#: builtin/describe.c:407 msgid "only consider tags matching <pattern>" msgstr "betrachtet nur Tags die <Muster> entsprechen" -#: builtin/describe.c:418 builtin/name-rev.c:321 +#: builtin/describe.c:409 builtin/name-rev.c:318 msgid "show abbreviated commit object as fallback" msgstr "zeigt gekürztes Commit-Objekt, wenn sonst nichts zutrifft" -#: builtin/describe.c:419 +#: builtin/describe.c:410 msgid "mark" msgstr "Kennzeichen" -#: builtin/describe.c:420 +#: builtin/describe.c:411 msgid "append <mark> on dirty working tree (default: \"-dirty\")" msgstr "" "fügt <Kennzeichen> bei geändertem Arbeitsverzeichnis hinzu (Standard: \"-" "dirty\")" -#: builtin/describe.c:438 +#: builtin/describe.c:429 msgid "--long is incompatible with --abbrev=0" msgstr "Die Optionen --long und --abbrev=0 sind inkompatibel." -#: builtin/describe.c:464 +#: builtin/describe.c:455 msgid "No names found, cannot describe anything." msgstr "Keine Namen gefunden, kann nichts beschreiben." -#: builtin/describe.c:484 +#: builtin/describe.c:475 msgid "--dirty is incompatible with commit-ishes" msgstr "Die Option --dirty kann nicht mit Commits verwendet werden." @@ -5002,46 +5037,54 @@ msgstr "Mehr als zwei Blobs angegeben: '%s'" msgid "unhandled object '%s' given." msgstr "unbehandeltes Objekt '%s' angegeben" -#: builtin/fast-export.c:22 +#: builtin/fast-export.c:23 msgid "git fast-export [rev-list-opts]" msgstr "git fast-export [rev-list-opts]" -#: builtin/fast-export.c:673 +#: builtin/fast-export.c:702 msgid "show progress after <n> objects" msgstr "zeigt Fortschritt nach <n> Objekten an" -#: builtin/fast-export.c:675 +#: builtin/fast-export.c:704 msgid "select handling of signed tags" msgstr "wählt Behandlung von signierten Tags" -#: builtin/fast-export.c:678 +#: builtin/fast-export.c:707 msgid "select handling of tags that tag filtered objects" msgstr "wählt Behandlung von Tags, die gefilterte Objekte markieren" -#: builtin/fast-export.c:681 +#: builtin/fast-export.c:710 msgid "Dump marks to this file" msgstr "Schreibt Kennzeichen in diese Datei" -#: builtin/fast-export.c:683 +#: builtin/fast-export.c:712 msgid "Import marks from this file" msgstr "Importiert Kennzeichen von dieser Datei" -#: builtin/fast-export.c:685 +#: builtin/fast-export.c:714 msgid "Fake a tagger when tags lack one" msgstr "erzeugt künstlich einen Tag-Ersteller, wenn das Tag keinen hat" -#: builtin/fast-export.c:687 +#: builtin/fast-export.c:716 msgid "Output full tree for each commit" msgstr "gibt für jeden Commit das gesamte Verzeichnis aus" -#: builtin/fast-export.c:689 +#: builtin/fast-export.c:718 msgid "Use the done feature to terminate the stream" -msgstr "Benutzt die \"done\"-Funktion um den Strom abzuschließen" +msgstr "Benutzt die \"done\"-Funktion, um den Strom abzuschließen" -#: builtin/fast-export.c:690 +#: builtin/fast-export.c:719 msgid "Skip output of blob data" msgstr "Überspringt Ausgabe von Blob-Daten" +#: builtin/fast-export.c:720 +msgid "refspec" +msgstr "Refspec" + +#: builtin/fast-export.c:721 +msgid "Apply refspec to exported refs" +msgstr "Wendet Refspec auf exportierte Referenzen an" + #: builtin/fetch.c:20 msgid "git fetch [<options>] [<repository> [<refspec>...]]" msgstr "git fetch [<Optionen>] [<Repository> [<Refspec>...]]" @@ -5058,218 +5101,226 @@ msgstr "git fetch --multiple [<Optionen>] [(<Repository> | <Gruppe>)...]" msgid "git fetch --all [<options>]" msgstr "git fetch --all [<Optionen>]" -#: builtin/fetch.c:75 +#: builtin/fetch.c:90 msgid "fetch from all remotes" msgstr "fordert von allen Remote-Repositories an" -#: builtin/fetch.c:77 +#: builtin/fetch.c:92 msgid "append to .git/FETCH_HEAD instead of overwriting" msgstr "hängt an .git/FETCH_HEAD an, anstatt zu überschreiben" -#: builtin/fetch.c:79 +#: builtin/fetch.c:94 msgid "path to upload pack on remote end" msgstr "Pfad des Programms zum Hochladen von Paketen auf der Gegenseite" -#: builtin/fetch.c:80 +#: builtin/fetch.c:95 msgid "force overwrite of local branch" msgstr "erzwingt das Überschreiben von lokalen Branches" -#: builtin/fetch.c:82 +#: builtin/fetch.c:97 msgid "fetch from multiple remotes" msgstr "fordert von mehreren Remote-Repositories an" -#: builtin/fetch.c:84 +#: builtin/fetch.c:99 msgid "fetch all tags and associated objects" msgstr "fordert alle Tags und verbundene Objekte an" -#: builtin/fetch.c:86 +#: builtin/fetch.c:101 msgid "do not fetch all tags (--no-tags)" msgstr "fordert nicht alle Tags an (--no-tags)" -#: builtin/fetch.c:88 +#: builtin/fetch.c:103 msgid "prune remote-tracking branches no longer on remote" msgstr "" "entfernt Remote-Tracking-Branches, die sich nicht mehr im Remote-Repository " "befinden" -#: builtin/fetch.c:89 +#: builtin/fetch.c:104 msgid "on-demand" msgstr "bei-Bedarf" -#: builtin/fetch.c:90 +#: builtin/fetch.c:105 msgid "control recursive fetching of submodules" msgstr "kontrolliert rekursive Anforderungen von Submodulen" -#: builtin/fetch.c:94 +#: builtin/fetch.c:109 msgid "keep downloaded pack" msgstr "behält heruntergeladenes Paket" -#: builtin/fetch.c:96 +#: builtin/fetch.c:111 msgid "allow updating of HEAD ref" msgstr "erlaubt Aktualisierung der \"HEAD\"-Referenz" -#: builtin/fetch.c:99 +#: builtin/fetch.c:114 msgid "deepen history of shallow clone" msgstr "" "vertieft die Historie eines Klons mit unvollständiger Historie (shallow)" -#: builtin/fetch.c:101 +#: builtin/fetch.c:116 msgid "convert to a complete repository" msgstr "konvertiert zu einem vollständigen Repository" -#: builtin/fetch.c:103 builtin/log.c:1197 +#: builtin/fetch.c:118 builtin/log.c:1205 msgid "dir" msgstr "Verzeichnis" -#: builtin/fetch.c:104 +#: builtin/fetch.c:119 msgid "prepend this to submodule path output" msgstr "stellt dies an die Ausgabe der Submodul-Pfade voran" -#: builtin/fetch.c:107 +#: builtin/fetch.c:122 msgid "default mode for recursion" msgstr "Standard-Modus für Rekursion" -#: builtin/fetch.c:109 +#: builtin/fetch.c:124 msgid "accept refs that update .git/shallow" msgstr "akzeptiert Referenzen die .git/shallow aktualisieren" -#: builtin/fetch.c:347 +#: builtin/fetch.c:125 +msgid "refmap" +msgstr "Refmap" + +#: builtin/fetch.c:126 +msgid "specify fetch refmap" +msgstr "Angabe der Refmap für 'fetch'" + +#: builtin/fetch.c:376 msgid "Couldn't find remote ref HEAD" msgstr "Konnte Remote-Referenz von HEAD nicht finden." -#: builtin/fetch.c:411 +#: builtin/fetch.c:440 #, c-format msgid "object %s not found" msgstr "Objekt %s nicht gefunden" -#: builtin/fetch.c:416 +#: builtin/fetch.c:445 msgid "[up to date]" msgstr "[aktuell]" -#: builtin/fetch.c:430 +#: builtin/fetch.c:459 #, c-format msgid "! %-*s %-*s -> %s (can't fetch in current branch)" msgstr "" "! %-*s %-*s -> %s (kann \"fetch\" im aktuellen Branch nicht ausführen)" -#: builtin/fetch.c:431 builtin/fetch.c:517 +#: builtin/fetch.c:460 builtin/fetch.c:546 msgid "[rejected]" msgstr "[zurückgewiesen]" -#: builtin/fetch.c:442 +#: builtin/fetch.c:471 msgid "[tag update]" msgstr "[Tag Aktualisierung]" -#: builtin/fetch.c:444 builtin/fetch.c:479 builtin/fetch.c:497 +#: builtin/fetch.c:473 builtin/fetch.c:508 builtin/fetch.c:526 msgid " (unable to update local ref)" msgstr " (kann lokale Referenz nicht aktualisieren)" -#: builtin/fetch.c:462 +#: builtin/fetch.c:491 msgid "[new tag]" msgstr "[neues Tag]" -#: builtin/fetch.c:465 +#: builtin/fetch.c:494 msgid "[new branch]" msgstr "[neuer Branch]" -#: builtin/fetch.c:468 +#: builtin/fetch.c:497 msgid "[new ref]" msgstr "[neue Referenz]" -#: builtin/fetch.c:513 +#: builtin/fetch.c:542 msgid "unable to update local ref" msgstr "kann lokale Referenz nicht aktualisieren" -#: builtin/fetch.c:513 +#: builtin/fetch.c:542 msgid "forced update" msgstr "Aktualisierung erzwungen" -#: builtin/fetch.c:519 +#: builtin/fetch.c:548 msgid "(non-fast-forward)" msgstr "(kein Vorspulen)" -#: builtin/fetch.c:552 builtin/fetch.c:785 +#: builtin/fetch.c:581 builtin/fetch.c:814 #, c-format msgid "cannot open %s: %s\n" msgstr "kann %s nicht öffnen: %s\n" -#: builtin/fetch.c:561 +#: builtin/fetch.c:590 #, c-format msgid "%s did not send all necessary objects\n" msgstr "%s hat nicht alle erforderlichen Objekte gesendet\n" -#: builtin/fetch.c:579 +#: builtin/fetch.c:608 #, c-format msgid "reject %s because shallow roots are not allowed to be updated" msgstr "" "%s wurde zurückgewiesen, da Ursprungs-Commits von Repositoriesmit " "unvollständiger Historie (shallow) nicht aktualisiert werden dürfen." -#: builtin/fetch.c:667 builtin/fetch.c:750 +#: builtin/fetch.c:696 builtin/fetch.c:779 #, c-format msgid "From %.*s\n" msgstr "Von %.*s\n" -#: builtin/fetch.c:678 +#: builtin/fetch.c:707 #, c-format msgid "" "some local refs could not be updated; try running\n" " 'git remote prune %s' to remove any old, conflicting branches" msgstr "" "Einige lokale Referenzen konnten nicht aktualisiert werden; versuchen Sie\n" -"'git remote prune %s' um jeden älteren, widersprüchlichen Branch zu löschen." +"'git remote prune %s', um jeden älteren, widersprüchlichen Branch zu löschen." -#: builtin/fetch.c:730 +#: builtin/fetch.c:759 #, c-format msgid " (%s will become dangling)" msgstr " (%s wird unreferenziert)" -#: builtin/fetch.c:731 +#: builtin/fetch.c:760 #, c-format msgid " (%s has become dangling)" msgstr " (%s wurde unreferenziert)" -#: builtin/fetch.c:755 +#: builtin/fetch.c:784 msgid "[deleted]" msgstr "[gelöscht]" -#: builtin/fetch.c:756 builtin/remote.c:1050 +#: builtin/fetch.c:785 builtin/remote.c:1059 msgid "(none)" msgstr "(nichts)" -#: builtin/fetch.c:775 +#: builtin/fetch.c:804 #, c-format msgid "Refusing to fetch into current branch %s of non-bare repository" msgstr "" "Der \"fetch\" in den aktuellen Branch %s von einem nicht-Bare-Repository " "wurde verweigert." -#: builtin/fetch.c:794 +#: builtin/fetch.c:823 #, c-format msgid "Option \"%s\" value \"%s\" is not valid for %s" msgstr "Option \"%s\" Wert \"%s\" ist nicht gültig für %s" -#: builtin/fetch.c:797 +#: builtin/fetch.c:826 #, c-format msgid "Option \"%s\" is ignored for %s\n" msgstr "Option \"%s\" wird ignoriert für %s\n" -#: builtin/fetch.c:853 +#: builtin/fetch.c:882 #, c-format msgid "Don't know how to fetch from %s" msgstr "Weiß nicht wie von %s angefordert wird." -#: builtin/fetch.c:1015 +#: builtin/fetch.c:1044 #, c-format msgid "Fetching %s\n" msgstr "Fordere an von %s\n" -#: builtin/fetch.c:1017 builtin/remote.c:90 +#: builtin/fetch.c:1046 builtin/remote.c:90 #, c-format msgid "Could not fetch %s" msgstr "Konnte nicht von %s anfordern" -#: builtin/fetch.c:1035 +#: builtin/fetch.c:1064 msgid "" "No remote repository specified. Please, specify either a URL or a\n" "remote name from which new revisions should be fetched." @@ -5278,35 +5329,35 @@ msgstr "" "oder den Namen des Remote-Repositories an, von welchem neue\n" "Commits angefordert werden sollen." -#: builtin/fetch.c:1059 +#: builtin/fetch.c:1087 msgid "You need to specify a tag name." msgstr "Sie müssen den Namen des Tags angeben." -#: builtin/fetch.c:1107 +#: builtin/fetch.c:1131 msgid "--depth and --unshallow cannot be used together" msgstr "" "Die Optionen --depth und --unshallow können nicht gemeinsam verwendet werden." -#: builtin/fetch.c:1109 +#: builtin/fetch.c:1133 msgid "--unshallow on a complete repository does not make sense" msgstr "" "Die Option --unshallow kann nicht in einem Repository mit unvollständiger " "Historie verwendet werden." -#: builtin/fetch.c:1132 +#: builtin/fetch.c:1156 msgid "fetch --all does not take a repository argument" msgstr "fetch --all akzeptiert kein Repository als Argument" -#: builtin/fetch.c:1134 +#: builtin/fetch.c:1158 msgid "fetch --all does not make sense with refspecs" msgstr "fetch --all kann nicht mit Refspecs verwendet werden." -#: builtin/fetch.c:1145 +#: builtin/fetch.c:1169 #, c-format msgid "No such remote or remote group: %s" msgstr "Kein Remote-Repository (einzeln oder Gruppe): %s" -#: builtin/fetch.c:1153 +#: builtin/fetch.c:1177 msgid "Fetching a group and specifying refspecs does not make sense" msgstr "" "Das Abholen einer Gruppe von Remote-Repositories kann nicht mit der Angabe\n" @@ -5317,9 +5368,9 @@ msgid "git fmt-merge-msg [-m <message>] [--log[=<n>]|--no-log] [--file <file>]" msgstr "" "git fmt-merge-msg [-m <Beschreibung>] [--log[=<n>]|--no-log] [--file <Datei>]" -#: builtin/fmt-merge-msg.c:663 builtin/fmt-merge-msg.c:666 builtin/grep.c:700 -#: builtin/merge.c:196 builtin/repack.c:175 builtin/repack.c:179 -#: builtin/show-branch.c:654 builtin/show-ref.c:178 builtin/tag.c:501 +#: builtin/fmt-merge-msg.c:663 builtin/fmt-merge-msg.c:666 builtin/grep.c:698 +#: builtin/merge.c:196 builtin/repack.c:179 builtin/repack.c:183 +#: builtin/show-branch.c:654 builtin/show-ref.c:178 builtin/tag.c:589 #: parse-options.h:132 parse-options.h:239 msgid "n" msgstr "Anzahl" @@ -5344,43 +5395,43 @@ msgstr "verwendet <Text> als Beschreibungsanfang" msgid "file to read from" msgstr "Datei zum Einlesen" -#: builtin/for-each-ref.c:1063 +#: builtin/for-each-ref.c:1051 msgid "git for-each-ref [options] [<pattern>]" msgstr "git for-each-ref [Optionen] [<Muster>]" -#: builtin/for-each-ref.c:1078 +#: builtin/for-each-ref.c:1066 msgid "quote placeholders suitably for shells" msgstr "formatiert Platzhalter als Shell-String" -#: builtin/for-each-ref.c:1080 +#: builtin/for-each-ref.c:1068 msgid "quote placeholders suitably for perl" msgstr "formatiert Platzhalter als Perl-String" -#: builtin/for-each-ref.c:1082 +#: builtin/for-each-ref.c:1070 msgid "quote placeholders suitably for python" msgstr "formatiert Platzhalter als Python-String" -#: builtin/for-each-ref.c:1084 +#: builtin/for-each-ref.c:1072 msgid "quote placeholders suitably for tcl" msgstr "formatiert Platzhalter als TCL-String" -#: builtin/for-each-ref.c:1087 +#: builtin/for-each-ref.c:1075 msgid "show only <n> matched refs" msgstr "zeigt nur <n> passende Referenzen" -#: builtin/for-each-ref.c:1088 builtin/replace.c:177 +#: builtin/for-each-ref.c:1076 builtin/replace.c:435 msgid "format" msgstr "Format" -#: builtin/for-each-ref.c:1088 +#: builtin/for-each-ref.c:1076 msgid "format to use for the output" msgstr "für die Ausgabe zu verwendendes Format" -#: builtin/for-each-ref.c:1089 +#: builtin/for-each-ref.c:1077 msgid "key" msgstr "Schüssel" -#: builtin/for-each-ref.c:1090 +#: builtin/for-each-ref.c:1078 msgid "field name to sort on" msgstr "sortiere nach diesem Feld" @@ -5388,55 +5439,55 @@ msgstr "sortiere nach diesem Feld" msgid "Checking connectivity" msgstr "Prüfe Konnektivität" -#: builtin/fsck.c:544 +#: builtin/fsck.c:538 msgid "Checking object directories" msgstr "Prüfe Objekt-Verzeichnisse" -#: builtin/fsck.c:607 +#: builtin/fsck.c:601 msgid "git fsck [options] [<object>...]" msgstr "git fsck [Optionen] [<Objekt>...]" -#: builtin/fsck.c:613 +#: builtin/fsck.c:607 msgid "show unreachable objects" msgstr "zeigt unerreichbare Objekte" -#: builtin/fsck.c:614 +#: builtin/fsck.c:608 msgid "show dangling objects" msgstr "zeigt unreferenzierte Objekte" -#: builtin/fsck.c:615 +#: builtin/fsck.c:609 msgid "report tags" msgstr "meldet Tags" -#: builtin/fsck.c:616 +#: builtin/fsck.c:610 msgid "report root nodes" msgstr "meldet Hauptwurzeln" -#: builtin/fsck.c:617 +#: builtin/fsck.c:611 msgid "make index objects head nodes" msgstr "prüft Objekte in der Staging-Area" -#: builtin/fsck.c:618 +#: builtin/fsck.c:612 msgid "make reflogs head nodes (default)" msgstr "prüft die Reflogs (Standard)" -#: builtin/fsck.c:619 +#: builtin/fsck.c:613 msgid "also consider packs and alternate objects" msgstr "" -#: builtin/fsck.c:620 +#: builtin/fsck.c:614 msgid "enable more strict checking" msgstr "aktiviert genauere Prüfung" -#: builtin/fsck.c:622 +#: builtin/fsck.c:616 msgid "write dangling objects in .git/lost-found" msgstr "schreibt unreferenzierte Objekte nach .git/lost-found" -#: builtin/fsck.c:623 builtin/prune.c:144 +#: builtin/fsck.c:617 builtin/prune.c:144 msgid "show progress" msgstr "zeigt Fortschrittsanzeige" -#: builtin/fsck.c:673 +#: builtin/fsck.c:667 msgid "Checking objects" msgstr "Prüfe Objekte" @@ -5444,54 +5495,54 @@ msgstr "Prüfe Objekte" msgid "git gc [options]" msgstr "git gc [Optionen]" -#: builtin/gc.c:90 +#: builtin/gc.c:91 #, c-format msgid "Invalid %s: '%s'" msgstr "Ungültiger %s: '%s'" -#: builtin/gc.c:117 +#: builtin/gc.c:118 #, c-format msgid "insanely long object directory %.*s" msgstr "zu langes Objekt-Verzeichnis %.*s" -#: builtin/gc.c:273 +#: builtin/gc.c:287 msgid "prune unreferenced objects" msgstr "entfernt unreferenzierte Objekte" -#: builtin/gc.c:275 +#: builtin/gc.c:289 msgid "be more thorough (increased runtime)" msgstr "mehr Gründlichkeit (erhöht Laufzeit)" -#: builtin/gc.c:276 +#: builtin/gc.c:290 msgid "enable auto-gc mode" msgstr "aktiviert \"auto-gc\" Modus" -#: builtin/gc.c:277 +#: builtin/gc.c:291 msgid "force running gc even if there may be another gc running" msgstr "" "erzwingt Ausführung von \"git gc\" selbst wenn ein anderes\n" "\"git gc\" bereits ausgeführt wird" -#: builtin/gc.c:318 +#: builtin/gc.c:332 #, c-format msgid "Auto packing the repository in background for optimum performance.\n" msgstr "" "Die Datenbank des Repositories wird für eine optimale Performance im\n" "Hintergrund komprimiert.\n" -#: builtin/gc.c:320 +#: builtin/gc.c:334 #, c-format msgid "Auto packing the repository for optimum performance.\n" msgstr "" "Die Datenbank des Projektarchivs wird für eine optimale Performance " "komprimiert.\n" -#: builtin/gc.c:321 +#: builtin/gc.c:335 #, c-format msgid "See \"git help gc\" for manual housekeeping.\n" msgstr "Siehe \"git help gc\" für manuelles Aufräumen.\n" -#: builtin/gc.c:336 +#: builtin/gc.c:353 #, c-format msgid "" "gc is already running on machine '%s' pid %<PRIuMAX> (use --force if not)" @@ -5499,7 +5550,7 @@ msgstr "" "\"git gc\" wird bereits auf Maschine '%s' pid %<PRIuMAX> ausgeführt\n" "(benutzen Sie --force falls nicht)" -#: builtin/gc.c:361 +#: builtin/gc.c:375 msgid "" "There are too many unreachable loose objects; run 'git prune' to remove them." msgstr "" @@ -5515,235 +5566,230 @@ msgstr "git grep [Optionen] [-e] <Muster> [<Commit>...] [[--] <Pfad>...]" msgid "grep: failed to create thread: %s" msgstr "grep: Fehler beim Erzeugen eines Thread: %s" -#: builtin/grep.c:365 -#, c-format -msgid "Failed to chdir: %s" -msgstr "Fehler beim Verzeichniswechsel: %s" - -#: builtin/grep.c:443 builtin/grep.c:478 +#: builtin/grep.c:441 builtin/grep.c:476 #, c-format msgid "unable to read tree (%s)" msgstr "konnte \"Tree\"-Objekt (%s) nicht lesen" -#: builtin/grep.c:493 +#: builtin/grep.c:491 #, c-format msgid "unable to grep from object of type %s" msgstr "kann \"grep\" nicht mit Objekten des Typs %s durchführen" -#: builtin/grep.c:549 +#: builtin/grep.c:547 #, c-format msgid "switch `%c' expects a numerical value" msgstr "Schalter '%c' erwartet einen numerischen Wert" -#: builtin/grep.c:566 +#: builtin/grep.c:564 #, c-format msgid "cannot open '%s'" msgstr "kann '%s' nicht öffnen" -#: builtin/grep.c:640 +#: builtin/grep.c:638 msgid "search in index instead of in the work tree" msgstr "sucht in der Staging-Area anstatt im Arbeitsverzeichnis" -#: builtin/grep.c:642 +#: builtin/grep.c:640 msgid "find in contents not managed by git" msgstr "findet auch in Inhalten, die nicht von Git verwaltet werden" -#: builtin/grep.c:644 +#: builtin/grep.c:642 msgid "search in both tracked and untracked files" msgstr "sucht in beobachteten und unbeobachteten Dateien" -#: builtin/grep.c:646 +#: builtin/grep.c:644 msgid "search also in ignored files" msgstr "sucht auch in ignorierten Dateien" -#: builtin/grep.c:649 +#: builtin/grep.c:647 msgid "show non-matching lines" msgstr "zeigt Zeilen ohne Übereinstimmungen" -#: builtin/grep.c:651 +#: builtin/grep.c:649 msgid "case insensitive matching" msgstr "findet Übereinstimmungen unabhängig von Groß- und Kleinschreibung" -#: builtin/grep.c:653 +#: builtin/grep.c:651 msgid "match patterns only at word boundaries" msgstr "sucht nur ganze Wörter" -#: builtin/grep.c:655 +#: builtin/grep.c:653 msgid "process binary files as text" msgstr "verarbeitet binäre Dateien als Text" -#: builtin/grep.c:657 +#: builtin/grep.c:655 msgid "don't match patterns in binary files" msgstr "findet keine Muster in Binärdateien" -#: builtin/grep.c:660 +#: builtin/grep.c:658 msgid "process binary files with textconv filters" msgstr "verarbeitet binäre Dateien mit \"textconv\"-Filtern" -#: builtin/grep.c:662 +#: builtin/grep.c:660 msgid "descend at most <depth> levels" msgstr "durchläuft höchstens <Tiefe> Ebenen" -#: builtin/grep.c:666 +#: builtin/grep.c:664 msgid "use extended POSIX regular expressions" msgstr "verwendet erweiterte reguläre Ausdrücke aus POSIX" -#: builtin/grep.c:669 +#: builtin/grep.c:667 msgid "use basic POSIX regular expressions (default)" msgstr "verwendet grundlegende reguläre Ausdrücke aus POSIX (Standard)" -#: builtin/grep.c:672 +#: builtin/grep.c:670 msgid "interpret patterns as fixed strings" msgstr "interpretiert Muster als feste Zeichenketten" -#: builtin/grep.c:675 +#: builtin/grep.c:673 msgid "use Perl-compatible regular expressions" msgstr "verwendet Perl-kompatible reguläre Ausdrücke" -#: builtin/grep.c:678 +#: builtin/grep.c:676 msgid "show line numbers" msgstr "zeigt Zeilennummern" -#: builtin/grep.c:679 +#: builtin/grep.c:677 msgid "don't show filenames" msgstr "zeigt keine Dateinamen" -#: builtin/grep.c:680 +#: builtin/grep.c:678 msgid "show filenames" msgstr "zeigt Dateinamen" -#: builtin/grep.c:682 +#: builtin/grep.c:680 msgid "show filenames relative to top directory" msgstr "zeigt Dateinamen relativ zum Projektverzeichnis" -#: builtin/grep.c:684 +#: builtin/grep.c:682 msgid "show only filenames instead of matching lines" msgstr "zeigt nur Dateinamen anstatt übereinstimmende Zeilen" -#: builtin/grep.c:686 +#: builtin/grep.c:684 msgid "synonym for --files-with-matches" msgstr "Synonym für --files-with-matches" -#: builtin/grep.c:689 +#: builtin/grep.c:687 msgid "show only the names of files without match" msgstr "zeigt nur die Dateinamen ohne Übereinstimmungen" -#: builtin/grep.c:691 +#: builtin/grep.c:689 msgid "print NUL after filenames" msgstr "gibt NUL-Zeichen nach Dateinamen aus" -#: builtin/grep.c:693 +#: builtin/grep.c:691 msgid "show the number of matches instead of matching lines" msgstr "zeigt, anstatt der Zeilen, die Anzahl der übereinstimmenden Zeilen" -#: builtin/grep.c:694 +#: builtin/grep.c:692 msgid "highlight matches" msgstr "hebt Übereinstimmungen hervor" -#: builtin/grep.c:696 +#: builtin/grep.c:694 msgid "print empty line between matches from different files" msgstr "" "gibt eine Leerzeile zwischen Übereinstimmungen in verschiedenen Dateien aus" -#: builtin/grep.c:698 +#: builtin/grep.c:696 msgid "show filename only once above matches from same file" msgstr "" "zeigt den Dateinamen nur einmal oberhalb der Übereinstimmungen aus dieser " "Datei an" -#: builtin/grep.c:701 +#: builtin/grep.c:699 msgid "show <n> context lines before and after matches" msgstr "zeigt <n> Zeilen vor und nach den Übereinstimmungen an" -#: builtin/grep.c:704 +#: builtin/grep.c:702 msgid "show <n> context lines before matches" msgstr "zeigt <n> Zeilen vor den Übereinstimmungen an" -#: builtin/grep.c:706 +#: builtin/grep.c:704 msgid "show <n> context lines after matches" msgstr "zeigt <n> Zeilen nach den Übereinstimmungen an" -#: builtin/grep.c:707 +#: builtin/grep.c:705 msgid "shortcut for -C NUM" msgstr "Kurzform für -C NUM" -#: builtin/grep.c:710 +#: builtin/grep.c:708 msgid "show a line with the function name before matches" msgstr "zeigt eine Zeile mit dem Funktionsnamen vor Übereinstimmungen an" -#: builtin/grep.c:712 +#: builtin/grep.c:710 msgid "show the surrounding function" msgstr "zeigt die umgebende Funktion an" -#: builtin/grep.c:715 +#: builtin/grep.c:713 msgid "read patterns from file" msgstr "liest Muster von einer Datei" -#: builtin/grep.c:717 +#: builtin/grep.c:715 msgid "match <pattern>" msgstr "findet <Muster>" -#: builtin/grep.c:719 +#: builtin/grep.c:717 msgid "combine patterns specified with -e" msgstr "kombiniert Muster, die mit -e angegeben wurden" -#: builtin/grep.c:731 +#: builtin/grep.c:729 msgid "indicate hit with exit status without output" msgstr "zeigt Übereinstimmungen nur durch Beendigungsstatus an" -#: builtin/grep.c:733 +#: builtin/grep.c:731 msgid "show only matches from files that match all patterns" msgstr "zeigt nur Übereinstimmungen von Dateien, die allen Mustern entsprechen" -#: builtin/grep.c:735 +#: builtin/grep.c:733 msgid "show parse tree for grep expression" msgstr "zeigt geparstes Verzeichnis für \"grep\"-Ausdruck" -#: builtin/grep.c:739 +#: builtin/grep.c:737 msgid "pager" msgstr "Anzeigeprogramm" -#: builtin/grep.c:739 +#: builtin/grep.c:737 msgid "show matching files in the pager" msgstr "zeigt Dateien mit Übereinstimmungen im Anzeigeprogramm" -#: builtin/grep.c:742 +#: builtin/grep.c:740 msgid "allow calling of grep(1) (ignored by this build)" msgstr "erlaubt den Aufruf von grep(1) (von dieser Programmversion ignoriert)" -#: builtin/grep.c:743 builtin/show-ref.c:187 +#: builtin/grep.c:741 builtin/show-ref.c:187 msgid "show usage" msgstr "zeigt Verwendung" -#: builtin/grep.c:810 +#: builtin/grep.c:808 msgid "no pattern given." msgstr "keine Muster angegeben" -#: builtin/grep.c:868 +#: builtin/grep.c:866 msgid "--open-files-in-pager only works on the worktree" msgstr "" "Die Option --open-files-in-pager kann nur innerhalb des " "Arbeitsverzeichnisses verwendet werden." -#: builtin/grep.c:891 +#: builtin/grep.c:892 msgid "--cached or --untracked cannot be used with --no-index." msgstr "" "Die Optionen --cached und --untracked können nicht mit --no-index verwendet " "werden." -#: builtin/grep.c:896 +#: builtin/grep.c:897 msgid "--no-index or --untracked cannot be used with revs." msgstr "" "Die Optionen --no-index und --untracked können nicht mit Commits verwendet " "werden." -#: builtin/grep.c:899 +#: builtin/grep.c:900 msgid "--[no-]exclude-standard cannot be used for tracked contents." msgstr "" "Die Option --[no-]exclude-standard kann nicht mit beobachteten Inhalten " "verwendet werden." -#: builtin/grep.c:907 +#: builtin/grep.c:908 msgid "both --cached and trees are given." msgstr "Die Option --cached kann nicht mit \"Tree\"-Objekten verwendet werden." @@ -5759,7 +5805,7 @@ msgstr "" msgid "git hash-object --stdin-paths < <list-of-paths>" msgstr "git hash-object --stdin-paths < <Liste-von-Pfaden>" -#: builtin/hash-object.c:72 builtin/tag.c:521 +#: builtin/hash-object.c:72 builtin/tag.c:609 msgid "type" msgstr "Art" @@ -5903,281 +5949,292 @@ msgstr "Verwendung: %s%s" msgid "`git %s' is aliased to `%s'" msgstr "für `git %s' wurde der Alias `%s' angelegt" -#: builtin/index-pack.c:184 +#: builtin/index-pack.c:145 +#, c-format +msgid "unable to open %s" +msgstr "kann %s nicht öffnen" + +#: builtin/index-pack.c:191 #, c-format msgid "object type mismatch at %s" msgstr "Objekt-Typen passen bei %s nicht zusammen" -#: builtin/index-pack.c:204 -msgid "object of unexpected type" -msgstr "Objekt hat unerwarteten Typ" +#: builtin/index-pack.c:211 +#, c-format +msgid "did not receive expected object %s" +msgstr "konnte erwartetes Objekt %s nicht empfangen" -#: builtin/index-pack.c:244 +#: builtin/index-pack.c:214 +#, c-format +msgid "object %s: expected type %s, found %s" +msgstr "Objekt %s: erwarteter Typ %s, %s gefunden" + +#: builtin/index-pack.c:256 #, c-format msgid "cannot fill %d byte" msgid_plural "cannot fill %d bytes" msgstr[0] "kann %d Byte nicht lesen" msgstr[1] "kann %d Bytes nicht lesen" -#: builtin/index-pack.c:254 +#: builtin/index-pack.c:266 msgid "early EOF" msgstr "zu frühes Dateiende" -#: builtin/index-pack.c:255 +#: builtin/index-pack.c:267 msgid "read error on input" msgstr "Fehler beim Lesen der Eingabe" -#: builtin/index-pack.c:267 +#: builtin/index-pack.c:279 msgid "used more bytes than were available" msgstr "verwendete mehr Bytes als verfügbar waren" -#: builtin/index-pack.c:274 +#: builtin/index-pack.c:286 msgid "pack too large for current definition of off_t" msgstr "Paket ist zu groß für die aktuelle Definition von off_t" -#: builtin/index-pack.c:290 +#: builtin/index-pack.c:302 #, c-format msgid "unable to create '%s'" msgstr "konnte '%s' nicht erstellen" -#: builtin/index-pack.c:295 +#: builtin/index-pack.c:307 #, c-format msgid "cannot open packfile '%s'" msgstr "Kann Paketdatei '%s' nicht öffnen" -#: builtin/index-pack.c:309 +#: builtin/index-pack.c:321 msgid "pack signature mismatch" msgstr "Paketsignatur stimmt nicht überein" -#: builtin/index-pack.c:311 +#: builtin/index-pack.c:323 #, c-format msgid "pack version %<PRIu32> unsupported" msgstr "Paketversion %<PRIu32> nicht unterstützt" -#: builtin/index-pack.c:329 +#: builtin/index-pack.c:341 #, c-format msgid "pack has bad object at offset %lu: %s" msgstr "Paket hat ein ungültiges Objekt bei Versatz %lu: %s" -#: builtin/index-pack.c:451 +#: builtin/index-pack.c:462 #, c-format msgid "inflate returned %d" msgstr "Dekomprimierung gab %d zurück" -#: builtin/index-pack.c:500 +#: builtin/index-pack.c:511 msgid "offset value overflow for delta base object" msgstr "Wert für Versatz bei Differenzobjekt übergelaufen" -#: builtin/index-pack.c:508 +#: builtin/index-pack.c:519 msgid "delta base offset is out of bound" msgstr "" "Wert für Versatz bei Differenzobjekt liegt außerhalb des gültigen Bereichs" -#: builtin/index-pack.c:516 +#: builtin/index-pack.c:527 #, c-format msgid "unknown object type %d" msgstr "Unbekannter Objekt-Typ %d" -#: builtin/index-pack.c:547 +#: builtin/index-pack.c:558 msgid "cannot pread pack file" msgstr "Kann Paketdatei %s nicht lesen" -#: builtin/index-pack.c:549 +#: builtin/index-pack.c:560 #, c-format msgid "premature end of pack file, %lu byte missing" msgid_plural "premature end of pack file, %lu bytes missing" msgstr[0] "frühzeitiges Ende der Paketdatei, vermisse %lu Byte" msgstr[1] "frühzeitiges Ende der Paketdatei, vermisse %lu Bytes" -#: builtin/index-pack.c:575 +#: builtin/index-pack.c:586 msgid "serious inflate inconsistency" msgstr "ernsthafte Inkonsistenz nach Dekomprimierung" -#: builtin/index-pack.c:666 builtin/index-pack.c:672 builtin/index-pack.c:695 -#: builtin/index-pack.c:729 builtin/index-pack.c:738 +#: builtin/index-pack.c:677 builtin/index-pack.c:683 builtin/index-pack.c:706 +#: builtin/index-pack.c:740 builtin/index-pack.c:749 #, c-format msgid "SHA1 COLLISION FOUND WITH %s !" msgstr "SHA1 KOLLISION MIT %s GEFUNDEN !" -#: builtin/index-pack.c:669 builtin/pack-objects.c:162 +#: builtin/index-pack.c:680 builtin/pack-objects.c:162 #: builtin/pack-objects.c:254 #, c-format msgid "unable to read %s" msgstr "kann %s nicht lesen" -#: builtin/index-pack.c:735 +#: builtin/index-pack.c:746 #, c-format msgid "cannot read existing object %s" msgstr "Kann existierendes Objekt %s nicht lesen." -#: builtin/index-pack.c:749 +#: builtin/index-pack.c:760 #, c-format msgid "invalid blob object %s" msgstr "ungültiges Blob-Objekt %s" -#: builtin/index-pack.c:763 +#: builtin/index-pack.c:774 #, c-format msgid "invalid %s" msgstr "Ungültiger Objekt-Typ %s" -#: builtin/index-pack.c:766 +#: builtin/index-pack.c:777 msgid "Error in object" msgstr "Fehler in Objekt" -#: builtin/index-pack.c:768 +#: builtin/index-pack.c:779 #, c-format msgid "Not all child objects of %s are reachable" msgstr "Nicht alle Kind-Objekte von %s sind erreichbar" -#: builtin/index-pack.c:839 builtin/index-pack.c:869 +#: builtin/index-pack.c:851 builtin/index-pack.c:881 msgid "failed to apply delta" msgstr "Konnte Dateiunterschied nicht anwenden" -#: builtin/index-pack.c:1010 +#: builtin/index-pack.c:1022 msgid "Receiving objects" msgstr "Empfange Objekte" -#: builtin/index-pack.c:1010 +#: builtin/index-pack.c:1022 msgid "Indexing objects" msgstr "Indiziere Objekte" -#: builtin/index-pack.c:1036 +#: builtin/index-pack.c:1048 msgid "pack is corrupted (SHA1 mismatch)" msgstr "Paket ist beschädigt (SHA1 unterschiedlich)" -#: builtin/index-pack.c:1041 +#: builtin/index-pack.c:1053 msgid "cannot fstat packfile" msgstr "kann Paketdatei nicht lesen" -#: builtin/index-pack.c:1044 +#: builtin/index-pack.c:1056 msgid "pack has junk at the end" msgstr "Paketende enthält nicht verwendbaren Inhalt" -#: builtin/index-pack.c:1055 +#: builtin/index-pack.c:1067 msgid "confusion beyond insanity in parse_pack_objects()" msgstr "Fehler beim Ausführen von \"parse_pack_objects()\"" -#: builtin/index-pack.c:1078 +#: builtin/index-pack.c:1090 msgid "Resolving deltas" msgstr "Löse Unterschiede auf" -#: builtin/index-pack.c:1088 +#: builtin/index-pack.c:1100 #, c-format msgid "unable to create thread: %s" msgstr "kann Thread nicht erzeugen: %s" -#: builtin/index-pack.c:1130 +#: builtin/index-pack.c:1142 msgid "confusion beyond insanity" msgstr "Fehler beim Auflösen der Unterschiede" -#: builtin/index-pack.c:1138 +#: builtin/index-pack.c:1150 #, c-format msgid "completed with %d local objects" msgstr "abgeschlossen mit %d lokalen Objekten" -#: builtin/index-pack.c:1148 +#: builtin/index-pack.c:1160 #, c-format msgid "Unexpected tail checksum for %s (disk corruption?)" msgstr "Unerwartete Prüfsumme für %s (Festplattenfehler?)" -#: builtin/index-pack.c:1152 +#: builtin/index-pack.c:1164 #, c-format msgid "pack has %d unresolved delta" msgid_plural "pack has %d unresolved deltas" msgstr[0] "Paket hat %d unaufgelöste Unterschied" msgstr[1] "Paket hat %d unaufgelöste Unterschiede" -#: builtin/index-pack.c:1177 +#: builtin/index-pack.c:1189 #, c-format msgid "unable to deflate appended object (%d)" msgstr "Konnte angehängtes Objekt (%d) nicht komprimieren" -#: builtin/index-pack.c:1256 +#: builtin/index-pack.c:1268 #, c-format msgid "local object %s is corrupt" msgstr "lokales Objekt %s ist beschädigt" -#: builtin/index-pack.c:1280 +#: builtin/index-pack.c:1292 msgid "error while closing pack file" msgstr "Fehler beim Schließen der Paketdatei" -#: builtin/index-pack.c:1293 +#: builtin/index-pack.c:1305 #, c-format msgid "cannot write keep file '%s'" msgstr "Kann Paketbeschreibungsdatei '%s' nicht schreiben" -#: builtin/index-pack.c:1301 +#: builtin/index-pack.c:1313 #, c-format msgid "cannot close written keep file '%s'" msgstr "Kann eben erstellte Paketbeschreibungsdatei '%s' nicht schließen" -#: builtin/index-pack.c:1314 +#: builtin/index-pack.c:1326 msgid "cannot store pack file" msgstr "Kann Paketdatei nicht speichern" -#: builtin/index-pack.c:1325 +#: builtin/index-pack.c:1337 msgid "cannot store index file" msgstr "Kann Indexdatei nicht speichern" -#: builtin/index-pack.c:1358 +#: builtin/index-pack.c:1370 #, c-format msgid "bad pack.indexversion=%<PRIu32>" msgstr "\"pack.indexversion=%<PRIu32>\" ist ungültig" -#: builtin/index-pack.c:1364 +#: builtin/index-pack.c:1376 #, c-format msgid "invalid number of threads specified (%d)" msgstr "ungültige Anzahl von Threads angegeben (%d)" -#: builtin/index-pack.c:1368 builtin/index-pack.c:1546 +#: builtin/index-pack.c:1380 builtin/index-pack.c:1559 #, c-format msgid "no threads support, ignoring %s" msgstr "keine Unterstützung von Threads, '%s' wird ignoriert" -#: builtin/index-pack.c:1426 +#: builtin/index-pack.c:1438 #, c-format msgid "Cannot open existing pack file '%s'" msgstr "Kann existierende Paketdatei '%s' nicht öffnen" -#: builtin/index-pack.c:1428 +#: builtin/index-pack.c:1440 #, c-format msgid "Cannot open existing pack idx file for '%s'" msgstr "Kann existierende Indexdatei für Paket '%s' nicht öffnen" -#: builtin/index-pack.c:1475 +#: builtin/index-pack.c:1487 #, c-format msgid "non delta: %d object" msgid_plural "non delta: %d objects" msgstr[0] "kein Unterschied: %d Objekt" msgstr[1] "kein Unterschied: %d Objekte" -#: builtin/index-pack.c:1482 +#: builtin/index-pack.c:1494 #, c-format msgid "chain length = %d: %lu object" msgid_plural "chain length = %d: %lu objects" msgstr[0] "Länge der Objekt-Liste = %d: %lu Objekt" msgstr[1] "Länge der Objekt-Liste = %d: %lu Objekte" -#: builtin/index-pack.c:1510 +#: builtin/index-pack.c:1523 msgid "Cannot come back to cwd" msgstr "Kann nicht zurück zu Arbeitsverzeichnis wechseln" -#: builtin/index-pack.c:1558 builtin/index-pack.c:1561 -#: builtin/index-pack.c:1573 builtin/index-pack.c:1577 +#: builtin/index-pack.c:1571 builtin/index-pack.c:1574 +#: builtin/index-pack.c:1586 builtin/index-pack.c:1590 #, c-format msgid "bad %s" msgstr "%s ist ungültig" -#: builtin/index-pack.c:1591 +#: builtin/index-pack.c:1604 msgid "--fix-thin cannot be used without --stdin" msgstr "Die Option --fix-thin kann nicht ohne --stdin verwendet werden." -#: builtin/index-pack.c:1595 builtin/index-pack.c:1605 +#: builtin/index-pack.c:1608 builtin/index-pack.c:1617 #, c-format msgid "packfile name '%s' does not end with '.pack'" msgstr "Name der Paketdatei '%s' endet nicht mit '.pack'" -#: builtin/index-pack.c:1614 +#: builtin/index-pack.c:1625 msgid "--verify with no packfile name given" msgstr "Die Option --verify wurde ohne Namen der Paketdatei angegeben." @@ -6292,11 +6349,11 @@ msgstr "kann aktuelles Arbeitsverzeichnis nicht ermitteln" #: builtin/init-db.c:465 msgid "" -"git init [-q | --quiet] [--bare] [--template=<template-directory>] [--shared" -"[=<permissions>]] [directory]" +"git init [-q | --quiet] [--bare] [--template=<template-directory>] [--" +"shared[=<permissions>]] [directory]" msgstr "" -"git init [-q | --quiet] [--bare] [--template=<Vorlagenverzeichnis>] [--shared" -"[=<Berechtigungen>]] [Verzeichnis]" +"git init [-q | --quiet] [--bare] [--template=<Vorlagenverzeichnis>] [--" +"shared[=<Berechtigungen>]] [Verzeichnis]" #: builtin/init-db.c:488 msgid "permissions" @@ -6306,7 +6363,7 @@ msgstr "Berechtigungen" msgid "specify that the git repository is to be shared amongst several users" msgstr "gibt an, dass das Git-Repository mit mehreren Benutzern geteilt wird" -#: builtin/init-db.c:491 builtin/prune-packed.c:79 builtin/repack.c:168 +#: builtin/init-db.c:491 builtin/prune-packed.c:79 builtin/repack.c:172 msgid "be quiet" msgstr "weniger Ausgaben" @@ -6346,38 +6403,38 @@ msgstr "git log [<Optionen>] [Commitbereich>] [[--] <Pfad>...]\n" msgid " or: git show [options] <object>..." msgstr " oder: git show [Optionen] <Objekt>..." -#: builtin/log.c:125 +#: builtin/log.c:127 msgid "suppress diff output" msgstr "unterdrückt Ausgabe der Unterschiede" -#: builtin/log.c:126 +#: builtin/log.c:128 msgid "show source" msgstr "zeigt Quelle" -#: builtin/log.c:127 +#: builtin/log.c:129 msgid "Use mail map file" msgstr "verwendet \"mailmap\"-Datei" -#: builtin/log.c:128 +#: builtin/log.c:130 msgid "decorate options" msgstr "decorate-Optionen" -#: builtin/log.c:231 +#: builtin/log.c:229 #, c-format msgid "Final output: %d %s\n" msgstr "letzte Ausgabe: %d %s\n" -#: builtin/log.c:473 builtin/log.c:565 +#: builtin/log.c:470 builtin/log.c:562 #, c-format msgid "Could not read object %s" msgstr "Kann Objekt %s nicht lesen." -#: builtin/log.c:589 +#: builtin/log.c:586 #, c-format msgid "Unknown type: %d" msgstr "Unbekannter Typ: %d" -#: builtin/log.c:689 +#: builtin/log.c:687 msgid "format.headers without value" msgstr "format.headers ohne Wert" @@ -6398,197 +6455,206 @@ msgstr "Brauche genau einen Commit-Bereich." msgid "Not a range." msgstr "Kein Commit-Bereich." -#: builtin/log.c:911 +#: builtin/log.c:916 msgid "Cover letter needs email format" msgstr "Anschreiben benötigt E-Mail-Format" -#: builtin/log.c:987 +#: builtin/log.c:995 #, c-format msgid "insane in-reply-to: %s" msgstr "ungültiges in-reply-to: %s" -#: builtin/log.c:1015 +#: builtin/log.c:1023 msgid "git format-patch [options] [<since> | <revision range>]" msgstr "git format-patch [Optionen] [<seit> | <Commitbereich>]" -#: builtin/log.c:1060 +#: builtin/log.c:1068 msgid "Two output directories?" msgstr "Zwei Ausgabeverzeichnisse?" -#: builtin/log.c:1175 +#: builtin/log.c:1183 msgid "use [PATCH n/m] even with a single patch" msgstr "verwendet [PATCH n/m] auch mit einzelnem Patch" -#: builtin/log.c:1178 +#: builtin/log.c:1186 msgid "use [PATCH] even with multiple patches" msgstr "verwendet [PATCH] auch mit mehreren Patches" -#: builtin/log.c:1182 +#: builtin/log.c:1190 msgid "print patches to standard out" msgstr "Ausgabe der Patches in Standard-Ausgabe" -#: builtin/log.c:1184 +#: builtin/log.c:1192 msgid "generate a cover letter" msgstr "erzeugt ein Deckblatt" -#: builtin/log.c:1186 +#: builtin/log.c:1194 msgid "use simple number sequence for output file names" msgstr "verwendet einfache Nummernfolge für die Namen der Ausgabedateien" -#: builtin/log.c:1187 +#: builtin/log.c:1195 msgid "sfx" msgstr "Dateiendung" -#: builtin/log.c:1188 +#: builtin/log.c:1196 msgid "use <sfx> instead of '.patch'" msgstr "verwendet <Dateiendung> anstatt '.patch'" -#: builtin/log.c:1190 +#: builtin/log.c:1198 msgid "start numbering patches at <n> instead of 1" msgstr "beginnt die Nummerierung der Patches bei <n> anstatt bei 1" -#: builtin/log.c:1192 +#: builtin/log.c:1200 msgid "mark the series as Nth re-roll" msgstr "kennzeichnet die Serie als n-te Fassung" -#: builtin/log.c:1194 +#: builtin/log.c:1202 msgid "Use [<prefix>] instead of [PATCH]" msgstr "verwendet [<Präfix>] anstatt [PATCH]" -#: builtin/log.c:1197 +#: builtin/log.c:1205 msgid "store resulting files in <dir>" msgstr "speichert erzeugte Dateien in <Verzeichnis>" -#: builtin/log.c:1200 +#: builtin/log.c:1208 msgid "don't strip/add [PATCH]" msgstr "[PATCH] wird nicht entfernt/hinzugefügt" -#: builtin/log.c:1203 +#: builtin/log.c:1211 msgid "don't output binary diffs" msgstr "gibt keine binären Unterschiede aus" -#: builtin/log.c:1205 +#: builtin/log.c:1213 msgid "don't include a patch matching a commit upstream" msgstr "" "schließt keine Patches ein, die einem Commit im Upstream-Branch entsprechen" -#: builtin/log.c:1207 +#: builtin/log.c:1215 msgid "show patch format instead of default (patch + stat)" msgstr "zeigt Patchformat anstatt des Standards (Patch + Zusammenfassung)" -#: builtin/log.c:1209 +#: builtin/log.c:1217 msgid "Messaging" -msgstr "Email-Einstellungen" +msgstr "E-Mail-Einstellungen" -#: builtin/log.c:1210 +#: builtin/log.c:1218 msgid "header" msgstr "Header" -#: builtin/log.c:1211 +#: builtin/log.c:1219 msgid "add email header" -msgstr "fügt Email-Header hinzu" +msgstr "fügt E-Mail-Header hinzu" -#: builtin/log.c:1212 builtin/log.c:1214 +#: builtin/log.c:1220 builtin/log.c:1222 msgid "email" -msgstr "Email" +msgstr "E-Mail" -#: builtin/log.c:1212 +#: builtin/log.c:1220 msgid "add To: header" msgstr "fügt \"To:\"-Header hinzu" -#: builtin/log.c:1214 +#: builtin/log.c:1222 msgid "add Cc: header" msgstr "fügt \"Cc:\"-Header hinzu" -#: builtin/log.c:1216 +#: builtin/log.c:1224 msgid "ident" msgstr "Ident" -#: builtin/log.c:1217 +#: builtin/log.c:1225 msgid "set From address to <ident> (or committer ident if absent)" msgstr "" "setzt \"From\"-Adresse auf <Ident> (oder Ident des Commit-Erstellers,wenn " "fehlend)" -#: builtin/log.c:1219 +#: builtin/log.c:1227 msgid "message-id" msgstr "message-id" -#: builtin/log.c:1220 +#: builtin/log.c:1228 msgid "make first mail a reply to <message-id>" -msgstr "macht aus erster Email eine Antwort zu <message-id>" +msgstr "macht aus erster E-Mail eine Antwort zu <message-id>" -#: builtin/log.c:1221 builtin/log.c:1224 +#: builtin/log.c:1229 builtin/log.c:1232 msgid "boundary" msgstr "Grenze" -#: builtin/log.c:1222 +#: builtin/log.c:1230 msgid "attach the patch" msgstr "hängt einen Patch an" -#: builtin/log.c:1225 +#: builtin/log.c:1233 msgid "inline the patch" msgstr "fügt den Patch direkt in die Nachricht ein" -#: builtin/log.c:1229 +#: builtin/log.c:1237 msgid "enable message threading, styles: shallow, deep" msgstr "aktiviert Nachrichtenverkettung, Stile: shallow, deep" -#: builtin/log.c:1231 +#: builtin/log.c:1239 msgid "signature" msgstr "Signatur" -#: builtin/log.c:1232 +#: builtin/log.c:1240 msgid "add a signature" msgstr "fügt eine Signatur hinzu" -#: builtin/log.c:1233 +#: builtin/log.c:1242 +msgid "add a signature from a file" +msgstr "fügt eine Signatur aus einer Datei hinzu" + +#: builtin/log.c:1243 msgid "don't print the patch filenames" msgstr "zeigt keine Dateinamen der Patches" -#: builtin/log.c:1307 +#: builtin/log.c:1317 #, c-format msgid "invalid ident line: %s" msgstr "Ungültige Identifikationszeile: %s" -#: builtin/log.c:1322 +#: builtin/log.c:1332 msgid "-n and -k are mutually exclusive." msgstr "Die Optionen -n und -k schließen sich gegenseitig aus." -#: builtin/log.c:1324 +#: builtin/log.c:1334 msgid "--subject-prefix and -k are mutually exclusive." msgstr "Die Optionen --subject-prefix und -k schließen sich gegenseitig aus." -#: builtin/log.c:1332 +#: builtin/log.c:1342 msgid "--name-only does not make sense" msgstr "Die Option --name-only kann nicht verwendet werden." -#: builtin/log.c:1334 +#: builtin/log.c:1344 msgid "--name-status does not make sense" msgstr "Die Option --name-status kann nicht verwendet werden." -#: builtin/log.c:1336 +#: builtin/log.c:1346 msgid "--check does not make sense" msgstr "Die Option --check kann nicht verwendet werden." -#: builtin/log.c:1359 +#: builtin/log.c:1369 msgid "standard output, or directory, which one?" msgstr "Standard-Ausgabe oder Verzeichnis, welches von beidem?" -#: builtin/log.c:1361 +#: builtin/log.c:1371 #, c-format msgid "Could not create directory '%s'" msgstr "Konnte Verzeichnis '%s' nicht erstellen." -#: builtin/log.c:1509 +#: builtin/log.c:1468 +#, c-format +msgid "unable to read signature file '%s'" +msgstr "Konnte Signatur-Datei '%s' nicht lesen" + +#: builtin/log.c:1531 msgid "Failed to create output files" msgstr "Fehler beim Erstellen der Ausgabedateien." -#: builtin/log.c:1558 +#: builtin/log.c:1579 msgid "git cherry [-v] [<upstream> [<head> [<limit>]]]" msgstr "git cherry [-v] [<Upstream> [<Branch> [<Limit>]]]" -#: builtin/log.c:1613 +#: builtin/log.c:1634 #, c-format msgid "" "Could not find a tracked remote branch, please specify <upstream> manually.\n" @@ -6596,7 +6662,7 @@ msgstr "" "Konnte gefolgten Remote-Branch nicht finden, bitte geben Sie <Upstream> " "manuell an.\n" -#: builtin/log.c:1626 builtin/log.c:1628 builtin/log.c:1640 +#: builtin/log.c:1647 builtin/log.c:1649 builtin/log.c:1661 #, c-format msgid "Unknown commit %s" msgstr "Unbekannter Commit %s" @@ -6889,33 +6955,33 @@ msgstr "Ungültiger branch.%s.mergeoptions String: %s" msgid "git write-tree failed to write a tree" msgstr "\"git write-tree\" schlug beim Schreiben eines \"Tree\"-Objektes fehl" -#: builtin/merge.c:681 +#: builtin/merge.c:678 msgid "Not handling anything other than two heads merge." msgstr "Es wird nur der Merge von zwei Branches behandelt." -#: builtin/merge.c:695 +#: builtin/merge.c:692 #, c-format msgid "Unknown option for merge-recursive: -X%s" msgstr "Unbekannte Option für merge-recursive: -X%s" -#: builtin/merge.c:709 +#: builtin/merge.c:705 #, c-format msgid "unable to write %s" msgstr "konnte %s nicht schreiben" -#: builtin/merge.c:798 +#: builtin/merge.c:794 #, c-format msgid "Could not read from '%s'" msgstr "konnte nicht von '%s' lesen" -#: builtin/merge.c:807 +#: builtin/merge.c:803 #, c-format msgid "Not committing merge; use 'git commit' to complete the merge.\n" msgstr "" -"Merge wurde nicht committet; benutzen Sie 'git commit' um den Merge " +"Merge wurde nicht committet; benutzen Sie 'git commit', um den Merge " "abzuschließen.\n" -#: builtin/merge.c:813 +#: builtin/merge.c:809 #, c-format msgid "" "Please enter a commit message to explain why this merge is necessary,\n" @@ -6924,57 +6990,57 @@ msgid "" "Lines starting with '%c' will be ignored, and an empty message aborts\n" "the commit.\n" msgstr "" -"Bitte geben Sie eine Commit-Beschreibung ein um zu erklären, warum dieser\n" +"Bitte geben Sie eine Commit-Beschreibung ein, um zu erklären, warum dieser\n" "Merge erforderlich ist, insbesondere wenn es einen aktualisierten\n" "Upstream-Branch mit einem Thema-Branch zusammenführt.\n" "\n" "Zeilen beginnend mit '%c' werden ignoriert, und eine leere Beschreibung\n" "bricht den Commit ab.\n" -#: builtin/merge.c:837 +#: builtin/merge.c:833 msgid "Empty commit message." msgstr "Leere Commit-Beschreibung" -#: builtin/merge.c:849 +#: builtin/merge.c:845 #, c-format msgid "Wonderful.\n" msgstr "Wunderbar.\n" -#: builtin/merge.c:914 +#: builtin/merge.c:908 #, c-format msgid "Automatic merge failed; fix conflicts and then commit the result.\n" msgstr "" "Automatischer Merge fehlgeschlagen; beheben Sie die Konflikte und committen " "Sie dann das Ergebnis.\n" -#: builtin/merge.c:930 +#: builtin/merge.c:924 #, c-format msgid "'%s' is not a commit" msgstr "'%s' ist kein Commit" -#: builtin/merge.c:971 +#: builtin/merge.c:965 msgid "No current branch." msgstr "Sie befinden sich auf keinem Branch." -#: builtin/merge.c:973 +#: builtin/merge.c:967 msgid "No remote for the current branch." msgstr "Kein Remote-Repository für den aktuellen Branch." -#: builtin/merge.c:975 +#: builtin/merge.c:969 msgid "No default upstream defined for the current branch." msgstr "" "Es ist kein Standard-Upstream-Branch für den aktuellen Branch definiert." -#: builtin/merge.c:980 +#: builtin/merge.c:974 #, c-format msgid "No remote-tracking branch for %s from %s" msgstr "Kein Remote-Tracking-Branch für %s von %s" -#: builtin/merge.c:1136 +#: builtin/merge.c:1130 msgid "There is no merge to abort (MERGE_HEAD missing)." msgstr "Es gibt keinen Merge zum Abbrechen (vermisse MERGE_HEAD)" -#: builtin/merge.c:1152 git-pull.sh:31 +#: builtin/merge.c:1146 git-pull.sh:31 msgid "" "You have not concluded your merge (MERGE_HEAD exists).\n" "Please, commit your changes before you can merge." @@ -6982,11 +7048,11 @@ msgstr "" "Sie haben Ihren Merge nicht abgeschlossen (MERGE_HEAD existiert).\n" "Bitte committen Sie Ihre Änderungen, bevor Sie \"merge\" ausführen können." -#: builtin/merge.c:1155 git-pull.sh:34 +#: builtin/merge.c:1149 git-pull.sh:34 msgid "You have not concluded your merge (MERGE_HEAD exists)." msgstr "Sie haben Ihren Merge nicht abgeschlossen (MERGE_HEAD existiert)." -#: builtin/merge.c:1159 +#: builtin/merge.c:1153 msgid "" "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).\n" "Please, commit your changes before you can merge." @@ -6994,105 +7060,105 @@ msgstr "" "Sie haben \"cherry-pick\" nicht abgeschlossen (CHERRY_PICK_HEAD existiert).\n" "Bitte committen Sie Ihre Änderungen, bevor Sie \"merge\" ausführen können." -#: builtin/merge.c:1162 +#: builtin/merge.c:1156 msgid "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists)." msgstr "" "Sie haben \"cherry-pick\" nicht abgeschlossen (CHERRY_PICK_HEAD existiert)." -#: builtin/merge.c:1171 +#: builtin/merge.c:1165 msgid "You cannot combine --squash with --no-ff." msgstr "Sie können --squash nicht mit --no-ff kombinieren." -#: builtin/merge.c:1180 +#: builtin/merge.c:1174 msgid "No commit specified and merge.defaultToUpstream not set." msgstr "Kein Commit angegeben und merge.defaultToUpstream ist nicht gesetzt." -#: builtin/merge.c:1212 +#: builtin/merge.c:1206 msgid "Can merge only exactly one commit into empty head" msgstr "Kann nur exakt einen Commit in einem leeren Branch zusammenführen." -#: builtin/merge.c:1215 +#: builtin/merge.c:1209 msgid "Squash commit into empty head not supported yet" msgstr "" "Bin auf einem Commit, der noch geboren wird; kann \"squash\" nicht ausführen." -#: builtin/merge.c:1217 +#: builtin/merge.c:1211 msgid "Non-fast-forward commit does not make sense into an empty head" msgstr "" "Nicht vorzuspulender Commit kann nicht in einem leeren Branch verwendet " "werden." -#: builtin/merge.c:1222 +#: builtin/merge.c:1216 #, c-format msgid "%s - not something we can merge" msgstr "%s - nichts was wir zusammenführen können" -#: builtin/merge.c:1273 +#: builtin/merge.c:1267 #, c-format msgid "Commit %s has an untrusted GPG signature, allegedly by %s." msgstr "" "Commit %s hat eine nicht vertrauenswürdige GPG-Signatur, angeblich von %s." -#: builtin/merge.c:1276 +#: builtin/merge.c:1270 #, c-format msgid "Commit %s has a bad GPG signature allegedly by %s." msgstr "Commit %s hat eine ungültige GPG-Signatur, angeblich von %s." -#: builtin/merge.c:1279 +#: builtin/merge.c:1273 #, c-format msgid "Commit %s does not have a GPG signature." msgstr "Commit %s hat keine GPG-Signatur." -#: builtin/merge.c:1282 +#: builtin/merge.c:1276 #, c-format msgid "Commit %s has a good GPG signature by %s\n" msgstr "Commit %s hat eine gültige GPG-Signatur von %s\n" -#: builtin/merge.c:1366 +#: builtin/merge.c:1357 #, c-format msgid "Updating %s..%s\n" msgstr "Aktualisiere %s..%s\n" -#: builtin/merge.c:1405 +#: builtin/merge.c:1396 #, c-format msgid "Trying really trivial in-index merge...\n" msgstr "Probiere wirklich trivialen \"in-index\"-Merge...\n" -#: builtin/merge.c:1412 +#: builtin/merge.c:1403 #, c-format msgid "Nope.\n" msgstr "Nein.\n" -#: builtin/merge.c:1444 +#: builtin/merge.c:1435 msgid "Not possible to fast-forward, aborting." msgstr "Vorspulen nicht möglich, breche ab." -#: builtin/merge.c:1467 builtin/merge.c:1546 +#: builtin/merge.c:1458 builtin/merge.c:1537 #, c-format msgid "Rewinding the tree to pristine...\n" msgstr "Rücklauf des Verzeichnisses bis zum Ursprung...\n" -#: builtin/merge.c:1471 +#: builtin/merge.c:1462 #, c-format msgid "Trying merge strategy %s...\n" msgstr "Probiere Merge-Strategie %s...\n" -#: builtin/merge.c:1537 +#: builtin/merge.c:1528 #, c-format msgid "No merge strategy handled the merge.\n" msgstr "Keine Merge-Strategie behandelt diesen Merge.\n" -#: builtin/merge.c:1539 +#: builtin/merge.c:1530 #, c-format msgid "Merge with strategy %s failed.\n" msgstr "Merge mit Strategie %s fehlgeschlagen.\n" -#: builtin/merge.c:1548 +#: builtin/merge.c:1539 #, c-format msgid "Using the %s to prepare resolving by hand.\n" -msgstr "Benutzen Sie \"%s\" um die Auflösung per Hand vorzubereiten.\n" +msgstr "Benutzen Sie \"%s\", um die Auflösung per Hand vorzubereiten.\n" -#: builtin/merge.c:1560 +#: builtin/merge.c:1551 #, c-format msgid "Automatic merge went well; stopped before committing as requested\n" msgstr "" @@ -7233,7 +7299,7 @@ msgid "Please, stage your changes to .gitmodules or stash them to proceed" msgstr "" "Bitte merken Sie Ihre Änderungen in .gitmodules zum Commit vor oder " "benutzen\n" -"Sie \"stash\" um fortzufahren." +"Sie \"stash\", um fortzufahren." #: builtin/mv.c:156 #, c-format @@ -7248,79 +7314,79 @@ msgstr "Quellverzeichnis ist leer" msgid "not under version control" msgstr "nicht unter Versionskontrolle" -#: builtin/mv.c:207 +#: builtin/mv.c:208 msgid "destination exists" msgstr "Ziel existiert bereits" -#: builtin/mv.c:215 +#: builtin/mv.c:216 #, c-format msgid "overwriting '%s'" msgstr "überschreibe '%s'" -#: builtin/mv.c:218 +#: builtin/mv.c:219 msgid "Cannot overwrite" msgstr "Kann nicht überschreiben" -#: builtin/mv.c:221 +#: builtin/mv.c:222 msgid "multiple sources for the same target" msgstr "mehrere Quellen für das selbe Ziel" -#: builtin/mv.c:223 +#: builtin/mv.c:224 msgid "destination directory does not exist" msgstr "Zielverzeichnis existiert nicht" -#: builtin/mv.c:243 +#: builtin/mv.c:244 #, c-format msgid "%s, source=%s, destination=%s" msgstr "%s, Quelle=%s, Ziel=%s" -#: builtin/mv.c:253 +#: builtin/mv.c:254 #, c-format msgid "Renaming %s to %s\n" msgstr "Benenne %s nach %s um\n" -#: builtin/mv.c:256 builtin/remote.c:726 builtin/repack.c:355 +#: builtin/mv.c:257 builtin/remote.c:725 builtin/repack.c:358 #, c-format msgid "renaming '%s' failed" msgstr "Umbenennung von '%s' fehlgeschlagen" -#: builtin/name-rev.c:258 +#: builtin/name-rev.c:255 msgid "git name-rev [options] <commit>..." msgstr "git name-rev [Optionen] <Commit>..." -#: builtin/name-rev.c:259 +#: builtin/name-rev.c:256 msgid "git name-rev [options] --all" msgstr "git name-rev [Optionen] --all" -#: builtin/name-rev.c:260 +#: builtin/name-rev.c:257 msgid "git name-rev [options] --stdin" msgstr "git name-rev [Optionen] --stdin" -#: builtin/name-rev.c:312 +#: builtin/name-rev.c:309 msgid "print only names (no SHA-1)" msgstr "zeigt nur Namen an (keine SHA-1)" -#: builtin/name-rev.c:313 +#: builtin/name-rev.c:310 msgid "only use tags to name the commits" -msgstr "verwendet nur Tags um die Commits zu benennen" +msgstr "verwendet nur Tags, um die Commits zu benennen" -#: builtin/name-rev.c:315 +#: builtin/name-rev.c:312 msgid "only use refs matching <pattern>" msgstr "verwendet nur Referenzen die <Muster> entsprechen" -#: builtin/name-rev.c:317 +#: builtin/name-rev.c:314 msgid "list all commits reachable from all refs" msgstr "listet alle Commits auf, die von allen Referenzen erreichbar sind" -#: builtin/name-rev.c:318 +#: builtin/name-rev.c:315 msgid "read from stdin" msgstr "liest von der Standard-Eingabe" -#: builtin/name-rev.c:319 +#: builtin/name-rev.c:316 msgid "allow to print `undefined` names (default)" msgstr "erlaubt Ausgabe von `undefinierten` Namen (Standard)" -#: builtin/name-rev.c:325 +#: builtin/name-rev.c:322 msgid "dereference tags in the input (internal use)" msgstr "dereferenziert Tags in der Eingabe (interne Verwendung)" @@ -7450,7 +7516,7 @@ msgstr "Konnte Ausgabe von 'show' nicht lesen." msgid "failed to finish 'show' for object '%s'" msgstr "konnte 'show' für Objekt '%s' nicht abschließen" -#: builtin/notes.c:167 builtin/tag.c:373 +#: builtin/notes.c:167 builtin/tag.c:477 #, c-format msgid "could not create file '%s'" msgstr "konnte Datei '%s' nicht erstellen" @@ -7474,12 +7540,12 @@ msgstr "Konnte Notiz-Objekt nicht schreiben" msgid "The note contents has been left in %s" msgstr "Die Notiz-Inhalte wurden in %s belassen" -#: builtin/notes.c:248 builtin/tag.c:604 +#: builtin/notes.c:248 builtin/tag.c:692 #, c-format msgid "cannot read '%s'" msgstr "kann '%s' nicht lesen" -#: builtin/notes.c:250 builtin/tag.c:607 +#: builtin/notes.c:250 builtin/tag.c:695 #, c-format msgid "could not open or read '%s'" msgstr "konnte '%s' nicht öffnen oder lesen" @@ -7487,7 +7553,7 @@ msgstr "konnte '%s' nicht öffnen oder lesen" #: builtin/notes.c:269 builtin/notes.c:320 builtin/notes.c:322 #: builtin/notes.c:382 builtin/notes.c:436 builtin/notes.c:519 #: builtin/notes.c:524 builtin/notes.c:599 builtin/notes.c:641 -#: builtin/notes.c:843 builtin/tag.c:620 +#: builtin/notes.c:843 builtin/tag.c:708 #, c-format msgid "Failed to resolve '%s' as a valid ref." msgstr "Konnte '%s' nicht als gültige Referenz auflösen." @@ -7532,7 +7598,7 @@ msgid "note contents in a file" msgstr "Notizinhalte in einer Datei" #: builtin/notes.c:415 builtin/notes.c:418 builtin/notes.c:572 -#: builtin/notes.c:575 builtin/tag.c:539 +#: builtin/notes.c:575 builtin/tag.c:627 msgid "object" msgstr "Objekt" @@ -7555,7 +7621,7 @@ msgid "" "existing notes" msgstr "" "Konnte Notizen nicht hinzufügen. Existierende Notizen für Objekt %s " -"gefunden. Verwenden Sie '-f' um die existierenden Notizen zu überschreiben." +"gefunden. Verwenden Sie '-f', um die existierenden Notizen zu überschreiben." #: builtin/notes.c:460 builtin/notes.c:537 #, c-format @@ -7583,7 +7649,7 @@ msgid "" "existing notes" msgstr "" "Kann Notizen nicht kopieren. Existierende Notizen für Objekt %s gefunden. " -"Verwenden Sie '-f' um die existierenden Notizen zu überschreiben." +"Verwenden Sie '-f', um die existierenden Notizen zu überschreiben." #: builtin/notes.c:543 #, c-format @@ -7654,7 +7720,7 @@ msgstr "Notiz-Referenz" msgid "use notes from <notes_ref>" msgstr "verwendet Notizen von <Notiz-Referenz>" -#: builtin/notes.c:978 builtin/remote.c:1593 +#: builtin/notes.c:978 builtin/remote.c:1616 #, c-format msgid "Unknown subcommand: %s" msgstr "Unbekanntes Unterkommando: %s" @@ -7680,167 +7746,169 @@ msgstr "Schreibe Objekte" #: builtin/pack-objects.c:1012 msgid "disabling bitmap writing, as some objects are not being packed" -msgstr "Deaktiviere Schreiben des Bitmap-Index, da einige Objekte nicht in\n" +msgstr "" +"Deaktiviere Schreiben des Bitmap-Index, da einige Objekte nicht in\n" "eine Pack-Datei geschrieben wurden" #: builtin/pack-objects.c:2174 msgid "Compressing objects" msgstr "Komprimiere Objekte" -#: builtin/pack-objects.c:2530 +#: builtin/pack-objects.c:2526 #, c-format msgid "unsupported index version %s" msgstr "Nicht unterstützte Staging-Area-Version %s" -#: builtin/pack-objects.c:2534 +#: builtin/pack-objects.c:2530 #, c-format msgid "bad index version '%s'" msgstr "Ungültige Staging-Area-Version '%s'" -#: builtin/pack-objects.c:2557 +#: builtin/pack-objects.c:2553 #, c-format msgid "option %s does not accept negative form" msgstr "Option %s akzeptiert keine negative Form" -#: builtin/pack-objects.c:2561 +#: builtin/pack-objects.c:2557 #, c-format msgid "unable to parse value '%s' for option %s" msgstr "konnte Wert '%s' für Option %s nicht parsen" -#: builtin/pack-objects.c:2580 +#: builtin/pack-objects.c:2576 msgid "do not show progress meter" msgstr "zeigt keine Fortschrittsanzeige" -#: builtin/pack-objects.c:2582 +#: builtin/pack-objects.c:2578 msgid "show progress meter" msgstr "zeigt Fortschrittsanzeige" -#: builtin/pack-objects.c:2584 +#: builtin/pack-objects.c:2580 msgid "show progress meter during object writing phase" msgstr "zeigt Forschrittsanzeige während der Phase des Schreibens der Objekte" -#: builtin/pack-objects.c:2587 +#: builtin/pack-objects.c:2583 msgid "similar to --all-progress when progress meter is shown" msgstr "ähnlich zu --all-progress wenn Fortschrittsanzeige darstellt wird" -#: builtin/pack-objects.c:2588 +#: builtin/pack-objects.c:2584 msgid "version[,offset]" msgstr "version[,offset]" -#: builtin/pack-objects.c:2589 +#: builtin/pack-objects.c:2585 msgid "write the pack index file in the specified idx format version" msgstr "" "schreibt die Index-Datei des Paketes in der angegebenen Indexformat-Version" -#: builtin/pack-objects.c:2592 +#: builtin/pack-objects.c:2588 msgid "maximum size of each output pack file" msgstr "maximale Größe für jede ausgegebene Paketdatei" -#: builtin/pack-objects.c:2594 +#: builtin/pack-objects.c:2590 msgid "ignore borrowed objects from alternate object store" msgstr "ignoriert geliehene Objekte von alternativem Objektspeicher" -#: builtin/pack-objects.c:2596 +#: builtin/pack-objects.c:2592 msgid "ignore packed objects" msgstr "ignoriert gepackte Objekte" -#: builtin/pack-objects.c:2598 +#: builtin/pack-objects.c:2594 msgid "limit pack window by objects" msgstr "begrenzt Paketfenster durch Objekte" -#: builtin/pack-objects.c:2600 +#: builtin/pack-objects.c:2596 msgid "limit pack window by memory in addition to object limit" msgstr "begrenzt Paketfenster, zusätzlich zur Objektbegrenzung, durch Speicher" -#: builtin/pack-objects.c:2602 +#: builtin/pack-objects.c:2598 msgid "maximum length of delta chain allowed in the resulting pack" msgstr "" "maximale Länge der erlaubten Differenzverkettung im resultierenden Paket" -#: builtin/pack-objects.c:2604 +#: builtin/pack-objects.c:2600 msgid "reuse existing deltas" msgstr "verwendet existierende Unterschiede wieder" -#: builtin/pack-objects.c:2606 +#: builtin/pack-objects.c:2602 msgid "reuse existing objects" msgstr "verwendet existierende Objekte wieder" -#: builtin/pack-objects.c:2608 +#: builtin/pack-objects.c:2604 msgid "use OFS_DELTA objects" msgstr "verwendet OFS_DELTA Objekte" -#: builtin/pack-objects.c:2610 +#: builtin/pack-objects.c:2606 msgid "use threads when searching for best delta matches" msgstr "" "verwendet Threads bei der Suche nach den besten Übereinstimmungen bei " "Unterschieden" -#: builtin/pack-objects.c:2612 +#: builtin/pack-objects.c:2608 msgid "do not create an empty pack output" msgstr "erzeugt keine leeren Pakete" -#: builtin/pack-objects.c:2614 +#: builtin/pack-objects.c:2610 msgid "read revision arguments from standard input" msgstr "liest Argumente bezüglich Commits von der Standard-Eingabe" -#: builtin/pack-objects.c:2616 +#: builtin/pack-objects.c:2612 msgid "limit the objects to those that are not yet packed" msgstr "begrenzt die Objekte zu solchen, die noch nicht gepackt wurden" -#: builtin/pack-objects.c:2619 +#: builtin/pack-objects.c:2615 msgid "include objects reachable from any reference" msgstr "schließt Objekte ein, die von jeder Referenz erreichbar sind" -#: builtin/pack-objects.c:2622 +#: builtin/pack-objects.c:2618 msgid "include objects referred by reflog entries" msgstr "" "schließt Objekte ein, die von Einträgen des Reflogs referenziert werden" -#: builtin/pack-objects.c:2625 +#: builtin/pack-objects.c:2621 msgid "output pack to stdout" msgstr "schreibt Paket in die Standard-Ausgabe" -#: builtin/pack-objects.c:2627 +#: builtin/pack-objects.c:2623 msgid "include tag objects that refer to objects to be packed" msgstr "schließt Tag-Objekte ein, die auf gepackte Objekte referenzieren" -#: builtin/pack-objects.c:2629 +#: builtin/pack-objects.c:2625 msgid "keep unreachable objects" msgstr "behält nicht erreichbare Objekte" -#: builtin/pack-objects.c:2630 parse-options.h:140 +#: builtin/pack-objects.c:2626 parse-options.h:140 msgid "time" msgstr "Zeit" -#: builtin/pack-objects.c:2631 +#: builtin/pack-objects.c:2627 msgid "unpack unreachable objects newer than <time>" msgstr "entpackt nicht erreichbare Objekte, die neuer als <Zeit> sind" -#: builtin/pack-objects.c:2634 +#: builtin/pack-objects.c:2630 msgid "create thin packs" msgstr "erzeugt dünnere Pakete" -#: builtin/pack-objects.c:2636 +#: builtin/pack-objects.c:2632 msgid "ignore packs that have companion .keep file" msgstr "ignoriert Pakete die .keep Dateien haben" -#: builtin/pack-objects.c:2638 +#: builtin/pack-objects.c:2634 msgid "pack compression level" msgstr "Komprimierungsgrad für Paketierung" -#: builtin/pack-objects.c:2640 +#: builtin/pack-objects.c:2636 msgid "do not hide commits by grafts" msgstr "verbirgt keine künstlichen Vorgänger-Commits (\"grafts\")" -#: builtin/pack-objects.c:2642 +#: builtin/pack-objects.c:2638 msgid "use a bitmap index if available to speed up counting objects" -msgstr "benutzt Bitmap-Index (falls verfügbar) zur Optimierung der Objektzählung" +msgstr "" +"benutzt Bitmap-Index (falls verfügbar) zur Optimierung der Objektzählung" -#: builtin/pack-objects.c:2644 +#: builtin/pack-objects.c:2640 msgid "write a bitmap index together with the pack index" msgstr "schreibt Bitmap-Index zusammen mit Pack-Index" -#: builtin/pack-objects.c:2723 +#: builtin/pack-objects.c:2719 msgid "Counting objects" msgstr "Zähle Objekte" @@ -7892,7 +7960,7 @@ msgstr "Kurzschrift für Tag ohne <Tag>" msgid "--delete only accepts plain target ref names" msgstr "Die Option --delete akzeptiert nur reine Referenznamen als Ziel." -#: builtin/push.c:140 +#: builtin/push.c:139 msgid "" "\n" "To choose either option permanently, see push.default in 'git help config'." @@ -7901,7 +7969,7 @@ msgstr "" "Um eine Variante permanent zu verwenden, siehe push.default in 'git help " "config'." -#: builtin/push.c:143 +#: builtin/push.c:142 #, c-format msgid "" "The upstream branch of your current branch does not match\n" @@ -7927,7 +7995,7 @@ msgstr "" " git push %s %s\n" "%s" -#: builtin/push.c:158 +#: builtin/push.c:157 #, c-format msgid "" "You are not currently on a branch.\n" @@ -7942,7 +8010,7 @@ msgstr "" "\n" " git push %s HEAD:<Name-des-Remote-Branches>\n" -#: builtin/push.c:172 +#: builtin/push.c:171 #, c-format msgid "" "The current branch %s has no upstream branch.\n" @@ -7956,13 +8024,13 @@ msgstr "" "\n" " git push --set-upstream %s %s\n" -#: builtin/push.c:180 +#: builtin/push.c:179 #, c-format msgid "The current branch %s has multiple upstream branches, refusing to push." msgstr "" "Der aktuelle Branch %s hat mehrere Upstream-Branches, \"push\" verweigert." -#: builtin/push.c:183 +#: builtin/push.c:182 #, c-format msgid "" "You are pushing to remote '%s', which is not the upstream of\n" @@ -7973,7 +8041,7 @@ msgstr "" "Branches '%s' ist, ohne anzugeben, was versendet werden soll, um welchen\n" "Remote-Branch zu aktualisieren." -#: builtin/push.c:206 +#: builtin/push.c:205 msgid "" "push.default is unset; its implicit value has changed in\n" "Git 2.0 from 'matching' to 'simple'. To squelch this message\n" @@ -8024,14 +8092,14 @@ msgstr "" "von\n" "Git benutzen.)" -#: builtin/push.c:273 +#: builtin/push.c:272 msgid "" "You didn't specify any refspecs to push, and push.default is \"nothing\"." msgstr "" "Sie haben keine Refspec für \"push\" angegeben, und push.default ist " "\"nothing\"." -#: builtin/push.c:280 +#: builtin/push.c:279 msgid "" "Updates were rejected because the tip of your current branch is behind\n" "its remote counterpart. Integrate the remote changes (e.g.\n" @@ -8045,7 +8113,7 @@ msgstr "" "Siehe auch die Sektion 'Note about fast-forwards' in 'git push --help'\n" "für weitere Details." -#: builtin/push.c:286 +#: builtin/push.c:285 msgid "" "Updates were rejected because a pushed branch tip is behind its remote\n" "counterpart. Check out this branch and integrate the remote changes\n" @@ -8059,7 +8127,7 @@ msgstr "" "Siehe auch die Sektion 'Note about fast-forwards' in 'git push --help'\n" "für weitere Details." -#: builtin/push.c:292 +#: builtin/push.c:291 msgid "" "Updates were rejected because the remote contains work that you do\n" "not have locally. This is usually caused by another repository pushing\n" @@ -8078,13 +8146,13 @@ msgstr "" "Siehe auch die Sektion 'Note about fast-forwards' in 'git push --help'\n" "für weitere Details." -#: builtin/push.c:299 +#: builtin/push.c:298 msgid "Updates were rejected because the tag already exists in the remote." msgstr "" "Aktualisierungen wurden zurückgewiesen, weil das Tag bereits\n" "im Remote-Repository existiert." -#: builtin/push.c:302 +#: builtin/push.c:301 msgid "" "You cannot update a remote ref that points at a non-commit object,\n" "or update a remote ref to make it point at a non-commit object,\n" @@ -8094,22 +8162,22 @@ msgstr "" "das kein Commit ist, oder es auf ein solches Objekt zeigen lassen, ohne\n" "die Option '--force' zu verwenden.\n" -#: builtin/push.c:361 +#: builtin/push.c:360 #, c-format msgid "Pushing to %s\n" msgstr "Versende nach %s\n" -#: builtin/push.c:365 +#: builtin/push.c:364 #, c-format msgid "failed to push some refs to '%s'" msgstr "Fehler beim Versenden einiger Referenzen nach '%s'" -#: builtin/push.c:395 +#: builtin/push.c:394 #, c-format msgid "bad repository '%s'" msgstr "ungültiges Repository '%s'" -#: builtin/push.c:396 +#: builtin/push.c:395 msgid "" "No configured push destination.\n" "Either specify the URL from the command-line or configure a remote " @@ -8131,95 +8199,95 @@ msgstr "" "\n" " git push <Name>\n" -#: builtin/push.c:411 +#: builtin/push.c:410 msgid "--all and --tags are incompatible" msgstr "Die Optionen --all und --tags sind inkompatibel." -#: builtin/push.c:412 +#: builtin/push.c:411 msgid "--all can't be combined with refspecs" msgstr "Die Option --all kann nicht mit Refspecs kombiniert werden." -#: builtin/push.c:417 +#: builtin/push.c:416 msgid "--mirror and --tags are incompatible" msgstr "Die Optionen --mirror und --tags sind inkompatibel." -#: builtin/push.c:418 +#: builtin/push.c:417 msgid "--mirror can't be combined with refspecs" msgstr "Die Option --mirror kann nicht mit Refspecs kombiniert werden." -#: builtin/push.c:423 +#: builtin/push.c:422 msgid "--all and --mirror are incompatible" msgstr "Die Optionen --all und --mirror sind inkompatibel." -#: builtin/push.c:483 +#: builtin/push.c:482 msgid "repository" msgstr "Repository" -#: builtin/push.c:484 +#: builtin/push.c:483 msgid "push all refs" msgstr "versendet alle Referenzen" -#: builtin/push.c:485 +#: builtin/push.c:484 msgid "mirror all refs" msgstr "spiegelt alle Referenzen" -#: builtin/push.c:487 +#: builtin/push.c:486 msgid "delete refs" msgstr "löscht Referenzen" -#: builtin/push.c:488 +#: builtin/push.c:487 msgid "push tags (can't be used with --all or --mirror)" msgstr "versendet Tags (kann nicht mit --all oder --mirror verwendet werden)" -#: builtin/push.c:491 +#: builtin/push.c:490 msgid "force updates" msgstr "erzwingt Aktualisierung" -#: builtin/push.c:493 +#: builtin/push.c:492 msgid "refname>:<expect" msgstr "Referenzname>:<Erwartungswert" -#: builtin/push.c:494 +#: builtin/push.c:493 msgid "require old value of ref to be at this value" msgstr "Referenz muss sich auf dem angegebenen Wert befinden" -#: builtin/push.c:496 +#: builtin/push.c:495 msgid "check" msgstr "" -#: builtin/push.c:497 +#: builtin/push.c:496 msgid "control recursive pushing of submodules" msgstr "steuert rekursiven \"push\" von Submodulen" -#: builtin/push.c:499 +#: builtin/push.c:498 msgid "use thin pack" msgstr "verwendet kleinere Pakete" -#: builtin/push.c:500 builtin/push.c:501 +#: builtin/push.c:499 builtin/push.c:500 msgid "receive pack program" msgstr "'receive pack' Programm" -#: builtin/push.c:502 +#: builtin/push.c:501 msgid "set upstream for git pull/status" msgstr "setzt Upstream für \"git pull/status\"" -#: builtin/push.c:505 +#: builtin/push.c:504 msgid "prune locally removed refs" msgstr "entfernt lokal gelöschte Referenzen" -#: builtin/push.c:507 +#: builtin/push.c:506 msgid "bypass pre-push hook" msgstr "umgeht \"pre-push hook\"" -#: builtin/push.c:508 +#: builtin/push.c:507 msgid "push missing but relevant tags" msgstr "versendet fehlende, aber relevante Tags" -#: builtin/push.c:518 +#: builtin/push.c:517 msgid "--delete is incompatible with --all, --mirror and --tags" msgstr "Die Option --delete ist inkompatibel mit --all, --mirror und --tags." -#: builtin/push.c:520 +#: builtin/push.c:519 msgid "--delete doesn't make sense without any refs" msgstr "Die Option --delete kann nur mit Referenzen verwendet werden." @@ -8450,12 +8518,12 @@ msgstr "" "Die Angabe von zu folgenden Branches kann nur mit dem Anfordern von " "Spiegelarchiven verwendet werden." -#: builtin/remote.c:185 builtin/remote.c:641 +#: builtin/remote.c:185 builtin/remote.c:640 #, c-format msgid "remote %s already exists." msgstr "externes Repository %s existiert bereits" -#: builtin/remote.c:189 builtin/remote.c:645 +#: builtin/remote.c:189 builtin/remote.c:644 #, c-format msgid "'%s' is not a valid remote name" msgstr "'%s' ist kein gültiger Name für ein Remote-Repository" @@ -8465,45 +8533,45 @@ msgstr "'%s' ist kein gültiger Name für ein Remote-Repository" msgid "Could not setup master '%s'" msgstr "Konnte symbolische Referenz für Hauptbranch von '%s' nicht einrichten" -#: builtin/remote.c:289 +#: builtin/remote.c:288 #, c-format msgid "more than one %s" msgstr "mehr als ein %s" -#: builtin/remote.c:334 +#: builtin/remote.c:333 #, c-format msgid "Could not get fetch map for refspec %s" msgstr "Konnte Fetch-Map für Refspec %s nicht bekommen" -#: builtin/remote.c:435 builtin/remote.c:443 +#: builtin/remote.c:434 builtin/remote.c:442 msgid "(matching)" msgstr "(übereinstimmend)" -#: builtin/remote.c:447 +#: builtin/remote.c:446 msgid "(delete)" msgstr "(lösche)" -#: builtin/remote.c:590 builtin/remote.c:596 builtin/remote.c:602 +#: builtin/remote.c:589 builtin/remote.c:595 builtin/remote.c:601 #, c-format msgid "Could not append '%s' to '%s'" msgstr "Konnte '%s' nicht an '%s' anhängen." -#: builtin/remote.c:634 builtin/remote.c:787 builtin/remote.c:885 +#: builtin/remote.c:633 builtin/remote.c:794 builtin/remote.c:894 #, c-format msgid "No such remote: %s" msgstr "Kein solches Remote-Repository: %s" -#: builtin/remote.c:651 +#: builtin/remote.c:650 #, c-format msgid "Could not rename config section '%s' to '%s'" msgstr "Konnte Sektion '%s' in Konfiguration nicht nach '%s' umbenennen" -#: builtin/remote.c:657 builtin/remote.c:794 +#: builtin/remote.c:656 builtin/remote.c:846 #, c-format msgid "Could not remove config section '%s'" msgstr "Konnte Sektion '%s' nicht aus Konfiguration entfernen" -#: builtin/remote.c:672 +#: builtin/remote.c:671 #, c-format msgid "" "Not updating non-default fetch refspec\n" @@ -8514,32 +8582,32 @@ msgstr "" "\t%s\n" "\tBitte aktualisieren Sie, falls notwendig, die Konfiguration manuell." -#: builtin/remote.c:678 +#: builtin/remote.c:677 #, c-format msgid "Could not append '%s'" msgstr "Konnte '%s' nicht anhängen." -#: builtin/remote.c:689 +#: builtin/remote.c:688 #, c-format msgid "Could not set '%s'" msgstr "Konnte '%s' nicht setzen" -#: builtin/remote.c:711 +#: builtin/remote.c:710 #, c-format msgid "deleting '%s' failed" msgstr "Konnte '%s' nicht löschen" -#: builtin/remote.c:745 +#: builtin/remote.c:744 #, c-format msgid "creating '%s' failed" msgstr "Konnte '%s' nicht erstellen" -#: builtin/remote.c:759 +#: builtin/remote.c:765 #, c-format msgid "Could not remove branch %s" msgstr "Konnte Branch %s nicht löschen" -#: builtin/remote.c:829 +#: builtin/remote.c:832 msgid "" "Note: A branch outside the refs/remotes/ hierarchy was not removed;\n" "to delete it, use:" @@ -8555,120 +8623,120 @@ msgstr[1] "" "entfernt;\n" "um diese zu entfernen, benutzen Sie:" -#: builtin/remote.c:938 +#: builtin/remote.c:947 #, c-format msgid " new (next fetch will store in remotes/%s)" msgstr " neu (wird bei nächstem \"fetch\" in remotes/%s gespeichert)" -#: builtin/remote.c:941 +#: builtin/remote.c:950 msgid " tracked" msgstr " gefolgt" -#: builtin/remote.c:943 +#: builtin/remote.c:952 msgid " stale (use 'git remote prune' to remove)" msgstr " veraltet (benutzen Sie 'git remote prune' zum Löschen)" -#: builtin/remote.c:945 +#: builtin/remote.c:954 msgid " ???" msgstr " ???" -#: builtin/remote.c:986 +#: builtin/remote.c:995 #, c-format msgid "invalid branch.%s.merge; cannot rebase onto > 1 branch" msgstr "ungültiges branch.%s.merge; kann Rebase nicht auf > 1 Branch ausführen" -#: builtin/remote.c:993 +#: builtin/remote.c:1002 #, c-format msgid "rebases onto remote %s" msgstr "Rebase auf Remote-Branch %s" -#: builtin/remote.c:996 +#: builtin/remote.c:1005 #, c-format msgid " merges with remote %s" msgstr " führt mit Remote-Branch %s zusammen" -#: builtin/remote.c:997 +#: builtin/remote.c:1006 msgid " and with remote" msgstr " und mit Remote-Branch" -#: builtin/remote.c:999 +#: builtin/remote.c:1008 #, c-format msgid "merges with remote %s" msgstr "führt mit Remote-Branch %s zusammen" -#: builtin/remote.c:1000 +#: builtin/remote.c:1009 msgid " and with remote" msgstr " und mit Remote-Branch" -#: builtin/remote.c:1046 +#: builtin/remote.c:1055 msgid "create" msgstr "erstellt" -#: builtin/remote.c:1049 +#: builtin/remote.c:1058 msgid "delete" msgstr "gelöscht" -#: builtin/remote.c:1053 +#: builtin/remote.c:1062 msgid "up to date" msgstr "aktuell" -#: builtin/remote.c:1056 +#: builtin/remote.c:1065 msgid "fast-forwardable" msgstr "vorspulbar" -#: builtin/remote.c:1059 +#: builtin/remote.c:1068 msgid "local out of date" msgstr "lokal nicht aktuell" -#: builtin/remote.c:1066 +#: builtin/remote.c:1075 #, c-format msgid " %-*s forces to %-*s (%s)" msgstr " %-*s erzwingt Versandt nach %-*s (%s)" -#: builtin/remote.c:1069 +#: builtin/remote.c:1078 #, c-format msgid " %-*s pushes to %-*s (%s)" msgstr " %-*s versendet nach %-*s (%s)" -#: builtin/remote.c:1073 +#: builtin/remote.c:1082 #, c-format msgid " %-*s forces to %s" msgstr " %-*s erzwingt Versand nach %s" -#: builtin/remote.c:1076 +#: builtin/remote.c:1085 #, c-format msgid " %-*s pushes to %s" msgstr " %-*s versendet nach %s" -#: builtin/remote.c:1144 +#: builtin/remote.c:1153 msgid "do not query remotes" msgstr "keine Abfrage von Remote-Repositories" -#: builtin/remote.c:1171 +#: builtin/remote.c:1180 #, c-format msgid "* remote %s" msgstr "* Remote-Repository %s" -#: builtin/remote.c:1172 +#: builtin/remote.c:1181 #, c-format msgid " Fetch URL: %s" msgstr " URL zum Abholen: %s" -#: builtin/remote.c:1173 builtin/remote.c:1318 +#: builtin/remote.c:1182 builtin/remote.c:1329 msgid "(no URL)" msgstr "(keine URL)" -#: builtin/remote.c:1182 builtin/remote.c:1184 +#: builtin/remote.c:1191 builtin/remote.c:1193 #, c-format msgid " Push URL: %s" msgstr " URL zum Versenden: %s" -#: builtin/remote.c:1186 builtin/remote.c:1188 builtin/remote.c:1190 +#: builtin/remote.c:1195 builtin/remote.c:1197 builtin/remote.c:1199 #, c-format msgid " HEAD branch: %s" msgstr " Hauptbranch: %s" -#: builtin/remote.c:1192 +#: builtin/remote.c:1201 #, c-format msgid "" " HEAD branch (remote HEAD is ambiguous, may be one of the following):\n" @@ -8676,249 +8744,308 @@ msgstr "" " Hauptbranch (externer HEAD ist mehrdeutig, könnte einer der folgenden " "sein):\n" -#: builtin/remote.c:1204 +#: builtin/remote.c:1213 #, c-format msgid " Remote branch:%s" msgid_plural " Remote branches:%s" msgstr[0] " Remote-Branch:%s" msgstr[1] " Remote-Branches:%s" -#: builtin/remote.c:1207 builtin/remote.c:1234 +#: builtin/remote.c:1216 builtin/remote.c:1243 msgid " (status not queried)" msgstr " (Zustand nicht abgefragt)" -#: builtin/remote.c:1216 +#: builtin/remote.c:1225 msgid " Local branch configured for 'git pull':" msgid_plural " Local branches configured for 'git pull':" msgstr[0] " Lokaler Branch konfiguriert für 'git pull':" msgstr[1] " Lokale Branches konfiguriert für 'git pull':" -#: builtin/remote.c:1224 +#: builtin/remote.c:1233 msgid " Local refs will be mirrored by 'git push'" msgstr " Lokale Referenzen werden von 'git push' gespiegelt" -#: builtin/remote.c:1231 +#: builtin/remote.c:1240 #, c-format msgid " Local ref configured for 'git push'%s:" msgid_plural " Local refs configured for 'git push'%s:" msgstr[0] " Lokale Referenz konfiguriert für 'git push'%s:" msgstr[1] " Lokale Referenzen konfiguriert für 'git push'%s:" -#: builtin/remote.c:1252 +#: builtin/remote.c:1261 msgid "set refs/remotes/<name>/HEAD according to remote" msgstr "setzt refs/remotes/<Name>/HEAD gemäß dem Remote-Repository" -#: builtin/remote.c:1254 +#: builtin/remote.c:1263 msgid "delete refs/remotes/<name>/HEAD" msgstr "entfernt refs/remotes/<Name>/HEAD" -#: builtin/remote.c:1269 +#: builtin/remote.c:1278 msgid "Cannot determine remote HEAD" msgstr "Kann HEAD des Remote-Repositories nicht bestimmen" -#: builtin/remote.c:1271 +#: builtin/remote.c:1280 msgid "Multiple remote HEAD branches. Please choose one explicitly with:" msgstr "" "Mehrere Hauptbranches im Remote-Repository. Bitte wählen Sie explizit einen " "aus mit:" -#: builtin/remote.c:1281 +#: builtin/remote.c:1290 #, c-format msgid "Could not delete %s" msgstr "Konnte %s nicht entfernen" -#: builtin/remote.c:1289 +#: builtin/remote.c:1298 #, c-format msgid "Not a valid ref: %s" msgstr "keine gültige Referenz: %s" -#: builtin/remote.c:1291 +#: builtin/remote.c:1300 #, c-format msgid "Could not setup %s" msgstr "Konnte %s nicht einrichten" -#: builtin/remote.c:1307 +#: builtin/remote.c:1318 #, c-format msgid " %s will become dangling!" msgstr " %s wird unreferenziert!" -#: builtin/remote.c:1308 +#: builtin/remote.c:1319 #, c-format msgid " %s has become dangling!" msgstr " %s wurde unreferenziert!" -#: builtin/remote.c:1314 +#: builtin/remote.c:1325 #, c-format msgid "Pruning %s" msgstr "entferne veraltete Branches von %s" -#: builtin/remote.c:1315 +#: builtin/remote.c:1326 #, c-format msgid "URL: %s" msgstr "URL: %s" -#: builtin/remote.c:1328 +#: builtin/remote.c:1349 #, c-format msgid " * [would prune] %s" msgstr " * [würde veralteten Branch entfernen] %s" -#: builtin/remote.c:1331 +#: builtin/remote.c:1352 #, c-format msgid " * [pruned] %s" msgstr "* [veralteten Branch entfernt] %s" -#: builtin/remote.c:1374 +#: builtin/remote.c:1397 msgid "prune remotes after fetching" msgstr "entfernt veraltete Branches im Remote-Repository nach \"fetch\"" -#: builtin/remote.c:1440 builtin/remote.c:1514 +#: builtin/remote.c:1463 builtin/remote.c:1537 #, c-format msgid "No such remote '%s'" msgstr "Kein solches Remote-Repository '%s'" -#: builtin/remote.c:1460 +#: builtin/remote.c:1483 msgid "add branch" msgstr "fügt Branch hinzu" -#: builtin/remote.c:1467 +#: builtin/remote.c:1490 msgid "no remote specified" msgstr "kein Remote-Repository angegeben" -#: builtin/remote.c:1489 +#: builtin/remote.c:1512 msgid "manipulate push URLs" msgstr "manipuliert URLs für \"push\"" -#: builtin/remote.c:1491 +#: builtin/remote.c:1514 msgid "add URL" msgstr "fügt URL hinzu" -#: builtin/remote.c:1493 +#: builtin/remote.c:1516 msgid "delete URLs" msgstr "löscht URLs" -#: builtin/remote.c:1500 +#: builtin/remote.c:1523 msgid "--add --delete doesn't make sense" msgstr "" "Die Optionen --add und --delete können nicht gemeinsam verwendet werden." -#: builtin/remote.c:1540 +#: builtin/remote.c:1563 #, c-format msgid "Invalid old URL pattern: %s" msgstr "ungültiges altes URL Format: %s" -#: builtin/remote.c:1548 +#: builtin/remote.c:1571 #, c-format msgid "No such URL found: %s" msgstr "Keine solche URL gefunden: %s" -#: builtin/remote.c:1550 +#: builtin/remote.c:1573 msgid "Will not delete all non-push URLs" msgstr "Werde keine URLs entfernen, die nicht für \"push\" bestimmt sind" -#: builtin/remote.c:1564 +#: builtin/remote.c:1587 msgid "be verbose; must be placed before a subcommand" msgstr "erweiterte Ausgaben; muss vor einem Unterkommando angegeben werden" -#: builtin/repack.c:16 +#: builtin/repack.c:17 msgid "git repack [options]" msgstr "git repack [Optionen]" -#: builtin/repack.c:156 +#: builtin/repack.c:160 msgid "pack everything in a single pack" msgstr "packt alles in eine einzige Pack-Datei" -#: builtin/repack.c:158 +#: builtin/repack.c:162 msgid "same as -a, and turn unreachable objects loose" msgstr "genau wie -a, unerreichbare Objekte werden aber nicht gelöscht" -#: builtin/repack.c:161 +#: builtin/repack.c:165 msgid "remove redundant packs, and run git-prune-packed" msgstr "entfernt redundante Pakete und führt \"git-prune-packed\" aus" -#: builtin/repack.c:163 +#: builtin/repack.c:167 msgid "pass --no-reuse-delta to git-pack-objects" msgstr "übergibt --no-reuse-delta an git-pack-objects" -#: builtin/repack.c:165 +#: builtin/repack.c:169 msgid "pass --no-reuse-object to git-pack-objects" msgstr "übergibt --no-reuse-object an git-pack-objects" -#: builtin/repack.c:167 +#: builtin/repack.c:171 msgid "do not run git-update-server-info" msgstr "git-update-server-info nicht ausführen" -#: builtin/repack.c:170 +#: builtin/repack.c:174 msgid "pass --local to git-pack-objects" msgstr "übergibt --local an git-pack-objects" -#: builtin/repack.c:172 +#: builtin/repack.c:176 msgid "write bitmap index" msgstr "schreibt Bitmap-Index" -#: builtin/repack.c:173 +#: builtin/repack.c:177 msgid "approxidate" msgstr "Datumsangabe" -#: builtin/repack.c:174 +#: builtin/repack.c:178 msgid "with -A, do not loosen objects older than this" msgstr "mit -A, löscht keine Objekte älter als dieses Datum" -#: builtin/repack.c:176 +#: builtin/repack.c:180 msgid "size of the window used for delta compression" msgstr "Größe des Fensters für die Delta-Kompression" -#: builtin/repack.c:177 builtin/repack.c:181 +#: builtin/repack.c:181 builtin/repack.c:185 msgid "bytes" msgstr "Bytes" -#: builtin/repack.c:178 +#: builtin/repack.c:182 msgid "same as the above, but limit memory size instead of entries count" msgstr "" "gleiches wie oben, limitiert aber die Speichergröße anstatt der\n" "Anzahl der Einträge" -#: builtin/repack.c:180 +#: builtin/repack.c:184 msgid "limits the maximum delta depth" msgstr "limitiert die maximale Delta-Tiefe" -#: builtin/repack.c:182 +#: builtin/repack.c:186 msgid "maximum size of each packfile" msgstr "maximale Größe für jede Paketdatei" -#: builtin/repack.c:184 +#: builtin/repack.c:188 msgid "repack objects in packs marked with .keep" -msgstr "packt Objekte um, die sich in mit .keep markierten Pack-Dateien befinden" +msgstr "" +"packt Objekte um, die sich in mit .keep markierten Pack-Dateien befinden" -#: builtin/repack.c:371 +#: builtin/repack.c:374 #, c-format msgid "removing '%s' failed" msgstr "Löschen von '%s' fehlgeschlagen" -#: builtin/replace.c:17 +#: builtin/replace.c:19 msgid "git replace [-f] <object> <replacement>" msgstr "git replace [-f] <Objekt> <Ersetzung>" -#: builtin/replace.c:18 +#: builtin/replace.c:20 +msgid "git replace [-f] --edit <object>" +msgstr "git replace [-f] --edit <Objekt>" + +#: builtin/replace.c:21 +msgid "git replace [-f] --graft <commit> [<parent>...]" +msgstr "git replace [-f] --graft <Commit> [<Eltern-Commit>...]" + +#: builtin/replace.c:22 msgid "git replace -d <object>..." msgstr "git replace -d <Objekt>..." -#: builtin/replace.c:19 +#: builtin/replace.c:23 msgid "git replace [--format=<format>] [-l [<pattern>]]" msgstr "git replace [--format=<Format>] [-l [<Muster>]]" -#: builtin/replace.c:174 +#: builtin/replace.c:322 builtin/replace.c:360 builtin/replace.c:388 +#, c-format +msgid "Not a valid object name: '%s'" +msgstr "Ungültiger Objekt-Name: '%s'" + +#: builtin/replace.c:352 +#, c-format +msgid "bad mergetag in commit '%s'" +msgstr "ungültiger Merge-Tag in Commit '%s'" + +#: builtin/replace.c:354 +#, c-format +msgid "malformed mergetag in commit '%s'" +msgstr "fehlerhafter Merge-Tag in Commit '%s'" + +#: builtin/replace.c:365 +#, c-format +msgid "" +"original commit '%s' contains mergetag '%s' that is discarded; use --edit " +"instead of --graft" +msgstr "" +"Der ursprüngliche Commit '%s' enthält Merge-Tag '%s', der verworfen\n" +"wird; benutzen Sie --edit anstatt --graft" + +#: builtin/replace.c:398 +#, c-format +msgid "the original commit '%s' has a gpg signature." +msgstr "Der ursprüngliche Commit '%s' hat eine GPG-Signatur." + +#: builtin/replace.c:399 +msgid "the signature will be removed in the replacement commit!" +msgstr "Die Signatur wird in dem Ersetzungs-Commit entfernt!" + +#: builtin/replace.c:405 +#, c-format +msgid "could not write replacement commit for: '%s'" +msgstr "Konnte Ersetzungs-Commit für '%s' nicht schreiben" + +#: builtin/replace.c:429 msgid "list replace refs" msgstr "listet ersetzende Referenzen auf" -#: builtin/replace.c:175 +#: builtin/replace.c:430 msgid "delete replace refs" msgstr "löscht ersetzende Referenzen" -#: builtin/replace.c:176 +#: builtin/replace.c:431 +msgid "edit existing object" +msgstr "bearbeitet existierendes Objekt" + +#: builtin/replace.c:432 +msgid "change a commit's parents" +msgstr "ändert Eltern-Commits eines Commits" + +#: builtin/replace.c:433 msgid "replace the ref if it exists" msgstr "ersetzt die Referenz, wenn sie existiert" -#: builtin/replace.c:177 +#: builtin/replace.c:434 +msgid "do not pretty-print contents for --edit" +msgstr "keine ansprechende Anzeige des Objektinhaltes für --edit" + +#: builtin/replace.c:435 msgid "use this format" msgstr "benutzt das angegebene Format" @@ -8987,100 +9114,100 @@ msgstr "HEAD ist jetzt bei %s" msgid "Cannot do a %s reset in the middle of a merge." msgstr "Kann keinen '%s'-Reset durchführen, während ein Merge im Gange ist." -#: builtin/reset.c:273 +#: builtin/reset.c:275 msgid "be quiet, only report errors" msgstr "weniger Ausgaben, meldet nur Fehler" -#: builtin/reset.c:275 +#: builtin/reset.c:277 msgid "reset HEAD and index" msgstr "setzt HEAD und Staging-Area um" -#: builtin/reset.c:276 +#: builtin/reset.c:278 msgid "reset only HEAD" msgstr "setzt nur HEAD um" -#: builtin/reset.c:278 builtin/reset.c:280 +#: builtin/reset.c:280 builtin/reset.c:282 msgid "reset HEAD, index and working tree" msgstr "setzt HEAD, Staging-Area und Arbeitsverzeichnis um" -#: builtin/reset.c:282 +#: builtin/reset.c:284 msgid "reset HEAD but keep local changes" msgstr "setzt HEAD um, behält aber lokale Änderungen" -#: builtin/reset.c:285 +#: builtin/reset.c:287 msgid "record only the fact that removed paths will be added later" msgstr "speichert nur, dass gelöschte Pfade später hinzugefügt werden sollen" -#: builtin/reset.c:302 +#: builtin/reset.c:304 #, c-format msgid "Failed to resolve '%s' as a valid revision." msgstr "Konnte '%s' nicht als gültigen Commit auflösen." -#: builtin/reset.c:305 builtin/reset.c:313 +#: builtin/reset.c:307 builtin/reset.c:315 #, c-format msgid "Could not parse object '%s'." msgstr "Konnte Objekt '%s' nicht parsen." -#: builtin/reset.c:310 +#: builtin/reset.c:312 #, c-format msgid "Failed to resolve '%s' as a valid tree." msgstr "Konnte '%s' nicht als gültiges \"Tree\"-Objekt auflösen." -#: builtin/reset.c:319 +#: builtin/reset.c:321 msgid "--patch is incompatible with --{hard,mixed,soft}" msgstr "--patch ist inkompatibel mit --{hard,mixed,soft}" -#: builtin/reset.c:328 +#: builtin/reset.c:330 msgid "--mixed with paths is deprecated; use 'git reset -- <paths>' instead." msgstr "" "--mixed mit Pfaden ist veraltet; benutzen Sie stattdessen 'git reset -- " "<Pfade>'." -#: builtin/reset.c:330 +#: builtin/reset.c:332 #, c-format msgid "Cannot do %s reset with paths." msgstr "Ein '%s'-Reset mit Pfaden ist nicht möglich." -#: builtin/reset.c:340 +#: builtin/reset.c:342 #, c-format msgid "%s reset is not allowed in a bare repository" msgstr "'%s'-Reset ist in einem Bare-Repository nicht erlaubt" -#: builtin/reset.c:344 +#: builtin/reset.c:346 msgid "-N can only be used with --mixed" msgstr "-N kann nur mit -mixed benutzt werden" -#: builtin/reset.c:361 +#: builtin/reset.c:363 msgid "Unstaged changes after reset:" msgstr "Nicht zum Commit vorgemerkte Änderungen nach Zurücksetzung:" -#: builtin/reset.c:367 +#: builtin/reset.c:369 #, c-format msgid "Could not reset index file to revision '%s'." msgstr "Konnte Staging-Area-Datei nicht zu Commit '%s' setzen." -#: builtin/reset.c:372 +#: builtin/reset.c:373 msgid "Could not write new index file." msgstr "Konnte neue Staging-Area-Datei nicht schreiben." -#: builtin/rev-parse.c:359 +#: builtin/rev-parse.c:360 msgid "git rev-parse --parseopt [options] -- [<args>...]" msgstr "git rev-parse --parseopt [Optionen] -- [<Argumente>...]" -#: builtin/rev-parse.c:364 +#: builtin/rev-parse.c:365 msgid "keep the `--` passed as an arg" msgstr "lässt `--` als Argument" -#: builtin/rev-parse.c:366 +#: builtin/rev-parse.c:367 msgid "stop parsing after the first non-option argument" msgstr "stoppt das Parsen nach dem ersten Argument was keine Option ist" -#: builtin/rev-parse.c:369 +#: builtin/rev-parse.c:370 msgid "output in stuck long form" msgstr "" "Ausgabe in Langform mit Argumenten an den Optionen (getrennt durch '=')" -#: builtin/rev-parse.c:497 +#: builtin/rev-parse.c:498 msgid "" "git rev-parse --parseopt [options] -- [<args>...]\n" " or: git rev-parse --sq-quote [<arg>...]\n" @@ -9232,7 +9359,7 @@ msgid "" "(use -f to force removal)" msgstr "" "\n" -"(benutzen Sie -f um die Löschung zu erzwingen)" +"(benutzen Sie -f, um die Löschung zu erzwingen)" #: builtin/rm.c:240 msgid "the following file has changes staged in the index:" @@ -9246,7 +9373,7 @@ msgid "" "(use --cached to keep the file, or -f to force removal)" msgstr "" "\n" -"(benutzen Sie --cached um die Datei zu behalten, oder -f um die Entfernung " +"(benutzen Sie --cached, um die Datei zu behalten, oder -f, um die Entfernung " "zu erzwingen)" #: builtin/rm.c:252 @@ -9304,7 +9431,7 @@ msgstr "Unterdrückt Commit-Beschreibungen, liefert nur Anzahl der Commits" #: builtin/shortlog.c:234 msgid "Show the email address of each author" -msgstr "Zeigt die Email-Adresse von jedem Autor" +msgstr "Zeigt die E-Mail-Adresse von jedem Autor" #: builtin/shortlog.c:235 msgid "w[,i1[,i2]]" @@ -9396,11 +9523,11 @@ msgstr "zeigt die <n> jüngsten Einträge im Reflog beginnend an der Basis" #: builtin/show-ref.c:10 msgid "" -"git show-ref [-q|--quiet] [--verify] [--head] [-d|--dereference] [-s|--hash" -"[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [pattern*] " +"git show-ref [-q|--quiet] [--verify] [--head] [-d|--dereference] [-s|--" +"hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [pattern*] " msgstr "" -"git show-ref [-q|--quiet] [--verify] [--head] [-d|--dereference] [-s|--hash" -"[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [pattern*] " +"git show-ref [-q|--quiet] [--verify] [--head] [-d|--dereference] [-s|--" +"hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [pattern*] " #: builtin/show-ref.c:11 msgid "git show-ref --exclude-existing[=pattern] < ref-list" @@ -9462,11 +9589,11 @@ msgstr "löscht symbolische Referenzen" msgid "shorten ref output" msgstr "verkürzte Ausgabe der Referenzen" -#: builtin/symbolic-ref.c:43 builtin/update-ref.c:255 +#: builtin/symbolic-ref.c:43 builtin/update-ref.c:349 msgid "reason" msgstr "Grund" -#: builtin/symbolic-ref.c:43 builtin/update-ref.c:255 +#: builtin/symbolic-ref.c:43 builtin/update-ref.c:349 msgid "reason of the update" msgstr "Grund für die Aktualisierung" @@ -9493,203 +9620,212 @@ msgstr "" msgid "git tag -v <tagname>..." msgstr "git tag -v <Tagname>..." -#: builtin/tag.c:67 +#: builtin/tag.c:69 #, c-format msgid "malformed object at '%s'" msgstr "fehlerhaftes Objekt bei '%s'" -#: builtin/tag.c:239 +#: builtin/tag.c:301 #, c-format msgid "tag name too long: %.*s..." msgstr "Tagname zu lang: %.*s..." -#: builtin/tag.c:244 +#: builtin/tag.c:306 #, c-format msgid "tag '%s' not found." msgstr "Tag '%s' nicht gefunden." -#: builtin/tag.c:259 +#: builtin/tag.c:321 #, c-format msgid "Deleted tag '%s' (was %s)\n" msgstr "Tag '%s' gelöscht (war %s)\n" -#: builtin/tag.c:271 +#: builtin/tag.c:333 #, c-format msgid "could not verify the tag '%s'" msgstr "Konnte Tag '%s' nicht verifizieren" -#: builtin/tag.c:281 +#: builtin/tag.c:343 #, c-format msgid "" "\n" -"Write a tag message\n" +"Write a message for tag:\n" +" %s\n" "Lines starting with '%c' will be ignored.\n" msgstr "" "\n" -"Geben Sie eine Tag-Beschreibung ein.\n" -"Zeilen, die mit '%c' beginnen, werden ignoriert.\n" +"Geben Sie eine Beschreibung für Tag\n" +" %s\n" +"ein. Zeilen, die mit '%c' beginnen, werden ignoriert.\n" -#: builtin/tag.c:285 +#: builtin/tag.c:347 #, c-format msgid "" "\n" -"Write a tag message\n" +"Write a message for tag:\n" +" %s\n" "Lines starting with '%c' will be kept; you may remove them yourself if you " "want to.\n" msgstr "" "\n" -"Geben Sie eine Tag-Beschreibung ein.\n" -"Zeilen, die mit '%c' beginnen, werden behalten; Sie dürfen diese\n" +"Geben Sie eine Beschreibung für Tag\n" +" %s\n" +"ein. Zeilen, die mit '%c' beginnen, werden behalten; Sie dürfen diese\n" "selbst entfernen wenn Sie möchten.\n" -#: builtin/tag.c:324 +#: builtin/tag.c:371 +#, c-format +msgid "unsupported sort specification '%s'" +msgstr "Nicht unterstützte Angabe für \"--sort\" '%s'" + +#: builtin/tag.c:373 +#, c-format +msgid "unsupported sort specification '%s' in variable '%s'" +msgstr "Nicht unterstützte Angabe für \"--sort\" '%s' in Variable '%s'" + +#: builtin/tag.c:428 msgid "unable to sign the tag" msgstr "konnte Tag nicht signieren" -#: builtin/tag.c:326 +#: builtin/tag.c:430 msgid "unable to write tag file" msgstr "konnte Tag-Datei nicht schreiben" -#: builtin/tag.c:351 +#: builtin/tag.c:455 msgid "bad object type." msgstr "ungültiger Objekt-Typ" -#: builtin/tag.c:364 +#: builtin/tag.c:468 msgid "tag header too big." msgstr "Tag-Kopf zu groß." -#: builtin/tag.c:400 +#: builtin/tag.c:504 msgid "no tag message?" msgstr "keine Tag-Beschreibung?" -#: builtin/tag.c:406 +#: builtin/tag.c:510 #, c-format msgid "The tag message has been left in %s\n" msgstr "Die Tag-Beschreibung wurde gelassen in %s\n" -#: builtin/tag.c:455 +#: builtin/tag.c:559 msgid "switch 'points-at' requires an object" msgstr "Option 'points-at' erfordert ein Objekt" -#: builtin/tag.c:457 +#: builtin/tag.c:561 #, c-format msgid "malformed object name '%s'" msgstr "fehlerhafter Objekt-Name '%s'" -#: builtin/tag.c:480 -#, c-format -msgid "unsupported sort specification %s" -msgstr "Nicht unterstützte Angabe für \"--sort\": %s" - -#: builtin/tag.c:500 +#: builtin/tag.c:588 msgid "list tag names" msgstr "listet Tagnamen auf" -#: builtin/tag.c:502 +#: builtin/tag.c:590 msgid "print <n> lines of each tag message" msgstr "zeigt <n> Zeilen jeder Tag-Beschreibung" -#: builtin/tag.c:504 +#: builtin/tag.c:592 msgid "delete tags" msgstr "löscht Tags" -#: builtin/tag.c:505 +#: builtin/tag.c:593 msgid "verify tags" msgstr "überprüft Tags" -#: builtin/tag.c:507 +#: builtin/tag.c:595 msgid "Tag creation options" msgstr "Optionen für Erstellung von Tags" -#: builtin/tag.c:509 +#: builtin/tag.c:597 msgid "annotated tag, needs a message" msgstr "annotiertes Tag, benötigt eine Beschreibung" -#: builtin/tag.c:511 +#: builtin/tag.c:599 msgid "tag message" msgstr "Tag-Beschreibung" -#: builtin/tag.c:513 +#: builtin/tag.c:601 msgid "annotated and GPG-signed tag" msgstr "annotiertes und GPG-signiertes Tag" -#: builtin/tag.c:517 +#: builtin/tag.c:605 msgid "use another key to sign the tag" -msgstr "verwendet einen anderen Schlüssel um das Tag zu signieren" +msgstr "verwendet einen anderen Schlüssel, um das Tag zu signieren" -#: builtin/tag.c:518 +#: builtin/tag.c:606 msgid "replace the tag if exists" msgstr "ersetzt das Tag, wenn es existiert" -#: builtin/tag.c:519 +#: builtin/tag.c:607 msgid "show tag list in columns" msgstr "zeigt Liste der Tags in Spalten" -#: builtin/tag.c:521 +#: builtin/tag.c:609 msgid "sort tags" msgstr "sortiert Tags" -#: builtin/tag.c:525 +#: builtin/tag.c:613 msgid "Tag listing options" msgstr "Optionen für Auflistung der Tags" -#: builtin/tag.c:528 builtin/tag.c:534 +#: builtin/tag.c:616 builtin/tag.c:622 msgid "print only tags that contain the commit" msgstr "gibt nur Tags aus, die diesen Commit beinhalten" -#: builtin/tag.c:540 +#: builtin/tag.c:628 msgid "print only tags of the object" msgstr "gibt nur Tags von dem Objekt aus" -#: builtin/tag.c:566 +#: builtin/tag.c:654 msgid "--column and -n are incompatible" msgstr "--column und -n sind inkompatibel" -#: builtin/tag.c:578 +#: builtin/tag.c:666 msgid "--sort and -n are incompatible" msgstr "--sort und -n sind inkompatibel" -#: builtin/tag.c:585 +#: builtin/tag.c:673 msgid "-n option is only allowed with -l." msgstr "-n Option ist nur erlaubt mit -l." -#: builtin/tag.c:587 +#: builtin/tag.c:675 msgid "--contains option is only allowed with -l." msgstr "--contains Option ist nur erlaubt mit -l." -#: builtin/tag.c:589 +#: builtin/tag.c:677 msgid "--points-at option is only allowed with -l." msgstr "--points-at Option ist nur erlaubt mit -l." -#: builtin/tag.c:597 +#: builtin/tag.c:685 msgid "only one -F or -m option is allowed." msgstr "nur eine -F oder -m Option ist erlaubt." -#: builtin/tag.c:617 +#: builtin/tag.c:705 msgid "too many params" msgstr "zu viele Parameter" -#: builtin/tag.c:623 +#: builtin/tag.c:711 #, c-format msgid "'%s' is not a valid tag name." msgstr "'%s' ist kein gültiger Tagname." -#: builtin/tag.c:628 +#: builtin/tag.c:716 #, c-format msgid "tag '%s' already exists" msgstr "Tag '%s' existiert bereits" -#: builtin/tag.c:646 +#: builtin/tag.c:734 #, c-format msgid "%s: cannot lock the ref" msgstr "%s: kann Referenz nicht sperren" -#: builtin/tag.c:648 +#: builtin/tag.c:736 #, c-format msgid "%s: cannot update the ref" msgstr "%s: kann Referenz nicht aktualisieren" -#: builtin/tag.c:650 +#: builtin/tag.c:738 #, c-format msgid "Updated tag '%s' (was %s)\n" msgstr "Tag '%s' aktualisiert (war %s)\n" @@ -9698,126 +9834,130 @@ msgstr "Tag '%s' aktualisiert (war %s)\n" msgid "Unpacking objects" msgstr "Entpacke Objekte" -#: builtin/update-index.c:399 +#: builtin/update-index.c:402 msgid "git update-index [options] [--] [<file>...]" msgstr "git update-index [Optionen] [--] [<Datei>...]" -#: builtin/update-index.c:748 +#: builtin/update-index.c:755 msgid "continue refresh even when index needs update" msgstr "" "Aktualisierung fortsetzen, auch wenn die Staging-Area aktualisiert werden " "muss" -#: builtin/update-index.c:751 +#: builtin/update-index.c:758 msgid "refresh: ignore submodules" msgstr "Aktualisierung: ignoriert Submodule" -#: builtin/update-index.c:754 +#: builtin/update-index.c:761 msgid "do not ignore new files" msgstr "ignoriert keine neuen Dateien" -#: builtin/update-index.c:756 +#: builtin/update-index.c:763 msgid "let files replace directories and vice-versa" msgstr "lässt Dateien Verzeichnisse ersetzen, und umgedreht" -#: builtin/update-index.c:758 +#: builtin/update-index.c:765 msgid "notice files missing from worktree" msgstr "beachtet fehlende Dateien im Arbeitsverzeichnis" -#: builtin/update-index.c:760 +#: builtin/update-index.c:767 msgid "refresh even if index contains unmerged entries" msgstr "" "aktualisiert, auch wenn die Staging-Area nicht zusammengeführte Einträge " "beinhaltet" -#: builtin/update-index.c:763 +#: builtin/update-index.c:770 msgid "refresh stat information" msgstr "aktualisiert Dateiinformationen" -#: builtin/update-index.c:767 +#: builtin/update-index.c:774 msgid "like --refresh, but ignore assume-unchanged setting" msgstr "wie --refresh, ignoriert aber \"assume-unchanged\" Einstellung" -#: builtin/update-index.c:771 +#: builtin/update-index.c:778 msgid "<mode>,<object>,<path>" msgstr "<Modus>,<Objekt>,<Pfad>" -#: builtin/update-index.c:772 +#: builtin/update-index.c:779 msgid "add the specified entry to the index" msgstr "merkt den angegebenen Eintrag zum Commit vor" -#: builtin/update-index.c:776 +#: builtin/update-index.c:783 msgid "(+/-)x" msgstr "(+/-)x" -#: builtin/update-index.c:777 +#: builtin/update-index.c:784 msgid "override the executable bit of the listed files" msgstr "überschreibt das \"ausführbar\"-Bit der aufgelisteten Dateien" -#: builtin/update-index.c:781 +#: builtin/update-index.c:788 msgid "mark files as \"not changing\"" msgstr "betrachte diese Datei immer als unverändert" -#: builtin/update-index.c:784 +#: builtin/update-index.c:791 msgid "clear assumed-unchanged bit" msgstr "löscht \"assumed-unchanged\"-Bit" -#: builtin/update-index.c:787 +#: builtin/update-index.c:794 msgid "mark files as \"index-only\"" msgstr "markiert Dateien als \"index-only\"" -#: builtin/update-index.c:790 +#: builtin/update-index.c:797 msgid "clear skip-worktree bit" msgstr "löscht \"skip-worktree\"-Bit" -#: builtin/update-index.c:793 +#: builtin/update-index.c:800 msgid "add to index only; do not add content to object database" msgstr "" "merkt die Änderungen nur zum Commit vor; Inhalt wird nicht der Objekt-" "Datenbank hinzugefügt" -#: builtin/update-index.c:795 +#: builtin/update-index.c:802 msgid "remove named paths even if present in worktree" msgstr "" "löscht benannte Pfade, auch wenn sie sich im Arbeitsverzeichnis befinden" -#: builtin/update-index.c:797 +#: builtin/update-index.c:804 msgid "with --stdin: input lines are terminated by null bytes" msgstr "mit --stdin: eingegebene Zeilen sind durch NUL-Bytes abgeschlossen" -#: builtin/update-index.c:799 +#: builtin/update-index.c:806 msgid "read list of paths to be updated from standard input" msgstr "liest Liste der zu aktualisierenden Pfade von der Standard-Eingabe" -#: builtin/update-index.c:803 +#: builtin/update-index.c:810 msgid "add entries from standard input to the index" msgstr "merkt Einträge von der Standard-Eingabe zum Commit vor" -#: builtin/update-index.c:807 +#: builtin/update-index.c:814 msgid "repopulate stages #2 and #3 for the listed paths" msgstr "" "wiederholtes Einpflegen der Zustände #2 und #3 für die aufgelisteten Pfade" -#: builtin/update-index.c:811 +#: builtin/update-index.c:818 msgid "only update entries that differ from HEAD" msgstr "aktualisiert nur Einträge, die unterschiedlich zu HEAD sind" -#: builtin/update-index.c:815 +#: builtin/update-index.c:822 msgid "ignore files missing from worktree" msgstr "ignoriert fehlende Dateien im Arbeitsverzeichnis" -#: builtin/update-index.c:818 +#: builtin/update-index.c:825 msgid "report actions to standard output" msgstr "gibt die Aktionen in der Standard-Ausgabe aus" -#: builtin/update-index.c:820 +#: builtin/update-index.c:827 msgid "(for porcelains) forget saved unresolved conflicts" msgstr "(für Fremdprogramme) keine gespeicherten, nicht aufgelöste Konflikte" -#: builtin/update-index.c:824 +#: builtin/update-index.c:831 msgid "write index in this format" msgstr "schreibt Staging-Area-Datei in diesem Format" +#: builtin/update-index.c:833 +msgid "enable or disable split index" +msgstr "Aktivierung oder Deaktivierung des Splittings der Staging-Area" + #: builtin/update-ref.c:9 msgid "git update-ref [options] -d <refname> [<oldval>]" msgstr "git update-ref [Optionen] -d <Referenzname> [<alterWert>]" @@ -9830,19 +9970,19 @@ msgstr "git update-ref [Optionen] <Referenzname> <neuerWert> [<alterWert>]" msgid "git update-ref [options] --stdin [-z]" msgstr "git update-ref [Optionen] --stdin [-z]" -#: builtin/update-ref.c:256 +#: builtin/update-ref.c:350 msgid "delete the reference" msgstr "löscht diese Referenz" -#: builtin/update-ref.c:258 +#: builtin/update-ref.c:352 msgid "update <refname> not the one it points to" msgstr "aktualisiert <Referenzname>, nicht den Verweis" -#: builtin/update-ref.c:259 +#: builtin/update-ref.c:353 msgid "stdin has NUL-terminated arguments" msgstr "Standard-Eingabe hat durch NUL-Zeichen abgeschlossene Argumente" -#: builtin/update-ref.c:260 +#: builtin/update-ref.c:354 msgid "read updates from stdin" msgstr "liest Aktualisierungen von der Standard-Eingabe" @@ -9854,15 +9994,23 @@ msgstr "git update-server-info [--force]" msgid "update the info files from scratch" msgstr "aktualisiert die Informationsdateien von Grund auf" -#: builtin/verify-pack.c:56 +#: builtin/verify-commit.c:17 +msgid "git verify-commit [-v|--verbose] <commit>..." +msgstr "git verify-commit [-v|--verbose] <Commit>..." + +#: builtin/verify-commit.c:75 +msgid "print commit contents" +msgstr "gibt Commit-Inhalte aus" + +#: builtin/verify-pack.c:55 msgid "git verify-pack [-v|--verbose] [-s|--stat-only] <pack>..." msgstr "git verify-pack [-v|--verbose] [-s|--stat-only] <Paket>..." -#: builtin/verify-pack.c:66 +#: builtin/verify-pack.c:65 msgid "verbose" msgstr "erweiterte Ausgaben" -#: builtin/verify-pack.c:68 +#: builtin/verify-pack.c:67 msgid "show statistics only" msgstr "zeigt nur Statistiken" @@ -9898,7 +10046,7 @@ msgid "" msgstr "" "'git help -a' und 'git help -g' listet verfügbare Unterkommandos und\n" "einige Anleitungen zu Git-Konzepten auf. Benutzen Sie 'git help <Kommando>'\n" -"oder 'git help <Konzept>' um mehr über ein spezifisches Kommando oder\n" +"oder 'git help <Konzept>', um mehr über ein spezifisches Kommando oder\n" "Konzept zu erfahren." #: parse-options.h:143 @@ -10052,7 +10200,7 @@ msgstr "" #: git-am.sh:141 msgid "Using index info to reconstruct a base tree..." msgstr "" -"Verwende Informationen aus der Staging-Area um einen Basisverzeichnis " +"Verwende Informationen aus der Staging-Area, um einen Basisverzeichnis " "nachzustellen" #: git-am.sh:156 @@ -10109,7 +10257,7 @@ msgid "" "Use \"git am --abort\" to remove it." msgstr "" "Stray $dotest Verzeichnis gefunden.\n" -"Benutzen Sie \"git am --abort\" um es zu entfernen." +"Benutzen Sie \"git am --abort\", um es zu entfernen." #: git-am.sh:535 msgid "Resolve operation not in progress, we are not resuming." @@ -10136,7 +10284,7 @@ msgstr "" #: git-am.sh:732 msgid "Patch does not have a valid e-mail address." -msgstr "Patch enthält keine gültige Email-Adresse." +msgstr "Patch enthält keine gültige E-Mail-Adresse." #: git-am.sh:779 msgid "cannot be interactive without stdin connected to a terminal." @@ -10367,7 +10515,7 @@ msgid "" msgstr "" "\"pull\" ist nicht möglich, weil Sie nicht zusammengeführte Dateien haben.\n" "Bitte korrigieren Sie dies im Arbeitsverzeichnis und benutzen Sie dann \n" -"'git add/rm <Datei>' um die Auflösung entsprechend zu markieren, oder\n" +"'git add/rm <Datei>', um die Auflösung entsprechend zu markieren, oder\n" "benutzen Sie 'git commit -a'." #: git-pull.sh:25 @@ -10375,13 +10523,13 @@ msgid "Pull is not possible because you have unmerged files." msgstr "" "\"pull\" ist nicht möglich, weil Sie nicht zusammengeführte Dateien haben." -#: git-pull.sh:247 +#: git-pull.sh:245 msgid "updating an unborn branch with changes added to the index" msgstr "" "Aktualisiere einen ungeborenen Branch mit Änderungen, die zum Commit " "vorgemerkt sind" -#: git-pull.sh:271 +#: git-pull.sh:269 #, sh-format msgid "" "Warning: fetch updated the current branch head.\n" @@ -10391,11 +10539,11 @@ msgstr "" "Warnung: \"fetch\" aktualisierte die Spitze des aktuellen Branches.\n" "Warnung: Spule Ihr Arbeitsverzeichnis von Commit $orig_head vor." -#: git-pull.sh:296 +#: git-pull.sh:294 msgid "Cannot merge multiple branches into empty head" msgstr "Kann nicht mehrere Branches in einen ungeborenen Branch zusammenführen" -#: git-pull.sh:300 +#: git-pull.sh:298 msgid "Cannot rebase onto multiple branches" msgstr "kann Rebase nicht auf mehrere Branches ausführen" @@ -10413,16 +10561,16 @@ msgstr "" "Um den ursprünglichen Branch wiederherzustellen und den Rebase abzubrechen,\n" "führen Sie \"git rebase --abort\" aus." -#: git-rebase.sh:164 +#: git-rebase.sh:165 msgid "Applied autostash." msgstr "\"autostash\" angewendet." -#: git-rebase.sh:167 +#: git-rebase.sh:168 #, sh-format msgid "Cannot store $stash_sha1" msgstr "Kann $stash_sha1 nicht speichern." -#: git-rebase.sh:168 +#: git-rebase.sh:169 msgid "" "Applying autostash resulted in conflicts.\n" "Your changes are safe in the stash.\n" @@ -10432,33 +10580,33 @@ msgstr "" "Ihre Änderungen sind im Stash sicher.\n" "Sie können jederzeit \"git stash pop\" oder \"git stash drop\" ausführen.\n" -#: git-rebase.sh:207 +#: git-rebase.sh:208 msgid "The pre-rebase hook refused to rebase." msgstr "Der \"pre-rebase hook\" hat den Rebase zurückgewiesen." -#: git-rebase.sh:212 +#: git-rebase.sh:213 msgid "It looks like git-am is in progress. Cannot rebase." msgstr "\"git-am\" scheint im Gange zu sein. Kann Rebase nicht durchführen." -#: git-rebase.sh:350 +#: git-rebase.sh:351 msgid "The --exec option must be used with the --interactive option" msgstr "Die Option --exec muss mit --interactive verwendet werden." -#: git-rebase.sh:355 +#: git-rebase.sh:356 msgid "No rebase in progress?" msgstr "Kein Rebase im Gange?" -#: git-rebase.sh:366 +#: git-rebase.sh:367 msgid "The --edit-todo action can only be used during interactive rebase." msgstr "" "Die --edit-todo Aktion kann nur während eines interaktiven Rebase verwendet " "werden." -#: git-rebase.sh:373 +#: git-rebase.sh:374 msgid "Cannot read HEAD" msgstr "Kann HEAD nicht lesen" -#: git-rebase.sh:376 +#: git-rebase.sh:377 msgid "" "You must edit all merge conflicts and then\n" "mark them as resolved using git add" @@ -10466,12 +10614,12 @@ msgstr "" "Sie müssen alle Merge-Konflikte editieren und diese dann\n" "mittels \"git add\" als aufgelöst markieren" -#: git-rebase.sh:394 +#: git-rebase.sh:395 #, sh-format msgid "Could not move back to $head_name" msgstr "Konnte nicht zu $head_name zurückgehen" -#: git-rebase.sh:413 +#: git-rebase.sh:414 #, sh-format msgid "" "It seems that there is already a $state_dir_base directory, and\n" @@ -10492,67 +10640,67 @@ msgstr "" "und führen Sie dieses Kommando nochmal aus. Es wird angehalten, falls noch\n" "etwas Schützenswertes vorhanden ist." -#: git-rebase.sh:464 +#: git-rebase.sh:465 #, sh-format msgid "invalid upstream $upstream_name" msgstr "ungültiger Upstream-Branch $upstream_name" -#: git-rebase.sh:488 +#: git-rebase.sh:489 #, sh-format msgid "$onto_name: there are more than one merge bases" msgstr "$onto_name: es gibt mehr als eine Merge-Basis" -#: git-rebase.sh:491 git-rebase.sh:495 +#: git-rebase.sh:492 git-rebase.sh:496 #, sh-format msgid "$onto_name: there is no merge base" msgstr "$onto_name: es gibt keine Merge-Basis" -#: git-rebase.sh:500 +#: git-rebase.sh:501 #, sh-format msgid "Does not point to a valid commit: $onto_name" msgstr "$onto_name zeigt auf keinen gültigen Commit" -#: git-rebase.sh:523 +#: git-rebase.sh:524 #, sh-format msgid "fatal: no such branch: $branch_name" msgstr "fatal: Branch $branch_name nicht gefunden" -#: git-rebase.sh:556 +#: git-rebase.sh:557 msgid "Cannot autostash" msgstr "Kann \"autostash\" nicht ausführen." -#: git-rebase.sh:561 +#: git-rebase.sh:562 #, sh-format msgid "Created autostash: $stash_abbrev" msgstr "\"autostash\" erzeugt: $stash_abbrev" -#: git-rebase.sh:565 +#: git-rebase.sh:566 msgid "Please commit or stash them." msgstr "Bitte committen Sie die Änderungen oder benutzen Sie \"stash\"." -#: git-rebase.sh:585 +#: git-rebase.sh:586 #, sh-format msgid "Current branch $branch_name is up to date." msgstr "Aktueller Branch $branch_name ist auf dem neuesten Stand." -#: git-rebase.sh:589 +#: git-rebase.sh:590 #, sh-format msgid "Current branch $branch_name is up to date, rebase forced." msgstr "" "Aktueller Branch $branch_name ist auf dem neuesten Stand, Rebase erzwungen." -#: git-rebase.sh:600 +#: git-rebase.sh:601 #, sh-format msgid "Changes from $mb to $onto:" msgstr "Änderungen von $mb zu $onto:" -#: git-rebase.sh:609 +#: git-rebase.sh:610 msgid "First, rewinding head to replay your work on top of it..." msgstr "" "Zunächst wird der Branch zurückgespult, um Ihre Änderungen\n" "darauf neu anzuwenden..." -#: git-rebase.sh:619 +#: git-rebase.sh:620 #, sh-format msgid "Fast-forwarded $branch_name to $onto_name." msgstr "$branch_name zu $onto_name vorgespult." @@ -10569,23 +10717,23 @@ msgstr "Sie haben bisher noch keinen initialen Commit" msgid "Cannot save the current index state" msgstr "Kann den aktuellen Zustand der Staging-Area nicht speichern" -#: git-stash.sh:123 git-stash.sh:136 +#: git-stash.sh:124 git-stash.sh:137 msgid "Cannot save the current worktree state" msgstr "Kann den aktuellen Zustand des Arbeitsverzeichnisses nicht speichern" -#: git-stash.sh:140 +#: git-stash.sh:141 msgid "No changes selected" msgstr "Keine Änderungen ausgewählt" -#: git-stash.sh:143 +#: git-stash.sh:144 msgid "Cannot remove temporary index (can't happen)" msgstr "Kann temporäre Staging-Area nicht löschen (kann nicht passieren)" -#: git-stash.sh:156 +#: git-stash.sh:157 msgid "Cannot record working tree state" msgstr "Kann Zustand des Arbeitsverzeichnisses nicht aufzeichnen" -#: git-stash.sh:190 +#: git-stash.sh:191 #, sh-format msgid "Cannot update $ref_stash with $w_commit" msgstr "Kann $ref_stash nicht mit $w_commit aktualisieren." @@ -10600,7 +10748,7 @@ msgstr "Kann $ref_stash nicht mit $w_commit aktualisieren." #. $ git stash save --blah-blah 2>&1 | head -n 2 #. error: unknown option for 'stash save': --blah-blah #. To provide a message, use git stash save -- '--blah-blah' -#: git-stash.sh:237 +#: git-stash.sh:238 #, sh-format msgid "" "error: unknown option for 'stash save': $option\n" @@ -10610,85 +10758,85 @@ msgstr "" " Um eine Beschreibung anzugeben, benutzen Sie \"git stash save -- " "'$option'\"" -#: git-stash.sh:258 +#: git-stash.sh:259 msgid "No local changes to save" msgstr "Keine lokalen Änderungen zum Speichern" -#: git-stash.sh:262 +#: git-stash.sh:263 msgid "Cannot initialize stash" msgstr "Kann \"stash\" nicht initialisieren" -#: git-stash.sh:266 +#: git-stash.sh:267 msgid "Cannot save the current status" msgstr "Kann den aktuellen Status nicht speichern" -#: git-stash.sh:284 +#: git-stash.sh:285 msgid "Cannot remove worktree changes" msgstr "Kann Änderungen im Arbeitsverzeichnis nicht löschen" -#: git-stash.sh:383 +#: git-stash.sh:384 msgid "No stash found." msgstr "Kein \"stash\" gefunden." -#: git-stash.sh:390 +#: git-stash.sh:391 #, sh-format msgid "Too many revisions specified: $REV" msgstr "Zu viele Commits angegeben: $REV" -#: git-stash.sh:396 +#: git-stash.sh:397 #, sh-format msgid "$reference is not valid reference" msgstr "$reference ist keine gültige Referenz" -#: git-stash.sh:424 +#: git-stash.sh:425 #, sh-format msgid "'$args' is not a stash-like commit" msgstr "'$args' ist kein \"stash\"-artiger Commit" -#: git-stash.sh:435 +#: git-stash.sh:436 #, sh-format msgid "'$args' is not a stash reference" msgstr "'$args' ist keine \"stash\"-Referenz" -#: git-stash.sh:443 +#: git-stash.sh:444 msgid "unable to refresh index" msgstr "unfähig die Staging-Area zu aktualisieren" -#: git-stash.sh:447 +#: git-stash.sh:448 msgid "Cannot apply a stash in the middle of a merge" msgstr "Kann \"stash\" nicht anwenden, solang ein Merge im Gange ist" -#: git-stash.sh:455 +#: git-stash.sh:456 msgid "Conflicts in index. Try without --index." msgstr "Konflikte in der Staging-Area. Versuchen Sie es ohne --index." -#: git-stash.sh:457 +#: git-stash.sh:458 msgid "Could not save index tree" msgstr "Konnte Staging-Area-Verzeichnis nicht speichern" -#: git-stash.sh:491 +#: git-stash.sh:492 msgid "Cannot unstage modified files" msgstr "Kann geänderte Dateien nicht aus der Staging-Area entfernen" -#: git-stash.sh:506 +#: git-stash.sh:507 msgid "Index was not unstashed." msgstr "Staging-Area wurde nicht aus dem Stash zurückgeladen." -#: git-stash.sh:529 +#: git-stash.sh:530 #, sh-format msgid "Dropped ${REV} ($s)" msgstr "Gelöscht ${REV} ($s)" -#: git-stash.sh:530 +#: git-stash.sh:531 #, sh-format msgid "${REV}: Could not drop stash entry" msgstr "${REV}: Konnte \"stash\"-Eintrag nicht löschen" -#: git-stash.sh:537 +#: git-stash.sh:538 msgid "No branch name specified" msgstr "Kein Branchname spezifiziert" -#: git-stash.sh:609 +#: git-stash.sh:610 msgid "(To restore them type \"git stash apply\")" msgstr "(Zur Wiederherstellung geben Sie \"git stash apply\" ein)" @@ -10707,28 +10855,28 @@ msgstr "Keine Submodul-Zuordnung in .gitmodules für Pfad '$sm_path' gefunden" msgid "Clone of '$url' into submodule path '$sm_path' failed" msgstr "Klonen von '$url' in Submodul-Pfad '$sm_path' fehlgeschlagen" -#: git-submodule.sh:299 +#: git-submodule.sh:296 #, sh-format msgid "Gitdir '$a' is part of the submodule path '$b' or vice versa" msgstr "Git-Verzeichnis '$a' ist Teil des Submodul-Pfades '$b', oder umgekehrt" -#: git-submodule.sh:409 +#: git-submodule.sh:406 msgid "Relative path can only be used from the toplevel of the working tree" msgstr "" "Relative Pfade können nur von der obersten Ebene des Arbeitsverzeichnisses " "benutzt werden." -#: git-submodule.sh:419 +#: git-submodule.sh:416 #, sh-format msgid "repo URL: '$repo' must be absolute or begin with ./|../" msgstr "repo URL: '$repo' muss absolut sein oder mit ./|../ beginnen" -#: git-submodule.sh:436 +#: git-submodule.sh:433 #, sh-format msgid "'$sm_path' already exists in the index" msgstr "'$sm_path' ist bereits zum Commit vorgemerkt" -#: git-submodule.sh:440 +#: git-submodule.sh:437 #, sh-format msgid "" "The following path is ignored by one of your .gitignore files:\n" @@ -10739,24 +10887,24 @@ msgstr "" "$sm_path\n" "Benutzen Sie -f wenn Sie diesen wirklich hinzufügen möchten." -#: git-submodule.sh:458 +#: git-submodule.sh:455 #, sh-format msgid "Adding existing repo at '$sm_path' to the index" msgstr "Füge existierendes Repository in '$sm_path' der Staging-Area hinzu." -#: git-submodule.sh:460 +#: git-submodule.sh:457 #, sh-format msgid "'$sm_path' already exists and is not a valid git repo" msgstr "'$sm_path' existiert bereits und ist kein gültiges Git-Repository" -#: git-submodule.sh:468 +#: git-submodule.sh:465 #, sh-format msgid "A git directory for '$sm_name' is found locally with remote(s):" msgstr "" "Ein Git-Verzeichnis für '$sm_name' wurde lokal gefunden mit den Remote-" "Repositories:" -#: git-submodule.sh:470 +#: git-submodule.sh:467 #, sh-format msgid "" "If you want to reuse this local git directory instead of cloning again from" @@ -10764,7 +10912,7 @@ msgstr "" "Wenn Sie dieses lokale Git-Verzeichnis wiederverwenden möchtest, anstatt " "erneut zu klonen" -#: git-submodule.sh:472 +#: git-submodule.sh:469 #, sh-format msgid "" "use the '--force' option. If the local git directory is not the correct repo" @@ -10772,7 +10920,7 @@ msgstr "" "benutzen Sie die Option '--force'. Wenn das lokale Git-Verzeichnis nicht das " "korrekte Repository ist" -#: git-submodule.sh:473 +#: git-submodule.sh:470 #, sh-format msgid "" "or you are unsure what this means choose another name with the '--name' " @@ -10781,77 +10929,77 @@ msgstr "" "oder Sie sich unsicher sind, was das bedeutet, wählen Sie einen anderen " "Namenmit der Option '--name'." -#: git-submodule.sh:475 +#: git-submodule.sh:472 #, sh-format msgid "Reactivating local git directory for submodule '$sm_name'." msgstr "Reaktiviere lokales Git-Verzeichnis für Submodul '$sm_name'." -#: git-submodule.sh:487 +#: git-submodule.sh:484 #, sh-format msgid "Unable to checkout submodule '$sm_path'" msgstr "Kann Submodul '$sm_path' nicht auschecken" -#: git-submodule.sh:492 +#: git-submodule.sh:489 #, sh-format msgid "Failed to add submodule '$sm_path'" msgstr "Hinzufügen von Submodul '$sm_path' fehlgeschlagen" -#: git-submodule.sh:501 +#: git-submodule.sh:498 #, sh-format msgid "Failed to register submodule '$sm_path'" msgstr "Fehler beim Eintragen von Submodul '$sm_path' in die Konfiguration." -#: git-submodule.sh:545 +#: git-submodule.sh:542 #, sh-format msgid "Entering '$prefix$displaypath'" msgstr "Betrete '$prefix$displaypath'" -#: git-submodule.sh:565 +#: git-submodule.sh:562 #, sh-format msgid "Stopping at '$prefix$displaypath'; script returned non-zero status." msgstr "Stoppe bei '$prefix$displaypath'; Skript gab nicht-Null Status zurück." -#: git-submodule.sh:611 +#: git-submodule.sh:608 #, sh-format msgid "No url found for submodule path '$displaypath' in .gitmodules" msgstr "Keine URL für Submodul-Pfad '$displaypath' in .gitmodules gefunden" -#: git-submodule.sh:620 +#: git-submodule.sh:617 #, sh-format msgid "Failed to register url for submodule path '$displaypath'" msgstr "" "Fehler beim Eintragen der URL für Submodul-Pfad '$displaypath' in die " "Konfiguration." -#: git-submodule.sh:622 +#: git-submodule.sh:619 #, sh-format msgid "Submodule '$name' ($url) registered for path '$displaypath'" msgstr "" "Submodul '$name' ($url) für Pfad '$displaypath' in die Konfiguration " "eingetragen." -#: git-submodule.sh:639 +#: git-submodule.sh:636 #, sh-format msgid "Failed to register update mode for submodule path '$displaypath'" msgstr "" "Fehler bei Änderung des Aktualisierungsmodus für Submodul-Pfad " "'$displaypath' in der Konfiguration." -#: git-submodule.sh:677 +#: git-submodule.sh:674 #, sh-format msgid "Use '.' if you really want to deinitialize all submodules" msgstr "" "Verwenden Sie '.' wenn Sie wirklich alle Submodule\n" "deinitialisieren möchten." -#: git-submodule.sh:694 +#: git-submodule.sh:691 #, sh-format msgid "Submodule work tree '$displaypath' contains a .git directory" msgstr "" "Arbeitsverzeichnis des Submoduls in '$displaypath' enthält ein .git-" "Verzeichnis" -#: git-submodule.sh:695 +#: git-submodule.sh:692 #, sh-format msgid "" "(use 'rm -rf' if you really want to remove it including all of its history)" @@ -10859,40 +11007,40 @@ msgstr "" "(benutzen Sie 'rm -rf' wenn Sie dieses Submodul wirklich mitsamt\n" "seiner Historie löschen möchten)" -#: git-submodule.sh:701 +#: git-submodule.sh:698 #, sh-format msgid "" "Submodule work tree '$displaypath' contains local modifications; use '-f' to " "discard them" msgstr "" "Arbeitsverzeichnis von Submodul in '$displaypath' enthält lokale Änderungen; " -"verwenden Sie '-f' um diese zu verwerfen" +"verwenden Sie '-f', um diese zu verwerfen" -#: git-submodule.sh:704 +#: git-submodule.sh:701 #, sh-format msgid "Cleared directory '$displaypath'" msgstr "Verzeichnis '$displaypath' bereinigt." -#: git-submodule.sh:705 +#: git-submodule.sh:702 #, sh-format msgid "Could not remove submodule work tree '$displaypath'" msgstr "" "Konnte Arbeitsverzeichnis des Submoduls in '$displaypath' nicht löschen." -#: git-submodule.sh:708 +#: git-submodule.sh:705 #, sh-format msgid "Could not create empty submodule directory '$displaypath'" msgstr "" "Konnte kein leeres Verzeichnis für Submodul in '$displaypath' erstellen." -#: git-submodule.sh:717 +#: git-submodule.sh:714 #, sh-format msgid "Submodule '$name' ($url) unregistered for path '$displaypath'" msgstr "" "Submodul '$name' ($url) für Pfad '$displaypath' wurde aus der Konfiguration " "entfernt." -#: git-submodule.sh:833 +#: git-submodule.sh:830 #, sh-format msgid "" "Submodule path '$displaypath' not initialized\n" @@ -10901,52 +11049,52 @@ msgstr "" "Submodul-Pfad '$displaypath' ist nicht initialisiert.\n" "Vielleicht möchten Sie 'update --init' benutzen?" -#: git-submodule.sh:846 +#: git-submodule.sh:843 #, sh-format msgid "Unable to find current revision in submodule path '$displaypath'" msgstr "Konnte aktuellen Commit in Submodul-Pfad '$displaypath' nicht finden." -#: git-submodule.sh:855 +#: git-submodule.sh:852 #, sh-format msgid "Unable to fetch in submodule path '$sm_path'" msgstr "Konnte \"fetch\" in Submodul-Pfad '$sm_path' nicht ausführen" -#: git-submodule.sh:879 +#: git-submodule.sh:876 #, sh-format msgid "Unable to fetch in submodule path '$displaypath'" msgstr "Konnte \"fetch\" in Submodul-Pfad '$displaypath' nicht ausführen" -#: git-submodule.sh:893 +#: git-submodule.sh:890 #, sh-format msgid "Unable to checkout '$sha1' in submodule path '$displaypath'" msgstr "Konnte '$sha1' in Submodul-Pfad '$displaypath' nicht auschecken." -#: git-submodule.sh:894 +#: git-submodule.sh:891 #, sh-format msgid "Submodule path '$displaypath': checked out '$sha1'" msgstr "Submodul-Pfad: '$displaypath': '$sha1' ausgecheckt" -#: git-submodule.sh:898 +#: git-submodule.sh:895 #, sh-format msgid "Unable to rebase '$sha1' in submodule path '$displaypath'" msgstr "Rebase auf '$sha1' in Submodul-Pfad '$displaypath' nicht möglich" -#: git-submodule.sh:899 +#: git-submodule.sh:896 #, sh-format msgid "Submodule path '$displaypath': rebased into '$sha1'" msgstr "Submodul-Pfad '$displaypath': Rebase auf '$sha1'" -#: git-submodule.sh:904 +#: git-submodule.sh:901 #, sh-format msgid "Unable to merge '$sha1' in submodule path '$displaypath'" msgstr "Merge von '$sha1' in Submodul-Pfad '$displaypath' fehlgeschlagen" -#: git-submodule.sh:905 +#: git-submodule.sh:902 #, sh-format msgid "Submodule path '$displaypath': merged in '$sha1'" msgstr "Submodul-Pfad '$displaypath': zusammengeführt in '$sha1'" -#: git-submodule.sh:910 +#: git-submodule.sh:907 #, sh-format msgid "" "Execution of '$command $sha1' failed in submodule path '$prefix$sm_path'" @@ -10954,56 +11102,62 @@ msgstr "" "Ausführung von '$command $sha1' in Submodul-Pfad '$prefix$sm_path' " "fehlgeschlagen" -#: git-submodule.sh:911 +#: git-submodule.sh:908 #, sh-format msgid "Submodule path '$prefix$sm_path': '$command $sha1'" msgstr "Submodul-Pfad '$prefix$sm_path': '$command $sha1'" -#: git-submodule.sh:941 +#: git-submodule.sh:938 #, sh-format msgid "Failed to recurse into submodule path '$displaypath'" msgstr "Fehler bei Rekursion in Submodul-Pfad '$displaypath'" -#: git-submodule.sh:1049 +#: git-submodule.sh:1046 msgid "The --cached option cannot be used with the --files option" msgstr "" "Die Optionen --cached und --files können nicht gemeinsam verwendet werden." -#: git-submodule.sh:1097 +#: git-submodule.sh:1098 #, sh-format msgid "unexpected mode $mod_dst" msgstr "unerwarteter Modus $mod_dst" -#: git-submodule.sh:1117 +#: git-submodule.sh:1118 #, sh-format msgid " Warn: $display_name doesn't contain commit $sha1_src" msgstr " Warnung: $display_name beinhaltet nicht Commit $sha1_src" -#: git-submodule.sh:1120 +#: git-submodule.sh:1121 #, sh-format msgid " Warn: $display_name doesn't contain commit $sha1_dst" msgstr " Warnung: $display_name beinhaltet nicht Commit $sha1_dst" -#: git-submodule.sh:1123 +#: git-submodule.sh:1124 #, sh-format msgid " Warn: $display_name doesn't contain commits $sha1_src and $sha1_dst" msgstr "" " Warnung: $display_name beinhaltet nicht die Commits $sha1_src und $sha1_dst" -#: git-submodule.sh:1148 +#: git-submodule.sh:1149 msgid "blob" msgstr "Blob" -#: git-submodule.sh:1262 +#: git-submodule.sh:1267 #, sh-format msgid "Failed to recurse into submodule path '$sm_path'" msgstr "Fehler bei Rekursion in Submodul-Pfad '$sm_path'" -#: git-submodule.sh:1326 +#: git-submodule.sh:1331 #, sh-format msgid "Synchronizing submodule url for '$displaypath'" msgstr "Synchronisiere Submodul-URL für '$displaypath'" +#~ msgid "commit has empty message" +#~ msgstr "Commit hat eine leere Beschreibung" + +#~ msgid "Failed to chdir: %s" +#~ msgstr "Fehler beim Verzeichniswechsel: %s" + #~ msgid "key id" #~ msgstr "Schlüssel-ID" @@ -24,6 +24,11 @@ static size_t commit_formats_len; static size_t commit_formats_alloc; static struct cmt_fmt_map *find_commit_format(const char *sought); +int commit_format_is_empty(enum cmit_fmt fmt) +{ + return fmt == CMIT_FMT_USERFORMAT && !*user_format; +} + static void save_user_format(struct rev_info *rev, const char *cp, int is_tformat) { free(user_format); @@ -146,7 +151,7 @@ void get_commit_format(const char *arg, struct rev_info *rev) struct cmt_fmt_map *commit_format; rev->use_terminator = 0; - if (!arg || !*arg) { + if (!arg) { rev->commit_format = CMIT_FMT_DEFAULT; return; } @@ -155,7 +160,7 @@ void get_commit_format(const char *arg, struct rev_info *rev) return; } - if (strchr(arg, '%')) { + if (!*arg || strchr(arg, '%')) { save_user_format(rev, arg, 1); return; } diff --git a/read-cache.c b/read-cache.c index 5d3c8bd4aa..6f0057fe66 100644 --- a/read-cache.c +++ b/read-cache.c @@ -1064,6 +1064,14 @@ static struct cache_entry *refresh_cache_ent(struct index_state *istate, return ce; } + if (has_symlink_leading_path(ce->name, ce_namelen(ce))) { + if (ignore_missing) + return ce; + if (err) + *err = ENOENT; + return NULL; + } + if (lstat(ce->name, &st) < 0) { if (ignore_missing && errno == ENOENT) return ce; @@ -2387,7 +2387,8 @@ static void try_remove_empty_parents(char *name) /* make sure nobody touched the ref, and unlink */ static void prune_ref(struct ref_to_prune *r) { - struct ref_lock *lock = lock_ref_sha1(r->name + 5, r->sha1); + struct ref_lock *lock = lock_any_ref_for_update(r->name, r->sha1, + 0, NULL); if (lock) { unlink_or_warn(git_path("%s", r->name)); diff --git a/remote-curl.c b/remote-curl.c index 0fcf2ce5ff..558b9fecdf 100644 --- a/remote-curl.c +++ b/remote-curl.c @@ -863,6 +863,7 @@ static int push_git(struct discovery *heads, int nr_spec, char **specs) int i, err; struct argv_array args; struct string_list_item *cas_option; + struct strbuf preamble = STRBUF_INIT; argv_array_init(&args); argv_array_pushl(&args, "send-pack", "--stateless-rpc", "--helper-status", @@ -880,17 +881,22 @@ static int push_git(struct discovery *heads, int nr_spec, char **specs) for_each_string_list_item(cas_option, &cas_options) argv_array_push(&args, cas_option->string); argv_array_push(&args, url.buf); + + argv_array_push(&args, "--stdin"); for (i = 0; i < nr_spec; i++) - argv_array_push(&args, specs[i]); + packet_buf_write(&preamble, "%s\n", specs[i]); + packet_buf_flush(&preamble); memset(&rpc, 0, sizeof(rpc)); rpc.service_name = "git-receive-pack", rpc.argv = args.argv; + rpc.stdin_preamble = &preamble; err = rpc_service(&rpc, heads); if (rpc.result.len) write_or_die(1, rpc.result.buf, rpc.result.len); strbuf_release(&rpc.result); + strbuf_release(&preamble); argv_array_clear(&args); return err; } diff --git a/revision.c b/revision.c index 2571ada6bf..615535c984 100644 --- a/revision.c +++ b/revision.c @@ -1825,7 +1825,7 @@ static int handle_revision_opt(struct rev_info *revs, int argc, const char **arg } else if (!strcmp(arg, "--pretty")) { revs->verbose_header = 1; revs->pretty_given = 1; - get_commit_format(arg+8, revs); + get_commit_format(NULL, revs); } else if (starts_with(arg, "--pretty=") || starts_with(arg, "--format=")) { /* * Detached form ("--pretty X" as opposed to "--pretty=X") diff --git a/t/t1300-repo-config.sh b/t/t1300-repo-config.sh index 3f80ff0c14..46f6ae2571 100755 --- a/t/t1300-repo-config.sh +++ b/t/t1300-repo-config.sh @@ -1010,6 +1010,17 @@ test_expect_success 'git -c "key=value" support' ' test_must_fail git -c name=value config core.name ' +# We just need a type-specifier here that cares about the +# distinction internally between a NULL boolean and a real +# string (because most of git's internal parsers do care). +# Using "--path" works, but we do not otherwise care about +# its semantics. +test_expect_success 'git -c can represent empty string' ' + echo >expect && + git -c foo.empty= config --path foo.empty >actual && + test_cmp expect actual +' + test_expect_success 'key sanity-checking' ' test_must_fail git config foo=bar && test_must_fail git config foo=.bar && diff --git a/t/t3210-pack-refs.sh b/t/t3210-pack-refs.sh index 1a2080e3dc..3a017bf437 100755 --- a/t/t3210-pack-refs.sh +++ b/t/t3210-pack-refs.sh @@ -151,4 +151,11 @@ test_expect_success 'delete ref while another dangling packed ref' ' test_cmp /dev/null result ' +test_expect_success 'pack ref directly below refs/' ' + git update-ref refs/top HEAD && + git pack-refs --all --prune && + grep refs/top .git/packed-refs && + test_path_is_missing .git/refs/top +' + test_done diff --git a/t/t4119-apply-config.sh b/t/t4119-apply-config.sh index c393be691b..a9a0583811 100755 --- a/t/t4119-apply-config.sh +++ b/t/t4119-apply-config.sh @@ -159,4 +159,21 @@ test_expect_success 'same but with traditional patch input of depth 2' ' check_result sub/file1 ' +test_expect_success 'in subdir with traditional patch input' ' + cd "$D" && + git config apply.whitespace strip && + cat >.gitattributes <<-EOF && + /* whitespace=blank-at-eol + sub/* whitespace=-blank-at-eol + EOF + rm -f sub/file1 && + cp saved sub/file1 && + git update-index --refresh && + + cd sub && + git apply ../gpatch.file && + echo "B " >expect && + test_cmp expect file1 +' + test_done diff --git a/t/t4124-apply-ws-rule.sh b/t/t4124-apply-ws-rule.sh index 5d0c598338..c6474de4c8 100755 --- a/t/t4124-apply-ws-rule.sh +++ b/t/t4124-apply-ws-rule.sh @@ -512,4 +512,15 @@ test_expect_success 'whitespace=fix to expand' ' git -c core.whitespace=tab-in-indent apply --whitespace=fix patch ' +test_expect_success 'whitespace check skipped for excluded paths' ' + git config core.whitespace blank-at-eol && + >used && + >unused && + git add used unused && + echo "used" >used && + echo "unused " >unused && + git diff-files -p used unused >patch && + git apply --include=used --stat --whitespace=error <patch +' + test_done diff --git a/t/t5408-send-pack-stdin.sh b/t/t5408-send-pack-stdin.sh new file mode 100755 index 0000000000..e8737df6f9 --- /dev/null +++ b/t/t5408-send-pack-stdin.sh @@ -0,0 +1,92 @@ +#!/bin/sh + +test_description='send-pack --stdin tests' +. ./test-lib.sh + +create_ref () { + tree=$(git write-tree) && + test_tick && + commit=$(echo "$1" | git commit-tree $tree) && + git update-ref "$1" $commit +} + +clear_remote () { + rm -rf remote.git && + git init --bare remote.git +} + +verify_push () { + git rev-parse "$1" >expect && + git --git-dir=remote.git rev-parse "${2:-$1}" >actual && + test_cmp expect actual +} + +test_expect_success 'setup refs' ' + cat >refs <<-\EOF && + refs/heads/A + refs/heads/C + refs/tags/D + refs/heads/B + refs/tags/E + EOF + for i in $(cat refs); do + create_ref $i || return 1 + done +' + +# sanity check our setup +test_expect_success 'refs on cmdline' ' + clear_remote && + git send-pack remote.git $(cat refs) && + for i in $(cat refs); do + verify_push $i || return 1 + done +' + +test_expect_success 'refs over stdin' ' + clear_remote && + git send-pack remote.git --stdin <refs && + for i in $(cat refs); do + verify_push $i || return 1 + done +' + +test_expect_success 'stdin lines are full refspecs' ' + clear_remote && + echo "A:other" >input && + git send-pack remote.git --stdin <input && + verify_push refs/heads/A refs/heads/other +' + +test_expect_success 'stdin mixed with cmdline' ' + clear_remote && + echo A >input && + git send-pack remote.git --stdin B <input && + verify_push A && + verify_push B +' + +test_expect_success 'cmdline refs written in order' ' + clear_remote && + test_must_fail git send-pack remote.git A:foo B:foo && + verify_push A foo +' + +test_expect_success '--stdin refs come after cmdline' ' + clear_remote && + echo A:foo >input && + test_must_fail git send-pack remote.git --stdin B:foo <input && + verify_push B foo +' + +test_expect_success 'refspecs and --mirror do not mix (cmdline)' ' + clear_remote && + test_must_fail git send-pack remote.git --mirror $(cat refs) +' + +test_expect_success 'refspecs and --mirror do not mix (stdin)' ' + clear_remote && + test_must_fail git send-pack remote.git --mirror --stdin <refs +' + +test_done diff --git a/t/t5541-http-push-smart.sh b/t/t5541-http-push-smart.sh index 73af16f481..db1998873c 100755 --- a/t/t5541-http-push-smart.sh +++ b/t/t5541-http-push-smart.sh @@ -323,5 +323,20 @@ test_expect_success 'push into half-auth-complete requires password' ' test_cmp expect actual ' +run_with_limited_cmdline () { + (ulimit -s 128 && "$@") +} + +test_lazy_prereq CMDLINE_LIMIT 'run_with_limited_cmdline true' + +test_expect_success CMDLINE_LIMIT 'push 2000 tags over http' ' + sha1=$(git rev-parse HEAD) && + test_seq 2000 | + sort | + sed "s|.*|$sha1 refs/tags/really-long-tag-name-&|" \ + >.git/packed-refs && + run_with_limited_cmdline git push --mirror +' + stop_httpd test_done diff --git a/t/t5704-bundle.sh b/t/t5704-bundle.sh index a45c31692e..348d9b3bc7 100755 --- a/t/t5704-bundle.sh +++ b/t/t5704-bundle.sh @@ -14,7 +14,10 @@ test_expect_success 'setup' ' git tag -d third ' -test_expect_success 'tags can be excluded by rev-list options' ' +test_expect_success 'annotated tags can be excluded by rev-list options' ' + git bundle create bundle --all --since=7.Apr.2005.15:14:00.-0700 && + git ls-remote bundle > output && + grep tag output && git bundle create bundle --all --since=7.Apr.2005.15:16:00.-0700 && git ls-remote bundle > output && ! grep tag output diff --git a/t/t7201-co.sh b/t/t7201-co.sh index 0c9ec0ad44..eae9e5a937 100755 --- a/t/t7201-co.sh +++ b/t/t7201-co.sh @@ -223,6 +223,23 @@ test_expect_success 'checkout --merge --conflict=diff3 <branch>' ' test_cmp two expect ' +test_expect_success 'switch to another branch while carrying a deletion' ' + + git checkout -f master && git reset --hard && git clean -f && + git rm two && + + test_must_fail git checkout simple 2>errs && + test_i18ngrep overwritten errs && + + git checkout --merge simple 2>errs && + test_i18ngrep ! overwritten errs && + git ls-files -u && + test_must_fail git cat-file -t :0:two && + test "$(git cat-file -t :1:two)" = blob && + test "$(git cat-file -t :2:two)" = blob && + test_must_fail git cat-file -t :3:two +' + test_expect_success 'checkout to detach HEAD (with advice declined)' ' git config advice.detachedHead false && diff --git a/t/t7515-status-symlinks.sh b/t/t7515-status-symlinks.sh new file mode 100755 index 0000000000..9f989be01b --- /dev/null +++ b/t/t7515-status-symlinks.sh @@ -0,0 +1,43 @@ +#!/bin/sh + +test_description='git status and symlinks' + +. ./test-lib.sh + +test_expect_success 'setup' ' + echo .gitignore >.gitignore && + echo actual >>.gitignore && + echo expect >>.gitignore && + mkdir dir && + echo x >dir/file1 && + echo y >dir/file2 && + git add dir && + git commit -m initial && + git tag initial +' + +test_expect_success SYMLINKS 'symlink to a directory' ' + test_when_finished "rm symlink" && + ln -s dir symlink && + echo "?? symlink" >expect && + git status --porcelain >actual && + test_cmp expect actual +' + +test_expect_success SYMLINKS 'symlink replacing a directory' ' + test_when_finished "rm -rf copy && git reset --hard initial" && + mkdir copy && + cp dir/file1 copy/file1 && + echo "changed in copy" >copy/file2 && + git add copy && + git commit -m second && + rm -rf copy && + ln -s dir copy && + echo " D copy/file1" >expect && + echo " D copy/file2" >>expect && + echo "?? copy" >>expect && + git status --porcelain >actual && + test_cmp expect actual +' + +test_done diff --git a/unpack-trees.c b/unpack-trees.c index c6aa8fb993..629c658c46 100644 --- a/unpack-trees.c +++ b/unpack-trees.c @@ -1176,7 +1176,8 @@ return_failed: static int reject_merge(const struct cache_entry *ce, struct unpack_trees_options *o) { - return add_rejected_path(o, ERROR_WOULD_OVERWRITE, ce->name); + return o->gently ? -1 : + add_rejected_path(o, ERROR_WOULD_OVERWRITE, ce->name); } static int same(const struct cache_entry *a, const struct cache_entry *b) @@ -1631,7 +1632,7 @@ int threeway_merge(const struct cache_entry * const *stages, /* #14, #14ALT, #2ALT */ if (remote && !df_conflict_head && head_match && !remote_match) { if (index && !same(index, remote) && !same(index, head)) - return o->gently ? -1 : reject_merge(index, o); + return reject_merge(index, o); return merged_entry(remote, index, o); } /* @@ -1639,7 +1640,7 @@ int threeway_merge(const struct cache_entry * const *stages, * make sure that it matches head. */ if (index && !same(index, head)) - return o->gently ? -1 : reject_merge(index, o); + return reject_merge(index, o); if (head) { /* #5ALT, #15 */ @@ -1768,9 +1769,8 @@ int twoway_merge(const struct cache_entry * const *src, else return merged_entry(newtree, current, o); } - return o->gently ? -1 : reject_merge(current, o); - } - else if ((!oldtree && !newtree) || /* 4 and 5 */ + return reject_merge(current, o); + } else if ((!oldtree && !newtree) || /* 4 and 5 */ (!oldtree && newtree && same(current, newtree)) || /* 6 and 7 */ (oldtree && newtree && @@ -1779,26 +1779,15 @@ int twoway_merge(const struct cache_entry * const *src, !same(oldtree, newtree) && /* 18 and 19 */ same(current, newtree))) { return keep_entry(current, o); - } - else if (oldtree && !newtree && same(current, oldtree)) { + } else if (oldtree && !newtree && same(current, oldtree)) { /* 10 or 11 */ return deleted_entry(oldtree, current, o); - } - else if (oldtree && newtree && + } else if (oldtree && newtree && same(current, oldtree) && !same(current, newtree)) { /* 20 or 21 */ return merged_entry(newtree, current, o); - } - else { - /* all other failures */ - if (oldtree) - return o->gently ? -1 : reject_merge(oldtree, o); - if (current) - return o->gently ? -1 : reject_merge(current, o); - if (newtree) - return o->gently ? -1 : reject_merge(newtree, o); - return -1; - } + } else + return reject_merge(current, o); } else if (newtree) { if (oldtree && !o->initial_checkout) { diff --git a/upload-pack.c b/upload-pack.c index 01de944a0a..433211a238 100644 --- a/upload-pack.c +++ b/upload-pack.c @@ -167,7 +167,9 @@ static void create_pack_file(void) if (!pollsize) break; - ret = poll(pfd, pollsize, 1000 * keepalive); + ret = poll(pfd, pollsize, + keepalive < 0 ? -1 : 1000 * keepalive); + if (ret < 0) { if (errno != EINTR) { error("poll failed, resuming: %s", |