summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Documentation/RelNotes/2.6.2.txt65
-rw-r--r--Documentation/config.txt6
-rw-r--r--Documentation/git-am.txt4
-rw-r--r--Documentation/git-bisect-lk2009.txt2
-rw-r--r--Documentation/git-cherry-pick.txt10
-rw-r--r--Documentation/git-commit-tree.txt4
-rw-r--r--Documentation/git-commit.txt6
-rw-r--r--Documentation/git-gc.txt7
-rw-r--r--Documentation/git-grep.txt9
-rw-r--r--Documentation/git-interpret-trailers.txt2
-rw-r--r--Documentation/git-log.txt8
-rw-r--r--Documentation/git-ls-remote.txt3
-rw-r--r--Documentation/git-merge.txt6
-rw-r--r--Documentation/git-notes.txt4
-rw-r--r--Documentation/git-rebase.txt4
-rw-r--r--Documentation/git-revert.txt10
-rw-r--r--Documentation/git-status.txt5
-rw-r--r--Documentation/git-tag.txt18
-rw-r--r--Documentation/git.txt3
-rw-r--r--Documentation/pretty-options.txt5
-rw-r--r--Documentation/technical/repository-version.txt88
-rw-r--r--Documentation/user-manual.txt2
-rwxr-xr-xGIT-VERSION-GEN2
-rw-r--r--Makefile13
l---------RelNotes2
-rw-r--r--advice.c2
-rw-r--r--builtin/am.c13
-rw-r--r--builtin/blame.c11
-rw-r--r--builtin/fsck.c18
-rw-r--r--builtin/gc.c20
-rw-r--r--builtin/ls-remote.c2
-rw-r--r--builtin/prune.c3
-rw-r--r--builtin/pull.c2
-rw-r--r--builtin/repack.c3
-rw-r--r--cache.h7
-rw-r--r--connect.c27
-rwxr-xr-xcontrib/examples/git-pull.sh2
-rw-r--r--dir.c11
-rw-r--r--environment.c1
-rwxr-xr-xgit-filter-branch.sh2
-rw-r--r--git-rebase--interactive.sh66
-rw-r--r--pager.c22
-rw-r--r--path.c5
-rw-r--r--po/ru.po3550
-rw-r--r--quote.c11
-rw-r--r--reachable.c8
-rw-r--r--run-command.c25
-rw-r--r--run-command.h1
-rw-r--r--setup.c39
-rw-r--r--t/annotate-tests.sh4
-rwxr-xr-xt/perf/aggregate.perl1
-rwxr-xr-xt/t1302-repo-version.sh60
-rwxr-xr-xt/t1450-fsck.sh22
-rwxr-xr-xt/t2026-worktree-prune.sh (renamed from t/t2026-prune-linked-checkouts.sh)0
-rwxr-xr-xt/t3203-branch-output.sh13
-rwxr-xr-xt/t3301-notes.sh6
-rwxr-xr-xt/t3404-rebase-interactive.sh15
-rwxr-xr-xt/t5507-remote-environment.sh34
-rwxr-xr-xt/t5560-http-backend-noserver.sh4
-rwxr-xr-xt/t5561-http-backend.sh8
-rwxr-xr-xt/t556x_common12
-rwxr-xr-xt/t6500-gc.sh13
-rwxr-xr-xt/t7003-filter-branch.sh14
-rw-r--r--test-path-utils.c2
-rw-r--r--wt-status.c6
65 files changed, 2603 insertions, 1750 deletions
diff --git a/Documentation/RelNotes/2.6.2.txt b/Documentation/RelNotes/2.6.2.txt
new file mode 100644
index 0000000..5b65e35
--- /dev/null
+++ b/Documentation/RelNotes/2.6.2.txt
@@ -0,0 +1,65 @@
+Git v2.6.2 Release Notes
+========================
+
+Fixes since v2.6.1
+------------------
+
+ * There were some classes of errors that "git fsck" diagnosed to its
+ standard error that did not cause it to exit with non-zero status.
+
+ * A test script for the HTTP service had a timing dependent bug,
+ which was fixed.
+
+ * Performance-measurement tests did not work without an installed Git.
+
+ * On a case insensitive filesystems, setting GIT_WORK_TREE variable
+ using a random cases that does not agree with what the filesystem
+ thinks confused Git that it wasn't inside the working tree.
+
+ * When "git am" was rewritten as a built-in, it stopped paying
+ attention to user.signingkey, which was fixed.
+
+ * After "git checkout --detach", "git status" reported a fairly
+ useless "HEAD detached at HEAD", instead of saying at which exact
+ commit.
+
+ * "git rebase -i" had a minor regression recently, which stopped
+ considering a line that begins with an indented '#' in its insn
+ sheet not a comment, which is now fixed.
+
+ * Description of the "log.follow" configuration variable in "git log"
+ documentation is now also copied to "git config" documentation.
+
+ * Allocation related functions and stdio are unsafe things to call
+ inside a signal handler, and indeed killing the pager can cause
+ glibc to deadlock waiting on allocation mutex as our signal handler
+ tries to free() some data structures in wait_for_pager(). Reduce
+ these unsafe calls.
+
+ * The way how --ref/--notes to specify the notes tree reference are
+ DWIMmed was not clearly documented.
+
+ * Customization to change the behaviour with "make -w" and "make -s"
+ in our Makefile was broken when they were used together.
+
+ * The Makefile always runs the library archiver with hardcoded "crs"
+ options, which was inconvenient for exotic platforms on which
+ people want to use programs with totally different set of command
+ line options.
+
+ * The ssh transport, just like any other transport over the network,
+ did not clear GIT_* environment variables, but it is possible to
+ use SendEnv and AcceptEnv to leak them to the remote invocation of
+ Git, which is not a good idea at all. Explicitly clear them just
+ like we do for the local transport.
+
+ * "git blame --first-parent v1.0..v2.0" was not rejected but did not
+ limit the blame to commits on the first parent chain.
+
+ * Very small number of options take a parameter that is optional
+ (which is not a great UI element as they can only appear at the end
+ of the command line). Add notice to documentation of each and
+ every one of them.
+
+Also contains typofixes, documentation updates and trivial code
+clean-ups.
diff --git a/Documentation/config.txt b/Documentation/config.txt
index 0cc87a6..fec0dea 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -1840,6 +1840,12 @@ log.decorate::
specified, the full ref name (including prefix) will be printed.
This is the same as the log commands '--decorate' option.
+log.follow::
+ If `true`, `git log` will act as if the `--follow` option was used when
+ a single <path> is given. This has the same limitations as `--follow`,
+ i.e. it cannot be used to follow multiple files and does not work well
+ on non-linear history.
+
log.showRoot::
If true, the initial commit will be shown as a big creation event.
This is equivalent to a diff against an empty tree.
diff --git a/Documentation/git-am.txt b/Documentation/git-am.txt
index dbea6e7..452c1fe 100644
--- a/Documentation/git-am.txt
+++ b/Documentation/git-am.txt
@@ -141,7 +141,9 @@ default. You can use `--no-utf8` to override this.
-S[<keyid>]::
--gpg-sign[=<keyid>]::
- GPG-sign commits.
+ GPG-sign commits. The `keyid` argument is optional and
+ defaults to the committer identity; if specified, it must be
+ stuck to the option without a space.
--continue::
-r::
diff --git a/Documentation/git-bisect-lk2009.txt b/Documentation/git-bisect-lk2009.txt
index 0f0c6ff..c06efbd 100644
--- a/Documentation/git-bisect-lk2009.txt
+++ b/Documentation/git-bisect-lk2009.txt
@@ -1321,7 +1321,7 @@ So git bisect is unconditional goodness - and feel free to quote that
_____________
Acknowledgments
-----------------
+---------------
Many thanks to Junio Hamano for his help in reviewing this paper, for
reviewing the patches I sent to the Git mailing list, for discussing
diff --git a/Documentation/git-cherry-pick.txt b/Documentation/git-cherry-pick.txt
index 1147c71..77da29a 100644
--- a/Documentation/git-cherry-pick.txt
+++ b/Documentation/git-cherry-pick.txt
@@ -9,7 +9,7 @@ SYNOPSIS
--------
[verse]
'git cherry-pick' [--edit] [-n] [-m parent-number] [-s] [-x] [--ff]
- [-S[<key-id>]] <commit>...
+ [-S[<keyid>]] <commit>...
'git cherry-pick' --continue
'git cherry-pick' --quit
'git cherry-pick' --abort
@@ -101,9 +101,11 @@ effect to your index in a row.
--signoff::
Add Signed-off-by line at the end of the commit message.
--S[<key-id>]::
---gpg-sign[=<key-id>]::
- GPG-sign commits.
+-S[<keyid>]::
+--gpg-sign[=<keyid>]::
+ GPG-sign commits. The `keyid` argument is optional and
+ defaults to the committer identity; if specified, it must be
+ stuck to the option without a space.
--ff::
If the current HEAD is the same as the parent of the
diff --git a/Documentation/git-commit-tree.txt b/Documentation/git-commit-tree.txt
index f5f2a8d..a0b5457 100644
--- a/Documentation/git-commit-tree.txt
+++ b/Documentation/git-commit-tree.txt
@@ -56,7 +56,9 @@ OPTIONS
-S[<keyid>]::
--gpg-sign[=<keyid>]::
- GPG-sign commit.
+ GPG-sign commits. The `keyid` argument is optional and
+ defaults to the committer identity; if specified, it must be
+ stuck to the option without a space.
--no-gpg-sign::
Countermand `commit.gpgSign` configuration variable that is
diff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt
index 904dafa..7f34a5b 100644
--- a/Documentation/git-commit.txt
+++ b/Documentation/git-commit.txt
@@ -13,7 +13,7 @@ SYNOPSIS
[-F <file> | -m <msg>] [--reset-author] [--allow-empty]
[--allow-empty-message] [--no-verify] [-e] [--author=<author>]
[--date=<date>] [--cleanup=<mode>] [--[no-]status]
- [-i | -o] [-S[<key-id>]] [--] [<file>...]
+ [-i | -o] [-S[<keyid>]] [--] [<file>...]
DESCRIPTION
-----------
@@ -314,7 +314,9 @@ changes to tracked files.
-S[<keyid>]::
--gpg-sign[=<keyid>]::
- GPG-sign commit.
+ GPG-sign commits. The `keyid` argument is optional and
+ defaults to the committer identity; if specified, it must be
+ stuck to the option without a space.
--no-gpg-sign::
Countermand `commit.gpgSign` configuration variable that is
diff --git a/Documentation/git-gc.txt b/Documentation/git-gc.txt
index 5223498..fa15104 100644
--- a/Documentation/git-gc.txt
+++ b/Documentation/git-gc.txt
@@ -63,8 +63,11 @@ automatic consolidation of packs.
--prune=<date>::
Prune loose objects older than date (default is 2 weeks ago,
overridable by the config variable `gc.pruneExpire`).
- --prune=all prunes loose objects regardless of their age.
- --prune is on by default.
+ --prune=all prunes loose objects regardless of their age (do
+ not use --prune=all unless you know exactly what you are doing.
+ Unless the repository is quiescent, you will lose newly created
+ objects that haven't been anchored with the refs and end up
+ corrupting your repository). --prune is on by default.
--no-prune::
Do not prune any loose objects.
diff --git a/Documentation/git-grep.txt b/Documentation/git-grep.txt
index 31811f1..4a44d6d 100644
--- a/Documentation/git-grep.txt
+++ b/Documentation/git-grep.txt
@@ -160,12 +160,15 @@ OPTIONS
For better compatibility with 'git diff', `--name-only` is a
synonym for `--files-with-matches`.
--O [<pager>]::
---open-files-in-pager [<pager>]::
+-O[<pager>]::
+--open-files-in-pager[=<pager>]::
Open the matching files in the pager (not the output of 'grep').
If the pager happens to be "less" or "vi", and the user
specified only one pattern, the first file is positioned at
- the first match automatically.
+ the first match automatically. The `pager` argument is
+ optional; if specified, it must be stuck to the option
+ without a space. If `pager` is unspecified, the default pager
+ will be used (see `core.pager` in linkgit:git-config[1]).
-z::
--null::
diff --git a/Documentation/git-interpret-trailers.txt b/Documentation/git-interpret-trailers.txt
index d6d9231..0ecd497 100644
--- a/Documentation/git-interpret-trailers.txt
+++ b/Documentation/git-interpret-trailers.txt
@@ -67,7 +67,7 @@ OPTIONS
--trim-empty::
If the <value> part of any trailer contains only whitespace,
the whole trailer will be removed from the resulting message.
- This apply to existing trailers as well as new trailers.
+ This applies to existing trailers as well as new trailers.
--trailer <token>[(=|:)<value>]::
Specify a (<token>, <value>) pair that should be applied as a
diff --git a/Documentation/git-log.txt b/Documentation/git-log.txt
index 97b9993..03f9580 100644
--- a/Documentation/git-log.txt
+++ b/Documentation/git-log.txt
@@ -185,10 +185,10 @@ log.date::
dates like `Sat May 8 19:35:34 2010 -0500`.
log.follow::
- If a single <path> is given to git log, it will act as
- if the `--follow` option was also used. This has the same
- limitations as `--follow`, i.e. it cannot be used to follow
- multiple files and does not work well on non-linear history.
+ If `true`, `git log` will act as if the `--follow` option was used when
+ a single <path> is given. This has the same limitations as `--follow`,
+ i.e. it cannot be used to follow multiple files and does not work well
+ on non-linear history.
log.showRoot::
If `false`, `git log` and related commands will not treat the
diff --git a/Documentation/git-ls-remote.txt b/Documentation/git-ls-remote.txt
index 2e22915..d510c05 100644
--- a/Documentation/git-ls-remote.txt
+++ b/Documentation/git-ls-remote.txt
@@ -9,7 +9,7 @@ git-ls-remote - List references in a remote repository
SYNOPSIS
--------
[verse]
-'git ls-remote' [--heads] [--tags] [-u <exec> | --upload-pack <exec>]
+'git ls-remote' [--heads] [--tags] [--upload-pack=<exec>]
[--exit-code] <repository> [<refs>...]
DESCRIPTION
@@ -29,7 +29,6 @@ OPTIONS
both, references stored in refs/heads and refs/tags are
displayed.
--u <exec>::
--upload-pack=<exec>::
Specify the full path of 'git-upload-pack' on the remote
host. This allows listing references from repositories accessed via
diff --git a/Documentation/git-merge.txt b/Documentation/git-merge.txt
index a62d672..07f7295 100644
--- a/Documentation/git-merge.txt
+++ b/Documentation/git-merge.txt
@@ -10,7 +10,7 @@ SYNOPSIS
--------
[verse]
'git merge' [-n] [--stat] [--no-commit] [--squash] [--[no-]edit]
- [-s <strategy>] [-X <strategy-option>] [-S[<key-id>]]
+ [-s <strategy>] [-X <strategy-option>] [-S[<keyid>]]
[--[no-]rerere-autoupdate] [-m <msg>] [<commit>...]
'git merge' <msg> HEAD <commit>...
'git merge' --abort
@@ -67,7 +67,9 @@ include::merge-options.txt[]
-S[<keyid>]::
--gpg-sign[=<keyid>]::
- GPG-sign the resulting merge commit.
+ GPG-sign the resulting merge commit. The `keyid` argument is
+ optional and defaults to the committer identity; if specified,
+ it must be stuck to the option without a space.
-m <msg>::
Set the commit message to be used for the merge commit (in
diff --git a/Documentation/git-notes.txt b/Documentation/git-notes.txt
index a9a916f..8de3499 100644
--- a/Documentation/git-notes.txt
+++ b/Documentation/git-notes.txt
@@ -162,7 +162,9 @@ OPTIONS
--ref <ref>::
Manipulate the notes tree in <ref>. This overrides
'GIT_NOTES_REF' and the "core.notesRef" configuration. The ref
- is taken to be in `refs/notes/` if it is not qualified.
+ specifies the full refname when it begins with `refs/notes/`; when it
+ begins with `notes/`, `refs/` and otherwise `refs/notes/` is prefixed
+ to form a full name of the ref.
--ignore-missing::
Do not consider it an error to request removing notes from an
diff --git a/Documentation/git-rebase.txt b/Documentation/git-rebase.txt
index ca03954..bccfdf7 100644
--- a/Documentation/git-rebase.txt
+++ b/Documentation/git-rebase.txt
@@ -294,7 +294,9 @@ which makes little sense.
-S[<keyid>]::
--gpg-sign[=<keyid>]::
- GPG-sign commits.
+ GPG-sign commits. The `keyid` argument is optional and
+ defaults to the committer identity; if specified, it must be
+ stuck to the option without a space.
-q::
--quiet::
diff --git a/Documentation/git-revert.txt b/Documentation/git-revert.txt
index cceb5f2..b15139f 100644
--- a/Documentation/git-revert.txt
+++ b/Documentation/git-revert.txt
@@ -8,7 +8,7 @@ git-revert - Revert some existing commits
SYNOPSIS
--------
[verse]
-'git revert' [--[no-]edit] [-n] [-m parent-number] [-s] [-S[<key-id>]] <commit>...
+'git revert' [--[no-]edit] [-n] [-m parent-number] [-s] [-S[<keyid>]] <commit>...
'git revert' --continue
'git revert' --quit
'git revert' --abort
@@ -80,9 +80,11 @@ more details.
This is useful when reverting more than one commits'
effect to your index in a row.
--S[<key-id>]::
---gpg-sign[=<key-id>]::
- GPG-sign commits.
+-S[<keyid>]::
+--gpg-sign[=<keyid>]::
+ GPG-sign commits. The `keyid` argument is optional and
+ defaults to the committer identity; if specified, it must be
+ stuck to the option without a space.
-s::
--signoff::
diff --git a/Documentation/git-status.txt b/Documentation/git-status.txt
index 335f312..e1e8f57 100644
--- a/Documentation/git-status.txt
+++ b/Documentation/git-status.txt
@@ -53,8 +53,9 @@ OPTIONS
--untracked-files[=<mode>]::
Show untracked files.
+
-The mode parameter is optional (defaults to 'all'), and is used to
-specify the handling of untracked files.
+The mode parameter is used to specify the handling of untracked files.
+It is optional: it defaults to 'all', and if specified, it must be
+stuck to the option (e.g. `-uno`, but not `-u no`).
+
The possible options are:
+
diff --git a/Documentation/git-tag.txt b/Documentation/git-tag.txt
index 84f6496..08b4dfb 100644
--- a/Documentation/git-tag.txt
+++ b/Documentation/git-tag.txt
@@ -9,7 +9,7 @@ git-tag - Create, list, delete or verify a tag object signed with GPG
SYNOPSIS
--------
[verse]
-'git tag' [-a | -s | -u <key-id>] [-f] [-m <msg> | -F <file>]
+'git tag' [-a | -s | -u <keyid>] [-f] [-m <msg> | -F <file>]
<tagname> [<commit> | <object>]
'git tag' -d <tagname>...
'git tag' [-n[<num>]] -l [--contains <commit>] [--points-at <object>]
@@ -24,19 +24,19 @@ to delete, list or verify tags.
Unless `-f` is given, the named tag must not yet exist.
-If one of `-a`, `-s`, or `-u <key-id>` is passed, the command
+If one of `-a`, `-s`, or `-u <keyid>` is passed, the command
creates a 'tag' object, and requires a tag message. Unless
`-m <msg>` or `-F <file>` is given, an editor is started for the user to type
in the tag message.
-If `-m <msg>` or `-F <file>` is given and `-a`, `-s`, and `-u <key-id>`
+If `-m <msg>` or `-F <file>` is given and `-a`, `-s`, and `-u <keyid>`
are absent, `-a` is implied.
Otherwise just a tag reference for the SHA-1 object name of the commit object is
created (i.e. a lightweight tag).
A GnuPG signed tag object will be created when `-s` or `-u
-<key-id>` is used. When `-u <key-id>` is not used, the
+<keyid>` is used. When `-u <keyid>` is not used, the
committer identity for the current user is used to find the
GnuPG key for signing. The configuration variable `gpg.program`
is used to specify custom GnuPG binary.
@@ -63,8 +63,8 @@ OPTIONS
--sign::
Make a GPG-signed tag, using the default e-mail address's key.
--u <key-id>::
---local-user=<key-id>::
+-u <keyid>::
+--local-user=<keyid>::
Make a GPG-signed tag, using the given key.
-f::
@@ -125,14 +125,14 @@ This option is only applicable when listing tags without annotation lines.
Use the given tag message (instead of prompting).
If multiple `-m` options are given, their values are
concatenated as separate paragraphs.
- Implies `-a` if none of `-a`, `-s`, or `-u <key-id>`
+ Implies `-a` if none of `-a`, `-s`, or `-u <keyid>`
is given.
-F <file>::
--file=<file>::
Take the tag message from the given file. Use '-' to
read the message from the standard input.
- Implies `-a` if none of `-a`, `-s`, or `-u <key-id>`
+ Implies `-a` if none of `-a`, `-s`, or `-u <keyid>`
is given.
--cleanup=<mode>::
@@ -166,7 +166,7 @@ it in the repository configuration as follows:
-------------------------------------
[user]
- signingKey = <gpg-key-id>
+ signingKey = <gpg-keyid>
-------------------------------------
diff --git a/Documentation/git.txt b/Documentation/git.txt
index 1a42631..4585103 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.6.1/git.html[documentation for release 2.6.1]
+* link:v2.6.2/git.html[documentation for release 2.6.2]
* release notes for
+ link:RelNotes/2.6.2.txt[2.6.2],
link:RelNotes/2.6.1.txt[2.6.1],
link:RelNotes/2.6.0.txt[2.6].
diff --git a/Documentation/pretty-options.txt b/Documentation/pretty-options.txt
index 8d6c5ce..4b659ac 100644
--- a/Documentation/pretty-options.txt
+++ b/Documentation/pretty-options.txt
@@ -55,8 +55,9 @@ By default, the notes shown are from the notes refs listed in the
environment overrides). See linkgit:git-config[1] for more details.
+
With an optional '<ref>' argument, show this notes ref instead of the
-default notes ref(s). The ref is taken to be in `refs/notes/` if it
-is not qualified.
+default notes ref(s). The ref specifies the full refname when it begins
+with `refs/notes/`; when it begins with `notes/`, `refs/` and otherwise
+`refs/notes/` is prefixed to form a full name of the ref.
+
Multiple --notes options can be combined to control which notes are
being displayed. Examples: "--notes=foo" will show only notes from
diff --git a/Documentation/technical/repository-version.txt b/Documentation/technical/repository-version.txt
new file mode 100644
index 0000000..00ad379
--- /dev/null
+++ b/Documentation/technical/repository-version.txt
@@ -0,0 +1,88 @@
+Git Repository Format Versions
+==============================
+
+Every git repository is marked with a numeric version in the
+`core.repositoryformatversion` key of its `config` file. This version
+specifies the rules for operating on the on-disk repository data. An
+implementation of git which does not understand a particular version
+advertised by an on-disk repository MUST NOT operate on that repository;
+doing so risks not only producing wrong results, but actually losing
+data.
+
+Because of this rule, version bumps should be kept to an absolute
+minimum. Instead, we generally prefer these strategies:
+
+ - bumping format version numbers of individual data files (e.g.,
+ index, packfiles, etc). This restricts the incompatibilities only to
+ those files.
+
+ - introducing new data that gracefully degrades when used by older
+ clients (e.g., pack bitmap files are ignored by older clients, which
+ simply do not take advantage of the optimization they provide).
+
+A whole-repository format version bump should only be part of a change
+that cannot be independently versioned. For instance, if one were to
+change the reachability rules for objects, or the rules for locking
+refs, that would require a bump of the repository format version.
+
+Note that this applies only to accessing the repository's disk contents
+directly. An older client which understands only format `0` may still
+connect via `git://` to a repository using format `1`, as long as the
+server process understands format `1`.
+
+The preferred strategy for rolling out a version bump (whether whole
+repository or for a single file) is to teach git to read the new format,
+and allow writing the new format with a config switch or command line
+option (for experimentation or for those who do not care about backwards
+compatibility with older gits). Then after a long period to allow the
+reading capability to become common, we may switch to writing the new
+format by default.
+
+The currently defined format versions are:
+
+Version `0`
+-----------
+
+This is the format defined by the initial version of git, including but
+not limited to the format of the repository directory, the repository
+configuration file, and the object and ref storage. Specifying the
+complete behavior of git is beyond the scope of this document.
+
+Version `1`
+-----------
+
+This format is identical to version `0`, with the following exceptions:
+
+ 1. When reading the `core.repositoryformatversion` variable, a git
+ implementation which supports version 1 MUST also read any
+ configuration keys found in the `extensions` section of the
+ configuration file.
+
+ 2. If a version-1 repository specifies any `extensions.*` keys that
+ the running git has not implemented, the operation MUST NOT
+ proceed. Similarly, if the value of any known key is not understood
+ by the implementation, the operation MUST NOT proceed.
+
+Note that if no extensions are specified in the config file, then
+`core.repositoryformatversion` SHOULD be set to `0` (setting it to `1`
+provides no benefit, and makes the repository incompatible with older
+implementations of git).
+
+This document will serve as the master list for extensions. Any
+implementation wishing to define a new extension should make a note of
+it here, in order to claim the name.
+
+The defined extensions are:
+
+`noop`
+~~~~~~
+
+This extension does not change git's behavior at all. It is useful only
+for testing format-1 compatibility.
+
+`preciousObjects`
+~~~~~~~~~~~~~~~~~
+
+When the config key `extensions.preciousObjects` is set to `true`,
+objects in the repository MUST NOT be deleted (e.g., by `git-prune` or
+`git repack -d`).
diff --git a/Documentation/user-manual.txt b/Documentation/user-manual.txt
index 68978f5..1b7987e 100644
--- a/Documentation/user-manual.txt
+++ b/Documentation/user-manual.txt
@@ -3424,7 +3424,7 @@ just missing one particular blob version.
[[the-index]]
The index
------------
+---------
The index is a binary file (generally kept in `.git/index`) containing a
sorted list of path names, each with permissions and the SHA-1 of a blob
diff --git a/GIT-VERSION-GEN b/GIT-VERSION-GEN
index e1aba85..7876709 100755
--- a/GIT-VERSION-GEN
+++ b/GIT-VERSION-GEN
@@ -1,7 +1,7 @@
#!/bin/sh
GVF=GIT-VERSION-FILE
-DEF_VER=v2.6.1
+DEF_VER=v2.6.2
LF='
'
diff --git a/Makefile b/Makefile
index 8d5df7e..04c2231 100644
--- a/Makefile
+++ b/Makefile
@@ -375,6 +375,9 @@ ALL_CFLAGS = $(CPPFLAGS) $(CFLAGS)
ALL_LDFLAGS = $(LDFLAGS)
STRIP ?= strip
+# Create as necessary, replace existing, make ranlib unneeded.
+ARFLAGS = rcs
+
# Among the variables below, these:
# gitexecdir
# template_dir
@@ -1465,13 +1468,13 @@ endif
QUIET_SUBDIR0 = +$(MAKE) -C # space to separate -C and subdir
QUIET_SUBDIR1 =
-ifneq ($(findstring $(MAKEFLAGS),w),w)
+ifneq ($(findstring w,$(MAKEFLAGS)),w)
PRINT_DIR = --no-print-directory
else # "make -w"
NO_SUBDIR = :
endif
-ifneq ($(findstring $(MAKEFLAGS),s),s)
+ifneq ($(findstring s,$(MAKEFLAGS)),s)
ifndef V
QUIET_CC = @echo ' ' CC $@;
QUIET_AR = @echo ' ' AR $@;
@@ -1995,13 +1998,13 @@ $(REMOTE_CURL_PRIMARY): remote-curl.o http.o http-walker.o GIT-LDFLAGS $(GITLIBS
$(LIBS) $(CURL_LIBCURL) $(EXPAT_LIBEXPAT)
$(LIB_FILE): $(LIB_OBJS)
- $(QUIET_AR)$(RM) $@ && $(AR) rcs $@ $^
+ $(QUIET_AR)$(RM) $@ && $(AR) $(ARFLAGS) $@ $^
$(XDIFF_LIB): $(XDIFF_OBJS)
- $(QUIET_AR)$(RM) $@ && $(AR) rcs $@ $^
+ $(QUIET_AR)$(RM) $@ && $(AR) $(ARFLAGS) $@ $^
$(VCSSVN_LIB): $(VCSSVN_OBJS)
- $(QUIET_AR)$(RM) $@ && $(AR) rcs $@ $^
+ $(QUIET_AR)$(RM) $@ && $(AR) $(ARFLAGS) $@ $^
export DEFAULT_EDITOR DEFAULT_PAGER
diff --git a/RelNotes b/RelNotes
index def6ebd..0223580 120000
--- a/RelNotes
+++ b/RelNotes
@@ -1 +1 @@
-Documentation/RelNotes/2.6.1.txt \ No newline at end of file
+Documentation/RelNotes/2.6.2.txt \ No newline at end of file
diff --git a/advice.c b/advice.c
index 4965686..4dc5cf1 100644
--- a/advice.c
+++ b/advice.c
@@ -100,7 +100,7 @@ void NORETURN die_conclude_merge(void)
{
error(_("You have not concluded your merge (MERGE_HEAD exists)."));
if (advice_resolve_conflict)
- advise(_("Please, commit your changes before you can merge."));
+ advise(_("Please, commit your changes before merging."));
die(_("Exiting because of unfinished merge."));
}
diff --git a/builtin/am.c b/builtin/am.c
index fbe9152..7b8e11e 100644
--- a/builtin/am.c
+++ b/builtin/am.c
@@ -2208,6 +2208,17 @@ enum resume_mode {
RESUME_ABORT
};
+static int git_am_config(const char *k, const char *v, void *cb)
+{
+ int status;
+
+ status = git_gpg_config(k, v, NULL);
+ if (status)
+ return status;
+
+ return git_default_config(k, v, NULL);
+}
+
int cmd_am(int argc, const char **argv, const char *prefix)
{
struct am_state state;
@@ -2308,7 +2319,7 @@ int cmd_am(int argc, const char **argv, const char *prefix)
OPT_END()
};
- git_config(git_default_config, NULL);
+ git_config(git_am_config, NULL);
am_state_init(&state, git_path("rebase-apply"));
diff --git a/builtin/blame.c b/builtin/blame.c
index 245d253..295ce92 100644
--- a/builtin/blame.c
+++ b/builtin/blame.c
@@ -1371,8 +1371,15 @@ static void pass_whole_blame(struct scoreboard *sb,
*/
static struct commit_list *first_scapegoat(struct rev_info *revs, struct commit *commit)
{
- if (!reverse)
+ if (!reverse) {
+ if (revs->first_parent_only &&
+ commit->parents &&
+ commit->parents->next) {
+ free_commit_list(commit->parents->next);
+ commit->parents->next = NULL;
+ }
return commit->parents;
+ }
return lookup_decoration(&revs->children, &commit->object);
}
@@ -2685,6 +2692,8 @@ parse_done:
}
else if (contents_from)
die("--contents and --children do not blend well.");
+ else if (revs.first_parent_only)
+ die("combining --first-parent and --reverse is not supported");
else {
final_commit_name = prepare_initial(&sb);
sb.commits.compare = compare_commits_by_reverse_commit_date;
diff --git a/builtin/fsck.c b/builtin/fsck.c
index 0794703..b9a74f0 100644
--- a/builtin/fsck.c
+++ b/builtin/fsck.c
@@ -38,6 +38,7 @@ static int show_dangling = 1;
#define ERROR_OBJECT 01
#define ERROR_REACHABLE 02
#define ERROR_PACK 04
+#define ERROR_REFS 010
#ifdef NO_D_INO_IN_DIRENT
#define SORT_DIRENT 0
@@ -521,8 +522,10 @@ static int fsck_handle_ref(const char *refname, const struct object_id *oid,
/* We'll continue with the rest despite the error.. */
return 0;
}
- if (obj->type != OBJ_COMMIT && is_branch(refname))
+ if (obj->type != OBJ_COMMIT && is_branch(refname)) {
error("%s: not a commit", refname);
+ errors_found |= ERROR_REFS;
+ }
default_refs++;
obj->used = 1;
mark_object_reachable(obj);
@@ -585,17 +588,23 @@ static int fsck_head_link(void)
fprintf(stderr, "Checking HEAD link\n");
head_points_at = resolve_ref_unsafe("HEAD", 0, head_oid.hash, &flag);
- if (!head_points_at)
+ if (!head_points_at) {
+ errors_found |= ERROR_REFS;
return error("Invalid HEAD");
+ }
if (!strcmp(head_points_at, "HEAD"))
/* detached HEAD */
null_is_error = 1;
- else if (!starts_with(head_points_at, "refs/heads/"))
+ else if (!starts_with(head_points_at, "refs/heads/")) {
+ errors_found |= ERROR_REFS;
return error("HEAD points to something strange (%s)",
head_points_at);
+ }
if (is_null_oid(&head_oid)) {
- if (null_is_error)
+ if (null_is_error) {
+ errors_found |= ERROR_REFS;
return error("HEAD: detached HEAD points at nothing");
+ }
fprintf(stderr, "notice: HEAD points to an unborn branch (%s)\n",
head_points_at + 11);
}
@@ -615,6 +624,7 @@ static int fsck_cache_tree(struct cache_tree *it)
if (!obj) {
error("%s: invalid sha1 pointer in cache-tree",
sha1_to_hex(it->sha1));
+ errors_found |= ERROR_REFS;
return 1;
}
obj->used = 1;
diff --git a/builtin/gc.c b/builtin/gc.c
index 0ad8d30..b757d9a 100644
--- a/builtin/gc.c
+++ b/builtin/gc.c
@@ -340,15 +340,17 @@ int cmd_gc(int argc, const char **argv, const char *prefix)
if (gc_before_repack())
return -1;
- if (run_command_v_opt(repack.argv, RUN_GIT_CMD))
- return error(FAILED_RUN, repack.argv[0]);
-
- if (prune_expire) {
- argv_array_push(&prune, prune_expire);
- if (quiet)
- argv_array_push(&prune, "--no-progress");
- if (run_command_v_opt(prune.argv, RUN_GIT_CMD))
- return error(FAILED_RUN, prune.argv[0]);
+ if (!repository_format_precious_objects) {
+ if (run_command_v_opt(repack.argv, RUN_GIT_CMD))
+ return error(FAILED_RUN, repack.argv[0]);
+
+ if (prune_expire) {
+ argv_array_push(&prune, prune_expire);
+ if (quiet)
+ argv_array_push(&prune, "--no-progress");
+ if (run_command_v_opt(prune.argv, RUN_GIT_CMD))
+ return error(FAILED_RUN, prune.argv[0]);
+ }
}
if (prune_worktrees_expire) {
diff --git a/builtin/ls-remote.c b/builtin/ls-remote.c
index 4554dbc..5e9d545 100644
--- a/builtin/ls-remote.c
+++ b/builtin/ls-remote.c
@@ -4,7 +4,7 @@
#include "remote.h"
static const char ls_remote_usage[] =
-"git ls-remote [--heads] [--tags] [-u <exec> | --upload-pack <exec>]\n"
+"git ls-remote [--heads] [--tags] [--upload-pack=<exec>]\n"
" [-q | --quiet] [--exit-code] [--get-url] [<repository> [<refs>...]]";
/*
diff --git a/builtin/prune.c b/builtin/prune.c
index 10b03d3..8f4f052 100644
--- a/builtin/prune.c
+++ b/builtin/prune.c
@@ -119,6 +119,9 @@ int cmd_prune(int argc, const char **argv, const char *prefix)
argc = parse_options(argc, argv, prefix, options, prune_usage, 0);
+ if (repository_format_precious_objects)
+ die(_("cannot prune in a precious-objects repo"));
+
while (argc--) {
unsigned char sha1[20];
const char *name = *argv++;
diff --git a/builtin/pull.c b/builtin/pull.c
index a39bb0a..bf3fd3f 100644
--- a/builtin/pull.c
+++ b/builtin/pull.c
@@ -66,7 +66,7 @@ static int parse_opt_rebase(const struct option *opt, const char *arg, int unset
}
static const char * const pull_usage[] = {
- N_("git pull [options] [<repository> [<refspec>...]]"),
+ N_("git pull [<options>] [<repository> [<refspec>...]]"),
NULL
};
diff --git a/builtin/repack.c b/builtin/repack.c
index 70b9b1e..9456110 100644
--- a/builtin/repack.c
+++ b/builtin/repack.c
@@ -193,6 +193,9 @@ int cmd_repack(int argc, const char **argv, const char *prefix)
argc = parse_options(argc, argv, prefix, builtin_repack_options,
git_repack_usage, 0);
+ if (delete_redundant && repository_format_precious_objects)
+ die(_("cannot delete packs in a precious-objects repo"));
+
if (pack_kept_objects < 0)
pack_kept_objects = write_bitmaps;
diff --git a/cache.h b/cache.h
index 79066e5..d801429 100644
--- a/cache.h
+++ b/cache.h
@@ -696,8 +696,15 @@ extern char *notes_ref_name;
extern int grafts_replace_parents;
+/*
+ * GIT_REPO_VERSION is the version we write by default. The
+ * _READ variant is the highest number we know how to
+ * handle.
+ */
#define GIT_REPO_VERSION 0
+#define GIT_REPO_VERSION_READ 1
extern int repository_format_version;
+extern int repository_format_precious_objects;
extern int check_repository_format(void);
#define MTIME_CHANGED 0x0001
diff --git a/connect.c b/connect.c
index 27a706f..d3283b8 100644
--- a/connect.c
+++ b/connect.c
@@ -255,7 +255,7 @@ static const char *prot_name(enum protocol protocol)
case PROTO_GIT:
return "git";
default:
- return "unkown protocol";
+ return "unknown protocol";
}
}
@@ -724,10 +724,13 @@ struct child_process *git_connect(int fd[2], const char *url,
strbuf_addch(&cmd, ' ');
sq_quote_buf(&cmd, path);
+ /* remove repo-local variables from the environment */
+ conn->env = local_repo_env;
+ conn->use_shell = 1;
conn->in = conn->out = -1;
if (protocol == PROTO_SSH) {
const char *ssh;
- int putty, tortoiseplink = 0;
+ int putty = 0, tortoiseplink = 0;
char *ssh_host = hostandport;
const char *port = NULL;
transport_check_allowed("ssh");
@@ -750,13 +753,17 @@ struct child_process *git_connect(int fd[2], const char *url,
}
ssh = getenv("GIT_SSH_COMMAND");
- if (ssh) {
- conn->use_shell = 1;
- putty = 0;
- } else {
+ if (!ssh) {
const char *base;
char *ssh_dup;
+ /*
+ * GIT_SSH is the no-shell version of
+ * GIT_SSH_COMMAND (and must remain so for
+ * historical compatibility).
+ */
+ conn->use_shell = 0;
+
ssh = getenv("GIT_SSH");
if (!ssh)
ssh = "ssh";
@@ -766,8 +773,9 @@ struct child_process *git_connect(int fd[2], const char *url,
tortoiseplink = !strcasecmp(base, "tortoiseplink") ||
!strcasecmp(base, "tortoiseplink.exe");
- putty = !strcasecmp(base, "plink") ||
- !strcasecmp(base, "plink.exe") || tortoiseplink;
+ putty = tortoiseplink ||
+ !strcasecmp(base, "plink") ||
+ !strcasecmp(base, "plink.exe");
free(ssh_dup);
}
@@ -782,9 +790,6 @@ struct child_process *git_connect(int fd[2], const char *url,
}
argv_array_push(&conn->args, ssh_host);
} else {
- /* remove repo-local variables from the environment */
- conn->env = local_repo_env;
- conn->use_shell = 1;
transport_check_allowed("file");
}
argv_array_push(&conn->args, cmd.buf);
diff --git a/contrib/examples/git-pull.sh b/contrib/examples/git-pull.sh
index e8dc2e0..6b3a03f 100755
--- a/contrib/examples/git-pull.sh
+++ b/contrib/examples/git-pull.sh
@@ -69,7 +69,7 @@ as appropriate to mark resolution and make a commit.")"
die_merge () {
if [ $(git config --bool --get advice.resolveConflict || echo true) = "true" ]; then
die "$(gettext "You have not concluded your merge (MERGE_HEAD exists).
-Please, commit your changes before you can merge.")"
+Please, commit your changes before merging.")"
else
die "$(gettext "You have not concluded your merge (MERGE_HEAD exists).")"
fi
diff --git a/dir.c b/dir.c
index 7b25634..118ba59 100644
--- a/dir.c
+++ b/dir.c
@@ -2030,6 +2030,15 @@ int file_exists(const char *f)
return lstat(f, &sb) == 0;
}
+static int cmp_icase(char a, char b)
+{
+ if (a == b)
+ return 0;
+ if (ignore_case)
+ return toupper(a) - toupper(b);
+ return a - b;
+}
+
/*
* Given two normalized paths (a trailing slash is ok), if subdir is
* outside dir, return -1. Otherwise return the offset in subdir that
@@ -2041,7 +2050,7 @@ int dir_inside_of(const char *subdir, const char *dir)
assert(dir && subdir && *dir && *subdir);
- while (*dir && *subdir && *dir == *subdir) {
+ while (*dir && *subdir && !cmp_icase(*dir, *subdir)) {
dir++;
subdir++;
offset++;
diff --git a/environment.c b/environment.c
index a533aed..23a38e4 100644
--- a/environment.c
+++ b/environment.c
@@ -26,6 +26,7 @@ int warn_ambiguous_refs = 1;
int warn_on_object_refname_ambiguity = 1;
int ref_paranoia = -1;
int repository_format_version;
+int repository_format_precious_objects;
const char *git_commit_encoding;
const char *git_log_output_encoding;
int shared_repository = PERM_UMASK;
diff --git a/git-filter-branch.sh b/git-filter-branch.sh
index 5b3f63d..fff8093 100755
--- a/git-filter-branch.sh
+++ b/git-filter-branch.sh
@@ -347,7 +347,7 @@ while read commit parents; do
fi
{
- while read -r header_line && test -n "$header_line"
+ while IFS='' read -r header_line && test -n "$header_line"
do
# skip header lines...
:;
diff --git a/git-rebase--interactive.sh b/git-rebase--interactive.sh
index f01637b..d65c06e 100644
--- a/git-rebase--interactive.sh
+++ b/git-rebase--interactive.sh
@@ -729,8 +729,8 @@ transform_todo_ids () {
# that do not have a SHA-1 at the beginning of $rest.
;;
*)
- sha1=$(git rev-parse --verify --quiet "$@" ${rest%% *}) &&
- rest="$sha1 ${rest#* }"
+ sha1=$(git rev-parse --verify --quiet "$@" ${rest%%[ ]*}) &&
+ rest="$sha1 ${rest#*[ ]}"
;;
esac
printf '%s\n' "$command${rest:+ }$rest"
@@ -857,7 +857,8 @@ add_exec_commands () {
# Check if the SHA-1 passed as an argument is a
# correct one, if not then print $2 in "$todo".badsha
# $1: the SHA-1 to test
-# $2: the line to display if incorrect SHA-1
+# $2: the line number of the input
+# $3: the input filename
check_commit_sha () {
badsha=0
if test -z $1
@@ -873,9 +874,10 @@ check_commit_sha () {
if test $badsha -ne 0
then
+ line="$(sed -n -e "${2}p" "$3")"
warn "Warning: the SHA-1 is missing or isn't" \
"a commit in the following line:"
- warn " - $2"
+ warn " - $line"
warn
fi
@@ -886,37 +888,31 @@ check_commit_sha () {
# from the todolist in stdin
check_bad_cmd_and_sha () {
retval=0
- git stripspace --strip-comments |
- (
- while read -r line
- do
- IFS=' '
- set -- $line
- command=$1
- sha1=$2
-
- case $command in
- ''|noop|x|"exec")
- # Doesn't expect a SHA-1
- ;;
- pick|p|drop|d|reword|r|edit|e|squash|s|fixup|f)
- if ! check_commit_sha $sha1 "$line"
- then
- retval=1
- fi
- ;;
- *)
- warn "Warning: the command isn't recognized" \
- "in the following line:"
- warn " - $line"
- warn
+ lineno=0
+ while read -r command rest
+ do
+ lineno=$(( $lineno + 1 ))
+ case $command in
+ "$comment_char"*|''|noop|x|exec)
+ # Doesn't expect a SHA-1
+ ;;
+ pick|p|drop|d|reword|r|edit|e|squash|s|fixup|f)
+ if ! check_commit_sha "${rest%%[ ]*}" "$lineno" "$1"
+ then
retval=1
- ;;
- esac
- done
-
- return $retval
- )
+ fi
+ ;;
+ *)
+ line="$(sed -n -e "${lineno}p" "$1")"
+ warn "Warning: the command isn't recognized" \
+ "in the following line:"
+ warn " - $line"
+ warn
+ retval=1
+ ;;
+ esac
+ done <"$1"
+ return $retval
}
# Print the list of the SHA-1 of the commits
@@ -1010,7 +1006,7 @@ check_todo_list () {
;;
esac
- if ! check_bad_cmd_and_sha <"$todo"
+ if ! check_bad_cmd_and_sha "$todo"
then
raise_error=t
fi
diff --git a/pager.c b/pager.c
index 27d4c8a..e425070 100644
--- a/pager.c
+++ b/pager.c
@@ -14,19 +14,29 @@
static const char *pager_argv[] = { NULL, NULL };
static struct child_process pager_process = CHILD_PROCESS_INIT;
-static void wait_for_pager(void)
+static void wait_for_pager(int in_signal)
{
- fflush(stdout);
- fflush(stderr);
+ if (!in_signal) {
+ fflush(stdout);
+ fflush(stderr);
+ }
/* signal EOF to pager */
close(1);
close(2);
- finish_command(&pager_process);
+ if (in_signal)
+ finish_command_in_signal(&pager_process);
+ else
+ finish_command(&pager_process);
+}
+
+static void wait_for_pager_atexit(void)
+{
+ wait_for_pager(0);
}
static void wait_for_pager_signal(int signo)
{
- wait_for_pager();
+ wait_for_pager(1);
sigchain_pop(signo);
raise(signo);
}
@@ -90,7 +100,7 @@ void setup_pager(void)
/* this makes sure that the parent terminates after the pager */
sigchain_push_common(wait_for_pager_signal);
- atexit(wait_for_pager);
+ atexit(wait_for_pager_atexit);
}
int pager_in_use(void)
diff --git a/path.c b/path.c
index 95acbaf..58d5620 100644
--- a/path.c
+++ b/path.c
@@ -676,6 +676,11 @@ const char *remove_leading_path(const char *in, const char *prefix)
* normalized, any time "../" eats up to the prefix_len part,
* prefix_len is reduced. In the end prefix_len is the remaining
* prefix that has not been overridden by user pathspec.
+ *
+ * NEEDSWORK: This function doesn't perform normalization w.r.t. trailing '/'.
+ * For everything but the root folder itself, the normalized path should not
+ * end with a '/', then the callers need to be fixed up accordingly.
+ *
*/
int normalize_path_copy_len(char *dst, const char *src, int *prefix_len)
{
diff --git a/po/ru.po b/po/ru.po
index 4f66cee..c9e1fb8 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -10,10 +10,10 @@ msgid ""
msgstr ""
"Project-Id-Version: Перевод Git на русский язык\n"
"Report-Msgid-Bugs-To: Git Mailing List <git@vger.kernel.org>\n"
-"POT-Creation-Date: 2015-07-14 07:19+0800\n"
-"PO-Revision-Date: 2015-07-14 13:06+0000\n"
+"POT-Creation-Date: 2015-09-15 06:45+0800\n"
+"PO-Revision-Date: 2015-09-30 14:53+0000\n"
"Last-Translator: Dimitriy Ryazantcev <DJm00n@mail.ru>\n"
-"Language-Team: Russian (http://www.transifex.com/p/git-po-ru/language/ru/)\n"
+"Language-Team: Russian (http://www.transifex.com/djm00n/git-po-ru/language/ru/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -31,94 +31,106 @@ msgid ""
"as appropriate to mark resolution and make a commit."
msgstr "Исправьте их в рабочем каталоге, затем запустите «git add/rm <файл>»,\nчтобы пометить исправление и сделайте коммит."
-#: archive.c:11
+#: advice.c:101 builtin/merge.c:1227
+msgid "You have not concluded your merge (MERGE_HEAD exists)."
+msgstr "Вы не завершили слияние (присутствует файл MERGE_HEAD)."
+
+#: advice.c:103
+msgid "Please, commit your changes before you can merge."
+msgstr "Выполните коммит ваших изменений, перед слиянием."
+
+#: advice.c:104
+msgid "Exiting because of unfinished merge."
+msgstr "Выход из-за незавершенного слияния."
+
+#: archive.c:12
msgid "git archive [<options>] <tree-ish> [<path>...]"
msgstr "git archive [<опции>] <указатель-дерева> [<путь>…]"
-#: archive.c:12
+#: archive.c:13
msgid "git archive --list"
msgstr "git archive --list"
-#: archive.c:13
+#: archive.c:14
msgid ""
"git archive --remote <repo> [--exec <cmd>] [<options>] <tree-ish> "
"[<path>...]"
msgstr "git archive --remote <репозиторий> [--exec <команда>] [<опции>] <указатель-дерева> [<путь>…]"
-#: archive.c:14
+#: archive.c:15
msgid "git archive --remote <repo> [--exec <cmd>] --list"
msgstr "git archive --remote <репозиторий> [--exec <команда>] --list"
-#: archive.c:342 builtin/add.c:137 builtin/add.c:428 builtin/rm.c:327
+#: archive.c:343 builtin/add.c:137 builtin/add.c:426 builtin/rm.c:327
#, c-format
msgid "pathspec '%s' did not match any files"
msgstr "спецификация пути «%s» не соответствует ни одному файлу"
-#: archive.c:427
+#: archive.c:428
msgid "fmt"
msgstr "формат"
-#: archive.c:427
+#: archive.c:428
msgid "archive format"
msgstr "формат архива"
-#: archive.c:428 builtin/log.c:1204
+#: archive.c:429 builtin/log.c:1229
msgid "prefix"
msgstr "префикс"
-#: archive.c:429
+#: archive.c:430
msgid "prepend prefix to each pathname in the archive"
msgstr "добавлять префикс перед каждым путем файла в архиве"
-#: archive.c:430 builtin/archive.c:88 builtin/blame.c:2516
-#: builtin/blame.c:2517 builtin/config.c:57 builtin/fast-export.c:986
-#: builtin/fast-export.c:988 builtin/grep.c:712 builtin/hash-object.c:99
-#: builtin/ls-files.c:446 builtin/ls-files.c:449 builtin/notes.c:394
-#: builtin/notes.c:557 builtin/read-tree.c:109 parse-options.h:150
+#: archive.c:431 builtin/archive.c:88 builtin/blame.c:2516
+#: builtin/blame.c:2517 builtin/config.c:58 builtin/fast-export.c:987
+#: builtin/fast-export.c:989 builtin/grep.c:712 builtin/hash-object.c:99
+#: builtin/ls-files.c:446 builtin/ls-files.c:449 builtin/notes.c:395
+#: builtin/notes.c:558 builtin/read-tree.c:109 parse-options.h:153
msgid "file"
msgstr "файл"
-#: archive.c:431 builtin/archive.c:89
+#: archive.c:432 builtin/archive.c:89
msgid "write the archive to this file"
msgstr "запись архива в этот файл"
-#: archive.c:433
+#: archive.c:434
msgid "read .gitattributes in working directory"
msgstr "читать .gitattributes в рабочем каталоге"
-#: archive.c:434
+#: archive.c:435
msgid "report archived files on stderr"
msgstr "отчет об архивированных файлах в stderr"
-#: archive.c:435
+#: archive.c:436
msgid "store only"
msgstr "только хранение"
-#: archive.c:436
+#: archive.c:437
msgid "compress faster"
msgstr "сжимать быстрее"
-#: archive.c:444
+#: archive.c:445
msgid "compress better"
msgstr "сжимать лучше"
-#: archive.c:447
+#: archive.c:448
msgid "list supported archive formats"
msgstr "перечислить поддерживаемые форматы архивов"
-#: archive.c:449 builtin/archive.c:90 builtin/clone.c:77
+#: archive.c:450 builtin/archive.c:90 builtin/clone.c:77
msgid "repo"
msgstr "репозиторий"
-#: archive.c:450 builtin/archive.c:91
+#: archive.c:451 builtin/archive.c:91
msgid "retrieve the archive from remote repository <repo>"
msgstr "получить архив из внешнего <репозитория>"
-#: archive.c:451 builtin/archive.c:92 builtin/notes.c:478
+#: archive.c:452 builtin/archive.c:92 builtin/notes.c:479
msgid "command"
msgstr "комманда"
-#: archive.c:452 builtin/archive.c:93
+#: archive.c:453 builtin/archive.c:93
msgid "path to the remote git-upload-archive command"
msgstr "путь к команде git-upload-archive на машине с внешним репозиторием"
@@ -230,6 +242,11 @@ msgstr "Неоднозначное имя объекта: «%s»."
msgid "Not a valid branch point: '%s'."
msgstr "Недопустимая точка ветки: «%s»."
+#: branch.c:399
+#, c-format
+msgid "'%s' is already checked out at '%s'"
+msgstr "«%s» уже находится на «%s»"
+
#: bundle.c:34
#, c-format
msgid "'%s' does not look like a v2 bundle file"
@@ -240,7 +257,7 @@ msgstr "«%s» не похож на файл пакета версии 2"
msgid "unrecognized header: %s%s (%d)"
msgstr "неопознанный заголовок: %s%s (%d)"
-#: bundle.c:87 builtin/commit.c:766
+#: bundle.c:87 builtin/commit.c:765
#, c-format
msgid "could not open '%s'"
msgstr "не удалось открыть «%s»"
@@ -249,9 +266,9 @@ msgstr "не удалось открыть «%s»"
msgid "Repository lacks these prerequisite commits:"
msgstr "В репозитории отсутствуют необходимые коммиты:"
-#: bundle.c:163 sequencer.c:650 sequencer.c:1105 builtin/blame.c:2705
-#: builtin/branch.c:651 builtin/commit.c:1045 builtin/log.c:330
-#: builtin/log.c:825 builtin/log.c:1432 builtin/log.c:1666 builtin/merge.c:358
+#: bundle.c:163 sequencer.c:636 sequencer.c:1083 builtin/blame.c:2708
+#: builtin/branch.c:652 builtin/commit.c:1044 builtin/log.c:334
+#: builtin/log.c:850 builtin/log.c:1457 builtin/log.c:1690 builtin/merge.c:358
#: builtin/shortlog.c:158
msgid "revision walk setup failed"
msgstr "сбой инициализации прохода по редакциям"
@@ -278,38 +295,38 @@ msgstr[1] "Пакет требует эти %d ссылки:"
msgstr[2] "Пакет требует эти %d ссылок:"
msgstr[3] "Пакет требует эти %d ссылок:"
-#: bundle.c:251
+#: bundle.c:253
msgid "Could not spawn pack-objects"
msgstr "Не удалось создать объекты пакета"
-#: bundle.c:269
+#: bundle.c:264
msgid "pack-objects died"
msgstr "критическая ошибка pack-objects"
-#: bundle.c:309
+#: bundle.c:304
msgid "rev-list died"
msgstr "критическая ошибка rev-list"
-#: bundle.c:358
+#: bundle.c:353
#, c-format
msgid "ref '%s' is excluded by the rev-list options"
msgstr "ссылка «%s» исключена в соответствии с опциями rev-list"
-#: bundle.c:437 builtin/log.c:153 builtin/log.c:1342 builtin/shortlog.c:261
+#: bundle.c:443 builtin/log.c:157 builtin/log.c:1367 builtin/shortlog.c:261
#, c-format
msgid "unrecognized argument: %s"
msgstr "неопознанный аргумент: %s"
-#: bundle.c:443
+#: bundle.c:449
msgid "Refusing to create empty bundle."
msgstr "Отклонение создания пустого пакета."
-#: bundle.c:453
+#: bundle.c:459
#, c-format
msgid "cannot create '%s'"
msgstr "не удалось создать «%s»"
-#: bundle.c:474
+#: bundle.c:480
msgid "index-pack died"
msgstr "критическая ошибка index-pack"
@@ -318,7 +335,8 @@ msgstr "критическая ошибка index-pack"
msgid "invalid color value: %.*s"
msgstr "недопустимое значение цвета: %.*s"
-#: commit.c:40
+#: commit.c:40 builtin/am.c:451 builtin/am.c:487 builtin/am.c:1516
+#: builtin/am.c:2128
#, c-format
msgid "could not parse %s"
msgstr "не удалось разобрать %s"
@@ -494,75 +512,75 @@ msgstr "сбой чтения orderfile «%s»"
msgid "Performing inexact rename detection"
msgstr "Выполняется неточное определение переименования"
-#: diff.c:114
+#: diff.c:116
#, c-format
msgid " Failed to parse dirstat cut-off percentage '%s'\n"
msgstr " Сбой разбора величины среза (cut-off) у dirstat «%s»\n"
-#: diff.c:119
+#: diff.c:121
#, c-format
msgid " Unknown dirstat parameter '%s'\n"
msgstr "Неизвестный параметр dirstat: «%s»\n"
-#: diff.c:214
+#: diff.c:216
#, c-format
msgid "Unknown value for 'diff.submodule' config variable: '%s'"
msgstr "Неизвестное значения для переменной «diff.submodule»: «%s»"
-#: diff.c:266
+#: diff.c:268
#, c-format
msgid ""
"Found errors in 'diff.dirstat' config variable:\n"
"%s"
msgstr "Найдены ошибки в переменной «diff.dirstat»:\n%s"
-#: diff.c:2997
+#: diff.c:2998
#, c-format
msgid "external diff died, stopping at %s"
msgstr "критическая ошибка при внешнем сравнении, останов на %s"
-#: diff.c:3393
+#: diff.c:3394
msgid "--follow requires exactly one pathspec"
msgstr "--follow требует ровно одной спецификации пути"
-#: diff.c:3556
+#: diff.c:3557
#, c-format
msgid ""
"Failed to parse --dirstat/-X option parameter:\n"
"%s"
msgstr "Сбой разбора параметра опции --dirstat/-X :\n%s"
-#: diff.c:3570
+#: diff.c:3571
#, c-format
msgid "Failed to parse --submodule option parameter: '%s'"
msgstr "Сбой разбора параметра опции --submodule: «%s»"
-#: dir.c:1852
+#: dir.c:1853
msgid "failed to get kernel name and information"
msgstr "не удалось получить имя ядра и информацию"
-#: dir.c:1945
+#: dir.c:1936
msgid "Untracked cache is disabled on this system."
msgstr "Кэш неотслеживаемых файлов отключен на этой системе."
-#: gpg-interface.c:129 gpg-interface.c:200
+#: gpg-interface.c:166 gpg-interface.c:237
msgid "could not run gpg."
msgstr "не удалось запустить gpg."
-#: gpg-interface.c:141
+#: gpg-interface.c:178
msgid "gpg did not accept the data"
msgstr "gpg не принял данные"
-#: gpg-interface.c:152
+#: gpg-interface.c:189
msgid "gpg failed to sign the data"
msgstr "gpg не удалось подписать данные"
-#: gpg-interface.c:185
+#: gpg-interface.c:222
#, c-format
msgid "could not create temporary file '%s': %s"
msgstr "не удалось создать временный файл «%s»: %s"
-#: gpg-interface.c:188
+#: gpg-interface.c:225
#, c-format
msgid "failed writing detached signature to '%s': %s"
msgstr "сбой записи отсоединенной подписи в «%s»: %s"
@@ -640,20 +658,12 @@ msgstr[3] "\nВозможно, вы имели в виду что-то из эт
msgid "%s: %s - %s"
msgstr "%s: %s — %s"
-#: lockfile.c:345
-msgid "BUG: reopen a lockfile that is still open"
-msgstr "БАГ: повторное открытие файла блокировки, который уже открыт"
-
-#: lockfile.c:347
-msgid "BUG: reopen a lockfile that has been committed"
-msgstr "БАГ: повторное открытие файла блокировки, который уже был закоммичен"
-
#: merge.c:41
msgid "failed to read the cache"
msgstr "сбой чтения кэша"
-#: merge.c:94 builtin/checkout.c:376 builtin/checkout.c:587
-#: builtin/clone.c:647
+#: merge.c:94 builtin/am.c:2001 builtin/am.c:2036 builtin/checkout.c:375
+#: builtin/checkout.c:586 builtin/clone.c:715
msgid "unable to write new index file"
msgstr "не удалось записать новый файл индекса"
@@ -700,7 +710,7 @@ msgstr "невозможно прочитать объект %s «%s»"
msgid "blob expected for %s '%s'"
msgstr "ожидается двоичный объект для %s «%s»"
-#: merge-recursive.c:788 builtin/clone.c:306
+#: merge-recursive.c:788 builtin/clone.c:364
#, c-format
msgid "failed to open '%s'"
msgstr "не удалось открыть «%s»"
@@ -908,19 +918,19 @@ msgstr "Не удается записать индекс."
msgid "Cannot commit uninitialized/unreferenced notes tree"
msgstr "Нельзя закоммитить неинициализированное или не имеющее ссылок дерево заметок"
-#: notes-utils.c:82
+#: notes-utils.c:100
#, c-format
msgid "Bad notes.rewriteMode value: '%s'"
msgstr "Неправильное значение notes.rewriteMode: «%s»"
-#: notes-utils.c:92
+#: notes-utils.c:110
#, c-format
msgid "Refusing to rewrite notes in %s (outside of refs/notes/)"
msgstr "Отказ в перезаписи заметок в %s (за пределами refs/notes/)"
#. TRANSLATORS: The first %s is the name of the
#. environment variable, the second %s is its value
-#: notes-utils.c:119
+#: notes-utils.c:137
#, c-format
msgid "Bad %s value: '%s'"
msgstr "Неправильное значение переменной %s: «%s»"
@@ -930,28 +940,28 @@ msgstr "Неправильное значение переменной %s: «%s
msgid "unable to parse object: %s"
msgstr "не удалось разобрать объект: %s"
-#: parse-options.c:546
+#: parse-options.c:563
msgid "..."
msgstr "…"
-#: parse-options.c:564
+#: parse-options.c:581
#, c-format
msgid "usage: %s"
msgstr "использование: %s"
#. TRANSLATORS: the colon here should align with the
#. one in "usage: %s" translation
-#: parse-options.c:568
+#: parse-options.c:585
#, c-format
msgid " or: %s"
msgstr " или: %s"
-#: parse-options.c:571
+#: parse-options.c:588
#, c-format
msgid " %s"
msgstr " %s"
-#: parse-options.c:605
+#: parse-options.c:622
msgid "-NUM"
msgstr "-КОЛИЧЕСТВО"
@@ -1015,7 +1025,7 @@ msgid ""
"Perhaps you forgot to add either ':/' or '.' ?"
msgstr "Не указан шаблон для исключения с помощью :(exclude).\nВозможно, вы забыли «:/» или «.» ?"
-#: pretty.c:968
+#: pretty.c:969
msgid "unable to parse --pretty format"
msgstr "не удалось разобрать формат для --pretty"
@@ -1023,20 +1033,45 @@ msgstr "не удалось разобрать формат для --pretty"
msgid "done"
msgstr "готово"
-#: read-cache.c:1295
+#: read-cache.c:1296
#, c-format
msgid ""
"index.version set, but the value is invalid.\n"
"Using version %i"
msgstr "index.version указан, но значение недействительное.\nИспользую версию %i"
-#: read-cache.c:1305
+#: read-cache.c:1306
#, c-format
msgid ""
"GIT_INDEX_VERSION set, but the value is invalid.\n"
"Using version %i"
msgstr "GIT_INDEX_VERSION указан, но значение недействительное.\nИспользую версию %i"
+#: refs.c:2941 builtin/merge.c:760 builtin/merge.c:871 builtin/merge.c:973
+#: builtin/merge.c:983
+#, c-format
+msgid "Could not open '%s' for writing"
+msgstr "Не удалось открыть «%s» для записи"
+
+#: refs.c:3001
+#, c-format
+msgid "could not delete reference %s: %s"
+msgstr "не удалось удалить ссылку %s: %s"
+
+#: refs.c:3004
+#, c-format
+msgid "could not delete references: %s"
+msgstr "не удалось удалить ссылки: %s"
+
+#: refs.c:3013
+#, c-format
+msgid "could not remove reference %s"
+msgstr "не удалось удалить ссылки %s"
+
+#: ref-filter.c:660
+msgid "unable to parse format"
+msgstr "не удалось разобрать формат"
+
#: remote.c:792
#, c-format
msgid "Cannot fetch both %s and %s to %s"
@@ -1156,7 +1191,16 @@ msgstr[3] "Ваша ветка и «%s» разошлись\nи теперь и
msgid " (use \"git pull\" to merge the remote branch into yours)\n"
msgstr " (используйте «git pull», чтобы слить внешнюю ветку в вашу)\n"
-#: revision.c:2366
+#: revision.c:2198
+msgid "your current branch appears to be broken"
+msgstr "похоже, ваша текущая ветка повреждена"
+
+#: revision.c:2201
+#, c-format
+msgid "your current branch '%s' does not have any commits yet"
+msgstr "ваша текущая ветка «%s» еще не содержит ни одного коммита"
+
+#: revision.c:2395
msgid "--first-parent is incompatible with --bisect"
msgstr "опцию --first-parent нельзя использовать одновременно с --bisect"
@@ -1169,257 +1213,251 @@ msgstr "сбой открытия /dev/null"
msgid "dup2(%d,%d) failed"
msgstr "dup2(%d,%d) сбой"
-#: send-pack.c:272
+#: send-pack.c:295
msgid "failed to sign the push certificate"
msgstr "сбой подписания сертификата отправки"
-#: send-pack.c:378
+#: send-pack.c:404
msgid "the receiving end does not support --signed push"
msgstr "принимающая сторона не поддерживает отправку с опцией --signed"
-#: send-pack.c:389
+#: send-pack.c:406
+msgid ""
+"not sending a push certificate since the receiving end does not support "
+"--signed push"
+msgstr "не отправляем сертификат для отправки, так как принимающая сторона не поддерживает отправку с опцией --signed"
+
+#: send-pack.c:418
msgid "the receiving end does not support --atomic push"
msgstr "принимающая сторона не поддерживает отправку с опцией --atomic"
-#: sequencer.c:172 builtin/merge.c:760 builtin/merge.c:871 builtin/merge.c:973
-#: builtin/merge.c:983
-#, c-format
-msgid "Could not open '%s' for writing"
-msgstr "Не удалось открыть «%s» для записи"
-
-#: sequencer.c:174 builtin/merge.c:344 builtin/merge.c:763 builtin/merge.c:975
-#: builtin/merge.c:988
-#, c-format
-msgid "Could not write to '%s'"
-msgstr "Не удалось записать в «%s»"
-
-#: sequencer.c:195
+#: sequencer.c:183
msgid ""
"after resolving the conflicts, mark the corrected paths\n"
"with 'git add <paths>' or 'git rm <paths>'"
msgstr "после разрешения конфликтов, пометьте исправленные пути\nс помощью «git add <пути>» или «git rm <пути>»"
-#: sequencer.c:198
+#: sequencer.c:186
msgid ""
"after resolving the conflicts, mark the corrected paths\n"
"with 'git add <paths>' or 'git rm <paths>'\n"
"and commit the result with 'git commit'"
msgstr "после разрешения конфликтов, пометьте исправленные пути\nс помощью «git add <пути>» или «git rm <пути>»\nи сделайте коммит с помощью «git commit»"
-#: sequencer.c:211 sequencer.c:861 sequencer.c:944
+#: sequencer.c:199 sequencer.c:842 sequencer.c:922
#, c-format
msgid "Could not write to %s"
msgstr "Не удалось записать в %s"
-#: sequencer.c:214
+#: sequencer.c:202
#, c-format
msgid "Error wrapping up %s"
msgstr "Ошибка оборачивания %s"
-#: sequencer.c:229
+#: sequencer.c:217
msgid "Your local changes would be overwritten by cherry-pick."
msgstr "Ваши локальные изменение будут перезаписаны отбором лучшего."
-#: sequencer.c:231
+#: sequencer.c:219
msgid "Your local changes would be overwritten by revert."
msgstr "Ваши локальные изменение будут перезаписаны возвратом коммита."
-#: sequencer.c:234
+#: sequencer.c:222
msgid "Commit your changes or stash them to proceed."
msgstr "Сделайте коммит или спрячьте ваши изменения для продолжения."
#. TRANSLATORS: %s will be "revert" or "cherry-pick"
-#: sequencer.c:321
+#: sequencer.c:309
#, c-format
msgid "%s: Unable to write new index file"
msgstr "%s: Не удалось записать файл индекса"
-#: sequencer.c:339
+#: sequencer.c:327
msgid "Could not resolve HEAD commit\n"
msgstr "Не удалось определить HEAD коммит\n"
-#: sequencer.c:359
+#: sequencer.c:347
msgid "Unable to update cache tree\n"
msgstr "Не удалось обновить дерево кэша\n"
-#: sequencer.c:411
+#: sequencer.c:399
#, c-format
msgid "Could not parse commit %s\n"
msgstr "Не удалось разобрать коммит %s\n"
-#: sequencer.c:416
+#: sequencer.c:404
#, c-format
msgid "Could not parse parent commit %s\n"
msgstr "Не удалось разобрать родительскую коммит %s\n"
-#: sequencer.c:482
+#: sequencer.c:469
msgid "Your index file is unmerged."
msgstr "Ваш файл индекса не слит."
-#: sequencer.c:501
+#: sequencer.c:488
#, c-format
msgid "Commit %s is a merge but no -m option was given."
msgstr "Коммит %s — это коммит-слияние, но опция -m не указана."
-#: sequencer.c:509
+#: sequencer.c:496
#, c-format
msgid "Commit %s does not have parent %d"
msgstr "У коммита %s нет предка %d"
-#: sequencer.c:513
+#: sequencer.c:500
#, c-format
msgid "Mainline was specified but commit %s is not a merge."
msgstr "Основная ветка указана, но коммит %s не является слиянием."
#. TRANSLATORS: The first %s will be "revert" or
#. "cherry-pick", the second %s a SHA1
-#: sequencer.c:526
+#: sequencer.c:513
#, c-format
msgid "%s: cannot parse parent commit %s"
msgstr "%s: не удалось разобрать родительский коммит для %s"
-#: sequencer.c:530
+#: sequencer.c:517
#, c-format
msgid "Cannot get commit message for %s"
msgstr "Не удалось получить сообщение коммита для %s"
-#: sequencer.c:616
+#: sequencer.c:603
#, c-format
msgid "could not revert %s... %s"
msgstr "не удалось возвратить коммит %s… %s"
-#: sequencer.c:617
+#: sequencer.c:604
#, c-format
msgid "could not apply %s... %s"
msgstr "не удалось применить коммит %s… %s"
-#: sequencer.c:653
+#: sequencer.c:639
msgid "empty commit set passed"
msgstr "передан пустой набор коммитов"
-#: sequencer.c:661
+#: sequencer.c:647
#, c-format
msgid "git %s: failed to read the index"
msgstr "git %s: сбой чтения индекса"
-#: sequencer.c:665
+#: sequencer.c:651
#, c-format
msgid "git %s: failed to refresh the index"
msgstr "git %s: сбой обновления индекса"
-#: sequencer.c:725
+#: sequencer.c:711
#, c-format
msgid "Cannot %s during a %s"
msgstr "Не удалось %s во время %s"
-#: sequencer.c:747
+#: sequencer.c:733
#, c-format
msgid "Could not parse line %d."
msgstr "Не удалось разобрать строку %d."
-#: sequencer.c:752
+#: sequencer.c:738
msgid "No commits parsed."
msgstr "Коммиты не разобраны."
-#: sequencer.c:765
+#: sequencer.c:750
#, c-format
msgid "Could not open %s"
msgstr "Не удалось открыть %s"
-#: sequencer.c:769
+#: sequencer.c:754
#, c-format
msgid "Could not read %s."
msgstr "Не удалось прочитать %s."
-#: sequencer.c:776
+#: sequencer.c:761
#, c-format
msgid "Unusable instruction sheet: %s"
msgstr "Непригодная для использования карта с инструкциями: %s"
-#: sequencer.c:806
+#: sequencer.c:791
#, c-format
msgid "Invalid key: %s"
msgstr "Недействительный ключ: %s"
-#: sequencer.c:809
+#: sequencer.c:794 builtin/pull.c:47 builtin/pull.c:49
#, c-format
msgid "Invalid value for %s: %s"
msgstr "Неправильное значение %s: %s"
-#: sequencer.c:821
+#: sequencer.c:804
#, c-format
msgid "Malformed options sheet: %s"
msgstr "Испорченная карта с опциями: %s"
-#: sequencer.c:842
+#: sequencer.c:823
msgid "a cherry-pick or revert is already in progress"
msgstr "отбор лучшего или возврат коммита уже выполняется"
-#: sequencer.c:843
+#: sequencer.c:824
msgid "try \"git cherry-pick (--continue | --quit | --abort)\""
msgstr "попробуйте «git cherry-pick (--continue | --quit | --abort)»"
-#: sequencer.c:847
+#: sequencer.c:828
#, c-format
msgid "Could not create sequencer directory %s"
msgstr "Не удалось создать каталог для указателя следования коммитов %s"
-#: sequencer.c:863 sequencer.c:948
+#: sequencer.c:844 sequencer.c:926
#, c-format
msgid "Error wrapping up %s."
msgstr "Ошибка оборачивания %s."
-#: sequencer.c:882 sequencer.c:1018
+#: sequencer.c:863 sequencer.c:996
msgid "no cherry-pick or revert in progress"
msgstr "отбор лучшего или возврат коммита не выполняется"
-#: sequencer.c:884
+#: sequencer.c:865
msgid "cannot resolve HEAD"
msgstr "не удалось определить HEAD"
-#: sequencer.c:886
+#: sequencer.c:867
msgid "cannot abort from a branch yet to be born"
msgstr "нельзя отменить изменения с ветки, которая еще не создана"
-#: sequencer.c:908 builtin/apply.c:4291
+#: sequencer.c:887 builtin/apply.c:4291
#, c-format
msgid "cannot open %s: %s"
msgstr "не удалось открыть %s: %s"
-#: sequencer.c:911
+#: sequencer.c:890
#, c-format
msgid "cannot read %s: %s"
msgstr "не удалось прочитать %s: %s"
-#: sequencer.c:912
+#: sequencer.c:891
msgid "unexpected end of file"
msgstr "неожиданный конец файла"
-#: sequencer.c:918
+#: sequencer.c:897
#, c-format
msgid "stored pre-cherry-pick HEAD file '%s' is corrupt"
msgstr "сохраненный файл с HEAD перед отбором лучшего «%s» поврежден"
-#: sequencer.c:941
+#: sequencer.c:919
#, c-format
msgid "Could not format %s."
msgstr "Не удалось отформатировать %s."
-#: sequencer.c:1086
+#: sequencer.c:1064
#, c-format
msgid "%s: can't cherry-pick a %s"
msgstr "%s: не удалось отобрать %s"
-#: sequencer.c:1089
+#: sequencer.c:1067
#, c-format
msgid "%s: bad revision"
msgstr "%s: плохая редакция"
-#: sequencer.c:1123
+#: sequencer.c:1101
msgid "Can't revert as initial commit"
msgstr "Нельзя возвратить изначальный коммит"
-#: sequencer.c:1124
+#: sequencer.c:1102
msgid "Can't cherry-pick into empty head"
msgstr "Нельзя отобрать лучшее в пустой HEAD"
@@ -1441,30 +1479,30 @@ msgid ""
"running \"git config advice.objectNameWarning false\""
msgstr "Обычно Git не создает ссылки, оканчивающиеся на 40 шестнадцатеричных\nсимволов, потому, что они будут игнорироваться, когда вы просто\nукажете это 40-символьное шестнадцатеричное число. Такие ссылки\nмогли быть созданы по ошибке. Например, с помощью:\n\n git checkout -b $br $(git rev-parse …)\n\n, если «$br» оказался пустым, то ссылка с 40-символьным\nшестнадцатеричным числом будет создана. Пожалуйста, просмотрите эти\nссылки и, возможно, удалите их. Вы можете отключить это сообщение\nзапустив «git config advice.objectNameWarning false»"
-#: submodule.c:64 submodule.c:98
+#: submodule.c:61 submodule.c:95
msgid "Cannot change unmerged .gitmodules, resolve merge conflicts first"
msgstr "Не удалось изменить не слитый .gitmodules, сначала разрешите конфликты"
-#: submodule.c:68 submodule.c:102
+#: submodule.c:65 submodule.c:99
#, c-format
msgid "Could not find section in .gitmodules where path=%s"
msgstr "Не удалось найти раздел в .gitmodules, где путь равен %s"
-#: submodule.c:76
+#: submodule.c:73
#, c-format
msgid "Could not update .gitmodules entry %s"
msgstr " Не удалось обновить .gitmodules запись %s"
-#: submodule.c:109
+#: submodule.c:106
#, c-format
msgid "Could not remove .gitmodules entry for %s"
msgstr "Не удалось удалить запись в .gitmodules для %s"
-#: submodule.c:120
+#: submodule.c:117
msgid "staging updated .gitmodules failed"
msgstr "сбой индексирования обновленного .gitmodules"
-#: submodule.c:1115
+#: submodule.c:1045
#, c-format
msgid "Could not set core.worktree in %s"
msgstr "Не удалось установить core.worktree в %s"
@@ -1494,6 +1532,11 @@ msgstr "не удалось прочитать входной файл «%s»"
msgid "could not read from stdin"
msgstr "не удалось прочитать из стандартного ввода"
+#: transport-helper.c:1025
+#, c-format
+msgid "Could not read ref %s"
+msgstr "Не удалось прочитать ссылку %s"
+
#: unpack-trees.c:203
msgid "Checking out files"
msgstr "Распаковка файлов"
@@ -1527,368 +1570,423 @@ msgstr "неправильный номер порта"
msgid "invalid '..' path segment"
msgstr "неправильная часть пути «..»"
-#: wrapper.c:523
+#: wrapper.c:219 wrapper.c:362
+#, c-format
+msgid "could not open '%s' for reading and writing"
+msgstr "не удалось открыть «%s» для чтения и записи"
+
+#: wrapper.c:221 wrapper.c:364
+#, c-format
+msgid "could not open '%s' for writing"
+msgstr "не удалось открыть «%s» для записи"
+
+#: wrapper.c:223 wrapper.c:366 builtin/am.c:337 builtin/commit.c:1688
+#: builtin/merge.c:1076 builtin/pull.c:380
+#, c-format
+msgid "could not open '%s' for reading"
+msgstr "не удалось открыть «%s» для чтения"
+
+#: wrapper.c:579
#, c-format
msgid "unable to access '%s': %s"
msgstr "«%s» недоступно: %s"
-#: wrapper.c:544
+#: wrapper.c:600
#, c-format
msgid "unable to access '%s'"
msgstr "«%s» недоступно"
-#: wrapper.c:555
+#: wrapper.c:611
#, c-format
msgid "unable to look up current user in the passwd file: %s"
msgstr "не удалось запросить текущего пользователя в файле passwd: %s"
-#: wrapper.c:556
+#: wrapper.c:612
msgid "no such user"
msgstr "нет такого пользователя"
-#: wrapper.c:564
+#: wrapper.c:620
msgid "unable to get current working directory"
msgstr "не удалось получить текущий рабочий каталог"
-#: wrapper.c:575
+#: wrapper.c:631
#, c-format
msgid "could not open %s for writing"
msgstr "не удалось открыть «%s» для записи"
-#: wrapper.c:587
+#: wrapper.c:642 builtin/am.c:424
#, c-format
msgid "could not write to %s"
msgstr "не удалось записать в %s"
-#: wrapper.c:593
+#: wrapper.c:648
#, c-format
msgid "could not close %s"
msgstr "не удалось закрыть %s"
-#: wt-status.c:150
+#: wt-status.c:149
msgid "Unmerged paths:"
msgstr "Не слитые пути:"
-#: wt-status.c:177 wt-status.c:204
+#: wt-status.c:176 wt-status.c:203
#, c-format
msgid " (use \"git reset %s <file>...\" to unstage)"
msgstr " (используйте «git reset %s <файл>…», чтобы убрать из индекса)"
-#: wt-status.c:179 wt-status.c:206
+#: wt-status.c:178 wt-status.c:205
msgid " (use \"git rm --cached <file>...\" to unstage)"
msgstr " (используйте «git rm --cached <файл>…», чтобы убрать из индекса)"
-#: wt-status.c:183
+#: wt-status.c:182
msgid " (use \"git add <file>...\" to mark resolution)"
msgstr " (используйте «git add <файл>…», чтобы пометить разрешение конфликта)"
-#: wt-status.c:185 wt-status.c:189
+#: wt-status.c:184 wt-status.c:188
msgid " (use \"git add/rm <file>...\" as appropriate to mark resolution)"
msgstr " (используйте «git add/rm <файл>…», чтобы пометить выбранное разрешение конфликта)"
-#: wt-status.c:187
+#: wt-status.c:186
msgid " (use \"git rm <file>...\" to mark resolution)"
msgstr " (используйте «git rm <файл>…», чтобы пометить разрешение конфликта)"
-#: wt-status.c:198 wt-status.c:881
+#: wt-status.c:197 wt-status.c:880
msgid "Changes to be committed:"
msgstr "Изменения, которые будут включены в коммит:"
-#: wt-status.c:216 wt-status.c:890
+#: wt-status.c:215 wt-status.c:889
msgid "Changes not staged for commit:"
msgstr "Изменения, которые не в индексе для коммита:"
-#: wt-status.c:220
+#: wt-status.c:219
msgid " (use \"git add <file>...\" to update what will be committed)"
msgstr " (используйте «git add <файл>…», чтобы добавить файл в индекс)"
-#: wt-status.c:222
+#: wt-status.c:221
msgid " (use \"git add/rm <file>...\" to update what will be committed)"
msgstr " (используйте «git add/rm <файл>…», чтобы добавить или удалить файл из индекса)"
-#: wt-status.c:223
+#: wt-status.c:222
msgid ""
" (use \"git checkout -- <file>...\" to discard changes in working "
"directory)"
msgstr " (используйте «git checkout -- <файл>…», чтобы отменить изменения\n в рабочем каталоге)"
-#: wt-status.c:225
+#: wt-status.c:224
msgid " (commit or discard the untracked or modified content in submodules)"
msgstr " (сделайте коммит или отмените изменения в неотслеживаемом или измененном содержимом в подмодулях)"
-#: wt-status.c:237
+#: wt-status.c:236
#, c-format
msgid " (use \"git %s <file>...\" to include in what will be committed)"
msgstr " (используйте «git %s <файл>…», чтобы добавить в то, что будет включено в коммит)"
-#: wt-status.c:252
+#: wt-status.c:251
msgid "both deleted:"
msgstr "оба удалены:"
-#: wt-status.c:254
+#: wt-status.c:253
msgid "added by us:"
msgstr "добавлено нами:"
-#: wt-status.c:256
+#: wt-status.c:255
msgid "deleted by them:"
msgstr "удалено ими:"
-#: wt-status.c:258
+#: wt-status.c:257
msgid "added by them:"
msgstr "добавлено ими:"
-#: wt-status.c:260
+#: wt-status.c:259
msgid "deleted by us:"
msgstr "удалено нами:"
-#: wt-status.c:262
+#: wt-status.c:261
msgid "both added:"
msgstr "оба добавлены:"
-#: wt-status.c:264
+#: wt-status.c:263
msgid "both modified:"
msgstr "оба измены:"
-#: wt-status.c:266
+#: wt-status.c:265
#, c-format
msgid "bug: unhandled unmerged status %x"
msgstr "ошибка: необработанный статус не слитых изменений %x"
-#: wt-status.c:274
+#: wt-status.c:273
msgid "new file:"
msgstr "новый файл:"
-#: wt-status.c:276
+#: wt-status.c:275
msgid "copied:"
msgstr "скопировано:"
-#: wt-status.c:278
+#: wt-status.c:277
msgid "deleted:"
msgstr "удалено:"
-#: wt-status.c:280
+#: wt-status.c:279
msgid "modified:"
msgstr "изменено:"
-#: wt-status.c:282
+#: wt-status.c:281
msgid "renamed:"
msgstr "переименовано:"
-#: wt-status.c:284
+#: wt-status.c:283
msgid "typechange:"
msgstr "изменен тип:"
-#: wt-status.c:286
+#: wt-status.c:285
msgid "unknown:"
msgstr "неизвестно:"
-#: wt-status.c:288
+#: wt-status.c:287
msgid "unmerged:"
msgstr "не слитые:"
-#: wt-status.c:370
+#: wt-status.c:369
msgid "new commits, "
msgstr "новые коммиты, "
-#: wt-status.c:372
+#: wt-status.c:371
msgid "modified content, "
msgstr "изменено содержимое, "
-#: wt-status.c:374
+#: wt-status.c:373
msgid "untracked content, "
msgstr "неотслеживаемое содержимое, "
-#: wt-status.c:391
+#: wt-status.c:390
#, c-format
msgid "bug: unhandled diff status %c"
msgstr "ошибка: необработанный статус изменений %c"
-#: wt-status.c:755
+#: wt-status.c:754
msgid "Submodules changed but not updated:"
msgstr "Измененные, но не обновленные подмодули:"
-#: wt-status.c:757
+#: wt-status.c:756
msgid "Submodule changes to be committed:"
msgstr "Изменения в подмодулях, которые будут закоммичены:"
-#: wt-status.c:838
+#: wt-status.c:837
msgid ""
"Do not touch the line above.\n"
"Everything below will be removed."
msgstr "Не трогайте строку выше этой.\nВсё, что ниже — будет удалено."
-#: wt-status.c:949
+#: wt-status.c:948
msgid "You have unmerged paths."
msgstr "У вас есть не слитые пути."
-#: wt-status.c:952
+#: wt-status.c:951
msgid " (fix conflicts and run \"git commit\")"
msgstr " (разрешите конфликты, затем запустите «git commit»)"
-#: wt-status.c:955
+#: wt-status.c:954
msgid "All conflicts fixed but you are still merging."
msgstr "Все конфликты исправлены, но вы все еще в процессе слияния."
-#: wt-status.c:958
+#: wt-status.c:957
msgid " (use \"git commit\" to conclude merge)"
msgstr " (используйте «git commit», чтобы завершить слияние)"
-#: wt-status.c:968
+#: wt-status.c:967
msgid "You are in the middle of an am session."
msgstr "Вы в процессе сессии am."
-#: wt-status.c:971
+#: wt-status.c:970
msgid "The current patch is empty."
msgstr "Текущий патч пустой."
-#: wt-status.c:975
+#: wt-status.c:974
msgid " (fix conflicts and then run \"git am --continue\")"
msgstr " (разрешите конфликты, затем запустите «git am --continue»)"
-#: wt-status.c:977
+#: wt-status.c:976
msgid " (use \"git am --skip\" to skip this patch)"
msgstr " (используйте «git am --skip», чтобы пропустить этот патч)"
-#: wt-status.c:979
+#: wt-status.c:978
msgid " (use \"git am --abort\" to restore the original branch)"
msgstr " (используйте «git am --abort», чтобы восстановить оригинальную ветку)"
-#: wt-status.c:1039 wt-status.c:1056
+#: wt-status.c:1105
+msgid "No commands done."
+msgstr "Команды не выполнены."
+
+#: wt-status.c:1108
+#, c-format
+msgid "Last command done (%d command done):"
+msgid_plural "Last commands done (%d commands done):"
+msgstr[0] "Последняя команда выполнена (%d команд выполнено):"
+msgstr[1] "Последняя команда выполнена (%d команд выполнено):"
+msgstr[2] "Последняя команда выполнена (%d команд выполнено):"
+msgstr[3] "Последняя команда выполнена (%d команд выполнено):"
+
+#: wt-status.c:1119
+#, c-format
+msgid " (see more in file %s)"
+msgstr " (смотрите дополнительно в файле %s)"
+
+#: wt-status.c:1124
+msgid "No commands remaining."
+msgstr "Команд больше не осталось."
+
+#: wt-status.c:1127
+#, c-format
+msgid "Next command to do (%d remaining command):"
+msgid_plural "Next commands to do (%d remaining commands):"
+msgstr[0] "Следующая команда для выполнения (%d команда осталась):"
+msgstr[1] "Следующая команда для выполнения (%d команды осталось):"
+msgstr[2] "Следующая команда для выполнения (%d команд осталось):"
+msgstr[3] "Следующая команда для выполнения (%d команд осталось):"
+
+#: wt-status.c:1135
+msgid " (use \"git rebase --edit-todo\" to view and edit)"
+msgstr " (используйте «git rebase --edit-todo», чтобы просмотреть и изменить)"
+
+#: wt-status.c:1148
#, c-format
msgid "You are currently rebasing branch '%s' on '%s'."
msgstr "Вы сейчас перемещаете ветку «%s» над «%s»."
-#: wt-status.c:1044 wt-status.c:1061
+#: wt-status.c:1153
msgid "You are currently rebasing."
msgstr "Вы сейчас перемещаете ветку."
-#: wt-status.c:1047
+#: wt-status.c:1167
msgid " (fix conflicts and then run \"git rebase --continue\")"
msgstr " (разрешите конфликты, затем запустите «git rebase --continue»)"
-#: wt-status.c:1049
+#: wt-status.c:1169
msgid " (use \"git rebase --skip\" to skip this patch)"
msgstr " (используйте «git rebase --skip», чтобы пропустить этот патч)"
-#: wt-status.c:1051
+#: wt-status.c:1171
msgid " (use \"git rebase --abort\" to check out the original branch)"
msgstr " (используйте «git rebase --abort», чтобы перейти на оригинальную ветку)"
-#: wt-status.c:1064
+#: wt-status.c:1177
msgid " (all conflicts fixed: run \"git rebase --continue\")"
msgstr " (все конфликты разрешены: запустите «git rebase --continue»)"
-#: wt-status.c:1068
+#: wt-status.c:1181
#, c-format
msgid ""
"You are currently splitting a commit while rebasing branch '%s' on '%s'."
msgstr "Вы сейчас разделяете коммит при перемещении ветки «%s» над «%s»."
-#: wt-status.c:1073
+#: wt-status.c:1186
msgid "You are currently splitting a commit during a rebase."
msgstr "Вы сейчас разделяете коммит при перемещении ветки."
-#: wt-status.c:1076
+#: wt-status.c:1189
msgid " (Once your working directory is clean, run \"git rebase --continue\")"
msgstr "(Как только ваш рабочий каталог будет чистый, запустите «git rebase --continue»)"
-#: wt-status.c:1080
+#: wt-status.c:1193
#, c-format
msgid "You are currently editing a commit while rebasing branch '%s' on '%s'."
msgstr "Вы сейчас редактируете коммит при перемещении ветки «%s» над «%s»."
-#: wt-status.c:1085
+#: wt-status.c:1198
msgid "You are currently editing a commit during a rebase."
msgstr "Вы сейчас редактируете коммит при перемещении ветки."
-#: wt-status.c:1088
+#: wt-status.c:1201
msgid " (use \"git commit --amend\" to amend the current commit)"
msgstr " (используйте «git commit --amend», чтобы исправить текущий коммит)"
-#: wt-status.c:1090
+#: wt-status.c:1203
msgid " (use \"git rebase --continue\" once you are satisfied with your changes)"
msgstr " (используйте «git rebase --continue», когда будете довольны изменениями)"
-#: wt-status.c:1100
+#: wt-status.c:1213
#, c-format
msgid "You are currently cherry-picking commit %s."
msgstr "Вы сейчас отбираете лучший коммит %s."
-#: wt-status.c:1105
+#: wt-status.c:1218
msgid " (fix conflicts and run \"git cherry-pick --continue\")"
msgstr " (разрешите конфликты, затем запустите «git cherry-pick --continue»)"
-#: wt-status.c:1108
+#: wt-status.c:1221
msgid " (all conflicts fixed: run \"git cherry-pick --continue\")"
msgstr " (все конфликты разрешены: запустите «git cherry-pick --continue»)"
-#: wt-status.c:1110
+#: wt-status.c:1223
msgid " (use \"git cherry-pick --abort\" to cancel the cherry-pick operation)"
msgstr " (используйте «git cherry-pick --abort», чтобы отменить операцию отбора лучшего)"
-#: wt-status.c:1119
+#: wt-status.c:1232
#, c-format
msgid "You are currently reverting commit %s."
msgstr "Вы сейчас возвращаете коммит %s."
-#: wt-status.c:1124
+#: wt-status.c:1237
msgid " (fix conflicts and run \"git revert --continue\")"
msgstr " (разрешите конфликты, затем запустите «git revert --continue»)"
-#: wt-status.c:1127
+#: wt-status.c:1240
msgid " (all conflicts fixed: run \"git revert --continue\")"
msgstr " (все конфликты разрешены: запустите «git revert --continue»)"
-#: wt-status.c:1129
+#: wt-status.c:1242
msgid " (use \"git revert --abort\" to cancel the revert operation)"
msgstr " (используйте «git revert --abort», чтобы отменить операцию возврата)"
-#: wt-status.c:1140
+#: wt-status.c:1253
#, c-format
msgid "You are currently bisecting, started from branch '%s'."
msgstr "Вы сейчас в процессе двоичного поиска, начатого с ветки «%s»."
-#: wt-status.c:1144
+#: wt-status.c:1257
msgid "You are currently bisecting."
msgstr "Вы сейчас в процессе двоичного поиска."
-#: wt-status.c:1147
+#: wt-status.c:1260
msgid " (use \"git bisect reset\" to get back to the original branch)"
msgstr " (используйте «git bisect reset», чтобы вернуться на исходную ветку)"
-#: wt-status.c:1324
+#: wt-status.c:1437
msgid "On branch "
msgstr "На ветке "
-#: wt-status.c:1331
+#: wt-status.c:1445
+msgid "interactive rebase in progress; onto "
+msgstr "интерактивное перемещение в процессе; над "
+
+#: wt-status.c:1447
msgid "rebase in progress; onto "
msgstr "перемещение в процессе; над "
-#: wt-status.c:1336
+#: wt-status.c:1452
msgid "HEAD detached at "
msgstr "HEAD отделен на "
-#: wt-status.c:1338
+#: wt-status.c:1454
msgid "HEAD detached from "
msgstr "HEAD отделен начиная с "
-#: wt-status.c:1341
+#: wt-status.c:1457
msgid "Not currently on any branch."
msgstr "Сейчас ни на одной из веток"
-#: wt-status.c:1358
+#: wt-status.c:1474
msgid "Initial commit"
msgstr "Начальный коммит"
-#: wt-status.c:1372
+#: wt-status.c:1488
msgid "Untracked files"
msgstr "Неотслеживаемые файлы"
-#: wt-status.c:1374
+#: wt-status.c:1490
msgid "Ignored files"
msgstr "Игнорируемые файлы"
-#: wt-status.c:1378
+#: wt-status.c:1494
#, c-format
msgid ""
"It took %.2f seconds to enumerate untracked files. 'status -uno'\n"
@@ -1896,78 +1994,78 @@ msgid ""
"new files yourself (see 'git help status')."
msgstr "%.2f секунды занял вывод списка неотслеживаемых файлов. «status -uno» возможно может ускорить это, но будьте внимательны, и не забудьте добавить новые файлы вручную (смотрите «git help status» для подробностей)."
-#: wt-status.c:1384
+#: wt-status.c:1500
#, c-format
msgid "Untracked files not listed%s"
msgstr "Неотслеживаемые файлы не показаны%s"
-#: wt-status.c:1386
+#: wt-status.c:1502
msgid " (use -u option to show untracked files)"
msgstr "(используйте опцию «-u», чтобы показать неотслеживаемые файлы)"
-#: wt-status.c:1392
+#: wt-status.c:1508
msgid "No changes"
msgstr "Нет изменений"
-#: wt-status.c:1397
+#: wt-status.c:1513
#, c-format
msgid "no changes added to commit (use \"git add\" and/or \"git commit -a\")\n"
msgstr "нет изменений добавленных для коммита\n(используйте «git add» и/или «git commit -a»)\n"
-#: wt-status.c:1400
+#: wt-status.c:1516
#, c-format
msgid "no changes added to commit\n"
msgstr "нет изменений добавленных для коммита\n"
-#: wt-status.c:1403
+#: wt-status.c:1519
#, c-format
msgid ""
"nothing added to commit but untracked files present (use \"git add\" to "
"track)\n"
msgstr "ничего не добавлено в коммит, но есть неотслеживаемые файлы (используйте \"git add\", чтобы отслеживать их)\n"
-#: wt-status.c:1406
+#: wt-status.c:1522
#, c-format
msgid "nothing added to commit but untracked files present\n"
msgstr "ничего не добавлено в коммит, но есть неотслеживаемые файлы\n"
-#: wt-status.c:1409
+#: wt-status.c:1525
#, c-format
msgid "nothing to commit (create/copy files and use \"git add\" to track)\n"
msgstr "нечего коммитить (создайте/скопируйте файлы, затем запустите «git add», чтобы отслеживать их)\n"
-#: wt-status.c:1412 wt-status.c:1417
+#: wt-status.c:1528 wt-status.c:1533
#, c-format
msgid "nothing to commit\n"
msgstr "нечего коммитить\n"
-#: wt-status.c:1415
+#: wt-status.c:1531
#, c-format
msgid "nothing to commit (use -u to show untracked files)\n"
msgstr "нечего коммитить (используйте опцию «-u», чтобы показать неотслеживаемые файлы)\n"
-#: wt-status.c:1419
+#: wt-status.c:1535
#, c-format
msgid "nothing to commit, working directory clean\n"
msgstr "нечего коммитить, нет изменений в рабочем каталоге\n"
-#: wt-status.c:1528
+#: wt-status.c:1644
msgid "HEAD (no branch)"
msgstr "HEAD (нет ветки)"
-#: wt-status.c:1534
+#: wt-status.c:1650
msgid "Initial commit on "
msgstr "Начальный коммит на "
-#: wt-status.c:1561
+#: wt-status.c:1677
msgid "gone"
msgstr "исчез"
-#: wt-status.c:1563 wt-status.c:1571
+#: wt-status.c:1679 wt-status.c:1687
msgid "behind "
msgstr "позади"
-#: compat/precompose_utf8.c:55 builtin/clone.c:345
+#: compat/precompose_utf8.c:55 builtin/clone.c:403
#, c-format
msgid "failed to unlink '%s'"
msgstr "сбой отсоединения «%s»"
@@ -1994,7 +2092,7 @@ msgstr "удалить «%s»\n"
msgid "Unstaged changes after refreshing the index:"
msgstr "Непроиндексированные изменения после обновления индекса:"
-#: builtin/add.c:194 builtin/rev-parse.c:796
+#: builtin/add.c:194 builtin/rev-parse.c:799
msgid "Could not read the index"
msgstr "Не удалось прочитать индекс"
@@ -2029,15 +2127,15 @@ msgstr "Не удалось применить «%s»"
msgid "The following paths are ignored by one of your .gitignore files:\n"
msgstr "Следующие пути игнорируются одним из ваших файлов .gitignore:\n"
-#: builtin/add.c:249 builtin/clean.c:874 builtin/fetch.c:107 builtin/mv.c:110
-#: builtin/prune-packed.c:55 builtin/push.c:508 builtin/remote.c:1369
-#: builtin/rm.c:268
+#: builtin/add.c:249 builtin/clean.c:896 builtin/fetch.c:108 builtin/mv.c:110
+#: builtin/prune-packed.c:55 builtin/pull.c:182 builtin/push.c:545
+#: builtin/remote.c:1339 builtin/rm.c:268 builtin/send-pack.c:162
msgid "dry run"
msgstr "пробный запуск"
#: builtin/add.c:250 builtin/apply.c:4580 builtin/check-ignore.c:19
-#: builtin/commit.c:1322 builtin/count-objects.c:63 builtin/fsck.c:616
-#: builtin/log.c:1617 builtin/mv.c:109 builtin/read-tree.c:114
+#: builtin/commit.c:1321 builtin/count-objects.c:63 builtin/fsck.c:636
+#: builtin/log.c:1641 builtin/mv.c:109 builtin/read-tree.c:114
msgid "be verbose"
msgstr "быть многословнее"
@@ -2045,7 +2143,7 @@ msgstr "быть многословнее"
msgid "interactive picking"
msgstr "интерактивный выбор"
-#: builtin/add.c:253 builtin/checkout.c:1221 builtin/reset.c:286
+#: builtin/add.c:253 builtin/checkout.c:1152 builtin/reset.c:286
msgid "select hunks interactively"
msgstr "интерактивный выбор блоков"
@@ -2112,15 +2210,403 @@ msgstr "Ничего не указано, ничего не добавлено.\
msgid "Maybe you wanted to say 'git add .'?\n"
msgstr "Возможно, вы имели в виду «git add .»?\n"
-#: builtin/add.c:364 builtin/check-ignore.c:172 builtin/clean.c:918
-#: builtin/commit.c:335 builtin/mv.c:130 builtin/reset.c:235 builtin/rm.c:298
+#: builtin/add.c:364 builtin/check-ignore.c:172 builtin/clean.c:940
+#: builtin/commit.c:336 builtin/mv.c:130 builtin/reset.c:235 builtin/rm.c:298
msgid "index file corrupt"
msgstr "файл индекса поврежден"
-#: builtin/add.c:447 builtin/apply.c:4678 builtin/mv.c:279 builtin/rm.c:430
+#: builtin/add.c:445 builtin/apply.c:4678 builtin/mv.c:279 builtin/rm.c:430
msgid "Unable to write new index file"
msgstr "Не удалось записать новый файл индекса"
+#: builtin/am.c:41
+#, c-format
+msgid "could not stat %s"
+msgstr "не удалось выполнить stat для %s"
+
+#: builtin/am.c:270 builtin/am.c:1345 builtin/commit.c:737
+#: builtin/merge.c:1079
+#, c-format
+msgid "could not read '%s'"
+msgstr "не удалось прочитать «%s»"
+
+#: builtin/am.c:444
+msgid "could not parse author script"
+msgstr "не удалось разобрать сценарий авторства"
+
+#: builtin/am.c:521
+#, c-format
+msgid "'%s' was deleted by the applypatch-msg hook"
+msgstr "«%s» был удален перехватчиком applypatch-msg"
+
+#: builtin/am.c:562 builtin/notes.c:300
+#, c-format
+msgid "Malformed input line: '%s'."
+msgstr "Плохая строка ввода: «%s»."
+
+#: builtin/am.c:599 builtin/notes.c:315
+#, c-format
+msgid "Failed to copy notes from '%s' to '%s'"
+msgstr "Не удалось скопировать заметку из «%s» в «%s»"
+
+#: builtin/am.c:625
+msgid "fseek failed"
+msgstr "сбой при выполнении fseek"
+
+#: builtin/am.c:786 builtin/am.c:874
+#, c-format
+msgid "could not open '%s' for reading: %s"
+msgstr "не удалось открыть «%s» для чтения: %s"
+
+#: builtin/am.c:793
+#, c-format
+msgid "could not open '%s' for writing: %s"
+msgstr "не удалось открыть «%s» для записи: %s"
+
+#: builtin/am.c:802
+#, c-format
+msgid "could not parse patch '%s'"
+msgstr "не удалось разобрать патч «%s»"
+
+#: builtin/am.c:867
+msgid "Only one StGIT patch series can be applied at once"
+msgstr "Только серия патчей StGIT может быть применена за раз"
+
+#: builtin/am.c:915
+msgid "invalid timestamp"
+msgstr "недопустимая метка даты/времени"
+
+#: builtin/am.c:918 builtin/am.c:926
+msgid "invalid Date line"
+msgstr "недопустимая строка даты"
+
+#: builtin/am.c:923
+msgid "invalid timezone offset"
+msgstr "недопустимое смещение часового пояса"
+
+#: builtin/am.c:1010
+msgid "Patch format detection failed."
+msgstr "Сбой определения формата патча."
+
+#: builtin/am.c:1015 builtin/clone.c:368
+#, c-format
+msgid "failed to create directory '%s'"
+msgstr "не удалось создать каталог «%s»"
+
+#: builtin/am.c:1019
+msgid "Failed to split patches."
+msgstr "Не удалось разделить патчи на части."
+
+#: builtin/am.c:1151 builtin/commit.c:362
+msgid "unable to write index file"
+msgstr "не удалось записать индекс"
+
+#: builtin/am.c:1202
+#, c-format
+msgid "When you have resolved this problem, run \"%s --continue\"."
+msgstr "Когда вы устраните эту проблему, запустите «%s --continue»."
+
+#: builtin/am.c:1203
+#, c-format
+msgid "If you prefer to skip this patch, run \"%s --skip\" instead."
+msgstr "Если вы хотите пропустить этот патч, то запустите «%s --skip»."
+
+#: builtin/am.c:1204
+#, c-format
+msgid "To restore the original branch and stop patching, run \"%s --abort\"."
+msgstr "Чтобы вернуться на предыдущую ветку и остановить применение изменений, запустите «%s --abort»."
+
+#: builtin/am.c:1339
+msgid "Patch is empty. Was it split wrong?"
+msgstr "Патч пуст. Возможно, он был неправильно разделён?"
+
+#: builtin/am.c:1413 builtin/log.c:1345
+#, c-format
+msgid "invalid ident line: %s"
+msgstr "неправильная строка идентификации: %s"
+
+#: builtin/am.c:1440
+#, c-format
+msgid "unable to parse commit %s"
+msgstr "не удалось разобрать коммит %s"
+
+#: builtin/am.c:1614
+msgid "Repository lacks necessary blobs to fall back on 3-way merge."
+msgstr "В репозитории отсутствуют двоичные объекты, необходимые для отката к трехходовому слиянию."
+
+#: builtin/am.c:1616
+msgid "Using index info to reconstruct a base tree..."
+msgstr "Использую индекс для реконструкции базового дерева…"
+
+#: builtin/am.c:1635
+msgid ""
+"Did you hand edit your patch?\n"
+"It does not apply to blobs recorded in its index."
+msgstr "Вы вручную изменяли патч?\nОн не накладывается без ошибок на двоичные объекты, записанные в его заголовке."
+
+#: builtin/am.c:1641
+msgid "Falling back to patching base and 3-way merge..."
+msgstr "Откат к применению изменений к базовому коммиту с помощью трехходового слияния…"
+
+#: builtin/am.c:1666
+msgid "Failed to merge in the changes."
+msgstr "Не удалось слить изменения."
+
+#: builtin/am.c:1691 builtin/merge.c:632
+msgid "git write-tree failed to write a tree"
+msgstr "git write-tree не удалось записать дерево"
+
+#: builtin/am.c:1698
+msgid "applying to an empty history"
+msgstr "применение к пустой истории"
+
+#: builtin/am.c:1711 builtin/commit.c:1752 builtin/merge.c:829
+#: builtin/merge.c:854
+msgid "failed to write commit object"
+msgstr "сбой записи объекта коммита"
+
+#: builtin/am.c:1743 builtin/am.c:1747
+#, c-format
+msgid "cannot resume: %s does not exist."
+msgstr "нельзя продолжнить: %s не существует "
+
+#: builtin/am.c:1763
+msgid "cannot be interactive without stdin connected to a terminal."
+msgstr "не удалось использовать интерактивное поведение, без stdin подключенного к терминалу."
+
+#: builtin/am.c:1768
+msgid "Commit Body is:"
+msgstr "Тело коммита:"
+
+#. TRANSLATORS: Make sure to include [y], [n], [e], [v] and [a]
+#. in your translation. The program will only accept English
+#. input at this point.
+#: builtin/am.c:1778
+msgid "Apply? [y]es/[n]o/[e]dit/[v]iew patch/[a]ccept all: "
+msgstr "Применить? [y] - да/[n] - нет/[e] - редактировать/[v] - просмотреть патч/[a] - применить всё: "
+
+#: builtin/am.c:1828
+#, c-format
+msgid "Dirty index: cannot apply patches (dirty: %s)"
+msgstr "Индекс не пустой: нельзя применять патчи (в индексе: %s)"
+
+#: builtin/am.c:1863 builtin/am.c:1934
+#, c-format
+msgid "Applying: %.*s"
+msgstr "Применение: %.*s"
+
+#: builtin/am.c:1879
+msgid "No changes -- Patch already applied."
+msgstr "Нет изменений — Патч уже применен."
+
+#: builtin/am.c:1887
+#, c-format
+msgid "Patch failed at %s %.*s"
+msgstr "Ошибка применения изменений на %s %.*s"
+
+#: builtin/am.c:1893
+#, c-format
+msgid "The copy of the patch that failed is found in: %s"
+msgstr "Копию изменений, которые не удалось применить, вы можете найти в: %s"
+
+#: builtin/am.c:1937
+msgid ""
+"No changes - did you forget to use 'git add'?\n"
+"If there is nothing left to stage, chances are that something else\n"
+"already introduced the same changes; you might want to skip this patch."
+msgstr "Нет изменений — возможно, вы забыли вызвать «git add»?\nЕсли ничего не осталось для индексации, то, скорее всего, что-то другое уже сделало те же изменения; возможно, вам следует пропустить этот патч."
+
+#: builtin/am.c:1944
+msgid ""
+"You still have unmerged paths in your index.\n"
+"Did you forget to use 'git add'?"
+msgstr "У вас все еще имеются не слитые пути в индексе.\nВозможно, вы забыли вызвать «git add»?"
+
+#: builtin/am.c:2052 builtin/am.c:2056 builtin/am.c:2068 builtin/reset.c:308
+#: builtin/reset.c:316
+#, c-format
+msgid "Could not parse object '%s'."
+msgstr "Не удалось разобрать объект «%s»."
+
+#: builtin/am.c:2104
+msgid "failed to clean index"
+msgstr "не удалось очистить индекс"
+
+#: builtin/am.c:2138
+msgid ""
+"You seem to have moved HEAD since the last 'am' failure.\n"
+"Not rewinding to ORIG_HEAD"
+msgstr "Похоже, что вы переместили HEAD с момента последней ошибки выполнения «am».\nПеремотка на ORIG_HEAD не выполняется"
+
+#: builtin/am.c:2199
+#, c-format
+msgid "Invalid value for --patch-format: %s"
+msgstr "Неправильное значение для --patch-format: %s"
+
+#: builtin/am.c:2221
+msgid "git am [options] [(<mbox>|<Maildir>)...]"
+msgstr "git am [опции] [(<mbox>|<Maildir>)…]"
+
+#: builtin/am.c:2222
+msgid "git am [options] (--continue | --skip | --abort)"
+msgstr "git am [опции] (--continue | --skip | --abort)"
+
+#: builtin/am.c:2228
+msgid "run interactively"
+msgstr "запустить в интерактивном режиме"
+
+#: builtin/am.c:2230
+msgid "historical option -- no-op"
+msgstr "историческая опция — ничего не делает"
+
+#: builtin/am.c:2232
+msgid "allow fall back on 3way merging if needed"
+msgstr "разрешить откатиться к трехходовому слиянию, если нужно"
+
+#: builtin/am.c:2233 builtin/init-db.c:509 builtin/prune-packed.c:57
+#: builtin/repack.c:171
+msgid "be quiet"
+msgstr "тихий режим"
+
+#: builtin/am.c:2235
+msgid "add a Signed-off-by line to the commit message"
+msgstr "добавить строку Signed-off-by к сообщению коммита"
+
+#: builtin/am.c:2238
+msgid "recode into utf8 (default)"
+msgstr "перекодировать в utf8 (по умолчанию)"
+
+#: builtin/am.c:2240
+msgid "pass -k flag to git-mailinfo"
+msgstr "передать флаг -k в git-mailinfo"
+
+#: builtin/am.c:2242
+msgid "pass -b flag to git-mailinfo"
+msgstr "передать флаг -b в git-mailinfo"
+
+#: builtin/am.c:2244
+msgid "pass -m flag to git-mailinfo"
+msgstr "передать флаг -m в git-mailinfo"
+
+#: builtin/am.c:2246
+msgid "pass --keep-cr flag to git-mailsplit for mbox format"
+msgstr "передать флаг --keep-cr в git-mailsplit для формата mbox"
+
+#: builtin/am.c:2249
+msgid "do not pass --keep-cr flag to git-mailsplit independent of am.keepcr"
+msgstr "не передавать --keep-cr флаг в git-mailsplit вне зависимости от am.keepcr"
+
+#: builtin/am.c:2252
+msgid "strip everything before a scissors line"
+msgstr "обрезать все до строки обрезки"
+
+#: builtin/am.c:2253 builtin/apply.c:4563
+msgid "action"
+msgstr "действие"
+
+#: builtin/am.c:2254 builtin/am.c:2257 builtin/am.c:2260 builtin/am.c:2263
+#: builtin/am.c:2266 builtin/am.c:2269 builtin/am.c:2272 builtin/am.c:2275
+#: builtin/am.c:2281
+msgid "pass it through git-apply"
+msgstr "передать его в git-apply"
+
+#: builtin/am.c:2262 builtin/apply.c:4587
+msgid "root"
+msgstr "корень"
+
+#: builtin/am.c:2265 builtin/am.c:2268 builtin/apply.c:4525
+#: builtin/apply.c:4528 builtin/clone.c:85 builtin/fetch.c:93
+#: builtin/pull.c:167
+msgid "path"
+msgstr "путь"
+
+#: builtin/am.c:2271 builtin/fmt-merge-msg.c:669 builtin/fmt-merge-msg.c:672
+#: builtin/grep.c:698 builtin/merge.c:198 builtin/pull.c:127
+#: builtin/repack.c:178 builtin/repack.c:182 builtin/show-branch.c:664
+#: builtin/show-ref.c:180 builtin/tag.c:591 parse-options.h:132
+#: parse-options.h:134 parse-options.h:243
+msgid "n"
+msgstr "n"
+
+#: builtin/am.c:2274 builtin/apply.c:4531
+msgid "num"
+msgstr "количество"
+
+#: builtin/am.c:2277 builtin/for-each-ref.c:34 builtin/replace.c:438
+msgid "format"
+msgstr "формат"
+
+#: builtin/am.c:2278
+msgid "format the patch(es) are in"
+msgstr "формат, в котором находятся патчи"
+
+#: builtin/am.c:2284
+msgid "override error message when patch failure occurs"
+msgstr "переопределить сообщение об ошибке, если не удалось наложить изменения"
+
+#: builtin/am.c:2286
+msgid "continue applying patches after resolving a conflict"
+msgstr "продолжить применение изменений после разрешения конфиликта"
+
+#: builtin/am.c:2289
+msgid "synonyms for --continue"
+msgstr "синонимы для --continue"
+
+#: builtin/am.c:2292
+msgid "skip the current patch"
+msgstr "пропустить текущий патч"
+
+#: builtin/am.c:2295
+msgid "restore the original branch and abort the patching operation."
+msgstr "восстановить оригинальную ветку и отменить операцию применения изменений."
+
+#: builtin/am.c:2299
+msgid "lie about committer date"
+msgstr "соврать о дате коммитера"
+
+#: builtin/am.c:2301
+msgid "use current timestamp for author date"
+msgstr "использовать текущее время как время авторства"
+
+#: builtin/am.c:2303 builtin/commit.c:1590 builtin/merge.c:225
+#: builtin/pull.c:155 builtin/revert.c:92 builtin/tag.c:606
+msgid "key-id"
+msgstr "key-id"
+
+#: builtin/am.c:2304
+msgid "GPG-sign commits"
+msgstr "подписать коммиты с помощью GPG"
+
+#: builtin/am.c:2307
+msgid "(internal use for git-rebase)"
+msgstr "(внутреннее использование для git-rebase)"
+
+#: builtin/am.c:2322
+msgid ""
+"The -b/--binary option has been a no-op for long time, and\n"
+"it will be removed. Please do not use it anymore."
+msgstr "Опция -b/--binary уже долгое время ничего не делает и будет удалена с следующих версиях Git. Пожалуйста, не используйте ее."
+
+#: builtin/am.c:2329
+msgid "failed to read the index"
+msgstr "сбой чтения индекса"
+
+#: builtin/am.c:2344
+#, c-format
+msgid "previous rebase directory %s still exists but mbox given."
+msgstr "предыдущий каталог перемещения %s еще существует, но передан mbox."
+
+#: builtin/am.c:2368
+#, c-format
+msgid ""
+"Stray %s directory found.\n"
+"Use \"git am --abort\" to remove it."
+msgstr "Найден забытый каталог %s.\nИспользуйте «git am --abort», чтобы удалить его."
+
+#: builtin/am.c:2374
+msgid "Resolve operation not in progress, we are not resuming."
+msgstr "Операция разрешения конфликтов не в процессе выполнения, не продолжаем."
+
#: builtin/apply.c:59
msgid "git apply [<options>] [<patch>...]"
msgstr "git apply [<опции>] [<патч>…]"
@@ -2381,7 +2867,7 @@ msgstr "%s: не удалось применить патч"
msgid "Checking patch %s..."
msgstr "Проверка патча %s…"
-#: builtin/apply.c:3909 builtin/checkout.c:233 builtin/reset.c:135
+#: builtin/apply.c:3909 builtin/checkout.c:232 builtin/reset.c:135
#, c-format
msgid "make_cache_entry failed for path '%s'"
msgstr "сбой make_cache_entry для пути «%s»"
@@ -2462,11 +2948,6 @@ msgstr "не распознанный ввод"
msgid "unable to read index file"
msgstr "не удалось прочитать файл индекса"
-#: builtin/apply.c:4525 builtin/apply.c:4528 builtin/clone.c:85
-#: builtin/fetch.c:92
-msgid "path"
-msgstr "путь"
-
#: builtin/apply.c:4526
msgid "don't apply changes matching the given path"
msgstr "не применять изменения по указанному пути"
@@ -2475,10 +2956,6 @@ msgstr "не применять изменения по указанному п
msgid "apply changes matching the given path"
msgstr "применять изменения по указанному пути"
-#: builtin/apply.c:4531
-msgid "num"
-msgstr "количество"
-
#: builtin/apply.c:4532
msgid "remove <num> leading slashes from traditional diff paths"
msgstr "удалить <количество> ведущих косых черт из традиционных путей списка изменений"
@@ -2535,10 +3012,6 @@ msgstr "пути, отделенные НУЛЕВЫМ символом"
msgid "ensure at least <n> lines of context match"
msgstr "удостовериться, что по крайней мере <n> строк контекста совпадают"
-#: builtin/apply.c:4563
-msgid "action"
-msgstr "действие"
-
#: builtin/apply.c:4564
msgid "detect new or modified lines that have whitespace errors"
msgstr "определять новые или модифицированные строки, у которых есть ошибки в пробельных символах"
@@ -2571,10 +3044,6 @@ msgstr "разрешить некорректно определенные пр
msgid "do not trust the line counts in the hunk headers"
msgstr "не доверять количеству строк из заголовка блока изменений"
-#: builtin/apply.c:4587
-msgid "root"
-msgstr "корень"
-
#: builtin/apply.c:4588
msgid "prepend <root> to all filenames"
msgstr "добавить <корень> спереди ко всем именам файлов"
@@ -2661,11 +3130,11 @@ msgstr "выполнить «git bisect next»"
msgid "update BISECT_HEAD instead of checking out the current commit"
msgstr "обновить BISECT_HEAD вместо перехода на текущий коммит"
-#: builtin/blame.c:31
+#: builtin/blame.c:32
msgid "git blame [<options>] [<rev-opts>] [<rev>] [--] <file>"
msgstr "git blame [<опции>] [<опции-редакции>] [<редакция>] [--] <файл>"
-#: builtin/blame.c:36
+#: builtin/blame.c:37
msgid "<rev-opts> are documented in git-rev-list(1)"
msgstr "<опции-rev-list> документированы в git-rev-list(1)"
@@ -2840,323 +3309,323 @@ msgstr "внешняя отслеживаемая ветка «%s» не най
msgid "branch '%s' not found."
msgstr "ветка «%s» не найдена."
-#: builtin/branch.c:258
+#: builtin/branch.c:259
#, c-format
msgid "Error deleting remote-tracking branch '%s'"
msgstr "Ошибка удаления внешней отслеживаемой ветки «%s»"
-#: builtin/branch.c:259
+#: builtin/branch.c:260
#, c-format
msgid "Error deleting branch '%s'"
msgstr "Ошибка удаления ветки «%s»"
-#: builtin/branch.c:266
+#: builtin/branch.c:267
#, c-format
msgid "Deleted remote-tracking branch %s (was %s).\n"
msgstr "Внешняя отслеживаемая ветка %s удалена (была %s).\n"
-#: builtin/branch.c:267
+#: builtin/branch.c:268
#, c-format
msgid "Deleted branch %s (was %s).\n"
msgstr "Ветка %s удалена (была %s).\n"
-#: builtin/branch.c:368
+#: builtin/branch.c:369
#, c-format
msgid "branch '%s' does not point at a commit"
msgstr "ветка «%s» не указывает на коммит"
-#: builtin/branch.c:451
+#: builtin/branch.c:452
#, c-format
msgid "[%s: gone]"
msgstr "[%s: пропал]"
-#: builtin/branch.c:456
+#: builtin/branch.c:457
#, c-format
msgid "[%s]"
msgstr "[%s]"
-#: builtin/branch.c:461
+#: builtin/branch.c:462
#, c-format
msgid "[%s: behind %d]"
msgstr "[%s: позади %d]"
-#: builtin/branch.c:463
+#: builtin/branch.c:464
#, c-format
msgid "[behind %d]"
msgstr "[позади %d]"
-#: builtin/branch.c:467
+#: builtin/branch.c:468
#, c-format
msgid "[%s: ahead %d]"
msgstr "[%s: впереди %d]"
-#: builtin/branch.c:469
+#: builtin/branch.c:470
#, c-format
msgid "[ahead %d]"
msgstr "[впереди %d]"
-#: builtin/branch.c:472
+#: builtin/branch.c:473
#, c-format
msgid "[%s: ahead %d, behind %d]"
msgstr "[%s: впереди %d, позади %d]"
-#: builtin/branch.c:475
+#: builtin/branch.c:476
#, c-format
msgid "[ahead %d, behind %d]"
msgstr "[впереди %d, позади %d]"
-#: builtin/branch.c:488
+#: builtin/branch.c:489
msgid " **** invalid ref ****"
msgstr " **** недействительная ссылка ****"
-#: builtin/branch.c:579
+#: builtin/branch.c:580
#, c-format
msgid "(no branch, rebasing %s)"
msgstr "(нет ветки, перемещение %s)"
-#: builtin/branch.c:582
+#: builtin/branch.c:583
#, c-format
msgid "(no branch, bisect started on %s)"
msgstr "(нет ветки, двоичный поиск начат на %s)"
-#: builtin/branch.c:588
+#: builtin/branch.c:589
#, c-format
msgid "(HEAD detached at %s)"
msgstr "(HEAD отделён на %s)"
-#: builtin/branch.c:591
+#: builtin/branch.c:592
#, c-format
msgid "(HEAD detached from %s)"
msgstr "(HEAD отделён начиная с %s)"
-#: builtin/branch.c:595
+#: builtin/branch.c:596
msgid "(no branch)"
msgstr "(нет ветки)"
-#: builtin/branch.c:642
+#: builtin/branch.c:643
#, c-format
msgid "object '%s' does not point to a commit"
msgstr "объект «%s» не указывает на коммит"
-#: builtin/branch.c:690
+#: builtin/branch.c:691
msgid "some refs could not be read"
msgstr "не удается прочитать некоторые ссылки"
-#: builtin/branch.c:703
+#: builtin/branch.c:704
msgid "cannot rename the current branch while not on any."
msgstr "невозможно переименовать текущую ветку, если вы не находитесь ни на одной из них."
-#: builtin/branch.c:713
+#: builtin/branch.c:714
#, c-format
msgid "Invalid branch name: '%s'"
msgstr "Недействительное имя ветки: «%s»"
-#: builtin/branch.c:728
+#: builtin/branch.c:729
msgid "Branch rename failed"
msgstr "Сбой переименования ветки"
-#: builtin/branch.c:732
+#: builtin/branch.c:733
#, c-format
msgid "Renamed a misnamed branch '%s' away"
msgstr "Переименована неправильно названная ветка «%s»"
-#: builtin/branch.c:736
+#: builtin/branch.c:737
#, c-format
msgid "Branch renamed to %s, but HEAD is not updated!"
msgstr "Ветка переименована в %s, но HEAD не обновлен!"
-#: builtin/branch.c:743
+#: builtin/branch.c:744
msgid "Branch is renamed, but update of config-file failed"
msgstr "Ветка переименована, но произошел сбой обновления файла конфигурации"
-#: builtin/branch.c:758
+#: builtin/branch.c:759
#, c-format
msgid "malformed object name %s"
msgstr "плохое имя объекта %s"
-#: builtin/branch.c:780
+#: builtin/branch.c:781
#, c-format
msgid "could not write branch description template: %s"
msgstr "не удалось записать шаблон описания ветки: %s"
-#: builtin/branch.c:810
+#: builtin/branch.c:811
msgid "Generic options"
msgstr "Общие параметры"
-#: builtin/branch.c:812
+#: builtin/branch.c:813
msgid "show hash and subject, give twice for upstream branch"
msgstr "показывать хеш-сумму и тему, укажите дважды для вышестоящей ветки"
-#: builtin/branch.c:813
+#: builtin/branch.c:814
msgid "suppress informational messages"
msgstr "не выводить информационные сообщения"
-#: builtin/branch.c:814
+#: builtin/branch.c:815
msgid "set up tracking mode (see git-pull(1))"
msgstr "установить режим отслеживания вышестоящей ветки (см. git-pull(1))"
-#: builtin/branch.c:816
+#: builtin/branch.c:817
msgid "change upstream info"
msgstr "изменить информацию о вышестоящей ветке"
-#: builtin/branch.c:820
+#: builtin/branch.c:821
msgid "use colored output"
msgstr "использовать цветной вывод"
-#: builtin/branch.c:821
+#: builtin/branch.c:822
msgid "act on remote-tracking branches"
msgstr "выполнить действия на отслеживаемых внешних ветках"
-#: builtin/branch.c:824 builtin/branch.c:830 builtin/branch.c:851
-#: builtin/branch.c:857 builtin/commit.c:1581 builtin/commit.c:1582
-#: builtin/commit.c:1583 builtin/commit.c:1584 builtin/tag.c:616
-#: builtin/tag.c:622
+#: builtin/branch.c:825 builtin/branch.c:831 builtin/branch.c:852
+#: builtin/branch.c:858 builtin/commit.c:1580 builtin/commit.c:1581
+#: builtin/commit.c:1582 builtin/commit.c:1583 builtin/tag.c:618
+#: builtin/tag.c:624
msgid "commit"
msgstr "коммит"
-#: builtin/branch.c:825 builtin/branch.c:831
+#: builtin/branch.c:826 builtin/branch.c:832
msgid "print only branches that contain the commit"
msgstr "вывод только веток, которые содержат коммит"
-#: builtin/branch.c:837
+#: builtin/branch.c:838
msgid "Specific git-branch actions:"
msgstr "Специфичные для git-branch действия:"
-#: builtin/branch.c:838
+#: builtin/branch.c:839
msgid "list both remote-tracking and local branches"
msgstr "показать список и отслеживаемых и локальных веток"
-#: builtin/branch.c:840
+#: builtin/branch.c:841
msgid "delete fully merged branch"
msgstr "удалить полностью слитую ветку"
-#: builtin/branch.c:841
+#: builtin/branch.c:842
msgid "delete branch (even if not merged)"
msgstr "удалить ветку (даже никуда не слитую)"
-#: builtin/branch.c:842
+#: builtin/branch.c:843
msgid "move/rename a branch and its reflog"
msgstr "переместить/переименовать ветки и ее журнал ссылок"
-#: builtin/branch.c:843
+#: builtin/branch.c:844
msgid "move/rename a branch, even if target exists"
msgstr "переместить/переименовать ветку, даже если целевое имя уже существует"
-#: builtin/branch.c:844
+#: builtin/branch.c:845
msgid "list branch names"
msgstr "показать список имен веток"
-#: builtin/branch.c:845
+#: builtin/branch.c:846
msgid "create the branch's reflog"
msgstr "создать журнал ссылок ветки"
-#: builtin/branch.c:847
+#: builtin/branch.c:848
msgid "edit the description for the branch"
msgstr "изменить описание ветки"
-#: builtin/branch.c:848
+#: builtin/branch.c:849
msgid "force creation, move/rename, deletion"
msgstr "принудительное создание, перемещение или удаление ветки"
-#: builtin/branch.c:851
+#: builtin/branch.c:852
msgid "print only not merged branches"
msgstr "вывод только не слитых веток"
-#: builtin/branch.c:857
+#: builtin/branch.c:858
msgid "print only merged branches"
msgstr "вывод только слитых веток"
-#: builtin/branch.c:861
+#: builtin/branch.c:862
msgid "list branches in columns"
msgstr "показать список веток по столбцам"
-#: builtin/branch.c:874
+#: builtin/branch.c:875
msgid "Failed to resolve HEAD as a valid ref."
msgstr "Не удалось определить HEAD как действительную ссылку."
-#: builtin/branch.c:878 builtin/clone.c:622
+#: builtin/branch.c:879 builtin/clone.c:690
msgid "HEAD not found below refs/heads!"
msgstr "HEAD не найден в refs/heads!"
-#: builtin/branch.c:900
+#: builtin/branch.c:901
msgid "--column and --verbose are incompatible"
msgstr "--column и --verbose нельзя использовать одновременно"
-#: builtin/branch.c:911 builtin/branch.c:950
+#: builtin/branch.c:912 builtin/branch.c:951
msgid "branch name required"
msgstr "требуется имя ветки"
-#: builtin/branch.c:926
+#: builtin/branch.c:927
msgid "Cannot give description to detached HEAD"
msgstr "Нельзя дать описание отделенному HEAD"
-#: builtin/branch.c:931
+#: builtin/branch.c:932
msgid "cannot edit description of more than one branch"
msgstr "нельзя изменить описание более одной ветки за раз"
-#: builtin/branch.c:938
+#: builtin/branch.c:939
#, c-format
msgid "No commit on branch '%s' yet."
msgstr "Еще нет коммита на ветке «%s»."
-#: builtin/branch.c:941
+#: builtin/branch.c:942
#, c-format
msgid "No branch named '%s'."
msgstr "Нет ветки с именем «%s»."
-#: builtin/branch.c:956
+#: builtin/branch.c:957
msgid "too many branches for a rename operation"
msgstr "слишком много веток для операции переименования"
-#: builtin/branch.c:961
+#: builtin/branch.c:962
msgid "too many branches to set new upstream"
msgstr "слишком много веток для указания новых вышестоящих"
-#: builtin/branch.c:965
+#: builtin/branch.c:966
#, c-format
msgid ""
"could not set upstream of HEAD to %s when it does not point to any branch."
msgstr "невозможно установить вышестоящий репозиторий для HEAD на %s, когда он не указывает ни на одну ветку."
-#: builtin/branch.c:968 builtin/branch.c:990 builtin/branch.c:1011
+#: builtin/branch.c:969 builtin/branch.c:991 builtin/branch.c:1012
#, c-format
msgid "no such branch '%s'"
msgstr "нет такой ветки «%s»"
-#: builtin/branch.c:972
+#: builtin/branch.c:973
#, c-format
msgid "branch '%s' does not exist"
msgstr "ветка «%s» не существует"
-#: builtin/branch.c:984
+#: builtin/branch.c:985
msgid "too many branches to unset upstream"
msgstr "слишком много веток для убирания вышестоящих"
-#: builtin/branch.c:988
+#: builtin/branch.c:989
msgid "could not unset upstream of HEAD when it does not point to any branch."
msgstr "невозможно убрать вышестоящий репозиторий для HEAD, когда он не указывает ни на одну ветку."
-#: builtin/branch.c:994
+#: builtin/branch.c:995
#, c-format
msgid "Branch '%s' has no upstream information"
msgstr "Ветка «%s» не имеет информации о вышестоящей ветке"
-#: builtin/branch.c:1008
+#: builtin/branch.c:1009
msgid "it does not make sense to create 'HEAD' manually"
msgstr "не имеет смысла создавать «HEAD» вручную"
-#: builtin/branch.c:1014
+#: builtin/branch.c:1015
msgid "-a and -r options to 'git branch' do not make sense with a branch name"
msgstr "параметры -a и -r для «git branch» не имеют смысла с указанием имени ветки"
-#: builtin/branch.c:1017
+#: builtin/branch.c:1018
#, c-format
msgid ""
"The --set-upstream flag is deprecated and will be removed. Consider using "
"--track or --set-upstream-to\n"
msgstr "Флаг --set-upstream устарел и будет удален в будущем. Вместо него используйте --track или --set-upstream-to\n"
-#: builtin/branch.c:1034
+#: builtin/branch.c:1035
#, c-format
msgid ""
"\n"
@@ -3164,12 +3633,12 @@ msgid ""
"\n"
msgstr "\nЕсли вы хотите, чтобы «%s» отслеживала «%s», сделайте следующее:\n\n"
-#: builtin/branch.c:1035
+#: builtin/branch.c:1036
#, c-format
msgid " git branch -d %s\n"
msgstr "git branch -d %s\n"
-#: builtin/branch.c:1036
+#: builtin/branch.c:1037
#, c-format
msgid " git branch --set-upstream-to %s\n"
msgstr " git branch --set-upstream-to %s\n"
@@ -3187,58 +3656,66 @@ msgstr "Требуется репозиторий для создания пак
msgid "Need a repository to unbundle."
msgstr "Требуется репозиторий для распаковки."
-#: builtin/cat-file.c:369
+#: builtin/cat-file.c:428
msgid ""
"git cat-file (-t [--allow-unknown-type]|-s [--allow-unknown-"
"type]|-e|-p|<type>|--textconv) <object>"
msgstr "git cat-file (-t [--allow-unknown-type]|-s [--allow-unknown-type]|-e|-p|<тип>|--textconv) <объект>"
-#: builtin/cat-file.c:370
+#: builtin/cat-file.c:429
msgid ""
"git cat-file (--batch | --batch-check) [--follow-symlinks] < <list-of-"
"objects>"
msgstr "git cat-file (--batch | --batch-check) [--follow-symlinks] < <список-объектов>"
-#: builtin/cat-file.c:407
+#: builtin/cat-file.c:466
msgid "<type> can be one of: blob, tree, commit, tag"
msgstr "<тип> может быть одним из: blob, tree, commit, tag"
-#: builtin/cat-file.c:408
+#: builtin/cat-file.c:467
msgid "show object type"
msgstr "показать тип объекта"
-#: builtin/cat-file.c:409
+#: builtin/cat-file.c:468
msgid "show object size"
msgstr "показать размер объекта"
-#: builtin/cat-file.c:411
+#: builtin/cat-file.c:470
msgid "exit with zero when there's no error"
msgstr "выйти с нулевым кодом возврата, если нет ошибки"
-#: builtin/cat-file.c:412
+#: builtin/cat-file.c:471
msgid "pretty-print object's content"
msgstr "структурированный вывод содержимого объекта"
-#: builtin/cat-file.c:414
+#: builtin/cat-file.c:473
msgid "for blob objects, run textconv on object's content"
msgstr "запустить texconv на содержимом двоичных объектов "
-#: builtin/cat-file.c:416
+#: builtin/cat-file.c:475
msgid "allow -s and -t to work with broken/corrupt objects"
msgstr "разрешить -s и -t работать с повреждёнными объектами"
-#: builtin/cat-file.c:418
+#: builtin/cat-file.c:476
+msgid "buffer --batch output"
+msgstr "буфферировать вывод --batch"
+
+#: builtin/cat-file.c:478
msgid "show info and content of objects fed from the standard input"
msgstr "показать информацию и содержимое объектов, переданных из стандартного ввода"
-#: builtin/cat-file.c:421
+#: builtin/cat-file.c:481
msgid "show info about objects fed from the standard input"
msgstr "показать информацию об объектах, переданных из стандартного ввода"
-#: builtin/cat-file.c:424
+#: builtin/cat-file.c:484
msgid "follow in-tree symlinks (used with --batch or --batch-check)"
msgstr "переходить по символьным ссылкам внутри дерева (используется с опциями --batch и --batch-check)"
+#: builtin/cat-file.c:486
+msgid "show all objects with --batch or --batch-check"
+msgstr "показать все объекты с опциями --batch или --batch-check"
+
#: builtin/check-attr.c:11
msgid "git check-attr [-a | --all | <attr>...] [--] <pathname>..."
msgstr "git check-attr [-a | --all | <атрибут>…] [--] <путь>…"
@@ -3263,7 +3740,7 @@ msgstr "прочитать имена файлов из стандартного
msgid "terminate input and output records by a NUL character"
msgstr "окончание ввода и вывода записей по НУЛЕВОМУ символу"
-#: builtin/check-ignore.c:18 builtin/checkout.c:1202 builtin/gc.c:279
+#: builtin/check-ignore.c:18 builtin/checkout.c:1133 builtin/gc.c:267
msgid "suppress progress reporting"
msgstr "не выводить прогресс выполнения"
@@ -3360,113 +3837,113 @@ msgstr "добавить спереди <строку> при создании
msgid "copy out the files from named stage"
msgstr "копировать файлы из указанного индекса"
-#: builtin/checkout.c:24
+#: builtin/checkout.c:25
msgid "git checkout [<options>] <branch>"
msgstr "git checkout [<опции>] <ветка>"
-#: builtin/checkout.c:25
+#: builtin/checkout.c:26
msgid "git checkout [<options>] [<branch>] -- <file>..."
msgstr "git checkout [<опции>] [<ветка>] -- <файл>…"
-#: builtin/checkout.c:134 builtin/checkout.c:167
+#: builtin/checkout.c:133 builtin/checkout.c:166
#, c-format
msgid "path '%s' does not have our version"
msgstr "путь «%s» не имеет нашей версии"
-#: builtin/checkout.c:136 builtin/checkout.c:169
+#: builtin/checkout.c:135 builtin/checkout.c:168
#, c-format
msgid "path '%s' does not have their version"
msgstr "путь «%s» не имеет их версии"
-#: builtin/checkout.c:152
+#: builtin/checkout.c:151
#, c-format
msgid "path '%s' does not have all necessary versions"
msgstr "путь «%s» не имеет всех необходимых версий"
-#: builtin/checkout.c:196
+#: builtin/checkout.c:195
#, c-format
msgid "path '%s' does not have necessary versions"
msgstr "путь «%s» не имеет необходимых версий"
-#: builtin/checkout.c:213
+#: builtin/checkout.c:212
#, c-format
msgid "path '%s': cannot merge"
msgstr "путь «%s»: не удалось слить"
-#: builtin/checkout.c:230
+#: builtin/checkout.c:229
#, c-format
msgid "Unable to add merge result for '%s'"
msgstr "Не удалось добавить результат слияния «%s»"
-#: builtin/checkout.c:251 builtin/checkout.c:254 builtin/checkout.c:257
-#: builtin/checkout.c:260
+#: builtin/checkout.c:250 builtin/checkout.c:253 builtin/checkout.c:256
+#: builtin/checkout.c:259
#, c-format
msgid "'%s' cannot be used with updating paths"
msgstr "«%s» нельзя использовать при обновлении путей"
-#: builtin/checkout.c:263 builtin/checkout.c:266
+#: builtin/checkout.c:262 builtin/checkout.c:265
#, c-format
msgid "'%s' cannot be used with %s"
msgstr "«%s» нельзя использовать одновременно с %s"
-#: builtin/checkout.c:269
+#: builtin/checkout.c:268
#, c-format
msgid "Cannot update paths and switch to branch '%s' at the same time."
msgstr "Нельзя обновлять пути и переключаться на ветку «%s» одновременно."
-#: builtin/checkout.c:280 builtin/checkout.c:474
+#: builtin/checkout.c:279 builtin/checkout.c:473
msgid "corrupt index file"
msgstr "файл индекса поврежден"
-#: builtin/checkout.c:340 builtin/checkout.c:347
+#: builtin/checkout.c:339 builtin/checkout.c:346
#, c-format
msgid "path '%s' is unmerged"
msgstr "путь «%s» не слит"
-#: builtin/checkout.c:496
+#: builtin/checkout.c:495
msgid "you need to resolve your current index first"
msgstr "сначала нужно разрешить конфликты в вашем текущем индексе"
-#: builtin/checkout.c:627
+#: builtin/checkout.c:622
#, c-format
-msgid "Can not do reflog for '%s'\n"
-msgstr "Не удалось создать журнал ссылок для «%s»\n"
+msgid "Can not do reflog for '%s': %s\n"
+msgstr "Не удалось создать журнал ссылок для «%s»': %s\n"
-#: builtin/checkout.c:663
+#: builtin/checkout.c:660
msgid "HEAD is now at"
msgstr "HEAD сейчас на"
-#: builtin/checkout.c:670
+#: builtin/checkout.c:667
#, c-format
msgid "Reset branch '%s'\n"
msgstr "Сброс ветки «%s»\n"
-#: builtin/checkout.c:673
+#: builtin/checkout.c:670
#, c-format
msgid "Already on '%s'\n"
msgstr "Уже на «%s»\n"
-#: builtin/checkout.c:677
+#: builtin/checkout.c:674
#, c-format
msgid "Switched to and reset branch '%s'\n"
msgstr "Переключение и сброс ветки «%s»\n"
-#: builtin/checkout.c:679 builtin/checkout.c:1134
+#: builtin/checkout.c:676 builtin/checkout.c:1065
#, c-format
msgid "Switched to a new branch '%s'\n"
msgstr "Переключено на новую ветку «%s»\n"
-#: builtin/checkout.c:681
+#: builtin/checkout.c:678
#, c-format
msgid "Switched to branch '%s'\n"
msgstr "Переключено на ветку «%s»\n"
-#: builtin/checkout.c:733
+#: builtin/checkout.c:730
#, c-format
msgid " ... and %d more.\n"
msgstr " … и еще %d.\n"
-#: builtin/checkout.c:739
+#: builtin/checkout.c:736
#, c-format
msgid ""
"Warning: you are leaving %d commit behind, not connected to\n"
@@ -3483,7 +3960,7 @@ msgstr[1] "Предупреждение: вы оставляете позади
msgstr[2] "Предупреждение: вы оставляете позади %d коммитов не соединенные ни с одной из ваших веток:\n\n%s\n"
msgstr[3] "Предупреждение: вы оставляете позади %d коммитов не соединенные ни с одной из ваших веток:\n\n%s\n"
-#: builtin/checkout.c:758
+#: builtin/checkout.c:755
#, c-format
msgid ""
"If you want to keep it by creating a new branch, this may be a good time\n"
@@ -3502,197 +3979,192 @@ msgstr[1] "Если вы хотите сохранить их с помощью
msgstr[2] "Если вы хотите сохранить их с помощью создания новой ветки, то сейчас самое время\nсделать это с помощью:\n\n git branch <имя-новой-ветки> %s\n\n"
msgstr[3] "Если вы хотите сохранить их с помощью создания новой ветки, то сейчас самое время\nсделать это с помощью:\n\n git branch <имя-новой-ветки> %s\n\n"
-#: builtin/checkout.c:794
+#: builtin/checkout.c:791
msgid "internal error in revision walk"
msgstr "внутренняя ошибка при хождении по редакциям"
-#: builtin/checkout.c:798
+#: builtin/checkout.c:795
msgid "Previous HEAD position was"
msgstr "Предыдущая позиция HEAD была"
-#: builtin/checkout.c:825 builtin/checkout.c:1129
+#: builtin/checkout.c:822 builtin/checkout.c:1060
msgid "You are on a branch yet to be born"
msgstr "Вы находитесь на еще не созданной ветке"
-#: builtin/checkout.c:931
-#, c-format
-msgid "'%s' is already checked out at '%s'"
-msgstr "«%s» уже находится на «%s»"
-
-#: builtin/checkout.c:1036
+#: builtin/checkout.c:967
#, c-format
msgid "only one reference expected, %d given."
msgstr "ожидается только одна ссылка, а передано %d."
-#: builtin/checkout.c:1075
+#: builtin/checkout.c:1006 builtin/worktree.c:210
#, c-format
msgid "invalid reference: %s"
msgstr "неправильная ссылка: %s"
-#: builtin/checkout.c:1104
+#: builtin/checkout.c:1035
#, c-format
msgid "reference is not a tree: %s"
msgstr "в дереве нет такой ссылки: %s"
-#: builtin/checkout.c:1143
+#: builtin/checkout.c:1074
msgid "paths cannot be used with switching branches"
msgstr "нельзя использовать пути при переключении веток"
-#: builtin/checkout.c:1146 builtin/checkout.c:1150
+#: builtin/checkout.c:1077 builtin/checkout.c:1081
#, c-format
msgid "'%s' cannot be used with switching branches"
msgstr "нельзя использовать «%s» при переключении веток"
-#: builtin/checkout.c:1154 builtin/checkout.c:1157 builtin/checkout.c:1162
-#: builtin/checkout.c:1165
+#: builtin/checkout.c:1085 builtin/checkout.c:1088 builtin/checkout.c:1093
+#: builtin/checkout.c:1096
#, c-format
msgid "'%s' cannot be used with '%s'"
msgstr "«%s» нельзя использовать одновременно с «%s»"
-#: builtin/checkout.c:1170
+#: builtin/checkout.c:1101
#, c-format
msgid "Cannot switch branch to a non-commit '%s'"
msgstr "Нельзя переключить ветку на не коммит «%s»"
-#: builtin/checkout.c:1203 builtin/checkout.c:1205 builtin/clone.c:83
-#: builtin/remote.c:159 builtin/remote.c:161 builtin/worktree.c:282
-#: builtin/worktree.c:284
+#: builtin/checkout.c:1134 builtin/checkout.c:1136 builtin/clone.c:83
+#: builtin/remote.c:159 builtin/remote.c:161 builtin/worktree.c:317
+#: builtin/worktree.c:319
msgid "branch"
msgstr "ветка"
-#: builtin/checkout.c:1204
+#: builtin/checkout.c:1135
msgid "create and checkout a new branch"
msgstr "создать и перейти на новую ветку"
-#: builtin/checkout.c:1206
+#: builtin/checkout.c:1137
msgid "create/reset and checkout a branch"
msgstr "создать/сбросить и перейти на новую ветку"
-#: builtin/checkout.c:1207
+#: builtin/checkout.c:1138
msgid "create reflog for new branch"
msgstr "создать журнал ссылок для новой ветки"
-#: builtin/checkout.c:1208
+#: builtin/checkout.c:1139
msgid "detach the HEAD at named commit"
msgstr "отсоединить HEAD на указанном коммите"
-#: builtin/checkout.c:1209
+#: builtin/checkout.c:1140
msgid "set upstream info for new branch"
msgstr "установить информацию о вышестоящей ветке для новой ветки"
-#: builtin/checkout.c:1211
+#: builtin/checkout.c:1142
msgid "new-branch"
msgstr "новая-ветка"
-#: builtin/checkout.c:1211
+#: builtin/checkout.c:1142
msgid "new unparented branch"
msgstr "новая ветка без родителей"
-#: builtin/checkout.c:1212
+#: builtin/checkout.c:1143
msgid "checkout our version for unmerged files"
msgstr "перейти на нашу версию для не слитых файлов"
-#: builtin/checkout.c:1214
+#: builtin/checkout.c:1145
msgid "checkout their version for unmerged files"
msgstr "перейти на их версию для не слитых файлов"
-#: builtin/checkout.c:1216
+#: builtin/checkout.c:1147
msgid "force checkout (throw away local modifications)"
msgstr "принудительный переход (отбрасывает все локальные изменения)"
-#: builtin/checkout.c:1217
+#: builtin/checkout.c:1148
msgid "perform a 3-way merge with the new branch"
msgstr "выполнить трехходовое слияние с новой веткой"
-#: builtin/checkout.c:1218 builtin/merge.c:227
+#: builtin/checkout.c:1149 builtin/merge.c:227
msgid "update ignored files (default)"
msgstr "обновить игнорируемые файлы (по умолчанию)"
-#: builtin/checkout.c:1219 builtin/log.c:1239 parse-options.h:244
+#: builtin/checkout.c:1150 builtin/log.c:1264 parse-options.h:249
msgid "style"
msgstr "стиль"
-#: builtin/checkout.c:1220
+#: builtin/checkout.c:1151
msgid "conflict style (merge or diff3)"
msgstr "стиль конфликтов слияния (merge или diff3)"
-#: builtin/checkout.c:1223
+#: builtin/checkout.c:1154
msgid "do not limit pathspecs to sparse entries only"
msgstr "не ограничивать спецификаторы пути только частичными записями"
-#: builtin/checkout.c:1225
+#: builtin/checkout.c:1156
msgid "second guess 'git checkout <no-such-branch>'"
msgstr "пересмотр «git checkout <no-such-branch>»"
-#: builtin/checkout.c:1227
+#: builtin/checkout.c:1158
msgid "do not check if another worktree is holding the given ref"
msgstr "не проверять, что другое дерево уже содержит указанную ссылку"
-#: builtin/checkout.c:1252
+#: builtin/checkout.c:1181
msgid "-b, -B and --orphan are mutually exclusive"
msgstr "-b, -B и --orphan нельзя использовать одновременно"
-#: builtin/checkout.c:1269
+#: builtin/checkout.c:1198
msgid "--track needs a branch name"
msgstr "--track требует имя ветки"
-#: builtin/checkout.c:1274
+#: builtin/checkout.c:1203
msgid "Missing branch name; try -b"
msgstr "Пропущено имя ветки; попробуйте -b"
-#: builtin/checkout.c:1310
+#: builtin/checkout.c:1239
msgid "invalid path specification"
msgstr "неправильная спецификация пути"
-#: builtin/checkout.c:1317
+#: builtin/checkout.c:1246
#, c-format
msgid ""
"Cannot update paths and switch to branch '%s' at the same time.\n"
"Did you intend to checkout '%s' which can not be resolved as commit?"
msgstr "Нельзя обновить пути и одновременно переключить на ветку «%s».\nВы хотели переключиться на «%s», что не может быть определено как коммит?"
-#: builtin/checkout.c:1322
+#: builtin/checkout.c:1251
#, c-format
msgid "git checkout: --detach does not take a path argument '%s'"
msgstr "git checkout: --detach не принимает путь «%s» как аргумент"
-#: builtin/checkout.c:1326
+#: builtin/checkout.c:1255
msgid ""
"git checkout: --ours/--theirs, --force and --merge are incompatible when\n"
"checking out of the index."
msgstr "git checkout: --ours/--theirs, --force and --merge нельзя использовать одновременно при применении состояния индекса."
-#: builtin/clean.c:26
+#: builtin/clean.c:25
msgid ""
"git clean [-d] [-f] [-i] [-n] [-q] [-e <pattern>] [-x | -X] [--] <paths>..."
msgstr "git clean [-d] [-f] [-i] [-n] [-q] [-e <шаблон>] [-x | -X] [--] <пути>…"
-#: builtin/clean.c:30
+#: builtin/clean.c:29
#, c-format
msgid "Removing %s\n"
msgstr "Удаление %s\n"
-#: builtin/clean.c:31
+#: builtin/clean.c:30
#, c-format
msgid "Would remove %s\n"
msgstr "Будет удалено %s\n"
-#: builtin/clean.c:32
+#: builtin/clean.c:31
#, c-format
msgid "Skipping repository %s\n"
msgstr "Пропуск репозитория %s\n"
-#: builtin/clean.c:33
+#: builtin/clean.c:32
#, c-format
msgid "Would skip repository %s\n"
msgstr "Будет пропущен репозиторий %s\n"
-#: builtin/clean.c:34
+#: builtin/clean.c:33
#, c-format
msgid "failed to remove %s"
msgstr "сбой удаления %s"
-#: builtin/clean.c:295
+#: builtin/clean.c:317
msgid ""
"Prompt help:\n"
"1 - select a numbered item\n"
@@ -3700,7 +4172,7 @@ msgid ""
" - (empty) select nothing"
msgstr "Справка по выделению:\n1 - выбрать указанный элемент\nfoo - выбрать элемент с указанным префиксом\n - (пусто) не выбирать ничего"
-#: builtin/clean.c:299
+#: builtin/clean.c:321
msgid ""
"Prompt help:\n"
"1 - select a single item\n"
@@ -3712,36 +4184,36 @@ msgid ""
" - (empty) finish selecting"
msgstr "Справка по выделению:\n1 - выбрать один элемент\n3-5 - выбрать диапазон элементов\n2-3,6-9 - выбрать несколько диапазонов\nfoo - выбрать элемент с указанным префиксом\n-… - убрать выделение с указанных элементов\n* - выбрать все элементы\n - (пусто) завершить выделение"
-#: builtin/clean.c:515
+#: builtin/clean.c:537
#, c-format
msgid "Huh (%s)?"
msgstr "Хм (%s)?"
-#: builtin/clean.c:657
+#: builtin/clean.c:679
#, c-format
msgid "Input ignore patterns>> "
msgstr "Шаблоны игнорирования ввода>> "
-#: builtin/clean.c:694
+#: builtin/clean.c:716
#, c-format
msgid "WARNING: Cannot find items matched by: %s"
msgstr "ПРЕДУПРЕЖДЕНИЕ: Не удалось найти элементы соответствующие: %s"
-#: builtin/clean.c:715
+#: builtin/clean.c:737
msgid "Select items to delete"
msgstr "Укажите элементы для удаления"
#. TRANSLATORS: Make sure to keep [y/N] as is
-#: builtin/clean.c:756
+#: builtin/clean.c:778
#, c-format
msgid "Remove %s [y/N]? "
msgstr "Удалить %s [y - да/N - нет]? "
-#: builtin/clean.c:781
+#: builtin/clean.c:803
msgid "Bye."
msgstr "До свидания."
-#: builtin/clean.c:789
+#: builtin/clean.c:811
msgid ""
"clean - start cleaning\n"
"filter by pattern - exclude items from deletion\n"
@@ -3752,15 +4224,15 @@ msgid ""
"? - help for prompt selection"
msgstr "clean - начать очистку\nfilter by pattern - исключить удаление элементов\nselect by numbers - исключить удаление элементов по номерам\nask each - запрашивать подтверждение на удаление каждого элемента (как «rm -i»)\nquit - прекратить очистку\nhelp - этот экран\n? - справка по выделению"
-#: builtin/clean.c:816
+#: builtin/clean.c:838
msgid "*** Commands ***"
msgstr "*** Команды ***"
-#: builtin/clean.c:817
+#: builtin/clean.c:839
msgid "What now"
msgstr "Что теперь"
-#: builtin/clean.c:825
+#: builtin/clean.c:847
msgid "Would remove the following item:"
msgid_plural "Would remove the following items:"
msgstr[0] "Удалить следующие элементы:"
@@ -3768,54 +4240,54 @@ msgstr[1] "Удалить следующие элементы:"
msgstr[2] "Удалить следующие элементы:"
msgstr[3] "Удалить следующие элементы:"
-#: builtin/clean.c:842
+#: builtin/clean.c:864
msgid "No more files to clean, exiting."
msgstr "Больше нет файлов для очистки, выходим."
-#: builtin/clean.c:873
+#: builtin/clean.c:895
msgid "do not print names of files removed"
msgstr "не выводить имена удаляемых файлов"
-#: builtin/clean.c:875
+#: builtin/clean.c:897
msgid "force"
msgstr "принудительно"
-#: builtin/clean.c:876
+#: builtin/clean.c:898
msgid "interactive cleaning"
msgstr "интерактивная очистка"
-#: builtin/clean.c:878
+#: builtin/clean.c:900
msgid "remove whole directories"
msgstr "удалить каталоги полностью"
-#: builtin/clean.c:879 builtin/describe.c:407 builtin/grep.c:714
+#: builtin/clean.c:901 builtin/describe.c:407 builtin/grep.c:714
#: builtin/ls-files.c:443 builtin/name-rev.c:311 builtin/show-ref.c:187
msgid "pattern"
msgstr "шаблон"
-#: builtin/clean.c:880
+#: builtin/clean.c:902
msgid "add <pattern> to ignore rules"
msgstr "добавить <шаблон> в правила игнорирования"
-#: builtin/clean.c:881
+#: builtin/clean.c:903
msgid "remove ignored files, too"
msgstr "также удалить игнорируемые файлы"
-#: builtin/clean.c:883
+#: builtin/clean.c:905
msgid "remove only ignored files"
msgstr "удалить только игнорируемые файлы"
-#: builtin/clean.c:901
+#: builtin/clean.c:923
msgid "-x and -X cannot be used together"
msgstr "нельзя использовать одновременно -x и -X"
-#: builtin/clean.c:905
+#: builtin/clean.c:927
msgid ""
"clean.requireForce set to true and neither -i, -n, nor -f given; refusing to"
" clean"
msgstr "clean.requireForce установлен как true и ни одна из опций -i, -n или -f не указана; отказ очистки"
-#: builtin/clean.c:908
+#: builtin/clean.c:930
msgid ""
"clean.requireForce defaults to true and neither -i, -n, nor -f given; "
"refusing to clean"
@@ -3825,8 +4297,8 @@ msgstr "clean.requireForce установлен по умолчанию как t
msgid "git clone [<options>] [--] <repo> [<dir>]"
msgstr "git clone [<опции>] [--] <репозиторий> [<каталог>]"
-#: builtin/clone.c:57 builtin/fetch.c:111 builtin/merge.c:224
-#: builtin/push.c:523
+#: builtin/clone.c:57 builtin/fetch.c:112 builtin/merge.c:224
+#: builtin/pull.c:109 builtin/push.c:560 builtin/send-pack.c:168
msgid "force progress reporting"
msgstr "принудительно выводить прогресс"
@@ -3834,7 +4306,7 @@ msgstr "принудительно выводить прогресс"
msgid "don't create a checkout"
msgstr "не переключать рабочую копию на HEAD"
-#: builtin/clone.c:60 builtin/clone.c:62 builtin/init-db.c:503
+#: builtin/clone.c:60 builtin/clone.c:62 builtin/init-db.c:504
msgid "create a bare repository"
msgstr "создать голый репозиторий"
@@ -3858,11 +4330,11 @@ msgstr "настроить как общедоступный репозитор
msgid "initialize submodules in the clone"
msgstr "инициализировать подмодули в клоне"
-#: builtin/clone.c:75 builtin/init-db.c:500
+#: builtin/clone.c:75 builtin/init-db.c:501
msgid "template-directory"
msgstr "каталог-шаблонов"
-#: builtin/clone.c:76 builtin/init-db.c:501
+#: builtin/clone.c:76 builtin/init-db.c:502
msgid "directory from which templates will be used"
msgstr "каталог, шаблоны из которого будут использованы"
@@ -3890,7 +4362,8 @@ msgstr "перейти на <ветку>, вместо HEAD внешнего р
msgid "path to git-upload-pack on the remote"
msgstr "путь к git-upload-pack на внешнем репозитории"
-#: builtin/clone.c:87 builtin/fetch.c:112 builtin/grep.c:659
+#: builtin/clone.c:87 builtin/fetch.c:113 builtin/grep.c:659
+#: builtin/pull.c:186
msgid "depth"
msgstr "глубина"
@@ -3902,11 +4375,11 @@ msgstr "сделать частичный клон указанной глуби
msgid "clone only one branch, HEAD or --branch"
msgstr "клонировать только одну ветку, HEAD или --branch"
-#: builtin/clone.c:91 builtin/init-db.c:509
+#: builtin/clone.c:91 builtin/init-db.c:510
msgid "gitdir"
msgstr "каталог-git"
-#: builtin/clone.c:92 builtin/init-db.c:510
+#: builtin/clone.c:92 builtin/init-db.c:511
msgid "separate git dir from working tree"
msgstr "разместить каталог git отдельно от рабочей копии"
@@ -3918,178 +4391,173 @@ msgstr "ключ=значение"
msgid "set config inside the new repository"
msgstr "установить параметры внутри нового репозитория"
-#: builtin/clone.c:240
+#: builtin/clone.c:298
#, c-format
msgid "reference repository '%s' is not a local repository."
msgstr "ссылаемый репозиторий «%s» не является локальным."
-#: builtin/clone.c:244
+#: builtin/clone.c:302
#, c-format
msgid "reference repository '%s' is shallow"
msgstr "ссылаемый репозиторий «%s» является частичным"
-#: builtin/clone.c:247
+#: builtin/clone.c:305
#, c-format
msgid "reference repository '%s' is grafted"
msgstr "ссылаемый репозиторий «%s» является сращенным"
-#: builtin/clone.c:310
-#, c-format
-msgid "failed to create directory '%s'"
-msgstr "не удалось создать каталог «%s»"
-
-#: builtin/clone.c:312 builtin/diff.c:84
+#: builtin/clone.c:370 builtin/diff.c:84
#, c-format
msgid "failed to stat '%s'"
msgstr "не удалось выполнить stat «%s»"
-#: builtin/clone.c:314
+#: builtin/clone.c:372
#, c-format
msgid "%s exists and is not a directory"
msgstr "%s уже существует и не является каталогом"
-#: builtin/clone.c:328
+#: builtin/clone.c:386
#, c-format
msgid "failed to stat %s\n"
msgstr "не удалось выполнить stat %s\n"
-#: builtin/clone.c:350
+#: builtin/clone.c:408
#, c-format
msgid "failed to create link '%s'"
msgstr "не удалось создать ссылку «%s»"
-#: builtin/clone.c:354
+#: builtin/clone.c:412
#, c-format
msgid "failed to copy file to '%s'"
msgstr "не удалось копировать файл в «%s»"
-#: builtin/clone.c:377 builtin/clone.c:551
+#: builtin/clone.c:435 builtin/clone.c:619
#, c-format
msgid "done.\n"
msgstr "готово.\n"
-#: builtin/clone.c:389
+#: builtin/clone.c:447
msgid ""
"Clone succeeded, but checkout failed.\n"
"You can inspect what was checked out with 'git status'\n"
"and retry the checkout with 'git checkout -f HEAD'\n"
msgstr "Клонирование прошло успешно, но во время перехода на версию произошла ошибка.\nС помощь команды «git status» вы можете просмотреть, какие файлы были обновлены, а повторить попытку перехода на версию с помощью «git checkout -f HEAD»\n"
-#: builtin/clone.c:466
+#: builtin/clone.c:524
#, c-format
msgid "Could not find remote branch %s to clone."
msgstr "Не удалось найти внешнюю ветку %s для клонирования."
-#: builtin/clone.c:546
+#: builtin/clone.c:614
#, c-format
msgid "Checking connectivity... "
msgstr "Проверка соединения… "
-#: builtin/clone.c:549
+#: builtin/clone.c:617
msgid "remote did not send all necessary objects"
msgstr "внешний репозиторий прислал не все необходимые объекты"
-#: builtin/clone.c:613
+#: builtin/clone.c:681
msgid "remote HEAD refers to nonexistent ref, unable to checkout.\n"
msgstr "внешний HEAD ссылается на несуществующую ссылку, нельзя перейти на такую версию.\n"
-#: builtin/clone.c:644
+#: builtin/clone.c:712
msgid "unable to checkout working tree"
msgstr "не удалось перейти на версию в рабочем каталоге"
-#: builtin/clone.c:731
+#: builtin/clone.c:799
msgid "cannot repack to clean up"
msgstr "не удалось выполнить перепаковку для очистки"
-#: builtin/clone.c:733
+#: builtin/clone.c:801
msgid "cannot unlink temporary alternates file"
msgstr "не удалось отсоединить временные альтернативные файлы"
-#: builtin/clone.c:763
+#: builtin/clone.c:831
msgid "Too many arguments."
msgstr "Слишком много аргументов."
-#: builtin/clone.c:767
+#: builtin/clone.c:835
msgid "You must specify a repository to clone."
msgstr "Вы должны указать репозиторий для клонирования."
-#: builtin/clone.c:778
+#: builtin/clone.c:846
#, c-format
msgid "--bare and --origin %s options are incompatible."
msgstr "--bare и --origin %s нельзя использовать одновременно."
-#: builtin/clone.c:781
+#: builtin/clone.c:849
msgid "--bare and --separate-git-dir are incompatible."
msgstr "--bare и --separate-git-dir нельзя использовать одновременно."
-#: builtin/clone.c:794
+#: builtin/clone.c:862
#, c-format
msgid "repository '%s' does not exist"
msgstr "репозиторий «%s» не существует"
-#: builtin/clone.c:800 builtin/fetch.c:1160
+#: builtin/clone.c:868 builtin/fetch.c:1168
#, c-format
msgid "depth %s is not a positive number"
msgstr "глубина %s не является положительным числом"
-#: builtin/clone.c:810
+#: builtin/clone.c:878
#, c-format
msgid "destination path '%s' already exists and is not an empty directory."
msgstr "целевой путь «%s» уже существует и не является пустым каталогом."
-#: builtin/clone.c:820
+#: builtin/clone.c:888
#, c-format
msgid "working tree '%s' already exists."
msgstr "рабочий каталог «%s» уже существует."
-#: builtin/clone.c:835 builtin/clone.c:846 builtin/worktree.c:193
-#: builtin/worktree.c:220
+#: builtin/clone.c:903 builtin/clone.c:914 builtin/worktree.c:218
+#: builtin/worktree.c:245
#, c-format
msgid "could not create leading directories of '%s'"
msgstr "не удалось создать родительские каталоги для «%s»"
-#: builtin/clone.c:838
+#: builtin/clone.c:906
#, c-format
msgid "could not create work tree dir '%s'"
msgstr "не удалось создать рабочий каталог «%s»"
-#: builtin/clone.c:856
+#: builtin/clone.c:924
#, c-format
msgid "Cloning into bare repository '%s'...\n"
msgstr "Клонирование в голый репозиторий «%s»…\n"
-#: builtin/clone.c:858
+#: builtin/clone.c:926
#, c-format
msgid "Cloning into '%s'...\n"
msgstr "Клонирование в «%s»…\n"
-#: builtin/clone.c:883
+#: builtin/clone.c:951
msgid "--dissociate given, but there is no --reference"
msgstr "передана опция --dissociate, но не передана --reference"
-#: builtin/clone.c:900
+#: builtin/clone.c:968
msgid "--depth is ignored in local clones; use file:// instead."
msgstr "--depth игнорируется на локальных клонах; вместо этого используйте file://."
-#: builtin/clone.c:903
+#: builtin/clone.c:971
msgid "source repository is shallow, ignoring --local"
msgstr "исходный репозиторий является частичным, --local игнорируется"
-#: builtin/clone.c:908
+#: builtin/clone.c:976
msgid "--local is ignored"
msgstr "--local игнорируется"
-#: builtin/clone.c:912
+#: builtin/clone.c:980
#, c-format
msgid "Don't know how to clone %s"
msgstr "Не знаю как клонировать %s"
-#: builtin/clone.c:961 builtin/clone.c:969
+#: builtin/clone.c:1029 builtin/clone.c:1037
#, c-format
msgid "Remote branch %s not found in upstream %s"
msgstr "Внешняя ветка %s не найдена в вышестоящем репозитории %s"
-#: builtin/clone.c:972
+#: builtin/clone.c:1040
msgid "You appear to have cloned an empty repository."
msgstr "Похоже, что вы клонировали пустой репозиторий."
@@ -4196,108 +4664,99 @@ msgstr "Если вы хотите пропустит этот коммит, и
msgid "failed to unpack HEAD tree object"
msgstr "сбой распаковки объекта дерева HEAD"
-#: builtin/commit.c:344
+#: builtin/commit.c:345
msgid "unable to create temporary index"
msgstr "не удалось создать временный индекс"
-#: builtin/commit.c:350
+#: builtin/commit.c:351
msgid "interactive add failed"
msgstr "сбой интерактивного добавления"
-#: builtin/commit.c:361
-msgid "unable to write index file"
-msgstr "не удалось записать индекс"
-
-#: builtin/commit.c:363
+#: builtin/commit.c:364
msgid "unable to update temporary index"
msgstr "не удалось обновить временный индекс"
-#: builtin/commit.c:365
+#: builtin/commit.c:366
msgid "Failed to update main cache tree"
msgstr "Сбой при обновлении основного кэша дерева"
-#: builtin/commit.c:389 builtin/commit.c:414 builtin/commit.c:463
+#: builtin/commit.c:390 builtin/commit.c:413 builtin/commit.c:462
msgid "unable to write new_index file"
msgstr "не удалось записать файл new_index"
-#: builtin/commit.c:445
+#: builtin/commit.c:444
msgid "cannot do a partial commit during a merge."
msgstr "нельзя создать частичный коммит во время слияния."
-#: builtin/commit.c:447
+#: builtin/commit.c:446
msgid "cannot do a partial commit during a cherry-pick."
msgstr "нельзя создать частичный коммит во время отбора лучшего коммита."
-#: builtin/commit.c:456
+#: builtin/commit.c:455
msgid "cannot read the index"
msgstr "не удалось прочитать индекс"
-#: builtin/commit.c:475
+#: builtin/commit.c:474
msgid "unable to write temporary index file"
msgstr "не удалось записать временный файл индекса"
-#: builtin/commit.c:580
+#: builtin/commit.c:579
#, c-format
msgid "commit '%s' lacks author header"
msgstr "у коммита «%s» отсутствует автор в заголовке"
-#: builtin/commit.c:582
+#: builtin/commit.c:581
#, c-format
msgid "commit '%s' has malformed author line"
msgstr "у коммита «%s» автор в неверном формате"
-#: builtin/commit.c:601
+#: builtin/commit.c:600
msgid "malformed --author parameter"
msgstr "параметр --author в неверном формате"
-#: builtin/commit.c:609
+#: builtin/commit.c:608
#, c-format
msgid "invalid date format: %s"
msgstr "неправильный формат даты: %s"
-#: builtin/commit.c:653
+#: builtin/commit.c:652
msgid ""
"unable to select a comment character that is not used\n"
"in the current commit message"
msgstr "нельзя выбрать символ комментария, который\nне используется в текущем сообщении коммита"
-#: builtin/commit.c:690 builtin/commit.c:723 builtin/commit.c:1080
+#: builtin/commit.c:689 builtin/commit.c:722 builtin/commit.c:1079
#, c-format
msgid "could not lookup commit %s"
msgstr "не удалось запросить коммит %s"
-#: builtin/commit.c:702 builtin/shortlog.c:273
+#: builtin/commit.c:701 builtin/shortlog.c:273
#, c-format
msgid "(reading log message from standard input)\n"
msgstr "(чтение файла журнала из стандартного ввода)\n"
-#: builtin/commit.c:704
+#: builtin/commit.c:703
msgid "could not read log from standard input"
msgstr "не удалось прочитать файл журнала из стандартного ввода"
-#: builtin/commit.c:708
+#: builtin/commit.c:707
#, c-format
msgid "could not read log file '%s'"
msgstr "не удалось прочитать файл журнала «%s»"
-#: builtin/commit.c:730
+#: builtin/commit.c:729
msgid "could not read MERGE_MSG"
msgstr "не удалось прочитать MERGE_MSG"
-#: builtin/commit.c:734
+#: builtin/commit.c:733
msgid "could not read SQUASH_MSG"
msgstr "не удалось прочитать SQUASH_MSG"
-#: builtin/commit.c:738 builtin/merge.c:1079
-#, c-format
-msgid "could not read '%s'"
-msgstr "не удалось прочитать «%s»"
-
-#: builtin/commit.c:785
+#: builtin/commit.c:784
msgid "could not write commit template"
msgstr "не удалось записать шаблон описания коммита"
-#: builtin/commit.c:803
+#: builtin/commit.c:802
#, c-format
msgid ""
"\n"
@@ -4307,7 +4766,7 @@ msgid ""
"and try again.\n"
msgstr "\nПохоже, что вы пытаетесь закоммитить слияние.\nЕсли это ошибка, пожалуйста удалите файл\n\t%s\nи попробуйте снова.\n"
-#: builtin/commit.c:808
+#: builtin/commit.c:807
#, c-format
msgid ""
"\n"
@@ -4317,14 +4776,14 @@ msgid ""
"and try again.\n"
msgstr "\nПохоже, что вы пытаетесь закоммитить отбор лучшего.\nЕсли это ошибка, пожалуйста удалите файл\n\t%s\nи попробуйте снова.\n"
-#: builtin/commit.c:821
+#: builtin/commit.c:820
#, c-format
msgid ""
"Please enter the commit message for your changes. Lines starting\n"
"with '%c' will be ignored, and an empty message aborts the commit.\n"
msgstr "Пожалуйста, введите сообщение коммита для ваших изменений. Строки,\nначинающиеся с «%c» будут проигнорированы, а пустое сообщение\nотменяет процесс коммита.\n"
-#: builtin/commit.c:828
+#: builtin/commit.c:827
#, c-format
msgid ""
"Please enter the commit message for your changes. Lines starting\n"
@@ -4332,348 +4791,335 @@ msgid ""
"An empty message aborts the commit.\n"
msgstr "Пожалуйста, введите сообщение коммита для ваших изменений. Строки,\nначинающиеся с «%c» будут оставлены; вы можете удалить их вручную,\nесли хотите. Пустое сообщение отменяет процесс коммита.\n"
-#: builtin/commit.c:848
+#: builtin/commit.c:847
#, c-format
msgid "%sAuthor: %.*s <%.*s>"
msgstr "%sАвтор: %.*s <%.*s>"
-#: builtin/commit.c:856
+#: builtin/commit.c:855
#, c-format
msgid "%sDate: %s"
msgstr "%sДата: %s"
-#: builtin/commit.c:863
+#: builtin/commit.c:862
#, c-format
msgid "%sCommitter: %.*s <%.*s>"
msgstr "%sКоммитер: %.*s <%.*s>"
-#: builtin/commit.c:881
+#: builtin/commit.c:880
msgid "Cannot read index"
msgstr "Не удалось прочитать индекс"
-#: builtin/commit.c:938
+#: builtin/commit.c:937
msgid "Error building trees"
msgstr "Ошибка при построении деревьев"
-#: builtin/commit.c:953 builtin/tag.c:495
+#: builtin/commit.c:952 builtin/tag.c:495
#, c-format
msgid "Please supply the message using either -m or -F option.\n"
msgstr "Пожалуйста, укажите сообщение, при указании опций -m или -F.\n"
-#: builtin/commit.c:1055
+#: builtin/commit.c:1054
#, c-format
msgid "--author '%s' is not 'Name <email>' and matches no existing author"
msgstr "--author «%s» не в формате «Имя <почта>» и не совпадает с существующим автором"
-#: builtin/commit.c:1070 builtin/commit.c:1310
+#: builtin/commit.c:1069 builtin/commit.c:1309
#, c-format
msgid "Invalid untracked files mode '%s'"
msgstr "Неправильный режим неотслеживаемых файлов «%s»"
-#: builtin/commit.c:1107
+#: builtin/commit.c:1106
msgid "--long and -z are incompatible"
msgstr "--long и -z нельзя использовать одновременно"
-#: builtin/commit.c:1137
+#: builtin/commit.c:1136
msgid "Using both --reset-author and --author does not make sense"
msgstr "Указание одновременно опций --reset-author и --author не имеет смысла"
-#: builtin/commit.c:1146
+#: builtin/commit.c:1145
msgid "You have nothing to amend."
msgstr "Нечего исправлять."
-#: builtin/commit.c:1149
+#: builtin/commit.c:1148
msgid "You are in the middle of a merge -- cannot amend."
msgstr "Вы в процессе слияния — сейчас нельзя исправлять."
-#: builtin/commit.c:1151
+#: builtin/commit.c:1150
msgid "You are in the middle of a cherry-pick -- cannot amend."
msgstr "Вы в процессе отбора лучшего — сейчас нельзя исправлять."
-#: builtin/commit.c:1154
+#: builtin/commit.c:1153
msgid "Options --squash and --fixup cannot be used together"
msgstr "Опции --squash и --fixup не могут использоваться одновременно"
-#: builtin/commit.c:1164
+#: builtin/commit.c:1163
msgid "Only one of -c/-C/-F/--fixup can be used."
msgstr "Может использоваться только одна из опций -c/-C/-F/--fixup."
-#: builtin/commit.c:1166
+#: builtin/commit.c:1165
msgid "Option -m cannot be combined with -c/-C/-F/--fixup."
msgstr "Опция -m не может использоваться с -c/-C/-F/--fixup."
-#: builtin/commit.c:1174
+#: builtin/commit.c:1173
msgid "--reset-author can be used only with -C, -c or --amend."
msgstr "--reset-author может использоваться только одновременно с опциями -C, -c или --amend."
-#: builtin/commit.c:1191
+#: builtin/commit.c:1190
msgid "Only one of --include/--only/--all/--interactive/--patch can be used."
msgstr "Может использоваться только одна из опций --include/--only/--all/--interactive/--patch."
-#: builtin/commit.c:1193
+#: builtin/commit.c:1192
msgid "No paths with --include/--only does not make sense."
msgstr "Указание путей каталогов с опциями --include/--only не имеет смысла."
-#: builtin/commit.c:1195
+#: builtin/commit.c:1194
msgid "Clever... amending the last one with dirty index."
msgstr "Умно… отмена последнего с измененным индексом."
-#: builtin/commit.c:1197
+#: builtin/commit.c:1196
msgid "Explicit paths specified without -i or -o; assuming --only paths..."
msgstr "Пути явно указаны пути без опций -i или -o; предполагаю опцию --only…"
-#: builtin/commit.c:1209 builtin/tag.c:728
+#: builtin/commit.c:1208 builtin/tag.c:730
#, c-format
msgid "Invalid cleanup mode %s"
msgstr "Неправильное значение режима очистки %s"
-#: builtin/commit.c:1214
+#: builtin/commit.c:1213
msgid "Paths with -a does not make sense."
msgstr "С опцией -a указание пути не имеет смысла."
-#: builtin/commit.c:1324 builtin/commit.c:1603
+#: builtin/commit.c:1323 builtin/commit.c:1602
msgid "show status concisely"
msgstr "кратко показать статус"
-#: builtin/commit.c:1326 builtin/commit.c:1605
+#: builtin/commit.c:1325 builtin/commit.c:1604
msgid "show branch information"
msgstr "показать информацию о версии"
-#: builtin/commit.c:1328 builtin/commit.c:1607 builtin/push.c:509
+#: builtin/commit.c:1327 builtin/commit.c:1606 builtin/push.c:546
msgid "machine-readable output"
msgstr "машиночитаемый вывод"
-#: builtin/commit.c:1331 builtin/commit.c:1609
+#: builtin/commit.c:1330 builtin/commit.c:1608
msgid "show status in long format (default)"
msgstr "показать статус в длинном формате (по умолчанию)"
-#: builtin/commit.c:1334 builtin/commit.c:1612
+#: builtin/commit.c:1333 builtin/commit.c:1611
msgid "terminate entries with NUL"
msgstr "завершать записи НУЛЕВЫМ байтом"
-#: builtin/commit.c:1336 builtin/commit.c:1615 builtin/fast-export.c:980
-#: builtin/fast-export.c:983 builtin/tag.c:603
+#: builtin/commit.c:1335 builtin/commit.c:1614 builtin/fast-export.c:981
+#: builtin/fast-export.c:984 builtin/tag.c:604
msgid "mode"
msgstr "режим"
-#: builtin/commit.c:1337 builtin/commit.c:1615
+#: builtin/commit.c:1336 builtin/commit.c:1614
msgid "show untracked files, optional modes: all, normal, no. (Default: all)"
msgstr "показать неотслеживаемые файлы, опциональные режимы: all (все), normal (как обычно), no (нет). (По умолчанию: all)"
-#: builtin/commit.c:1340
+#: builtin/commit.c:1339
msgid "show ignored files"
msgstr "показать игнорируемые файлы"
-#: builtin/commit.c:1341 parse-options.h:152
+#: builtin/commit.c:1340 parse-options.h:155
msgid "when"
msgstr "когда"
-#: builtin/commit.c:1342
+#: builtin/commit.c:1341
msgid ""
"ignore changes to submodules, optional when: all, dirty, untracked. "
"(Default: all)"
msgstr "игнорировать изменения в подмодулях, опционально когда: all (всегда), dirty (измененные), untracked (неотслеживаемые). (По умолчанию: all)"
-#: builtin/commit.c:1344
+#: builtin/commit.c:1343
msgid "list untracked files in columns"
msgstr "показать неотслеживаемые файлы по столбцам"
-#: builtin/commit.c:1430
+#: builtin/commit.c:1429
msgid "couldn't look up newly created commit"
msgstr "нельзя запросить новосозданный коммит"
-#: builtin/commit.c:1432
+#: builtin/commit.c:1431
msgid "could not parse newly created commit"
msgstr "нельзя разобрать новосозданный коммит"
-#: builtin/commit.c:1477
+#: builtin/commit.c:1476
msgid "detached HEAD"
msgstr "отделенный HEAD"
-#: builtin/commit.c:1480
+#: builtin/commit.c:1479
msgid " (root-commit)"
msgstr " (корневой коммит)"
-#: builtin/commit.c:1573
+#: builtin/commit.c:1572
msgid "suppress summary after successful commit"
msgstr "не выводить сводку после успешного коммита"
-#: builtin/commit.c:1574
+#: builtin/commit.c:1573
msgid "show diff in commit message template"
msgstr "добавить список изменений в шаблон сообщения коммита"
-#: builtin/commit.c:1576
+#: builtin/commit.c:1575
msgid "Commit message options"
msgstr "Опции сообщения коммита"
-#: builtin/commit.c:1577 builtin/tag.c:601
+#: builtin/commit.c:1576 builtin/tag.c:602
msgid "read message from file"
msgstr "прочитать сообщение из файла"
-#: builtin/commit.c:1578
+#: builtin/commit.c:1577
msgid "author"
msgstr "автор"
-#: builtin/commit.c:1578
+#: builtin/commit.c:1577
msgid "override author for commit"
msgstr "подменить автора коммита"
-#: builtin/commit.c:1579 builtin/gc.c:280
+#: builtin/commit.c:1578 builtin/gc.c:268
msgid "date"
msgstr "дата"
-#: builtin/commit.c:1579
+#: builtin/commit.c:1578
msgid "override date for commit"
msgstr "подменить дату коммита"
-#: builtin/commit.c:1580 builtin/merge.c:218 builtin/notes.c:391
-#: builtin/notes.c:554 builtin/tag.c:599
+#: builtin/commit.c:1579 builtin/merge.c:218 builtin/notes.c:392
+#: builtin/notes.c:555 builtin/tag.c:600
msgid "message"
msgstr "сообщение"
-#: builtin/commit.c:1580
+#: builtin/commit.c:1579
msgid "commit message"
msgstr "сообщение коммита"
-#: builtin/commit.c:1581
+#: builtin/commit.c:1580
msgid "reuse and edit message from specified commit"
msgstr "использовать и отредактировать сообщение от указанного коммита"
-#: builtin/commit.c:1582
+#: builtin/commit.c:1581
msgid "reuse message from specified commit"
msgstr "использовать сообщение указанного коммита"
-#: builtin/commit.c:1583
+#: builtin/commit.c:1582
msgid "use autosquash formatted message to fixup specified commit"
msgstr "использовать форматированное сообщение автоуплотнения для исправления указанного коммита"
-#: builtin/commit.c:1584
+#: builtin/commit.c:1583
msgid "use autosquash formatted message to squash specified commit"
msgstr "использовать форматированное сообщение автоуплотнения для уплотнения указанного коммита"
-#: builtin/commit.c:1585
+#: builtin/commit.c:1584
msgid "the commit is authored by me now (used with -C/-c/--amend)"
msgstr "коммит теперь за моим авторством (с использованием -C/-c/--amend)"
-#: builtin/commit.c:1586 builtin/log.c:1191 builtin/revert.c:86
+#: builtin/commit.c:1585 builtin/log.c:1216 builtin/revert.c:86
msgid "add Signed-off-by:"
msgstr "добавить Signed-off-by:"
-#: builtin/commit.c:1587
+#: builtin/commit.c:1586
msgid "use specified template file"
msgstr "использовать указанный файл шаблона"
-#: builtin/commit.c:1588
+#: builtin/commit.c:1587
msgid "force edit of commit"
msgstr "принудительно редактировать коммит"
-#: builtin/commit.c:1589
+#: builtin/commit.c:1588
msgid "default"
msgstr "по-умолчанию"
-#: builtin/commit.c:1589 builtin/tag.c:604
+#: builtin/commit.c:1588 builtin/tag.c:605
msgid "how to strip spaces and #comments from message"
msgstr "как удалять пробелы и #комментарии из сообщения коммита"
-#: builtin/commit.c:1590
+#: builtin/commit.c:1589
msgid "include status in commit message template"
msgstr "включить статус файлов в шаблон сообщения коммита"
-#: builtin/commit.c:1591 builtin/merge.c:225 builtin/revert.c:92
-#: builtin/tag.c:605
-msgid "key-id"
-msgstr "key-id"
-
-#: builtin/commit.c:1592 builtin/merge.c:226 builtin/revert.c:93
+#: builtin/commit.c:1591 builtin/merge.c:226 builtin/pull.c:156
+#: builtin/revert.c:93
msgid "GPG sign commit"
msgstr "подписать коммит с помощью GPG"
-#: builtin/commit.c:1595
+#: builtin/commit.c:1594
msgid "Commit contents options"
msgstr "Опции содержимого коммита"
-#: builtin/commit.c:1596
+#: builtin/commit.c:1595
msgid "commit all changed files"
msgstr "закоммитить все измененные файлы"
-#: builtin/commit.c:1597
+#: builtin/commit.c:1596
msgid "add specified files to index for commit"
msgstr "добавить указанные файлы в индекс для коммита"
-#: builtin/commit.c:1598
+#: builtin/commit.c:1597
msgid "interactively add files"
msgstr "интерактивное добавление файлов"
-#: builtin/commit.c:1599
+#: builtin/commit.c:1598
msgid "interactively add changes"
msgstr "интерактивное добавление изменений"
-#: builtin/commit.c:1600
+#: builtin/commit.c:1599
msgid "commit only specified files"
msgstr "закоммитить только указанные файлы"
-#: builtin/commit.c:1601
+#: builtin/commit.c:1600
msgid "bypass pre-commit hook"
msgstr "пропустить перехватчик перед-коммитом"
-#: builtin/commit.c:1602
+#: builtin/commit.c:1601
msgid "show what would be committed"
msgstr "показать, что будет закоммичено"
-#: builtin/commit.c:1613
+#: builtin/commit.c:1612
msgid "amend previous commit"
msgstr "исправить предыдущий коммит"
-#: builtin/commit.c:1614
+#: builtin/commit.c:1613
msgid "bypass post-rewrite hook"
msgstr "пропустить перехватчик после-перезаписи"
-#: builtin/commit.c:1619
+#: builtin/commit.c:1618
msgid "ok to record an empty change"
msgstr "разрешить запись пустого коммита"
-#: builtin/commit.c:1621
+#: builtin/commit.c:1620
msgid "ok to record a change with an empty message"
msgstr "разрешить запись изменений с пустым сообщением"
-#: builtin/commit.c:1650
+#: builtin/commit.c:1649
msgid "could not parse HEAD commit"
msgstr "не удалось разобрать HEAD коммит"
-#: builtin/commit.c:1689 builtin/merge.c:1076
-#, c-format
-msgid "could not open '%s' for reading"
-msgstr "не удалось открыть «%s» для чтения"
-
-#: builtin/commit.c:1696
+#: builtin/commit.c:1695
#, c-format
msgid "Corrupt MERGE_HEAD file (%s)"
msgstr "Файл MERGE_HEAD поврежден (%s)"
-#: builtin/commit.c:1703
+#: builtin/commit.c:1702
msgid "could not read MERGE_MODE"
msgstr "не удалось прочитать MERGE_MODE"
-#: builtin/commit.c:1722
+#: builtin/commit.c:1721
#, c-format
msgid "could not read commit message: %s"
msgstr "не удалось открыть сообщение коммита: %s"
-#: builtin/commit.c:1733
+#: builtin/commit.c:1732
#, c-format
msgid "Aborting commit; you did not edit the message.\n"
msgstr "Отмена коммита; вы не изменили сообщение.\n"
-#: builtin/commit.c:1738
+#: builtin/commit.c:1737
#, c-format
msgid "Aborting commit due to empty commit message.\n"
msgstr "Отмена коммита из-за пустого сообщения коммита.\n"
-#: builtin/commit.c:1753 builtin/merge.c:829 builtin/merge.c:854
-msgid "failed to write commit object"
-msgstr "сбой записи объекта коммита"
-
-#: builtin/commit.c:1786
+#: builtin/commit.c:1785
msgid ""
"Repository has been updated, but unable to write\n"
"new_index file. Check that disk is not full and quota is\n"
@@ -4684,131 +5130,135 @@ msgstr "Репозиторий был обновлен, но не удалось
msgid "git config [<options>]"
msgstr "git config [<опции>]"
-#: builtin/config.c:53
+#: builtin/config.c:54
msgid "Config file location"
msgstr "Размещение файла конфигурации"
-#: builtin/config.c:54
+#: builtin/config.c:55
msgid "use global config file"
msgstr "использовать глобальный файл конфигурации"
-#: builtin/config.c:55
+#: builtin/config.c:56
msgid "use system config file"
msgstr "использовать системный файл конфигурации"
-#: builtin/config.c:56
+#: builtin/config.c:57
msgid "use repository config file"
msgstr "использовать файл конфигурации репозитория"
-#: builtin/config.c:57
+#: builtin/config.c:58
msgid "use given config file"
msgstr "использовать указанный файл конфигурации"
-#: builtin/config.c:58
+#: builtin/config.c:59
msgid "blob-id"
msgstr "идент-двоичн-объекта"
-#: builtin/config.c:58
+#: builtin/config.c:59
msgid "read config from given blob object"
msgstr "прочитать настройки из указанного двоичного объекта"
-#: builtin/config.c:59
+#: builtin/config.c:60
msgid "Action"
msgstr "Действие"
-#: builtin/config.c:60
+#: builtin/config.c:61
msgid "get value: name [value-regex]"
msgstr "получить значение: имя [шаблон-значений]"
-#: builtin/config.c:61
+#: builtin/config.c:62
msgid "get all values: key [value-regex]"
msgstr "получить все значения: ключ [шаблон-значений]"
-#: builtin/config.c:62
+#: builtin/config.c:63
msgid "get values for regexp: name-regex [value-regex]"
msgstr "получить значения по шаблону: шаблон-имен [шаблон-значений]"
-#: builtin/config.c:63
+#: builtin/config.c:64
msgid "get value specific for the URL: section[.var] URL"
msgstr "получить значение, специфичное для URL: раздел[.переменная] URL"
-#: builtin/config.c:64
+#: builtin/config.c:65
msgid "replace all matching variables: name value [value_regex]"
msgstr "заменить все соответствующие переменные: имя значение [шаблон-значений]"
-#: builtin/config.c:65
+#: builtin/config.c:66
msgid "add a new variable: name value"
msgstr "добавить новую переменную: имя значение"
-#: builtin/config.c:66
+#: builtin/config.c:67
msgid "remove a variable: name [value-regex]"
msgstr "удалить переменную: имя [шаблон-значений]"
-#: builtin/config.c:67
+#: builtin/config.c:68
msgid "remove all matches: name [value-regex]"
msgstr "удалить все совпадающие: имя [шаблон-значений]"
-#: builtin/config.c:68
+#: builtin/config.c:69
msgid "rename section: old-name new-name"
msgstr "переименовать раздел: старое-имя новое-имя"
-#: builtin/config.c:69
+#: builtin/config.c:70
msgid "remove a section: name"
msgstr "удалить раздел: имя"
-#: builtin/config.c:70
+#: builtin/config.c:71
msgid "list all"
msgstr "показать весь список"
-#: builtin/config.c:71
+#: builtin/config.c:72
msgid "open an editor"
msgstr "открыть в редакторе"
-#: builtin/config.c:72
+#: builtin/config.c:73
msgid "find the color configured: slot [default]"
msgstr "найти настроенный цвет: раздел [по-умолчанию]"
-#: builtin/config.c:73
+#: builtin/config.c:74
msgid "find the color setting: slot [stdout-is-tty]"
msgstr "проверить, существует ли настроенный цвет: раздел [stdout-есть-tty]"
-#: builtin/config.c:74
+#: builtin/config.c:75
msgid "Type"
msgstr "Тип"
-#: builtin/config.c:75
+#: builtin/config.c:76
msgid "value is \"true\" or \"false\""
msgstr "значение — это «true» (правда) или «false» (ложь)"
-#: builtin/config.c:76
+#: builtin/config.c:77
msgid "value is decimal number"
msgstr "значение — это десятичное число"
-#: builtin/config.c:77
+#: builtin/config.c:78
msgid "value is --bool or --int"
msgstr "значение — это --bool или --int"
-#: builtin/config.c:78
+#: builtin/config.c:79
msgid "value is a path (file or directory name)"
msgstr "значение — это путь (к файлу или каталогу)"
-#: builtin/config.c:79
+#: builtin/config.c:80
msgid "Other"
msgstr "Другое"
-#: builtin/config.c:80
+#: builtin/config.c:81
msgid "terminate values with NUL byte"
msgstr "завершать значения НУЛЕВЫМ байтом"
-#: builtin/config.c:81
+#: builtin/config.c:82
+msgid "show variable names only"
+msgstr "показывать только имена переменных"
+
+#: builtin/config.c:83
msgid "respect include directives on lookup"
msgstr "учитывать директивы include (включения файлов) при запросе"
-#: builtin/config.c:316
+#: builtin/config.c:311
msgid "unable to parse default color value"
msgstr "не удалось разобрать значение цвета по умолчанию"
-#: builtin/config.c:457
+#: builtin/config.c:449
#, c-format
msgid ""
"# This is Git's per-user configuration file.\n"
@@ -4818,7 +5268,7 @@ msgid ""
"#\temail = %s\n"
msgstr "# Это файл конфигурации пользователя Git.\n[user]\n# Пожалуйста, адаптируйте и раскомментируйте следующие строки:\n#\tuser = %s\n#\temail = %s\n"
-#: builtin/config.c:587
+#: builtin/config.c:583
#, c-format
msgid "cannot create configuration file %s"
msgstr "не удалось создать файл конфигурации %s"
@@ -4854,7 +5304,7 @@ msgstr "аннотированная метка %s не содержит вст
msgid "tag '%s' is really '%s' here"
msgstr "метка «%s» уже здесь «%s»"
-#: builtin/describe.c:250 builtin/log.c:452
+#: builtin/describe.c:250 builtin/log.c:459
#, c-format
msgid "Not a valid object name %s"
msgstr "Недействительное имя объекта %s"
@@ -4994,502 +5444,491 @@ msgstr "передано больше двух двоичных объектов
msgid "unhandled object '%s' given."
msgstr "передан необработанный объект «%s»."
-#: builtin/fast-export.c:24
+#: builtin/fast-export.c:25
msgid "git fast-export [rev-list-opts]"
msgstr "git fast-export [опции-rev-list]"
-#: builtin/fast-export.c:979
+#: builtin/fast-export.c:980
msgid "show progress after <n> objects"
msgstr "показать прогресс после <n> объектов"
-#: builtin/fast-export.c:981
+#: builtin/fast-export.c:982
msgid "select handling of signed tags"
msgstr "выбор обработки подписанных меток"
-#: builtin/fast-export.c:984
+#: builtin/fast-export.c:985
msgid "select handling of tags that tag filtered objects"
msgstr "выбор обработки меток, которыми помечены отфильтрованные объекты"
-#: builtin/fast-export.c:987
+#: builtin/fast-export.c:988
msgid "Dump marks to this file"
msgstr "Записать пометки в этот файл"
-#: builtin/fast-export.c:989
+#: builtin/fast-export.c:990
msgid "Import marks from this file"
msgstr "Импортировать пометки из этого файла"
-#: builtin/fast-export.c:991
+#: builtin/fast-export.c:992
msgid "Fake a tagger when tags lack one"
msgstr "Подделать автора метки, если у метки он отсутствует"
-#: builtin/fast-export.c:993
+#: builtin/fast-export.c:994
msgid "Output full tree for each commit"
msgstr "Вывести полное дерево для каждого коммита"
-#: builtin/fast-export.c:995
+#: builtin/fast-export.c:996
msgid "Use the done feature to terminate the stream"
msgstr "Использовать пометку завершения в конце потока"
-#: builtin/fast-export.c:996
+#: builtin/fast-export.c:997
msgid "Skip output of blob data"
msgstr "Пропустить вывод данных двоичных объектов"
-#: builtin/fast-export.c:997
+#: builtin/fast-export.c:998
msgid "refspec"
msgstr "спецификация ссылки"
-#: builtin/fast-export.c:998
+#: builtin/fast-export.c:999
msgid "Apply refspec to exported refs"
msgstr "Применить спецификацию ссылки к экспортируемым ссылкам"
-#: builtin/fast-export.c:999
+#: builtin/fast-export.c:1000
msgid "anonymize output"
msgstr "сделать вывод анонимным"
-#: builtin/fetch.c:19
+#: builtin/fetch.c:20
msgid "git fetch [<options>] [<repository> [<refspec>...]]"
msgstr "git fetch [<опции>] [<репозиторий> [<спецификация-ссылки>…]]"
-#: builtin/fetch.c:20
+#: builtin/fetch.c:21
msgid "git fetch [<options>] <group>"
msgstr "git fetch [<опции>] <группа>"
-#: builtin/fetch.c:21
+#: builtin/fetch.c:22
msgid "git fetch --multiple [<options>] [(<repository> | <group>)...]"
msgstr "git fetch --multiple [<опции>] [(<репозиторий> | <группа>)…]"
-#: builtin/fetch.c:22
+#: builtin/fetch.c:23
msgid "git fetch --all [<options>]"
msgstr "git fetch --all [<опции>]"
-#: builtin/fetch.c:89
+#: builtin/fetch.c:90 builtin/pull.c:162
msgid "fetch from all remotes"
msgstr "извлечь со всех внешних репозиториев"
-#: builtin/fetch.c:91
+#: builtin/fetch.c:92 builtin/pull.c:165
msgid "append to .git/FETCH_HEAD instead of overwriting"
msgstr "дописать к .git/FETCH_HEAD вместо перезаписи"
-#: builtin/fetch.c:93
+#: builtin/fetch.c:94 builtin/pull.c:168
msgid "path to upload pack on remote end"
msgstr "путь к программе упаковки пакета на машине с внешним репозиторием"
-#: builtin/fetch.c:94
+#: builtin/fetch.c:95 builtin/pull.c:170
msgid "force overwrite of local branch"
msgstr "принудительная перезапись локальной ветки"
-#: builtin/fetch.c:96
+#: builtin/fetch.c:97
msgid "fetch from multiple remotes"
msgstr "извлечь с нескольких внешних репозиториев"
-#: builtin/fetch.c:98
+#: builtin/fetch.c:99 builtin/pull.c:172
msgid "fetch all tags and associated objects"
msgstr "извлечь все метки и связанные объекты"
-#: builtin/fetch.c:100
+#: builtin/fetch.c:101
msgid "do not fetch all tags (--no-tags)"
msgstr "не извлекать все метки (--no-tags)"
-#: builtin/fetch.c:102
+#: builtin/fetch.c:103 builtin/pull.c:175
msgid "prune remote-tracking branches no longer on remote"
msgstr "почистить отслеживаемые внешние ветки, которых уже нет на внешнем репозитории"
-#: builtin/fetch.c:103
+#: builtin/fetch.c:104 builtin/pull.c:178
msgid "on-demand"
msgstr "по требованию"
-#: builtin/fetch.c:104
+#: builtin/fetch.c:105 builtin/pull.c:179
msgid "control recursive fetching of submodules"
msgstr "управление рекурсивным извлечением подмодулей"
-#: builtin/fetch.c:108
+#: builtin/fetch.c:109 builtin/pull.c:184
msgid "keep downloaded pack"
msgstr "оставить загруженный пакет данных"
-#: builtin/fetch.c:110
+#: builtin/fetch.c:111
msgid "allow updating of HEAD ref"
msgstr "разрешить обновление ссылки HEAD"
-#: builtin/fetch.c:113
+#: builtin/fetch.c:114 builtin/pull.c:187
msgid "deepen history of shallow clone"
msgstr "глубокая история частичного клона"
-#: builtin/fetch.c:115
+#: builtin/fetch.c:116 builtin/pull.c:190
msgid "convert to a complete repository"
msgstr "преобразовать в полный репозиторий"
-#: builtin/fetch.c:117 builtin/log.c:1208
+#: builtin/fetch.c:118 builtin/log.c:1233
msgid "dir"
msgstr "каталог"
-#: builtin/fetch.c:118
+#: builtin/fetch.c:119
msgid "prepend this to submodule path output"
msgstr "присоединять это спереди к выводу путей подмодуля"
-#: builtin/fetch.c:121
+#: builtin/fetch.c:122
msgid "default mode for recursion"
msgstr "режим по умолчанию для рекурсии"
-#: builtin/fetch.c:123
+#: builtin/fetch.c:124 builtin/pull.c:193
msgid "accept refs that update .git/shallow"
msgstr "принимать ссылки, которые обновляют .git/shallow"
-#: builtin/fetch.c:124
+#: builtin/fetch.c:125 builtin/pull.c:195
msgid "refmap"
msgstr "соответствие-ссылок"
-#: builtin/fetch.c:125
+#: builtin/fetch.c:126 builtin/pull.c:196
msgid "specify fetch refmap"
msgstr "указать соответствие ссылок при извлечении"
-#: builtin/fetch.c:377
+#: builtin/fetch.c:378
msgid "Couldn't find remote ref HEAD"
msgstr "Не удалось найти ссылку HEAD на внешнем репозитории"
-#: builtin/fetch.c:457
+#: builtin/fetch.c:458
#, c-format
msgid "object %s not found"
msgstr "объект %s не найден"
-#: builtin/fetch.c:462
+#: builtin/fetch.c:463
msgid "[up to date]"
msgstr "[актуально]"
-#: builtin/fetch.c:476
+#: builtin/fetch.c:477
#, c-format
msgid "! %-*s %-*s -> %s (can't fetch in current branch)"
msgstr "! %-*s %-*s → %s (не удалось извлечь в текущую ветку)"
-#: builtin/fetch.c:477 builtin/fetch.c:563
+#: builtin/fetch.c:478 builtin/fetch.c:564
msgid "[rejected]"
msgstr "[отклонено]"
-#: builtin/fetch.c:488
+#: builtin/fetch.c:489
msgid "[tag update]"
msgstr "[обновление метки]"
-#: builtin/fetch.c:490 builtin/fetch.c:525 builtin/fetch.c:543
+#: builtin/fetch.c:491 builtin/fetch.c:526 builtin/fetch.c:544
msgid " (unable to update local ref)"
msgstr " (не удалось обновить локальную ссылку)"
-#: builtin/fetch.c:508
+#: builtin/fetch.c:509
msgid "[new tag]"
msgstr "[новая метка]"
-#: builtin/fetch.c:511
+#: builtin/fetch.c:512
msgid "[new branch]"
msgstr "[новая ветка]"
-#: builtin/fetch.c:514
+#: builtin/fetch.c:515
msgid "[new ref]"
msgstr "[новая ссылка]"
-#: builtin/fetch.c:559
+#: builtin/fetch.c:560
msgid "unable to update local ref"
msgstr "не удалось обновить локальную ссылку"
-#: builtin/fetch.c:559
+#: builtin/fetch.c:560
msgid "forced update"
msgstr "принудительное обновление"
-#: builtin/fetch.c:565
+#: builtin/fetch.c:566
msgid "(non-fast-forward)"
msgstr "(без перемотки вперед)"
-#: builtin/fetch.c:599 builtin/fetch.c:832
+#: builtin/fetch.c:600 builtin/fetch.c:842
#, c-format
msgid "cannot open %s: %s\n"
msgstr "не удалось открыть %s: %s\n"
-#: builtin/fetch.c:608
+#: builtin/fetch.c:609
#, c-format
msgid "%s did not send all necessary objects\n"
msgstr "%s не отправил все необходимые объекты\n"
-#: builtin/fetch.c:626
+#: builtin/fetch.c:627
#, c-format
msgid "reject %s because shallow roots are not allowed to be updated"
msgstr "%s отклонено из-за того, что частичные корни не разрешено обновлять"
-#: builtin/fetch.c:714 builtin/fetch.c:797
+#: builtin/fetch.c:715 builtin/fetch.c:807
#, c-format
msgid "From %.*s\n"
msgstr "Из %.*s\n"
-#: builtin/fetch.c:725
+#: builtin/fetch.c:726
#, c-format
msgid ""
"some local refs could not be updated; try running\n"
" 'git remote prune %s' to remove any old, conflicting branches"
msgstr "не удалось обновить некоторые локальные ссылки; попробуйте запустить «git remote prune %s», чтобы почистить старые, конфликтующие ветки"
-#: builtin/fetch.c:777
+#: builtin/fetch.c:778
#, c-format
msgid " (%s will become dangling)"
msgstr " (%s будет висящей веткой)"
-#: builtin/fetch.c:778
+#: builtin/fetch.c:779
#, c-format
msgid " (%s has become dangling)"
msgstr " (%s стала висящей веткой)"
-#: builtin/fetch.c:802
+#: builtin/fetch.c:811
msgid "[deleted]"
msgstr "[удалено]"
-#: builtin/fetch.c:803 builtin/remote.c:1057
+#: builtin/fetch.c:812 builtin/remote.c:1034
msgid "(none)"
msgstr "(нет)"
-#: builtin/fetch.c:822
+#: builtin/fetch.c:832
#, c-format
msgid "Refusing to fetch into current branch %s of non-bare repository"
msgstr "Отказ получения в текущую ветку %s не голого репозитория"
-#: builtin/fetch.c:841
+#: builtin/fetch.c:851
#, c-format
msgid "Option \"%s\" value \"%s\" is not valid for %s"
msgstr "Неправильное значение «%2$s» для параметра «%1$s» для %3$s"
-#: builtin/fetch.c:844
+#: builtin/fetch.c:854
#, c-format
msgid "Option \"%s\" is ignored for %s\n"
msgstr "Параметр «%s» игнорируется для %s\n"
-#: builtin/fetch.c:900
+#: builtin/fetch.c:910
#, c-format
msgid "Don't know how to fetch from %s"
msgstr "Не знаю как извлечь с %s"
-#: builtin/fetch.c:1063
+#: builtin/fetch.c:1071
#, c-format
msgid "Fetching %s\n"
msgstr "Извлечение из %s\n"
-#: builtin/fetch.c:1065 builtin/remote.c:90
+#: builtin/fetch.c:1073 builtin/remote.c:90
#, c-format
msgid "Could not fetch %s"
msgstr "Не удалось извлечь %s"
-#: builtin/fetch.c:1083
+#: builtin/fetch.c:1091
msgid ""
"No remote repository specified. Please, specify either a URL or a\n"
"remote name from which new revisions should be fetched."
msgstr "Не указан внешний репозиторий. Укажите URL или имя внешнего репозитория из которого должны извлекаться новые редакции."
-#: builtin/fetch.c:1106
+#: builtin/fetch.c:1114
msgid "You need to specify a tag name."
msgstr "Вам нужно указать имя метки."
-#: builtin/fetch.c:1148
+#: builtin/fetch.c:1156
msgid "--depth and --unshallow cannot be used together"
msgstr "нельзя использовать одновременно --depth и --unshallow"
-#: builtin/fetch.c:1150
+#: builtin/fetch.c:1158
msgid "--unshallow on a complete repository does not make sense"
msgstr "--unshallow не имеет смысла на полном репозитории"
-#: builtin/fetch.c:1173
+#: builtin/fetch.c:1181
msgid "fetch --all does not take a repository argument"
msgstr "fetch --all не принимает имя репозитория как аргумент"
-#: builtin/fetch.c:1175
+#: builtin/fetch.c:1183
msgid "fetch --all does not make sense with refspecs"
msgstr "fetch --all не имеет смысла при указании спецификаций ссылок"
-#: builtin/fetch.c:1186
+#: builtin/fetch.c:1194
#, c-format
msgid "No such remote or remote group: %s"
msgstr "Нет такого внешнего репозитория или группы: %s"
-#: builtin/fetch.c:1194
+#: builtin/fetch.c:1202
msgid "Fetching a group and specifying refspecs does not make sense"
msgstr "Получение группы и указание спецификаций ссылок не имеет смысла"
-#: builtin/fmt-merge-msg.c:13
+#: builtin/fmt-merge-msg.c:14
msgid ""
"git fmt-merge-msg [-m <message>] [--log[=<n>] | --no-log] [--file <file>]"
msgstr "git fmt-merge-msg [-m <сообщение>] [--log[=<n>] | --no-log] [--file <файл>]"
-#: builtin/fmt-merge-msg.c:668 builtin/fmt-merge-msg.c:671 builtin/grep.c:698
-#: builtin/merge.c:198 builtin/repack.c:178 builtin/repack.c:182
-#: builtin/show-branch.c:664 builtin/show-ref.c:180 builtin/tag.c:590
-#: parse-options.h:131 parse-options.h:238
-msgid "n"
-msgstr "n"
-
-#: builtin/fmt-merge-msg.c:669
+#: builtin/fmt-merge-msg.c:670
msgid "populate log with at most <n> entries from shortlog"
msgstr "отправить в журнал <n> записей из короткого журнала"
-#: builtin/fmt-merge-msg.c:672
+#: builtin/fmt-merge-msg.c:673
msgid "alias for --log (deprecated)"
msgstr "сокращение для --log (устаревшее)"
-#: builtin/fmt-merge-msg.c:675
+#: builtin/fmt-merge-msg.c:676
msgid "text"
msgstr "текст"
-#: builtin/fmt-merge-msg.c:676
+#: builtin/fmt-merge-msg.c:677
msgid "use <text> as start of message"
msgstr "использовать <текст> как начальное сообщение"
-#: builtin/fmt-merge-msg.c:677
+#: builtin/fmt-merge-msg.c:678
msgid "file to read from"
msgstr "файл для чтения"
-#: builtin/for-each-ref.c:687
-msgid "unable to parse format"
-msgstr "не удалось разобрать формат"
-
-#: builtin/for-each-ref.c:1083
+#: builtin/for-each-ref.c:9
msgid "git for-each-ref [<options>] [<pattern>]"
msgstr "git for-each-ref [<опции>] [<шаблон>]"
-#: builtin/for-each-ref.c:1098
+#: builtin/for-each-ref.c:24
msgid "quote placeholders suitably for shells"
msgstr "выводить указатели места заполнения в подходящем формате для командного процессора"
-#: builtin/for-each-ref.c:1100
+#: builtin/for-each-ref.c:26
msgid "quote placeholders suitably for perl"
msgstr "выводить указатели места заполнения в подходящем формате для perl"
-#: builtin/for-each-ref.c:1102
+#: builtin/for-each-ref.c:28
msgid "quote placeholders suitably for python"
msgstr "выводить указатели места заполнения в подходящем формате для python"
-#: builtin/for-each-ref.c:1104
+#: builtin/for-each-ref.c:30
msgid "quote placeholders suitably for Tcl"
msgstr "выводить указатели места заполнения в подходящем формате для Tcl"
-#: builtin/for-each-ref.c:1107
+#: builtin/for-each-ref.c:33
msgid "show only <n> matched refs"
msgstr "показать только <n> совпадающих ссылок"
-#: builtin/for-each-ref.c:1108 builtin/replace.c:438
-msgid "format"
-msgstr "формат"
-
-#: builtin/for-each-ref.c:1108
+#: builtin/for-each-ref.c:34
msgid "format to use for the output"
msgstr "использовать формат для вывода"
-#: builtin/for-each-ref.c:1109
+#: builtin/for-each-ref.c:35
msgid "key"
msgstr "ключ"
-#: builtin/for-each-ref.c:1110
+#: builtin/for-each-ref.c:36
msgid "field name to sort on"
msgstr "имя поля, по которому выполнить сортировку"
-#: builtin/fsck.c:147 builtin/prune.c:137
+#: builtin/fsck.c:163 builtin/prune.c:137
msgid "Checking connectivity"
msgstr "Проверка соединения"
-#: builtin/fsck.c:548
+#: builtin/fsck.c:568
msgid "Checking object directories"
msgstr "Проверка каталогов объектов"
-#: builtin/fsck.c:611
+#: builtin/fsck.c:631
msgid "git fsck [<options>] [<object>...]"
msgstr "git fsck [<опции>] [<объект>…]"
-#: builtin/fsck.c:617
+#: builtin/fsck.c:637
msgid "show unreachable objects"
msgstr "показать недоступные объекты"
-#: builtin/fsck.c:618
+#: builtin/fsck.c:638
msgid "show dangling objects"
msgstr "показать объекты, на которые нет ссылок"
-#: builtin/fsck.c:619
+#: builtin/fsck.c:639
msgid "report tags"
msgstr "вывести отчет по меткам"
-#: builtin/fsck.c:620
+#: builtin/fsck.c:640
msgid "report root nodes"
msgstr "вывести отчет по корневым узлам"
-#: builtin/fsck.c:621
+#: builtin/fsck.c:641
msgid "make index objects head nodes"
msgstr "воспринимать объекты в индексе как корневые узлы"
-#: builtin/fsck.c:622
+#: builtin/fsck.c:642
msgid "make reflogs head nodes (default)"
msgstr "создать корневые узлы журналов ссылок (по умолчанию)"
-#: builtin/fsck.c:623
+#: builtin/fsck.c:643
msgid "also consider packs and alternate objects"
msgstr "также проверять пакеты и альтернативные объекты"
-#: builtin/fsck.c:624
+#: builtin/fsck.c:644
+msgid "check only connectivity"
+msgstr "только проверить соединение"
+
+#: builtin/fsck.c:645
msgid "enable more strict checking"
msgstr "использовать более строгую проверку"
-#: builtin/fsck.c:626
+#: builtin/fsck.c:647
msgid "write dangling objects in .git/lost-found"
msgstr "записать объекты на которые нет ссылок в .git/lost-found"
-#: builtin/fsck.c:627 builtin/prune.c:107
+#: builtin/fsck.c:648 builtin/prune.c:107
msgid "show progress"
msgstr "показать прогресс выполнения"
-#: builtin/fsck.c:677
+#: builtin/fsck.c:707
msgid "Checking objects"
msgstr "Проверка объектов"
-#: builtin/gc.c:24
+#: builtin/gc.c:25
msgid "git gc [<options>]"
msgstr "git gc [<опции>]"
-#: builtin/gc.c:67
+#: builtin/gc.c:55
#, c-format
msgid "Invalid %s: '%s'"
msgstr "Недействительный %s: «%s»"
-#: builtin/gc.c:112
+#: builtin/gc.c:100
#, c-format
msgid "insanely long object directory %.*s"
msgstr "слишком длинный путь к каталогу объекта %.*s"
-#: builtin/gc.c:281
+#: builtin/gc.c:269
msgid "prune unreferenced objects"
msgstr "почистить объекты, на которые нет ссылок"
-#: builtin/gc.c:283
+#: builtin/gc.c:271
msgid "be more thorough (increased runtime)"
msgstr "проверять более внимательно (занимает больше времени)"
-#: builtin/gc.c:284
+#: builtin/gc.c:272
msgid "enable auto-gc mode"
msgstr "включить режим auto-gc"
-#: builtin/gc.c:285
+#: builtin/gc.c:273
msgid "force running gc even if there may be another gc running"
msgstr "принудительно запустить gc, даже есть другая копия gc уже запущена"
-#: builtin/gc.c:327
+#: builtin/gc.c:315
#, c-format
msgid "Auto packing the repository in background for optimum performance.\n"
msgstr "Автоматическая упаковка репозитория в фоне, для оптимальной производительности.\n"
-#: builtin/gc.c:329
+#: builtin/gc.c:317
#, c-format
msgid "Auto packing the repository for optimum performance.\n"
msgstr "Автоматическая упаковка репозитория, для оптимальной производительности.\n"
-#: builtin/gc.c:330
+#: builtin/gc.c:318
#, c-format
msgid "See \"git help gc\" for manual housekeeping.\n"
msgstr "Смотрите «git help gc» руководства по ручной очистке.\n"
-#: builtin/gc.c:348
+#: builtin/gc.c:336
#, c-format
msgid ""
"gc is already running on machine '%s' pid %<PRIuMAX> (use --force if not)"
msgstr "gc уже запущен на этом компьютере «%s» pid %<PRIuMAX> (если нет, используйте --force)"
-#: builtin/gc.c:376
+#: builtin/gc.c:364
msgid ""
"There are too many unreachable loose objects; run 'git prune' to remove "
"them."
@@ -5730,7 +6169,7 @@ msgstr "git hash-object [-t <тип>] [-w] [--path=<файл> | --no-filters] [-
msgid "git hash-object --stdin-paths < <list-of-paths>"
msgstr "git hash-object --stdin-paths < <список-путей>"
-#: builtin/hash-object.c:92 builtin/tag.c:612
+#: builtin/hash-object.c:92 builtin/tag.c:614
msgid "type"
msgstr "тип"
@@ -5879,27 +6318,27 @@ msgstr "использование: %s%s"
msgid "`git %s' is aliased to `%s'"
msgstr "«git %s» — это сокращение для «%s»"
-#: builtin/index-pack.c:151
+#: builtin/index-pack.c:152
#, c-format
msgid "unable to open %s"
msgstr "не удалось открыть %s"
-#: builtin/index-pack.c:201
+#: builtin/index-pack.c:202
#, c-format
msgid "object type mismatch at %s"
msgstr "несоответствие типа объекта на %s"
-#: builtin/index-pack.c:221
+#: builtin/index-pack.c:222
#, c-format
msgid "did not receive expected object %s"
msgstr "ожидаемый объект не получен на %s"
-#: builtin/index-pack.c:224
+#: builtin/index-pack.c:225
#, c-format
msgid "object %s: expected type %s, found %s"
msgstr "объект %s: ожидаемый тип %s, получен %s"
-#: builtin/index-pack.c:266
+#: builtin/index-pack.c:267
#, c-format
msgid "cannot fill %d byte"
msgid_plural "cannot fill %d bytes"
@@ -5908,69 +6347,69 @@ msgstr[1] "не удалось заполнить %d байта"
msgstr[2] "не удалось заполнить %d байтов"
msgstr[3] "не удалось заполнить %d байтов"
-#: builtin/index-pack.c:276
+#: builtin/index-pack.c:277
msgid "early EOF"
msgstr "неожиданный конец файла"
-#: builtin/index-pack.c:277
+#: builtin/index-pack.c:278
msgid "read error on input"
msgstr "ошибка чтения ввода"
-#: builtin/index-pack.c:289
+#: builtin/index-pack.c:290
msgid "used more bytes than were available"
msgstr "использовано больше байт, чем было доступно"
-#: builtin/index-pack.c:296
+#: builtin/index-pack.c:297
msgid "pack too large for current definition of off_t"
msgstr "пакет слишком большой для текущего определения off_t"
-#: builtin/index-pack.c:312
+#: builtin/index-pack.c:313
#, c-format
msgid "unable to create '%s'"
msgstr "не удалось создать «%s»"
-#: builtin/index-pack.c:317
+#: builtin/index-pack.c:318
#, c-format
msgid "cannot open packfile '%s'"
msgstr "не удалось открыть файл пакета «%s»"
-#: builtin/index-pack.c:331
+#: builtin/index-pack.c:332
msgid "pack signature mismatch"
msgstr "несоответствие подписи пакета"
-#: builtin/index-pack.c:333
+#: builtin/index-pack.c:334
#, c-format
msgid "pack version %<PRIu32> unsupported"
msgstr "версия пакета %<PRIu32> не поддерживается"
-#: builtin/index-pack.c:351
+#: builtin/index-pack.c:352
#, c-format
msgid "pack has bad object at offset %lu: %s"
msgstr "в пакете содержится поврежденный объект по смещению %lu: %s"
-#: builtin/index-pack.c:472
+#: builtin/index-pack.c:473
#, c-format
msgid "inflate returned %d"
msgstr "программа сжатия вернула %d"
-#: builtin/index-pack.c:521
+#: builtin/index-pack.c:522
msgid "offset value overflow for delta base object"
msgstr "переполнение значения смещения у базового объекта дельты"
-#: builtin/index-pack.c:529
+#: builtin/index-pack.c:530
msgid "delta base offset is out of bound"
msgstr "смещение базовой дельты вышло за допустимые пределы"
-#: builtin/index-pack.c:537
+#: builtin/index-pack.c:538
#, c-format
msgid "unknown object type %d"
msgstr "неизвестный тип объекта %d"
-#: builtin/index-pack.c:568
+#: builtin/index-pack.c:569
msgid "cannot pread pack file"
msgstr "не удалось выполнить pread для файла пакета"
-#: builtin/index-pack.c:570
+#: builtin/index-pack.c:571
#, c-format
msgid "premature end of pack file, %lu byte missing"
msgid_plural "premature end of pack file, %lu bytes missing"
@@ -5979,33 +6418,33 @@ msgstr[1] "преждевременное окончание файла паке
msgstr[2] "преждевременное окончание файла пакета, %lu байтов отсутствует"
msgstr[3] "преждевременное окончание файла пакета, %lu байтов отсутствует"
-#: builtin/index-pack.c:596
+#: builtin/index-pack.c:597
msgid "serious inflate inconsistency"
msgstr "серьезное несоответствие при распаковке"
-#: builtin/index-pack.c:742 builtin/index-pack.c:748 builtin/index-pack.c:771
-#: builtin/index-pack.c:805 builtin/index-pack.c:814
+#: builtin/index-pack.c:743 builtin/index-pack.c:749 builtin/index-pack.c:772
+#: builtin/index-pack.c:806 builtin/index-pack.c:815
#, c-format
msgid "SHA1 COLLISION FOUND WITH %s !"
msgstr "НАЙДЕНА КОЛЛИЗИЯ SHA1 С %s !"
-#: builtin/index-pack.c:745 builtin/pack-objects.c:162
+#: builtin/index-pack.c:746 builtin/pack-objects.c:162
#: builtin/pack-objects.c:254
#, c-format
msgid "unable to read %s"
msgstr "не удалось прочитать %s"
-#: builtin/index-pack.c:811
+#: builtin/index-pack.c:812
#, c-format
msgid "cannot read existing object %s"
msgstr "не удалось прочитать существующий объект %s"
-#: builtin/index-pack.c:825
+#: builtin/index-pack.c:826
#, c-format
msgid "invalid blob object %s"
msgstr "неправильный файл двоичного объекта %s"
-#: builtin/index-pack.c:839
+#: builtin/index-pack.c:840
#, c-format
msgid "invalid %s"
msgstr "неправильный %s"
@@ -6121,7 +6560,7 @@ msgstr "плохой pack.indexversion=%<PRIu32>"
msgid "invalid number of threads specified (%d)"
msgstr "указано неправильное количество потоков (%d)"
-#: builtin/index-pack.c:1479 builtin/index-pack.c:1658
+#: builtin/index-pack.c:1479 builtin/index-pack.c:1663
#, c-format
msgid "no threads support, ignoring %s"
msgstr "нет поддержки потоков, игнорирование %s"
@@ -6154,110 +6593,110 @@ msgstr[1] "длина цепочки = %d: %lu объекта"
msgstr[2] "длина цепочки = %d: %lu объектов"
msgstr[3] "длина цепочки = %d: %lu объектов"
-#: builtin/index-pack.c:1622
+#: builtin/index-pack.c:1623
msgid "Cannot come back to cwd"
msgstr "Не удалось вернуться в текущий рабочий каталог"
-#: builtin/index-pack.c:1670 builtin/index-pack.c:1673
-#: builtin/index-pack.c:1685 builtin/index-pack.c:1689
+#: builtin/index-pack.c:1675 builtin/index-pack.c:1678
+#: builtin/index-pack.c:1690 builtin/index-pack.c:1694
#, c-format
msgid "bad %s"
msgstr "плохой %s"
-#: builtin/index-pack.c:1703
+#: builtin/index-pack.c:1708
msgid "--fix-thin cannot be used without --stdin"
msgstr "--fix-thin нельзя использовать без --stdin"
-#: builtin/index-pack.c:1707 builtin/index-pack.c:1716
+#: builtin/index-pack.c:1712 builtin/index-pack.c:1721
#, c-format
msgid "packfile name '%s' does not end with '.pack'"
msgstr "имя пакета «%s» не оканчивается на «.pack»"
-#: builtin/index-pack.c:1724
+#: builtin/index-pack.c:1729
msgid "--verify with no packfile name given"
msgstr "--verify без указания имени файла пакета"
-#: builtin/init-db.c:35
+#: builtin/init-db.c:36
#, c-format
msgid "Could not make %s writable by group"
msgstr "Не удалось предоставить доступ к %s на запись"
-#: builtin/init-db.c:62
+#: builtin/init-db.c:63
#, c-format
msgid "insanely long template name %s"
msgstr "слишком длинное имя шаблона %s"
-#: builtin/init-db.c:67
+#: builtin/init-db.c:68
#, c-format
msgid "cannot stat '%s'"
msgstr "не удалось выполнить stat для «%s»"
-#: builtin/init-db.c:73
+#: builtin/init-db.c:74
#, c-format
msgid "cannot stat template '%s'"
msgstr "не удалось выполнить stat для шаблона «%s»"
-#: builtin/init-db.c:80
+#: builtin/init-db.c:81
#, c-format
msgid "cannot opendir '%s'"
msgstr "не удалось выполнить opendir для «%s»"
-#: builtin/init-db.c:97
+#: builtin/init-db.c:98
#, c-format
msgid "cannot readlink '%s'"
msgstr "не удалось выполнить readlink для «%s»"
-#: builtin/init-db.c:99
+#: builtin/init-db.c:100
#, c-format
msgid "insanely long symlink %s"
msgstr "слишком длинная символьная ссылка %s"
-#: builtin/init-db.c:102
+#: builtin/init-db.c:103
#, c-format
msgid "cannot symlink '%s' '%s'"
msgstr "не удалось создать символьную ссылку «%s» на «%s»"
-#: builtin/init-db.c:106
+#: builtin/init-db.c:107
#, c-format
msgid "cannot copy '%s' to '%s'"
msgstr "не удалось скопировать файл «%s» в «%s»"
-#: builtin/init-db.c:110
+#: builtin/init-db.c:111
#, c-format
msgid "ignoring template %s"
msgstr "игнорирование шаблона %s"
-#: builtin/init-db.c:136
+#: builtin/init-db.c:137
#, c-format
msgid "insanely long template path %s"
msgstr "слишком длинный путь шаблона %s"
-#: builtin/init-db.c:144
+#: builtin/init-db.c:145
#, c-format
msgid "templates not found %s"
msgstr "шаблоны не найдены %s"
-#: builtin/init-db.c:157
+#: builtin/init-db.c:158
#, c-format
msgid "not copying templates of a wrong format version %d from '%s'"
msgstr "не копирую шаблоны в неправильной версии формата %d из «%s»"
-#: builtin/init-db.c:211
+#: builtin/init-db.c:212
#, c-format
msgid "insane git directory %s"
msgstr "слишком длинный путь к каталогу git %s"
-#: builtin/init-db.c:343 builtin/init-db.c:346
+#: builtin/init-db.c:344 builtin/init-db.c:347
#, c-format
msgid "%s already exists"
msgstr "%s уже существует"
-#: builtin/init-db.c:374
+#: builtin/init-db.c:375
#, c-format
msgid "unable to handle file type %d"
msgstr "не удается обработать файл типа %d"
-#: builtin/init-db.c:377
+#: builtin/init-db.c:378
#, c-format
msgid "unable to move %s to %s"
msgstr "не удается переместить файл %s в %s"
@@ -6265,59 +6704,55 @@ msgstr "не удается переместить файл %s в %s"
#. TRANSLATORS: The first '%s' is either "Reinitialized
#. existing" or "Initialized empty", the second " shared" or
#. "", and the last '%s%s' is the verbatim directory name.
-#: builtin/init-db.c:433
+#: builtin/init-db.c:434
#, c-format
msgid "%s%s Git repository in %s%s\n"
msgstr "%s%s репозиторий Git в %s%s\n"
-#: builtin/init-db.c:434
+#: builtin/init-db.c:435
msgid "Reinitialized existing"
msgstr "Реинициализация существующего"
-#: builtin/init-db.c:434
+#: builtin/init-db.c:435
msgid "Initialized empty"
msgstr "Инициализирован пустой"
-#: builtin/init-db.c:435
+#: builtin/init-db.c:436
msgid " shared"
msgstr " общий"
-#: builtin/init-db.c:482
+#: builtin/init-db.c:483
msgid ""
"git init [-q | --quiet] [--bare] [--template=<template-directory>] "
"[--shared[=<permissions>]] [<directory>]"
msgstr "git init [-q | --quiet] [--bare] [--template=<каталог-шаблонов>] [--shared[=<права-доступа>]] [<каталог>]"
-#: builtin/init-db.c:505
+#: builtin/init-db.c:506
msgid "permissions"
msgstr "права-доступа"
-#: builtin/init-db.c:506
+#: builtin/init-db.c:507
msgid "specify that the git repository is to be shared amongst several users"
msgstr "укажите, если репозиторий git будет использоваться несколькими пользователями"
-#: builtin/init-db.c:508 builtin/prune-packed.c:57 builtin/repack.c:171
-msgid "be quiet"
-msgstr "тихий режим"
-
-#: builtin/init-db.c:540 builtin/init-db.c:545
+#: builtin/init-db.c:541 builtin/init-db.c:546
#, c-format
msgid "cannot mkdir %s"
msgstr "не удалось выполнить mkdir %s"
-#: builtin/init-db.c:549
+#: builtin/init-db.c:550
#, c-format
msgid "cannot chdir to %s"
msgstr "не удалось выполнить chdir в %s"
-#: builtin/init-db.c:570
+#: builtin/init-db.c:571
#, c-format
msgid ""
"%s (or --work-tree=<directory>) not allowed without specifying %s (or --git-"
"dir=<directory>)"
msgstr "%s (или --work-tree=<каталог>) нельзя использовать без указания %s (или --git-dir=<каталог>)"
-#: builtin/init-db.c:598
+#: builtin/init-db.c:599
#, c-format
msgid "Cannot access work tree '%s'"
msgstr "Не удалось получить доступ к рабочему каталогу «%s»"
@@ -6340,284 +6775,279 @@ msgstr "завершитель"
msgid "trailer(s) to add"
msgstr "завершители для добавления"
-#: builtin/log.c:41
+#: builtin/log.c:43
msgid "git log [<options>] [<revision-range>] [[--] <path>...]"
msgstr "git log [<опции>] [<диапазон-редакций>] [[--] <путь>…]"
-#: builtin/log.c:42
+#: builtin/log.c:44
msgid "git show [<options>] <object>..."
msgstr "git show [<опции>] <объект>…"
-#: builtin/log.c:81
+#: builtin/log.c:83
#, c-format
msgid "invalid --decorate option: %s"
msgstr "неправильный параметр для --decorate: %s"
-#: builtin/log.c:127
+#: builtin/log.c:131
msgid "suppress diff output"
msgstr "не выводить различия"
-#: builtin/log.c:128
+#: builtin/log.c:132
msgid "show source"
msgstr "показать источник"
-#: builtin/log.c:129
+#: builtin/log.c:133
msgid "Use mail map file"
msgstr "Использовать файл соответствия почтовых адресов"
-#: builtin/log.c:130
+#: builtin/log.c:134
msgid "decorate options"
msgstr "опции формата вывода ссылок"
-#: builtin/log.c:133
+#: builtin/log.c:137
msgid "Process line range n,m in file, counting from 1"
msgstr "Обработать диапазон строк n,m из файла, начиная с 1"
-#: builtin/log.c:229
+#: builtin/log.c:233
#, c-format
msgid "Final output: %d %s\n"
msgstr "Финальный вывод: %d %s\n"
-#: builtin/log.c:458
+#: builtin/log.c:465
#, c-format
msgid "git show %s: bad file"
msgstr "git show %s: плохой файл"
-#: builtin/log.c:472 builtin/log.c:564
+#: builtin/log.c:479 builtin/log.c:572
#, c-format
msgid "Could not read object %s"
msgstr "Не удалось прочитать объект %s"
-#: builtin/log.c:588
+#: builtin/log.c:596
#, c-format
msgid "Unknown type: %d"
msgstr "Неизвестный тип объекта: %d"
-#: builtin/log.c:689
+#: builtin/log.c:714
msgid "format.headers without value"
msgstr "в format.headers не указано значение"
-#: builtin/log.c:773
+#: builtin/log.c:798
msgid "name of output directory is too long"
msgstr "слишком длинное имя выходного каталога"
-#: builtin/log.c:789
+#: builtin/log.c:814
#, c-format
msgid "Cannot open patch file %s"
msgstr "Ну удалось открыть файл изменений %s"
-#: builtin/log.c:803
+#: builtin/log.c:828
msgid "Need exactly one range."
msgstr "Нужен только один диапазон."
-#: builtin/log.c:813
+#: builtin/log.c:838
msgid "Not a range."
msgstr "Не является диапазоном."
-#: builtin/log.c:919
+#: builtin/log.c:944
msgid "Cover letter needs email format"
msgstr "Сопроводительное письмо должно быть в формате электронной почты"
-#: builtin/log.c:998
+#: builtin/log.c:1023
#, c-format
msgid "insane in-reply-to: %s"
msgstr "ошибка в поле in-reply-to: %s"
-#: builtin/log.c:1026
+#: builtin/log.c:1051
msgid "git format-patch [<options>] [<since> | <revision-range>]"
msgstr "git format-patch [<опции>] [<начиная-с> | <диапазон-редакций>]"
-#: builtin/log.c:1071
+#: builtin/log.c:1096
msgid "Two output directories?"
msgstr "Два выходных каталога?"
-#: builtin/log.c:1186
+#: builtin/log.c:1211
msgid "use [PATCH n/m] even with a single patch"
msgstr "выводить [PATCH n/m] даже когда один патч"
-#: builtin/log.c:1189
+#: builtin/log.c:1214
msgid "use [PATCH] even with multiple patches"
msgstr "выводить [PATCH] даже когда несколько патчей"
-#: builtin/log.c:1193
+#: builtin/log.c:1218
msgid "print patches to standard out"
msgstr "выводить патчи на стандартный вывод"
-#: builtin/log.c:1195
+#: builtin/log.c:1220
msgid "generate a cover letter"
msgstr "генерировать сопроводительное письмо"
-#: builtin/log.c:1197
+#: builtin/log.c:1222
msgid "use simple number sequence for output file names"
msgstr "использовать простую последовательность чисел для имен выходных файлов"
-#: builtin/log.c:1198
+#: builtin/log.c:1223
msgid "sfx"
msgstr "суффикс"
-#: builtin/log.c:1199
+#: builtin/log.c:1224
msgid "use <sfx> instead of '.patch'"
msgstr "использовать суффикс <суффикс> вместо «.patch»"
-#: builtin/log.c:1201
+#: builtin/log.c:1226
msgid "start numbering patches at <n> instead of 1"
msgstr "начать нумерацию патчей с <n>, а не с 1"
-#: builtin/log.c:1203
+#: builtin/log.c:1228
msgid "mark the series as Nth re-roll"
msgstr "пометить серию как энную попытку"
-#: builtin/log.c:1205
+#: builtin/log.c:1230
msgid "Use [<prefix>] instead of [PATCH]"
msgstr "Использовать [<префикс>] вместо [PATCH]"
-#: builtin/log.c:1208
+#: builtin/log.c:1233
msgid "store resulting files in <dir>"
msgstr "сохранить результирующие файлы в <каталог>"
-#: builtin/log.c:1211
+#: builtin/log.c:1236
msgid "don't strip/add [PATCH]"
msgstr "не обрезать/добавлять [PATCH]"
-#: builtin/log.c:1214
+#: builtin/log.c:1239
msgid "don't output binary diffs"
msgstr "не выводить двоичные различия"
-#: builtin/log.c:1216
+#: builtin/log.c:1241
msgid "don't include a patch matching a commit upstream"
msgstr "не включать патч, если коммит уже есть в вышестоящей ветке"
-#: builtin/log.c:1218
+#: builtin/log.c:1243
msgid "show patch format instead of default (patch + stat)"
msgstr "выводить в формате патча, а не в стандартном (патч + статистика)"
-#: builtin/log.c:1220
+#: builtin/log.c:1245
msgid "Messaging"
msgstr "Передача сообщений"
-#: builtin/log.c:1221
+#: builtin/log.c:1246
msgid "header"
msgstr "заголовок"
-#: builtin/log.c:1222
+#: builtin/log.c:1247
msgid "add email header"
msgstr "добавить заголовок сообщения"
-#: builtin/log.c:1223 builtin/log.c:1225
+#: builtin/log.c:1248 builtin/log.c:1250
msgid "email"
msgstr "почта"
-#: builtin/log.c:1223
+#: builtin/log.c:1248
msgid "add To: header"
msgstr "добавить заголовок To:"
-#: builtin/log.c:1225
+#: builtin/log.c:1250
msgid "add Cc: header"
msgstr "добавить заголовок Cc:"
-#: builtin/log.c:1227
+#: builtin/log.c:1252
msgid "ident"
msgstr "идентификатор"
-#: builtin/log.c:1228
+#: builtin/log.c:1253
msgid "set From address to <ident> (or committer ident if absent)"
msgstr "установить адрес отправителя на <идентификатор> (или на идентификатор коммитера, если отсутствует)"
-#: builtin/log.c:1230
+#: builtin/log.c:1255
msgid "message-id"
msgstr "идентификатор-сообщения"
-#: builtin/log.c:1231
+#: builtin/log.c:1256
msgid "make first mail a reply to <message-id>"
msgstr "сделать первое письмо ответом на <идентификатор-сообщения>"
-#: builtin/log.c:1232 builtin/log.c:1235
+#: builtin/log.c:1257 builtin/log.c:1260
msgid "boundary"
msgstr "вложение"
-#: builtin/log.c:1233
+#: builtin/log.c:1258
msgid "attach the patch"
msgstr "приложить патч"
-#: builtin/log.c:1236
+#: builtin/log.c:1261
msgid "inline the patch"
msgstr "включить патч в текст письма"
-#: builtin/log.c:1240
+#: builtin/log.c:1265
msgid "enable message threading, styles: shallow, deep"
msgstr "включить в письмах иерархичность, стили: shallow (частичную), deep (глубокую)"
-#: builtin/log.c:1242
+#: builtin/log.c:1267
msgid "signature"
msgstr "подпись"
-#: builtin/log.c:1243
+#: builtin/log.c:1268
msgid "add a signature"
msgstr "добавить подпись"
-#: builtin/log.c:1245
+#: builtin/log.c:1270
msgid "add a signature from a file"
msgstr "добавить подпись из файла"
-#: builtin/log.c:1246
+#: builtin/log.c:1271
msgid "don't print the patch filenames"
msgstr "не выводить имена файлов патчей"
-#: builtin/log.c:1320
-#, c-format
-msgid "invalid ident line: %s"
-msgstr "неправильная строка идентификации: %s"
-
-#: builtin/log.c:1335
+#: builtin/log.c:1360
msgid "-n and -k are mutually exclusive."
msgstr "-n и -k нельзя использовать одновременно"
-#: builtin/log.c:1337
+#: builtin/log.c:1362
msgid "--subject-prefix and -k are mutually exclusive."
msgstr "--subject-prefix и -k нельзя использовать одновременно."
-#: builtin/log.c:1345
+#: builtin/log.c:1370
msgid "--name-only does not make sense"
msgstr "--name-only не имеет смысла"
-#: builtin/log.c:1347
+#: builtin/log.c:1372
msgid "--name-status does not make sense"
msgstr "--name-status не имеет смысла"
-#: builtin/log.c:1349
+#: builtin/log.c:1374
msgid "--check does not make sense"
msgstr "--check не имеет смысла"
-#: builtin/log.c:1372
+#: builtin/log.c:1397
msgid "standard output, or directory, which one?"
msgstr "стандартный вывод или каталог?"
-#: builtin/log.c:1374
+#: builtin/log.c:1399
#, c-format
msgid "Could not create directory '%s'"
msgstr "Не удалось создать каталог «%s»"
-#: builtin/log.c:1472
+#: builtin/log.c:1496
#, c-format
msgid "unable to read signature file '%s'"
msgstr "не удалось прочитать файл подписи «%s»"
-#: builtin/log.c:1535
+#: builtin/log.c:1559
msgid "Failed to create output files"
msgstr "Сбой при создании выходных файлов"
-#: builtin/log.c:1583
+#: builtin/log.c:1607
msgid "git cherry [-v] [<upstream> [<head> [<limit>]]]"
msgstr "git cherry [-v] [<вышестоящая-ветка> [<голова> [<ограничение>]]]"
-#: builtin/log.c:1637
+#: builtin/log.c:1661
#, c-format
msgid ""
"Could not find a tracked remote branch, please specify <upstream> "
"manually.\n"
msgstr "Не удалось найти отслеживаемую внешнюю ветку, укажите <вышестоящую-ветку> вручную.\n"
-#: builtin/log.c:1648 builtin/log.c:1650 builtin/log.c:1662
+#: builtin/log.c:1672 builtin/log.c:1674 builtin/log.c:1686
#, c-format
msgid "Unknown commit %s"
msgstr "Неизвестный коммит %s"
@@ -6781,31 +7211,31 @@ msgstr "Доступные стратегии:"
msgid "Available custom strategies are:"
msgstr "Доступные пользовательские стратегии:"
-#: builtin/merge.c:193
+#: builtin/merge.c:193 builtin/pull.c:119
msgid "do not show a diffstat at the end of the merge"
msgstr "не выводить статистику изменений после окончания слияния"
-#: builtin/merge.c:196
+#: builtin/merge.c:196 builtin/pull.c:122
msgid "show a diffstat at the end of the merge"
msgstr "вывести статистику изменений после окончания слияния"
-#: builtin/merge.c:197
+#: builtin/merge.c:197 builtin/pull.c:125
msgid "(synonym to --stat)"
msgstr "(синоним для --stat)"
-#: builtin/merge.c:199
+#: builtin/merge.c:199 builtin/pull.c:128
msgid "add (at most <n>) entries from shortlog to merge commit message"
msgstr "добавить (максимум <n>) записей из короткого журнала в сообщение коммита у слияния"
-#: builtin/merge.c:202
+#: builtin/merge.c:202 builtin/pull.c:131
msgid "create a single commit instead of doing a merge"
msgstr "создать один коммит, вместо выполнения слияния"
-#: builtin/merge.c:204
+#: builtin/merge.c:204 builtin/pull.c:134
msgid "perform a commit if the merge succeeds (default)"
msgstr "сделать коммит, если слияние прошло успешно (по умолчанию)"
-#: builtin/merge.c:206
+#: builtin/merge.c:206 builtin/pull.c:137
msgid "edit message before committing"
msgstr "отредактировать сообщение перед выполнением коммита"
@@ -6813,7 +7243,7 @@ msgstr "отредактировать сообщение перед выпол
msgid "allow fast-forward (default)"
msgstr "разрешить перемотку вперед (по умолчанию)"
-#: builtin/merge.c:209
+#: builtin/merge.c:209 builtin/pull.c:143
msgid "abort if fast-forward is not possible"
msgstr "отменить выполнение слияния, если перемотка вперед не возможна"
@@ -6821,19 +7251,20 @@ msgstr "отменить выполнение слияния, если пере
msgid "Verify that the named commit has a valid GPG signature"
msgstr "Проверить, что указанный коммит имеет верную электронную подпись GPG"
-#: builtin/merge.c:214 builtin/notes.c:753 builtin/revert.c:89
+#: builtin/merge.c:214 builtin/notes.c:767 builtin/pull.c:148
+#: builtin/revert.c:89
msgid "strategy"
msgstr "стратегия"
-#: builtin/merge.c:215
+#: builtin/merge.c:215 builtin/pull.c:149
msgid "merge strategy to use"
msgstr "используемая стратегия слияния"
-#: builtin/merge.c:216
+#: builtin/merge.c:216 builtin/pull.c:152
msgid "option=value"
msgstr "опция=значение"
-#: builtin/merge.c:217
+#: builtin/merge.c:217 builtin/pull.c:153
msgid "option for selected merge strategy"
msgstr "опции для выбранной стратегии слияния"
@@ -6871,6 +7302,12 @@ msgstr " (нечего уплотнять)"
msgid "Squash commit -- not updating HEAD\n"
msgstr "Уплотнение коммита — не обновляя HEAD\n"
+#: builtin/merge.c:344 builtin/merge.c:763 builtin/merge.c:975
+#: builtin/merge.c:988
+#, c-format
+msgid "Could not write to '%s'"
+msgstr "Не удалось записать в «%s»"
+
#: builtin/merge.c:372
msgid "Writing SQUASH_MSG"
msgstr "Запись SQUASH_MSG"
@@ -6894,10 +7331,6 @@ msgstr "«%s» не указывает на коммит"
msgid "Bad branch.%s.mergeoptions string: %s"
msgstr "Неправильная строка branch.%s.mergeoptions: %s"
-#: builtin/merge.c:632
-msgid "git write-tree failed to write a tree"
-msgstr "git write-tree не удалось записать дерево"
-
#: builtin/merge.c:656
msgid "Not handling anything other than two heads merge."
msgstr "Не обрабатываю ничего, кроме слияния двух указателей на коммиты."
@@ -6983,10 +7416,6 @@ msgid ""
"Please, commit your changes before you merge."
msgstr "Вы не завершили слияние (присутствует файл MERGE_HEAD).\nВыполните коммит ваших изменений, перед слиянием."
-#: builtin/merge.c:1227 git-pull.sh:74
-msgid "You have not concluded your merge (MERGE_HEAD exists)."
-msgstr "Вы не завершили слияние (присутствует файл MERGE_HEAD)."
-
#: builtin/merge.c:1231
msgid ""
"You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).\n"
@@ -7272,7 +7701,7 @@ msgstr "%s, откуда=%s, куда=%s"
msgid "Renaming %s to %s\n"
msgstr "Переименование %s в %s\n"
-#: builtin/mv.c:256 builtin/remote.c:725 builtin/repack.c:361
+#: builtin/mv.c:256 builtin/remote.c:722 builtin/repack.c:362
#, c-format
msgid "renaming '%s' failed"
msgstr "сбой при переименовании «%s»"
@@ -7317,332 +7746,329 @@ msgstr "разрешить вывод «undefined», если не найден
msgid "dereference tags in the input (internal use)"
msgstr "разыменовывать введенные метки (для внутреннего использования)"
-#: builtin/notes.c:24
+#: builtin/notes.c:25
msgid "git notes [--ref <notes-ref>] [list [<object>]]"
msgstr "git notes [--ref <ссылка-на-заметку>] [list [<объект>]]"
-#: builtin/notes.c:25
+#: builtin/notes.c:26
msgid ""
"git notes [--ref <notes-ref>] add [-f] [--allow-empty] [-m <msg> | -F <file>"
" | (-c | -C) <object>] [<object>]"
msgstr "git notes [--ref <ссылка-на-заметку>] add [-f] [--allow-empty] [-m <сообщение> | -F <файл> | (-c | -C) <объект>] [<объект>]"
-#: builtin/notes.c:26
+#: builtin/notes.c:27
msgid "git notes [--ref <notes-ref>] copy [-f] <from-object> <to-object>"
msgstr "git notes [--ref <ссылка-на-заметку>] copy [-f] <из-объекта> <в-объект>"
-#: builtin/notes.c:27
+#: builtin/notes.c:28
msgid ""
"git notes [--ref <notes-ref>] append [--allow-empty] [-m <msg> | -F <file> |"
" (-c | -C) <object>] [<object>]"
msgstr "git notes [--ref <ссылка-на-заметку>] append [--allow-empty] [-m <сообщение> | -F <файл> | (-c | -C) <объект>] [<объект>]"
-#: builtin/notes.c:28
+#: builtin/notes.c:29
msgid "git notes [--ref <notes-ref>] edit [--allow-empty] [<object>]"
msgstr "git notes [--ref <ссылка-на-заметку>] edit [--allow-empty] [<объект>]"
-#: builtin/notes.c:29
+#: builtin/notes.c:30
msgid "git notes [--ref <notes-ref>] show [<object>]"
msgstr "git notes [--ref <ссылка-на-заметку>] show [<объект>]"
-#: builtin/notes.c:30
+#: builtin/notes.c:31
msgid ""
"git notes [--ref <notes-ref>] merge [-v | -q] [-s <strategy>] <notes-ref>"
msgstr "git notes [--ref <ссылка-на-заметку>] merge [-v | -q] [-s <стратегия>] <ссылка-на-заметку>"
-#: builtin/notes.c:31
+#: builtin/notes.c:32
msgid "git notes merge --commit [-v | -q]"
msgstr "git notes merge --commit [-v | -q]"
-#: builtin/notes.c:32
+#: builtin/notes.c:33
msgid "git notes merge --abort [-v | -q]"
msgstr "git notes merge --abort [-v | -q]"
-#: builtin/notes.c:33
+#: builtin/notes.c:34
msgid "git notes [--ref <notes-ref>] remove [<object>...]"
msgstr "git notes [--ref <ссылка-на-заметку>] remove [<объект>…]"
-#: builtin/notes.c:34
+#: builtin/notes.c:35
msgid "git notes [--ref <notes-ref>] prune [-n | -v]"
msgstr "git notes [--ref <ссылка-на-заметку>] prune [-n | -v]"
-#: builtin/notes.c:35
+#: builtin/notes.c:36
msgid "git notes [--ref <notes-ref>] get-ref"
msgstr "git notes [--ref <ссылка-на-заметку>] get-ref"
-#: builtin/notes.c:40
+#: builtin/notes.c:41
msgid "git notes [list [<object>]]"
msgstr "git notes [list [<объект>]]"
-#: builtin/notes.c:45
+#: builtin/notes.c:46
msgid "git notes add [<options>] [<object>]"
msgstr "git notes add [<опции>] [<объект>]"
-#: builtin/notes.c:50
+#: builtin/notes.c:51
msgid "git notes copy [<options>] <from-object> <to-object>"
msgstr "git notes copy [<опции>] <из-объекта> <в-объект>"
-#: builtin/notes.c:51
+#: builtin/notes.c:52
msgid "git notes copy --stdin [<from-object> <to-object>]..."
msgstr "git notes copy --stdin [<из-объекта> <в-объект>]…"
-#: builtin/notes.c:56
+#: builtin/notes.c:57
msgid "git notes append [<options>] [<object>]"
msgstr "git notes append [<опции>] [<объект>]"
-#: builtin/notes.c:61
+#: builtin/notes.c:62
msgid "git notes edit [<object>]"
msgstr "git notes edit [<объект>]"
-#: builtin/notes.c:66
+#: builtin/notes.c:67
msgid "git notes show [<object>]"
msgstr "git notes show [<объект>]"
-#: builtin/notes.c:71
+#: builtin/notes.c:72
msgid "git notes merge [<options>] <notes-ref>"
msgstr "git notes merge [<опции>] <ссылка-на-заметку>"
-#: builtin/notes.c:72
+#: builtin/notes.c:73
msgid "git notes merge --commit [<options>]"
msgstr "git notes merge --commit [<опции>]"
-#: builtin/notes.c:73
+#: builtin/notes.c:74
msgid "git notes merge --abort [<options>]"
msgstr "git notes merge --abort [<опции>]"
-#: builtin/notes.c:78
+#: builtin/notes.c:79
msgid "git notes remove [<object>]"
msgstr "git notes remove [<опции>]"
-#: builtin/notes.c:83
+#: builtin/notes.c:84
msgid "git notes prune [<options>]"
msgstr "git notes prune [<опции>]"
-#: builtin/notes.c:88
+#: builtin/notes.c:89
msgid "git notes get-ref"
msgstr "git notes get-ref"
-#: builtin/notes.c:146
+#: builtin/notes.c:147
#, c-format
msgid "unable to start 'show' for object '%s'"
msgstr "не удалось запустить «show» для объекта «%s»"
-#: builtin/notes.c:150
+#: builtin/notes.c:151
msgid "could not read 'show' output"
msgstr "не удалось прочитать вывод «show»"
-#: builtin/notes.c:158
+#: builtin/notes.c:159
#, c-format
msgid "failed to finish 'show' for object '%s'"
msgstr "не удалось завершить «show» для объекта «%s»"
-#: builtin/notes.c:173 builtin/tag.c:477
+#: builtin/notes.c:174 builtin/tag.c:477
#, c-format
msgid "could not create file '%s'"
msgstr "не удалось создать файл «%s»"
-#: builtin/notes.c:192
+#: builtin/notes.c:193
msgid "Please supply the note contents using either -m or -F option"
msgstr "Пожалуйста, укажите содержимое заметки, используя опцию -m или -F"
-#: builtin/notes.c:201
+#: builtin/notes.c:202
msgid "unable to write note object"
msgstr "не удалось записать объект заметки"
-#: builtin/notes.c:203
+#: builtin/notes.c:204
#, c-format
msgid "The note contents have been left in %s"
msgstr "Содержимое заметки осталось в %s"
-#: builtin/notes.c:231 builtin/tag.c:693
+#: builtin/notes.c:232 builtin/tag.c:695
#, c-format
msgid "cannot read '%s'"
msgstr "не удалось прочитать «%s»"
-#: builtin/notes.c:233 builtin/tag.c:696
+#: builtin/notes.c:234 builtin/tag.c:698
#, c-format
msgid "could not open or read '%s'"
msgstr "не удалось открыть или прочитать «%s»"
-#: builtin/notes.c:252 builtin/notes.c:303 builtin/notes.c:305
-#: builtin/notes.c:365 builtin/notes.c:420 builtin/notes.c:506
-#: builtin/notes.c:511 builtin/notes.c:589 builtin/notes.c:652
-#: builtin/notes.c:854 builtin/tag.c:709
+#: builtin/notes.c:253 builtin/notes.c:304 builtin/notes.c:306
+#: builtin/notes.c:366 builtin/notes.c:421 builtin/notes.c:507
+#: builtin/notes.c:512 builtin/notes.c:590 builtin/notes.c:653
+#: builtin/notes.c:877 builtin/tag.c:711
#, c-format
msgid "Failed to resolve '%s' as a valid ref."
msgstr "Не удалось разрешить «%s» как ссылку."
-#: builtin/notes.c:255
+#: builtin/notes.c:256
#, c-format
msgid "Failed to read object '%s'."
msgstr "Не удалось прочитать объект «%s»."
-#: builtin/notes.c:259
+#: builtin/notes.c:260
#, c-format
msgid "Cannot read note data from non-blob object '%s'."
msgstr "Не удалось прочитать данные заметки из недвоичного объекта «%s»."
-#: builtin/notes.c:299
-#, c-format
-msgid "Malformed input line: '%s'."
-msgstr "Плохая строка ввода: «%s»."
-
-#: builtin/notes.c:314
-#, c-format
-msgid "Failed to copy notes from '%s' to '%s'"
-msgstr "Не удалось скопировать заметку из «%s» в «%s»"
-
-#: builtin/notes.c:358 builtin/notes.c:413 builtin/notes.c:489
-#: builtin/notes.c:501 builtin/notes.c:577 builtin/notes.c:645
-#: builtin/notes.c:919
+#: builtin/notes.c:359 builtin/notes.c:414 builtin/notes.c:490
+#: builtin/notes.c:502 builtin/notes.c:578 builtin/notes.c:646
+#: builtin/notes.c:942
msgid "too many parameters"
msgstr "передано слишком много параметров"
-#: builtin/notes.c:371 builtin/notes.c:658
+#: builtin/notes.c:372 builtin/notes.c:659
#, c-format
msgid "No note found for object %s."
msgstr "Не найдена заметка для объекта %s."
-#: builtin/notes.c:392 builtin/notes.c:555
+#: builtin/notes.c:393 builtin/notes.c:556
msgid "note contents as a string"
msgstr "текстовое содержимое заметки"
-#: builtin/notes.c:395 builtin/notes.c:558
+#: builtin/notes.c:396 builtin/notes.c:559
msgid "note contents in a file"
msgstr "содержимое заметки в файле"
-#: builtin/notes.c:397 builtin/notes.c:400 builtin/notes.c:560
-#: builtin/notes.c:563 builtin/tag.c:628
+#: builtin/notes.c:398 builtin/notes.c:401 builtin/notes.c:561
+#: builtin/notes.c:564 builtin/tag.c:630
msgid "object"
msgstr "объект"
-#: builtin/notes.c:398 builtin/notes.c:561
+#: builtin/notes.c:399 builtin/notes.c:562
msgid "reuse and edit specified note object"
msgstr "использовать и отредактировать указанный объект заметки"
-#: builtin/notes.c:401 builtin/notes.c:564
+#: builtin/notes.c:402 builtin/notes.c:565
msgid "reuse specified note object"
msgstr "использовать указанный объект заметки"
-#: builtin/notes.c:404 builtin/notes.c:567
+#: builtin/notes.c:405 builtin/notes.c:568
msgid "allow storing empty note"
msgstr "разрешить сохранение пустой заметки"
-#: builtin/notes.c:405 builtin/notes.c:476
+#: builtin/notes.c:406 builtin/notes.c:477
msgid "replace existing notes"
msgstr "заменить существующие заметки"
-#: builtin/notes.c:430
+#: builtin/notes.c:431
#, c-format
msgid ""
"Cannot add notes. Found existing notes for object %s. Use '-f' to overwrite "
"existing notes"
msgstr "Не удалось добавить заметку. Найдена существующая заметка у объекта %s. Используйте параметр «-f» для перезаписи существующих заметок."
-#: builtin/notes.c:445 builtin/notes.c:524
+#: builtin/notes.c:446 builtin/notes.c:525
#, c-format
msgid "Overwriting existing notes for object %s\n"
msgstr "Перезапись существующих заметок у объекта %s\n"
-#: builtin/notes.c:456 builtin/notes.c:617 builtin/notes.c:859
+#: builtin/notes.c:457 builtin/notes.c:618 builtin/notes.c:882
#, c-format
msgid "Removing note for object %s\n"
msgstr "Удаление заметки у объекта %s\n"
-#: builtin/notes.c:477
+#: builtin/notes.c:478
msgid "read objects from stdin"
msgstr "прочитать объекты из стандартного ввода"
-#: builtin/notes.c:479
+#: builtin/notes.c:480
msgid "load rewriting config for <command> (implies --stdin)"
msgstr "загрузить настройки перезаписи для команды <команда> (включает в себя --stdin)"
-#: builtin/notes.c:497
+#: builtin/notes.c:498
msgid "too few parameters"
msgstr "передано слишком мало параметров"
-#: builtin/notes.c:518
+#: builtin/notes.c:519
#, c-format
msgid ""
"Cannot copy notes. Found existing notes for object %s. Use '-f' to overwrite"
" existing notes"
msgstr "Не удалось скопировать заметку. Найдена существующая заметка у объекта %s. Используйте параметр «-f» для перезаписи существующих заметок."
-#: builtin/notes.c:530
+#: builtin/notes.c:531
#, c-format
msgid "Missing notes on source object %s. Cannot copy."
msgstr "Нет заметок у исходного объекта %s. Нельзя скопировать."
-#: builtin/notes.c:582
+#: builtin/notes.c:583
#, c-format
msgid ""
"The -m/-F/-c/-C options have been deprecated for the 'edit' subcommand.\n"
"Please use 'git notes add -f -m/-F/-c/-C' instead.\n"
msgstr "Опции -m/-F/-c/-C для подкоманды «edit» устарели.\nИспользуйте вместо них «git notes add -f -m/-F/-c/-C».\n"
-#: builtin/notes.c:750
+#: builtin/notes.c:764
msgid "General options"
msgstr "Общие опции"
-#: builtin/notes.c:752
+#: builtin/notes.c:766
msgid "Merge options"
msgstr "Опции слияния"
-#: builtin/notes.c:754
+#: builtin/notes.c:768
msgid ""
"resolve notes conflicts using the given strategy "
"(manual/ours/theirs/union/cat_sort_uniq)"
msgstr "разрешить конфликты заметок с помощью указанной стратегии (manual/ours/theirs/union/cat_sort_uniq)"
-#: builtin/notes.c:756
+#: builtin/notes.c:770
msgid "Committing unmerged notes"
msgstr "Коммит не слитых заметок"
-#: builtin/notes.c:758
+#: builtin/notes.c:772
msgid "finalize notes merge by committing unmerged notes"
msgstr "завершить слияние заметок коммитом не слитых заметок"
-#: builtin/notes.c:760
+#: builtin/notes.c:774
msgid "Aborting notes merge resolution"
msgstr "Отмена разрешения слияния заметок"
-#: builtin/notes.c:762
+#: builtin/notes.c:776
msgid "abort notes merge"
msgstr "отменить слияние заметок"
-#: builtin/notes.c:857
+#: builtin/notes.c:853
+#, c-format
+msgid "A notes merge into %s is already in-progress at %s"
+msgstr "Слияние заметок в %s уже выполняется на %s"
+
+#: builtin/notes.c:880
#, c-format
msgid "Object %s has no note\n"
msgstr "У объекта %s нет заметки\n"
-#: builtin/notes.c:869
+#: builtin/notes.c:892
msgid "attempt to remove non-existent note is not an error"
msgstr "попытка удаления несуществующей заметки не является ошибкой"
-#: builtin/notes.c:872
+#: builtin/notes.c:895
msgid "read object names from the standard input"
msgstr "прочитать имена объектов из стандартного ввода"
-#: builtin/notes.c:953
+#: builtin/notes.c:976
msgid "notes-ref"
msgstr "ссылка-на-заметку"
-#: builtin/notes.c:954
+#: builtin/notes.c:977
msgid "use notes from <notes-ref>"
msgstr "использовать заметку из <ссылка-на-заметку>"
-#: builtin/notes.c:989 builtin/remote.c:1618
+#: builtin/notes.c:1012 builtin/remote.c:1588
#, c-format
msgid "Unknown subcommand: %s"
msgstr "Неизвестная подкоманда: %s"
#: builtin/pack-objects.c:28
-msgid "git pack-objects --stdout [options...] [< ref-list | < object-list]"
-msgstr "git pack-objects --stdout [опции…] [< список-ссылок | < список-объектов]"
+msgid ""
+"git pack-objects --stdout [<options>...] [< <ref-list> | < <object-list>]"
+msgstr "git pack-objects --stdout [<опции>…] [< <список-ссылок> | < <список-объектов>]"
#: builtin/pack-objects.c:29
-msgid "git pack-objects [options...] base-name [< ref-list | < object-list]"
-msgstr "git pack-objects [опции…] имя-базы [< список-ссылок | < список-объектов]"
+msgid ""
+"git pack-objects [<options>...] <base-name> [< <ref-list> | < <object-list>]"
+msgstr "git pack-objects [<опции>…] <имя-базы> [< <список-ссылок> | < <список-объектов>]"
#: builtin/pack-objects.c:175 builtin/pack-objects.c:178
#, c-format
@@ -7671,153 +8097,143 @@ msgstr "неподдерживаемая версия индекса %s"
msgid "bad index version '%s'"
msgstr "плохая версия индекса «%s»"
-#: builtin/pack-objects.c:2595
-#, c-format
-msgid "option %s does not accept negative form"
-msgstr "опция %s не принимает отрицательные значения"
-
-#: builtin/pack-objects.c:2599
-#, c-format
-msgid "unable to parse value '%s' for option %s"
-msgstr "не удалось разобрать значение «%s» для опции %s"
-
-#: builtin/pack-objects.c:2619
+#: builtin/pack-objects.c:2602
msgid "do not show progress meter"
msgstr "не выводить прогресс выполнения"
-#: builtin/pack-objects.c:2621
+#: builtin/pack-objects.c:2604
msgid "show progress meter"
msgstr "показать прогресс выполнения"
-#: builtin/pack-objects.c:2623
+#: builtin/pack-objects.c:2606
msgid "show progress meter during object writing phase"
msgstr "показать прогресс выполнения во время записи объектов"
-#: builtin/pack-objects.c:2626
+#: builtin/pack-objects.c:2609
msgid "similar to --all-progress when progress meter is shown"
msgstr "похоже на --all-progress при включенном прогрессе выполнения"
-#: builtin/pack-objects.c:2627
+#: builtin/pack-objects.c:2610
msgid "version[,offset]"
msgstr "версия[,смещение]"
-#: builtin/pack-objects.c:2628
+#: builtin/pack-objects.c:2611
msgid "write the pack index file in the specified idx format version"
msgstr "записать файл индекса пакета в указанной версии формата"
-#: builtin/pack-objects.c:2631
+#: builtin/pack-objects.c:2614
msgid "maximum size of each output pack file"
msgstr "максимальный размер каждого выходного файла пакета"
-#: builtin/pack-objects.c:2633
+#: builtin/pack-objects.c:2616
msgid "ignore borrowed objects from alternate object store"
msgstr "игнорировать чужие объекты, взятые из альтернативного хранилища объектов"
-#: builtin/pack-objects.c:2635
+#: builtin/pack-objects.c:2618
msgid "ignore packed objects"
msgstr "игнорировать упакованные объекты"
-#: builtin/pack-objects.c:2637
+#: builtin/pack-objects.c:2620
msgid "limit pack window by objects"
msgstr "ограничить окно пакета по количеству объектов"
-#: builtin/pack-objects.c:2639
+#: builtin/pack-objects.c:2622
msgid "limit pack window by memory in addition to object limit"
msgstr "дополнительно к количеству объектов ограничить окно пакета по памяти"
-#: builtin/pack-objects.c:2641
+#: builtin/pack-objects.c:2624
msgid "maximum length of delta chain allowed in the resulting pack"
msgstr "максимальная разрешенная длина цепочки дельт в результирующем пакете"
-#: builtin/pack-objects.c:2643
+#: builtin/pack-objects.c:2626
msgid "reuse existing deltas"
msgstr "использовать повторно существующие дельты"
-#: builtin/pack-objects.c:2645
+#: builtin/pack-objects.c:2628
msgid "reuse existing objects"
msgstr "использовать повторно существующие объекты"
-#: builtin/pack-objects.c:2647
+#: builtin/pack-objects.c:2630
msgid "use OFS_DELTA objects"
msgstr "использовать объекты OFS_DELTA"
-#: builtin/pack-objects.c:2649
+#: builtin/pack-objects.c:2632
msgid "use threads when searching for best delta matches"
msgstr "использовать многопоточность при поиске лучших совпадений дельт"
-#: builtin/pack-objects.c:2651
+#: builtin/pack-objects.c:2634
msgid "do not create an empty pack output"
msgstr "не создавать пустые выходные пакеты"
-#: builtin/pack-objects.c:2653
+#: builtin/pack-objects.c:2636
msgid "read revision arguments from standard input"
msgstr "прочитать аргументы редакций из стандартного ввода"
-#: builtin/pack-objects.c:2655
+#: builtin/pack-objects.c:2638
msgid "limit the objects to those that are not yet packed"
msgstr "ограничиться объектами, которые еще не упакованы"
-#: builtin/pack-objects.c:2658
+#: builtin/pack-objects.c:2641
msgid "include objects reachable from any reference"
msgstr "включить объекты, которые достижимы по любой из ссылок"
-#: builtin/pack-objects.c:2661
+#: builtin/pack-objects.c:2644
msgid "include objects referred by reflog entries"
msgstr "включить объекты, на которые ссылаются записи журнала ссылок"
-#: builtin/pack-objects.c:2664
+#: builtin/pack-objects.c:2647
msgid "include objects referred to by the index"
msgstr "включить объекты, на которые ссылается индекс"
-#: builtin/pack-objects.c:2667
+#: builtin/pack-objects.c:2650
msgid "output pack to stdout"
msgstr "вывести пакет на стандартный вывод"
-#: builtin/pack-objects.c:2669
+#: builtin/pack-objects.c:2652
msgid "include tag objects that refer to objects to be packed"
msgstr "включить объекты меток, которые ссылаются на упаковываемые объекты"
-#: builtin/pack-objects.c:2671
+#: builtin/pack-objects.c:2654
msgid "keep unreachable objects"
msgstr "сохранять ссылки на недоступные объекты"
-#: builtin/pack-objects.c:2672 parse-options.h:139
+#: builtin/pack-objects.c:2655 parse-options.h:142
msgid "time"
msgstr "время"
-#: builtin/pack-objects.c:2673
+#: builtin/pack-objects.c:2656
msgid "unpack unreachable objects newer than <time>"
msgstr "распаковать недоступные объекты, которые новее, чем <время>"
-#: builtin/pack-objects.c:2676
+#: builtin/pack-objects.c:2659
msgid "create thin packs"
msgstr "создавать тонкие пакеты"
-#: builtin/pack-objects.c:2678
+#: builtin/pack-objects.c:2661
msgid "create packs suitable for shallow fetches"
msgstr "создавать пакеты, подходящие для частичных извлечений"
-#: builtin/pack-objects.c:2680
+#: builtin/pack-objects.c:2663
msgid "ignore packs that have companion .keep file"
msgstr "игнорировать пакеты, рядом с которыми лежит .keep файл"
-#: builtin/pack-objects.c:2682
+#: builtin/pack-objects.c:2665
msgid "pack compression level"
msgstr "уровень сжатия пакета"
-#: builtin/pack-objects.c:2684
+#: builtin/pack-objects.c:2667
msgid "do not hide commits by grafts"
msgstr "не скрывать коммиты сращениями"
-#: builtin/pack-objects.c:2686
+#: builtin/pack-objects.c:2669
msgid "use a bitmap index if available to speed up counting objects"
msgstr "по возможности использовать индекс в битовых картах, для ускорения подсчета объектов"
-#: builtin/pack-objects.c:2688
+#: builtin/pack-objects.c:2671
msgid "write a bitmap index together with the pack index"
msgstr "запись индекса в битовых картах вместе с индексом пакета"
-#: builtin/pack-objects.c:2779
+#: builtin/pack-objects.c:2762
msgid "Counting objects"
msgstr "Подсчет объектов"
@@ -7845,37 +8261,169 @@ msgstr "Удаление дублирующихся объектов"
msgid "git prune [-n] [-v] [--expire <time>] [--] [<head>...]"
msgstr "git prune [-n] [-v] [--expire <время>] [--] [<имя-ветки>…]"
-#: builtin/prune.c:105 builtin/worktree.c:112
+#: builtin/prune.c:105 builtin/worktree.c:121
msgid "do not remove, show only"
msgstr "не удалять, только показать список"
-#: builtin/prune.c:106 builtin/worktree.c:113
+#: builtin/prune.c:106 builtin/worktree.c:122
msgid "report pruned objects"
msgstr "вывести список удаленных объектов"
-#: builtin/prune.c:109 builtin/worktree.c:115
+#: builtin/prune.c:109 builtin/worktree.c:124
msgid "expire objects older than <time>"
msgstr "удалить объекты старее чем <дата-окончания>"
-#: builtin/push.c:14
+#: builtin/pull.c:69
+msgid "git pull [options] [<repository> [<refspec>...]]"
+msgstr "git pull [опции] [<репозиторий> [<спецификация-ссылки>…]]"
+
+#: builtin/pull.c:113
+msgid "Options related to merging"
+msgstr "Опции, связанные со слиянием"
+
+#: builtin/pull.c:116
+msgid "incorporate changes by rebasing rather than merging"
+msgstr "забрать изменения с помощью перебазирования, а не слияния"
+
+#: builtin/pull.c:140 builtin/revert.c:105
+msgid "allow fast-forward"
+msgstr "разрешить перемотку вперед"
+
+#: builtin/pull.c:146
+msgid "verify that the named commit has a valid GPG signature"
+msgstr "проверить, что указанный коммит имеет верную электронную подпись GPG"
+
+#: builtin/pull.c:160
+msgid "Options related to fetching"
+msgstr "Опции, связанные с извлечением"
+
+#: builtin/pull.c:268
+#, c-format
+msgid "Invalid value for pull.ff: %s"
+msgstr "Неправильное значение для pull.ff: %s"
+
+#: builtin/pull.c:352
+msgid "Cannot pull with rebase: You have unstaged changes."
+msgstr "Не удалось получить с перемещением: У вас есть непроиндексированные изменения."
+
+#: builtin/pull.c:358
+msgid "Additionally, your index contains uncommitted changes."
+msgstr "К тому же, в вашем индексе есть незакоммиченные изменения."
+
+#: builtin/pull.c:360
+msgid "Cannot pull with rebase: Your index contains uncommitted changes."
+msgstr "Не удалось получить с перемещением: В вашем индексе есть незакоммиченные изменения."
+
+#: builtin/pull.c:436
+msgid ""
+"There is no candidate for rebasing against among the refs that you just "
+"fetched."
+msgstr "Нет претендентов для перемещения среди ссылок, которые вы только что получили."
+
+#: builtin/pull.c:438
+msgid ""
+"There are no candidates for merging among the refs that you just fetched."
+msgstr "Нет претендентов для слияния среди ссылок, которые вы только что получили."
+
+#: builtin/pull.c:439
+msgid ""
+"Generally this means that you provided a wildcard refspec which had no\n"
+"matches on the remote end."
+msgstr "Обычно это означает, что вы передали спецификацию ссылки с помощью шаблона и этот шаблон не совпал ни с одной из ссылок на внешнем репозитории."
+
+#: builtin/pull.c:442
+#, c-format
+msgid ""
+"You asked to pull from the remote '%s', but did not specify\n"
+"a branch. Because this is not the default configured remote\n"
+"for your current branch, you must specify a branch on the command line."
+msgstr "Вы попросили получить изменения со внешнего репозитория «%s», но не указали ветку. Так как это не репозиторий по умолчанию для вашей текущей ветки, вы должны указать ветку в командной строке."
+
+#: builtin/pull.c:447
+msgid "You are not currently on a branch."
+msgstr "Вы сейчас ни на одной из веток."
+
+#: builtin/pull.c:449 builtin/pull.c:464
+msgid "Please specify which branch you want to rebase against."
+msgstr "Пожалуйста, укажите на какую ветку вы хотите переместить изменения."
+
+#: builtin/pull.c:451 builtin/pull.c:466
+msgid "Please specify which branch you want to merge with."
+msgstr "Пожалуйста, укажите с какой веткой вы хотите слить изменения."
+
+#: builtin/pull.c:452 builtin/pull.c:467
+msgid "See git-pull(1) for details."
+msgstr "Для дополнительной информации смотрите git-pull(1)."
+
+#: builtin/pull.c:462
+msgid "There is no tracking information for the current branch."
+msgstr "У текущей ветки нет информации об отслеживании."
+
+#: builtin/pull.c:471
+#, c-format
+msgid ""
+"If you wish to set tracking information for this branch you can do so with:\n"
+"\n"
+" git branch --set-upstream-to=%s/<branch> %s\n"
+msgstr "Если вы хотите указать информацию о отслеживаемой ветке, выполните:\n\n git branch --set-upstream-to=%s/<branch> %s\n"
+
+#: builtin/pull.c:476
+#, c-format
+msgid ""
+"Your configuration specifies to merge with the ref '%s'\n"
+"from the remote, but no such ref was fetched."
+msgstr "Ваша конфигурация указывает, что нужно слить изменения со ссылкой\n«%s» из внешнего репозитория, но такая ссылка не была получена."
+
+#: builtin/pull.c:830
+msgid "Updating an unborn branch with changes added to the index."
+msgstr "Обновление еще не начавшейся ветки с изменениями, добавленными в индекс."
+
+#: builtin/pull.c:859
+#, c-format
+msgid ""
+"fetch updated the current branch head.\n"
+"fast-forwarding your working tree from\n"
+"commit %s."
+msgstr "извлечение обновило голову вашей текущей ветки.\nперемотка вашего рабочего каталога\nс коммита %s."
+
+#: builtin/pull.c:864
+#, c-format
+msgid ""
+"Cannot fast-forward your working tree.\n"
+"After making sure that you saved anything precious from\n"
+"$ git diff %s\n"
+"output, run\n"
+"$ git reset --hard\n"
+"to recover."
+msgstr "Не удалось перемотать вперёд изменения в вашем рабочем каталоге.\nПосле того, как вы убедитесь, что вы сохранили всё необходимое из вывода\n$ git diff %s\n, запустите\n$ git reset --hard\nдля восстановления исходного состояния."
+
+#: builtin/pull.c:879
+msgid "Cannot merge multiple branches into empty head."
+msgstr "Нельзя слить несколько веток в пустой указатель на коммит."
+
+#: builtin/pull.c:883
+msgid "Cannot rebase onto multiple branches."
+msgstr "Невозможно переместить над несколькими ветками."
+
+#: builtin/push.c:15
msgid "git push [<options>] [<repository> [<refspec>...]]"
msgstr "git push [<опции>] [<репозиторий> [<спецификация-ссылки>…]]"
-#: builtin/push.c:85
+#: builtin/push.c:86
msgid "tag shorthand without <tag>"
msgstr "указано сокращение tag, но не указана сама <метка>"
-#: builtin/push.c:95
+#: builtin/push.c:96
msgid "--delete only accepts plain target ref names"
msgstr "опция --delete принимает только простые целевые имена ссылок"
-#: builtin/push.c:139
+#: builtin/push.c:140
msgid ""
"\n"
"To choose either option permanently, see push.default in 'git help config'."
msgstr "\nЧтобы выбрать любую из опций на постоянной основе, смотрите push.default в «git help config»."
-#: builtin/push.c:142
+#: builtin/push.c:143
#, c-format
msgid ""
"The upstream branch of your current branch does not match\n"
@@ -7890,7 +8438,7 @@ msgid ""
"%s"
msgstr "Имя вышестоящей ветки и вашей текущей ветки различаются. Чтобы отправить изменения в вышестоящую ветку на внешнем репозитории, используйте:\n\n git push %s HEAD:%s\n\nЧтобы отправить изменения в ветку с таким же именем на внешнем репозитории, используйте:\n\n git push %s %s\n%s"
-#: builtin/push.c:157
+#: builtin/push.c:158
#, c-format
msgid ""
"You are not currently on a branch.\n"
@@ -7900,7 +8448,7 @@ msgid ""
" git push %s HEAD:<name-of-remote-branch>\n"
msgstr "Вы сейчас не находитесь ни на одной из веток.\nЧтобы отправить историю, ведущую к текущему (отделенный HEAD) состоянию, используйте\n\n git push %s HEAD:<имя-внешней-ветки>\n"
-#: builtin/push.c:171
+#: builtin/push.c:172
#, c-format
msgid ""
"The current branch %s has no upstream branch.\n"
@@ -7909,13 +8457,13 @@ msgid ""
" git push --set-upstream %s %s\n"
msgstr "Текущая ветка %s не имеет вышестоящей ветки.\nЧтобы отправить текущую ветку и установить внешнюю ветку как вышестоящую для этой ветки, используйте\n\n git push --set-upstream %s %s\n"
-#: builtin/push.c:179
+#: builtin/push.c:180
#, c-format
msgid ""
"The current branch %s has multiple upstream branches, refusing to push."
msgstr "Ваша текущая ветка %s имеет несколько вышестоящих веток, отказ в отправке изменений."
-#: builtin/push.c:182
+#: builtin/push.c:183
#, c-format
msgid ""
"You are pushing to remote '%s', which is not the upstream of\n"
@@ -7923,7 +8471,7 @@ msgid ""
"to update which remote branch."
msgstr "Вы сейчас отправляете изменения на внешний репозиторий «%s», который не является вышестоящим для вашей текущей ветки «%s», без указания того, что отправлять и в какую внешнюю ветку."
-#: builtin/push.c:205
+#: builtin/push.c:206
msgid ""
"push.default is unset; its implicit value has changed in\n"
"Git 2.0 from 'matching' to 'simple'. To squelch this message\n"
@@ -7947,11 +8495,11 @@ msgid ""
"'current' instead of 'simple' if you sometimes use older versions of Git)"
msgstr "push.default не установлен; его неявное значение было изменено в Git версии 2.0 с «matching» на «simple». Чтобы прекратить вывод этого сообщения и сохранить старое поведение, используйте:\n\n git config --global push.default matching\n\nЧтобы прекратить вывод этого сообщения и использовать новое поведение, используйте:\n\n git config --global push.default simple\n\nКогда push.default установлено в «matching», git будет отправлять изменения локальных веток в существующие внешние ветки с таким же именем.\n\nНачиная с Git версии 2.0, по умолчанию используется более консервативное поведение «simple», которое отправляет изменения текущей ветки в соответствующую внешнюю ветку, из которой «git pull» забирает изменения.\n\nСмотрите «git help config» и ищите «push.default» для дополнительной информации.\n(режим «simple» появился в Git версии 1.7.11. Используйте похожий режим «current» вместо «simple», если вы иногда используете старые версии Git)"
-#: builtin/push.c:272
+#: builtin/push.c:273
msgid "You didn't specify any refspecs to push, and push.default is \"nothing\"."
msgstr "Вы не указали спецификацию ссылки для отправки, а push.default указан как \"nothing\"."
-#: builtin/push.c:279
+#: builtin/push.c:280
msgid ""
"Updates were rejected because the tip of your current branch is behind\n"
"its remote counterpart. Integrate the remote changes (e.g.\n"
@@ -7959,7 +8507,7 @@ msgid ""
"See the 'Note about fast-forwards' in 'git push --help' for details."
msgstr "Обновления были отклонены, так как верхушка вашей текущей ветки\nпозади ее внешней части. Заберите и слейте внешние изменения \n(например, с помощью «git pull …») перед повторной попыткой отправки\nизменений.\nДля дополнительной информации смотрите «Note about fast-forwards»\nв «git push --help»."
-#: builtin/push.c:285
+#: builtin/push.c:286
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"
@@ -7967,7 +8515,7 @@ msgid ""
"See the 'Note about fast-forwards' in 'git push --help' for details."
msgstr "Обновления были отклонены, так как верхушка отправляемой ветки\nпозади ее внешней части. Переключитесь на ветку и заберите внешние\nизменения (например, с помощью «git pull …») перед повторной\nпопыткой отправки изменений.\nДля дополнительной информации смотрите «Note about fast-forwards»\nв «git push --help»."
-#: builtin/push.c:291
+#: builtin/push.c:292
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"
@@ -7976,33 +8524,33 @@ msgid ""
"See the 'Note about fast-forwards' in 'git push --help' for details."
msgstr "Обновления были отклонены, так как внешний репозиторий содержит\nизменения, которых у вас нет в вашем локальном репозитории.\nОбычно, это связанно с тем, что кто-то уже отправил изменения в \nто же место. Перед повторной отправкой ваших изменений, вам нужно\nзабрать и слить изменения из внешнего репозитория себе\n(например, с помощью «git pull …»).\nДля дополнительной информации смотрите «Note about fast-forwards»\nв «git push --help»."
-#: builtin/push.c:298
+#: builtin/push.c:299
msgid "Updates were rejected because the tag already exists in the remote."
msgstr "Обновления были отклонены, так как метка уже существует во внешнем репозитории."
-#: builtin/push.c:301
+#: builtin/push.c:302
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"
"without using the '--force' option.\n"
msgstr "Вы не можете обновить внешнюю ссылку, которая указывает на объект, не являющийся коммитом или обновить внешнюю ссылку так, чтобы она указывала на объект, не являющийся коммитом, без указания опции «--force».\n"
-#: builtin/push.c:360
+#: builtin/push.c:361
#, c-format
msgid "Pushing to %s\n"
msgstr "Отправка в %s\n"
-#: builtin/push.c:364
+#: builtin/push.c:365
#, c-format
msgid "failed to push some refs to '%s'"
msgstr "не удалось отправить некоторые ссылки в «%s»"
-#: builtin/push.c:394
+#: builtin/push.c:395
#, c-format
msgid "bad repository '%s'"
msgstr "плохой репозитория «%s»"
-#: builtin/push.c:395
+#: builtin/push.c:396
msgid ""
"No configured push destination.\n"
"Either specify the URL from the command-line or configure a remote repository using\n"
@@ -8014,108 +8562,109 @@ msgid ""
" git push <name>\n"
msgstr "Не настроена точка назначения для отправки.\nЛибо укажите URL с помощью коммандной строки, либо настройте внешний репозиторий с помощью\n\n git remote add <имя> <адрес>\n\nа затем отправьте изменения с помощью имени внешнего репозитория\n\n git push <имя>\n"
-#: builtin/push.c:410
+#: builtin/push.c:411
msgid "--all and --tags are incompatible"
msgstr "--all и --tags нельзя использовать одновременно"
-#: builtin/push.c:411
+#: builtin/push.c:412
msgid "--all can't be combined with refspecs"
msgstr "--all нельзя использовать вместе со спецификациями ссылок"
-#: builtin/push.c:416
+#: builtin/push.c:417
msgid "--mirror and --tags are incompatible"
msgstr "--mirror и --tags нельзя использовать одновременно"
-#: builtin/push.c:417
+#: builtin/push.c:418
msgid "--mirror can't be combined with refspecs"
msgstr "--mirror нельзя использовать вместе со спецификациями ссылок"
-#: builtin/push.c:422
+#: builtin/push.c:423
msgid "--all and --mirror are incompatible"
msgstr "--all и --mirror нельзя использовать одновременно"
-#: builtin/push.c:502
+#: builtin/push.c:539
msgid "repository"
msgstr "репозиторий"
-#: builtin/push.c:503
+#: builtin/push.c:540 builtin/send-pack.c:161
msgid "push all refs"
msgstr "отправить все ссылки"
-#: builtin/push.c:504
+#: builtin/push.c:541 builtin/send-pack.c:163
msgid "mirror all refs"
msgstr "сделать зеркало всех ссылок"
-#: builtin/push.c:506
+#: builtin/push.c:543
msgid "delete refs"
msgstr "удалить ссылки"
-#: builtin/push.c:507
+#: builtin/push.c:544
msgid "push tags (can't be used with --all or --mirror)"
msgstr "отправить метки (нельзя использовать вместе с --all или --mirror)"
-#: builtin/push.c:510
+#: builtin/push.c:547 builtin/send-pack.c:164
msgid "force updates"
msgstr "принудительное обновление"
-#: builtin/push.c:512
+#: builtin/push.c:549 builtin/send-pack.c:175
msgid "refname>:<expect"
msgstr "имя-ссылки>:<ожидается"
-#: builtin/push.c:513
+#: builtin/push.c:550 builtin/send-pack.c:176
msgid "require old value of ref to be at this value"
msgstr "требовать, чтобы старое значение ссылки было ожидаемым"
-#: builtin/push.c:516
+#: builtin/push.c:553
msgid "control recursive pushing of submodules"
msgstr "управление рекурсивной отправкой подмодулей"
-#: builtin/push.c:518
+#: builtin/push.c:555 builtin/send-pack.c:169
msgid "use thin pack"
msgstr "использовать тонкие пакеты"
-#: builtin/push.c:519 builtin/push.c:520
+#: builtin/push.c:556 builtin/push.c:557 builtin/send-pack.c:158
+#: builtin/send-pack.c:159
msgid "receive pack program"
msgstr "путь к программе упаковки на сервере"
-#: builtin/push.c:521
+#: builtin/push.c:558
msgid "set upstream for git pull/status"
msgstr "установить вышестоящую ветку для git pull/status"
-#: builtin/push.c:524
+#: builtin/push.c:561
msgid "prune locally removed refs"
msgstr "почистить локально удаленные ссылки"
-#: builtin/push.c:526
+#: builtin/push.c:563
msgid "bypass pre-push hook"
msgstr "пропустить перехватчик перед-отправкой"
-#: builtin/push.c:527
+#: builtin/push.c:564
msgid "push missing but relevant tags"
msgstr "отправить пропущенные, но нужные метки"
-#: builtin/push.c:529
+#: builtin/push.c:567 builtin/send-pack.c:166
msgid "GPG sign the push"
msgstr "подписать отправку с помощью GPG"
-#: builtin/push.c:530
+#: builtin/push.c:569 builtin/send-pack.c:170
msgid "request atomic transaction on remote side"
msgstr "запросить выполнение атомарной транзакции на внешней стороне"
-#: builtin/push.c:539
+#: builtin/push.c:579
msgid "--delete is incompatible with --all, --mirror and --tags"
msgstr "--delete несовместимо с --all, --mirror и --tags"
-#: builtin/push.c:541
+#: builtin/push.c:581
msgid "--delete doesn't make sense without any refs"
msgstr "--delete не имеет смысла без указания ссылок"
#: builtin/read-tree.c:37
msgid ""
-"git read-tree [[-m [--trivial] [--aggressive] | --reset | --prefix=<prefix>]"
+"git read-tree [(-m [--trivial] [--aggressive] | --reset | --prefix=<prefix>)"
" [-u [--exclude-per-directory=<gitignore>] | -i]] [--no-sparse-checkout] "
"[--index-output=<file>] (--empty | <tree-ish1> [<tree-ish2> [<tree-ish3>]])"
-msgstr "git read-tree [[-m [--trivial] [--aggressive] | --reset | --prefix=<префикс>] [-u [--exclude-per-directory=<gitignore>] | -i]] [--no-sparse-checkout] [--index-output=<файл>] (--empty | <указатель-дерева-1> [<указатель-дерева-2> [<указатель-дерева-3>]])"
+msgstr "git read-tree [(-m [--trivial] [--aggressive] | --reset | --prefix=<префикс>) [-u [--exclude-per-directory=<gitignore>] | -i]] [--no-sparse-checkout] [--index-output=<файл>] (--empty | <указатель-дерева-1> [<указатель-дерева-2> [<указатель-дерева-3>]])"
#: builtin/read-tree.c:110
msgid "write resulting index to <file>"
@@ -8181,12 +8730,12 @@ msgstr "пропустить применение фильтра частичн
msgid "debug unpack-trees"
msgstr "отладка unpack-trees"
-#: builtin/reflog.c:430
+#: builtin/reflog.c:432
#, c-format
-msgid "%s' for '%s' is not a valid timestamp"
+msgid "'%s' for '%s' is not a valid timestamp"
msgstr "«%s» для «%s» не является допустимой меткой даты/времени"
-#: builtin/reflog.c:547 builtin/reflog.c:552
+#: builtin/reflog.c:549 builtin/reflog.c:554
#, c-format
msgid "'%s' is not a valid timestamp"
msgstr "«%s» не является допустимой меткой даты/времени"
@@ -8318,12 +8867,12 @@ msgstr "указание мастер ветки не имеет смысла с
msgid "specifying branches to track makes sense only with fetch mirrors"
msgstr "указание отслеживаемых веток имеет смысл только при зеркальном извлечении"
-#: builtin/remote.c:187 builtin/remote.c:640
+#: builtin/remote.c:187 builtin/remote.c:637
#, c-format
msgid "remote %s already exists."
msgstr "внешний репозиторий %s уже существует"
-#: builtin/remote.c:191 builtin/remote.c:644
+#: builtin/remote.c:191 builtin/remote.c:641
#, c-format
msgid "'%s' is not a valid remote name"
msgstr "«%s» не является допустимым именем внешнего репозитория."
@@ -8346,27 +8895,27 @@ msgstr "(соответствующая)"
msgid "(delete)"
msgstr "(удаленная)"
-#: builtin/remote.c:589 builtin/remote.c:595 builtin/remote.c:601
+#: builtin/remote.c:588 builtin/remote.c:594 builtin/remote.c:600
#, c-format
msgid "Could not append '%s' to '%s'"
msgstr "Не удалось добавить «%s» к «%s»"
-#: builtin/remote.c:633 builtin/remote.c:792 builtin/remote.c:892
+#: builtin/remote.c:630 builtin/remote.c:769 builtin/remote.c:869
#, c-format
msgid "No such remote: %s"
msgstr "Нет такого внешнего репозитория: %s"
-#: builtin/remote.c:650
+#: builtin/remote.c:647
#, c-format
msgid "Could not rename config section '%s' to '%s'"
msgstr "Не удалось переименовать секцию конфигурации с «%s» на «%s»"
-#: builtin/remote.c:656 builtin/remote.c:844
+#: builtin/remote.c:653 builtin/remote.c:821
#, c-format
msgid "Could not remove config section '%s'"
msgstr "Не удалось удалить секцию файла конфигурации «%s»"
-#: builtin/remote.c:671
+#: builtin/remote.c:668
#, c-format
msgid ""
"Not updating non-default fetch refspec\n"
@@ -8374,32 +8923,27 @@ msgid ""
"\tPlease update the configuration manually if necessary."
msgstr "Не обновляю нестандартную спецификацию ссылки для извлечения\n\t%s\n\tПожалуйста, если требуется, обновите конфигурацию вручную."
-#: builtin/remote.c:677
+#: builtin/remote.c:674
#, c-format
msgid "Could not append '%s'"
msgstr "Не удалось добавить «%s»"
-#: builtin/remote.c:688
+#: builtin/remote.c:685
#, c-format
msgid "Could not set '%s'"
msgstr "Не удалось установить «%s»"
-#: builtin/remote.c:710
+#: builtin/remote.c:707
#, c-format
msgid "deleting '%s' failed"
msgstr "не удалось удалить «%s»"
-#: builtin/remote.c:744
+#: builtin/remote.c:741
#, c-format
msgid "creating '%s' failed"
msgstr "не удалось создать «%s»"
-#: builtin/remote.c:763
-#, c-format
-msgid "Could not remove branch %s"
-msgstr "Не удалось удалить ветку «%s»"
-
-#: builtin/remote.c:830
+#: builtin/remote.c:807
msgid ""
"Note: A branch outside the refs/remotes/ hierarchy was not removed;\n"
"to delete it, use:"
@@ -8411,125 +8955,125 @@ msgstr[1] "Примечание: Некоторые ветки вне иерар
msgstr[2] "Примечание: Некоторые ветки вне иерархии refs/remotes/ не будут удалены;\nчтобы удалить их, используйте:"
msgstr[3] "Примечание: Некоторые ветки вне иерархии refs/remotes/ не будут удалены;\nчтобы удалить их, используйте:"
-#: builtin/remote.c:945
+#: builtin/remote.c:922
#, c-format
msgid " new (next fetch will store in remotes/%s)"
msgstr " новая (следующее извлечение сохранит ее в remotes/%s)"
-#: builtin/remote.c:948
+#: builtin/remote.c:925
msgid " tracked"
msgstr " отслеживается"
-#: builtin/remote.c:950
+#: builtin/remote.c:927
msgid " stale (use 'git remote prune' to remove)"
msgstr " недействительна (используйте «git remote prune», чтобы удалить)"
-#: builtin/remote.c:952
+#: builtin/remote.c:929
msgid " ???"
msgstr " ???"
-#: builtin/remote.c:993
+#: builtin/remote.c:970
#, c-format
msgid "invalid branch.%s.merge; cannot rebase onto > 1 branch"
msgstr "неправильный параметр конфигурации branch.%s.merge; невозможно переместить более чем над 1 веткой"
-#: builtin/remote.c:1000
+#: builtin/remote.c:977
#, c-format
msgid "rebases onto remote %s"
msgstr "будет перемещена над внешней веткой %s"
-#: builtin/remote.c:1003
+#: builtin/remote.c:980
#, c-format
msgid " merges with remote %s"
msgstr " будет слита с внешней веткой %s"
-#: builtin/remote.c:1004
+#: builtin/remote.c:981
msgid " and with remote"
msgstr " и с внешней веткой"
-#: builtin/remote.c:1006
+#: builtin/remote.c:983
#, c-format
msgid "merges with remote %s"
msgstr "будет слита с внешней веткой %s"
-#: builtin/remote.c:1007
+#: builtin/remote.c:984
msgid " and with remote"
msgstr " и с внешней веткой"
-#: builtin/remote.c:1053
+#: builtin/remote.c:1030
msgid "create"
msgstr "создана"
-#: builtin/remote.c:1056
+#: builtin/remote.c:1033
msgid "delete"
msgstr "удалена"
-#: builtin/remote.c:1060
+#: builtin/remote.c:1037
msgid "up to date"
msgstr "уже актуальна"
-#: builtin/remote.c:1063
+#: builtin/remote.c:1040
msgid "fast-forwardable"
msgstr "возможна перемотка вперед"
-#: builtin/remote.c:1066
+#: builtin/remote.c:1043
msgid "local out of date"
msgstr "локальная ветка устарела"
-#: builtin/remote.c:1073
+#: builtin/remote.c:1050
#, c-format
msgid " %-*s forces to %-*s (%s)"
msgstr " %-*s будет принудительно отправлена в %-*s (%s)"
-#: builtin/remote.c:1076
+#: builtin/remote.c:1053
#, c-format
msgid " %-*s pushes to %-*s (%s)"
msgstr " %-*s будет отправлена в %-*s (%s)"
-#: builtin/remote.c:1080
+#: builtin/remote.c:1057
#, c-format
msgid " %-*s forces to %s"
msgstr " %-*s будет принудительно отправлена в %s"
-#: builtin/remote.c:1083
+#: builtin/remote.c:1060
#, c-format
msgid " %-*s pushes to %s"
msgstr " %-*s будет отправлена в %s"
-#: builtin/remote.c:1151
+#: builtin/remote.c:1128
msgid "do not query remotes"
msgstr "не опрашивать внешние репозитории"
-#: builtin/remote.c:1178
+#: builtin/remote.c:1155
#, c-format
msgid "* remote %s"
msgstr "* внешний репозиторий %s"
-#: builtin/remote.c:1179
+#: builtin/remote.c:1156
#, c-format
msgid " Fetch URL: %s"
msgstr " URL для извлечения: %s"
-#: builtin/remote.c:1180 builtin/remote.c:1331
+#: builtin/remote.c:1157 builtin/remote.c:1308
msgid "(no URL)"
msgstr "(нет URL)"
-#: builtin/remote.c:1189 builtin/remote.c:1191
+#: builtin/remote.c:1166 builtin/remote.c:1168
#, c-format
msgid " Push URL: %s"
msgstr " URL для отправки: %s"
-#: builtin/remote.c:1193 builtin/remote.c:1195 builtin/remote.c:1197
+#: builtin/remote.c:1170 builtin/remote.c:1172 builtin/remote.c:1174
#, c-format
msgid " HEAD branch: %s"
msgstr " HEAD ветка: %s"
-#: builtin/remote.c:1199
+#: builtin/remote.c:1176
#, c-format
msgid " HEAD branch (remote HEAD is ambiguous, may be one of the following):\n"
msgstr " HEAD ветка (HEAD внешнего репозитория неоднозначный, может быть одним из):\n"
-#: builtin/remote.c:1211
+#: builtin/remote.c:1188
#, c-format
msgid " Remote branch:%s"
msgid_plural " Remote branches:%s"
@@ -8538,11 +9082,11 @@ msgstr[1] " Внешние ветки:%s"
msgstr[2] " Внешние ветки:%s"
msgstr[3] " Внешние ветки:%s"
-#: builtin/remote.c:1214 builtin/remote.c:1241
+#: builtin/remote.c:1191 builtin/remote.c:1218
msgid " (status not queried)"
msgstr " (статус не запрошен)"
-#: builtin/remote.c:1223
+#: builtin/remote.c:1200
msgid " Local branch configured for 'git pull':"
msgid_plural " Local branches configured for 'git pull':"
msgstr[0] " Локальная ветка, настроенная для «git pull»:"
@@ -8550,11 +9094,11 @@ msgstr[1] " Локальные ветки, настроенные для «git
msgstr[2] " Локальные ветки, настроенные для «git pull»:"
msgstr[3] " Локальные ветки, настроенные для «git pull»:"
-#: builtin/remote.c:1231
+#: builtin/remote.c:1208
msgid " Local refs will be mirrored by 'git push'"
msgstr " Локальные ссылки, зеркалируемые с помощью «git push»"
-#: builtin/remote.c:1238
+#: builtin/remote.c:1215
#, c-format
msgid " Local ref configured for 'git push'%s:"
msgid_plural " Local refs configured for 'git push'%s:"
@@ -8563,115 +9107,115 @@ msgstr[1] " Локальные ссылки, настроенные для «gi
msgstr[2] " Локальные ссылки, настроенные для «git push»%s:"
msgstr[3] " Локальные ссылки, настроенные для «git push»%s:"
-#: builtin/remote.c:1259
+#: builtin/remote.c:1236
msgid "set refs/remotes/<name>/HEAD according to remote"
msgstr "установить refs/remotes/<имя>/HEAD в зависимости от внешнего репозитория"
-#: builtin/remote.c:1261
+#: builtin/remote.c:1238
msgid "delete refs/remotes/<name>/HEAD"
msgstr "удалить refs/remotes/<имя>/HEAD"
-#: builtin/remote.c:1276
+#: builtin/remote.c:1253
msgid "Cannot determine remote HEAD"
msgstr "Не удалось определить внешний HEAD"
-#: builtin/remote.c:1278
+#: builtin/remote.c:1255
msgid "Multiple remote HEAD branches. Please choose one explicitly with:"
msgstr "Несколько внешних HEAD веток. Укажите явно одну из них:"
-#: builtin/remote.c:1288
+#: builtin/remote.c:1265
#, c-format
msgid "Could not delete %s"
msgstr "Не удалось удалить %s"
-#: builtin/remote.c:1296
+#: builtin/remote.c:1273
#, c-format
msgid "Not a valid ref: %s"
msgstr "Неправильная ссылка: %s"
-#: builtin/remote.c:1298
+#: builtin/remote.c:1275
#, c-format
msgid "Could not setup %s"
msgstr "Не удалось настроить %s"
-#: builtin/remote.c:1316
+#: builtin/remote.c:1293
#, c-format
msgid " %s will become dangling!"
msgstr " %s будет висящей веткой!"
-#: builtin/remote.c:1317
+#: builtin/remote.c:1294
#, c-format
msgid " %s has become dangling!"
msgstr " %s стала висящей веткой!"
-#: builtin/remote.c:1327
+#: builtin/remote.c:1304
#, c-format
msgid "Pruning %s"
msgstr "Удаление %s"
-#: builtin/remote.c:1328
+#: builtin/remote.c:1305
#, c-format
msgid "URL: %s"
msgstr "URL: %s"
-#: builtin/remote.c:1351
+#: builtin/remote.c:1321
#, c-format
msgid " * [would prune] %s"
msgstr " * [будет удалена] %s"
-#: builtin/remote.c:1354
+#: builtin/remote.c:1324
#, c-format
msgid " * [pruned] %s"
msgstr " * [удалена] %s"
-#: builtin/remote.c:1399
+#: builtin/remote.c:1369
msgid "prune remotes after fetching"
msgstr "почистить внешние репозитории после извлечения"
-#: builtin/remote.c:1465 builtin/remote.c:1539
+#: builtin/remote.c:1435 builtin/remote.c:1509
#, c-format
msgid "No such remote '%s'"
msgstr "Нет такого внешнего репозитория «%s»"
-#: builtin/remote.c:1485
+#: builtin/remote.c:1455
msgid "add branch"
msgstr "добавить ветку"
-#: builtin/remote.c:1492
+#: builtin/remote.c:1462
msgid "no remote specified"
msgstr "не указан внешний репозиторий"
-#: builtin/remote.c:1514
+#: builtin/remote.c:1484
msgid "manipulate push URLs"
msgstr "управление URL отправки"
-#: builtin/remote.c:1516
+#: builtin/remote.c:1486
msgid "add URL"
msgstr "добавить URL"
-#: builtin/remote.c:1518
+#: builtin/remote.c:1488
msgid "delete URLs"
msgstr "удалить URL"
-#: builtin/remote.c:1525
+#: builtin/remote.c:1495
msgid "--add --delete doesn't make sense"
msgstr "--add нельзя использовать одновременно с --delete"
-#: builtin/remote.c:1565
+#: builtin/remote.c:1535
#, c-format
msgid "Invalid old URL pattern: %s"
msgstr "Неправильный шаблон старого URL: %s"
-#: builtin/remote.c:1573
+#: builtin/remote.c:1543
#, c-format
msgid "No such URL found: %s"
msgstr "Не найдены совпадения URL: %s"
-#: builtin/remote.c:1575
+#: builtin/remote.c:1545
msgid "Will not delete all non-push URLs"
msgstr "Нельзя удалить все URL не-отправки"
-#: builtin/remote.c:1589
+#: builtin/remote.c:1559
msgid "be verbose; must be placed before a subcommand"
msgstr "быть многословнее; должно стоять перед подкомандой"
@@ -8743,7 +9287,7 @@ msgstr "максимальный размер каждого из файлов
msgid "repack objects in packs marked with .keep"
msgstr "переупаковать объекты в пакеты, помеченные файлом .keep"
-#: builtin/repack.c:377
+#: builtin/repack.c:378
#, c-format
msgid "removing '%s' failed"
msgstr "не удалось удалить «%s»"
@@ -8925,11 +9469,6 @@ msgstr "записать только факт того, что удаленны
msgid "Failed to resolve '%s' as a valid revision."
msgstr "Не удалось распознать «%s» как действительную редакцию."
-#: builtin/reset.c:308 builtin/reset.c:316
-#, c-format
-msgid "Could not parse object '%s'."
-msgstr "Не удалось разобрать объект «%s»."
-
#: builtin/reset.c:313
#, c-format
msgid "Failed to resolve '%s' as a valid tree."
@@ -8970,6 +9509,10 @@ msgstr "Не удалось сбросить файл индекса на ред
msgid "Could not write new index file."
msgstr "Не удалось записать новый файл индекса."
+#: builtin/rev-list.c:354
+msgid "rev-list does not support display of notes"
+msgstr "rev-list не поддерживает отображение заметок"
+
#: builtin/rev-parse.c:361
msgid "git rev-parse --parseopt [<options>] -- [<args>...]"
msgstr "git rev-parse --parseopt [<опции>] -- [<аргументы>…]"
@@ -8986,7 +9529,7 @@ msgstr "остановить разбор после первого аргуме
msgid "output in stuck long form"
msgstr "выводить аргументы в длинном формате"
-#: builtin/rev-parse.c:499
+#: builtin/rev-parse.c:502
msgid ""
"git rev-parse --parseopt [<options>] -- [<args>...]\n"
" or: git rev-parse --sq-quote [<arg>...]\n"
@@ -9056,10 +9599,6 @@ msgstr "опция для стратегии слияния"
msgid "append commit name"
msgstr "добавить имя коммита"
-#: builtin/revert.c:105
-msgid "allow fast-forward"
-msgstr "разрешить перемотку вперед"
-
#: builtin/revert.c:106
msgid "preserve initially empty commits"
msgstr "сохранить изначально пустые коммиты"
@@ -9180,6 +9719,28 @@ msgstr "не удаляю рекурсивно «%s» без указания о
msgid "git rm: unable to remove %s"
msgstr "git rm: не удалось удалить %s"
+#: builtin/send-pack.c:18
+msgid ""
+"git send-pack [--all | --mirror] [--dry-run] [--force] [--receive-pack=<git-receive-pack>] [--verbose] [--thin] [--atomic] [<host>:]<directory> [<ref>...]\n"
+" --all and explicit <ref> specification are mutually exclusive."
+msgstr "git send-pack [--all | --mirror] [--dry-run] [--force] [--receive-pack=<git-receive-pack>] [--verbose] [--thin] [--atomic] [<сервер>:]<каталог> [<ссылка>…]\n --all и явная спецификация <ссылки> взаимно исключающие."
+
+#: builtin/send-pack.c:160
+msgid "remote name"
+msgstr "имя внешнего репозитория"
+
+#: builtin/send-pack.c:171
+msgid "use stateless RPC protocol"
+msgstr "протокол без сохранения состояния для RPC"
+
+#: builtin/send-pack.c:172
+msgid "read refs from stdin"
+msgstr "прочитать ссылки из стандартного ввода"
+
+#: builtin/send-pack.c:173
+msgid "print status from remote helper"
+msgstr "вывести статус от скрипта внешнего сервера"
+
#: builtin/shortlog.c:13
msgid "git shortlog [<options>] [<revision-range>] [[--] [<path>...]]"
msgstr "git shortlog [<опции>] [<диапазон-редакций>] [[--] [<путь>…]]"
@@ -9292,8 +9853,8 @@ msgid ""
msgstr "git show-ref [-q | --quiet] [--verify] [--head] [-d | --dereference] [-s | --hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [<шаблон>…]"
#: builtin/show-ref.c:11
-msgid "git show-ref --exclude-existing[=pattern] < ref-list"
-msgstr "git show-ref --exclude-existing[=шаблон] < ref-list"
+msgid "git show-ref --exclude-existing[=<pattern>] < <ref-list>"
+msgstr "git show-ref --exclude-existing[=<шаблон>] < <список-ссылок>"
#: builtin/show-ref.c:170
msgid "only show tags (can be combined with heads)"
@@ -9347,11 +9908,11 @@ msgstr "удалить символьные ссылки"
msgid "shorten ref output"
msgstr "укороченный вывод ссылок"
-#: builtin/symbolic-ref.c:43 builtin/update-ref.c:358
+#: builtin/symbolic-ref.c:43 builtin/update-ref.c:362
msgid "reason"
msgstr "причина"
-#: builtin/symbolic-ref.c:43 builtin/update-ref.c:358
+#: builtin/symbolic-ref.c:43 builtin/update-ref.c:362
msgid "reason of the update"
msgstr "причина обновления"
@@ -9462,110 +10023,114 @@ msgstr "при указании параметра «points-at» требует
msgid "malformed object name '%s'"
msgstr "Поврежденное имя объекта «%s»"
-#: builtin/tag.c:589
+#: builtin/tag.c:590
msgid "list tag names"
msgstr "список названий меток"
-#: builtin/tag.c:591
+#: builtin/tag.c:592
msgid "print <n> lines of each tag message"
msgstr "печатать <n> строк описания от каждой метки"
-#: builtin/tag.c:593
+#: builtin/tag.c:594
msgid "delete tags"
msgstr "удалить метки"
-#: builtin/tag.c:594
+#: builtin/tag.c:595
msgid "verify tags"
msgstr "проверить метки"
-#: builtin/tag.c:596
+#: builtin/tag.c:597
msgid "Tag creation options"
msgstr "Настройки создания метки"
-#: builtin/tag.c:598
+#: builtin/tag.c:599
msgid "annotated tag, needs a message"
msgstr "для аннотированной метки нужно сообщение"
-#: builtin/tag.c:600
+#: builtin/tag.c:601
msgid "tag message"
msgstr "описание метки"
-#: builtin/tag.c:602
+#: builtin/tag.c:603
msgid "annotated and GPG-signed tag"
msgstr "аннотированная и подписанная с помощью GPG метка"
-#: builtin/tag.c:606
+#: builtin/tag.c:607
msgid "use another key to sign the tag"
msgstr "использовать другой ключ для подписания метки"
-#: builtin/tag.c:607
+#: builtin/tag.c:608
msgid "replace the tag if exists"
msgstr "замена метки, если она существует"
-#: builtin/tag.c:609
+#: builtin/tag.c:609 builtin/update-ref.c:368
+msgid "create a reflog"
+msgstr "создать журнал ссылок"
+
+#: builtin/tag.c:611
msgid "Tag listing options"
msgstr "Настройки вывода списка меток"
-#: builtin/tag.c:610
+#: builtin/tag.c:612
msgid "show tag list in columns"
msgstr "показать список меток по столбцам"
-#: builtin/tag.c:612
+#: builtin/tag.c:614
msgid "sort tags"
msgstr "отсортировать метки"
-#: builtin/tag.c:617 builtin/tag.c:623
+#: builtin/tag.c:619 builtin/tag.c:625
msgid "print only tags that contain the commit"
msgstr "вывод только меток, которые содержат коммит"
-#: builtin/tag.c:629
+#: builtin/tag.c:631
msgid "print only tags of the object"
msgstr "вывод только меток, определенного объекта"
-#: builtin/tag.c:655
+#: builtin/tag.c:657
msgid "--column and -n are incompatible"
msgstr "--column и -n нельзя использовать одновременно"
-#: builtin/tag.c:667
+#: builtin/tag.c:669
msgid "--sort and -n are incompatible"
msgstr "--sort и -n нельзя использовать одновременно"
-#: builtin/tag.c:674
+#: builtin/tag.c:676
msgid "-n option is only allowed with -l."
msgstr "опцию -n можно использовать только вместе с -l."
-#: builtin/tag.c:676
+#: builtin/tag.c:678
msgid "--contains option is only allowed with -l."
msgstr "опцию --contains можно использовать только вместе с -l."
-#: builtin/tag.c:678
+#: builtin/tag.c:680
msgid "--points-at option is only allowed with -l."
msgstr "опцию --points-at можно использовать только вместе с -l."
-#: builtin/tag.c:686
+#: builtin/tag.c:688
msgid "only one -F or -m option is allowed."
msgstr "-F и -m нельзя использовать одновременно."
-#: builtin/tag.c:706
+#: builtin/tag.c:708
msgid "too many params"
msgstr "передано слишком много параметров"
-#: builtin/tag.c:712
+#: builtin/tag.c:714
#, c-format
msgid "'%s' is not a valid tag name."
msgstr "«%s» не является допустимым именем метки."
-#: builtin/tag.c:717
+#: builtin/tag.c:719
#, c-format
msgid "tag '%s' already exists"
msgstr "метка «%s» уже существует"
-#: builtin/tag.c:741
+#: builtin/tag.c:744
#, c-format
msgid "Updated tag '%s' (was %s)\n"
msgstr "Метка «%s» обновлена (была %s)\n"
-#: builtin/unpack-objects.c:489
+#: builtin/unpack-objects.c:490
msgid "Unpacking objects"
msgstr "Распаковка объектов"
@@ -9763,19 +10328,19 @@ msgstr "git update-ref [<опции>] <имя-ссылки> <новое-зн
msgid "git update-ref [<options>] --stdin [-z]"
msgstr "git update-ref [<опции>] --stdin [-z]"
-#: builtin/update-ref.c:359
+#: builtin/update-ref.c:363
msgid "delete the reference"
msgstr "удалить ссылку"
-#: builtin/update-ref.c:361
+#: builtin/update-ref.c:365
msgid "update <refname> not the one it points to"
msgstr "обновить <имя-ссылки> а не то, на что она указывает"
-#: builtin/update-ref.c:362
+#: builtin/update-ref.c:366
msgid "stdin has NUL-terminated arguments"
msgstr "ввод отделенный НУЛЕВЫМИ символами"
-#: builtin/update-ref.c:363
+#: builtin/update-ref.c:367
msgid "read updates from stdin"
msgstr "прочитать обновления из стандартного ввода"
@@ -9791,10 +10356,14 @@ msgstr "обновить информацию о серверах с нуля"
msgid "git verify-commit [-v | --verbose] <commit>..."
msgstr "git verify-commit [-v | --verbose] <коммит>…"
-#: builtin/verify-commit.c:75
+#: builtin/verify-commit.c:72
msgid "print commit contents"
msgstr "вывести содержимое коммита"
+#: builtin/verify-commit.c:73 builtin/verify-tag.c:84
+msgid "print raw gpg status output"
+msgstr "выводить сырой вывод статуса от gpg"
+
#: builtin/verify-pack.c:54
msgid "git verify-pack [-v | --verbose] [-s | --stat-only] <pack>..."
msgstr "git verify-pack [-v | --verbose] [-s | --stat-only] <пакет>…"
@@ -9811,86 +10380,82 @@ msgstr "вывести только статистику"
msgid "git verify-tag [-v | --verbose] <tag>..."
msgstr "git verify-tag [-v | --verbose] <метка>…"
-#: builtin/verify-tag.c:73
+#: builtin/verify-tag.c:83
msgid "print tag contents"
msgstr "вывести содержимое метки"
-#: builtin/worktree.c:11
+#: builtin/worktree.c:13
msgid "git worktree add [<options>] <path> <branch>"
msgstr "git worktree add [<опции>] <путь> <ветка>"
-#: builtin/worktree.c:12
+#: builtin/worktree.c:14
msgid "git worktree prune [<options>]"
msgstr "git worktree prune [<опции>]"
-#: builtin/worktree.c:27
+#: builtin/worktree.c:36
#, c-format
msgid "Removing worktrees/%s: not a valid directory"
msgstr "Удаление рабочих каталогов/%s: не является каталогом"
-#: builtin/worktree.c:33
+#: builtin/worktree.c:42
#, c-format
msgid "Removing worktrees/%s: gitdir file does not exist"
msgstr "Удаление рабочих каталогов/%s: файл gitdir не существует"
-#: builtin/worktree.c:38
+#: builtin/worktree.c:47
#, c-format
msgid "Removing worktrees/%s: unable to read gitdir file (%s)"
msgstr "Удаление рабочих каталогов/%s: не удалось прочитать файл gitdir (%s)"
-#: builtin/worktree.c:49
+#: builtin/worktree.c:58
#, c-format
msgid "Removing worktrees/%s: invalid gitdir file"
msgstr "Удаление рабочих каталогов/%s: недействительный файл gitdir"
-#: builtin/worktree.c:65
+#: builtin/worktree.c:74
#, c-format
msgid "Removing worktrees/%s: gitdir file points to non-existent location"
msgstr "Удаление рабочих каталогов/%s: gitdir указывает на несуществующее расположение"
-#: builtin/worktree.c:100
+#: builtin/worktree.c:109
#, c-format
msgid "failed to remove: %s"
msgstr "не удалось удалить: %s"
-#: builtin/worktree.c:186
+#: builtin/worktree.c:198
#, c-format
msgid "'%s' already exists"
msgstr "«%s» уже существует"
-#: builtin/worktree.c:207
+#: builtin/worktree.c:232
#, c-format
msgid "could not create directory of '%s'"
msgstr "не удалось создать каталог «%s»"
-#: builtin/worktree.c:241
-msgid "unable to resolve HEAD"
-msgstr "не удалось определить HEAD"
-
-#: builtin/worktree.c:249
+#: builtin/worktree.c:268
#, c-format
-msgid "Enter %s (identifier %s)"
-msgstr "Вход в %s (идентификатор %s)"
+msgid "Preparing %s (identifier %s)"
+msgstr "Подготовка %s (идентификатор %s)"
-#: builtin/worktree.c:281
+#: builtin/worktree.c:316
msgid "checkout <branch> even if already checked out in other worktree"
msgstr "перейти на <ветка> даже если она уже активна в другом рабочесм каталоге"
-#: builtin/worktree.c:283
+#: builtin/worktree.c:318
msgid "create a new branch"
msgstr "создать новую ветку"
-#: builtin/worktree.c:285
+#: builtin/worktree.c:320
msgid "create or reset a branch"
msgstr "создать или перейти на ветку"
-#: builtin/worktree.c:286
+#: builtin/worktree.c:321
msgid "detach HEAD at named commit"
msgstr "отсоединить HEAD на указанном коммите"
-#: builtin/worktree.c:292
-msgid "-b and -B are mutually exclusive"
-msgstr "-b и -B нельзя использовать одновременно"
+#: builtin/worktree.c:328
+msgid "-b, -B, and --detach are mutually exclusive"
+msgstr "-b, -B и --detach нельзя использовать одновременно"
#: builtin/write-tree.c:13
msgid "git write-tree [--missing-ok] [--prefix=<prefix>/]"
@@ -9908,7 +10473,7 @@ msgstr "вывести объект дерева для подкаталога
msgid "only useful for debugging"
msgstr "используется только при отладке"
-#: credential-cache--daemon.c:267
+#: credential-cache--daemon.c:255
msgid "print debugging messages to stderr"
msgstr "вывод отладочных сообщений на stderr"
@@ -9919,465 +10484,284 @@ msgid ""
"to read about a specific subcommand or concept."
msgstr "«git help -а» и «git help -g» выводит список доступных подкоманд и\nнекоторые руководства по темам. Запустите «git help <команда>» или\n«git help <термин>», чтобы прочесть о конкретных подкоманде или теме."
-#: common-cmds.h:10
+#: common-cmds.h:9
msgid "start a working area (see also: git help tutorial)"
msgstr "создать рабочую область (смотрите также: git help tutorial)"
-#: common-cmds.h:11
+#: common-cmds.h:10
msgid "work on the current change (see also: git help everyday)"
msgstr "работа с текущими изменениями (смотрите также: git help everyday)"
-#: common-cmds.h:12
+#: common-cmds.h:11
msgid "examine the history and state (see also: git help revisions)"
msgstr "просмотр истории и текущего состояния (смотрите также: git help revisions)"
-#: common-cmds.h:13
+#: common-cmds.h:12
msgid "grow, mark and tweak your common history"
msgstr "выращивание, отметка и настройка вашей общей истории"
-#: common-cmds.h:14
+#: common-cmds.h:13
msgid "collaborate (see also: git help workflows)"
msgstr "совместная работа (смотрите также: git help workflows)"
-#: common-cmds.h:18
+#: common-cmds.h:17
msgid "Add file contents to the index"
msgstr "Добавление содержимого файла в индекс"
-#: common-cmds.h:19
-msgid "Find by binary search the change that introduced a bug"
-msgstr "Двоичный поиск изменения, которое вносит ошибку"
+#: common-cmds.h:18
+msgid "Use binary search to find the commit that introduced a bug"
+msgstr "Использовать двоичный поиск изменения, которое вносит ошибку"
-#: common-cmds.h:20
+#: common-cmds.h:19
msgid "List, create, or delete branches"
msgstr "Вывод списка, создание или удаление веток"
-#: common-cmds.h:21
+#: common-cmds.h:20
msgid "Switch branches or restore working tree files"
msgstr "Переключение веток или восстановление файлов в рабочем каталоге"
-#: common-cmds.h:22
+#: common-cmds.h:21
msgid "Clone a repository into a new directory"
msgstr "Клонирование репозитория в новый каталог"
-#: common-cmds.h:23
+#: common-cmds.h:22
msgid "Record changes to the repository"
msgstr "Запись изменений в репозиторий"
-#: common-cmds.h:24
+#: common-cmds.h:23
msgid "Show changes between commits, commit and working tree, etc"
msgstr "Вывод разницы между коммитами, коммитом и рабочим каталогом и т.д."
-#: common-cmds.h:25
+#: common-cmds.h:24
msgid "Download objects and refs from another repository"
msgstr "Загрузка объектов и ссылок из другого репозитория"
-#: common-cmds.h:26
+#: common-cmds.h:25
msgid "Print lines matching a pattern"
msgstr "Вывод строк, соответствующих шаблону"
-#: common-cmds.h:27
+#: common-cmds.h:26
msgid "Create an empty Git repository or reinitialize an existing one"
msgstr "Создание пустого репозитория Git или реинициализация существующего"
-#: common-cmds.h:28
+#: common-cmds.h:27
msgid "Show commit logs"
msgstr "Вывод истории коммитов"
-#: common-cmds.h:29
+#: common-cmds.h:28
msgid "Join two or more development histories together"
msgstr "Объединение одной или нескольких историй разработки вместе"
-#: common-cmds.h:30
+#: common-cmds.h:29
msgid "Move or rename a file, a directory, or a symlink"
msgstr "Перемещение или переименование файла, каталога или символьной ссылки"
-#: common-cmds.h:31
+#: common-cmds.h:30
msgid "Fetch from and integrate with another repository or a local branch"
msgstr "Извлечение изменений и объединение с другим репозиторием или локальной веткой"
-#: common-cmds.h:32
+#: common-cmds.h:31
msgid "Update remote refs along with associated objects"
msgstr "Обновление внешних ссылок и связанных объектов"
-#: common-cmds.h:33
+#: common-cmds.h:32
msgid "Forward-port local commits to the updated upstream head"
msgstr "Перемещение локальных коммитов над обновленной вышестоящей веткой"
-#: common-cmds.h:34
+#: common-cmds.h:33
msgid "Reset current HEAD to the specified state"
msgstr "Сброс текущего состояния HEAD на указанное состояние"
-#: common-cmds.h:35
+#: common-cmds.h:34
msgid "Remove files from the working tree and from the index"
msgstr "Удаление файлов из рабочего каталога и индекса"
-#: common-cmds.h:36
+#: common-cmds.h:35
msgid "Show various types of objects"
msgstr "Вывод различных типов объектов"
-#: common-cmds.h:37
+#: common-cmds.h:36
msgid "Show the working tree status"
msgstr "Вывод состояния рабочего каталога"
-#: common-cmds.h:38
+#: common-cmds.h:37
msgid "Create, list, delete or verify a tag object signed with GPG"
msgstr "Создание, вывод списка, удаление или проверка метки, подписанной с помощью GPG"
-#: parse-options.h:142
+#: parse-options.h:145
msgid "expiry-date"
msgstr "дата-окончания"
-#: parse-options.h:157
+#: parse-options.h:160
msgid "no-op (backward compatibility)"
msgstr "ничего не делает (оставлено для обратной совместимости)"
-#: parse-options.h:231
+#: parse-options.h:236
msgid "be more verbose"
msgstr "быть многословнее"
-#: parse-options.h:233
+#: parse-options.h:238
msgid "be more quiet"
msgstr "тихий режим"
-#: parse-options.h:239
+#: parse-options.h:244
msgid "use <n> digits to display SHA-1s"
msgstr "использовать <n> цифр для вывода SHA-1"
-#: rerere.h:27
+#: rerere.h:28
msgid "update the index with reused conflict resolution if possible"
msgstr "обновить индекс с помощью переиспользования разрешения конфликта, если возможно"
-#: git-am.sh:53
-msgid "You need to set your committer info first"
-msgstr "Сначала нужно указать вашу информацию о коммитере"
-
-#: git-am.sh:100
-msgid ""
-"You seem to have moved HEAD since the last 'am' failure.\n"
-"Not rewinding to ORIG_HEAD"
-msgstr "Похоже, что вы переместили HEAD с момента последней ошибки выполнения «am».\nПеремотка на ORIG_HEAD не выполняется"
-
-#: git-am.sh:110
-#, sh-format
-msgid ""
-"When you have resolved this problem, run \"$cmdline --continue\".\n"
-"If you prefer to skip this patch, run \"$cmdline --skip\" instead.\n"
-"To restore the original branch and stop patching, run \"$cmdline --abort\"."
-msgstr "Когда вы разрешите этот конфликт, запустите «$cmdline --continue».\nЕсли вы хотите пропустить этот патч, то запустите «$cmdline --skip».\nЧтобы перейти на оригинальную ветку и остановить применение изменений, запустите «$cmdline --abort»."
-
-#: git-am.sh:126
-msgid "Cannot fall back to three-way merge."
-msgstr "Не удалось откатиться к трехходовому слиянию."
-
-#: git-am.sh:142
-msgid "Repository lacks necessary blobs to fall back on 3-way merge."
-msgstr "В репозитории отсутствуют двоичные объекты, необходимые для отката к трехходовому слиянию."
-
-#: git-am.sh:144
-msgid "Using index info to reconstruct a base tree..."
-msgstr "Использую индекс для реконструкции базового дерева…"
-
-#: git-am.sh:159
-msgid ""
-"Did you hand edit your patch?\n"
-"It does not apply to blobs recorded in its index."
-msgstr "Вы вручную изменяли патч?\nОн не накладывается без ошибок на двоичные объекты, записанные в его заголовке."
-
-#: git-am.sh:168
-msgid "Falling back to patching base and 3-way merge..."
-msgstr "Откат к применению изменений к базовому коммиту с помощью трехходового слияния…"
-
-#: git-am.sh:185
-msgid "Failed to merge in the changes."
-msgstr "Не удалось слить изменения."
-
-#: git-am.sh:280
-msgid "Only one StGIT patch series can be applied at once"
-msgstr "Только серия патчей StGIT может быть применена за раз"
-
-#: git-am.sh:367
-#, sh-format
-msgid "Patch format $patch_format is not supported."
-msgstr "Неподдерживаемый формат патча $patch_format."
-
-#: git-am.sh:369
-msgid "Patch format detection failed."
-msgstr "Сбой определения формата патча."
-
-#: git-am.sh:407
-msgid ""
-"The -b/--binary option has been a no-op for long time, and\n"
-"it will be removed. Please do not use it anymore."
-msgstr "Опция -b/--binary уже долгое время ничего не делает и будет удалена с следующих версиях Git. Пожалуйста, не используйте ее."
-
-#: git-am.sh:507
-#, sh-format
-msgid "previous rebase directory $dotest still exists but mbox given."
-msgstr "предыдущий каталог перемещения $dotest еще существует, но передан mbox."
-
-#: git-am.sh:512
-msgid "Please make up your mind. --skip or --abort?"
-msgstr "Пожалуйста, определитесь: --skip или --abort?"
-
-#: git-am.sh:560
-#, sh-format
-msgid ""
-"Stray $dotest directory found.\n"
-"Use \"git am --abort\" to remove it."
-msgstr "Найден забытый каталог $dotest.\nИспользуйте «git am --abort», чтобы удалить его."
-
-#: git-am.sh:568
-msgid "Resolve operation not in progress, we are not resuming."
-msgstr "Операция разрешения конфликтов не в процессе выполнения, не продолжаем."
-
-#: git-am.sh:635
-#, sh-format
-msgid "Dirty index: cannot apply patches (dirty: $files)"
-msgstr "Индекс не пустой: нельзя применять патчи (в индексе: $files)"
-
-#: git-am.sh:747
-#, sh-format
-msgid ""
-"Patch is empty. Was it split wrong?\n"
-"If you would prefer to skip this patch, instead run \"$cmdline --skip\".\n"
-"To restore the original branch and stop patching run \"$cmdline --abort\"."
-msgstr "Патч пуст. Возможно, он был неправильно разделен?\nЕсли вы хотите пропустить этот патч, то вместо этого запустите «$cmdline --skip».\nЧтобы перейти на оригинальную ветку и остановить применение изменений, запустите «$cmdline --abort»."
-
-#: git-am.sh:774
-msgid "Patch does not have a valid e-mail address."
-msgstr "Патч не содержит действительный адрес электронной почты."
-
-#: git-am.sh:821
-msgid "cannot be interactive without stdin connected to a terminal."
-msgstr "не удалось использовать интерактивное поведение, без stdin подключенного к терминалу."
-
-#: git-am.sh:825
-msgid "Commit Body is:"
-msgstr "Тело коммита:"
-
-#. TRANSLATORS: Make sure to include [y], [n], [e], [v] and [a]
-#. in your translation. The program will only accept English
-#. input at this point.
-#: git-am.sh:832
-msgid "Apply? [y]es/[n]o/[e]dit/[v]iew patch/[a]ccept all "
-msgstr "Применить? [y] - да/[n] - нет/[e] - редактировать/[v] - просмотреть патч/[a] - применить все "
-
-#: git-am.sh:868
-#, sh-format
-msgid "Applying: $FIRSTLINE"
-msgstr "Применение: $FIRSTLINE"
-
-#: git-am.sh:889
-msgid ""
-"No changes - did you forget to use 'git add'?\n"
-"If there is nothing left to stage, chances are that something else\n"
-"already introduced the same changes; you might want to skip this patch."
-msgstr "Нет изменений — возможно, вы забыли вызвать «git add»?\nЕсли ничего не осталось для индексации, то, скорее всего, что-то другое уже сделало те же изменения; возможно, вам следует пропустить этот патч."
-
-#: git-am.sh:897
-msgid ""
-"You still have unmerged paths in your index\n"
-"did you forget to use 'git add'?"
-msgstr "У вас все еще имеются не слитые пути в индексе.\nВозможно, вы забыли вызвать «git add»?"
-
-#: git-am.sh:913
-msgid "No changes -- Patch already applied."
-msgstr "Нет изменений — Патч уже применен."
-
-#: git-am.sh:923
-#, sh-format
-msgid "Patch failed at $msgnum $FIRSTLINE"
-msgstr "Ошибка применения изменений на строке $msgnum $FIRSTLINE"
-
-#: git-am.sh:926
-#, sh-format
-msgid ""
-"The copy of the patch that failed is found in:\n"
-" $dotest/patch"
-msgstr "Копию изменений, которые не удалось применить, вы можете найти в:\n $dotest/patch"
-
-#: git-am.sh:945
-msgid "applying to an empty history"
-msgstr "применение к пустой истории"
-
-#: git-bisect.sh:48
+#: git-bisect.sh:50
msgid "You need to start by \"git bisect start\""
msgstr "Вам нужно начать с помощью «git bisect start»"
#. TRANSLATORS: Make sure to include [Y] and [n] in your
#. translation. The program will only accept English input
#. at this point.
-#: git-bisect.sh:54
+#: git-bisect.sh:56
msgid "Do you want me to do it for you [Y/n]? "
msgstr "Вы уверены, что хотите, чтобы я сделал это [Y - да/n - нет]? "
-#: git-bisect.sh:95
+#: git-bisect.sh:99
#, sh-format
msgid "unrecognised option: '$arg'"
msgstr "неопознанная опция: «$arg»"
-#: git-bisect.sh:99
+#: git-bisect.sh:103
#, sh-format
msgid "'$arg' does not appear to be a valid revision"
msgstr "«$arg» не похоже на действительную редакцию"
-#: git-bisect.sh:117
+#: git-bisect.sh:132
msgid "Bad HEAD - I need a HEAD"
msgstr "Плохой указатель HEAD — Необходим указатель HEAD"
-#: git-bisect.sh:130
+#: git-bisect.sh:145
#, sh-format
msgid ""
"Checking out '$start_head' failed. Try 'git bisect reset <valid-branch>'."
msgstr "Сбой перехода на «$start_head». Попробуйте выполнить «git bisect reset <существующая-ветка>»."
-#: git-bisect.sh:140
+#: git-bisect.sh:155
msgid "won't bisect on cg-seek'ed tree"
msgstr "нельзя выполнить двоичный поиск на дереве после cg-seek"
-#: git-bisect.sh:144
+#: git-bisect.sh:159
msgid "Bad HEAD - strange symbolic ref"
msgstr "Плохой указатель HEAD — странная символьная ссылка"
-#: git-bisect.sh:189
+#: git-bisect.sh:211
#, sh-format
msgid "Bad bisect_write argument: $state"
msgstr "Плохой аргумент bisect_write: $state"
-#: git-bisect.sh:218
+#: git-bisect.sh:240
#, sh-format
msgid "Bad rev input: $arg"
msgstr "Плохой ввод номера редакции: $arg"
-#: git-bisect.sh:232
+#: git-bisect.sh:255
msgid "Please call 'bisect_state' with at least one argument."
msgstr "Пожалуйста, вызывайте «bisect_state» как минимум с одним аргументом."
-#: git-bisect.sh:244
+#: git-bisect.sh:267
#, sh-format
msgid "Bad rev input: $rev"
msgstr "Плохой ввод номера редакции: $rev"
-#: git-bisect.sh:253
-msgid "'git bisect bad' can take only one argument."
-msgstr "«git bisect bad» может принимать только один аргумент."
-
#: git-bisect.sh:276
-msgid "Warning: bisecting only with a bad commit."
-msgstr "Предупреждение: попытка двоичного поиска с указанием только плохого коммита."
+#, sh-format
+msgid "'git bisect $TERM_BAD' can take only one argument."
+msgstr "«git bisect $TERM_BAD» может принимать только один аргумент."
+
+#: git-bisect.sh:299
+#, sh-format
+msgid "Warning: bisecting only with a $TERM_BAD commit."
+msgstr "Предупреждение: попытка двоичного поиска с указанием только $TERM_BAD коммита."
#. TRANSLATORS: Make sure to include [Y] and [n] in your
#. translation. The program will only accept English input
#. at this point.
-#: git-bisect.sh:282
+#: git-bisect.sh:305
msgid "Are you sure [Y/n]? "
msgstr "Вы уверены [Y - да/n - нет]? "
-#: git-bisect.sh:292
+#: git-bisect.sh:317
+#, sh-format
msgid ""
-"You need to give me at least one good and one bad revision.\n"
-"(You can use \"git bisect bad\" and \"git bisect good\" for that.)"
-msgstr "Вам нужно передать мне как минимум одну хорошую и одну плохую редакцию.\n(Для этого вы можете использовать команды «git bisect bad» и «git bisect good».)"
+"You need to give me at least one $bad_syn and one $good_syn revision.\n"
+"(You can use \"git bisect $bad_syn\" and \"git bisect $good_syn\" for that.)"
+msgstr "Вам нужно передать мне как минимум одну $bad_syn и одну $good_syn редакцию.\n(Для этого вы можете использовать команды «git bisect $bad_syn» и «git bisect $good_syn».)"
-#: git-bisect.sh:295
+#: git-bisect.sh:320
+#, sh-format
msgid ""
"You need to start by \"git bisect start\".\n"
-"You then need to give me at least one good and one bad revision.\n"
-"(You can use \"git bisect bad\" and \"git bisect good\" for that.)"
-msgstr "Для начала нужно запустить «git bisect start».\nПосле этого, вам нужно передать мне как минимум одну хорошую и одну плохую редакцию.\n(Для этого вы можете использовать команды «git bisect bad» и «git bisect good».)"
+"You then need to give me at least one $good_syn and one $bad_syn revision.\n"
+"(You can use \"git bisect $bad_syn\" and \"git bisect $good_syn\" for that.)"
+msgstr "Для начала нужно запустить «git bisect start».\nПосле этого, вам нужно передать мне как минимум одну $good_syn и одну $bad_syn редакцию.\n(Для этого вы можете использовать команды «git bisect $good_syn» и «git bisect $good_syn».)"
-#: git-bisect.sh:366 git-bisect.sh:493
+#: git-bisect.sh:391 git-bisect.sh:521
msgid "We are not bisecting."
msgstr "Вы сейчас не в процессе бинарного поиска."
-#: git-bisect.sh:373
+#: git-bisect.sh:398
#, sh-format
msgid "'$invalid' is not a valid commit"
msgstr "«$invalid» не является действительным коммитом"
-#: git-bisect.sh:382
+#: git-bisect.sh:407
#, sh-format
msgid ""
"Could not check out original HEAD '$branch'.\n"
"Try 'git bisect reset <commit>'."
msgstr "Не удалось перейти на оригинальную ветку HEAD «$branch».\nПопробуйте запустить «git bisect reset <коммит>»."
-#: git-bisect.sh:409
+#: git-bisect.sh:435
msgid "No logfile given"
msgstr "Не передан файл журнала"
-#: git-bisect.sh:410
+#: git-bisect.sh:436
#, sh-format
msgid "cannot read $file for replaying"
msgstr "не удалось прочитать $file для повтора изменений"
-#: git-bisect.sh:427
+#: git-bisect.sh:455
msgid "?? what are you talking about?"
msgstr "?? вы о чем?"
-#: git-bisect.sh:439
+#: git-bisect.sh:467
#, sh-format
msgid "running $command"
msgstr "запускаю $command"
-#: git-bisect.sh:446
+#: git-bisect.sh:474
#, sh-format
msgid ""
"bisect run failed:\n"
"exit code $res from '$command' is < 0 or >= 128"
msgstr "не удалось выполнить двоичный поиск:\nкод завершения $res от «$command» оказался < 0 или >= 128"
-#: git-bisect.sh:472
+#: git-bisect.sh:500
msgid "bisect run cannot continue any more"
msgstr "bisect run больше не может продолжать"
-#: git-bisect.sh:478
+#: git-bisect.sh:506
#, sh-format
msgid ""
"bisect run failed:\n"
"'bisect_state $state' exited with error code $res"
msgstr "не удалось выполнить двоичный поиск:\n«bisect_state $state» завершился с кодом ошибки $res"
-#: git-bisect.sh:485
+#: git-bisect.sh:513
msgid "bisect run success"
msgstr "bisect run выполнен успешно"
-#: git-pull.sh:61
-msgid ""
-"Pull is not possible because you have unmerged files.\n"
-"Please, fix them up in the work tree, and then use 'git add/rm <file>'\n"
-"as appropriate to mark resolution and make a commit."
-msgstr "Невозможно выполнить получение, так как у вас имеются не слитые файлы.\nИсправьте их в рабочем каталоге, затем запустите «git add/rm <файл>»,\nчтобы пометить исправление и сделайте коммит."
-
-#: git-pull.sh:65
-msgid "Pull is not possible because you have unmerged files."
-msgstr "Невозможно выполнить получение, так как у вас имеются не слитые файлы."
-
-#: git-pull.sh:71
-msgid ""
-"You have not concluded your merge (MERGE_HEAD exists).\n"
-"Please, commit your changes before you can merge."
-msgstr "Вы не завершили слияние (присутствует файл MERGE_HEAD).\nВыполните коммит ваших изменений, перед слиянием."
-
-#: git-pull.sh:285
-msgid "updating an unborn branch with changes added to the index"
-msgstr "обновление еще не начавшейся ветки с изменениями, добавленными в индекс"
-
-#: git-pull.sh:311
+#: git-bisect.sh:548
#, sh-format
-msgid ""
-"Warning: fetch updated the current branch head.\n"
-"Warning: fast-forwarding your working tree from\n"
-"Warning: commit $orig_head."
-msgstr "Предупреждение: извлечение обновило голову вашей текущей ветки.\nПредупреждение: перемотка вашего рабочего каталога\nПредупреждение: с коммита $orig_head."
-
-#: git-pull.sh:336
-msgid "Cannot merge multiple branches into empty head"
-msgstr "Нельзя слить несколько веток в пустую указатель на коммит"
-
-#: git-pull.sh:340
-msgid "Cannot rebase onto multiple branches"
-msgstr "Невозможно переместить над несколькими ветками"
+msgid "Invalid command: you're currently in a $TERM_BAD/$TERM_GOOD bisect."
+msgstr "Недопустимая команда: вы сейчас находитесь на $TERM_BAD/$TERM_GOOD двоичном поиске."
#: git-rebase.sh:57
msgid ""
@@ -10540,7 +10924,7 @@ msgstr "Не удалось удалить временный индекс (не
msgid "Cannot record working tree state"
msgstr "Не удалось записать состояние рабочего каталога"
-#: git-stash.sh:191
+#: git-stash.sh:189
#, sh-format
msgid "Cannot update $ref_stash with $w_commit"
msgstr "Не удалось обновить $ref_stash с помощью $w_commit"
@@ -10554,97 +10938,97 @@ msgstr "Не удалось обновить $ref_stash с помощью $w_com
#. $ 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:241
+#: git-stash.sh:239
#, sh-format
msgid ""
"error: unknown option for 'stash save': $option\n"
" To provide a message, use git stash save -- '$option'"
msgstr "ошибка: неизвестная опция для «stash save»: $option\n Для предоставления сообщения, используйте git stash save -- «$option»"
-#: git-stash.sh:262
+#: git-stash.sh:260
msgid "No local changes to save"
msgstr "Нет локальных изменений для сохранения"
-#: git-stash.sh:266
+#: git-stash.sh:264
msgid "Cannot initialize stash"
msgstr "Не удалось инициализировать спрятанные изменения"
-#: git-stash.sh:270
+#: git-stash.sh:268
msgid "Cannot save the current status"
msgstr "Не удалось сохранить текущий статус"
-#: git-stash.sh:288
+#: git-stash.sh:286
msgid "Cannot remove worktree changes"
msgstr "Не удалось удалить изменения рабочего каталога"
-#: git-stash.sh:389
+#: git-stash.sh:387
#, sh-format
msgid "unknown option: $opt"
msgstr "неизвестная опция: $opt"
-#: git-stash.sh:399
+#: git-stash.sh:397
msgid "No stash found."
msgstr "Не найдены спрятанные изменения."
-#: git-stash.sh:406
+#: git-stash.sh:404
#, sh-format
msgid "Too many revisions specified: $REV"
msgstr "Передано слишком много редакций: $REV"
-#: git-stash.sh:412
+#: git-stash.sh:410
#, sh-format
msgid "$reference is not a valid reference"
msgstr "$reference не является действительной ссылкой"
-#: git-stash.sh:440
+#: git-stash.sh:438
#, sh-format
msgid "'$args' is not a stash-like commit"
msgstr "«$args» не похоже на коммит со спрятанными изменениями"
-#: git-stash.sh:451
+#: git-stash.sh:449
#, sh-format
msgid "'$args' is not a stash reference"
msgstr "«$args» не является ссылкой на спрятанные изменения"
-#: git-stash.sh:459
+#: git-stash.sh:457
msgid "unable to refresh index"
msgstr "не удалось обновить индекс"
-#: git-stash.sh:463
+#: git-stash.sh:461
msgid "Cannot apply a stash in the middle of a merge"
msgstr "Нельзя применить спрятанные изменения во время выполнения слияния"
-#: git-stash.sh:471
+#: git-stash.sh:469
msgid "Conflicts in index. Try without --index."
msgstr "Конфликты в индексе. Попробуйте без --index."
-#: git-stash.sh:473
+#: git-stash.sh:471
msgid "Could not save index tree"
msgstr "Не удалось сохранить дерево индекса"
-#: git-stash.sh:507
+#: git-stash.sh:505
msgid "Cannot unstage modified files"
msgstr "Невозможно убрать из индекса измененные файлы"
-#: git-stash.sh:522
+#: git-stash.sh:520
msgid "Index was not unstashed."
msgstr "Индекс не был достат из спрятанных изменений."
-#: git-stash.sh:545
+#: git-stash.sh:543
#, sh-format
msgid "Dropped ${REV} ($s)"
msgstr "Отброшено ${REV} ($s)"
-#: git-stash.sh:546
+#: git-stash.sh:544
#, sh-format
msgid "${REV}: Could not drop stash entry"
msgstr "${REV}: Не удалось отбросить запись из спрятанных изменений"
-#: git-stash.sh:554
+#: git-stash.sh:552
msgid "No branch name specified"
msgstr "Не указано имя ветки"
-#: git-stash.sh:626
+#: git-stash.sh:624
msgid "(To restore them type \"git stash apply\")"
msgstr "(Чтобы восстановить их, наберите «git stash apply»)"
@@ -10872,7 +11256,7 @@ msgstr "Подмодуль по пути «$displaypath»: слито с «$sha1
#: git-submodule.sh:907
#, sh-format
msgid ""
-"Execution of '$command $sha1' failed in submodule path '$prefix$sm_path'"
+"Execution of '$command $sha1' failed in submodule path '$prefix$sm_path'"
msgstr "Сбой выполнения «$command $sha1» для подмодуля по пути «$prefix$sm_path»"
#: git-submodule.sh:908
diff --git a/quote.c b/quote.c
index 7920e18..fe884d2 100644
--- a/quote.c
+++ b/quote.c
@@ -4,9 +4,15 @@
int quote_path_fully = 1;
+static inline int need_bs_quote(char c)
+{
+ return (c == '\'' || c == '!');
+}
+
/* Help to copy the thing properly quoted for the shell safety.
* any single quote is replaced with '\'', any exclamation point
* is replaced with '\!', and the whole thing is enclosed in a
+ * single quote pair.
*
* E.g.
* original sq_quote result
@@ -15,11 +21,6 @@ int quote_path_fully = 1;
* a'b ==> a'\''b ==> 'a'\''b'
* a!b ==> a'\!'b ==> 'a'\!'b'
*/
-static inline int need_bs_quote(char c)
-{
- return (c == '\'' || c == '!');
-}
-
void sq_quote_buf(struct strbuf *dst, const char *src)
{
char *to_free = NULL;
diff --git a/reachable.c b/reachable.c
index 9cff25b..43616d4 100644
--- a/reachable.c
+++ b/reachable.c
@@ -25,9 +25,15 @@ static void update_progress(struct connectivity_progress *cp)
static int add_one_ref(const char *path, const struct object_id *oid,
int flag, void *cb_data)
{
- struct object *object = parse_object_or_die(oid->hash, path);
struct rev_info *revs = (struct rev_info *)cb_data;
+ struct object *object;
+ if ((flag & REF_ISSYMREF) && (flag & REF_ISBROKEN)) {
+ warning("symbolic ref is dangling: %s", path);
+ return 0;
+ }
+
+ object = parse_object_or_die(oid->hash, path);
add_pending_object(revs, object, "");
return 0;
diff --git a/run-command.c b/run-command.c
index 3277cf7..e09275b 100644
--- a/run-command.c
+++ b/run-command.c
@@ -18,26 +18,27 @@ struct child_to_clean {
static struct child_to_clean *children_to_clean;
static int installed_child_cleanup_handler;
-static void cleanup_children(int sig)
+static void cleanup_children(int sig, int in_signal)
{
while (children_to_clean) {
struct child_to_clean *p = children_to_clean;
children_to_clean = p->next;
kill(p->pid, sig);
- free(p);
+ if (!in_signal)
+ free(p);
}
}
static void cleanup_children_on_signal(int sig)
{
- cleanup_children(sig);
+ cleanup_children(sig, 1);
sigchain_pop(sig);
raise(sig);
}
static void cleanup_children_on_exit(void)
{
- cleanup_children(SIGTERM);
+ cleanup_children(SIGTERM, 0);
}
static void mark_child_for_cleanup(pid_t pid)
@@ -220,7 +221,7 @@ static inline void set_cloexec(int fd)
fcntl(fd, F_SETFD, flags | FD_CLOEXEC);
}
-static int wait_or_whine(pid_t pid, const char *argv0)
+static int wait_or_whine(pid_t pid, const char *argv0, int in_signal)
{
int status, code = -1;
pid_t waiting;
@@ -228,6 +229,8 @@ static int wait_or_whine(pid_t pid, const char *argv0)
while ((waiting = waitpid(pid, &status, 0)) < 0 && errno == EINTR)
; /* nothing */
+ if (in_signal)
+ return 0;
if (waiting < 0) {
failed_errno = errno;
@@ -437,7 +440,7 @@ fail_pipe:
* At this point we know that fork() succeeded, but execvp()
* failed. Errors have been reported to our stderr.
*/
- wait_or_whine(cmd->pid, cmd->argv[0]);
+ wait_or_whine(cmd->pid, cmd->argv[0], 0);
failed_errno = errno;
cmd->pid = -1;
}
@@ -536,12 +539,18 @@ fail_pipe:
int finish_command(struct child_process *cmd)
{
- int ret = wait_or_whine(cmd->pid, cmd->argv[0]);
+ int ret = wait_or_whine(cmd->pid, cmd->argv[0], 0);
argv_array_clear(&cmd->args);
argv_array_clear(&cmd->env_array);
return ret;
}
+int finish_command_in_signal(struct child_process *cmd)
+{
+ return wait_or_whine(cmd->pid, cmd->argv[0], 1);
+}
+
+
int run_command(struct child_process *cmd)
{
int code;
@@ -772,7 +781,7 @@ error:
int finish_async(struct async *async)
{
#ifdef NO_PTHREADS
- return wait_or_whine(async->pid, "child process");
+ return wait_or_whine(async->pid, "child process", 0);
#else
void *ret = (void *)(intptr_t)(-1);
diff --git a/run-command.h b/run-command.h
index 5b4425a..275d35c 100644
--- a/run-command.h
+++ b/run-command.h
@@ -50,6 +50,7 @@ void child_process_init(struct child_process *);
int start_command(struct child_process *);
int finish_command(struct child_process *);
+int finish_command_in_signal(struct child_process *);
int run_command(struct child_process *);
/*
diff --git a/setup.c b/setup.c
index a17c51e..3324014 100644
--- a/setup.c
+++ b/setup.c
@@ -5,6 +5,7 @@
static int inside_git_dir = -1;
static int inside_work_tree = -1;
static int work_tree_config_is_bogus;
+static struct string_list unknown_extensions = STRING_LIST_INIT_DUP;
/*
* The input parameter must contain an absolute path, and it must already be
@@ -352,10 +353,25 @@ void setup_work_tree(void)
static int check_repo_format(const char *var, const char *value, void *cb)
{
+ const char *ext;
+
if (strcmp(var, "core.repositoryformatversion") == 0)
repository_format_version = git_config_int(var, value);
else if (strcmp(var, "core.sharedrepository") == 0)
shared_repository = git_config_perm(var, value);
+ else if (skip_prefix(var, "extensions.", &ext)) {
+ /*
+ * record any known extensions here; otherwise,
+ * we fall through to recording it as unknown, and
+ * check_repository_format will complain
+ */
+ if (!strcmp(ext, "noop"))
+ ;
+ else if (!strcmp(ext, "preciousobjects"))
+ repository_format_precious_objects = git_config_bool(var, value);
+ else
+ string_list_append(&unknown_extensions, ext);
+ }
return 0;
}
@@ -366,6 +382,8 @@ static int check_repository_format_gently(const char *gitdir, int *nongit_ok)
config_fn_t fn;
int ret = 0;
+ string_list_clear(&unknown_extensions, 0);
+
if (get_common_dir(&sb, gitdir))
fn = check_repo_format;
else
@@ -383,16 +401,31 @@ static int check_repository_format_gently(const char *gitdir, int *nongit_ok)
* is a good one.
*/
git_config_early(fn, NULL, repo_config);
- if (GIT_REPO_VERSION < repository_format_version) {
+ if (GIT_REPO_VERSION_READ < repository_format_version) {
if (!nongit_ok)
die ("Expected git repo version <= %d, found %d",
- GIT_REPO_VERSION, repository_format_version);
+ GIT_REPO_VERSION_READ, repository_format_version);
warning("Expected git repo version <= %d, found %d",
- GIT_REPO_VERSION, repository_format_version);
+ GIT_REPO_VERSION_READ, repository_format_version);
warning("Please upgrade Git");
*nongit_ok = -1;
ret = -1;
}
+
+ if (repository_format_version >= 1 && unknown_extensions.nr) {
+ int i;
+
+ if (!nongit_ok)
+ die("unknown repository extension: %s",
+ unknown_extensions.items[0].string);
+
+ for (i = 0; i < unknown_extensions.nr; i++)
+ warning("unknown repository extension: %s",
+ unknown_extensions.items[i].string);
+ *nongit_ok = -1;
+ ret = -1;
+ }
+
strbuf_release(&sb);
return ret;
}
diff --git a/t/annotate-tests.sh b/t/annotate-tests.sh
index f5c0175..b1673b3 100644
--- a/t/annotate-tests.sh
+++ b/t/annotate-tests.sh
@@ -111,6 +111,10 @@ test_expect_success 'blame 2 authors + 2 merged-in authors' '
check_count A 2 B 1 B1 2 B2 1
'
+test_expect_success 'blame --first-parent blames merge for branch1' '
+ check_count --first-parent A 2 B 1 "A U Thor" 2 B2 1
+'
+
test_expect_success 'blame ancestor' '
check_count -h master A 2 B 2
'
diff --git a/t/perf/aggregate.perl b/t/perf/aggregate.perl
index 15f7fc1..924b19d 100755
--- a/t/perf/aggregate.perl
+++ b/t/perf/aggregate.perl
@@ -1,5 +1,6 @@
#!/usr/bin/perl
+use lib '../../perl/blib/lib';
use strict;
use warnings;
use Git;
diff --git a/t/t1302-repo-version.sh b/t/t1302-repo-version.sh
index 0d9388a..9bcd349 100755
--- a/t/t1302-repo-version.sh
+++ b/t/t1302-repo-version.sh
@@ -67,4 +67,64 @@ test_expect_success 'gitdir required mode' '
)
'
+check_allow () {
+ git rev-parse --git-dir >actual &&
+ echo .git >expect &&
+ test_cmp expect actual
+}
+
+check_abort () {
+ test_must_fail git rev-parse --git-dir
+}
+
+# avoid git-config, since it cannot be trusted to run
+# in a repository with a broken version
+mkconfig () {
+ echo '[core]' &&
+ echo "repositoryformatversion = $1" &&
+ shift &&
+
+ if test $# -gt 0; then
+ echo '[extensions]' &&
+ for i in "$@"; do
+ echo "$i"
+ done
+ fi
+}
+
+while read outcome version extensions; do
+ test_expect_success "$outcome version=$version $extensions" "
+ mkconfig $version $extensions >.git/config &&
+ check_${outcome}
+ "
+done <<\EOF
+allow 0
+allow 1
+allow 1 noop
+abort 1 no-such-extension
+allow 0 no-such-extension
+EOF
+
+test_expect_success 'precious-objects allowed' '
+ mkconfig 1 preciousObjects >.git/config &&
+ check_allow
+'
+
+test_expect_success 'precious-objects blocks destructive repack' '
+ test_must_fail git repack -ad
+'
+
+test_expect_success 'other repacks are OK' '
+ test_commit foo &&
+ git repack
+'
+
+test_expect_success 'precious-objects blocks prune' '
+ test_must_fail git prune
+'
+
+test_expect_success 'gc runs without complaint' '
+ git gc
+'
+
test_done
diff --git a/t/t1450-fsck.sh b/t/t1450-fsck.sh
index 956673b..dc09797 100755
--- a/t/t1450-fsck.sh
+++ b/t/t1450-fsck.sh
@@ -77,11 +77,31 @@ test_expect_success 'object with bad sha1' '
test_expect_success 'branch pointing to non-commit' '
git rev-parse HEAD^{tree} >.git/refs/heads/invalid &&
test_when_finished "git update-ref -d refs/heads/invalid" &&
- git fsck 2>out &&
+ test_must_fail git fsck 2>out &&
cat out &&
grep "not a commit" out
'
+test_expect_success 'HEAD link pointing at a funny object' '
+ test_when_finished "mv .git/SAVED_HEAD .git/HEAD" &&
+ mv .git/HEAD .git/SAVED_HEAD &&
+ echo 0000000000000000000000000000000000000000 >.git/HEAD &&
+ # avoid corrupt/broken HEAD from interfering with repo discovery
+ test_must_fail env GIT_DIR=.git git fsck 2>out &&
+ cat out &&
+ grep "detached HEAD points" out
+'
+
+test_expect_success 'HEAD link pointing at a funny place' '
+ test_when_finished "mv .git/SAVED_HEAD .git/HEAD" &&
+ mv .git/HEAD .git/SAVED_HEAD &&
+ echo "ref: refs/funny/place" >.git/HEAD &&
+ # avoid corrupt/broken HEAD from interfering with repo discovery
+ test_must_fail env GIT_DIR=.git git fsck 2>out &&
+ cat out &&
+ grep "HEAD points to something strange" out
+'
+
test_expect_success 'email without @ is okay' '
git cat-file commit HEAD >basis &&
sed "s/@/AT/" basis >okay &&
diff --git a/t/t2026-prune-linked-checkouts.sh b/t/t2026-worktree-prune.sh
index a0f1e3b..a0f1e3b 100755
--- a/t/t2026-prune-linked-checkouts.sh
+++ b/t/t2026-worktree-prune.sh
diff --git a/t/t3203-branch-output.sh b/t/t3203-branch-output.sh
index f51d0f3..16efe7a 100755
--- a/t/t3203-branch-output.sh
+++ b/t/t3203-branch-output.sh
@@ -106,6 +106,19 @@ EOF
test_i18ncmp expect actual
'
+test_expect_success 'git branch shows detached HEAD properly after checkout --detach' '
+ git checkout master &&
+ cat >expect <<EOF &&
+* (HEAD detached at $(git rev-parse --short HEAD^0))
+ branch-one
+ branch-two
+ master
+EOF
+ git checkout --detach &&
+ git branch >actual &&
+ test_i18ncmp expect actual
+'
+
test_expect_success 'git branch shows detached HEAD properly after moving' '
cat >expect <<EOF &&
* (HEAD detached from $(git rev-parse --short HEAD))
diff --git a/t/t3301-notes.sh b/t/t3301-notes.sh
index 8cffd35..cd70274 100755
--- a/t/t3301-notes.sh
+++ b/t/t3301-notes.sh
@@ -1122,6 +1122,12 @@ test_expect_success 'git notes copy diagnoses too many or too few parameters' '
test_must_fail git notes copy one two three
'
+test_expect_success 'git notes get-ref expands refs/heads/master to refs/notes/refs/heads/master' '
+ test_unconfig core.notesRef &&
+ sane_unset GIT_NOTES_REF &&
+ test "$(git notes --ref=refs/heads/master get-ref)" = "refs/notes/refs/heads/master"
+'
+
test_expect_success 'git notes get-ref (no overrides)' '
test_unconfig core.notesRef &&
sane_unset GIT_NOTES_REF &&
diff --git a/t/t3404-rebase-interactive.sh b/t/t3404-rebase-interactive.sh
index d26e3f5..3de0b1d 100755
--- a/t/t3404-rebase-interactive.sh
+++ b/t/t3404-rebase-interactive.sh
@@ -1227,6 +1227,21 @@ test_expect_success 'static check of bad command' '
test C = $(git cat-file commit HEAD^ | sed -ne \$p)
'
+test_expect_success 'tabs and spaces are accepted in the todolist' '
+ rebase_setup_and_clean indented-comment &&
+ write_script add-indent.sh <<-\EOF &&
+ (
+ # Turn single spaces into space/tab mix
+ sed "1s/ / /g; 2s/ / /g; 3s/ / /g" "$1"
+ printf "\n\t# comment\n #more\n\t # comment\n"
+ ) >$1.new
+ mv "$1.new" "$1"
+ EOF
+ test_set_editor "$(pwd)/add-indent.sh" &&
+ git rebase -i HEAD^^^ &&
+ test E = $(git cat-file commit HEAD | sed -ne \$p)
+'
+
cat >expect <<EOF
Warning: the SHA-1 is missing or isn't a commit in the following line:
- edit XXXXXXX False commit
diff --git a/t/t5507-remote-environment.sh b/t/t5507-remote-environment.sh
new file mode 100755
index 0000000..e614929
--- /dev/null
+++ b/t/t5507-remote-environment.sh
@@ -0,0 +1,34 @@
+#!/bin/sh
+
+test_description='check environment showed to remote side of transports'
+. ./test-lib.sh
+
+test_expect_success 'set up "remote" push situation' '
+ test_commit one &&
+ git config push.default current &&
+ git init remote
+'
+
+test_expect_success 'set up fake ssh' '
+ GIT_SSH_COMMAND="f() {
+ cd \"\$TRASH_DIRECTORY\" &&
+ eval \"\$2\"
+ }; f" &&
+ export GIT_SSH_COMMAND &&
+ export TRASH_DIRECTORY
+'
+
+# due to receive.denyCurrentBranch=true
+test_expect_success 'confirm default push fails' '
+ test_must_fail git push remote
+'
+
+test_expect_success 'config does not travel over same-machine push' '
+ test_must_fail git -c receive.denyCurrentBranch=false push remote
+'
+
+test_expect_success 'config does not travel over ssh push' '
+ test_must_fail git -c receive.denyCurrentBranch=false push host:remote
+'
+
+test_done
diff --git a/t/t5560-http-backend-noserver.sh b/t/t5560-http-backend-noserver.sh
index aa73eea..9fafcf1 100755
--- a/t/t5560-http-backend-noserver.sh
+++ b/t/t5560-http-backend-noserver.sh
@@ -44,10 +44,6 @@ POST() {
test_cmp exp act
}
-log_div() {
- return 0
-}
-
. "$TEST_DIRECTORY"/t556x_common
expect_aliased() {
diff --git a/t/t5561-http-backend.sh b/t/t5561-http-backend.sh
index 19afe96..90e0d6f 100755
--- a/t/t5561-http-backend.sh
+++ b/t/t5561-http-backend.sh
@@ -29,15 +29,9 @@ POST() {
test_cmp exp act
}
-log_div() {
- echo >>"$HTTPD_ROOT_PATH"/access.log
- echo "### $1" >>"$HTTPD_ROOT_PATH"/access.log
- echo "###" >>"$HTTPD_ROOT_PATH"/access.log
-}
-
. "$TEST_DIRECTORY"/t556x_common
-cat >exp <<EOF
+grep '^[^#]' >exp <<EOF
### refs/heads/master
###
diff --git a/t/t556x_common b/t/t556x_common
index 82926cf..359fcfe 100755
--- a/t/t556x_common
+++ b/t/t556x_common
@@ -52,21 +52,17 @@ get_static_files() {
SMART=smart
GIT_HTTP_EXPORT_ALL=1 && export GIT_HTTP_EXPORT_ALL
test_expect_success 'direct refs/heads/master not found' '
- log_div "refs/heads/master" &&
GET refs/heads/master "404 Not Found"
'
test_expect_success 'static file is ok' '
- log_div "getanyfile default" &&
get_static_files "200 OK"
'
SMART=smart_noexport
unset GIT_HTTP_EXPORT_ALL
test_expect_success 'no export by default' '
- log_div "no git-daemon-export-ok" &&
get_static_files "404 Not Found"
'
test_expect_success 'export if git-daemon-export-ok' '
- log_div "git-daemon-export-ok" &&
(cd "$HTTPD_DOCUMENT_ROOT_PATH/repo.git" &&
touch git-daemon-export-ok
) &&
@@ -75,47 +71,39 @@ test_expect_success 'export if git-daemon-export-ok' '
SMART=smart
GIT_HTTP_EXPORT_ALL=1 && export GIT_HTTP_EXPORT_ALL
test_expect_success 'static file if http.getanyfile true is ok' '
- log_div "getanyfile true" &&
config http.getanyfile true &&
get_static_files "200 OK"
'
test_expect_success 'static file if http.getanyfile false fails' '
- log_div "getanyfile false" &&
config http.getanyfile false &&
get_static_files "403 Forbidden"
'
test_expect_success 'http.uploadpack default enabled' '
- log_div "uploadpack default" &&
GET info/refs?service=git-upload-pack "200 OK" &&
POST git-upload-pack 0000 "200 OK"
'
test_expect_success 'http.uploadpack true' '
- log_div "uploadpack true" &&
config http.uploadpack true &&
GET info/refs?service=git-upload-pack "200 OK" &&
POST git-upload-pack 0000 "200 OK"
'
test_expect_success 'http.uploadpack false' '
- log_div "uploadpack false" &&
config http.uploadpack false &&
GET info/refs?service=git-upload-pack "403 Forbidden" &&
POST git-upload-pack 0000 "403 Forbidden"
'
test_expect_success 'http.receivepack default disabled' '
- log_div "receivepack default" &&
GET info/refs?service=git-receive-pack "403 Forbidden" &&
POST git-receive-pack 0000 "403 Forbidden"
'
test_expect_success 'http.receivepack true' '
- log_div "receivepack true" &&
config http.receivepack true &&
GET info/refs?service=git-receive-pack "200 OK" &&
POST git-receive-pack 0000 "200 OK"
'
test_expect_success 'http.receivepack false' '
- log_div "receivepack false" &&
config http.receivepack false &&
GET info/refs?service=git-receive-pack "403 Forbidden" &&
POST git-receive-pack 0000 "403 Forbidden"
diff --git a/t/t6500-gc.sh b/t/t6500-gc.sh
index 63194d8..5d7d414 100755
--- a/t/t6500-gc.sh
+++ b/t/t6500-gc.sh
@@ -30,4 +30,17 @@ test_expect_success 'gc -h with invalid configuration' '
test_i18ngrep "[Uu]sage" broken/usage
'
+test_expect_success 'gc is not aborted due to a stale symref' '
+ git init remote &&
+ (
+ cd remote &&
+ test_commit initial &&
+ git clone . ../client &&
+ git branch -m develop &&
+ cd ../client &&
+ git fetch --prune &&
+ git gc
+ )
+'
+
test_done
diff --git a/t/t7003-filter-branch.sh b/t/t7003-filter-branch.sh
index 855afda..377c648 100755
--- a/t/t7003-filter-branch.sh
+++ b/t/t7003-filter-branch.sh
@@ -2,6 +2,7 @@
test_description='git filter-branch'
. ./test-lib.sh
+. "$TEST_DIRECTORY/lib-gpg.sh"
test_expect_success 'setup' '
test_commit A &&
@@ -292,6 +293,19 @@ test_expect_success 'Tag name filtering strips gpg signature' '
test_cmp expect actual
'
+test_expect_success GPG 'Filtering retains message of gpg signed commit' '
+ mkdir gpg &&
+ touch gpg/foo &&
+ git add gpg &&
+ test_tick &&
+ git commit -S -m "Adding gpg" &&
+
+ git log -1 --format="%s" > expect &&
+ git filter-branch -f --msg-filter "cat" &&
+ git log -1 --format="%s" > actual &&
+ test_cmp expect actual
+'
+
test_expect_success 'Tag name filtering allows slashes in tag names' '
git tag -m tag-with-slash X/1 &&
git cat-file tag X/1 | sed -e s,X/1,X/2, > expect &&
diff --git a/test-path-utils.c b/test-path-utils.c
index 3dd3744..c67bf65 100644
--- a/test-path-utils.c
+++ b/test-path-utils.c
@@ -21,8 +21,6 @@ static int normalize_ceiling_entry(struct string_list_item *item, void *unused)
if (normalize_path_copy(buf, ceil) < 0)
die("Path \"%s\" could not be normalized", ceil);
len = strlen(buf);
- if (len > 1 && buf[len-1] == '/')
- die("Normalized path \"%s\" ended with slash", buf);
free(item->string);
item->string = xstrdup(buf);
return 1;
diff --git a/wt-status.c b/wt-status.c
index c327fe8..3e3b8c0 100644
--- a/wt-status.c
+++ b/wt-status.c
@@ -1319,6 +1319,12 @@ static int grab_1st_switch(unsigned char *osha1, unsigned char *nsha1,
hashcpy(cb->nsha1, nsha1);
for (end = target; *end && *end != '\n'; end++)
;
+ if (!memcmp(target, "HEAD", end - target)) {
+ /* HEAD is relative. Resolve it to the right reflog entry. */
+ strbuf_addstr(&cb->buf,
+ find_unique_abbrev(nsha1, DEFAULT_ABBREV));
+ return 1;
+ }
strbuf_add(&cb->buf, target, end - target);
return 1;
}