From f8112a780b3d91567cb03f9bb9fb1ecd4f4d8cd0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Matthias=20A=C3=9Fhauer?= <mha1993@live.de>
Date: Tue, 23 Jul 2019 20:14:15 +0200
Subject: [PATCH] nb_NO: update to v2.21.0
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Matthias Aíš©hauer <mha1993@live.de>
---
 po/documentation.nb_NO.po | 74552 +++++++++++++++++-------------------
 1 file changed, 35639 insertions(+), 38913 deletions(-)

diff --git a/po/documentation.nb_NO.po b/po/documentation.nb_NO.po
index e93b358..cb3aeef 100644
--- a/po/documentation.nb_NO.po
+++ b/po/documentation.nb_NO.po
@@ -6,7 +6,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2018-12-22 17:08+0100\n"
+"POT-Creation-Date: 2019-02-13 20:53+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -15,64265 +15,62317 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#. type: Title =
-#: en/git.txt:2
-#, no-wrap
-msgid "git(1)"
-msgstr ""
-
-#. type: Title -
-#: en/git.txt:5 en/git-add.txt:5 en/git-am.txt:5 en/git-annotate.txt:5 en/git-apply.txt:5 en/git-archimport.txt:5 en/git-archive.txt:5 en/git-bisect.txt:5 en/git-blame.txt:5 en/git-branch.txt:5 en/git-bundle.txt:5 en/git-cat-file.txt:5 en/git-check-attr.txt:5 en/git-check-ignore.txt:5 en/git-check-mailmap.txt:5 en/git-checkout-index.txt:5 en/git-checkout.txt:5 en/git-check-ref-format.txt:5 en/git-cherry-pick.txt:5 en/git-cherry.txt:5 en/git-citool.txt:5 en/git-clean.txt:5 en/git-clone.txt:5 en/git-column.txt:5 en/git-commit.txt:5 en/git-commit-tree.txt:5 en/git-config.txt:5 en/git-count-objects.txt:5 en/git-credential-cache--daemon.txt:5 en/git-credential-cache.txt:5 en/git-credential-store.txt:5 en/git-credential.txt:5 en/git-cvsexportcommit.txt:5 en/git-cvsimport.txt:5 en/git-cvsserver.txt:5 en/git-daemon.txt:5 en/git-describe.txt:5 en/git-diff-files.txt:5 en/git-diff-index.txt:5 en/git-difftool.txt:5 en/git-diff-tree.txt:5 en/git-diff.txt:5 en/git-fast-export.txt:5 en/git-fast-import.txt:5 en/git-fetch-pack.txt:5 en/git-fetch.txt:5 en/git-filter-branch.txt:5 en/git-fmt-merge-msg.txt:5 en/git-for-each-ref.txt:5 en/git-format-patch.txt:5 en/git-fsck-objects.txt:5 en/git-fsck.txt:5 en/git-gc.txt:5 en/git-get-tar-commit-id.txt:5 en/git-grep.txt:5 en/git-gui.txt:5 en/git-hash-object.txt:5 en/git-help.txt:5 en/git-http-backend.txt:5 en/git-http-fetch.txt:5 en/git-http-push.txt:5 en/git-imap-send.txt:5 en/git-index-pack.txt:5 en/git-init-db.txt:5 en/git-init.txt:5 en/git-instaweb.txt:5 en/git-interpret-trailers.txt:5 en/git-log.txt:5 en/git-ls-files.txt:5 en/git-ls-remote.txt:5 en/git-ls-tree.txt:5 en/git-mailinfo.txt:5 en/git-mailsplit.txt:5 en/git-merge-base.txt:5 en/git-merge-file.txt:5 en/git-merge-index.txt:5 en/git-merge-one-file.txt:5 en/git-mergetool--lib.txt:5 en/git-mergetool.txt:5 en/git-merge-tree.txt:5 en/git-merge.txt:5 en/git-mktag.txt:5 en/git-mktree.txt:5 en/git-mv.txt:5 en/git-name-rev.txt:5 en/git-notes.txt:5 en/git-p4.txt:5 en/git-pack-objects.txt:5 en/git-pack-redundant.txt:5 en/git-pack-refs.txt:5 en/git-parse-remote.txt:5 en/git-patch-id.txt:5 en/git-prune-packed.txt:5 en/git-prune.txt:5 en/git-pull.txt:5 en/git-push.txt:5 en/git-quiltimport.txt:5 en/git-read-tree.txt:5 en/git-rebase.txt:5 en/git-receive-pack.txt:5 en/git-reflog.txt:5 en/git-remote-ext.txt:5 en/git-remote-fd.txt:5 en/git-remote-testgit.txt:5 en/git-remote.txt:5 en/git-repack.txt:5 en/git-replace.txt:5 en/git-request-pull.txt:5 en/git-rerere.txt:5 en/git-reset.txt:5 en/git-revert.txt:5 en/git-rev-list.txt:5 en/git-rev-parse.txt:5 en/git-rm.txt:5 en/git-send-email.txt:5 en/git-send-pack.txt:5 en/git-shell.txt:5 en/git-sh-i18n--envsubst.txt:5 en/git-sh-i18n.txt:5 en/git-shortlog.txt:5 en/git-show-branch.txt:5 en/git-show-index.txt:5 en/git-show-ref.txt:5 en/git-show.txt:5 en/git-sh-setup.txt:5 en/git-stage.txt:5 en/git-stash.txt:5 en/git-status.txt:5 en/git-stripspace.txt:5 en/git-submodule.txt:5 en/git-svn.txt:5 en/git-symbolic-ref.txt:5 en/git-tag.txt:5 en/git-unpack-file.txt:5 en/git-unpack-objects.txt:5 en/git-update-index.txt:5 en/git-update-ref.txt:5 en/git-update-server-info.txt:5 en/git-upload-archive.txt:5 en/git-upload-pack.txt:5 en/git-var.txt:5 en/git-verify-commit.txt:5 en/git-verify-pack.txt:5 en/git-verify-tag.txt:5 en/git-web--browse.txt:5 en/git-whatchanged.txt:5 en/git-worktree.txt:5 en/git-write-tree.txt:5
+#. type: Labeled list
+#: en/blame-options.txt:1 en/diff-options.txt:646 en/git-instaweb.txt:45
+#: en/git-mailinfo.txt:47 en/git-mailsplit.txt:35 en/git-repack.txt:126
+#: en/git-status.txt:31 en/git-submodule.txt:258
 #, no-wrap
-msgid "NAME"
+msgid "-b"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:7
-msgid "git - the stupid content tracker"
+#: en/blame-options.txt:4
+msgid ""
+"Show blank SHA-1 for boundary commits.  This can also be controlled via the "
+"`blame.blankboundary` config option."
 msgstr ""
 
-#. type: Title -
-#: en/git.txt:10 en/git-add.txt:9 en/git-am.txt:10 en/git-annotate.txt:9 en/git-apply.txt:10 en/git-archimport.txt:10 en/git-archive.txt:10 en/git-bisect.txt:10 en/git-blame.txt:9 en/git-branch.txt:9 en/git-bundle.txt:10 en/git-cat-file.txt:10 en/git-check-attr.txt:10 en/git-check-ignore.txt:10 en/git-check-mailmap.txt:10 en/git-checkout-index.txt:10 en/git-checkout.txt:9 en/git-check-ref-format.txt:9 en/git-cherry-pick.txt:9 en/git-cherry.txt:9 en/git-citool.txt:9 en/git-clean.txt:9 en/git-clone.txt:10 en/git-column.txt:9 en/git-commit.txt:9 en/git-commit-tree.txt:10 en/git-config.txt:10 en/git-count-objects.txt:9 en/git-credential-cache--daemon.txt:9 en/git-credential-cache.txt:9 en/git-credential-store.txt:9 en/git-credential.txt:9 en/git-cvsexportcommit.txt:10 en/git-cvsimport.txt:10 en/git-cvsserver.txt:9 en/git-daemon.txt:9 en/git-describe.txt:10 en/git-diff-files.txt:10 en/git-diff-index.txt:10 en/git-difftool.txt:9 en/git-diff-tree.txt:10 en/git-diff.txt:10 en/git-fast-export.txt:10 en/git-fast-import.txt:10 en/git-fetch-pack.txt:10 en/git-fetch.txt:10 en/git-filter-branch.txt:9 en/git-fmt-merge-msg.txt:10 en/git-for-each-ref.txt:9 en/git-format-patch.txt:10 en/git-fsck-objects.txt:10 en/git-fsck.txt:10 en/git-gc.txt:10 en/git-get-tar-commit-id.txt:10 en/git-grep.txt:10 en/git-gui.txt:9 en/git-hash-object.txt:10 en/git-help.txt:9 en/git-http-backend.txt:9 en/git-http-fetch.txt:10 en/git-http-push.txt:10 en/git-imap-send.txt:10 en/git-index-pack.txt:10 en/git-init-db.txt:10 en/git-init.txt:10 en/git-instaweb.txt:9 en/git-interpret-trailers.txt:9 en/git-log.txt:10 en/git-ls-files.txt:10 en/git-ls-remote.txt:10 en/git-ls-tree.txt:10 en/git-mailinfo.txt:10 en/git-mailsplit.txt:9 en/git-merge-base.txt:10 en/git-merge-file.txt:10 en/git-merge-index.txt:10 en/git-merge-one-file.txt:10 en/git-mergetool--lib.txt:9 en/git-mergetool.txt:9 en/git-merge-tree.txt:10 en/git-merge.txt:10 en/git-mktag.txt:10 en/git-mktree.txt:10 en/git-mv.txt:10 en/git-name-rev.txt:10 en/git-notes.txt:9 en/git-p4.txt:10 en/git-pack-objects.txt:10 en/git-pack-redundant.txt:10 en/git-pack-refs.txt:9 en/git-parse-remote.txt:10 en/git-patch-id.txt:9 en/git-prune-packed.txt:10 en/git-prune.txt:10 en/git-pull.txt:10 en/git-push.txt:10 en/git-quiltimport.txt:10 en/git-read-tree.txt:10 en/git-rebase.txt:9 en/git-receive-pack.txt:10 en/git-reflog.txt:10 en/git-remote-ext.txt:9 en/git-remote-fd.txt:9 en/git-remote-testgit.txt:10 en/git-remote.txt:10 en/git-repack.txt:10 en/git-replace.txt:9 en/git-request-pull.txt:9 en/git-rerere.txt:9 en/git-reset.txt:9 en/git-revert.txt:9 en/git-rev-list.txt:10 en/git-rev-parse.txt:10 en/git-rm.txt:9 en/git-send-email.txt:10 en/git-send-pack.txt:10 en/git-shell.txt:10 en/git-sh-i18n--envsubst.txt:9 en/git-sh-i18n.txt:9 en/git-shortlog.txt:9 en/git-show-branch.txt:9 en/git-show-index.txt:10 en/git-show-ref.txt:9 en/git-show.txt:10 en/git-sh-setup.txt:9 en/git-stage.txt:10 en/git-stash.txt:9 en/git-status.txt:10 en/git-stripspace.txt:10 en/git-submodule.txt:10 en/git-svn.txt:9 en/git-symbolic-ref.txt:9 en/git-tag.txt:10 en/git-unpack-file.txt:11 en/git-unpack-objects.txt:10 en/git-update-index.txt:10 en/git-update-ref.txt:9 en/git-update-server-info.txt:10 en/git-upload-archive.txt:10 en/git-upload-pack.txt:10 en/git-var.txt:10 en/git-verify-commit.txt:9 en/git-verify-pack.txt:10 en/git-verify-tag.txt:9 en/git-web--browse.txt:9 en/git-whatchanged.txt:10 en/git-worktree.txt:10 en/git-write-tree.txt:10
+#. type: Labeled list
+#: en/blame-options.txt:5 en/git-diff-tree.txt:42 en/git-format-patch.txt:314
+#: en/git-fsck.txt:38 en/git-rebase.txt:465
 #, no-wrap
-msgid "SYNOPSIS"
+msgid "--root"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:18
-#, no-wrap
+#: en/blame-options.txt:8
 msgid ""
-"'git' [--version] [--help] [-C <path>] [-c <name>=<value>]\n"
-"    [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]\n"
-"    [-p|--paginate|--no-pager] [--no-replace-objects] [--bare]\n"
-"    [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]\n"
-"    [--super-prefix=<path>]\n"
-"    <command> [<args>]\n"
+"Do not treat root commits as boundaries.  This can also be controlled via "
+"the `blame.showRoot` config option."
 msgstr ""
 
-#. type: Title -
-#: en/git.txt:20 en/git-add.txt:17 en/git-am.txt:22 en/git-annotate.txt:14 en/git-apply.txt:22 en/git-archimport.txt:16 en/git-archive.txt:18 en/git-bisect.txt:15 en/git-blame.txt:17 en/git-branch.txt:24 en/git-bundle.txt:18 en/git-cat-file.txt:16 en/git-check-attr.txt:16 en/git-check-ignore.txt:16 en/git-check-mailmap.txt:16 en/git-checkout-index.txt:19 en/git-checkout.txt:19 en/git-check-ref-format.txt:17 en/git-cherry-pick.txt:18 en/git-cherry.txt:14 en/git-citool.txt:14 en/git-clean.txt:14 en/git-clone.txt:21 en/git-column.txt:15 en/git-commit.txt:19 en/git-commit-tree.txt:18 en/git-config.txt:29 en/git-count-objects.txt:14 en/git-credential-cache--daemon.txt:14 en/git-credential-cache.txt:15 en/git-credential-store.txt:15 en/git-credential.txt:15 en/git-cvsexportcommit.txt:17 en/git-cvsimport.txt:20 en/git-cvsserver.txt:61 en/git-daemon.txt:26 en/git-describe.txt:16 en/git-diff-files.txt:15 en/git-diff-index.txt:15 en/git-difftool.txt:14 en/git-diff-tree.txt:17 en/git-diff.txt:19 en/git-fast-export.txt:15 en/git-fast-import.txt:15 en/git-fetch-pack.txt:18 en/git-fetch.txt:19 en/git-filter-branch.txt:20 en/git-fmt-merge-msg.txt:16 en/git-for-each-ref.txt:17 en/git-format-patch.txt:30 en/git-fsck-objects.txt:15 en/git-fsck.txt:18 en/git-gc.txt:15 en/git-get-tar-commit-id.txt:16 en/git-grep.txt:34 en/git-gui.txt:14 en/git-hash-object.txt:16 en/git-help.txt:15 en/git-http-backend.txt:14 en/git-http-fetch.txt:15 en/git-http-push.txt:15 en/git-imap-send.txt:16 en/git-index-pack.txt:18 en/git-init-db.txt:16 en/git-init.txt:18 en/git-instaweb.txt:16 en/git-interpret-trailers.txt:14 en/git-log.txt:15 en/git-ls-files.txt:25 en/git-ls-remote.txt:17 en/git-ls-tree.txt:17 en/git-mailinfo.txt:16 en/git-mailsplit.txt:15 en/git-merge-base.txt:19 en/git-merge-file.txt:18 en/git-merge-index.txt:15 en/git-merge-one-file.txt:15 en/git-mergetool--lib.txt:14 en/git-mergetool.txt:14 en/git-merge-tree.txt:15 en/git-merge.txt:21 en/git-mktag.txt:15 en/git-mktree.txt:15 en/git-mv.txt:15 en/git-name-rev.txt:16 en/git-notes.txt:26 en/git-p4.txt:19 en/git-pack-objects.txt:20 en/git-pack-redundant.txt:15 en/git-pack-refs.txt:14 en/git-parse-remote.txt:15 en/git-patch-id.txt:14 en/git-prune-packed.txt:16 en/git-prune.txt:15 en/git-pull.txt:16 en/git-push.txt:20 en/git-quiltimport.txt:17 en/git-read-tree.txt:19 en/git-rebase.txt:18 en/git-receive-pack.txt:15 en/git-reflog.txt:15 en/git-remote-ext.txt:14 en/git-remote-fd.txt:13 en/git-remote-testgit.txt:15 en/git-remote.txt:27 en/git-repack.txt:15 en/git-replace.txt:18 en/git-request-pull.txt:14 en/git-rerere.txt:14 en/git-reset.txt:16 en/git-revert.txt:17 en/git-rev-list.txt:64 en/git-rev-parse.txt:15 en/git-rm.txt:14 en/git-send-email.txt:17 en/git-send-pack.txt:18 en/git-shell.txt:17 en/git-sh-i18n--envsubst.txt:19 en/git-sh-i18n.txt:14 en/git-shortlog.txt:15 en/git-show-branch.txt:19 en/git-show-index.txt:16 en/git-show-ref.txt:17 en/git-show.txt:15 en/git-sh-setup.txt:14 en/git-stage.txt:16 en/git-stash.txt:26 en/git-status.txt:15 en/git-stripspace.txt:16 en/git-submodule.txt:24 en/git-svn.txt:14 en/git-symbolic-ref.txt:16 en/git-tag.txt:21 en/git-unpack-file.txt:16 en/git-unpack-objects.txt:16 en/git-update-index.txt:29 en/git-update-ref.txt:14 en/git-update-server-info.txt:15 en/git-upload-archive.txt:15 en/git-var.txt:15 en/git-verify-commit.txt:14 en/git-verify-pack.txt:16 en/git-verify-tag.txt:14 en/git-web--browse.txt:14 en/git-whatchanged.txt:15 en/git-worktree.txt:19 en/git-write-tree.txt:15
+#. type: Labeled list
+#: en/blame-options.txt:9
 #, no-wrap
-msgid "DESCRIPTION"
+msgid "--show-stats"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:24
-msgid ""
-"Git is a fast, scalable, distributed revision control system with an "
-"unusually rich command set that provides both high-level operations and full "
-"access to internals."
+#: en/blame-options.txt:11
+msgid "Include additional statistics at the end of blame output."
 msgstr ""
 
-#. type: Plain text
-#: en/git.txt:29
-msgid ""
-"See linkgit:gittutorial[7] to get started, then see linkgit:giteveryday[7] "
-"for a useful minimum set of commands.  The link:user-manual.html[Git User's "
-"Manual] has a more in-depth introduction."
+#. type: Labeled list
+#: en/blame-options.txt:12
+#, no-wrap
+msgid "-L <start>,<end>"
 msgstr ""
 
-#. type: Plain text
-#: en/git.txt:34
-msgid ""
-"After you mastered the basic concepts, you can come back to this page to "
-"learn what commands Git offers.  You can learn more about individual Git "
-"commands with \"git help command\".  linkgit:gitcli[7] manual page gives you "
-"an overview of the command-line command syntax."
+#. type: Labeled list
+#: en/blame-options.txt:13
+#, no-wrap
+msgid "-L :<funcname>"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:37
+#: en/blame-options.txt:16
 msgid ""
-"A formatted and hyperlinked copy of the latest Git documentation can be "
-"viewed at `https://git.github.io/htmldocs/git.html`."
+"Annotate only the given line range. May be specified multiple times.  "
+"Overlapping ranges are allowed."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:46
+#. type: Plain text
+#: en/blame-options.txt:19
 msgid ""
-"You are reading the documentation for the latest (possibly unreleased) "
-"version of Git, that is available from the 'master' branch of the `git.git` "
-"repository.  Documentation for older releases are available here:"
+"<start> and <end> are optional. ``-L <start>'' or ``-L <start>,'' spans from "
+"<start> to end of file. ``-L ,<end>'' spans from start of file to <end>."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:48
-msgid "link:v2.12.1/git.html[documentation for release 2.12.1]"
+#. type: Labeled list
+#: en/blame-options.txt:22 en/git-archive.txt:43 en/git-branch.txt:157
+#: en/git-checkout.txt:185 en/git-clone.txt:44 en/git-config.txt:164
+#: en/git-grep.txt:186 en/git-instaweb.txt:23 en/git-ls-tree.txt:51
+#: en/git-repack.txt:66 en/git-svn.txt:244 en/git-tag.txt:92 en/git-var.txt:20
+#, no-wrap
+msgid "-l"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:52
-msgid ""
-"release notes for link:RelNotes/2.12.1.txt[2.12.1].  "
-"link:RelNotes/2.12.0.txt[2.12]."
+#. type: Plain text
+#: en/blame-options.txt:24
+msgid "Show long rev (Default: off)."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:54
-msgid "link:v2.11.1/git.html[documentation for release 2.11.1]"
+#. type: Labeled list
+#: en/blame-options.txt:25 en/fetch-options.txt:137 en/git-branch.txt:185
+#: en/git-cat-file.txt:36 en/git-checkout.txt:166 en/git-diff-tree.txt:39
+#: en/git-ls-files.txt:113 en/git-ls-remote.txt:26 en/git-ls-tree.txt:47
+#: en/git-svn.txt:312 en/rev-list-options.txt:974
+#, no-wrap
+msgid "-t"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:58
-msgid ""
-"release notes for link:RelNotes/2.11.1.txt[2.11.1], "
-"link:RelNotes/2.11.0.txt[2.11]."
+#. type: Plain text
+#: en/blame-options.txt:27
+msgid "Show raw timestamp (Default: off)."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:60
-msgid "link:v2.10.2/git.html[documentation for release 2.10.2]"
+#. type: Labeled list
+#: en/blame-options.txt:28
+#, no-wrap
+msgid "-S <revs-file>"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:65
+#. type: Plain text
+#: en/blame-options.txt:30
 msgid ""
-"release notes for link:RelNotes/2.10.2.txt[2.10.2], "
-"link:RelNotes/2.10.1.txt[2.10.1], link:RelNotes/2.10.0.txt[2.10]."
+"Use revisions from revs-file instead of calling linkgit:git-rev-list[1]."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:67
-msgid "link:v2.9.3/git.html[documentation for release 2.9.3]"
+#. type: Labeled list
+#: en/blame-options.txt:31
+#, no-wrap
+msgid "--reverse <rev>..<rev>"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:73
+#. type: Plain text
+#: en/blame-options.txt:38
 msgid ""
-"release notes for link:RelNotes/2.9.3.txt[2.9.3], "
-"link:RelNotes/2.9.2.txt[2.9.2], link:RelNotes/2.9.1.txt[2.9.1], "
-"link:RelNotes/2.9.0.txt[2.9]."
-msgstr ""
-
-#. type: delimited block =
-#: en/git.txt:75
-msgid "link:v2.8.4/git.html[documentation for release 2.8.4]"
+"Walk history forward instead of backward. Instead of showing the revision in "
+"which a line appeared, this shows the last revision in which a line has "
+"existed. This requires a range of revision like START..END where the path to "
+"blame exists in START.  `git blame --reverse START` is taken as `git blame --"
+"reverse START..HEAD` for convenience."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:82
-msgid ""
-"release notes for link:RelNotes/2.8.4.txt[2.8.4], "
-"link:RelNotes/2.8.3.txt[2.8.3], link:RelNotes/2.8.2.txt[2.8.2], "
-"link:RelNotes/2.8.1.txt[2.8.1], link:RelNotes/2.8.0.txt[2.8]."
+#. type: Labeled list
+#: en/blame-options.txt:39 en/diff-options.txt:16 en/diff-options.txt:22
+#: en/fetch-options.txt:91 en/git-add.txt:88 en/git-cat-file.txt:49
+#: en/git-checkout.txt:253 en/git-commit.txt:70 en/git-cvsexportcommit.txt:41
+#: en/git-grep.txt:237 en/git-instaweb.txt:41 en/git-merge-file.txt:63
+#: en/git-rebase.txt:428 en/git-request-pull.txt:29 en/git-svn.txt:535
+#: en/git-svn.txt:679 en/git.txt:99
+#, no-wrap
+msgid "-p"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:84
-msgid "link:v2.7.3/git.html[documentation for release 2.7.3]"
+#. type: Labeled list
+#: en/blame-options.txt:40 en/git-commit.txt:113 en/git-push.txt:176
+#: en/git-worktree.txt:179
+#, no-wrap
+msgid "--porcelain"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:90
-msgid ""
-"release notes for link:RelNotes/2.7.3.txt[2.7.3], "
-"link:RelNotes/2.7.2.txt[2.7.2], link:RelNotes/2.7.1.txt[2.7.1], "
-"link:RelNotes/2.7.0.txt[2.7]."
+#. type: Plain text
+#: en/blame-options.txt:42
+msgid "Show in a format designed for machine consumption."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:92
-msgid "link:v2.6.6/git.html[documentation for release 2.6.6]"
+#. type: Labeled list
+#: en/blame-options.txt:43
+#, no-wrap
+msgid "--line-porcelain"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:101
+#. type: Plain text
+#: en/blame-options.txt:47
 msgid ""
-"release notes for link:RelNotes/2.6.6.txt[2.6.6], "
-"link:RelNotes/2.6.5.txt[2.6.5], link:RelNotes/2.6.4.txt[2.6.4], "
-"link:RelNotes/2.6.3.txt[2.6.3], 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]."
+"Show the porcelain format, but output commit information for each line, not "
+"just the first time a commit is referenced.  Implies --porcelain."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:103
-msgid "link:v2.5.5/git.html[documentation for release 2.5.5]"
+#. type: Labeled list
+#: en/blame-options.txt:48 en/git-pack-objects.txt:138 en/git-svn.txt:373
+#, no-wrap
+msgid "--incremental"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:111
+#. type: Plain text
+#: en/blame-options.txt:51
 msgid ""
-"release notes for link:RelNotes/2.5.5.txt[2.5.5], "
-"link:RelNotes/2.5.4.txt[2.5.4], link:RelNotes/2.5.3.txt[2.5.3], "
-"link:RelNotes/2.5.2.txt[2.5.2], link:RelNotes/2.5.1.txt[2.5.1], "
-"link:RelNotes/2.5.0.txt[2.5]."
+"Show the result incrementally in a format designed for machine consumption."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:113
-msgid "link:v2.4.11/git.html[documentation for release 2.4.11]"
+#. type: Labeled list
+#: en/blame-options.txt:52 en/git-mailinfo.txt:62 en/pretty-options.txt:35
+#, no-wrap
+msgid "--encoding=<encoding>"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:127
+#. type: Plain text
+#: en/blame-options.txt:58
 msgid ""
-"release notes for link:RelNotes/2.4.11.txt[2.4.11], "
-"link:RelNotes/2.4.10.txt[2.4.10], link:RelNotes/2.4.9.txt[2.4.9], "
-"link:RelNotes/2.4.8.txt[2.4.8], link:RelNotes/2.4.7.txt[2.4.7], "
-"link:RelNotes/2.4.6.txt[2.4.6], link:RelNotes/2.4.5.txt[2.4.5], "
-"link:RelNotes/2.4.4.txt[2.4.4], link:RelNotes/2.4.3.txt[2.4.3], "
-"link:RelNotes/2.4.2.txt[2.4.2], link:RelNotes/2.4.1.txt[2.4.1], "
-"link:RelNotes/2.4.0.txt[2.4]."
+"Specifies the encoding used to output author names and commit summaries. "
+"Setting it to `none` makes blame output unconverted data. For more "
+"information see the discussion about encoding in the linkgit:git-log[1] "
+"manual page."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:129
-msgid "link:v2.3.10/git.html[documentation for release 2.3.10]"
+#. type: Labeled list
+#: en/blame-options.txt:59
+#, no-wrap
+msgid "--contents <file>"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:142
+#. type: Plain text
+#: en/blame-options.txt:65
 msgid ""
-"release notes for link:RelNotes/2.3.10.txt[2.3.10], "
-"link:RelNotes/2.3.9.txt[2.3.9], link:RelNotes/2.3.8.txt[2.3.8], "
-"link:RelNotes/2.3.7.txt[2.3.7], link:RelNotes/2.3.6.txt[2.3.6], "
-"link:RelNotes/2.3.5.txt[2.3.5], link:RelNotes/2.3.4.txt[2.3.4], "
-"link:RelNotes/2.3.3.txt[2.3.3], link:RelNotes/2.3.2.txt[2.3.2], "
-"link:RelNotes/2.3.1.txt[2.3.1], link:RelNotes/2.3.0.txt[2.3]."
+"When <rev> is not specified, the command annotates the changes starting "
+"backwards from the working tree copy.  This flag makes the command pretend "
+"as if the working tree copy has the contents of the named file (specify `-` "
+"to make the command read from the standard input)."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:144
-msgid "link:v2.2.3/git.html[documentation for release 2.2.3]"
+#. type: Labeled list
+#: en/blame-options.txt:66
+#, no-wrap
+msgid "--date <format>"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:150
+#. type: Plain text
+#: en/blame-options.txt:72
 msgid ""
-"release notes for link:RelNotes/2.2.3.txt[2.2.3], "
-"link:RelNotes/2.2.2.txt[2.2.2], link:RelNotes/2.2.1.txt[2.2.1], "
-"link:RelNotes/2.2.0.txt[2.2]."
+"Specifies the format used to output dates. If --date is not provided, the "
+"value of the blame.date config variable is used. If the blame.date config "
+"variable is also not set, the iso format is used. For supported values, see "
+"the discussion of the --date option at linkgit:git-log[1]."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:152
-msgid "link:v2.1.4/git.html[documentation for release 2.1.4]"
+#. type: Labeled list
+#: en/blame-options.txt:73 en/git-checkout.txt:121 en/git-fsck.txt:92
+#, no-wrap
+msgid "--[no-]progress"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:159
+#. type: Plain text
+#: en/blame-options.txt:79
 msgid ""
-"release notes for link:RelNotes/2.1.4.txt[2.1.4], "
-"link:RelNotes/2.1.3.txt[2.1.3], link:RelNotes/2.1.2.txt[2.1.2], "
-"link:RelNotes/2.1.1.txt[2.1.1], link:RelNotes/2.1.0.txt[2.1]."
+"Progress status is reported on the standard error stream by default when it "
+"is attached to a terminal. This flag enables progress reporting even if not "
+"attached to a terminal. Can't use `--progress` together with `--porcelain` "
+"or `--incremental`."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:161
-msgid "link:v2.0.5/git.html[documentation for release 2.0.5]"
+#. type: Labeled list
+#: en/blame-options.txt:80
+#, no-wrap
+msgid "-M[<num>]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:169
+#. type: Plain text
+#: en/blame-options.txt:90
 msgid ""
-"release notes for link:RelNotes/2.0.5.txt[2.0.5], "
-"link:RelNotes/2.0.4.txt[2.0.4], link:RelNotes/2.0.3.txt[2.0.3], "
-"link:RelNotes/2.0.2.txt[2.0.2], link:RelNotes/2.0.1.txt[2.0.1], "
-"link:RelNotes/2.0.0.txt[2.0.0]."
-msgstr ""
-
-#. type: delimited block =
-#: en/git.txt:171
-msgid "link:v1.9.5/git.html[documentation for release 1.9.5]"
+"Detect moved or copied lines within a file. When a commit moves or copies a "
+"block of lines (e.g. the original file has A and then B, and the commit "
+"changes it to B and then A), the traditional 'blame' algorithm notices only "
+"half of the movement and typically blames the lines that were moved up (i.e. "
+"B) to the parent and assigns blame to the lines that were moved down (i.e. "
+"A) to the child commit.  With this option, both groups of lines are blamed "
+"on the parent by running extra passes of inspection."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:179
+#. type: Plain text
+#: en/blame-options.txt:95
 msgid ""
-"release notes for link:RelNotes/1.9.5.txt[1.9.5], "
-"link:RelNotes/1.9.4.txt[1.9.4], link:RelNotes/1.9.3.txt[1.9.3], "
-"link:RelNotes/1.9.2.txt[1.9.2], link:RelNotes/1.9.1.txt[1.9.1], "
-"link:RelNotes/1.9.0.txt[1.9.0]."
+"<num> is optional but it is the lower bound on the number of alphanumeric "
+"characters that Git must detect as moving/copying within a file for it to "
+"associate those lines with the parent commit. The default value is 20."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:181
-msgid "link:v1.8.5.6/git.html[documentation for release 1.8.5.6]"
+#. type: Labeled list
+#: en/blame-options.txt:96
+#, no-wrap
+msgid "-C[<num>]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:190
+#. type: Plain text
+#: en/blame-options.txt:105
 msgid ""
-"release notes for link:RelNotes/1.8.5.6.txt[1.8.5.6], "
-"link:RelNotes/1.8.5.5.txt[1.8.5.5], link:RelNotes/1.8.5.4.txt[1.8.5.4], "
-"link:RelNotes/1.8.5.3.txt[1.8.5.3], link:RelNotes/1.8.5.2.txt[1.8.5.2], "
-"link:RelNotes/1.8.5.1.txt[1.8.5.1], link:RelNotes/1.8.5.txt[1.8.5]."
-msgstr ""
-
-#. type: delimited block =
-#: en/git.txt:192
-msgid "link:v1.8.4.5/git.html[documentation for release 1.8.4.5]"
+"In addition to `-M`, detect lines moved or copied from other files that were "
+"modified in the same commit.  This is useful when you reorganize your "
+"program and move code around across files.  When this option is given twice, "
+"the command additionally looks for copies from other files in the commit "
+"that creates the file. When this option is given three times, the command "
+"additionally looks for copies from other files in any commit."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:200
+#. type: Plain text
+#: en/blame-options.txt:112
 msgid ""
-"release notes for link:RelNotes/1.8.4.5.txt[1.8.4.5], "
-"link:RelNotes/1.8.4.4.txt[1.8.4.4], link:RelNotes/1.8.4.3.txt[1.8.4.3], "
-"link:RelNotes/1.8.4.2.txt[1.8.4.2], link:RelNotes/1.8.4.1.txt[1.8.4.1], "
-"link:RelNotes/1.8.4.txt[1.8.4]."
+"<num> is optional but it is the lower bound on the number of alphanumeric "
+"characters that Git must detect as moving/copying between files for it to "
+"associate those lines with the parent commit. And the default value is 40. "
+"If there are more than one `-C` options given, the <num> argument of the "
+"last `-C` will take effect."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:202
-msgid "link:v1.8.3.4/git.html[documentation for release 1.8.3.4]"
+#. type: Labeled list
+#: en/blame-options.txt:113 en/git-archimport.txt:71 en/git-cvsimport.txt:184
+#: en/git-cvsserver.txt:48 en/git-grep.txt:144 en/git-ls-remote.txt:24
+#, no-wrap
+msgid "-h"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:209
-msgid ""
-"release notes for link:RelNotes/1.8.3.4.txt[1.8.3.4], "
-"link:RelNotes/1.8.3.3.txt[1.8.3.3], link:RelNotes/1.8.3.2.txt[1.8.3.2], "
-"link:RelNotes/1.8.3.1.txt[1.8.3.1], link:RelNotes/1.8.3.txt[1.8.3]."
+#. type: Plain text
+#: en/blame-options.txt:114
+msgid "Show help message."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:211
-msgid "link:v1.8.2.3/git.html[documentation for release 1.8.2.3]"
+#. type: Plain text
+#: en/cmds-ancillaryinterrogators.txt:1 en/git-blame.txt:232
+#, no-wrap
+msgid "linkgit:git-annotate[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:217
-msgid ""
-"release notes for link:RelNotes/1.8.2.3.txt[1.8.2.3], "
-"link:RelNotes/1.8.2.2.txt[1.8.2.2], link:RelNotes/1.8.2.1.txt[1.8.2.1], "
-"link:RelNotes/1.8.2.txt[1.8.2]."
+#. type: Plain text
+#: en/cmds-ancillaryinterrogators.txt:3
+msgid "Annotate file lines with commit information."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:219
-msgid "link:v1.8.1.6/git.html[documentation for release 1.8.1.6]"
+#. type: Plain text
+#: en/cmds-ancillaryinterrogators.txt:4 en/git-annotate.txt:30
+#, no-wrap
+msgid "linkgit:git-blame[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:228
-msgid ""
-"release notes for link:RelNotes/1.8.1.6.txt[1.8.1.6], "
-"link:RelNotes/1.8.1.5.txt[1.8.1.5], link:RelNotes/1.8.1.4.txt[1.8.1.4], "
-"link:RelNotes/1.8.1.3.txt[1.8.1.3], link:RelNotes/1.8.1.2.txt[1.8.1.2], "
-"link:RelNotes/1.8.1.1.txt[1.8.1.1], link:RelNotes/1.8.1.txt[1.8.1]."
+#. type: Plain text
+#: en/cmds-ancillaryinterrogators.txt:6
+msgid "Show what revision and author last modified each line of a file."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:230
-msgid "link:v1.8.0.3/git.html[documentation for release 1.8.0.3]"
+#. type: Labeled list
+#: en/cmds-ancillaryinterrogators.txt:7
+#, no-wrap
+msgid "linkgit:git-count-objects[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:236
-msgid ""
-"release notes for link:RelNotes/1.8.0.3.txt[1.8.0.3], "
-"link:RelNotes/1.8.0.2.txt[1.8.0.2], link:RelNotes/1.8.0.1.txt[1.8.0.1], "
-"link:RelNotes/1.8.0.txt[1.8.0]."
+#. type: Plain text
+#: en/cmds-ancillaryinterrogators.txt:9
+msgid "Count unpacked number of objects and their disk consumption."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:238
-msgid "link:v1.7.12.4/git.html[documentation for release 1.7.12.4]"
+#. type: Labeled list
+#: en/cmds-ancillaryinterrogators.txt:10
+#, no-wrap
+msgid "linkgit:git-difftool[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:245
-msgid ""
-"release notes for link:RelNotes/1.7.12.4.txt[1.7.12.4], "
-"link:RelNotes/1.7.12.3.txt[1.7.12.3], link:RelNotes/1.7.12.2.txt[1.7.12.2], "
-"link:RelNotes/1.7.12.1.txt[1.7.12.1], link:RelNotes/1.7.12.txt[1.7.12]."
+#. type: Plain text
+#: en/cmds-ancillaryinterrogators.txt:12
+msgid "Show changes using common diff tools."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:247
-msgid "link:v1.7.11.7/git.html[documentation for release 1.7.11.7]"
+#. type: Labeled list
+#: en/cmds-ancillaryinterrogators.txt:13
+#, no-wrap
+msgid "linkgit:git-fsck[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:257
-msgid ""
-"release notes for link:RelNotes/1.7.11.7.txt[1.7.11.7], "
-"link:RelNotes/1.7.11.6.txt[1.7.11.6], link:RelNotes/1.7.11.5.txt[1.7.11.5], "
-"link:RelNotes/1.7.11.4.txt[1.7.11.4], link:RelNotes/1.7.11.3.txt[1.7.11.3], "
-"link:RelNotes/1.7.11.2.txt[1.7.11.2], link:RelNotes/1.7.11.1.txt[1.7.11.1], "
-"link:RelNotes/1.7.11.txt[1.7.11]."
+#. type: Plain text
+#: en/cmds-ancillaryinterrogators.txt:15 en/git-fsck.txt:20
+msgid "Verifies the connectivity and validity of the objects in the database."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:259
-msgid "link:v1.7.10.5/git.html[documentation for release 1.7.10.5]"
+#. type: Labeled list
+#: en/cmds-ancillaryinterrogators.txt:16
+#, no-wrap
+msgid "linkgit:git-help[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:267
-msgid ""
-"release notes for link:RelNotes/1.7.10.5.txt[1.7.10.5], "
-"link:RelNotes/1.7.10.4.txt[1.7.10.4], link:RelNotes/1.7.10.3.txt[1.7.10.3], "
-"link:RelNotes/1.7.10.2.txt[1.7.10.2], link:RelNotes/1.7.10.1.txt[1.7.10.1], "
-"link:RelNotes/1.7.10.txt[1.7.10]."
+#. type: Plain text
+#: en/cmds-ancillaryinterrogators.txt:18
+msgid "Display help information about Git."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:269
-msgid "link:v1.7.9.7/git.html[documentation for release 1.7.9.7]"
+#. type: Labeled list
+#: en/cmds-ancillaryinterrogators.txt:19
+#, no-wrap
+msgid "linkgit:git-instaweb[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:279
-msgid ""
-"release notes for link:RelNotes/1.7.9.7.txt[1.7.9.7], "
-"link:RelNotes/1.7.9.6.txt[1.7.9.6], link:RelNotes/1.7.9.5.txt[1.7.9.5], "
-"link:RelNotes/1.7.9.4.txt[1.7.9.4], link:RelNotes/1.7.9.3.txt[1.7.9.3], "
-"link:RelNotes/1.7.9.2.txt[1.7.9.2], link:RelNotes/1.7.9.1.txt[1.7.9.1], "
-"link:RelNotes/1.7.9.txt[1.7.9]."
+#. type: Plain text
+#: en/cmds-ancillaryinterrogators.txt:21
+msgid "Instantly browse your working repository in gitweb."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:281
-msgid "link:v1.7.8.6/git.html[documentation for release 1.7.8.6]"
+#. type: Labeled list
+#: en/cmds-ancillaryinterrogators.txt:22
+#, no-wrap
+msgid "linkgit:git-merge-tree[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:290
-msgid ""
-"release notes for link:RelNotes/1.7.8.6.txt[1.7.8.6], "
-"link:RelNotes/1.7.8.5.txt[1.7.8.5], link:RelNotes/1.7.8.4.txt[1.7.8.4], "
-"link:RelNotes/1.7.8.3.txt[1.7.8.3], link:RelNotes/1.7.8.2.txt[1.7.8.2], "
-"link:RelNotes/1.7.8.1.txt[1.7.8.1], link:RelNotes/1.7.8.txt[1.7.8]."
+#. type: Plain text
+#: en/cmds-ancillaryinterrogators.txt:24
+msgid "Show three-way merge without touching index."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:292
-msgid "link:v1.7.7.7/git.html[documentation for release 1.7.7.7]"
+#. type: Labeled list
+#: en/cmds-ancillaryinterrogators.txt:25
+#, no-wrap
+msgid "linkgit:git-rerere[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:302
-msgid ""
-"release notes for link:RelNotes/1.7.7.7.txt[1.7.7.7], "
-"link:RelNotes/1.7.7.6.txt[1.7.7.6], link:RelNotes/1.7.7.5.txt[1.7.7.5], "
-"link:RelNotes/1.7.7.4.txt[1.7.7.4], link:RelNotes/1.7.7.3.txt[1.7.7.3], "
-"link:RelNotes/1.7.7.2.txt[1.7.7.2], link:RelNotes/1.7.7.1.txt[1.7.7.1], "
-"link:RelNotes/1.7.7.txt[1.7.7]."
+#. type: Plain text
+#: en/cmds-ancillaryinterrogators.txt:27
+msgid "Reuse recorded resolution of conflicted merges."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:304
-msgid "link:v1.7.6.6/git.html[documentation for release 1.7.6.6]"
+#. type: Labeled list
+#: en/cmds-ancillaryinterrogators.txt:28
+#, no-wrap
+msgid "linkgit:git-show-branch[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:313
-msgid ""
-"release notes for link:RelNotes/1.7.6.6.txt[1.7.6.6], "
-"link:RelNotes/1.7.6.5.txt[1.7.6.5], link:RelNotes/1.7.6.4.txt[1.7.6.4], "
-"link:RelNotes/1.7.6.3.txt[1.7.6.3], link:RelNotes/1.7.6.2.txt[1.7.6.2], "
-"link:RelNotes/1.7.6.1.txt[1.7.6.1], link:RelNotes/1.7.6.txt[1.7.6]."
+#. type: Plain text
+#: en/cmds-ancillaryinterrogators.txt:30
+msgid "Show branches and their commits."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:315
-msgid "link:v1.7.5.4/git.html[documentation for release 1.7.5.4]"
+#. type: Labeled list
+#: en/cmds-ancillaryinterrogators.txt:31
+#, no-wrap
+msgid "linkgit:git-verify-commit[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:322
-msgid ""
-"release notes for link:RelNotes/1.7.5.4.txt[1.7.5.4], "
-"link:RelNotes/1.7.5.3.txt[1.7.5.3], link:RelNotes/1.7.5.2.txt[1.7.5.2], "
-"link:RelNotes/1.7.5.1.txt[1.7.5.1], link:RelNotes/1.7.5.txt[1.7.5]."
+#. type: Plain text
+#: en/cmds-ancillaryinterrogators.txt:33
+msgid "Check the GPG signature of commits."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:324
-msgid "link:v1.7.4.5/git.html[documentation for release 1.7.4.5]"
+#. type: Labeled list
+#: en/cmds-ancillaryinterrogators.txt:34
+#, no-wrap
+msgid "linkgit:git-verify-tag[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:332
-msgid ""
-"release notes for link:RelNotes/1.7.4.5.txt[1.7.4.5], "
-"link:RelNotes/1.7.4.4.txt[1.7.4.4], link:RelNotes/1.7.4.3.txt[1.7.4.3], "
-"link:RelNotes/1.7.4.2.txt[1.7.4.2], link:RelNotes/1.7.4.1.txt[1.7.4.1], "
-"link:RelNotes/1.7.4.txt[1.7.4]."
+#. type: Plain text
+#: en/cmds-ancillaryinterrogators.txt:36
+msgid "Check the GPG signature of tags."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:334
-msgid "link:v1.7.3.5/git.html[documentation for release 1.7.3.5]"
+#. type: Labeled list
+#: en/cmds-ancillaryinterrogators.txt:37
+#, no-wrap
+msgid "linkgit:git-whatchanged[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:342
-msgid ""
-"release notes for link:RelNotes/1.7.3.5.txt[1.7.3.5], "
-"link:RelNotes/1.7.3.4.txt[1.7.3.4], link:RelNotes/1.7.3.3.txt[1.7.3.3], "
-"link:RelNotes/1.7.3.2.txt[1.7.3.2], link:RelNotes/1.7.3.1.txt[1.7.3.1], "
-"link:RelNotes/1.7.3.txt[1.7.3]."
+#. type: Plain text
+#: en/cmds-ancillaryinterrogators.txt:39
+msgid "Show logs with difference each commit introduces."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:344
-msgid "link:v1.7.2.5/git.html[documentation for release 1.7.2.5]"
+#. type: Plain text
+#: en/cmds-ancillaryinterrogators.txt:40 en/git-instaweb.txt:91
+#, no-wrap
+msgid "linkgit:gitweb[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:352
-msgid ""
-"release notes for link:RelNotes/1.7.2.5.txt[1.7.2.5], "
-"link:RelNotes/1.7.2.4.txt[1.7.2.4], link:RelNotes/1.7.2.3.txt[1.7.2.3], "
-"link:RelNotes/1.7.2.2.txt[1.7.2.2], link:RelNotes/1.7.2.1.txt[1.7.2.1], "
-"link:RelNotes/1.7.2.txt[1.7.2]."
+#. type: Plain text
+#: en/cmds-ancillaryinterrogators.txt:42
+msgid "Git web interface (web frontend to Git repositories)."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:354
-msgid "link:v1.7.1.4/git.html[documentation for release 1.7.1.4]"
+#. type: Labeled list
+#: en/cmds-ancillarymanipulators.txt:1 en/git-difftool.txt:142
+#, no-wrap
+msgid "linkgit:git-config[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:361
-msgid ""
-"release notes for link:RelNotes/1.7.1.4.txt[1.7.1.4], "
-"link:RelNotes/1.7.1.3.txt[1.7.1.3], link:RelNotes/1.7.1.2.txt[1.7.1.2], "
-"link:RelNotes/1.7.1.1.txt[1.7.1.1], link:RelNotes/1.7.1.txt[1.7.1]."
+#. type: Plain text
+#: en/cmds-ancillarymanipulators.txt:3
+msgid "Get and set repository or global options."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:363
-msgid "link:v1.7.0.9/git.html[documentation for release 1.7.0.9]"
+#. type: Plain text
+#: en/cmds-ancillarymanipulators.txt:4 en/git-fast-import.txt:1489
+#, no-wrap
+msgid "linkgit:git-fast-export[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:375
-msgid ""
-"release notes for link:RelNotes/1.7.0.9.txt[1.7.0.9], "
-"link:RelNotes/1.7.0.8.txt[1.7.0.8], link:RelNotes/1.7.0.7.txt[1.7.0.7], "
-"link:RelNotes/1.7.0.6.txt[1.7.0.6], link:RelNotes/1.7.0.5.txt[1.7.0.5], "
-"link:RelNotes/1.7.0.4.txt[1.7.0.4], link:RelNotes/1.7.0.3.txt[1.7.0.3], "
-"link:RelNotes/1.7.0.2.txt[1.7.0.2], link:RelNotes/1.7.0.1.txt[1.7.0.1], "
-"link:RelNotes/1.7.0.txt[1.7.0]."
+#. type: Plain text
+#: en/cmds-ancillarymanipulators.txt:6
+msgid "Git data exporter."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:377
-msgid "link:v1.6.6.3/git.html[documentation for release 1.6.6.3]"
+#. type: Plain text
+#: en/cmds-ancillarymanipulators.txt:7 en/git-fast-export.txt:236
+#, no-wrap
+msgid "linkgit:git-fast-import[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:383
-msgid ""
-"release notes for link:RelNotes/1.6.6.3.txt[1.6.6.3], "
-"link:RelNotes/1.6.6.2.txt[1.6.6.2], link:RelNotes/1.6.6.1.txt[1.6.6.1], "
-"link:RelNotes/1.6.6.txt[1.6.6]."
+#. type: Plain text
+#: en/cmds-ancillarymanipulators.txt:9
+msgid "Backend for fast Git data importers."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:385
-msgid "link:v1.6.5.9/git.html[documentation for release 1.6.5.9]"
+#. type: Labeled list
+#: en/cmds-ancillarymanipulators.txt:10
+#, no-wrap
+msgid "linkgit:git-filter-branch[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:397
-msgid ""
-"release notes for link:RelNotes/1.6.5.9.txt[1.6.5.9], "
-"link:RelNotes/1.6.5.8.txt[1.6.5.8], link:RelNotes/1.6.5.7.txt[1.6.5.7], "
-"link:RelNotes/1.6.5.6.txt[1.6.5.6], link:RelNotes/1.6.5.5.txt[1.6.5.5], "
-"link:RelNotes/1.6.5.4.txt[1.6.5.4], link:RelNotes/1.6.5.3.txt[1.6.5.3], "
-"link:RelNotes/1.6.5.2.txt[1.6.5.2], link:RelNotes/1.6.5.1.txt[1.6.5.1], "
-"link:RelNotes/1.6.5.txt[1.6.5]."
+#. type: Plain text
+#: en/cmds-ancillarymanipulators.txt:12
+msgid "Rewrite branches."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:399
-msgid "link:v1.6.4.5/git.html[documentation for release 1.6.4.5]"
+#. type: Labeled list
+#: en/cmds-ancillarymanipulators.txt:13 en/git-difftool.txt:139
+#, no-wrap
+msgid "linkgit:git-mergetool[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:407
-msgid ""
-"release notes for link:RelNotes/1.6.4.5.txt[1.6.4.5], "
-"link:RelNotes/1.6.4.4.txt[1.6.4.4], link:RelNotes/1.6.4.3.txt[1.6.4.3], "
-"link:RelNotes/1.6.4.2.txt[1.6.4.2], link:RelNotes/1.6.4.1.txt[1.6.4.1], "
-"link:RelNotes/1.6.4.txt[1.6.4]."
+#. type: Plain text
+#: en/cmds-ancillarymanipulators.txt:15
+msgid "Run merge conflict resolution tools to resolve merge conflicts."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:409
-msgid "link:v1.6.3.4/git.html[documentation for release 1.6.3.4]"
+#. type: Labeled list
+#: en/cmds-ancillarymanipulators.txt:16
+#, no-wrap
+msgid "linkgit:git-pack-refs[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:416
-msgid ""
-"release notes for link:RelNotes/1.6.3.4.txt[1.6.3.4], "
-"link:RelNotes/1.6.3.3.txt[1.6.3.3], link:RelNotes/1.6.3.2.txt[1.6.3.2], "
-"link:RelNotes/1.6.3.1.txt[1.6.3.1], link:RelNotes/1.6.3.txt[1.6.3]."
+#. type: Plain text
+#: en/cmds-ancillarymanipulators.txt:18
+msgid "Pack heads and tags for efficient repository access."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:424
-msgid ""
-"release notes for link:RelNotes/1.6.2.5.txt[1.6.2.5], "
-"link:RelNotes/1.6.2.4.txt[1.6.2.4], link:RelNotes/1.6.2.3.txt[1.6.2.3], "
-"link:RelNotes/1.6.2.2.txt[1.6.2.2], link:RelNotes/1.6.2.1.txt[1.6.2.1], "
-"link:RelNotes/1.6.2.txt[1.6.2]."
+#. type: Labeled list
+#: en/cmds-ancillarymanipulators.txt:19
+#, no-wrap
+msgid "linkgit:git-prune[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:426
-msgid "link:v1.6.1.3/git.html[documentation for release 1.6.1.3]"
+#. type: Plain text
+#: en/cmds-ancillarymanipulators.txt:21
+msgid "Prune all unreachable objects from the object database."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:432
-msgid ""
-"release notes for link:RelNotes/1.6.1.3.txt[1.6.1.3], "
-"link:RelNotes/1.6.1.2.txt[1.6.1.2], link:RelNotes/1.6.1.1.txt[1.6.1.1], "
-"link:RelNotes/1.6.1.txt[1.6.1]."
+#. type: Labeled list
+#: en/cmds-ancillarymanipulators.txt:22
+#, no-wrap
+msgid "linkgit:git-reflog[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:434
-msgid "link:v1.6.0.6/git.html[documentation for release 1.6.0.6]"
+#. type: Plain text
+#: en/cmds-ancillarymanipulators.txt:24
+msgid "Manage reflog information."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:443
-msgid ""
-"release notes for link:RelNotes/1.6.0.6.txt[1.6.0.6], "
-"link:RelNotes/1.6.0.5.txt[1.6.0.5], link:RelNotes/1.6.0.4.txt[1.6.0.4], "
-"link:RelNotes/1.6.0.3.txt[1.6.0.3], link:RelNotes/1.6.0.2.txt[1.6.0.2], "
-"link:RelNotes/1.6.0.1.txt[1.6.0.1], link:RelNotes/1.6.0.txt[1.6.0]."
+#. type: Labeled list
+#: en/cmds-ancillarymanipulators.txt:25
+#, no-wrap
+msgid "linkgit:git-remote[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:445
-msgid "link:v1.5.6.6/git.html[documentation for release 1.5.6.6]"
+#. type: Plain text
+#: en/cmds-ancillarymanipulators.txt:27
+msgid "Manage set of tracked repositories."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:454
-msgid ""
-"release notes for link:RelNotes/1.5.6.6.txt[1.5.6.6], "
-"link:RelNotes/1.5.6.5.txt[1.5.6.5], link:RelNotes/1.5.6.4.txt[1.5.6.4], "
-"link:RelNotes/1.5.6.3.txt[1.5.6.3], link:RelNotes/1.5.6.2.txt[1.5.6.2], "
-"link:RelNotes/1.5.6.1.txt[1.5.6.1], link:RelNotes/1.5.6.txt[1.5.6]."
+#. type: Labeled list
+#: en/cmds-ancillarymanipulators.txt:28
+#, no-wrap
+msgid "linkgit:git-repack[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:456
-msgid "link:v1.5.5.6/git.html[documentation for release 1.5.5.6]"
+#. type: Plain text
+#: en/cmds-ancillarymanipulators.txt:30
+msgid "Pack unpacked objects in a repository."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:465
-msgid ""
-"release notes for link:RelNotes/1.5.5.6.txt[1.5.5.6], "
-"link:RelNotes/1.5.5.5.txt[1.5.5.5], link:RelNotes/1.5.5.4.txt[1.5.5.4], "
-"link:RelNotes/1.5.5.3.txt[1.5.5.3], link:RelNotes/1.5.5.2.txt[1.5.5.2], "
-"link:RelNotes/1.5.5.1.txt[1.5.5.1], link:RelNotes/1.5.5.txt[1.5.5]."
+#. type: Labeled list
+#: en/cmds-ancillarymanipulators.txt:31
+#, no-wrap
+msgid "linkgit:git-replace[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:467
-msgid "link:v1.5.4.7/git.html[documentation for release 1.5.4.7]"
+#. type: Plain text
+#: en/cmds-ancillarymanipulators.txt:33
+msgid "Create, list, delete refs to replace objects."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:477
-msgid ""
-"release notes for link:RelNotes/1.5.4.7.txt[1.5.4.7], "
-"link:RelNotes/1.5.4.6.txt[1.5.4.6], link:RelNotes/1.5.4.5.txt[1.5.4.5], "
-"link:RelNotes/1.5.4.4.txt[1.5.4.4], link:RelNotes/1.5.4.3.txt[1.5.4.3], "
-"link:RelNotes/1.5.4.2.txt[1.5.4.2], link:RelNotes/1.5.4.1.txt[1.5.4.1], "
-"link:RelNotes/1.5.4.txt[1.5.4]."
+#. type: Labeled list
+#: en/cmds-foreignscminterface.txt:1
+#, no-wrap
+msgid "linkgit:git-archimport[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:479
-msgid "link:v1.5.3.8/git.html[documentation for release 1.5.3.8]"
+#. type: Plain text
+#: en/cmds-foreignscminterface.txt:3
+msgid "Import a GNU Arch repository into Git."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:490
-msgid ""
-"release notes for link:RelNotes/1.5.3.8.txt[1.5.3.8], "
-"link:RelNotes/1.5.3.7.txt[1.5.3.7], link:RelNotes/1.5.3.6.txt[1.5.3.6], "
-"link:RelNotes/1.5.3.5.txt[1.5.3.5], link:RelNotes/1.5.3.4.txt[1.5.3.4], "
-"link:RelNotes/1.5.3.3.txt[1.5.3.3], link:RelNotes/1.5.3.2.txt[1.5.3.2], "
-"link:RelNotes/1.5.3.1.txt[1.5.3.1], link:RelNotes/1.5.3.txt[1.5.3]."
-msgstr ""
-
-#. type: delimited block =
-#: en/git.txt:492
-msgid "link:v1.5.2.5/git.html[documentation for release 1.5.2.5]"
+#. type: Labeled list
+#: en/cmds-foreignscminterface.txt:4
+#, no-wrap
+msgid "linkgit:git-cvsexportcommit[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:500
-msgid ""
-"release notes for link:RelNotes/1.5.2.5.txt[1.5.2.5], "
-"link:RelNotes/1.5.2.4.txt[1.5.2.4], link:RelNotes/1.5.2.3.txt[1.5.2.3], "
-"link:RelNotes/1.5.2.2.txt[1.5.2.2], link:RelNotes/1.5.2.1.txt[1.5.2.1], "
-"link:RelNotes/1.5.2.txt[1.5.2]."
+#. type: Plain text
+#: en/cmds-foreignscminterface.txt:6
+msgid "Export a single commit to a CVS checkout."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:502
-msgid "link:v1.5.1.6/git.html[documentation for release 1.5.1.6]"
+#. type: Labeled list
+#: en/cmds-foreignscminterface.txt:7
+#, no-wrap
+msgid "linkgit:git-cvsimport[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:511
-msgid ""
-"release notes for link:RelNotes/1.5.1.6.txt[1.5.1.6], "
-"link:RelNotes/1.5.1.5.txt[1.5.1.5], link:RelNotes/1.5.1.4.txt[1.5.1.4], "
-"link:RelNotes/1.5.1.3.txt[1.5.1.3], link:RelNotes/1.5.1.2.txt[1.5.1.2], "
-"link:RelNotes/1.5.1.1.txt[1.5.1.1], link:RelNotes/1.5.1.txt[1.5.1]."
+#. type: Plain text
+#: en/cmds-foreignscminterface.txt:9
+msgid "Salvage your data out of another SCM people love to hate."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:513
-msgid "link:v1.5.0.7/git.html[documentation for release 1.5.0.7]"
+#. type: Labeled list
+#: en/cmds-foreignscminterface.txt:10
+#, no-wrap
+msgid "linkgit:git-cvsserver[1]"
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:522
-msgid ""
-"release notes for link:RelNotes/1.5.0.7.txt[1.5.0.7], "
-"link:RelNotes/1.5.0.6.txt[1.5.0.6], link:RelNotes/1.5.0.5.txt[1.5.0.5], "
-"link:RelNotes/1.5.0.3.txt[1.5.0.3], link:RelNotes/1.5.0.2.txt[1.5.0.2], "
-"link:RelNotes/1.5.0.1.txt[1.5.0.1], link:RelNotes/1.5.0.txt[1.5.0]."
+#. type: Plain text
+#: en/cmds-foreignscminterface.txt:12
+msgid "A CVS server emulator for Git."
 msgstr ""
 
-#. type: delimited block =
-#: en/git.txt:527
-msgid ""
-"documentation for release link:v1.4.4.4/git.html[1.4.4.4], "
-"link:v1.3.3/git.html[1.3.3], link:v1.2.6/git.html[1.2.6], "
-"link:v1.0.13/git.html[1.0.13]."
+#. type: Labeled list
+#: en/cmds-foreignscminterface.txt:13
+#, no-wrap
+msgid "linkgit:git-imap-send[1]"
 msgstr ""
 
-#. type: Title -
-#: en/git.txt:533 en/git-add.txt:51 en/git-am.txt:28 en/git-annotate.txt:24 en/git-apply.txt:36 en/git-archimport.txt:68 en/git-archive.txt:34 en/git-bisect.txt:357 en/git-blame.txt:49 en/git-branch.txt:77 en/git-bundle.txt:34 en/git-cat-file.txt:30 en/git-check-attr.txt:21 en/git-check-ignore.txt:27 en/git-check-mailmap.txt:25 en/git-checkout-index.txt:24 en/git-checkout.txt:105 en/git-check-ref-format.txt:87 en/git-cherry-pick.txt:44 en/git-cherry.txt:28 en/git-clean.txt:27 en/git-clone.txt:42 en/git-column.txt:19 en/git-commit.txt:59 en/git-commit-tree.txt:42 en/git-config.txt:72 en/git-count-objects.txt:20 en/git-credential-cache.txt:27 en/git-credential-store.txt:30 en/git-cvsexportcommit.txt:35 en/git-cvsimport.txt:51 en/git-cvsserver.txt:28 en/git-daemon.txt:47 en/git-describe.txt:28 en/git-diff-files.txt:22 en/git-diff-index.txt:23 en/git-difftool.txt:21 en/git-diff-tree.txt:26 en/git-diff.txt:96 en/git-fast-export.txt:25 en/git-fast-import.txt:35 en/git-fetch-pack.txt:34 en/git-fetch.txt:46 en/git-filter-branch.txt:83 en/git-fmt-merge-msg.txt:25 en/git-for-each-ref.txt:27 en/git-format-patch.txt:81 en/git-fsck.txt:22 en/git-gc.txt:34 en/git-grep.txt:71 en/git-hash-object.txt:26 en/git-help.txt:40 en/git-http-fetch.txt:22 en/git-http-push.txt:24 en/git-imap-send.txt:30 en/git-index-pack.txt:26 en/git-init.txt:39 en/git-instaweb.txt:21 en/git-interpret-trailers.txt:69 en/git-log.txt:25 en/git-ls-files.txt:34 en/git-ls-remote.txt:23 en/git-ls-tree.txt:37 en/git-mailinfo.txt:26 en/git-mailsplit.txt:23 en/git-merge-base.txt:70 en/git-merge-file.txt:53 en/git-merge-index.txt:22 en/git-mergetool.txt:26 en/git-merge.txt:69 en/git-mktree.txt:22 en/git-mv.txt:30 en/git-name-rev.txt:22 en/git-notes.txt:126 en/git-p4.txt:162 en/git-pack-objects.txt:48 en/git-pack-redundant.txt:29 en/git-pack-refs.txt:46 en/git-patch-id.txt:31 en/git-prune-packed.txt:30 en/git-prune.txt:34 en/git-pull.txt:75 en/git-quiltimport.txt:32 en/git-read-tree.txt:33 en/git-rebase.txt:226 en/git-receive-pack.txt:40 en/git-reflog.txt:61 en/git-remote.txt:33 en/git-repack.txt:29 en/git-replace.txt:58 en/git-request-pull.txt:28 en/git-reset.txt:94 en/git-revert.txt:34 en/git-rev-list.txt:112 en/git-rev-parse.txt:26 en/git-rm.txt:28 en/git-send-email.txt:43 en/git-send-pack.txt:27 en/git-shortlog.txt:27 en/git-show-branch.txt:32 en/git-show-ref.txt:34 en/git-show.txt:36 en/git-stash.txt:49 en/git-status.txt:25 en/git-stripspace.txt:37 en/git-submodule.txt:270 en/git-svn.txt:544 en/git-symbolic-ref.txt:33 en/git-tag.txt:58 en/git-unpack-file.txt:22 en/git-unpack-objects.txt:29 en/git-update-index.txt:41 en/git-update-server-info.txt:24 en/git-upload-archive.txt:56 en/git-var.txt:19 en/git-verify-commit.txt:18 en/git-verify-pack.txt:22 en/git-verify-tag.txt:18 en/git-web--browse.txt:43 en/git-worktree.txt:83 en/git-write-tree.txt:29
-#, no-wrap
-msgid "OPTIONS"
+#. type: Plain text
+#: en/cmds-foreignscminterface.txt:15
+msgid "Send a collection of patches from stdin to an IMAP folder."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:534 en/git-cvsserver.txt:45
+#: en/cmds-foreignscminterface.txt:16
 #, no-wrap
-msgid "--version"
+msgid "linkgit:git-p4[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:536
-msgid "Prints the Git suite version that the 'git' program came from."
+#: en/cmds-foreignscminterface.txt:18
+msgid "Import from and submit to Perforce repositories."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:537 en/git-cvsserver.txt:50
+#: en/cmds-foreignscminterface.txt:19
 #, no-wrap
-msgid "--help"
-msgstr ""
-
-#. type: Plain text
-#: en/git.txt:542
-msgid ""
-"Prints the synopsis and a list of the most commonly used commands. If the "
-"option `--all` or `-a` is given then all available commands are printed. If "
-"a Git command is named this option will bring up the manual page for that "
-"command."
+msgid "linkgit:git-quiltimport[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:547
-msgid ""
-"Other options are available to control how the manual page is displayed. See "
-"linkgit:git-help[1] for more information, because `git --help ...` is "
-"converted internally into `git help ...`."
+#: en/cmds-foreignscminterface.txt:21
+msgid "Applies a quilt patchset onto the current branch."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:548
+#: en/cmds-foreignscminterface.txt:22
 #, no-wrap
-msgid "-C <path>"
+msgid "linkgit:git-request-pull[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:553
-msgid ""
-"Run as if git was started in '<path>' instead of the current working "
-"directory.  When multiple `-C` options are given, each subsequent "
-"non-absolute `-C <path>` is interpreted relative to the preceding `-C "
-"<path>`."
+#: en/cmds-foreignscminterface.txt:24
+msgid "Generates a summary of pending changes."
 msgstr ""
 
-#. type: Plain text
-#: en/git.txt:558
-msgid ""
-"This option affects options that expect path name like `--git-dir` and "
-"`--work-tree` in that their interpretations of the path names would be made "
-"relative to the working directory caused by the `-C` option. For example the "
-"following invocations are equivalent:"
+#. type: Labeled list
+#: en/cmds-foreignscminterface.txt:25
+#, no-wrap
+msgid "linkgit:git-send-email[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:561
-#, no-wrap
-msgid ""
-"    git --git-dir=a.git --work-tree=b -C c status\n"
-"    git --git-dir=c/a.git --work-tree=c/b status\n"
+#: en/cmds-foreignscminterface.txt:27
+msgid "Send a collection of patches as emails."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:562
+#: en/cmds-foreignscminterface.txt:28
 #, no-wrap
-msgid "-c <name>=<value>"
+msgid "linkgit:git-svn[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:567
-msgid ""
-"Pass a configuration parameter to the command. The value given will override "
-"values from configuration files.  The <name> is expected in the same format "
-"as listed by 'git config' (subkeys separated by dots)."
+#: en/cmds-foreignscminterface.txt:30
+msgid "Bidirectional operation between a Subversion repository and Git."
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:572
-msgid ""
-"Note that omitting the `=` in `git -c foo.bar ...` is allowed and sets "
-"`foo.bar` to the boolean true value (just like `[foo]bar` would in a config "
-"file). Including the equals but with an empty value (like `git -c foo.bar= "
-"...`) sets `foo.bar` to the empty string."
+#: en/cmds-mainporcelain.txt:1 en/git-rm.txt:186
+#, no-wrap
+msgid "linkgit:git-add[1]"
+msgstr ""
+
+#. type: Plain text
+#: en/cmds-mainporcelain.txt:3
+msgid "Add file contents to the index."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:573
+#: en/cmds-mainporcelain.txt:4
 #, no-wrap
-msgid "--exec-path[=<path>]"
+msgid "linkgit:git-am[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:578
-msgid ""
-"Path to wherever your core Git programs are installed.  This can also be "
-"controlled by setting the GIT_EXEC_PATH environment variable. If no path is "
-"given, 'git' will print the current setting and then exit."
+#: en/cmds-mainporcelain.txt:6
+msgid "Apply a series of patches from a mailbox."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:579
+#: en/cmds-mainporcelain.txt:7
 #, no-wrap
-msgid "--html-path"
+msgid "linkgit:git-archive[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:582
-msgid ""
-"Print the path, without trailing slash, where Git's HTML documentation is "
-"installed and exit."
+#: en/cmds-mainporcelain.txt:9
+msgid "Create an archive of files from a named tree."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:583
+#: en/cmds-mainporcelain.txt:10
 #, no-wrap
-msgid "--man-path"
+msgid "linkgit:git-bisect[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:586
-msgid ""
-"Print the manpath (see `man(1)`) for the man pages for this version of Git "
-"and exit."
+#: en/cmds-mainporcelain.txt:12
+msgid "Use binary search to find the commit that introduced a bug."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:587
+#: en/cmds-mainporcelain.txt:13
 #, no-wrap
-msgid "--info-path"
+msgid "linkgit:git-branch[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:590
-msgid ""
-"Print the path where the Info files documenting this version of Git are "
-"installed and exit."
+#: en/cmds-mainporcelain.txt:15
+msgid "List, create, or delete branches."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:591 en/git-add.txt:85 en/git-cat-file.txt:48 en/git-checkout.txt:242 en/git-commit.txt:66 en/git-cvsexportcommit.txt:41 en/git-grep.txt:222 en/git-instaweb.txt:40 en/git-merge-file.txt:63 en/git-rebase.txt:383 en/git-request-pull.txt:29 en/git-svn.txt:504 en/git-svn.txt:641 en/blame-options.txt:39 en/diff-options.txt:16 en/diff-options.txt:22 en/fetch-options.txt:67
+#: en/cmds-mainporcelain.txt:16
 #, no-wrap
-msgid "-p"
+msgid "linkgit:git-bundle[1]"
+msgstr ""
+
+#. type: Plain text
+#: en/cmds-mainporcelain.txt:18
+msgid "Move objects and refs by archive."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:592
+#: en/cmds-mainporcelain.txt:19
 #, no-wrap
-msgid "--paginate"
+msgid "linkgit:git-checkout[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:597
-msgid ""
-"Pipe all output into 'less' (or if set, $PAGER) if standard output is a "
-"terminal.  This overrides the `pager.<cmd>` configuration options (see the "
-"\"Configuration Mechanism\" section below)."
+#: en/cmds-mainporcelain.txt:21
+msgid "Switch branches or restore working tree files."
 msgstr ""
 
-#. type: Labeled list
-#: en/git.txt:598
+#. type: Plain text
+#: en/cmds-mainporcelain.txt:22 en/git-revert.txt:126
 #, no-wrap
-msgid "--no-pager"
+msgid "linkgit:git-cherry-pick[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:600
-msgid "Do not pipe Git output into a pager."
+#: en/cmds-mainporcelain.txt:24
+msgid "Apply the changes introduced by some existing commits."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:601
+#: en/cmds-mainporcelain.txt:25
 #, no-wrap
-msgid "--git-dir=<path>"
+msgid "linkgit:git-citool[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:605
-msgid ""
-"Set the path to the repository. This can also be controlled by setting the "
-"`GIT_DIR` environment variable. It can be an absolute path or relative path "
-"to current working directory."
+#: en/cmds-mainporcelain.txt:27
+msgid "Graphical alternative to git-commit."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:606
+#: en/cmds-mainporcelain.txt:28
 #, no-wrap
-msgid "--work-tree=<path>"
+msgid "linkgit:git-clean[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:613
-msgid ""
-"Set the path to the working tree. It can be an absolute path or a path "
-"relative to the current working directory.  This can also be controlled by "
-"setting the GIT_WORK_TREE environment variable and the core.worktree "
-"configuration variable (see core.worktree in linkgit:git-config[1] for a "
-"more detailed discussion)."
+#: en/cmds-mainporcelain.txt:30
+msgid "Remove untracked files from the working tree."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:614
+#: en/cmds-mainporcelain.txt:31
 #, no-wrap
-msgid "--namespace=<path>"
+msgid "linkgit:git-clone[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:618
-msgid ""
-"Set the Git namespace.  See linkgit:gitnamespaces[7] for more details.  "
-"Equivalent to setting the `GIT_NAMESPACE` environment variable."
+#: en/cmds-mainporcelain.txt:33
+msgid "Clone a repository into a new directory."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:619
+#: en/cmds-mainporcelain.txt:34
 #, no-wrap
-msgid "--super-prefix=<path>"
+msgid "linkgit:git-commit[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:623
-msgid ""
-"Currently for internal use only.  Set a prefix which gives a path from above "
-"a repository down to its root.  One use is to give submodules context about "
-"the superproject that invoked it."
+#: en/cmds-mainporcelain.txt:36
+msgid "Record changes to the repository."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:624 en/git-clone.txt:138 en/git-init.txt:48 en/git-p4.txt:268
+#: en/cmds-mainporcelain.txt:37
 #, no-wrap
-msgid "--bare"
+msgid "linkgit:git-describe[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:628
-msgid ""
-"Treat the repository as a bare repository.  If GIT_DIR environment is not "
-"set, it is set to the current working directory."
+#: en/cmds-mainporcelain.txt:39
+msgid "Give an object a human readable name based on an available ref."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:629
+#: en/cmds-mainporcelain.txt:40 en/git-difftool.txt:136
 #, no-wrap
-msgid "--no-replace-objects"
+msgid "linkgit:git-diff[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:632
-msgid ""
-"Do not use replacement refs to replace Git objects. See "
-"linkgit:git-replace[1] for more information."
+#: en/cmds-mainporcelain.txt:42
+msgid "Show changes between commits, commit and working tree, etc."
 msgstr ""
 
-#. type: Labeled list
-#: en/git.txt:633
+#. type: Plain text
+#: en/cmds-mainporcelain.txt:43 en/git-fetch-pack.txt:129
 #, no-wrap
-msgid "--literal-pathspecs"
+msgid "linkgit:git-fetch[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:637
-msgid ""
-"Treat pathspecs literally (i.e. no globbing, no pathspec magic).  This is "
-"equivalent to setting the `GIT_LITERAL_PATHSPECS` environment variable to "
-"`1`."
+#: en/cmds-mainporcelain.txt:45
+msgid "Download objects and refs from another repository."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:638
+#: en/cmds-mainporcelain.txt:46
 #, no-wrap
-msgid "--glob-pathspecs"
+msgid "linkgit:git-format-patch[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:643
-msgid ""
-"Add \"glob\" magic to all pathspec. This is equivalent to setting the "
-"`GIT_GLOB_PATHSPECS` environment variable to `1`. Disabling globbing on "
-"individual pathspecs can be done using pathspec magic \":(literal)\""
+#: en/cmds-mainporcelain.txt:48
+msgid "Prepare patches for e-mail submission."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:644
+#: en/cmds-mainporcelain.txt:49
 #, no-wrap
-msgid "--noglob-pathspecs"
+msgid "linkgit:git-gc[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:649
-msgid ""
-"Add \"literal\" magic to all pathspec. This is equivalent to setting the "
-"`GIT_NOGLOB_PATHSPECS` environment variable to `1`. Enabling globbing on "
-"individual pathspecs can be done using pathspec magic \":(glob)\""
+#: en/cmds-mainporcelain.txt:51
+msgid "Cleanup unnecessary files and optimize the local repository."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:650
+#: en/cmds-mainporcelain.txt:52
 #, no-wrap
-msgid "--icase-pathspecs"
+msgid "linkgit:git-grep[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:653
-msgid ""
-"Add \"icase\" magic to all pathspec. This is equivalent to setting the "
-"`GIT_ICASE_PATHSPECS` environment variable to `1`."
+#: en/cmds-mainporcelain.txt:54
+msgid "Print lines matching a pattern."
 msgstr ""
 
-#. type: Title -
-#: en/git.txt:655
+#. type: Labeled list
+#: en/cmds-mainporcelain.txt:55
 #, no-wrap
-msgid "GIT COMMANDS"
+msgid "linkgit:git-gui[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:659
-msgid ""
-"We divide Git into high level (\"porcelain\") commands and low level "
-"(\"plumbing\") commands."
+#: en/cmds-mainporcelain.txt:57
+msgid "A portable graphical interface to Git."
 msgstr ""
 
-#. type: Title -
-#: en/git.txt:661
+#. type: Labeled list
+#: en/cmds-mainporcelain.txt:58
 #, no-wrap
-msgid "High-level commands (porcelain)"
+msgid "linkgit:git-init[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:665
-msgid ""
-"We separate the porcelain commands into the main commands and some ancillary "
-"user utilities."
+#: en/cmds-mainporcelain.txt:60
+msgid "Create an empty Git repository or reinitialize an existing one."
 msgstr ""
 
-#. type: Title ~
-#: en/git.txt:667
+#. type: Labeled list
+#: en/cmds-mainporcelain.txt:61
 #, no-wrap
-msgid "Main porcelain commands"
+msgid "linkgit:git-log[1]"
 msgstr ""
 
-#. type: Title ~
-#: en/git.txt:672
-#, no-wrap
-msgid "Ancillary Commands"
+#. type: Plain text
+#: en/cmds-mainporcelain.txt:63
+msgid "Show commit logs."
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:674
-msgid "Manipulators:"
+#: en/cmds-mainporcelain.txt:64 en/git-fmt-merge-msg.txt:75
+#, no-wrap
+msgid "linkgit:git-merge[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:678
-msgid "Interrogators:"
+#: en/cmds-mainporcelain.txt:66
+msgid "Join two or more development histories together."
 msgstr ""
 
-#. type: Title ~
-#: en/git.txt:683
+#. type: Labeled list
+#: en/cmds-mainporcelain.txt:67
 #, no-wrap
-msgid "Interacting with Others"
+msgid "linkgit:git-mv[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:687
-msgid ""
-"These commands are to interact with foreign SCM and with other people via "
-"patch over e-mail."
+#: en/cmds-mainporcelain.txt:69
+msgid "Move or rename a file, a directory, or a symlink."
 msgstr ""
 
-#. type: Title -
-#: en/git.txt:692
+#. type: Labeled list
+#: en/cmds-mainporcelain.txt:70
 #, no-wrap
-msgid "Low-level commands (plumbing)"
+msgid "linkgit:git-notes[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:699
-msgid ""
-"Although Git includes its own porcelain layer, its low-level commands are "
-"sufficient to support development of alternative porcelains.  Developers of "
-"such porcelains might start by reading about linkgit:git-update-index[1] and "
-"linkgit:git-read-tree[1]."
+#: en/cmds-mainporcelain.txt:72
+msgid "Add or inspect object notes."
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:706
-msgid ""
-"The interface (input, output, set of options and the semantics)  to these "
-"low-level commands are meant to be a lot more stable than Porcelain level "
-"commands, because these commands are primarily for scripted use.  The "
-"interface to Porcelain commands on the other hand are subject to change in "
-"order to improve the end user experience."
+#: en/cmds-mainporcelain.txt:73 en/git-fetch.txt:296
+#, no-wrap
+msgid "linkgit:git-pull[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:712
-msgid ""
-"The following description divides the low-level commands into commands that "
-"manipulate objects (in the repository, index, and working tree), commands "
-"that interrogate and compare objects, and commands that move objects and "
-"references between repositories."
-msgstr ""
-
-#. type: Title ~
-#: en/git.txt:715
-#, no-wrap
-msgid "Manipulation commands"
+#: en/cmds-mainporcelain.txt:75
+msgid "Fetch from and integrate with another repository or a local branch."
 msgstr ""
 
-#. type: Title ~
-#: en/git.txt:721
+#. type: Labeled list
+#: en/cmds-mainporcelain.txt:76
 #, no-wrap
-msgid "Interrogation commands"
+msgid "linkgit:git-push[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:727
-msgid ""
-"In general, the interrogate commands do not touch the files in the working "
-"tree."
+#: en/cmds-mainporcelain.txt:78
+msgid "Update remote refs along with associated objects."
 msgstr ""
 
-#. type: Title ~
-#: en/git.txt:730
+#. type: Labeled list
+#: en/cmds-mainporcelain.txt:79
 #, no-wrap
-msgid "Synching repositories"
+msgid "linkgit:git-range-diff[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:736
-msgid ""
-"The following are helper commands used by the above; end users typically do "
-"not use them directly."
+#: en/cmds-mainporcelain.txt:81
+msgid "Compare two commit ranges (e.g. two versions of a branch)."
 msgstr ""
 
-#. type: Title ~
-#: en/git.txt:741
+#. type: Plain text
+#: en/cmds-mainporcelain.txt:82 en/git-svn.txt:1171
 #, no-wrap
-msgid "Internal helper commands"
+msgid "linkgit:git-rebase[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:745
-msgid ""
-"These are internal helper commands used by other commands; end users "
-"typically do not use them directly."
+#: en/cmds-mainporcelain.txt:84
+msgid "Reapply commits on top of another base tip."
 msgstr ""
 
-#. type: Title -
-#: en/git.txt:750
+#. type: Labeled list
+#: en/cmds-mainporcelain.txt:85
 #, no-wrap
-msgid "Configuration Mechanism"
+msgid "linkgit:git-reset[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:755
-msgid ""
-"Git uses a simple text format to store customizations that are per "
-"repository and are per user.  Such a configuration file may look like this:"
+#: en/cmds-mainporcelain.txt:87
+msgid "Reset current HEAD to the specified state."
 msgstr ""
 
-#. type: delimited block -
-#: en/git.txt:760
+#. type: Plain text
+#: en/cmds-mainporcelain.txt:88 en/git-cherry-pick.txt:230
 #, no-wrap
-msgid ""
-"#\n"
-"# A '#' or ';' character indicates a comment.\n"
-"#\n"
+msgid "linkgit:git-revert[1]"
 msgstr ""
 
-#. type: delimited block -
-#: en/git.txt:765
-#, no-wrap
-msgid ""
-"; core variables\n"
-"[core]\n"
-"\t; Don't trust file modes\n"
-"\tfilemode = false\n"
+#. type: Plain text
+#: en/cmds-mainporcelain.txt:90
+msgid "Revert some existing commits."
 msgstr ""
 
-#. type: delimited block -
-#: en/git.txt:770
+#. type: Labeled list
+#: en/cmds-mainporcelain.txt:91
 #, no-wrap
-msgid ""
-"; user identity\n"
-"[user]\n"
-"\tname = \"Junio C Hamano\"\n"
-"\temail = \"gitster@pobox.com\"\n"
+msgid "linkgit:git-rm[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:776
-msgid ""
-"Various commands read from the configuration file and adjust their operation "
-"accordingly.  See linkgit:git-config[1] for a list and more details about "
-"the configuration mechanism."
+#: en/cmds-mainporcelain.txt:93
+msgid "Remove files from the working tree and from the index."
 msgstr ""
 
-#. type: Title -
-#: en/git.txt:779
+#. type: Labeled list
+#: en/cmds-mainporcelain.txt:94
 #, no-wrap
-msgid "Identifier Terminology"
+msgid "linkgit:git-shortlog[1]"
+msgstr ""
+
+#. type: Plain text
+#: en/cmds-mainporcelain.txt:96
+msgid "Summarize 'git log' output."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:780 en/git-cat-file.txt:31 en/git-fsck.txt:23 en/git-tag.txt:166
+#: en/cmds-mainporcelain.txt:97
 #, no-wrap
-msgid "<object>"
+msgid "linkgit:git-show[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:782
-msgid "Indicates the object name for any type of object."
+#: en/cmds-mainporcelain.txt:99
+msgid "Show various types of objects."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:783 en/git-unpack-file.txt:23
+#: en/cmds-mainporcelain.txt:100
 #, no-wrap
-msgid "<blob>"
+msgid "linkgit:git-stash[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:785
-msgid "Indicates a blob object name."
+#: en/cmds-mainporcelain.txt:102
+msgid "Stash the changes in a dirty working directory away."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:786 en/git-commit-tree.txt:43
+#: en/cmds-mainporcelain.txt:103
 #, no-wrap
-msgid "<tree>"
+msgid "linkgit:git-status[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:788
-msgid "Indicates a tree object name."
+#: en/cmds-mainporcelain.txt:105
+msgid "Show the working tree status."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:789 en/git-tag.txt:165
+#: en/cmds-mainporcelain.txt:106
 #, no-wrap
-msgid "<commit>"
+msgid "linkgit:git-submodule[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:791
-msgid "Indicates a commit object name."
+#: en/cmds-mainporcelain.txt:108
+msgid "Initialize, update or inspect submodules."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:792 en/git-archive.txt:77 en/git-checkout.txt:281 en/git-diff-index.txt:26 en/git-diff-tree.txt:29 en/git-ls-tree.txt:38
+#: en/cmds-mainporcelain.txt:109
 #, no-wrap
-msgid "<tree-ish>"
+msgid "linkgit:git-tag[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:797
-msgid ""
-"Indicates a tree, commit or tag object name.  A command that takes a "
-"<tree-ish> argument ultimately wants to operate on a <tree> object but "
-"automatically dereferences <commit> and <tag> objects that point at a "
-"<tree>."
+#: en/cmds-mainporcelain.txt:111
+msgid "Create, list, delete or verify a tag object signed with GPG."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:798
+#: en/cmds-mainporcelain.txt:112
 #, no-wrap
-msgid "<commit-ish>"
+msgid "linkgit:git-worktree[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:803
-msgid ""
-"Indicates a commit or tag object name.  A command that takes a <commit-ish> "
-"argument ultimately wants to operate on a <commit> object but automatically "
-"dereferences <tag> objects that point at a <commit>."
+#: en/cmds-mainporcelain.txt:114
+msgid "Manage multiple working trees."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:804 en/git-cat-file.txt:51
+#: en/cmds-mainporcelain.txt:115 en/git-gui.txt:104
 #, no-wrap
-msgid "<type>"
+msgid "linkgit:gitk[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:807
-msgid ""
-"Indicates that an object type is required.  Currently one of: `blob`, "
-"`tree`, `commit`, or `tag`."
+#: en/cmds-mainporcelain.txt:117
+msgid "The Git repository browser."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:808 en/git-ls-files.txt:177 en/git-update-index.txt:207
+#: en/cmds-plumbinginterrogators.txt:1
 #, no-wrap
-msgid "<file>"
+msgid "linkgit:git-cat-file[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:811
-msgid ""
-"Indicates a filename - almost always relative to the root of the tree "
-"structure `GIT_INDEX_FILE` describes."
+#: en/cmds-plumbinginterrogators.txt:3
+msgid "Provide content or type and size information for repository objects."
 msgstr ""
 
-#. type: Title -
-#: en/git.txt:813
+#. type: Labeled list
+#: en/cmds-plumbinginterrogators.txt:4
 #, no-wrap
-msgid "Symbolic Identifiers"
+msgid "linkgit:git-cherry[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:816
-msgid ""
-"Any Git command accepting any <object> can also use the following symbolic "
-"notation:"
+#: en/cmds-plumbinginterrogators.txt:6
+msgid "Find commits yet to be applied to upstream."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:817 en/git-for-each-ref.txt:148
+#: en/cmds-plumbinginterrogators.txt:7
 #, no-wrap
-msgid "HEAD"
+msgid "linkgit:git-diff-files[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:819
-msgid "indicates the head of the current branch."
+#: en/cmds-plumbinginterrogators.txt:9
+msgid "Compares files in the working tree and the index."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:820
+#: en/cmds-plumbinginterrogators.txt:10
 #, no-wrap
-msgid "<tag>"
+msgid "linkgit:git-diff-index[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:823
-msgid "a valid tag 'name' (i.e. a `refs/tags/<tag>` reference)."
+#: en/cmds-plumbinginterrogators.txt:12
+msgid "Compare a tree to the working tree or index."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:824 en/git-cherry.txt:36
+#: en/cmds-plumbinginterrogators.txt:13
 #, no-wrap
-msgid "<head>"
+msgid "linkgit:git-diff-tree[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:827
-msgid "a valid head 'name' (i.e. a `refs/heads/<head>` reference)."
+#: en/cmds-plumbinginterrogators.txt:15
+msgid "Compares the content and mode of blobs found via two tree objects."
 msgstr ""
 
-#. type: Plain text
-#: en/git.txt:830
-msgid ""
-"For a more complete list of ways to spell object names, see \"SPECIFYING "
-"REVISIONS\" section in linkgit:gitrevisions[7]."
-msgstr ""
-
-#. type: Title -
-#: en/git.txt:833
+#. type: Labeled list
+#: en/cmds-plumbinginterrogators.txt:16
 #, no-wrap
-msgid "File/Directory Structure"
+msgid "linkgit:git-for-each-ref[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:836
-msgid "Please see the linkgit:gitrepository-layout[5] document."
+#: en/cmds-plumbinginterrogators.txt:18
+msgid "Output information on each ref."
 msgstr ""
 
-#. type: Plain text
-#: en/git.txt:838
-msgid "Read linkgit:githooks[5] for more details about each hook."
+#. type: Labeled list
+#: en/cmds-plumbinginterrogators.txt:19
+#, no-wrap
+msgid "linkgit:git-get-tar-commit-id[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:841
-msgid ""
-"Higher level SCMs may provide and manage additional information in the "
-"`$GIT_DIR`."
+#: en/cmds-plumbinginterrogators.txt:21
+msgid "Extract commit ID from an archive created using git-archive."
 msgstr ""
 
-#. type: Title -
-#: en/git.txt:844
+#. type: Labeled list
+#: en/cmds-plumbinginterrogators.txt:22
 #, no-wrap
-msgid "Terminology"
+msgid "linkgit:git-ls-files[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:846
-msgid "Please see linkgit:gitglossary[7]."
+#: en/cmds-plumbinginterrogators.txt:24
+msgid "Show information about files in the index and the working tree."
 msgstr ""
 
-#. type: Title -
-#: en/git.txt:849 en/git-fsck.txt:146
+#. type: Labeled list
+#: en/cmds-plumbinginterrogators.txt:25
 #, no-wrap
-msgid "Environment Variables"
+msgid "linkgit:git-ls-remote[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:851
-msgid "Various Git commands use the following environment variables:"
+#: en/cmds-plumbinginterrogators.txt:27
+msgid "List references in a remote repository."
 msgstr ""
 
-#. type: Title ~
-#: en/git.txt:853
+#. type: Labeled list
+#: en/cmds-plumbinginterrogators.txt:28
 #, no-wrap
-msgid "The Git Repository"
+msgid "linkgit:git-ls-tree[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:857
-msgid ""
-"These environment variables apply to 'all' core Git commands. Nb: it is "
-"worth noting that they may be used/overridden by SCMS sitting above Git so "
-"take care if using a foreign front-end."
+#: en/cmds-plumbinginterrogators.txt:30
+msgid "List the contents of a tree object."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:858
+#: en/cmds-plumbinginterrogators.txt:31
 #, no-wrap
-msgid "`GIT_INDEX_FILE`"
+msgid "linkgit:git-merge-base[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:862
-msgid ""
-"This environment allows the specification of an alternate index file. If not "
-"specified, the default of `$GIT_DIR/index` is used."
+#: en/cmds-plumbinginterrogators.txt:33
+msgid "Find as good common ancestors as possible for a merge."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:863
+#: en/cmds-plumbinginterrogators.txt:34
 #, no-wrap
-msgid "`GIT_INDEX_VERSION`"
+msgid "linkgit:git-name-rev[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:868
-msgid ""
-"This environment variable allows the specification of an index version for "
-"new repositories.  It won't affect existing index files.  By default index "
-"file version 2 or 3 is used. See linkgit:git-update-index[1] for more "
-"information."
+#: en/cmds-plumbinginterrogators.txt:36
+msgid "Find symbolic names for given revs."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:869
+#: en/cmds-plumbinginterrogators.txt:37
 #, no-wrap
-msgid "`GIT_OBJECT_DIRECTORY`"
+msgid "linkgit:git-pack-redundant[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:874
-msgid ""
-"If the object storage directory is specified via this environment variable "
-"then the sha1 directories are created underneath - otherwise the default "
-"`$GIT_DIR/objects` directory is used."
+#: en/cmds-plumbinginterrogators.txt:39
+msgid "Find redundant pack files."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:875
+#: en/cmds-plumbinginterrogators.txt:40
 #, no-wrap
-msgid "`GIT_ALTERNATE_OBJECT_DIRECTORIES`"
-msgstr ""
-
-#. type: Plain text
-#: en/git.txt:881
-msgid ""
-"Due to the immutable nature of Git objects, old objects can be archived into "
-"shared, read-only directories. This variable specifies a \":\" separated (on "
-"Windows \";\" separated) list of Git object directories which can be used to "
-"search for Git objects. New objects will not be written to these "
-"directories."
+msgid "linkgit:git-rev-list[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:887
-msgid ""
-"Entries that begin with `\"` (double-quote) will be interpreted as C-style "
-"quoted paths, removing leading and trailing double-quotes and respecting "
-"backslash escapes. E.g., the value "
-"`\"path-with-\\\"-and-:-in-it\":vanilla-path` has two paths: "
-"`path-with-\"-and-:-in-it` and `vanilla-path`."
+#: en/cmds-plumbinginterrogators.txt:42
+msgid "Lists commit objects in reverse chronological order."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:888
+#: en/cmds-plumbinginterrogators.txt:43
 #, no-wrap
-msgid "`GIT_DIR`"
+msgid "linkgit:git-rev-parse[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:893
-msgid ""
-"If the `GIT_DIR` environment variable is set then it specifies a path to use "
-"instead of the default `.git` for the base of the repository.  The "
-"`--git-dir` command-line option also sets this value."
+#: en/cmds-plumbinginterrogators.txt:45
+msgid "Pick out and massage parameters."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:894
+#: en/cmds-plumbinginterrogators.txt:46
 #, no-wrap
-msgid "`GIT_WORK_TREE`"
+msgid "linkgit:git-show-index[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:898
-msgid ""
-"Set the path to the root of the working tree.  This can also be controlled "
-"by the `--work-tree` command-line option and the core.worktree configuration "
-"variable."
+#: en/cmds-plumbinginterrogators.txt:48
+msgid "Show packed archive index."
 msgstr ""
 
-#. type: Labeled list
-#: en/git.txt:899
+#. type: Plain text
+#: en/cmds-plumbinginterrogators.txt:49 en/git-for-each-ref.txt:386
 #, no-wrap
-msgid "`GIT_NAMESPACE`"
+msgid "linkgit:git-show-ref[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:902
-msgid ""
-"Set the Git namespace; see linkgit:gitnamespaces[7] for details.  The "
-"`--namespace` command-line option also sets this value."
+#: en/cmds-plumbinginterrogators.txt:51
+msgid "List references in a local repository."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:903
+#: en/cmds-plumbinginterrogators.txt:52
 #, no-wrap
-msgid "`GIT_CEILING_DIRECTORIES`"
+msgid "linkgit:git-unpack-file[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:917
-msgid ""
-"This should be a colon-separated list of absolute paths.  If set, it is a "
-"list of directories that Git should not chdir up into while looking for a "
-"repository directory (useful for excluding slow-loading network "
-"directories).  It will not exclude the current working directory or a "
-"GIT_DIR set on the command line or in the environment.  Normally, Git has to "
-"read the entries in this list and resolve any symlink that might be present "
-"in order to compare them with the current directory.  However, if even this "
-"access is slow, you can add an empty entry to the list to tell Git that the "
-"subsequent entries are not symlinks and needn't be resolved; e.g., "
-"`GIT_CEILING_DIRECTORIES=/maybe/symlink::/very/slow/non/symlink`."
+#: en/cmds-plumbinginterrogators.txt:54
+msgid "Creates a temporary file with a blob's contents."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:918
+#: en/cmds-plumbinginterrogators.txt:55
 #, no-wrap
-msgid "`GIT_DISCOVERY_ACROSS_FILESYSTEM`"
+msgid "linkgit:git-var[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:927
-msgid ""
-"When run in a directory that does not have \".git\" repository directory, "
-"Git tries to find such a directory in the parent directories to find the top "
-"of the working tree, but by default it does not cross filesystem "
-"boundaries.  This environment variable can be set to true to tell Git not to "
-"stop at filesystem boundaries.  Like `GIT_CEILING_DIRECTORIES`, this will "
-"not affect an explicit repository directory set via `GIT_DIR` or on the "
-"command line."
+#: en/cmds-plumbinginterrogators.txt:57
+msgid "Show a Git logical variable."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:928
+#: en/cmds-plumbinginterrogators.txt:58
 #, no-wrap
-msgid "`GIT_COMMON_DIR`"
+msgid "linkgit:git-verify-pack[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:936
-msgid ""
-"If this variable is set to a path, non-worktree files that are normally in "
-"$GIT_DIR will be taken from this path instead. Worktree-specific files such "
-"as HEAD or index are taken from $GIT_DIR. See "
-"linkgit:gitrepository-layout[5] and linkgit:git-worktree[1] for "
-"details. This variable has lower precedence than other path variables such "
-"as GIT_INDEX_FILE, GIT_OBJECT_DIRECTORY..."
-msgstr ""
-
-#. type: Title ~
-#: en/git.txt:938
-#, no-wrap
-msgid "Git Commits"
+#: en/cmds-plumbinginterrogators.txt:60
+msgid "Validate packed Git archive files."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:939
+#: en/cmds-plumbingmanipulators.txt:1
 #, no-wrap
-msgid "`GIT_AUTHOR_NAME`"
+msgid "linkgit:git-apply[1]"
 msgstr ""
 
-#. type: Labeled list
-#: en/git.txt:940
-#, no-wrap
-msgid "`GIT_AUTHOR_EMAIL`"
+#. type: Plain text
+#: en/cmds-plumbingmanipulators.txt:3
+msgid "Apply a patch to files and/or to the index."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:941
+#: en/cmds-plumbingmanipulators.txt:4
 #, no-wrap
-msgid "`GIT_AUTHOR_DATE`"
+msgid "linkgit:git-checkout-index[1]"
 msgstr ""
 
-#. type: Labeled list
-#: en/git.txt:942
-#, no-wrap
-msgid "`GIT_COMMITTER_NAME`"
+#. type: Plain text
+#: en/cmds-plumbingmanipulators.txt:6
+msgid "Copy files from the index to the working tree."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:943
+#: en/cmds-plumbingmanipulators.txt:7
 #, no-wrap
-msgid "`GIT_COMMITTER_EMAIL`"
+msgid "linkgit:git-commit-graph[1]"
 msgstr ""
 
-#. type: Labeled list
-#: en/git.txt:944
-#, no-wrap
-msgid "`GIT_COMMITTER_DATE`"
+#. type: Plain text
+#: en/cmds-plumbingmanipulators.txt:9
+msgid "Write and verify Git commit-graph files."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:945
+#: en/cmds-plumbingmanipulators.txt:10
 #, no-wrap
-msgid "'EMAIL'"
+msgid "linkgit:git-commit-tree[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:947
-msgid "see linkgit:git-commit-tree[1]"
-msgstr ""
-
-#. type: Title ~
-#: en/git.txt:949
-#, no-wrap
-msgid "Git Diffs"
+#: en/cmds-plumbingmanipulators.txt:12
+msgid "Create a new commit object."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:950
+#: en/cmds-plumbingmanipulators.txt:13
 #, no-wrap
-msgid "`GIT_DIFF_OPTS`"
+msgid "linkgit:git-hash-object[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:955
-msgid ""
-"Only valid setting is \"--unified=??\" or \"-u??\" to set the number of "
-"context lines shown when a unified diff is created.  This takes precedence "
-"over any \"-U\" or \"--unified\" option value passed on the Git diff command "
-"line."
+#: en/cmds-plumbingmanipulators.txt:15
+msgid "Compute object ID and optionally creates a blob from a file."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:956
+#: en/cmds-plumbingmanipulators.txt:16
 #, no-wrap
-msgid "`GIT_EXTERNAL_DIFF`"
+msgid "linkgit:git-index-pack[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:961
-msgid ""
-"When the environment variable `GIT_EXTERNAL_DIFF` is set, the program named "
-"by it is called, instead of the diff invocation described above.  For a path "
-"that is added, removed, or modified, `GIT_EXTERNAL_DIFF` is called with 7 "
-"parameters:"
+#: en/cmds-plumbingmanipulators.txt:18
+msgid "Build pack index file for an existing packed archive."
 msgstr ""
 
-#. type: Plain text
-#: en/git.txt:963
-msgid "path old-file old-hex old-mode new-file new-hex new-mode"
+#. type: Labeled list
+#: en/cmds-plumbingmanipulators.txt:19
+#, no-wrap
+msgid "linkgit:git-merge-file[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:965
-msgid "where:"
+#: en/cmds-plumbingmanipulators.txt:21
+msgid "Run a three-way file merge."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:966
+#: en/cmds-plumbingmanipulators.txt:22
 #, no-wrap
-msgid "<old|new>-file"
-msgstr ""
-
-#. type: Plain text
-#: en/git.txt:967
-msgid "are files GIT_EXTERNAL_DIFF can use to read the"
+msgid "linkgit:git-merge-index[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:968
-#, no-wrap
-msgid "contents of <old|new>,\n"
+#: en/cmds-plumbingmanipulators.txt:24
+msgid "Run a merge for files needing merging."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:968
+#: en/cmds-plumbingmanipulators.txt:25
 #, no-wrap
-msgid "<old|new>-hex"
+msgid "linkgit:git-mktag[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:969
-msgid "are the 40-hexdigit SHA-1 hashes,"
+#: en/cmds-plumbingmanipulators.txt:27
+msgid "Creates a tag object."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:969
+#: en/cmds-plumbingmanipulators.txt:28
 #, no-wrap
-msgid "<old|new>-mode"
-msgstr ""
-
-#. type: Plain text
-#: en/git.txt:970
-msgid "are the octal representation of the file modes."
+msgid "linkgit:git-mktree[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:976
-msgid ""
-"The file parameters can point at the user's working file (e.g. `new-file` in "
-"\"git-diff-files\"), `/dev/null` (e.g. `old-file` when a new file is added), "
-"or a temporary file (e.g. `old-file` in the index).  `GIT_EXTERNAL_DIFF` "
-"should not worry about unlinking the temporary file --- it is removed when "
-"`GIT_EXTERNAL_DIFF` exits."
+#: en/cmds-plumbingmanipulators.txt:30
+msgid "Build a tree-object from ls-tree formatted text."
 msgstr ""
 
-#. type: Plain text
-#: en/git.txt:979
-msgid ""
-"For a path that is unmerged, `GIT_EXTERNAL_DIFF` is called with 1 parameter, "
-"<path>."
+#. type: Labeled list
+#: en/cmds-plumbingmanipulators.txt:31
+#, no-wrap
+msgid "linkgit:git-multi-pack-index[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:982
-msgid ""
-"For each path `GIT_EXTERNAL_DIFF` is called, two environment variables, "
-"`GIT_DIFF_PATH_COUNTER` and `GIT_DIFF_PATH_TOTAL` are set."
+#: en/cmds-plumbingmanipulators.txt:33
+msgid "Write and verify multi-pack-indexes."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:983
+#: en/cmds-plumbingmanipulators.txt:34
 #, no-wrap
-msgid "`GIT_DIFF_PATH_COUNTER`"
+msgid "linkgit:git-pack-objects[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:985
-msgid "A 1-based counter incremented by one for every path."
+#: en/cmds-plumbingmanipulators.txt:36
+msgid "Create a packed archive of objects."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:986
+#: en/cmds-plumbingmanipulators.txt:37
 #, no-wrap
-msgid "`GIT_DIFF_PATH_TOTAL`"
-msgstr ""
-
-#. type: Plain text
-#: en/git.txt:988
-msgid "The total number of paths."
+msgid "linkgit:git-prune-packed[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:990 en/git-ls-files.txt:130
-#, no-wrap
-msgid "other"
+#: en/cmds-plumbingmanipulators.txt:39
+msgid "Remove extra objects that are already in pack files."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:991
+#: en/cmds-plumbingmanipulators.txt:40
 #, no-wrap
-msgid "`GIT_MERGE_VERBOSITY`"
+msgid "linkgit:git-read-tree[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:995
-msgid ""
-"A number controlling the amount of output shown by the recursive merge "
-"strategy.  Overrides merge.verbosity.  See linkgit:git-merge[1]"
+#: en/cmds-plumbingmanipulators.txt:42
+msgid "Reads tree information into the index."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:996
+#: en/cmds-plumbingmanipulators.txt:43
 #, no-wrap
-msgid "`GIT_PAGER`"
+msgid "linkgit:git-symbolic-ref[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1001
-msgid ""
-"This environment variable overrides `$PAGER`. If it is set to an empty "
-"string or to the value \"cat\", Git will not launch a pager.  See also the "
-"`core.pager` option in linkgit:git-config[1]."
+#: en/cmds-plumbingmanipulators.txt:45
+msgid "Read, modify and delete symbolic refs."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1002
+#: en/cmds-plumbingmanipulators.txt:46
 #, no-wrap
-msgid "`GIT_EDITOR`"
+msgid "linkgit:git-unpack-objects[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1007
-msgid ""
-"This environment variable overrides `$EDITOR` and `$VISUAL`.  It is used by "
-"several Git commands when, on interactive mode, an editor is to be "
-"launched. See also linkgit:git-var[1] and the `core.editor` option in "
-"linkgit:git-config[1]."
+#: en/cmds-plumbingmanipulators.txt:48
+msgid "Unpack objects from a packed archive."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1008
+#: en/cmds-plumbingmanipulators.txt:49
 #, no-wrap
-msgid "`GIT_SSH`"
+msgid "linkgit:git-update-index[1]"
+msgstr ""
+
+#. type: Plain text
+#: en/cmds-plumbingmanipulators.txt:51
+msgid "Register file contents in the working tree to the index."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1009
+#: en/cmds-plumbingmanipulators.txt:52
 #, no-wrap
-msgid "`GIT_SSH_COMMAND`"
+msgid "linkgit:git-update-ref[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1018
-msgid ""
-"If either of these environment variables is set then 'git fetch' and 'git "
-"push' will use the specified command instead of 'ssh' when they need to "
-"connect to a remote system.  The command will be given exactly two or four "
-"arguments: the 'username@host' (or just 'host') from the URL and the shell "
-"command to execute on that remote system, optionally preceded by `-p` "
-"(literally) and the 'port' from the URL when it specifies something other "
-"than the default SSH port."
+#: en/cmds-plumbingmanipulators.txt:54
+msgid "Update the object name stored in a ref safely."
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1024
-msgid ""
-"`$GIT_SSH_COMMAND` takes precedence over `$GIT_SSH`, and is interpreted by "
-"the shell, which allows additional arguments to be included.  `$GIT_SSH` on "
-"the other hand must be just the path to a program (which can be a wrapper "
-"shell script, if additional arguments are needed)."
+#: en/cmds-plumbingmanipulators.txt:55 en/git-commit-tree.txt:115
+#, no-wrap
+msgid "linkgit:git-write-tree[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1028
-msgid ""
-"Usually it is easier to configure any desired options through your personal "
-"`.ssh/config` file.  Please consult your ssh documentation for further "
-"details."
+#: en/cmds-plumbingmanipulators.txt:57
+msgid "Create a tree object from the current index."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1029
+#: en/cmds-purehelpers.txt:1
 #, no-wrap
-msgid "`GIT_SSH_VARIANT`"
+msgid "linkgit:git-check-attr[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1034
-msgid ""
-"If this environment variable is set, it overrides Git's autodetection "
-"whether `GIT_SSH`/`GIT_SSH_COMMAND`/`core.sshCommand` refer to OpenSSH, "
-"plink or tortoiseplink. This variable overrides the config setting "
-"`ssh.variant` that serves the same purpose."
+#: en/cmds-purehelpers.txt:3
+msgid "Display gitattributes information."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1035
+#: en/cmds-purehelpers.txt:4
 #, no-wrap
-msgid "`GIT_ASKPASS`"
+msgid "linkgit:git-check-ignore[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1041
-msgid ""
-"If this environment variable is set, then Git commands which need to acquire "
-"passwords or passphrases (e.g. for HTTP or IMAP authentication)  will call "
-"this program with a suitable prompt as command-line argument and read the "
-"password from its STDOUT. See also the `core.askPass` option in "
-"linkgit:git-config[1]."
+#: en/cmds-purehelpers.txt:6
+msgid "Debug gitignore / exclude files."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1042
+#: en/cmds-purehelpers.txt:7
 #, no-wrap
-msgid "`GIT_TERMINAL_PROMPT`"
+msgid "linkgit:git-check-mailmap[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1045
-msgid ""
-"If this environment variable is set to `0`, git will not prompt on the "
-"terminal (e.g., when asking for HTTP authentication)."
+#: en/cmds-purehelpers.txt:9
+msgid "Show canonical names and email addresses of contacts."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1046
+#: en/cmds-purehelpers.txt:10
 #, no-wrap
-msgid "`GIT_CONFIG_NOSYSTEM`"
+msgid "linkgit:git-check-ref-format[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1053
-msgid ""
-"Whether to skip reading settings from the system-wide "
-"`$(prefix)/etc/gitconfig` file.  This environment variable can be used along "
-"with `$HOME` and `$XDG_CONFIG_HOME` to create a predictable environment for "
-"a picky script, or you can set it temporarily to avoid using a buggy "
-"`/etc/gitconfig` file while waiting for someone with sufficient permissions "
-"to fix it."
+#: en/cmds-purehelpers.txt:12
+msgid "Ensures that a reference name is well formed."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1054
+#: en/cmds-purehelpers.txt:13
 #, no-wrap
-msgid "`GIT_FLUSH`"
+msgid "linkgit:git-column[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1064
-#, no-wrap
-msgid ""
-"If this environment variable is set to \"1\", then commands such\n"
-"as 'git blame' (in incremental mode), 'git rev-list', 'git log',\n"
-"'git check-attr' and 'git check-ignore' will\n"
-"force a flush of the output stream after each record have been\n"
-"flushed. If this\n"
-"variable is set to \"0\", the output of these commands will be done\n"
-"using completely buffered I/O.   If this environment variable is\n"
-"not set, Git will choose buffered or record-oriented flushing\n"
-"based on whether stdout appears to be redirected to a file or not.\n"
+#: en/cmds-purehelpers.txt:15
+msgid "Display data in columns."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1065
+#: en/cmds-purehelpers.txt:16
 #, no-wrap
-msgid "`GIT_TRACE`"
+msgid "linkgit:git-credential[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1068
-msgid ""
-"Enables general trace messages, e.g. alias expansion, built-in command "
-"execution and external command execution."
+#: en/cmds-purehelpers.txt:18
+msgid "Retrieve and store user credentials."
 msgstr ""
 
-#. type: Plain text
-#: en/git.txt:1072
-msgid ""
-"If this variable is set to \"1\", \"2\" or \"true\" (comparison is case "
-"insensitive), trace messages will be printed to stderr."
+#. type: Labeled list
+#: en/cmds-purehelpers.txt:19
+#, no-wrap
+msgid "linkgit:git-credential-cache[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1077
-msgid ""
-"If the variable is set to an integer value greater than 2 and lower than 10 "
-"(strictly) then Git will interpret this value as an open file descriptor and "
-"will try to write the trace messages into this file descriptor."
+#: en/cmds-purehelpers.txt:21
+msgid "Helper to temporarily store passwords in memory."
 msgstr ""
 
-#. type: Plain text
-#: en/git.txt:1082
-msgid ""
-"Alternatively, if the variable is set to an absolute path (starting with a "
-"'/' character), Git will interpret this as a file path and will try to write "
-"the trace messages into it."
+#. type: Labeled list
+#: en/cmds-purehelpers.txt:22
+#, no-wrap
+msgid "linkgit:git-credential-store[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1085
-msgid ""
-"Unsetting the variable, or setting it to empty, \"0\" or \"false\" (case "
-"insensitive) disables trace messages."
+#: en/cmds-purehelpers.txt:24
+msgid "Helper to store credentials on disk."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1086
+#: en/cmds-purehelpers.txt:25
 #, no-wrap
-msgid "`GIT_TRACE_PACK_ACCESS`"
+msgid "linkgit:git-fmt-merge-msg[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1092
-msgid ""
-"Enables trace messages for all accesses to any packs. For each access, the "
-"pack file name and an offset in the pack is recorded. This may be helpful "
-"for troubleshooting some pack-related performance problems.  See `GIT_TRACE` "
-"for available trace output options."
+#: en/cmds-purehelpers.txt:27
+msgid "Produce a merge commit message."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1093
+#: en/cmds-purehelpers.txt:28
 #, no-wrap
-msgid "`GIT_TRACE_PACKET`"
+msgid "linkgit:git-interpret-trailers[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1099
-msgid ""
-"Enables trace messages for all packets coming in or out of a given "
-"program. This can help with debugging object negotiation or other protocol "
-"issues. Tracing is turned off at a packet starting with \"PACK\" (but see "
-"`GIT_TRACE_PACKFILE` below).  See `GIT_TRACE` for available trace output "
-"options."
+#: en/cmds-purehelpers.txt:30
+msgid "add or parse structured information in commit messages."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1100
+#: en/cmds-purehelpers.txt:31
 #, no-wrap
-msgid "`GIT_TRACE_PACKFILE`"
-msgstr ""
-
-#. type: Plain text
-#: en/git.txt:1107
-msgid ""
-"Enables tracing of packfiles sent or received by a given program. Unlike "
-"other trace output, this trace is verbatim: no headers, and no quoting of "
-"binary data. You almost certainly want to direct into a file (e.g., "
-"`GIT_TRACE_PACKFILE=/tmp/my.pack`) rather than displaying it on the terminal "
-"or mixing it with other trace output."
+msgid "linkgit:git-mailinfo[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1110
-msgid ""
-"Note that this is currently only implemented for the client side of clones "
-"and fetches."
+#: en/cmds-purehelpers.txt:33
+msgid "Extracts patch and authorship from a single e-mail message."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1111
+#: en/cmds-purehelpers.txt:34
 #, no-wrap
-msgid "`GIT_TRACE_PERFORMANCE`"
+msgid "linkgit:git-mailsplit[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1115
-msgid ""
-"Enables performance related trace messages, e.g. total execution time of "
-"each Git command.  See `GIT_TRACE` for available trace output options."
+#: en/cmds-purehelpers.txt:36
+msgid "Simple UNIX mbox splitter program."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1116
+#: en/cmds-purehelpers.txt:37
 #, no-wrap
-msgid "`GIT_TRACE_SETUP`"
+msgid "linkgit:git-merge-one-file[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1120
-msgid ""
-"Enables trace messages printing the .git, working tree and current working "
-"directory after Git has completed its setup phase.  See `GIT_TRACE` for "
-"available trace output options."
+#: en/cmds-purehelpers.txt:39
+msgid "The standard helper program to use with git-merge-index."
 msgstr ""
 
-#. type: Labeled list
-#: en/git.txt:1121
+#. type: Plain text
+#: en/cmds-purehelpers.txt:40 en/git-cherry.txt:142
 #, no-wrap
-msgid "`GIT_TRACE_SHALLOW`"
+msgid "linkgit:git-patch-id[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1125
-msgid ""
-"Enables trace messages that can help debugging fetching / cloning of shallow "
-"repositories.  See `GIT_TRACE` for available trace output options."
+#: en/cmds-purehelpers.txt:42
+msgid "Compute unique ID for a patch."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1126
+#: en/cmds-purehelpers.txt:43
 #, no-wrap
-msgid "`GIT_TRACE_CURL`"
+msgid "linkgit:git-sh-i18n[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1133
-msgid ""
-"Enables a curl full trace dump of all incoming and outgoing data, including "
-"descriptive information, of the git transport protocol.  This is similar to "
-"doing curl `--trace-ascii` on the command line.  This option overrides "
-"setting the `GIT_CURL_VERBOSE` environment variable.  See `GIT_TRACE` for "
-"available trace output options."
+#: en/cmds-purehelpers.txt:45
+msgid "Git's i18n setup code for shell scripts."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1134
+#: en/cmds-purehelpers.txt:46
 #, no-wrap
-msgid "`GIT_LITERAL_PATHSPECS`"
+msgid "linkgit:git-sh-setup[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1142
-msgid ""
-"Setting this variable to `1` will cause Git to treat all pathspecs "
-"literally, rather than as glob patterns. For example, running "
-"`GIT_LITERAL_PATHSPECS=1 git log -- '*.c'` will search for commits that "
-"touch the path `*.c`, not any paths that the glob `*.c` matches. You might "
-"want this if you are feeding literal paths to Git (e.g., paths previously "
-"given to you by `git ls-tree`, `--raw` diff output, etc)."
+#: en/cmds-purehelpers.txt:48
+msgid "Common Git shell script setup code."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1143
+#: en/cmds-purehelpers.txt:49
 #, no-wrap
-msgid "`GIT_GLOB_PATHSPECS`"
+msgid "linkgit:git-stripspace[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1146
-msgid ""
-"Setting this variable to `1` will cause Git to treat all pathspecs as glob "
-"patterns (aka \"glob\" magic)."
+#: en/cmds-purehelpers.txt:51
+msgid "Remove unnecessary whitespace."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1147
+#: en/cmds-synchelpers.txt:1
 #, no-wrap
-msgid "`GIT_NOGLOB_PATHSPECS`"
+msgid "linkgit:git-http-fetch[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1150
-msgid ""
-"Setting this variable to `1` will cause Git to treat all pathspecs as "
-"literal (aka \"literal\" magic)."
+#: en/cmds-synchelpers.txt:3
+msgid "Download from a remote Git repository via HTTP."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1151
+#: en/cmds-synchelpers.txt:4
 #, no-wrap
-msgid "`GIT_ICASE_PATHSPECS`"
+msgid "linkgit:git-http-push[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1154
-msgid ""
-"Setting this variable to `1` will cause Git to treat all pathspecs as "
-"case-insensitive."
+#: en/cmds-synchelpers.txt:6
+msgid "Push objects over HTTP/DAV to another repository."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1155
+#: en/cmds-synchelpers.txt:7
 #, no-wrap
-msgid "`GIT_REFLOG_ACTION`"
+msgid "linkgit:git-parse-remote[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1164
-msgid ""
-"When a ref is updated, reflog entries are created to keep track of the "
-"reason why the ref was updated (which is typically the name of the "
-"high-level command that updated the ref), in addition to the old and new "
-"values of the ref.  A scripted Porcelain command can use set_reflog_action "
-"helper function in `git-sh-setup` to set its name to this variable when it "
-"is invoked as the top level command by the end user, to be recorded in the "
-"body of the reflog."
+#: en/cmds-synchelpers.txt:9
+msgid "Routines to help parsing remote repository access parameters."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1165
+#: en/cmds-synchelpers.txt:10
 #, no-wrap
-msgid "`GIT_REF_PARANOIA`"
+msgid "linkgit:git-receive-pack[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1175
-msgid ""
-"If set to `1`, include broken or badly named refs when iterating over lists "
-"of refs. In a normal, non-corrupted repository, this does nothing. However, "
-"enabling it may help git to detect and abort some operations in the presence "
-"of broken refs. Git sets this variable automatically when performing "
-"destructive operations like linkgit:git-prune[1]. You should not need to set "
-"it yourself unless you want to be paranoid about making sure an operation "
-"has touched every ref (e.g., because you are cloning a repository to make a "
-"backup)."
+#: en/cmds-synchelpers.txt:12
+msgid "Receive what is pushed into the repository."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1176
+#: en/cmds-synchelpers.txt:13
 #, no-wrap
-msgid "`GIT_ALLOW_PROTOCOL`"
+msgid "linkgit:git-shell[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1184
-msgid ""
-"If set to a colon-separated list of protocols, behave as if `protocol.allow` "
-"is set to `never`, and each of the listed protocols has "
-"`protocol.<name>.allow` set to `always` (overriding any existing "
-"configuration). In other words, any protocol not mentioned will be "
-"disallowed (i.e., this is a whitelist, not a blacklist). See the description "
-"of `protocol.allow` in linkgit:git-config[1] for more details."
+#: en/cmds-synchelpers.txt:15
+msgid "Restricted login shell for Git-only SSH access."
 msgstr ""
 
 #. type: Labeled list
-#: en/git.txt:1185
+#: en/cmds-synchelpers.txt:16
 #, no-wrap
-msgid "`GIT_PROTOCOL_FROM_USER`"
+msgid "linkgit:git-upload-archive[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1191
-msgid ""
-"Set to 0 to prevent protocols used by fetch/push/clone which are configured "
-"to the `user` state.  This is useful to restrict recursive submodule "
-"initialization from an untrusted repository or for programs which feed "
-"potentially-untrusted URLS to git commands.  See linkgit:git-config[1] for "
-"more details."
+#: en/cmds-synchelpers.txt:18
+msgid "Send archive back to git-archive."
 msgstr ""
 
-#. type: Title -
-#: en/git.txt:1193
+#. type: Labeled list
+#: en/cmds-synchelpers.txt:19
 #, no-wrap
-msgid "Discussion[[Discussion]]"
+msgid "linkgit:git-upload-pack[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1198
-msgid ""
-"More detail on the following is available from the "
-"link:user-manual.html#git-concepts[Git concepts chapter of the user-manual] "
-"and linkgit:gitcore-tutorial[7]."
+#: en/cmds-synchelpers.txt:21
+msgid "Send objects packed back to git-fetch-pack."
 msgstr ""
 
-#. type: Plain text
-#: en/git.txt:1205
-msgid ""
-"A Git project normally consists of a working directory with a \".git\" "
-"subdirectory at the top level.  The .git directory contains, among other "
-"things, a compressed object database representing the complete history of "
-"the project, an \"index\" file which links that history to the current "
-"contents of the working tree, and named pointers into that history such as "
-"tags and branch heads."
+#. type: Labeled list
+#: en/cmds-synchingrepositories.txt:1
+#, no-wrap
+msgid "linkgit:git-daemon[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1210
-msgid ""
-"The object database contains objects of three main types: blobs, which hold "
-"file data; trees, which point to blobs and other trees to build up directory "
-"hierarchies; and commits, which each reference a single tree and some number "
-"of parent commits."
+#: en/cmds-synchingrepositories.txt:3
+msgid "A really simple server for Git repositories."
 msgstr ""
 
-#. type: Plain text
-#: en/git.txt:1215
-msgid ""
-"The commit, equivalent to what other systems call a \"changeset\" or "
-"\"version\", represents a step in the project's history, and each parent "
-"represents an immediately preceding step.  Commits with more than one parent "
-"represent merges of independent lines of development."
+#. type: Labeled list
+#: en/cmds-synchingrepositories.txt:4
+#, no-wrap
+msgid "linkgit:git-fetch-pack[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1221
-msgid ""
-"All objects are named by the SHA-1 hash of their contents, normally written "
-"as a string of 40 hex digits.  Such names are globally unique.  The entire "
-"history leading up to a commit can be vouched for by signing just that "
-"commit.  A fourth object type, the tag, is provided for this purpose."
+#: en/cmds-synchingrepositories.txt:6
+msgid "Receive missing objects from another repository."
 msgstr ""
 
-#. type: Plain text
-#: en/git.txt:1224
-msgid ""
-"When first created, objects are stored in individual files, but for "
-"efficiency may later be compressed together into \"pack files\"."
+#. type: Labeled list
+#: en/cmds-synchingrepositories.txt:7
+#, no-wrap
+msgid "linkgit:git-http-backend[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1231
-msgid ""
-"Named pointers called refs mark interesting points in history.  A ref may "
-"contain the SHA-1 name of an object or the name of another ref.  Refs with "
-"names beginning `ref/head/` contain the SHA-1 name of the most recent commit "
-"(or \"head\") of a branch under development.  SHA-1 names of tags of "
-"interest are stored under `ref/tags/`.  A special ref named `HEAD` contains "
-"the name of the currently checked-out branch."
+#: en/cmds-synchingrepositories.txt:9
+msgid "Server side implementation of Git over HTTP."
 msgstr ""
 
-#. type: Plain text
-#: en/git.txt:1240
-msgid ""
-"The index file is initialized with a list of all paths and, for each path, a "
-"blob object and a set of attributes.  The blob object represents the "
-"contents of the file as of the head of the current branch.  The attributes "
-"(last modified time, size, etc.) are taken from the corresponding file in "
-"the working tree.  Subsequent changes to the working tree can be found by "
-"comparing these attributes.  The index may be updated with new content, and "
-"new commits may be created from the content stored in the index."
+#. type: Labeled list
+#: en/cmds-synchingrepositories.txt:10
+#, no-wrap
+msgid "linkgit:git-send-pack[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1244
-msgid ""
-"The index is also capable of storing multiple entries (called \"stages\")  "
-"for a given pathname.  These stages are used to hold the various unmerged "
-"version of a file when a merge is in progress."
+#: en/cmds-synchingrepositories.txt:12
+msgid "Push objects over Git protocol to another repository."
 msgstr ""
 
-#. type: Title -
-#: en/git.txt:1246
+#. type: Labeled list
+#: en/cmds-synchingrepositories.txt:13
 #, no-wrap
-msgid "FURTHER DOCUMENTATION"
-msgstr ""
-
-#. type: Plain text
-#: en/git.txt:1251
-msgid ""
-"See the references in the \"description\" section to get started using Git.  "
-"The following is probably more detail than necessary for a first-time user."
+msgid "linkgit:git-update-server-info[1]"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1255
-msgid ""
-"The link:user-manual.html#git-concepts[Git concepts chapter of the "
-"user-manual] and linkgit:gitcore-tutorial[7] both provide introductions to "
-"the underlying Git architecture."
+#: en/cmds-synchingrepositories.txt:15
+msgid "Update auxiliary info file to help dumb servers."
 msgstr ""
 
-#. type: Plain text
-#: en/git.txt:1257
-msgid "See linkgit:gitworkflows[7] for an overview of recommended workflows."
+#. type: Title -
+#: en/config.txt:2 en/git-worktree.txt:237
+#, no-wrap
+msgid "CONFIGURATION FILE"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1260
+#: en/config.txt:11
 msgid ""
-"See also the link:howto-index.html[howto] documents for some useful "
-"examples."
+"The Git configuration file contains a number of variables that affect the "
+"Git commands' behavior. The files `.git/config` and optionally `config."
+"worktree` (see `extensions.worktreeConfig` below) in each repository are "
+"used to store the configuration for that repository, and `$HOME/.gitconfig` "
+"is used to store a per-user configuration as fallback values for the `.git/"
+"config` file. The file `/etc/gitconfig` can be used to store a system-wide "
+"default configuration."
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1263
+#: en/config.txt:20
 msgid ""
-"The internals are documented in the link:technical/api-index.html[Git API "
-"documentation]."
-msgstr ""
-
-#. type: Plain text
-#: en/git.txt:1266
-msgid "Users migrating from CVS may also want to read linkgit:gitcvs-migration[7]."
+"The configuration variables are used by both the Git plumbing and the "
+"porcelains. The variables are divided into sections, wherein the fully "
+"qualified variable name of the variable itself is the last dot-separated "
+"segment and the section name is everything before the last dot. The variable "
+"names are case-insensitive, allow only alphanumeric characters and `-`, and "
+"must start with an alphabetic character.  Some variables may appear multiple "
+"times; we say then that the variable is multivalued."
 msgstr ""
 
-#. type: Title -
-#: en/git.txt:1269
+#. type: Title ~
+#: en/config.txt:22
 #, no-wrap
-msgid "Authors"
+msgid "Syntax"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1274
+#: en/config.txt:27
 msgid ""
-"Git was started by Linus Torvalds, and is currently maintained by Junio C "
-"Hamano. Numerous contributions have come from the Git mailing list "
-"<git@vger.kernel.org>.  http://www.openhub.net/p/git/contributors/summary "
-"gives you a more complete list of contributors."
+"The syntax is fairly flexible and permissive; whitespaces are mostly "
+"ignored.  The '#' and ';' characters begin comments to the end of line, "
+"blank lines are ignored."
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1278
+#: en/config.txt:34
 msgid ""
-"If you have a clone of git.git itself, the output of linkgit:git-shortlog[1] "
-"and linkgit:git-blame[1] can show you the authors for specific parts of the "
-"project."
-msgstr ""
-
-#. type: Title -
-#: en/git.txt:1280
-#, no-wrap
-msgid "Reporting Bugs"
+"The file consists of sections and variables.  A section begins with the name "
+"of the section in square brackets and continues until the next section "
+"begins.  Section names are case-insensitive.  Only alphanumeric characters, "
+"`-` and `.` are allowed in section names.  Each variable must belong to some "
+"section, which means that there must be a section header before the first "
+"setting of a variable."
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1285
+#: en/config.txt:38
 msgid ""
-"Report bugs to the Git mailing list <git@vger.kernel.org> where the "
-"development and maintenance is primarily done.  You do not have to be "
-"subscribed to the list to send a message there."
+"Sections can be further divided into subsections.  To begin a subsection put "
+"its name in double quotes, separated by space from the section name, in the "
+"section header, like in the example below:"
 msgstr ""
 
-#. type: Title -
-#: en/git.txt:1287 en/git-add.txt:406 en/git-am.txt:228 en/git-annotate.txt:29 en/git-apply.txt:270 en/git-archive.txt:192 en/git-bisect.txt:494 en/git-blame.txt:232 en/git-branch.txt:313 en/git-check-attr.txt:115 en/git-check-ignore.txt:113 en/git-cherry-pick.txt:228 en/git-cherry.txt:140 en/git-clean.txt:136 en/git-commit.txt:480 en/git-commit-tree.txt:113 en/git-difftool.txt:135 en/git-diff.txt:179 en/git-fast-export.txt:213 en/git-fast-import.txt:1470 en/git-fetch-pack.txt:127 en/git-fetch.txt:207 en/git-fmt-merge-msg.txt:73 en/git-for-each-ref.txt:339 en/git-format-patch.txt:636 en/git-gc.txt:178 en/git-gui.txt:103 en/git-imap-send.txt:178 en/git-instaweb.txt:88 en/git-interpret-trailers.txt:334 en/git-ls-files.txt:237 en/git-merge.txt:353 en/git-pack-objects.txt:235 en/git-pack-redundant.txt:43 en/git-prune-packed.txt:41 en/git-prune.txt:78 en/git-pull.txt:252 en/git-read-tree.txt:425 en/git-receive-pack.txt:218 en/git-remote-ext.txt:120 en/git-remote-fd.txt:54 en/git-remote-testgit.txt:25 en/git-remote.txt:245 en/git-repack.txt:160 en/git-replace.txt:144 en/git-revert.txt:124 en/git-rm.txt:183 en/git-send-email.txt:477 en/git-shell.txt:83 en/git-show-ref.txt:178 en/git-stash.txt:287 en/git-status.txt:354 en/git-svn.txt:1131 en/git-tag.txt:345 en/git-update-index.txt:479 en/git-upload-pack.txt:48 en/git-var.txt:63
+#. type: delimited block -
+#: en/config.txt:41
 #, no-wrap
-msgid "SEE ALSO"
+msgid "\t[section \"subsection\"]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1293
+#: en/config.txt:52
 msgid ""
-"linkgit:gittutorial[7], linkgit:gittutorial-2[7], linkgit:giteveryday[7], "
-"linkgit:gitcvs-migration[7], linkgit:gitglossary[7], "
-"linkgit:gitcore-tutorial[7], linkgit:gitcli[7], link:user-manual.html[The "
-"Git User's Manual], linkgit:gitworkflows[7]"
-msgstr ""
-
-#. type: Title -
-#: en/git.txt:1295 en/git-add.txt:415 en/git-am.txt:232 en/git-annotate.txt:33 en/git-apply.txt:274 en/git-archimport.txt:111 en/git-archive.txt:196 en/git-bisect.txt:499 en/git-blame.txt:236 en/git-branch.txt:321 en/git-bundle.txt:204 en/git-cat-file.txt:301 en/git-check-attr.txt:119 en/git-check-ignore.txt:119 en/git-check-mailmap.txt:46 en/git-checkout-index.txt:176 en/git-checkout.txt:521 en/git-check-ref-format.txt:126 en/git-cherry-pick.txt:232 en/git-cherry.txt:144 en/git-citool.txt:24 en/git-clean.txt:140 en/git-clone.txt:296 en/git-column.txt:47 en/git-commit.txt:488 en/git-commit-tree.txt:117 en/git-config.txt:429 en/git-count-objects.txt:53 en/git-credential-cache--daemon.txt:29 en/git-credential-cache.txt:76 en/git-credential-store.txt:105 en/git-cvsexportcommit.txt:117 en/git-cvsimport.txt:227 en/git-cvsserver.txt:432 en/git-daemon.txt:317 en/git-describe.txt:181 en/git-diff-files.txt:51 en/git-diff-index.txt:121 en/git-difftool.txt:146 en/git-diff-tree.txt:166 en/git-diff.txt:188 en/git-fast-export.txt:217 en/git-fast-import.txt:1474 en/git-fetch-pack.txt:131 en/git-fetch.txt:211 en/git-filter-branch.txt:462 en/git-fmt-merge-msg.txt:77 en/git-for-each-ref.txt:343 en/git-format-patch.txt:640 en/git-fsck-objects.txt:21 en/git-fsck.txt:158 en/git-gc.txt:185 en/git-get-tar-commit-id.txt:29 en/git-grep.txt:313 en/git-gui.txt:126 en/git-hash-object.txt:64 en/git-help.txt:190 en/git-http-backend.txt:276 en/git-http-fetch.txt:51 en/git-http-push.txt:96 en/git-imap-send.txt:182 en/git-index-pack.txt:104 en/git-init-db.txt:22 en/git-init.txt:157 en/git-instaweb.txt:92 en/git-interpret-trailers.txt:338 en/git-log.txt:223 en/git-ls-files.txt:241 en/git-ls-remote.txt:94 en/git-ls-tree.txt:103 en/git-mailinfo.txt:101 en/git-mailsplit.txt:56 en/git-merge-base.txt:182 en/git-merge-file.txt:94 en/git-merge-index.txt:78 en/git-merge-one-file.txt:20 en/git-mergetool--lib.txt:46 en/git-mergetool.txt:100 en/git-merge-tree.txt:28 en/git-merge.txt:362 en/git-mktag.txt:38 en/git-mktree.txt:39 en/git-mv.txt:68 en/git-name-rev.txt:88 en/git-notes.txt:404 en/git-pack-objects.txt:241 en/git-pack-redundant.txt:49 en/git-pack-refs.txt:72 en/git-parse-remote.txt:22 en/git-patch-id.txt:63 en/git-prune-packed.txt:46 en/git-prune.txt:85 en/git-pull.txt:256 en/git-push.txt:566 en/git-quiltimport.txt:60 en/git-read-tree.txt:430 en/git-rebase.txt:801 en/git-receive-pack.txt:222 en/git-reflog.txt:132 en/git-remote-ext.txt:124 en/git-remote-fd.txt:58 en/git-remote-testgit.txt:29 en/git-remote.txt:251 en/git-repack.txt:165 en/git-replace.txt:155 en/git-request-pull.txt:78 en/git-rerere.txt:215 en/git-reset.txt:453 en/git-revert.txt:128 en/git-rev-list.txt:120 en/git-rev-parse.txt:452 en/git-rm.txt:187 en/git-send-email.txt:481 en/git-send-pack.txt:149 en/git-shell.txt:89 en/git-sh-i18n--envsubst.txt:35 en/git-sh-i18n.txt:42 en/git-shortlog.txt:89 en/git-show-branch.txt:203 en/git-show-index.txt:26 en/git-show-ref.txt:185 en/git-show.txt:86 en/git-sh-setup.txt:94 en/git-stage.txt:22 en/git-stash.txt:294 en/git-status.txt:358 en/git-stripspace.txt:93 en/git-submodule.txt:437 en/git-svn.txt:1135 en/git-symbolic-ref.txt:68 en/git-tag.txt:350 en/git-unpack-file.txt:27 en/git-unpack-objects.txt:51 en/git-update-index.txt:485 en/git-update-ref.txt:151 en/git-update-server-info.txt:43 en/git-upload-archive.txt:61 en/git-upload-pack.txt:52 en/git-var.txt:69 en/git-verify-commit.txt:31 en/git-verify-pack.txt:52 en/git-verify-tag.txt:31 en/git-web--browse.txt:123 en/git-whatchanged.txt:42 en/git-worktree.txt:258 en/git-write-tree.txt:41
-#, no-wrap
-msgid "GIT"
+"Subsection names are case sensitive and can contain any characters except "
+"newline and the null byte. Doublequote `\"` and backslash can be included by "
+"escaping them as `\\\"` and `\\\\`, respectively. Backslashes preceding "
+"other characters are dropped when reading; for example, `\\t` is read as `t` "
+"and `\\0` is read as `0` Section headers cannot span multiple lines.  "
+"Variables may belong directly to a section or to a given subsection. You can "
+"have `[section]` if you have `[section \"subsection\"]`, but you don't need "
+"to."
 msgstr ""
 
 #. type: Plain text
-#: en/git.txt:1296 en/git-add.txt:416 en/git-am.txt:233 en/git-annotate.txt:34 en/git-apply.txt:275 en/git-archimport.txt:112 en/git-archive.txt:197 en/git-bisect.txt:500 en/git-blame.txt:237 en/git-branch.txt:322 en/git-bundle.txt:205 en/git-cat-file.txt:302 en/git-check-attr.txt:120 en/git-check-ignore.txt:120 en/git-check-mailmap.txt:47 en/git-checkout-index.txt:177 en/git-checkout.txt:522 en/git-check-ref-format.txt:127 en/git-cherry-pick.txt:233 en/git-cherry.txt:145 en/git-citool.txt:25 en/git-clean.txt:141 en/git-clone.txt:297 en/git-column.txt:48 en/git-commit.txt:489 en/git-commit-tree.txt:118 en/git-config.txt:430 en/git-count-objects.txt:54 en/git-credential-cache--daemon.txt:30 en/git-credential-cache.txt:77 en/git-credential-store.txt:106 en/git-cvsexportcommit.txt:118 en/git-cvsimport.txt:228 en/git-cvsserver.txt:433 en/git-daemon.txt:318 en/git-describe.txt:182 en/git-diff-files.txt:52 en/git-diff-index.txt:122 en/git-difftool.txt:147 en/git-diff-tree.txt:167 en/git-diff.txt:189 en/git-fast-export.txt:218 en/git-fast-import.txt:1475 en/git-fetch-pack.txt:132 en/git-fetch.txt:212 en/git-filter-branch.txt:463 en/git-fmt-merge-msg.txt:78 en/git-for-each-ref.txt:344 en/git-format-patch.txt:641 en/git-fsck-objects.txt:22 en/git-fsck.txt:159 en/git-gc.txt:186 en/git-get-tar-commit-id.txt:30 en/git-grep.txt:314 en/git-gui.txt:127 en/git-hash-object.txt:65 en/git-help.txt:191 en/git-http-backend.txt:277 en/git-http-fetch.txt:52 en/git-http-push.txt:97 en/git-imap-send.txt:183 en/git-index-pack.txt:105 en/git-init-db.txt:23 en/git-init.txt:158 en/git-instaweb.txt:93 en/git-interpret-trailers.txt:339 en/git-log.txt:224 en/git-ls-files.txt:242 en/git-ls-remote.txt:95 en/git-ls-tree.txt:104 en/git-mailinfo.txt:102 en/git-mailsplit.txt:57 en/git-merge-base.txt:183 en/git-merge-file.txt:95 en/git-merge-index.txt:79 en/git-merge-one-file.txt:21 en/git-mergetool--lib.txt:47 en/git-mergetool.txt:101 en/git-merge-tree.txt:29 en/git-merge.txt:363 en/git-mktag.txt:39 en/git-mktree.txt:40 en/git-mv.txt:69 en/git-name-rev.txt:89 en/git-notes.txt:405 en/git-pack-objects.txt:242 en/git-pack-redundant.txt:50 en/git-pack-refs.txt:73 en/git-parse-remote.txt:23 en/git-patch-id.txt:64 en/git-prune-packed.txt:47 en/git-prune.txt:86 en/git-pull.txt:257 en/git-push.txt:567 en/git-quiltimport.txt:61 en/git-read-tree.txt:431 en/git-rebase.txt:802 en/git-receive-pack.txt:223 en/git-reflog.txt:133 en/git-remote-ext.txt:125 en/git-remote-fd.txt:59 en/git-remote-testgit.txt:30 en/git-remote.txt:252 en/git-repack.txt:166 en/git-replace.txt:156 en/git-request-pull.txt:79 en/git-rerere.txt:216 en/git-reset.txt:454 en/git-revert.txt:129 en/git-rev-list.txt:121 en/git-rev-parse.txt:453 en/git-rm.txt:188 en/git-send-email.txt:482 en/git-send-pack.txt:150 en/git-shell.txt:90 en/git-sh-i18n--envsubst.txt:36 en/git-sh-i18n.txt:43 en/git-shortlog.txt:90 en/git-show-branch.txt:204 en/git-show-index.txt:27 en/git-show-ref.txt:186 en/git-show.txt:87 en/git-sh-setup.txt:95 en/git-stage.txt:23 en/git-stash.txt:295 en/git-status.txt:359 en/git-stripspace.txt:94 en/git-submodule.txt:438 en/git-svn.txt:1136 en/git-symbolic-ref.txt:69 en/git-tag.txt:351 en/git-unpack-file.txt:28 en/git-unpack-objects.txt:52 en/git-update-index.txt:486 en/git-update-ref.txt:152 en/git-update-server-info.txt:44 en/git-upload-archive.txt:62 en/git-upload-pack.txt:53 en/git-var.txt:70 en/git-verify-commit.txt:32 en/git-verify-pack.txt:53 en/git-verify-tag.txt:32 en/git-web--browse.txt:124 en/git-whatchanged.txt:43 en/git-worktree.txt:259 en/git-write-tree.txt:42
-msgid "Part of the linkgit:git[1] suite"
-msgstr ""
-
-#. type: Title =
-#: en/git-add.txt:2
-#, no-wrap
-msgid "git-add(1)"
+#: en/config.txt:57
+msgid ""
+"There is also a deprecated `[section.subsection]` syntax. With this syntax, "
+"the subsection name is converted to lower-case and is also compared case "
+"sensitively. These subsection names follow the same restrictions as section "
+"names."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:7
-msgid "git-add - Add file contents to the index"
+#: en/config.txt:64
+msgid ""
+"All the other lines (and the remainder of the line after the section header) "
+"are recognized as setting variables, in the form 'name = value' (or just "
+"'name', which is a short-hand to say that the variable is the boolean \"true"
+"\").  The variable names are case-insensitive, allow only alphanumeric "
+"characters and `-`, and must start with an alphabetic character."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:15
-#, no-wrap
+#: en/config.txt:72
 msgid ""
-"'git add' [--verbose | -v] [--dry-run | -n] [--force | -f] [--interactive | "
-"-i] [--patch | -p]\n"
-"\t  [--edit | -e] [--[no-]all | --[no-]ignore-removal | [--update | -u]]\n"
-"\t  [--intent-to-add | -N] [--refresh] [--ignore-errors] "
-"[--ignore-missing]\n"
-"\t  [--chmod=(+|-)x] [--] [<pathspec>...]\n"
+"A line that defines a value can be continued to the next line by ending it "
+"with a `\\`; the backquote and the end-of-line are stripped.  Leading "
+"whitespaces after 'name =', the remainder of the line after the first "
+"comment character '#' or ';', and trailing whitespaces of the line are "
+"discarded unless they are enclosed in double quotes.  Internal whitespaces "
+"within the value are retained verbatim."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:24
+#: en/config.txt:75
 msgid ""
-"This command updates the index using the current content found in the "
-"working tree, to prepare the content staged for the next commit.  It "
-"typically adds the current content of existing paths as a whole, but with "
-"some options it can also be used to add content with only part of the "
-"changes made to the working tree files applied, or remove paths that do not "
-"exist in the working tree anymore."
+"Inside double quotes, double quote `\"` and backslash `\\` characters must "
+"be escaped: use `\\\"` for `\"` and `\\\\` for `\\`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:30
+#: en/config.txt:80
 msgid ""
-"The \"index\" holds a snapshot of the content of the working tree, and it is "
-"this snapshot that is taken as the contents of the next commit.  Thus after "
-"making any changes to the working tree, and before running the commit "
-"command, you must use the `add` command to add any new or modified files to "
-"the index."
+"The following escape sequences (beside `\\\"` and `\\\\`) are recognized: `"
+"\\n` for newline character (NL), `\\t` for horizontal tabulation (HT, TAB)  "
+"and `\\b` for backspace (BS).  Other char escape sequences (including octal "
+"escape sequences) are invalid."
 msgstr ""
 
-#. type: Plain text
-#: en/git-add.txt:35
-msgid ""
-"This command can be performed multiple times before a commit.  It only adds "
-"the content of the specified file(s) at the time the add command is run; if "
-"you want subsequent changes included in the next commit, then you must run "
-"`git add` again to add the new content to the index."
+#. type: Title ~
+#: en/config.txt:83
+#, no-wrap
+msgid "Includes"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:38
+#: en/config.txt:90
 msgid ""
-"The `git status` command can be used to obtain a summary of which files have "
-"changes that are staged for the next commit."
+"The `include` and `includeIf` sections allow you to include config "
+"directives from another source. These sections behave identically to each "
+"other with the exception that `includeIf` sections may be ignored if their "
+"condition does not evaluate to true; see \"Conditional includes\" below."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:45
+#: en/config.txt:95
 msgid ""
-"The `git add` command will not add ignored files by default.  If any ignored "
-"files were explicitly specified on the command line, `git add` will fail "
-"with a list of ignored files.  Ignored files reached by directory recursion "
-"or filename globbing performed by Git (quote your globs before the shell) "
-"will be silently ignored.  The 'git add' command can be used to add ignored "
-"files with the `-f` (force) option."
+"You can include a config file from another by setting the special `include."
+"path` (or `includeIf.*.path`) variable to the name of the file to be "
+"included. The variable takes a pathname as its value, and is subject to "
+"tilde expansion. These variables can be given multiple times."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:48
+#: en/config.txt:101
 msgid ""
-"Please see linkgit:git-commit[1] for alternative ways to add content to a "
-"commit."
+"The contents of the included file are inserted immediately, as if they had "
+"been found at the location of the include directive. If the value of the "
+"variable is a relative path, the path is considered to be relative to the "
+"configuration file in which the include directive was found.  See below for "
+"examples."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-add.txt:52 en/git-grep.txt:293
+#. type: Title ~
+#: en/config.txt:103
 #, no-wrap
-msgid "<pathspec>..."
+msgid "Conditional includes"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:64
+#: en/config.txt:108
 msgid ""
-"Files to add content from.  Fileglobs (e.g. `*.c`) can be given to add all "
-"matching files.  Also a leading directory name (e.g. `dir` to add "
-"`dir/file1` and `dir/file2`) can be given to update the index to match the "
-"current state of the directory as a whole (e.g.  specifying `dir` will "
-"record not just a file `dir/file1` modified in the working tree, a file "
-"`dir/file2` added to the working tree, but also a file `dir/file3` removed "
-"from the working tree).  Note that older versions of Git used to ignore "
-"removed files; use `--no-all` option if you want to add modified or new "
-"files but ignore removed ones."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-add.txt:65 en/git-blame.txt:70 en/git-checkout-index.txt:43 en/git-cherry-pick.txt:87 en/git-clean.txt:47 en/git-clone.txt:135 en/git-commit.txt:168 en/git-format-patch.txt:93 en/git-grep.txt:172 en/git-mailinfo.txt:66 en/git-mv.txt:39 en/git-notes.txt:178 en/git-p4.txt:294 en/git-prune-packed.txt:31 en/git-prune.txt:36 en/git-push.txt:117 en/git-quiltimport.txt:34 en/git-read-tree.txt:57 en/git-rebase.txt:318 en/git-reflog.txt:114 en/git-repack.txt:77 en/git-revert.txt:69 en/git-rm.txt:43 en/git-shortlog.txt:29 en/git-submodule.txt:310 en/git-svn.txt:648 en/git-unpack-objects.txt:30 en/git-worktree.txt:110 en/fetch-options.txt:80 en/merge-options.txt:56
-#, no-wrap
-msgid "-n"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-add.txt:66 en/git-clean.txt:48 en/git-commit.txt:310 en/git-http-push.txt:37 en/git-mv.txt:40 en/git-notes.txt:179 en/git-p4.txt:295 en/git-prune-packed.txt:32 en/git-prune.txt:37 en/git-push.txt:118 en/git-quiltimport.txt:35 en/git-read-tree.txt:58 en/git-reflog.txt:115 en/git-rm.txt:44 en/git-send-email.txt:362 en/git-send-pack.txt:51 en/git-svn.txt:649 en/git-worktree.txt:111 en/fetch-options.txt:46
-#, no-wrap
-msgid "--dry-run"
+"You can include a config file from another conditionally by setting a "
+"`includeIf.<condition>.path` variable to the name of the file to be included."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:69
+#: en/config.txt:112
 msgid ""
-"Don't actually add the file(s), just show if they exist and/or will be "
-"ignored."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-add.txt:70 en/git-apply.txt:214 en/git-archimport.txt:73 en/git-archive.txt:47 en/git-branch.txt:148 en/git-cherry.txt:29 en/git-clone.txt:124 en/git-commit.txt:291 en/git-count-objects.txt:21 en/git-cvsexportcommit.txt:82 en/git-cvsimport.txt:52 en/git-diff-tree.txt:81 en/git-fetch-pack.txt:111 en/git-grep.txt:137 en/git-http-fetch.txt:33 en/git-imap-send.txt:32 en/git-index-pack.txt:27 en/git-ls-files.txt:131 en/git-mv.txt:43 en/git-notes.txt:210 en/git-p4.txt:171 en/git-prune.txt:41 en/git-pull.txt:83 en/git-push.txt:264 en/git-read-tree.txt:62 en/git-rebase.txt:310 en/git-remote.txt:35 en/git-status.txt:47 en/git-svn.txt:350 en/git-tag.txt:79 en/git-verify-commit.txt:23 en/git-verify-pack.txt:26 en/git-verify-tag.txt:23 en/git-worktree.txt:120 en/fetch-options.txt:165 en/merge-options.txt:108
-#, no-wrap
-msgid "-v"
+"The condition starts with a keyword followed by a colon and some data whose "
+"format and meaning depends on the keyword. Supported keywords are:"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-add.txt:71 en/git-apply.txt:215 en/git-archive.txt:48 en/git-branch.txt:150 en/git-clone.txt:123 en/git-commit.txt:292 en/git-count-objects.txt:22 en/git-daemon.txt:126 en/git-fsck.txt:77 en/git-http-push.txt:40 en/git-imap-send.txt:33 en/git-mv.txt:44 en/git-notes.txt:211 en/git-p4.txt:172 en/git-pack-redundant.txt:39 en/git-prune.txt:42 en/git-pull.txt:84 en/git-push.txt:265 en/git-rebase.txt:311 en/git-reflog.txt:119 en/git-remote.txt:36 en/git-send-pack.txt:61 en/git-status.txt:48 en/git-svn.txt:351 en/git-update-index.txt:145 en/git-verify-commit.txt:24 en/git-verify-pack.txt:27 en/git-verify-tag.txt:24 en/git-worktree.txt:121 en/fetch-options.txt:166 en/merge-options.txt:109
+#: en/config.txt:113
 #, no-wrap
-msgid "--verbose"
+msgid "`gitdir`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:73 en/git-imap-send.txt:35 en/fetch-options.txt:168 en/merge-options.txt:111
-msgid "Be verbose."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-add.txt:74 en/git-archimport.txt:80 en/git-blame.txt:64 en/git-branch.txt:98 en/git-checkout-index.txt:34 en/git-checkout.txt:116 en/git-clean.txt:34 en/git-cvsexportcommit.txt:54 en/git-filter-branch.txt:189 en/git-mv.txt:31 en/git-notes.txt:127 en/git-push.txt:221 en/git-rebase.txt:335 en/git-repack.txt:65 en/git-replace.txt:59 en/git-rm.txt:39 en/git-submodule.txt:287 en/git-tag.txt:71 en/git-update-server-info.txt:26 en/git-worktree.txt:85 en/fetch-options.txt:50
-#, no-wrap
-msgid "-f"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-add.txt:75 en/git-branch.txt:99 en/git-checkout-index.txt:35 en/git-checkout.txt:117 en/git-clean.txt:35 en/git-fast-import.txt:37 en/git-filter-branch.txt:190 en/git-gc.txt:77 en/git-http-push.txt:30 en/git-mv.txt:32 en/git-notes.txt:128 en/git-push.txt:222 en/git-replace.txt:60 en/git-rm.txt:40 en/git-send-email.txt:387 en/git-send-pack.txt:54 en/git-submodule.txt:288 en/git-tag.txt:72 en/git-update-server-info.txt:27 en/git-worktree.txt:86 en/fetch-options.txt:51
-#, no-wrap
-msgid "--force"
+#: en/config.txt:118
+msgid ""
+"The data that follows the keyword `gitdir:` is used as a glob pattern. If "
+"the location of the .git directory matches the pattern, the include "
+"condition is met."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:77
-msgid "Allow adding otherwise ignored files."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-add.txt:78 en/git-am.txt:123 en/git-branch.txt:124 en/git-clean.txt:42 en/git-commit.txt:253 en/git-cvsimport.txt:88 en/git-grep.txt:116 en/git-help.txt:51 en/git-ls-files.txt:51 en/git-read-tree.txt:48 en/git-rebase.txt:373 en/git-tag.txt:111 en/rev-list-options.txt:75
-#, no-wrap
-msgid "-i"
+#: en/config.txt:123
+msgid ""
+"The .git location may be auto-discovered, or come from `$GIT_DIR` "
+"environment variable. If the repository is auto discovered via a .git file "
+"(e.g. from submodules, or a linked worktree), the .git location would be the "
+"final location where the .git directory is, not where the"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-add.txt:79 en/git-am.txt:124 en/git-clean.txt:43 en/git-rebase.txt:374 en/git-svn.txt:281
+#. type: Block title
+#: en/config.txt:123
 #, no-wrap
-msgid "--interactive"
+msgid "git file is."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:84
+#: en/config.txt:128
 msgid ""
-"Add modified contents in the working tree interactively to the "
-"index. Optional path arguments may be supplied to limit operation to a "
-"subset of the working tree. See ``Interactive mode'' for details."
+"The pattern can contain standard globbing wildcards and two additional ones, "
+"`**/` and `/**`, that can match multiple path components. Please refer to "
+"linkgit:gitignore[5] for details. For convenience:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-add.txt:86 en/git-checkout.txt:243 en/git-commit.txt:67 en/diff-options.txt:24
-#, no-wrap
-msgid "--patch"
+#. type: Plain text
+#: en/config.txt:131
+msgid ""
+"If the pattern starts with `~/`, `~` will be substituted with the content of "
+"the environment variable `HOME`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:91
+#: en/config.txt:134
 msgid ""
-"Interactively choose hunks of patch between the index and the work tree and "
-"add them to the index. This gives the user a chance to review the difference "
-"before adding modified contents to the index."
+"If the pattern starts with `./`, it is replaced with the directory "
+"containing the current config file."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:95
+#: en/config.txt:138
 msgid ""
-"This effectively runs `add --interactive`, but bypasses the initial command "
-"menu and directly jumps to the `patch` subcommand.  See ``Interactive mode'' "
-"for details."
+"If the pattern does not start with either `~/`, `./` or `/`, `**/` will be "
+"automatically prepended. For example, the pattern `foo/bar` becomes `**/foo/"
+"bar` and would match `/any/path/to/foo/bar`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-add.txt:96 en/git-blame.txt:77 en/git-cat-file.txt:44 en/git-cherry-pick.txt:55 en/git-commit.txt:212 en/git-config.txt:220 en/git-grep.txt:260 en/git-revert.txt:43 en/git-shortlog.txt:38 en/git-svn.txt:583 en/merge-options.txt:11
-#, no-wrap
-msgid "-e"
+#. type: Plain text
+#: en/config.txt:142
+msgid ""
+"If the pattern ends with `/`, `**` will be automatically added. For example, "
+"the pattern `foo/` becomes `foo/**`. In other words, it matches \"foo\" and "
+"everything inside, recursively."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-add.txt:97 en/git-cherry-pick.txt:56 en/git-commit.txt:213 en/git-config.txt:221 en/git-revert.txt:44 en/git-svn.txt:584 en/merge-options.txt:10
+#: en/config.txt:143
 #, no-wrap
-msgid "--edit"
+msgid "`gitdir/i`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:101
+#: en/config.txt:146
 msgid ""
-"Open the diff vs. the index in an editor and let the user edit it.  After "
-"the editor was closed, adjust the hunk headers and apply the patch to the "
-"index."
+"This is the same as `gitdir` except that matching is done case-insensitively "
+"(e.g. on case-insensitive file sytems)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:107
-msgid ""
-"The intent of this option is to pick and choose lines of the patch to apply, "
-"or even to modify the contents of lines to be staged. This can be quicker "
-"and more flexible than using the interactive hunk selector.  However, it is "
-"easy to confuse oneself and create a patch that does not apply to the "
-"index. See EDITING PATCHES below."
+#: en/config.txt:148
+msgid "A few more notes on matching via `gitdir` and `gitdir/i`:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-add.txt:108 en/git-am.txt:78 en/git-checkout-index.txt:25 en/git-cvsexportcommit.txt:64 en/git-cvsimport.txt:98 en/git-ls-files.txt:69 en/git-mailinfo.txt:52 en/git-push.txt:245 en/git-read-tree.txt:44 en/diff-options.txt:23 en/fetch-options.txt:143
-#, no-wrap
-msgid "-u"
+#. type: Plain text
+#: en/config.txt:150
+msgid "Symlinks in `$GIT_DIR` are not resolved before matching."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-add.txt:109
-#, no-wrap
-msgid "--update"
+#. type: Plain text
+#: en/config.txt:155
+msgid ""
+"Both the symlink & realpath versions of paths will be matched outside of `"
+"$GIT_DIR`. E.g. if ~/git is a symlink to /mnt/storage/git, both `gitdir:~/"
+"git` and `gitdir:/mnt/storage/git` will match."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:113
+#: en/config.txt:160
 msgid ""
-"Update the index just where it already has an entry matching <pathspec>.  "
-"This removes as well as modifies index entries to match the working tree, "
-"but adds no new files."
+"This was not the case in the initial release of this feature in v2.13.0, "
+"which only matched the realpath version. Configuration that wants to be "
+"compatible with the initial release of this feature needs to either specify "
+"only the realpath version, or both versions."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:118
+#: en/config.txt:163
 msgid ""
-"If no <pathspec> is given when `-u` option is used, all tracked files in the "
-"entire working tree are updated (old versions of Git used to limit the "
-"update to the current directory and its subdirectories)."
+"Note that \"../\" is not special and will match literally, which is unlikely "
+"what you want."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-add.txt:119 en/git-repack.txt:44 en/git-svn.txt:402
+#. type: Title ~
+#: en/config.txt:165 en/git-rev-parse.txt:359 en/git-rev-parse.txt:415
 #, no-wrap
-msgid "-A"
+msgid "Example"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-add.txt:120 en/git-branch.txt:141 en/git-checkout-index.txt:39 en/git-commit.txt:61 en/git-describe.txt:37 en/git-fetch-pack.txt:35 en/git-help.txt:42 en/git-http-push.txt:25 en/git-merge-base.txt:72 en/git-name-rev.txt:42 en/git-pack-objects.txt:75 en/git-pack-redundant.txt:32 en/git-pack-refs.txt:48 en/git-push.txt:94 en/git-reflog.txt:72 en/git-rev-parse.txt:161 en/git-send-pack.txt:37 en/git-show-branch.txt:48 en/git-submodule.txt:275 en/fetch-options.txt:1 en/rev-list-options.txt:135
+#. type: Plain text
+#: en/config.txt:171
 #, no-wrap
-msgid "--all"
+msgid ""
+"\t# Core variables\n"
+"\t[core]\n"
+"\t\t; Don't trust file modes\n"
+"\t\tfilemode = false\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-add.txt:121
+#. type: Plain text
+#: en/config.txt:176
 #, no-wrap
-msgid "--no-ignore-removal"
+msgid ""
+"\t# Our diff algorithm\n"
+"\t[diff]\n"
+"\t\texternal = /usr/local/bin/diff-wrapper\n"
+"\t\trenames = true\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:126
+#: en/config.txt:180
+#, no-wrap
 msgid ""
-"Update the index not only where the working tree has a file matching "
-"<pathspec> but also where the index already has an entry. This adds, "
-"modifies, and removes index entries to match the working tree."
+"\t[branch \"devel\"]\n"
+"\t\tremote = origin\n"
+"\t\tmerge = refs/heads/devel\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:131
+#: en/config.txt:185
+#, no-wrap
 msgid ""
-"If no <pathspec> is given when `-A` option is used, all files in the entire "
-"working tree are updated (old versions of Git used to limit the update to "
-"the current directory and its subdirectories)."
+"\t# Proxy settings\n"
+"\t[core]\n"
+"\t\tgitProxy=\"ssh\" for \"kernel.org\"\n"
+"\t\tgitProxy=default-proxy ; for the rest\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-add.txt:132
+#. type: Plain text
+#: en/config.txt:190
 #, no-wrap
-msgid "--no-all"
+msgid ""
+"\t[include]\n"
+"\t\tpath = /path/to/foo.inc ; include by absolute path\n"
+"\t\tpath = foo.inc ; find \"foo.inc\" relative to the current file\n"
+"\t\tpath = ~/foo.inc ; find \"foo.inc\" in your `$HOME` directory\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-add.txt:133
+#. type: Plain text
+#: en/config.txt:194
 #, no-wrap
-msgid "--ignore-removal"
+msgid ""
+"\t; include if $GIT_DIR is /path/to/foo/.git\n"
+"\t[includeIf \"gitdir:/path/to/foo/.git\"]\n"
+"\t\tpath = /path/to/foo.inc\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:138
+#: en/config.txt:198
+#, no-wrap
 msgid ""
-"Update the index by adding new files that are unknown to the index and files "
-"modified in the working tree, but ignore files that have been removed from "
-"the working tree.  This option is a no-op when no <pathspec> is used."
+"\t; include for all repositories inside /path/to/group\n"
+"\t[includeIf \"gitdir:/path/to/group/\"]\n"
+"\t\tpath = /path/to/foo.inc\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:142
+#: en/config.txt:202
+#, no-wrap
 msgid ""
-"This option is primarily to help users who are used to older versions of "
-"Git, whose \"git add <pathspec>...\" was a synonym for \"git add --no-all "
-"<pathspec>...\", i.e. ignored removed files."
+"\t; include for all repositories inside $HOME/to/group\n"
+"\t[includeIf \"gitdir:~/to/group/\"]\n"
+"\t\tpath = /path/to/foo.inc\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-add.txt:143 en/git-format-patch.txt:97 en/git-submodule.txt:349
+#. type: Plain text
+#: en/config.txt:208
 #, no-wrap
-msgid "-N"
+msgid ""
+"\t; relative paths are always relative to the including\n"
+"\t; file (if the condition is true); their location is not\n"
+"\t; affected by the condition\n"
+"\t[includeIf \"gitdir:/path/to/group/\"]\n"
+"\t\tpath = foo.inc\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-add.txt:144
+#. type: Title ~
+#: en/config.txt:210
 #, no-wrap
-msgid "--intent-to-add"
+msgid "Values"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:150
+#: en/config.txt:215
 msgid ""
-"Record only the fact that the path will be added later. An entry for the "
-"path is placed in the index with no content. This is useful for, among other "
-"things, showing the unstaged content of such files with `git diff` and "
-"committing them with `git commit -a`."
+"Values of many variables are treated as a simple string, but there are "
+"variables that take values of specific types and there are rules as to how "
+"to spell them."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-add.txt:151 en/git-update-index.txt:52
+#: en/config.txt:216
 #, no-wrap
-msgid "--refresh"
+msgid "boolean"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:154
+#: en/config.txt:221
 msgid ""
-"Don't add the file(s), but only refresh their stat()  information in the "
-"index."
+"When a variable is said to take a boolean value, many synonyms are accepted "
+"for 'true' and 'false'; these are all case-insensitive."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-add.txt:155
+#: en/config.txt:222
 #, no-wrap
-msgid "--ignore-errors"
+msgid "true"
+msgstr ""
+
+#. type: Plain text
+#: en/config.txt:223
+msgid "Boolean true literals are `yes`, `on`, `true`,"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:161
+#: en/config.txt:225
+#, no-wrap
 msgid ""
-"If some files could not be added because of errors indexing them, do not "
-"abort the operation, but continue adding the others. The command shall still "
-"exit with non-zero status.  The configuration variable `add.ignoreErrors` "
-"can be set to true to make this the default behaviour."
+"and `1`.  Also, a variable defined without `= <value>`\n"
+"is taken as true.\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-add.txt:162 en/git-notes.txt:169 en/git-update-index.txt:70 en/rev-list-options.txt:182
+#: en/config.txt:226
 #, no-wrap
-msgid "--ignore-missing"
+msgid "false"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:167
-msgid ""
-"This option can only be used together with --dry-run. By using this option "
-"the user can check if any of the given files would be ignored, no matter if "
-"they are already present in the work tree or not."
+#: en/config.txt:227
+msgid "Boolean false literals are `no`, `off`, `false`,"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-add.txt:168 en/git-update-index.txt:83
+#. type: Plain text
+#: en/config.txt:228
 #, no-wrap
-msgid "--chmod=(+|-)x"
+msgid "`0` and the empty string.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:172
+#: en/config.txt:232
 msgid ""
-"Override the executable bit of the added files.  The executable bit is only "
-"changed in the index, the files on disk are left unchanged."
+"When converting a value to its canonical form using the `--type=bool` type "
+"specifier, 'git config' will ensure that the output is \"true\" or \"false"
+"\" (spelled in lowercase)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-add.txt:173 en/git-check-attr.txt:39 en/git-checkout-index.txt:71 en/git-commit.txt:336 en/git-grep.txt:289 en/git-ls-files.txt:174 en/git-merge-index.txt:23 en/git-prune.txt:45 en/git-rm.txt:53 en/git-update-index.txt:204 en/git-verify-pack.txt:36
+#: en/config.txt:233
 #, no-wrap
-msgid "\\--"
+msgid "integer"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:177 en/git-rm.txt:57
+#: en/config.txt:237
 msgid ""
-"This option can be used to separate command-line options from the list of "
-"files, (useful when filenames might be mistaken for command-line options)."
+"The value for many variables that specify various sizes can be suffixed with "
+"`k`, `M`,... to mean \"scale the number by 1024\", \"by 1024x1024\", etc."
 msgstr ""
 
-#. type: Title -
-#: en/git-add.txt:180 en/git-apply.txt:244 en/git-gc.txt:82 en/git-repack.txt:147 en/git-update-index.txt:451
+#. type: Labeled list
+#: en/config.txt:238 en/diff-options.txt:339 en/git-for-each-ref.txt:177
 #, no-wrap
-msgid "Configuration"
+msgid "color"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:186
+#: en/config.txt:242
 msgid ""
-"The optional configuration variable `core.excludesFile` indicates a path to "
-"a file containing patterns of file names to exclude from git-add, similar to "
-"$GIT_DIR/info/exclude.  Patterns in the exclude file are used in addition to "
-"those in info/exclude.  See linkgit:gitignore[5]."
+"The value for a variable that takes a color is a list of colors (at most "
+"two, one for foreground and one for background)  and attributes (as many as "
+"you want), separated by spaces."
 msgstr ""
 
-#. type: Title -
-#: en/git-add.txt:189 en/git-archive.txt:149 en/git-bisect.txt:370 en/git-check-attr.txt:71 en/git-checkout-index.txt:143 en/git-checkout.txt:435 en/git-check-ref-format.txt:110 en/git-cherry-pick.txt:156 en/git-cherry.txt:43 en/git-commit.txt:350 en/git-config.txt:296 en/git-credential-cache.txt:52 en/git-credential-store.txt:71 en/git-cvsexportcommit.txt:91 en/git-daemon.txt:235 en/git-describe.txt:110 en/git-diff.txt:109 en/git-fast-export.txt:125 en/git-fetch.txt:155 en/git-for-each-ref.txt:237 en/git-format-patch.txt:591 en/git-http-backend.txt:67 en/git-init.txt:141 en/git-interpret-trailers.txt:205 en/git-log.txt:108 en/git-ls-remote.txt:75 en/git-merge-file.txt:81 en/git-merge.txt:310 en/git-notes.txt:278 en/git-pull.txt:206 en/git-remote-fd.txt:37 en/git-reset.txt:102 en/git-revert.txt:109 en/git-rev-parse.txt:427 en/git-rm.txt:159 en/git-show.txt:58 en/git-stash.txt:201 en/git-stripspace.txt:49 en/git-worktree.txt:224
-#, no-wrap
-msgid "EXAMPLES"
+#. type: Plain text
+#: en/config.txt:246
+msgid ""
+"The basic colors accepted are `normal`, `black`, `red`, `green`, `yellow`, "
+"`blue`, `magenta`, `cyan` and `white`.  The first color given is the "
+"foreground; the second is the background."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:193
+#: en/config.txt:251
 msgid ""
-"Adds content from all `*.txt` files under `Documentation` directory and its "
-"subdirectories:"
+"Colors may also be given as numbers between 0 and 255; these use ANSI 256-"
+"color mode (but note that not all terminals may support this).  If your "
+"terminal supports it, you may also specify 24-bit RGB values as hex, like "
+"`#ff0ab3`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-add.txt:196
-#, no-wrap
-msgid "$ git add Documentation/\\*.txt\n"
+#. type: Plain text
+#: en/config.txt:258
+msgid ""
+"The accepted attributes are `bold`, `dim`, `ul`, `blink`, `reverse`, "
+"`italic`, and `strike` (for crossed-out or \"strikethrough\" letters).  The "
+"position of any attributes with respect to the colors (before, after, or in "
+"between), doesn't matter. Specific attributes may be turned off by prefixing "
+"them with `no` or `no-` (e.g., `noreverse`, `no-ul`, etc)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:201
+#: en/config.txt:261
 msgid ""
-"Note that the asterisk `*` is quoted from the shell in this example; this "
-"lets the command include the files from subdirectories of `Documentation/` "
-"directory."
+"An empty color string produces no color effect at all. This can be used to "
+"avoid coloring specific elements without disabling color entirely."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:203
-msgid "Considers adding content from all git-*.sh scripts:"
+#: en/config.txt:270
+msgid ""
+"For git's pre-defined color slots, the attributes are meant to be reset at "
+"the beginning of each item in the colored output. So setting `color.decorate."
+"branch` to `black` will paint that branch name in a plain `black`, even if "
+"the previous thing on the same output line (e.g.  opening parenthesis before "
+"the list of branch names in `log --decorate` output) is set to be painted "
+"with `bold` or some other attribute.  However, custom log formats may do "
+"more complicated and layered coloring, and the negated forms may be useful "
+"there."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-add.txt:206
+#. type: Labeled list
+#: en/config.txt:271
 #, no-wrap
-msgid "$ git add git-*.sh\n"
+msgid "pathname"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:211
+#: en/config.txt:277
 msgid ""
-"Because this example lets the shell expand the asterisk (i.e. you are "
-"listing the files explicitly), it does not consider `subdir/git-foo.sh`."
+"A variable that takes a pathname value can be given a string that begins "
+"with \"`~/`\" or \"`~user/`\", and the usual tilde expansion happens to such "
+"a string: `~/` is expanded to the value of `$HOME`, and `~user/` to the "
+"specified user's home directory."
 msgstr ""
 
-#. type: Title -
-#: en/git-add.txt:213 en/git-clean.txt:75
+#. type: Title ~
+#: en/config.txt:280 en/git-imap-send.txt:58
 #, no-wrap
-msgid "Interactive mode"
+msgid "Variables"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:217
+#: en/config.txt:285
 msgid ""
-"When the command enters the interactive mode, it shows the output of the "
-"'status' subcommand, and then goes into its interactive command loop."
+"Note that this list is non-comprehensive and not necessarily complete.  For "
+"command-specific variables, you will find a more detailed description in the "
+"appropriate manual page."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:222 en/git-clean.txt:84
+#: en/config.txt:290
 msgid ""
-"The command loop shows the list of subcommands available, and gives a prompt "
-"\"What now> \".  In general, when the prompt ends with a single '>', you can "
-"pick only one of the choices given and type return, like this:"
+"Other git-related tools may and do use their own variables.  When inventing "
+"new variables for use in your own tool, make sure their names do not "
+"conflict with those that are used by Git itself and other popular tools, and "
+"describe them in your documentation."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-add.txt:228
+#. type: Title -
+#: en/date-formats.txt:2
 #, no-wrap
-msgid ""
-"    *** Commands ***\n"
-"      1: status       2: update       3: revert       4: add untracked\n"
-"      5: patch        6: diff         7: quit         8: help\n"
-"    What now> 1\n"
+msgid "DATE FORMATS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:232
-msgid ""
-"You also could say `s` or `sta` or `status` above as long as the choice is "
-"unique."
+#: en/date-formats.txt:5
+msgid "The `GIT_AUTHOR_DATE`, `GIT_COMMITTER_DATE` environment variables"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:234
-msgid "The main command loop has 6 subcommands (plus help and quit)."
+#: en/date-formats.txt:7
+msgid "and the `--date` option"
+msgstr ""
+
+#. type: Plain text
+#: en/date-formats.txt:9
+msgid "support the following date formats:"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-add.txt:235
+#: en/date-formats.txt:10
 #, no-wrap
-msgid "status"
+msgid "Git internal format"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:242
+#: en/date-formats.txt:15
 msgid ""
-"This shows the change between HEAD and index (i.e. what will be committed if "
-"you say `git commit`), and between index and working tree files (i.e. what "
-"you could stage further before `git commit` using `git add`) for each path.  "
-"A sample output looks like this:"
+"It is `<unix timestamp> <time zone offset>`, where `<unix timestamp>` is the "
+"number of seconds since the UNIX epoch.  `<time zone offset>` is a positive "
+"or negative offset from UTC.  For example CET (which is 1 hour ahead of UTC) "
+"is `+0100`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-add.txt:247
+#. type: Labeled list
+#: en/date-formats.txt:16
 #, no-wrap
-msgid ""
-"              staged     unstaged path\n"
-"     1:       binary      nothing foo.png\n"
-"     2:     +403/-35        +1/-1 git-add--interactive.perl\n"
+msgid "RFC 2822"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:258
+#: en/date-formats.txt:19
 msgid ""
-"It shows that foo.png has differences from HEAD (but that is binary so line "
-"count cannot be shown) and there is no difference between indexed copy and "
-"the working tree version (if the working tree version were also different, "
-"'binary' would have been shown in place of 'nothing').  The other file, "
-"git-add{litdd}interactive.perl, has 403 lines added and 35 lines deleted if "
-"you commit what is in the index, but working tree file has further "
-"modifications (one addition and one deletion)."
+"The standard email format as described by RFC 2822, for example `Thu, 07 Apr "
+"2005 22:13:13 +0200`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-add.txt:259 en/git-update-ref.txt:94
+#: en/date-formats.txt:20
 #, no-wrap
-msgid "update"
+msgid "ISO 8601"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:268
+#: en/date-formats.txt:24
 msgid ""
-"This shows the status information and issues an \"Update>>\" prompt.  When "
-"the prompt ends with double '>>', you can make more than one selection, "
-"concatenated with whitespace or comma.  Also you can say ranges.  E.g. \"2-5 "
-"7,9\" to choose 2,3,4,5,7,9 from the list.  If the second number in a range "
-"is omitted, all remaining patches are taken.  E.g. \"7-\" to choose 7,8,9 "
-"from the list.  You can say '*' to choose everything."
+"Time and date specified by the ISO 8601 standard, for example "
+"`2005-04-07T22:13:13`. The parser accepts a space instead of the `T` "
+"character as well."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:271
-msgid "What you chose are then highlighted with '*', like this:"
+#: en/date-formats.txt:26
+msgid ""
+"In addition, the date part is accepted in the following formats: `YYYY.MM."
+"DD`, `MM/DD/YYYY` and `DD.MM.YYYY`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-add.txt:276
+#. type: Title -
+#: en/diff-format.txt:2
 #, no-wrap
-msgid ""
-"           staged     unstaged path\n"
-"  1:       binary      nothing foo.png\n"
-"* 2:     +403/-35        +1/-1 git-add--interactive.perl\n"
+msgid "Raw output format"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:280
-msgid "To remove selection, prefix the input with `-` like this:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-add.txt:283
-#, no-wrap
-msgid "Update>> -2\n"
+#: en/diff-format.txt:6
+msgid ""
+"The raw output format from \"git-diff-index\", \"git-diff-tree\", \"git-diff-"
+"files\" and \"git diff --raw\" are very similar."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:287
+#: en/diff-format.txt:9
 msgid ""
-"After making the selection, answer with an empty line to stage the contents "
-"of working tree files for selected paths in the index."
+"These commands all compare two sets of things; what is compared differs:"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-add.txt:288
+#: en/diff-format.txt:10
 #, no-wrap
-msgid "revert"
+msgid "git-diff-index <tree-ish>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:293
-msgid ""
-"This has a very similar UI to 'update', and the staged information for "
-"selected paths are reverted to that of the HEAD version.  Reverting new "
-"paths makes them untracked."
+#: en/diff-format.txt:12
+msgid "compares the <tree-ish> and the files on the filesystem."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-add.txt:294
+#: en/diff-format.txt:13
 #, no-wrap
-msgid "add untracked"
+msgid "git-diff-index --cached <tree-ish>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:298
-msgid ""
-"This has a very similar UI to 'update' and 'revert', and lets you add "
-"untracked paths to the index."
+#: en/diff-format.txt:15
+msgid "compares the <tree-ish> and the index."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-add.txt:299
+#: en/diff-format.txt:16
 #, no-wrap
-msgid "patch"
+msgid "git-diff-tree [-r] <tree-ish-1> <tree-ish-2> [<pattern>...]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:306
-msgid ""
-"This lets you choose one path out of a 'status' like selection.  After "
-"choosing the path, it presents the diff between the index and the working "
-"tree file and asks you if you want to stage the change of each hunk.  You "
-"can select one of the following options and type return:"
+#: en/diff-format.txt:18
+msgid "compares the trees named by the two arguments."
 msgstr ""
 
-#. type: Plain text
-#: en/git-add.txt:321
+#. type: Labeled list
+#: en/diff-format.txt:19
 #, no-wrap
-msgid ""
-"y - stage this hunk\n"
-"n - do not stage this hunk\n"
-"q - quit; do not stage this hunk or any of the remaining ones\n"
-"a - stage this hunk and all later hunks in the file\n"
-"d - do not stage this hunk or any of the later hunks in the file\n"
-"g - select a hunk to go to\n"
-"/ - search for a hunk matching the given regex\n"
-"j - leave this hunk undecided, see next undecided hunk\n"
-"J - leave this hunk undecided, see next hunk\n"
-"k - leave this hunk undecided, see previous undecided hunk\n"
-"K - leave this hunk undecided, see previous hunk\n"
-"s - split the current hunk into smaller hunks\n"
-"e - manually edit the current hunk\n"
-"? - print help\n"
+msgid "git-diff-files [<pattern>...]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:324
-msgid ""
-"After deciding the fate for all hunks, if there is any hunk that was chosen, "
-"the index is updated with the selected hunks."
+#: en/diff-format.txt:21
+msgid "compares the index and the files on the filesystem."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:327
+#: en/diff-format.txt:25
 msgid ""
-"You can omit having to type return here, by setting the configuration "
-"variable `interactive.singleKey` to `true`."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-add.txt:328
-#, no-wrap
-msgid "diff"
+"The \"git-diff-tree\" command begins its output by printing the hash of what "
+"is being compared. After that, all the commands print one output line per "
+"changed file."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:332
-msgid "This lets you review what will be committed (i.e. between HEAD and index)."
+#: en/diff-format.txt:27
+msgid "An output line is formatted this way:"
 msgstr ""
 
-#. type: Title -
-#: en/git-add.txt:335
+#. type: delimited block -
+#: en/diff-format.txt:35
 #, no-wrap
-msgid "EDITING PATCHES"
+msgid ""
+"in-place edit  :100644 100644 bcd1234 0123456 M file0\n"
+"copy-edit      :100644 100644 abcd123 1234567 C68 file1 file2\n"
+"rename-edit    :100644 100644 abcd123 1234567 R86 file1 file3\n"
+"create         :000000 100644 0000000 1234567 A file4\n"
+"delete         :100644 000000 1234567 0000000 D file5\n"
+"unmerged       :000000 000000 0000000 0000000 U file6\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:345
-msgid ""
-"Invoking `git add -e` or selecting `e` from the interactive hunk selector "
-"will open a patch in your editor; after the editor exits, the result is "
-"applied to the index. You are free to make arbitrary changes to the patch, "
-"but note that some changes may have confusing results, or even result in a "
-"patch that cannot be applied.  If you want to abort the operation entirely "
-"(i.e., stage nothing new in the index), simply delete all lines of the "
-"patch. The list below describes some common things you may see in a patch, "
-"and which editing operations make sense on them."
+#: en/diff-format.txt:38
+msgid "That is, from the left to the right:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-add.txt:347
-#, no-wrap
-msgid "added content"
+#. type: Plain text
+#: en/diff-format.txt:40
+msgid "a colon."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:351
-msgid ""
-"Added content is represented by lines beginning with \"{plus}\". You can "
-"prevent staging any addition lines by deleting them."
+#: en/diff-format.txt:41
+msgid "mode for \"src\"; 000000 if creation or unmerged."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-add.txt:352
-#, no-wrap
-msgid "removed content"
+#. type: Plain text
+#: en/diff-format.txt:42 en/diff-format.txt:44 en/diff-format.txt:46
+#: en/diff-format.txt:48
+msgid "a space."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:356
-msgid ""
-"Removed content is represented by lines beginning with \"-\". You can "
-"prevent staging their removal by converting the \"-\" to a \" \" (space)."
+#: en/diff-format.txt:43
+msgid "mode for \"dst\"; 000000 if deletion or unmerged."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-add.txt:357
-#, no-wrap
-msgid "modified content"
+#. type: Plain text
+#: en/diff-format.txt:45
+msgid "sha1 for \"src\"; 0\\{40\\} if creation or unmerged."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:364
+#: en/diff-format.txt:47
 msgid ""
-"Modified content is represented by \"-\" lines (removing the old content)  "
-"followed by \"{plus}\" lines (adding the replacement content). You can "
-"prevent staging the modification by converting \"-\" lines to \" \", and "
-"removing \"{plus}\" lines. Beware that modifying only half of the pair is "
-"likely to introduce confusing changes to the index."
+"sha1 for \"dst\"; 0\\{40\\} if creation, unmerged or \"look at work tree\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:372
-msgid ""
-"There are also more complex operations that can be performed. But beware "
-"that because the patch is applied only to the index and not the working "
-"tree, the working tree will appear to \"undo\" the change in the index.  For "
-"example, introducing a new line into the index that is in neither the HEAD "
-"nor the working tree will stage the new line for commit, but the line will "
-"appear to be reverted in the working tree."
+#: en/diff-format.txt:49
+msgid "status, followed by optional \"score\" number."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:374
-msgid "Avoid using these constructs, or do so with extreme caution."
+#: en/diff-format.txt:50
+msgid "a tab or a NUL when `-z` option is used."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-add.txt:376
-#, no-wrap
-msgid "removing untouched content"
+#. type: Plain text
+#: en/diff-format.txt:51
+msgid "path for \"src\""
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:382
-msgid ""
-"Content which does not differ between the index and working tree may be "
-"shown on context lines, beginning with a \" \" (space).  You can stage "
-"context lines for removal by converting the space to a \"-\". The resulting "
-"working tree file will appear to re-add the content."
+#: en/diff-format.txt:52
+msgid "a tab or a NUL when `-z` option is used; only exists for C or R."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-add.txt:383
-#, no-wrap
-msgid "modifying existing content"
+#. type: Plain text
+#: en/diff-format.txt:53
+msgid "path for \"dst\"; only exists for C or R."
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:390
-msgid ""
-"One can also modify context lines by staging them for removal (by converting "
-"\" \" to \"-\") and adding a \"{plus}\" line with the new content.  "
-"Similarly, one can modify \"{plus}\" lines for existing additions or "
-"modifications. In all cases, the new modification will appear reverted in "
-"the working tree."
+#: en/diff-format.txt:54
+msgid "an LF or a NUL when `-z` option is used, to terminate the record."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-add.txt:391
-#, no-wrap
-msgid "new content"
+#. type: Plain text
+#: en/diff-format.txt:56
+msgid "Possible status letters are:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:396
-msgid ""
-"You may also add new content that does not exist in the patch; simply add "
-"new lines, each starting with \"{plus}\". The addition will appear reverted "
-"in the working tree."
+#: en/diff-format.txt:58
+msgid "A: addition of a file"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:400
-msgid ""
-"There are also several operations which should be avoided entirely, as they "
-"will make the patch impossible to apply:"
+#: en/diff-format.txt:59
+msgid "C: copy of a file into a new one"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:402
-msgid "adding context (\" \") or removal (\"-\") lines"
+#: en/diff-format.txt:60
+msgid "D: deletion of a file"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:403
-msgid "deleting context or removal lines"
+#: en/diff-format.txt:61
+msgid "M: modification of the contents or mode of a file"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:404
-msgid "modifying the contents of context or removal lines"
+#: en/diff-format.txt:62
+msgid "R: renaming of a file"
 msgstr ""
 
 #. type: Plain text
-#: en/git-add.txt:413
-msgid ""
-"linkgit:git-status[1] linkgit:git-rm[1] linkgit:git-reset[1] "
-"linkgit:git-mv[1] linkgit:git-commit[1] linkgit:git-update-index[1]"
+#: en/diff-format.txt:63
+msgid "T: change in the type of the file"
 msgstr ""
 
-#. type: Title =
-#: en/git-am.txt:2
-#, no-wrap
-msgid "git-am(1)"
+#. type: Plain text
+#: en/diff-format.txt:65
+msgid ""
+"U: file is unmerged (you must complete the merge before it can be committed)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:7
-msgid "git-am - Apply a series of patches from a mailbox"
+#: en/diff-format.txt:66
+msgid "X: \"unknown\" change type (most probably a bug, please report it)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:20
-#, no-wrap
+#: en/diff-format.txt:71
 msgid ""
-"'git am' [--signoff] [--keep] [--[no-]keep-cr] [--[no-]utf8]\n"
-"\t [--[no-]3way] [--interactive] [--committer-date-is-author-date]\n"
-"\t [--ignore-date] [--ignore-space-change | --ignore-whitespace]\n"
-"\t [--whitespace=<option>] [-C<n>] [-p<n>] [--directory=<dir>]\n"
-"\t [--exclude=<path>] [--include=<path>] [--reject] [-q | --quiet]\n"
-"\t [--[no-]scissors] [-S[<keyid>]] [--patch-format=<format>]\n"
-"\t [(<mbox> | <Maildir>)...]\n"
-"'git am' (--continue | --skip | --abort)\n"
+"Status letters C and R are always followed by a score (denoting the "
+"percentage of similarity between the source and target of the move or "
+"copy).  Status letter M may be followed by a score (denoting the percentage "
+"of dissimilarity) for file rewrites."
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:26
+#: en/diff-format.txt:74
 msgid ""
-"Splits mail messages in a mailbox into commit log message, authorship "
-"information and patches, and applies them to the current branch."
+"<sha1> is shown as all 0's if a file is new on the filesystem and it is out "
+"of sync with the index."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-am.txt:30
+#: en/diff-format.txt:76 en/diff-format.txt:101 en/git-svn.txt:499
+#: en/git-svn.txt:539
 #, no-wrap
-msgid "(<mbox>|<Maildir>)..."
+msgid "Example:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-am.txt:34
-msgid ""
-"The list of mailbox files to read patches from. If you do not supply this "
-"argument, the command reads from the standard input.  If you supply "
-"directories, they will be treated as Maildirs."
+#. type: delimited block -
+#: en/diff-format.txt:79
+#, no-wrap
+msgid ":100644 100644 5be4a4a 0000000 M file.c\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:35 en/git-blame.txt:74 en/git-cat-file.txt:40 en/git-cherry-pick.txt:100 en/git-clone.txt:66 en/git-commit.txt:159 en/git-diff-tree.txt:75 en/git-format-patch.txt:113 en/git-ls-files.txt:58 en/git-revert.txt:89 en/git-shortlog.txt:34 en/git-show-ref.txt:53 en/git-status.txt:27 en/git-stripspace.txt:38 en/git-svn.txt:46 en/git-tag.txt:63 en/git-verify-pack.txt:31 en/diff-options.txt:30
-#, no-wrap
-msgid "-s"
+#. type: Plain text
+#: en/diff-format.txt:85 en/git-ls-files.txt:210 en/git-ls-tree.txt:101
+msgid ""
+"Without the `-z` option, pathnames with \"unusual\" characters are quoted as "
+"explained for the configuration variable `core.quotePath` (see linkgit:git-"
+"config[1]).  Using `-z` the filename is output verbatim and the line is "
+"terminated by a NUL byte."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:36 en/git-cherry-pick.txt:101 en/git-commit.txt:160 en/git-format-patch.txt:114 en/git-revert.txt:90
+#. type: Title -
+#: en/diff-format.txt:87
 #, no-wrap
-msgid "--signoff"
+msgid "diff format for merges"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:40
+#: en/diff-format.txt:93
 msgid ""
-"Add a `Signed-off-by:` line to the commit message, using the committer "
-"identity of yourself.  See the signoff option in linkgit:git-commit[1] for "
-"more information."
+"\"git-diff-tree\", \"git-diff-files\" and \"git-diff --raw\" can take `-c` "
+"or `--cc` option to generate diff output also for merge commits.  The output "
+"differs from the format described above in the following way:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:41 en/git-cvsexportcommit.txt:67 en/git-cvsimport.txt:93 en/git-fetch-pack.txt:53 en/git-format-patch.txt:108 en/git-ls-files.txt:73 en/git-mailinfo.txt:27 en/git-mv.txt:34 en/git-repack.txt:139 en/fetch-options.txt:58
-#, no-wrap
-msgid "-k"
+#. type: Plain text
+#: en/diff-format.txt:95
+msgid "there is a colon for each parent"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:42 en/git-fetch-pack.txt:54 en/git-index-pack.txt:54 en/git-reset.txt:82 en/fetch-options.txt:59
-#, no-wrap
-msgid "--keep"
+#. type: Plain text
+#: en/diff-format.txt:96
+msgid "there are more \"src\" modes and \"src\" sha1"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:44
-msgid "Pass `-k` flag to 'git mailinfo' (see linkgit:git-mailinfo[1])."
+#: en/diff-format.txt:97
+msgid "status is concatenated status characters for each parent"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:45
-#, no-wrap
-msgid "--keep-non-patch"
+#. type: Plain text
+#: en/diff-format.txt:98
+msgid "no optional \"score\" number"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:47
-msgid "Pass `-b` flag to 'git mailinfo' (see linkgit:git-mailinfo[1])."
+#: en/diff-format.txt:99
+msgid "single path, only for \"dst\""
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:48
+#. type: delimited block -
+#: en/diff-format.txt:104
 #, no-wrap
-msgid "--[no-]keep-cr"
+msgid "::100644 100644 100644 fabadb8 cc95eb0 4866510 MM\tdescribe.c\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:53
+#: en/diff-format.txt:108
 msgid ""
-"With `--keep-cr`, call 'git mailsplit' (see linkgit:git-mailsplit[1])  with "
-"the same option, to prevent it from stripping CR at the end of "
-"lines. `am.keepcr` configuration variable can be used to specify the default "
-"behaviour.  `--no-keep-cr` is useful to override `am.keepcr`."
+"Note that 'combined diff' lists only files which were modified from all "
+"parents."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:54 en/git-blame.txt:52 en/git-cvsexportcommit.txt:37 en/git-diff-files.txt:37 en/git-diff-tree.txt:91 en/git-grep.txt:201 en/git-http-fetch.txt:27 en/git-ls-files.txt:35 en/git-shortlog.txt:50 en/git-stripspace.txt:42 en/rev-list-options.txt:866
+#. type: Title -
+#: en/diff-format.txt:114
 #, no-wrap
-msgid "-c"
+msgid "other diff formats"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:55 en/git-mailinfo.txt:74
-#, no-wrap
-msgid "--scissors"
+#. type: Plain text
+#: en/diff-format.txt:120
+msgid ""
+"The `--summary` option describes newly added, deleted, renamed and copied "
+"files.  The `--stat` option adds diffstat(1) graph to the output.  These "
+"options can be combined with other options, such as `-p`, and are meant for "
+"human consumption."
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:59
+#: en/diff-format.txt:125
 msgid ""
-"Remove everything in body before a scissors line (see "
-"linkgit:git-mailinfo[1]). Can be activated by default using the "
-"`mailinfo.scissors` configuration variable."
+"When showing a change that involves a rename or a copy, `--stat` output "
+"formats the pathnames compactly by combining common prefix and suffix of the "
+"pathnames.  For example, a change that moves `arch/i386/Makefile` to `arch/"
+"x86/Makefile` while modifying 4 lines will be shown like this:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:60 en/git-mailinfo.txt:90
+#. type: delimited block -
+#: en/diff-format.txt:128
 #, no-wrap
-msgid "--no-scissors"
+msgid "arch/{i386 => x86}/Makefile    |   4 +--\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:62
-msgid "Ignore scissors lines (see linkgit:git-mailinfo[1])."
+#: en/diff-format.txt:133
+msgid ""
+"The `--numstat` option gives the diffstat(1) information but is designed for "
+"easier machine consumption.  An entry in `--numstat` output looks like this:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:63 en/git-branch.txt:107 en/git-checkout.txt:216 en/git-cvsexportcommit.txt:60 en/git-cvsimport.txt:118 en/git-diff-index.txt:32 en/git-diff-tree.txt:69 en/git-help.txt:56 en/git-instaweb.txt:35 en/git-ls-files.txt:43 en/git-mailinfo.txt:69 en/git-read-tree.txt:34 en/git-rebase.txt:270 en/git-svn.txt:292 en/git-svn.txt:637 en/git-symbolic-ref.txt:49 en/rev-list-options.txt:879
+#. type: delimited block -
+#: en/diff-format.txt:137
 #, no-wrap
-msgid "-m"
+msgid ""
+"1\t2\tREADME\n"
+"3\t1\tarch/{i386 => x86}/Makefile\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:64 en/git-mailinfo.txt:70
-#, no-wrap
-msgid "--message-id"
+#. type: Plain text
+#: en/diff-format.txt:140
+msgid "That is, from left to right:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:69
-msgid ""
-"Pass the `-m` flag to 'git mailinfo' (see linkgit:git-mailinfo[1]), so that "
-"the Message-ID header is added to the commit message.  The `am.messageid` "
-"configuration variable can be used to specify the default behaviour."
+#: en/diff-format.txt:142 en/diff-format.txt:158
+msgid "the number of added lines;"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:70
-#, no-wrap
-msgid "--no-message-id"
+#. type: Plain text
+#: en/diff-format.txt:143 en/diff-format.txt:145 en/diff-format.txt:159
+#: en/diff-format.txt:161
+msgid "a tab;"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:73
-msgid ""
-"Do not add the Message-ID header to the commit message.  `no-message-id` is "
-"useful to override `am.messageid`."
+#: en/diff-format.txt:144 en/diff-format.txt:160
+msgid "the number of deleted lines;"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:74 en/git-branch.txt:157 en/git-checkout-index.txt:30 en/git-checkout.txt:106 en/git-clean.txt:51 en/git-clone.txt:119 en/git-commit.txt:306 en/git-diff-files.txt:44 en/git-fetch-pack.txt:48 en/git-format-patch.txt:260 en/git-grep.txt:280 en/git-imap-send.txt:36 en/git-init.txt:43 en/git-ls-remote.txt:36 en/git-merge-file.txt:67 en/git-merge-index.txt:35 en/git-notes.txt:206 en/git-pack-objects.txt:158 en/git-prune-packed.txt:36 en/git-pull.txt:77 en/git-push.txt:258 en/git-rebase.txt:306 en/git-repack.txt:73 en/git-reset.txt:96 en/git-rev-parse.txt:113 en/git-rm.txt:66 en/git-show-ref.txt:70 en/git-submodule.txt:271 en/git-svn.txt:632 en/git-symbolic-ref.txt:39 en/git-unpack-objects.txt:34 en/git-update-index.txt:56 en/fetch-options.txt:159 en/merge-options.txt:104
-#, no-wrap
-msgid "-q"
+#. type: Plain text
+#: en/diff-format.txt:146
+msgid "pathname (possibly with rename/copy information);"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:75 en/git-branch.txt:158 en/git-checkout-index.txt:31 en/git-checkout.txt:107 en/git-clean.txt:52 en/git-clone.txt:118 en/git-commit.txt:307 en/git-fast-import.txt:42 en/git-fetch-pack.txt:49 en/git-format-patch.txt:261 en/git-gc.txt:74 en/git-grep.txt:281 en/git-imap-send.txt:37 en/git-init.txt:44 en/git-ls-remote.txt:37 en/git-notes.txt:207 en/git-prune-packed.txt:37 en/git-pull.txt:78 en/git-push.txt:259 en/git-rebase.txt:307 en/git-reset.txt:97 en/git-rev-parse.txt:114 en/git-rm.txt:67 en/git-send-email.txt:371 en/git-show-ref.txt:71 en/git-submodule.txt:272 en/git-svn.txt:633 en/git-symbolic-ref.txt:40 en/diff-options.txt:557 en/fetch-options.txt:160 en/merge-options.txt:105 en/rev-list-options.txt:201
-#, no-wrap
-msgid "--quiet"
+#. type: Plain text
+#: en/diff-format.txt:147
+msgid "a newline."
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:77
-msgid "Be quiet. Only print error messages."
+#: en/diff-format.txt:149
+msgid "When `-z` output option is in effect, the output is formatted this way:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:79
+#. type: delimited block -
+#: en/diff-format.txt:153
 #, no-wrap
-msgid "--utf8"
-msgstr ""
-
-#. type: Plain text
-#: en/git-am.txt:85
 msgid ""
-"Pass `-u` flag to 'git mailinfo' (see linkgit:git-mailinfo[1]).  The "
-"proposed commit log message taken from the e-mail is re-coded into UTF-8 "
-"encoding (configuration variable `i18n.commitencoding` can be used to "
-"specify project's preferred encoding if it is not UTF-8)."
+"1\t2\tREADME NUL\n"
+"3\t1\tNUL arch/i386/Makefile NUL arch/x86/Makefile NUL\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:88
-#, no-wrap
-msgid ""
-"This was optional in prior versions of git, but now it is the\n"
-"default.   You can use `--no-utf8` to override this.\n"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-am.txt:89
-#, no-wrap
-msgid "--no-utf8"
+#: en/diff-format.txt:156
+msgid "That is:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:92
-msgid "Pass `-n` flag to 'git mailinfo' (see linkgit:git-mailinfo[1])."
+#: en/diff-format.txt:162 en/diff-format.txt:164
+msgid "a NUL (only exists if renamed/copied);"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:93 en/git-apply.txt:77
-#, no-wrap
-msgid "-3"
+#. type: Plain text
+#: en/diff-format.txt:163
+msgid "pathname in preimage;"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:94 en/git-apply.txt:78
-#, no-wrap
-msgid "--3way"
+#. type: Plain text
+#: en/diff-format.txt:165
+msgid "pathname in postimage (only exists if renamed/copied);"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:95
-#, no-wrap
-msgid "--no-3way"
+#. type: Plain text
+#: en/diff-format.txt:166
+msgid "a NUL."
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:102
+#: en/diff-format.txt:171
 msgid ""
-"When the patch does not apply cleanly, fall back on 3-way merge if the patch "
-"records the identity of blobs it is supposed to apply to and we have those "
-"blobs available locally. `--no-3way` can be used to override am.threeWay "
-"configuration variable. For more information, see am.threeWay in "
-"linkgit:git-config[1]."
+"The extra `NUL` before the preimage path in renamed case is to allow scripts "
+"that read the output to tell if the current record being read is a single-"
+"path record or a rename/copy record without reading ahead.  After reading "
+"added and deleted lines, reading up to `NUL` would yield the pathname, but "
+"if that is `NUL`, the record will show two paths."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:103 en/git-apply.txt:172 en/diff-options.txt:526
+#. type: Title -
+#: en/diff-generate-patch.txt:2
 #, no-wrap
-msgid "--ignore-space-change"
+msgid "Generating patches with -p"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:104 en/git-apply.txt:173 en/git-rebase.txt:361
-#, no-wrap
-msgid "--ignore-whitespace"
+#. type: Plain text
+#: en/diff-generate-patch.txt:10
+msgid ""
+"When \"git-diff-index\", \"git-diff-tree\", or \"git-diff-files\" are run "
+"with a `-p` option, \"git diff\" without the `--raw` option, or \"git log\" "
+"with the \"-p\" option, they do not produce the output described above; "
+"instead they produce a patch file.  You can customize the creation of such "
+"patches via the `GIT_EXTERNAL_DIFF` and the `GIT_DIFF_OPTS` environment "
+"variables."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:105 en/git-rebase.txt:362
-#, no-wrap
-msgid "--whitespace=<option>"
+#. type: Plain text
+#: en/diff-generate-patch.txt:13
+msgid ""
+"What the -p option produces is slightly different from the traditional diff "
+"format:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:106 en/git-apply.txt:119 en/git-rebase.txt:329
-#, no-wrap
-msgid "-C<n>"
+#. type: Plain text
+#: en/diff-generate-patch.txt:15
+msgid "It is preceded with a \"git diff\" header that looks like this:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:107 en/git-apply.txt:115
+#. type: Plain text
+#: en/diff-generate-patch.txt:17
 #, no-wrap
-msgid "-p<n>"
+msgid "diff --git a/file1 b/file2\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:108
-#, no-wrap
-msgid "--directory=<dir>"
+#. type: Plain text
+#: en/diff-generate-patch.txt:21
+msgid ""
+"The `a/` and `b/` filenames are the same unless rename/copy is involved.  "
+"Especially, even for a creation or a deletion, `/dev/null` is _not_ used in "
+"place of the `a/` or `b/` filenames."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:109
-#, no-wrap
-msgid "--exclude=<path>"
+#. type: Plain text
+#: en/diff-generate-patch.txt:25
+msgid ""
+"When rename/copy is involved, `file1` and `file2` show the name of the "
+"source file of the rename/copy and the name of the file that rename/copy "
+"produces, respectively."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:110
-#, no-wrap
-msgid "--include=<path>"
+#. type: Plain text
+#: en/diff-generate-patch.txt:27
+msgid "It is followed by one or more extended header lines:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:111 en/git-apply.txt:100
+#. type: Plain text
+#: en/diff-generate-patch.txt:39
 #, no-wrap
-msgid "--reject"
+msgid ""
+"old mode <mode>\n"
+"new mode <mode>\n"
+"deleted file mode <mode>\n"
+"new file mode <mode>\n"
+"copy from <path>\n"
+"copy to <path>\n"
+"rename from <path>\n"
+"rename to <path>\n"
+"similarity index <number>\n"
+"dissimilarity index <number>\n"
+"index <hash>..<hash> <mode>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:115
+#: en/diff-generate-patch.txt:42
 msgid ""
-"These flags are passed to the 'git apply' (see linkgit:git-apply[1])  "
-"program that applies the patch."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-am.txt:116
-#, no-wrap
-msgid "--patch-format"
+"File modes are printed as 6-digit octal numbers including the file type and "
+"file permission bits."
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:122
+#: en/diff-generate-patch.txt:44
 msgid ""
-"By default the command will try to detect the patch format "
-"automatically. This option allows the user to bypass the automatic detection "
-"and specify the patch format that the patch(es) should be interpreted "
-"as. Valid formats are mbox, mboxrd, stgit, stgit-series and hg."
+"Path names in extended headers do not include the `a/` and `b/` prefixes."
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:126
-msgid "Run interactively."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-am.txt:127 en/git-rebase.txt:367
-#, no-wrap
-msgid "--committer-date-is-author-date"
+#: en/diff-generate-patch.txt:51
+msgid ""
+"The similarity index is the percentage of unchanged lines, and the "
+"dissimilarity index is the percentage of changed lines.  It is a rounded "
+"down integer, followed by a percent sign.  The similarity index value of "
+"100% is thus reserved for two equal files, while 100% dissimilarity means "
+"that no line from the old file made it into the new one."
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:133
+#: en/diff-generate-patch.txt:55
 msgid ""
-"By default the command records the date from the e-mail message as the "
-"commit author date, and uses the time of commit creation as the committer "
-"date. This allows the user to lie about the committer date by using the same "
-"value as the author date."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-am.txt:134 en/git-rebase.txt:368
-#, no-wrap
-msgid "--ignore-date"
+"The index line includes the SHA-1 checksum before and after the change.  The "
+"<mode> is included if the file mode does not change; otherwise, separate "
+"lines indicate the old and the new mode."
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:140
+#: en/diff-generate-patch.txt:59
 msgid ""
-"By default the command records the date from the e-mail message as the "
-"commit author date, and uses the time of commit creation as the committer "
-"date. This allows the user to lie about the author date by using the same "
-"value as the committer date."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-am.txt:141 en/git-rebase.txt:264
-#, no-wrap
-msgid "--skip"
+"Pathnames with \"unusual\" characters are quoted as explained for the "
+"configuration variable `core.quotePath` (see linkgit:git-config[1])."
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:144
+#: en/diff-generate-patch.txt:64
 msgid ""
-"Skip the current patch.  This is only meaningful when restarting an aborted "
-"patch."
+"All the `file1` files in the output refer to files before the commit, and "
+"all the `file2` files refer to files after the commit.  It is incorrect to "
+"apply each change to each file sequentially.  For example, this patch will "
+"swap a and b:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:145 en/git-cherry-pick.txt:105 en/git-commit.txt:326 en/git-commit-tree.txt:57 en/git-merge.txt:72 en/git-rebase.txt:300 en/git-revert.txt:83
+#. type: Plain text
+#: en/diff-generate-patch.txt:71
 #, no-wrap
-msgid "-S[<keyid>]"
+msgid ""
+"diff --git a/a b/b\n"
+"rename from a\n"
+"rename to b\n"
+"diff --git a/b b/a\n"
+"rename from b\n"
+"rename to a\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:146 en/git-cherry-pick.txt:106 en/git-commit.txt:327 en/git-commit-tree.txt:58 en/git-merge.txt:73 en/git-rebase.txt:301 en/git-revert.txt:84
+#. type: Title -
+#: en/diff-generate-patch.txt:74
 #, no-wrap
-msgid "--gpg-sign[=<keyid>]"
+msgid "combined diff format"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:150 en/git-cherry-pick.txt:110 en/git-commit.txt:331 en/git-commit-tree.txt:62 en/git-rebase.txt:305 en/git-revert.txt:88
+#: en/diff-generate-patch.txt:82
 msgid ""
-"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."
+"Any diff-generating command can take the `-c` or `--cc` option to produce a "
+"'combined diff' when showing a merge. This is the default format when "
+"showing merges with linkgit:git-diff[1] or linkgit:git-show[1]. Note also "
+"that you can give the `-m` option to any of these commands to force "
+"generation of diffs with individual parents of a merge."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:151 en/git-merge.txt:105 en/git-rebase.txt:245 en/sequencer.txt:1
-#, no-wrap
-msgid "--continue"
+#. type: Plain text
+#: en/diff-generate-patch.txt:84
+msgid "A 'combined diff' format looks like this:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:152 en/git-branch.txt:136 en/git-cherry-pick.txt:74 en/git-diff-tree.txt:39 en/git-ls-tree.txt:44 en/git-pull.txt:103 en/git-rm.txt:49 en/git-show-branch.txt:43 en/git-unpack-objects.txt:38 en/rev-list-options.txt:887
+#. type: delimited block -
+#: en/diff-generate-patch.txt:93
 #, no-wrap
-msgid "-r"
+msgid ""
+"diff --combined describe.c\n"
+"index fabadb8,cc95eb0..4866510\n"
+"--- a/describe.c\n"
+"+++ b/describe.c\n"
+"@@@ -98,20 -98,12 +98,20 @@@\n"
+"\treturn (a_date > b_date) ? -1 : (a_date == b_date) ? 0 : 1;\n"
+"  }\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:153
+#. type: delimited block -
+#: en/diff-generate-patch.txt:103
 #, no-wrap
-msgid "--resolved"
-msgstr ""
-
-#. type: Plain text
-#: en/git-am.txt:160
 msgid ""
-"After a patch failure (e.g. attempting to apply conflicting patch), the user "
-"has applied it by hand and the index file stores the result of the "
-"application.  Make a commit using the authorship and commit log extracted "
-"from the e-mail message and the current index file, and continue."
+"- static void describe(char *arg)\n"
+" -static void describe(struct commit *cmit, int last_one)\n"
+"++static void describe(char *arg, int last_one)\n"
+"  {\n"
+" +\tunsigned char sha1[20];\n"
+" +\tstruct commit *cmit;\n"
+"\tstruct commit_list *list;\n"
+"\tstatic int initialized = 0;\n"
+"\tstruct commit_name *n;\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:161
+#. type: delimited block -
+#: en/diff-generate-patch.txt:113
 #, no-wrap
-msgid "--resolvemsg=<msg>"
+msgid ""
+" +\tif (get_sha1(arg, sha1) < 0)\n"
+" +\t\tusage(describe_usage);\n"
+" +\tcmit = lookup_commit_reference(sha1);\n"
+" +\tif (!cmit)\n"
+" +\t\tusage(describe_usage);\n"
+" +\n"
+"\tif (!initialized) {\n"
+"\t\tinitialized = 1;\n"
+"\t\tfor_each_ref(get_name);\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:167
+#: en/diff-generate-patch.txt:117
 msgid ""
-"When a patch failure occurs, <msg> will be printed to the screen before "
-"exiting.  This overrides the standard message informing you to use "
-"`--continue` or `--skip` to handle the failure.  This is solely for internal "
-"use between 'git rebase' and 'git am'."
+"It is preceded with a \"git diff\" header, that looks like this (when `-c` "
+"option is used):"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-am.txt:168 en/git-merge.txt:93 en/git-notes.txt:201 en/git-rebase.txt:248 en/sequencer.txt:11
+#. type: Plain text
+#: en/diff-generate-patch.txt:119
 #, no-wrap
-msgid "--abort"
+msgid "diff --combined file\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:170
-msgid "Restore the original branch and abort the patching operation."
+#: en/diff-generate-patch.txt:121
+msgid "or like this (when `--cc` option is used):"
 msgstr ""
 
-#. type: Title -
-#: en/git-am.txt:172 en/git-commit.txt:444 en/git-format-patch.txt:308 en/git-fsck.txt:100 en/git-log.txt:165 en/git-merge-base.txt:76 en/git-notes.txt:218 en/git-remote.txt:196 en/git-rerere.txt:77 en/git-reset.txt:345 en/git-rm.txt:73 en/git-stash.txt:183 en/git-tag.txt:195
+#. type: Plain text
+#: en/diff-generate-patch.txt:123
 #, no-wrap
-msgid "DISCUSSION"
+msgid "       diff --cc file\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:180
+#: en/diff-generate-patch.txt:126
 msgid ""
-"The commit author name is taken from the \"From: \" line of the message, and "
-"commit author date is taken from the \"Date: \" line of the message.  The "
-"\"Subject: \" line is used as the title of the commit, after stripping "
-"common prefix \"[PATCH <anything>]\".  The \"Subject: \" line is supposed to "
-"concisely describe what the commit is about in one line of text."
+"It is followed by one or more extended header lines (this example shows a "
+"merge with two parents):"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:183
+#: en/diff-generate-patch.txt:131
+#, no-wrap
 msgid ""
-"\"From: \" and \"Subject: \" lines starting the body override the respective "
-"commit author name and title values taken from the headers."
+"index <hash>,<hash>..<hash>\n"
+"mode <mode>,<mode>..<mode>\n"
+"new file mode <mode>\n"
+"deleted file mode <mode>,<mode>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:188
+#: en/diff-generate-patch.txt:137
 msgid ""
-"The commit message is formed by the title taken from the \"Subject: \", a "
-"blank line and the body of the message up to where the patch begins.  Excess "
-"whitespace at the end of each line is automatically stripped."
+"The `mode <mode>,<mode>..<mode>` line appears only if at least one of the "
+"<mode> is different from the rest. Extended headers with information about "
+"detected contents movement (renames and copying detection) are designed to "
+"work with diff of two <tree-ish> and are not used by combined diff format."
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:191
-msgid ""
-"The patch is expected to be inline, directly following the message.  Any "
-"line that is of the form:"
+#: en/diff-generate-patch.txt:139
+msgid "It is followed by two-line from-file/to-file header"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:193
-msgid "three-dashes and end-of-line, or"
+#: en/diff-generate-patch.txt:141
+msgid "a/file"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:194
-msgid "a line that begins with \"diff -\", or"
+#: en/diff-generate-patch.txt:142
+msgid "b/file"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:195
-msgid "a line that begins with \"Index: \""
+#: en/diff-generate-patch.txt:146
+msgid ""
+"Similar to two-line header for traditional 'unified' diff format, `/dev/"
+"null` is used to signal created or deleted files."
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:198
+#: en/diff-generate-patch.txt:152
 msgid ""
-"is taken as the beginning of a patch, and the commit log message is "
-"terminated before the first occurrence of such a line."
+"Chunk header format is modified to prevent people from accidentally feeding "
+"it to `patch -p1`. Combined diff format was created for review of merge "
+"commit changes, and was not meant for apply. The change is similar to the "
+"change in the extended 'index' header:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:202
+#: en/diff-generate-patch.txt:154
+#, no-wrap
+msgid "@@@ <from-file-range> <from-file-range> <to-file-range> @@@\n"
+msgstr ""
+
+#. type: Plain text
+#: en/diff-generate-patch.txt:157
 msgid ""
-"When initially invoking `git am`, you give it the names of the mailboxes to "
-"process.  Upon seeing the first patch that does not apply, it aborts in the "
-"middle.  You can recover from this in one of two ways:"
+"There are (number of parents + 1) `@` characters in the chunk header for "
+"combined diff format."
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:205
-msgid "skip the current patch by re-running the command with the `--skip` option."
+#: en/diff-generate-patch.txt:166
+msgid ""
+"Unlike the traditional 'unified' diff format, which shows two files A and B "
+"with a single column that has `-` (minus -- appears in A but removed in B), `"
+"+` (plus -- missing in A but added to B), or `\" \"` (space -- unchanged) "
+"prefix, this format compares two or more files file1, file2,... with one "
+"file X, and shows how X differs from each of fileN.  One column for each of "
+"fileN is prepended to the output line to note how X's line is different from "
+"it."
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:209
+#: en/diff-generate-patch.txt:172
 msgid ""
-"hand resolve the conflict in the working directory, and update the index "
-"file to bring it into a state that the patch should have produced.  Then run "
-"the command with the `--continue` option."
+"A `-` character in the column N means that the line appears in fileN but it "
+"does not appear in the result.  A `+` character in the column N means that "
+"the line appears in the result, and fileN does not have that line (in other "
+"words, the line was added, from the point of view of that parent)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:214
+#: en/diff-generate-patch.txt:178
 msgid ""
-"The command refuses to process new mailboxes until the current operation is "
-"finished, so if you decide to start over from scratch, run `git am --abort` "
-"before running the command with mailbox names."
+"In the above example output, the function signature was changed from both "
+"files (hence two `-` removals from both file1 and file2, plus `++` to mean "
+"one line that was added does not appear in either file1 or file2).  Also "
+"eight other lines are the same from file1 but do not appear in file2 (hence "
+"prefixed with `+`)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:220
+#: en/diff-generate-patch.txt:184
 msgid ""
-"Before any patches are applied, ORIG_HEAD is set to the tip of the current "
-"branch.  This is useful if you have problems with multiple commits, like "
-"running 'git am' on the wrong branch or an error in the commits that is more "
-"easily fixed by changing the mailbox (e.g.  errors in the \"From:\" lines)."
+"When shown by `git diff-tree -c`, it compares the parents of a merge commit "
+"with the merge result (i.e. file1..fileN are the parents).  When shown by "
+"`git diff-files -c`, it compares the two unresolved merge parents with the "
+"working tree file (i.e. file1 is stage 2 aka \"our version\", file2 is stage "
+"3 aka \"their version\")."
 msgstr ""
 
-#. type: Title -
-#: en/git-am.txt:222 en/git-commit.txt:464 en/git-gc.txt:171
+#. type: Labeled list
+#: en/diff-options.txt:17 en/git-rebase.txt:322 en/merge-options.txt:74
 #, no-wrap
-msgid "HOOKS"
+msgid "--no-stat"
 msgstr ""
 
 #. type: Plain text
-#: en/git-am.txt:226
-msgid ""
-"This command can run `applypatch-msg`, `pre-applypatch`, and "
-"`post-applypatch` hooks.  See linkgit:githooks[5] for more information."
+#: en/diff-options.txt:19
+msgid "Generate plain patches without any diffstats."
 msgstr ""
 
-#. type: Plain text
-#: en/git-am.txt:230
-msgid "linkgit:git-apply[1]."
+#. type: Labeled list
+#: en/diff-options.txt:23 en/fetch-options.txt:182 en/git-add.txt:111
+#: en/git-am.txt:77 en/git-checkout-index.txt:25 en/git-cvsexportcommit.txt:64
+#: en/git-cvsimport.txt:98 en/git-ls-files.txt:70 en/git-mailinfo.txt:52
+#: en/git-push.txt:348 en/git-read-tree.txt:44
+#, no-wrap
+msgid "-u"
 msgstr ""
 
-#. type: Title =
-#: en/git-annotate.txt:2
+#. type: Labeled list
+#: en/diff-options.txt:24 en/git-add.txt:89 en/git-checkout.txt:254
+#: en/git-commit.txt:71
 #, no-wrap
-msgid "git-annotate(1)"
+msgid "--patch"
 msgstr ""
 
 #. type: Plain text
-#: en/git-annotate.txt:7
-msgid "git-annotate - Annotate file lines with commit information"
+#: en/diff-options.txt:26
+msgid "Generate patch (see section on generating patches)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-annotate.txt:12
+#: en/diff-options.txt:28 en/diff-options.txt:50
+#, no-wrap
+msgid "\tThis is the default.\n"
+msgstr ""
+
+#. type: Labeled list
+#: en/diff-options.txt:30 en/git-am.txt:34 en/git-blame.txt:74
+#: en/git-cat-file.txt:40 en/git-cherry-pick.txt:100 en/git-clone.txt:66
+#: en/git-commit.txt:165 en/git-diff-tree.txt:72 en/git-format-patch.txt:116
+#: en/git-ls-files.txt:59 en/git-revert.txt:89 en/git-shortlog.txt:34
+#: en/git-show-ref.txt:53 en/git-status.txt:27 en/git-stripspace.txt:38
+#: en/git-svn.txt:46 en/git-tag.txt:64 en/git-verify-pack.txt:31
 #, no-wrap
-msgid "'git annotate' [options] file [revision]\n"
+msgid "-s"
 msgstr ""
 
-#. type: Plain text
-#: en/git-annotate.txt:17
-msgid ""
-"Annotates each line in the given file with information from the commit which "
-"introduced the line. Optionally annotates from a given revision."
+#. type: Labeled list
+#: en/diff-options.txt:31
+#, no-wrap
+msgid "--no-patch"
 msgstr ""
 
 #. type: Plain text
-#: en/git-annotate.txt:22
+#: en/diff-options.txt:34
 msgid ""
-"The only difference between this command and linkgit:git-blame[1] is that "
-"they use slightly different output formats, and this command exists only for "
-"backward compatibility to support existing scripts, and provide a more "
-"familiar command name for people coming from other SCM systems."
+"Suppress diff output. Useful for commands like `git show` that show the "
+"patch by default, or to cancel the effect of `--patch`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-annotate.txt:31 en/cmds-ancillaryinterrogators.txt:4
+#: en/diff-options.txt:36
 #, no-wrap
-msgid "linkgit:git-blame[1]"
+msgid "-U<n>"
 msgstr ""
 
-#. type: Title =
-#: en/git-apply.txt:2
+#. type: Labeled list
+#: en/diff-options.txt:37
 #, no-wrap
-msgid "git-apply(1)"
+msgid "--unified=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:7
-msgid "git-apply - Apply a patch to files and/or to the index"
+#: en/diff-options.txt:40
+msgid "Generate diffs with <n> lines of context instead of the usual three."
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:20
+#: en/diff-options.txt:42
 #, no-wrap
-msgid ""
-"'git apply' [--stat] [--numstat] [--summary] [--check] [--index] [--3way]\n"
-"\t  [--apply] [--no-add] [--build-fake-ancestor=<file>] [-R | --reverse]\n"
-"\t  [--allow-binary-replacement | --binary] [--reject] [-z]\n"
-"\t  [-p<n>] [-C<n>] [--inaccurate-eof] [--recount] [--cached]\n"
-"\t  [--ignore-space-change | --ignore-whitespace]\n"
-"\t  [--whitespace=(nowarn|warn|fix|error|error-all)]\n"
-"\t  [--exclude=<path>] [--include=<path>] [--directory=<root>]\n"
-"\t  [--verbose] [--unsafe-paths] [<patch>...]\n"
+msgid "\tImplies `-p`.\n"
+msgstr ""
+
+#. type: Labeled list
+#: en/diff-options.txt:45 en/git-replace.txt:78 en/git-verify-commit.txt:19
+#: en/git-verify-tag.txt:19
+#, no-wrap
+msgid "--raw"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:30
-msgid ""
-"Reads the supplied diff output (i.e. \"a patch\") and applies it to files.  "
-"When running from a subdirectory in a repository, patched paths outside the "
-"directory are ignored.  With the `--index` option the patch is also applied "
-"to the index, and with the `--cached` option the patch is only applied to "
-"the index.  Without these options, the command applies the patch only to "
-"files, and does not require them to be in a Git repository."
+#: en/diff-options.txt:48
+#, no-wrap
+msgid "\tGenerate the diff in raw format.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:34
+#: en/diff-options.txt:58
+#, no-wrap
 msgid ""
-"This command applies the patch but does not create a commit.  Use "
-"linkgit:git-am[1] to create commits from patches generated by "
-"linkgit:git-format-patch[1] and/or received by email."
+"\tFor each commit, show a summary of changes using the raw diff\n"
+"\tformat. See the \"RAW OUTPUT FORMAT\" section of\n"
+"\tlinkgit:git-diff[1]. This is different from showing the log\n"
+"\titself in raw format, which you can achieve with\n"
+"\t`--format=raw`.\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:37
+#: en/diff-options.txt:62
 #, no-wrap
-msgid "<patch>..."
+msgid "--patch-with-raw"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:40
-msgid ""
-"The files to read the patch from.  '-' can be used to read from the standard "
-"input."
+#: en/diff-options.txt:64
+msgid "Synonym for `-p --raw`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:41 en/git-rebase.txt:314 en/merge-options.txt:55
+#: en/diff-options.txt:66
 #, no-wrap
-msgid "--stat"
+msgid "--indent-heuristic"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:44
+#: en/diff-options.txt:69
 msgid ""
-"Instead of applying the patch, output diffstat for the input.  Turns off "
-"\"apply\"."
+"Enable the heuristic that shifts diff hunk boundaries to make patches easier "
+"to read. This is the default."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:45 en/diff-options.txt:116
+#: en/diff-options.txt:70
 #, no-wrap
-msgid "--numstat"
+msgid "--no-indent-heuristic"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:51
-msgid ""
-"Similar to `--stat`, but shows the number of added and deleted lines in "
-"decimal notation and the pathname without abbreviation, to make it more "
-"machine friendly.  For binary files, outputs two `-` instead of saying `0 "
-"0`.  Turns off \"apply\"."
+#: en/diff-options.txt:72
+msgid "Disable the indent heuristic."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:52 en/git-shortlog.txt:35 en/diff-options.txt:172 en/merge-options.txt:98
+#: en/diff-options.txt:73
 #, no-wrap
-msgid "--summary"
+msgid "--minimal"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:57
-msgid ""
-"Instead of applying the patch, output a condensed summary of information "
-"obtained from git diff extended headers, such as creations, renames and mode "
-"changes.  Turns off \"apply\"."
+#: en/diff-options.txt:76 en/diff-options.txt:102
+msgid "Spend extra time to make sure the smallest possible diff is produced."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:58 en/diff-options.txt:292
+#: en/diff-options.txt:77
 #, no-wrap
-msgid "--check"
+msgid "--patience"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:62
-msgid ""
-"Instead of applying the patch, see if the patch is applicable to the current "
-"working tree and/or the index file and detects errors.  Turns off \"apply\"."
+#: en/diff-options.txt:79
+msgid "Generate a diff using the \"patience diff\" algorithm."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:63 en/git-checkout-index.txt:26
+#: en/diff-options.txt:80
 #, no-wrap
-msgid "--index"
+msgid "--histogram"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:71
-msgid ""
-"When `--check` is in effect, or when applying the patch (which is the "
-"default when none of the options that disables it is in effect), make sure "
-"the patch is applicable to what the current index file records.  If the file "
-"to be patched in the working tree is not up-to-date, it is flagged as an "
-"error.  This flag also causes the index file to be updated."
+#: en/diff-options.txt:82
+msgid "Generate a diff using the \"histogram diff\" algorithm."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:72 en/git-check-attr.txt:27 en/git-diff-index.txt:29 en/git-grep.txt:72 en/git-ls-files.txt:36 en/git-rm.txt:58 en/git-submodule.txt:300
+#: en/diff-options.txt:83
 #, no-wrap
-msgid "--cached"
+msgid "--anchored=<text>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:76
-msgid ""
-"Apply a patch without touching the working tree. Instead take the cached "
-"data, apply the patch, and store the result in the index without using the "
-"working tree. This implies `--index`."
+#: en/diff-options.txt:85
+msgid "Generate a diff using the \"anchored diff\" algorithm."
+msgstr ""
+
+#. type: Plain text
+#: en/diff-options.txt:87
+msgid "This option may be specified more than once."
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:85
+#: en/diff-options.txt:92
 msgid ""
-"When the patch does not apply cleanly, fall back on 3-way merge if the patch "
-"records the identity of blobs it is supposed to apply to, and we have those "
-"blobs available locally, possibly leaving the conflict markers in the files "
-"in the working tree for the user to resolve.  This option implies the "
-"`--index` option, and is incompatible with the `--reject` and the `--cached` "
-"options."
+"If a line exists in both the source and destination, exists only once, and "
+"starts with this text, this algorithm attempts to prevent it from appearing "
+"as a deletion or addition in the output. It uses the \"patience diff\" "
+"algorithm internally."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:86
+#: en/diff-options.txt:93
 #, no-wrap
-msgid "--build-fake-ancestor=<file>"
+msgid "--diff-algorithm={patience|minimal|histogram|myers}"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:92
-msgid ""
-"Newer 'git diff' output has embedded 'index information' for each blob to "
-"help identify the original version that the patch applies to.  When this "
-"flag is given, and if the original versions of the blobs are available "
-"locally, builds a temporary index containing those blobs."
+#: en/diff-options.txt:95
+msgid "Choose a diff algorithm. The variants are as follows:"
+msgstr ""
+
+#. type: Labeled list
+#: en/diff-options.txt:97
+#, no-wrap
+msgid "`default`, `myers`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:95
-msgid ""
-"When a pure mode change is encountered (which has no index information), the "
-"information is read from the current index instead."
+#: en/diff-options.txt:99
+msgid "The basic greedy diff algorithm. Currently, this is the default."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:96 en/git-cvsimport.txt:168 en/diff-options.txt:505
+#: en/diff-options.txt:99
 #, no-wrap
-msgid "-R"
+msgid "`minimal`"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:97 en/rev-list-options.txt:659
+#: en/diff-options.txt:102
 #, no-wrap
-msgid "--reverse"
-msgstr ""
-
-#. type: Plain text
-#: en/git-apply.txt:99
-msgid "Apply the patch in reverse."
+msgid "`patience`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:106
-msgid ""
-"For atomicity, 'git apply' by default fails the whole patch and does not "
-"touch the working tree when some of the hunks do not apply.  This option "
-"makes it apply the parts of the patch that are applicable, and leave the "
-"rejected hunks in corresponding *.rej files."
+#: en/diff-options.txt:104
+msgid "Use \"patience diff\" algorithm when generating patches."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:107 en/git-check-attr.txt:34 en/git-check-ignore.txt:41 en/git-checkout-index.txt:67 en/git-commit.txt:118 en/git-config.txt:183 en/git-grep.txt:196 en/git-ls-files.txt:79 en/git-ls-tree.txt:55 en/git-mktree.txt:23 en/git-status.txt:100 en/git-update-index.txt:160 en/diff-options.txt:183
+#: en/diff-options.txt:104
 #, no-wrap
-msgid "-z"
+msgid "`histogram`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:110
+#: en/diff-options.txt:107
 msgid ""
-"When `--numstat` has been given, do not munge pathnames, but use a "
-"NUL-terminated machine-readable format."
+"This algorithm extends the patience algorithm to \"support low-occurrence "
+"common elements\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:114 en/diff-options.txt:198
+#: en/diff-options.txt:112
 msgid ""
-"Without this option, pathnames with \"unusual\" characters are quoted as "
-"explained for the configuration variable `core.quotePath` (see "
-"linkgit:git-config[1])."
+"For instance, if you configured the `diff.algorithm` variable to a non-"
+"default value and want to use the default one, then you have to use `--diff-"
+"algorithm=default` option."
+msgstr ""
+
+#. type: Labeled list
+#: en/diff-options.txt:113
+#, no-wrap
+msgid "--stat[=<width>[,<name-width>[,<count>]]]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:118
-msgid "Remove <n> leading slashes from traditional diff paths. The default is 1."
+#: en/diff-options.txt:127
+msgid ""
+"Generate a diffstat. By default, as much space as necessary will be used for "
+"the filename part, and the rest for the graph part. Maximum width defaults "
+"to terminal width, or 80 columns if not connected to a terminal, and can be "
+"overridden by `<width>`. The width of the filename part can be limited by "
+"giving another width `<name-width>` after a comma. The width of the graph "
+"part can be limited by using `--stat-graph-width=<width>` (affects all "
+"commands generating a stat graph) or by setting `diff."
+"statGraphWidth=<width>` (does not affect `git format-patch`).  By giving a "
+"third parameter `<count>`, you can limit the output to the first `<count>` "
+"lines, followed by `...` if there are more."
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:124 en/git-rebase.txt:334
+#: en/diff-options.txt:130
 msgid ""
-"Ensure at least <n> lines of surrounding context match before and after each "
-"change.  When fewer lines of surrounding context exist they all must match.  "
-"By default no context is ever ignored."
+"These parameters can also be set individually with `--stat-width=<width>`, "
+"`--stat-name-width=<name-width>` and `--stat-count=<count>`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:125
+#: en/diff-options.txt:131
 #, no-wrap
-msgid "--unidiff-zero"
+msgid "--compact-summary"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:131
+#: en/diff-options.txt:138
 msgid ""
-"By default, 'git apply' expects that the patch being applied is a unified "
-"diff with at least one line of context.  This provides good safety measures, "
-"but breaks down when applying a diff generated with `--unified=0`. To bypass "
-"these checks use `--unidiff-zero`."
+"Output a condensed summary of extended header information such as file "
+"creations or deletions (\"new\" or \"gone\", optionally \"+l\" if it's a "
+"symlink) and mode changes (\"+x\" or \"-x\" for adding or removing "
+"executable bit respectively) in diffstat. The information is put between the "
+"filename part and the graph part. Implies `--stat`."
+msgstr ""
+
+#. type: Labeled list
+#: en/diff-options.txt:139 en/git-apply.txt:45
+#, no-wrap
+msgid "--numstat"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:134
+#: en/diff-options.txt:145
 msgid ""
-"Note, for the reasons stated above usage of context-free patches is "
-"discouraged."
+"Similar to `--stat`, but shows number of added and deleted lines in decimal "
+"notation and pathname without abbreviation, to make it more machine "
+"friendly.  For binary files, outputs two `-` instead of saying `0 0`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:135
+#: en/diff-options.txt:146
 #, no-wrap
-msgid "--apply"
+msgid "--shortstat"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:141
+#: en/diff-options.txt:150
 msgid ""
-"If you use any of the options marked \"Turns off 'apply'\" above, 'git "
-"apply' reads and outputs the requested information without actually applying "
-"the patch.  Give this flag after those flags to also apply the patch."
+"Output only the last line of the `--stat` format containing total number of "
+"modified files, as well as number of added and deleted lines."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:142
+#: en/diff-options.txt:151
 #, no-wrap
-msgid "--no-add"
+msgid "--dirstat[=<param1,param2,...>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:148
+#: en/diff-options.txt:158
 msgid ""
-"When applying a patch, ignore additions made by the patch.  This can be used "
-"to extract the common part between two files by first running 'diff' on them "
-"and applying the result with this option, which would apply the deletion "
-"part but not the addition part."
+"Output the distribution of relative amount of changes for each sub-"
+"directory. The behavior of `--dirstat` can be customized by passing it a "
+"comma separated list of parameters.  The defaults are controlled by the "
+"`diff.dirstat` configuration variable (see linkgit:git-config[1]).  The "
+"following parameters are available:"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:149
+#: en/diff-options.txt:160
 #, no-wrap
-msgid "--allow-binary-replacement"
+msgid "`changes`"
+msgstr ""
+
+#. type: Plain text
+#: en/diff-options.txt:166
+msgid ""
+"Compute the dirstat numbers by counting the lines that have been removed "
+"from the source, or added to the destination. This ignores the amount of "
+"pure code movements within a file.  In other words, rearranging lines in a "
+"file is not counted as much as other changes.  This is the default behavior "
+"when no parameter is given."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:150 en/diff-options.txt:320
+#: en/diff-options.txt:166
 #, no-wrap
-msgid "--binary"
+msgid "`lines`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:155
+#: en/diff-options.txt:174
 msgid ""
-"Historically we did not allow binary patch applied without an explicit "
-"permission from the user, and this flag was the way to do so.  Currently we "
-"always allow binary patch application, so this is a no-op."
+"Compute the dirstat numbers by doing the regular line-based diff analysis, "
+"and summing the removed/added line counts. (For binary files, count 64-byte "
+"chunks instead, since binary files have no natural concept of lines). This "
+"is a more expensive `--dirstat` behavior than the `changes` behavior, but it "
+"does count rearranged lines within a file as much as other changes. The "
+"resulting output is consistent with what you get from the other `--*stat` "
+"options."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:156
+#: en/diff-options.txt:174
 #, no-wrap
-msgid "--exclude=<path-pattern>"
+msgid "`files`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:160
+#: en/diff-options.txt:179
 msgid ""
-"Don't apply changes to files matching the given path pattern. This can be "
-"useful when importing patchsets, where you want to exclude certain files or "
-"directories."
+"Compute the dirstat numbers by counting the number of files changed.  Each "
+"changed file counts equally in the dirstat analysis. This is the "
+"computationally cheapest `--dirstat` behavior, since it does not have to "
+"look at the file contents at all."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:161
+#: en/diff-options.txt:179
 #, no-wrap
-msgid "--include=<path-pattern>"
+msgid "`cumulative`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:165
+#: en/diff-options.txt:184
 msgid ""
-"Apply changes to files matching the given path pattern. This can be useful "
-"when importing patchsets, where you want to include certain files or "
-"directories."
+"Count changes in a child directory for the parent directory as well.  Note "
+"that when using `cumulative`, the sum of the percentages reported may exceed "
+"100%. The default (non-cumulative) behavior can be specified with the "
+"`noncumulative` parameter."
+msgstr ""
+
+#. type: Labeled list
+#: en/diff-options.txt:184 en/git-cherry.txt:39
+#, no-wrap
+msgid "<limit>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:171
+#: en/diff-options.txt:188
 msgid ""
-"When `--exclude` and `--include` patterns are used, they are examined in the "
-"order they appear on the command line, and the first match determines if a "
-"patch to each path is used.  A patch to a path that does not match any "
-"include/exclude pattern is used by default if there is no include pattern on "
-"the command line, and ignored if there is any include pattern."
+"An integer parameter specifies a cut-off percent (3% by default).  "
+"Directories contributing less than this percentage of the changes are not "
+"shown in the output."
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:179
+#: en/diff-options.txt:194
 msgid ""
-"When applying a patch, ignore changes in whitespace in context lines if "
-"necessary.  Context lines will preserve their whitespace, and they will not "
-"undergo whitespace fixing regardless of the value of the `--whitespace` "
-"option. New lines will still be fixed, though."
+"Example: The following will count changed files, while ignoring directories "
+"with less than 10% of the total amount of changed files, and accumulating "
+"child directory counts in the parent directories: `--dirstat=files,10,"
+"cumulative`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:180
+#: en/diff-options.txt:195 en/git-apply.txt:52 en/git-shortlog.txt:35
+#: en/merge-options.txt:115
 #, no-wrap
-msgid "--whitespace=<action>"
+msgid "--summary"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:188
+#: en/diff-options.txt:198
 msgid ""
-"When applying a patch, detect a new or modified line that has whitespace "
-"errors.  What are considered whitespace errors is controlled by "
-"`core.whitespace` configuration.  By default, trailing whitespaces "
-"(including lines that solely consist of whitespaces) and a space character "
-"that is immediately followed by a tab character inside the initial indent of "
-"the line are considered whitespace errors."
+"Output a condensed summary of extended header information such as creations, "
+"renames and mode changes."
 msgstr ""
 
-#. type: Plain text
-#: en/git-apply.txt:192
-msgid ""
-"By default, the command outputs warning messages but applies the patch.  "
-"When `git-apply` is used for statistics and not applying a patch, it "
-"defaults to `nowarn`."
+#. type: Labeled list
+#: en/diff-options.txt:200
+#, no-wrap
+msgid "--patch-with-stat"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:195
-msgid "You can use different `<action>` values to control this behavior:"
+#: en/diff-options.txt:202
+msgid "Synonym for `-p --stat`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-apply.txt:197
-msgid "`nowarn` turns off the trailing whitespace warning."
+#. type: Labeled list
+#: en/diff-options.txt:206 en/git-apply.txt:115 en/git-check-attr.txt:34
+#: en/git-check-ignore.txt:41 en/git-checkout-index.txt:67
+#: en/git-commit.txt:122 en/git-config.txt:206 en/git-grep.txt:206
+#: en/git-ls-files.txt:80 en/git-ls-tree.txt:55 en/git-mktree.txt:23
+#: en/git-status.txt:122 en/git-update-index.txt:168
+#, no-wrap
+msgid "-z"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:199
-msgid ""
-"`warn` outputs warnings for a few such errors, but applies the patch as-is "
-"(default)."
+#: en/diff-options.txt:209
+#, no-wrap
+msgid "\tSeparate the commits with NULs instead of with new newlines.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:203
+#: en/diff-options.txt:212
 msgid ""
-"`fix` outputs warnings for a few such errors, and applies the patch after "
-"fixing them (`strip` is a synonym --- the tool used to consider only "
-"trailing whitespace characters as errors, and the fix involved 'stripping' "
-"them, but modern Gits do more)."
+"Also, when `--raw` or `--numstat` has been given, do not munge pathnames and "
+"use NULs as output field terminators."
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:205
+#: en/diff-options.txt:216
+#, no-wrap
 msgid ""
-"`error` outputs warnings for a few such errors, and refuses to apply the "
-"patch."
+"\tWhen `--raw`, `--numstat`, `--name-only` or `--name-status` has been\n"
+"\tgiven, do not munge pathnames and use NULs as output field terminators.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:206
-msgid "`error-all` is similar to `error` but shows all errors."
+#: en/diff-options.txt:221 en/git-apply.txt:122
+msgid ""
+"Without this option, pathnames with \"unusual\" characters are quoted as "
+"explained for the configuration variable `core.quotePath` (see linkgit:git-"
+"config[1])."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:207
+#: en/diff-options.txt:222 en/git-config.txt:215 en/git-grep.txt:188
+#: en/git-ls-tree.txt:59 en/git-name-rev.txt:51
 #, no-wrap
-msgid "--inaccurate-eof"
-msgstr ""
-
-#. type: Plain text
-#: en/git-apply.txt:213
-msgid ""
-"Under certain circumstances, some versions of 'diff' do not correctly detect "
-"a missing new-line at the end of the file. As a result, patches created by "
-"such 'diff' programs do not record incomplete lines correctly. This option "
-"adds support for applying such patches by working around this bug."
+msgid "--name-only"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:219
-msgid ""
-"Report progress to stderr. By default, only a message about the current "
-"patch being applied will be printed. This option will cause additional "
-"information to be reported."
+#: en/diff-options.txt:224
+msgid "Show only names of changed files."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:220
+#: en/diff-options.txt:225 en/git-ls-tree.txt:60
 #, no-wrap
-msgid "--recount"
+msgid "--name-status"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:224
+#: en/diff-options.txt:228
 msgid ""
-"Do not trust the line counts in the hunk headers, but infer them by "
-"inspecting the patch (e.g. after editing the patch without adjusting the "
-"hunk headers appropriately)."
+"Show only names and status of changed files. See the description of the `--"
+"diff-filter` option on what the status letters mean."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:225
+#: en/diff-options.txt:229
 #, no-wrap
-msgid "--directory=<root>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-apply.txt:228
-msgid ""
-"Prepend <root> to all filenames.  If a \"-p\" argument was also passed, it "
-"is applied before prepending the new root."
+msgid "--submodule[=<format>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:232
+#: en/diff-options.txt:240
 msgid ""
-"For example, a patch that talks about updating `a/git-gui.sh` to "
-"`b/git-gui.sh` can be applied to the file in the working tree "
-"`modules/git-gui/git-gui.sh` by running `git apply "
-"--directory=modules/git-gui`."
+"Specify how differences in submodules are shown.  When specifying `--"
+"submodule=short` the 'short' format is used.  This format just shows the "
+"names of the commits at the beginning and end of the range.  When `--"
+"submodule` or `--submodule=log` is specified, the 'log' format is used.  "
+"This format lists the commits in the range like linkgit:git-submodule[1] "
+"`summary` does.  When `--submodule=diff` is specified, the 'diff' format is "
+"used.  This format shows an inline diff of the changes in the submodule "
+"contents between the commit range.  Defaults to `diff.submodule` or the "
+"'short' format if the config option is unset."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:233
+#: en/diff-options.txt:241 en/git-branch.txt:127 en/git-for-each-ref.txt:60
+#: en/git-grep.txt:221 en/git-show-branch.txt:119 en/git-tag.txt:118
 #, no-wrap
-msgid "--unsafe-paths"
+msgid "--color[=<when>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:238
+#: en/diff-options.txt:245
 msgid ""
-"By default, a patch that affects outside the working area (either a Git "
-"controlled working tree, or the current working directory when \"git apply\" "
-"is used as a replacement of GNU patch) is rejected as a mistake (or a "
-"mischief)."
+"Show colored diff.  `--color` (i.e. without '=<when>') is the same as `--"
+"color=always`.  '<when>' can be one of `always`, `never`, or `auto`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:242
+#: en/diff-options.txt:248
+#, no-wrap
 msgid ""
-"When `git apply` is used as a \"better GNU patch\", the user can pass the "
-"`--unsafe-paths` option to override this safety check.  This option has no "
-"effect when `--index` or `--cached` is in use."
+"\tIt can be changed by the `color.ui` and `color.diff`\n"
+"\tconfiguration settings.\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-apply.txt:246 en/config.txt:908
+#: en/diff-options.txt:250 en/git-branch.txt:132 en/git-grep.txt:225
+#: en/git-show-branch.txt:124
 #, no-wrap
-msgid "apply.ignoreWhitespace"
+msgid "--no-color"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:250
-msgid ""
-"Set to 'change' if you want changes in whitespace to be ignored by default.  "
-"Set to one of: no, none, never, false if you want changes in whitespace to "
-"be significant."
+#: en/diff-options.txt:252
+msgid "Turn off colored diff."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-apply.txt:250 en/config.txt:916
+#. type: Plain text
+#: en/diff-options.txt:254
 #, no-wrap
-msgid "apply.whitespace"
+msgid "\tThis can be used to override configuration settings.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:253
-msgid ""
-"When no `--whitespace` flag is given from the command line, this "
-"configuration item is used as the default."
+#: en/diff-options.txt:256
+#, no-wrap
+msgid "\tIt is the same as `--color=never`.\n"
 msgstr ""
 
-#. type: Title -
-#: en/git-apply.txt:255
+#. type: Labeled list
+#: en/diff-options.txt:257
 #, no-wrap
-msgid "Submodules"
+msgid "--color-moved[=<mode>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:258
-msgid ""
-"If the patch contains any changes to submodules then 'git apply' treats "
-"these changes as follows."
+#: en/diff-options.txt:259
+msgid "Moved lines of code are colored differently."
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:264
-msgid ""
-"If `--index` is specified (explicitly or implicitly), then the submodule "
-"commits must match the index exactly for the patch to apply.  If any of the "
-"submodules are checked-out, then these check-outs are completely ignored, "
-"i.e., they are not required to be up-to-date or clean and they are not "
-"updated."
+#: en/diff-options.txt:261
+#, no-wrap
+msgid "\tIt can be changed by the `diff.colorMoved` configuration setting.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-apply.txt:268
+#: en/diff-options.txt:265
+#, no-wrap
 msgid ""
-"If `--index` is not specified, then the submodule commits in the patch are "
-"ignored and only the absence or presence of the corresponding subdirectory "
-"is checked and (if possible) updated."
-msgstr ""
-
-#. type: Plain text
-#: en/git-apply.txt:272
-msgid "linkgit:git-am[1]."
+"\tThe <mode> defaults to 'no' if the option is not given\n"
+"\tand to 'zebra' if the option with no mode is given.\n"
+"\tThe mode must be one of:\n"
 msgstr ""
 
-#. type: Title =
-#: en/git-archimport.txt:2
+#. type: Labeled list
+#: en/diff-options.txt:267 en/diff-options.txt:309
 #, no-wrap
-msgid "git-archimport(1)"
+msgid "no"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archimport.txt:7
-msgid "git-archimport - Import an Arch repository into Git"
+#: en/diff-options.txt:269
+msgid "Moved lines are not highlighted."
 msgstr ""
 
-#. type: Plain text
-#: en/git-archimport.txt:14
+#. type: Labeled list
+#: en/diff-options.txt:269 en/git-commit.txt:211
 #, no-wrap
-msgid ""
-"'git archimport' [-h] [-v] [-o] [-a] [-f] [-T] [-D depth] [-t tempdir]\n"
-"               <archive/branch>[:<git-branch>] ...\n"
+msgid "default"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archimport.txt:22
+#: en/diff-options.txt:272
 msgid ""
-"Imports a project from one or more Arch repositories. It will follow "
-"branches and repositories within the namespaces defined by the "
-"<archive/branch> parameters supplied. If it cannot find the remote branch a "
-"merge comes from it will just import it as a regular commit. If it can find "
-"it, it will mark it as a merge whenever possible (see discussion below)."
+"Is a synonym for `zebra`. This may change to a more sensible mode in the "
+"future."
 msgstr ""
 
-#. type: Plain text
-#: en/git-archimport.txt:26
-msgid ""
-"The script expects you to provide the key roots where it can start the "
-"import from an 'initial import' or 'tag' type of Arch commit. It will follow "
-"and import new branches within the provided roots."
+#. type: Labeled list
+#: en/diff-options.txt:272 en/diff-options.txt:341
+#, no-wrap
+msgid "plain"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archimport.txt:31
+#: en/diff-options.txt:279
 msgid ""
-"It expects to be dealing with one project only. If it sees branches that "
-"have different roots, it will refuse to run. In that case, edit your "
-"<archive/branch> parameters to define clearly the scope of the import."
+"Any line that is added in one location and was removed in another location "
+"will be colored with 'color.diff.newMoved'.  Similarly 'color.diff.oldMoved' "
+"will be used for removed lines that are added somewhere else in the diff. "
+"This mode picks up any moved line, but it is not very useful in a review to "
+"determine if a block of code was moved without permutation."
 msgstr ""
 
-#. type: Plain text
-#: en/git-archimport.txt:36
-msgid ""
-"'git archimport' uses `tla` extensively in the background to access the Arch "
-"repository.  Make sure you have a recent version of `tla` available in the "
-"path. `tla` must know about the repositories you pass to 'git archimport'."
+#. type: Labeled list
+#: en/diff-options.txt:279
+#, no-wrap
+msgid "blocks"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archimport.txt:41
+#: en/diff-options.txt:284
 msgid ""
-"For the initial import, 'git archimport' expects to find itself in an empty "
-"directory. To follow the development of a project that uses Arch, rerun 'git "
-"archimport' with the same parameters as the initial import to perform "
-"incremental imports."
+"Blocks of moved text of at least 20 alphanumeric characters are detected "
+"greedily. The detected blocks are painted using either the 'color.diff.{old,"
+"new}Moved' color.  Adjacent blocks cannot be told apart."
 msgstr ""
 
-#. type: Plain text
-#: en/git-archimport.txt:48
-msgid ""
-"While 'git archimport' will try to create sensible branch names for the "
-"archives that it imports, it is also possible to specify Git branch names "
-"manually.  To do so, write a Git branch name after each <archive/branch> "
-"parameter, separated by a colon.  This way, you can shorten the Arch branch "
-"names and convert Arch jargon to Git jargon, for example mapping a "
-"\"PROJECT{litdd}devo{litdd}VERSION\" branch to \"master\"."
+#. type: Labeled list
+#: en/diff-options.txt:284
+#, no-wrap
+msgid "zebra"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archimport.txt:53
+#: en/diff-options.txt:289
 msgid ""
-"Associating multiple Arch branches to one Git branch is possible; the result "
-"will make the most sense only if no commits are made to the first branch, "
-"after the second branch is created.  Still, this is useful to convert Arch "
-"repositories that had been rotated periodically."
+"Blocks of moved text are detected as in 'blocks' mode. The blocks are "
+"painted using either the 'color.diff.{old,new}Moved' color or 'color.diff."
+"{old,new}MovedAlternative'. The change between the two colors indicates that "
+"a new block was detected."
 msgstr ""
 
-#. type: Title -
-#: en/git-archimport.txt:56
+#. type: Labeled list
+#: en/diff-options.txt:289
 #, no-wrap
-msgid "MERGES"
+msgid "dimmed-zebra"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archimport.txt:62
+#: en/diff-options.txt:294
 msgid ""
-"Patch merge data from Arch is used to mark merges in Git as well. Git does "
-"not care much about tracking patches, and only considers a merge when a "
-"branch incorporates all the commits since the point they forked. The end "
-"result is that Git will have a good idea of how far branches have "
-"diverged. So the import process does lose some patch-trading metadata."
+"Similar to 'zebra', but additional dimming of uninteresting parts of moved "
+"code is performed. The bordering lines of two adjacent blocks are considered "
+"interesting, the rest is uninteresting.  `dimmed_zebra` is a deprecated "
+"synonym."
+msgstr ""
+
+#. type: Labeled list
+#: en/diff-options.txt:296
+#, no-wrap
+msgid "--no-color-moved"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archimport.txt:66
+#: en/diff-options.txt:299
 msgid ""
-"Fortunately, when you try and merge branches imported from Arch, Git will "
-"find a good merge base, and it has a good chance of identifying patches that "
-"have been traded out-of-sequence between the branches."
+"Turn off move detection. This can be used to override configuration "
+"settings. It is the same as `--color-moved=no`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archimport.txt:70 en/git-cvsimport.txt:184 en/git-cvsserver.txt:48 en/git-grep.txt:141 en/git-ls-remote.txt:24 en/blame-options.txt:113
+#: en/diff-options.txt:300
 #, no-wrap
-msgid "-h"
+msgid "--color-moved-ws=<modes>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archimport.txt:72
-msgid "Display usage."
+#: en/diff-options.txt:303
+msgid ""
+"This configures how whitespace is ignored when performing the move detection "
+"for `--color-moved`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-archimport.txt:75
-msgid "Verbose output."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-archimport.txt:76
+#: en/diff-options.txt:305
 #, no-wrap
-msgid "-T"
+msgid "\tIt can be set by the `diff.colorMovedWS` configuration setting.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archimport.txt:79
-msgid ""
-"Many tags. Will create a tag for every commit, reflecting the commit name in "
-"the Arch repository."
+#: en/diff-options.txt:307
+#, no-wrap
+msgid "\tThese modes can be given as a comma separated list:\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archimport.txt:84
-msgid ""
-"Use the fast patchset import strategy.  This can be significantly faster for "
-"large trees, but cannot handle directory renames or permissions changes.  "
-"The default strategy is slow and safe."
+#: en/diff-options.txt:311
+msgid "Do not ignore whitespace when performing move detection."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archimport.txt:85 en/git-commit.txt:260 en/git-ls-files.txt:47 en/git-merge-index.txt:29 en/git-push.txt:159
+#: en/diff-options.txt:311 en/merge-strategies.txt:61
 #, no-wrap
-msgid "-o"
+msgid "ignore-space-at-eol"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archimport.txt:92
-msgid ""
-"Use this for compatibility with old-style branch names used by earlier "
-"versions of 'git archimport'.  Old-style branch names were "
-"category{litdd}branch, whereas new-style branch names are "
-"archive,category{litdd}branch{litdd}version.  In both cases, names given on "
-"the command-line will override the automatically-generated ones."
+#: en/diff-options.txt:313 en/diff-options.txt:645
+msgid "Ignore changes in whitespace at EOL."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archimport.txt:93
+#: en/diff-options.txt:313 en/merge-strategies.txt:59
 #, no-wrap
-msgid "-D <depth>"
+msgid "ignore-space-change"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archimport.txt:97
+#: en/diff-options.txt:317 en/diff-options.txt:651
 msgid ""
-"Follow merge ancestry and attempt to import trees that have been merged "
-"from.  Specify a depth greater than 1 if patch logs have been pruned."
+"Ignore changes in amount of whitespace.  This ignores whitespace at line "
+"end, and considers all other sequences of one or more whitespace characters "
+"to be equivalent."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archimport.txt:98 en/git-branch.txt:140 en/git-checkout-index.txt:38 en/git-commit.txt:60 en/git-cvsexportcommit.txt:45 en/git-cvsimport.txt:135 en/git-grep.txt:105 en/git-help.txt:41 en/git-http-fetch.txt:31 en/git-merge-base.txt:71 en/git-merge-index.txt:26 en/git-repack.txt:31 en/git-show-branch.txt:47 en/git-tag.txt:59 en/diff-options.txt:518 en/fetch-options.txt:4
+#: en/diff-options.txt:317 en/merge-strategies.txt:60
 #, no-wrap
-msgid "-a"
+msgid "ignore-all-space"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archimport.txt:101
+#: en/diff-options.txt:320
 msgid ""
-"Attempt to auto-register archives at http://mirrors.sourcecontrol.net This "
-"is particularly useful with the -D option."
+"Ignore whitespace when comparing lines. This ignores differences even if one "
+"line has whitespace where the other line has none."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archimport.txt:102
+#: en/diff-options.txt:320
 #, no-wrap
-msgid "-t <tmpdir>"
+msgid "allow-indentation-change"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archimport.txt:104
-msgid "Override the default tempdir."
+#: en/diff-options.txt:325
+msgid ""
+"Initially ignore any whitespace in the move detection, then group the moved "
+"code blocks only into a block if the change in whitespace is the same per "
+"line. This is incompatible with the other modes."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archimport.txt:106
+#: en/diff-options.txt:327
 #, no-wrap
-msgid "<archive/branch>"
+msgid "--no-color-moved-ws"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archimport.txt:108
-msgid "Archive/branch identifier in a format that `tla log` understands."
+#: en/diff-options.txt:331
+msgid ""
+"Do not ignore whitespace when performing move detection. This can be used to "
+"override configuration settings. It is the same as `--color-moved-ws=no`."
 msgstr ""
 
-#. type: Title =
-#: en/git-archive.txt:2
+#. type: Labeled list
+#: en/diff-options.txt:332
 #, no-wrap
-msgid "git-archive(1)"
-msgstr ""
-
-#. type: Plain text
-#: en/git-archive.txt:7
-msgid "git-archive - Create an archive of files from a named tree"
+msgid "--word-diff[=<mode>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:16
-#, no-wrap
+#: en/diff-options.txt:337
 msgid ""
-"'git archive' [--format=<fmt>] [--list] [--prefix=<prefix>/] [<extra>]\n"
-"\t      [-o <file> | --output=<file>] [--worktree-attributes]\n"
-"\t      [--remote=<repo> [--exec=<git-upload-archive>]] <tree-ish>\n"
-"\t      [<path>...]\n"
+"Show a word diff, using the <mode> to delimit changed words.  By default, "
+"words are delimited by whitespace; see `--word-diff-regex` below.  The "
+"<mode> defaults to 'plain', and must be one of:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:23
-msgid ""
-"Creates an archive of the specified format containing the tree structure for "
-"the named tree, and writes it out to the standard output.  If <prefix> is "
-"specified it is prepended to the filenames in the archive."
+#: en/diff-options.txt:341
+msgid "Highlight changed words using only colors.  Implies `--color`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:32
+#: en/diff-options.txt:345
 msgid ""
-"'git archive' behaves differently when given a tree ID versus when given a "
-"commit ID or tag ID.  In the first case the current time is used as the "
-"modification time of each file in the archive.  In the latter case the "
-"commit time as recorded in the referenced commit object is used instead.  "
-"Additionally the commit ID is stored in a global extended pax header if the "
-"tar format is used; it can be extracted using 'git get-tar-commit-id'. In "
-"ZIP files it is stored as a file comment."
+"Show words as `[-removed-]` and `{+added+}`.  Makes no attempts to escape "
+"the delimiters if they appear in the input, so the output may be ambiguous."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archive.txt:36
+#: en/diff-options.txt:345
 #, no-wrap
-msgid "--format=<fmt>"
+msgid "porcelain"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:42
+#: en/diff-options.txt:352
 msgid ""
-"Format of the resulting archive: 'tar' or 'zip'. If this option is not "
-"given, and the output file is specified, the format is inferred from the "
-"filename if possible (e.g. writing to \"foo.zip\" makes the output to be in "
-"the zip format). Otherwise the output format is `tar`."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-archive.txt:43 en/git-branch.txt:87 en/git-checkout.txt:174 en/git-clone.txt:44 en/git-config.txt:159 en/git-grep.txt:176 en/git-instaweb.txt:23 en/git-ls-tree.txt:51 en/git-repack.txt:61 en/git-svn.txt:228 en/git-var.txt:20 en/blame-options.txt:22
-#, no-wrap
-msgid "-l"
+"Use a special line-based format intended for script consumption.  Added/"
+"removed/unchanged runs are printed in the usual unified diff format, "
+"starting with a `+`/`-`/` ` character at the beginning of the line and "
+"extending to the end of the line.  Newlines in the input are represented by "
+"a tilde `~` on a line of its own."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archive.txt:44 en/git-branch.txt:144 en/git-config.txt:160 en/git-show-branch.txt:80
+#: en/diff-options.txt:352 en/git-daemon.txt:131 en/git-submodule.txt:162
 #, no-wrap
-msgid "--list"
+msgid "none"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:46
-msgid "Show all available formats."
+#: en/diff-options.txt:354
+msgid "Disable word diff again."
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:50
-msgid "Report progress to stderr."
+#: en/diff-options.txt:358
+msgid ""
+"Note that despite the name of the first mode, color is used to highlight the "
+"changed parts in all modes if enabled."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archive.txt:51 en/git-read-tree.txt:84 en/git-write-tree.txt:35
+#: en/diff-options.txt:359
 #, no-wrap
-msgid "--prefix=<prefix>/"
+msgid "--word-diff-regex=<regex>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:53
-msgid "Prepend <prefix>/ to each filename in the archive."
+#: en/diff-options.txt:363
+msgid ""
+"Use <regex> to decide what a word is, instead of considering runs of non-"
+"whitespace to be a word.  Also implies `--word-diff` unless it was already "
+"enabled."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-archive.txt:54
-#, no-wrap
-msgid "-o <file>"
+#. type: Plain text
+#: en/diff-options.txt:371
+msgid ""
+"Every non-overlapping match of the <regex> is considered a word.  Anything "
+"between these matches is considered whitespace and ignored(!) for the "
+"purposes of finding differences.  You may want to append `|[^[:space:]]` to "
+"your regular expression to make sure that it matches all non-whitespace "
+"characters.  A match that contains a newline is silently truncated(!) at the "
+"newline."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-archive.txt:55
-#, no-wrap
-msgid "--output=<file>"
+#. type: Plain text
+#: en/diff-options.txt:374
+msgid ""
+"For example, `--word-diff-regex=.` will treat each character as a word and, "
+"correspondingly, show differences character by character."
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:57
-msgid "Write the archive to <file> instead of stdout."
+#: en/diff-options.txt:379
+msgid ""
+"The regex can also be set via a diff driver or configuration option, see "
+"linkgit:gitattributes[5] or linkgit:git-config[1].  Giving it explicitly "
+"overrides any diff driver or configuration setting.  Diff drivers override "
+"configuration settings."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archive.txt:58
+#: en/diff-options.txt:380
 #, no-wrap
-msgid "--worktree-attributes"
+msgid "--color-words[=<regex>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:61
+#: en/diff-options.txt:383
 msgid ""
-"Look for attributes in .gitattributes files in the working tree as well (see "
-"<<ATTRIBUTES>>)."
+"Equivalent to `--word-diff=color` plus (if a regex was specified) `--word-"
+"diff-regex=<regex>`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archive.txt:62
+#: en/diff-options.txt:385 en/git-status.txt:139
 #, no-wrap
-msgid "<extra>"
+msgid "--no-renames"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:65
+#: en/diff-options.txt:388
 msgid ""
-"This can be any options that the archiver backend understands.  See next "
-"section."
+"Turn off rename detection, even when the configuration file gives the "
+"default to do so."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archive.txt:66
+#: en/diff-options.txt:390 en/git-apply.txt:58
 #, no-wrap
-msgid "--remote=<repo>"
+msgid "--check"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:72
+#: en/diff-options.txt:399
 msgid ""
-"Instead of making a tar archive from the local repository, retrieve a tar "
-"archive from a remote repository. Note that the remote repository may place "
-"restrictions on which sha1 expressions may be allowed in `<tree-ish>`. See "
-"linkgit:git-upload-archive[1] for details."
+"Warn if changes introduce conflict markers or whitespace errors.  What are "
+"considered whitespace errors is controlled by `core.whitespace` "
+"configuration.  By default, trailing whitespaces (including lines that "
+"consist solely of whitespaces) and a space character that is immediately "
+"followed by a tab character inside the initial indent of the line are "
+"considered whitespace errors.  Exits with non-zero status if problems are "
+"found. Not compatible with --exit-code."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archive.txt:73
+#: en/diff-options.txt:400
 #, no-wrap
-msgid "--exec=<git-upload-archive>"
+msgid "--ws-error-highlight=<kind>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:76
+#: en/diff-options.txt:409
 msgid ""
-"Used with --remote to specify the path to the 'git-upload-archive' on the "
-"remote side."
-msgstr ""
-
-#. type: Plain text
-#: en/git-archive.txt:79
-msgid "The tree or commit to produce an archive for."
+"Highlight whitespace errors in the `context`, `old` or `new` lines of the "
+"diff.  Multiple values are separated by comma, `none` resets previous "
+"values, `default` reset the list to `new` and `all` is a shorthand for `old,"
+"new,context`.  When this option is not given, and the configuration variable "
+"`diff.wsErrorHighlight` is not set, only whitespace errors in `new` lines "
+"are highlighted. The whitespace errors are colored with `color.diff."
+"whitespace`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archive.txt:80
+#: en/diff-options.txt:412
 #, no-wrap
-msgid "<path>"
+msgid "--full-index"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:84
+#: en/diff-options.txt:416
 msgid ""
-"Without an optional path parameter, all files and subdirectories of the "
-"current working directory are included in the archive.  If one or more paths "
-"are specified, only these are included."
-msgstr ""
-
-#. type: Title -
-#: en/git-archive.txt:86
-#, no-wrap
-msgid "BACKEND EXTRA OPTIONS"
-msgstr ""
-
-#. type: Title ~
-#: en/git-archive.txt:89
-#, no-wrap
-msgid "zip"
+"Instead of the first handful of characters, show the full pre- and post-"
+"image blob object names on the \"index\" line when generating patch format "
+"output."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archive.txt:90 en/git-diff-files.txt:28
+#: en/diff-options.txt:417 en/git-apply.txt:160
 #, no-wrap
-msgid "-0"
+msgid "--binary"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:92
-msgid "Store the files instead of deflating them."
+#: en/diff-options.txt:420
+msgid ""
+"In addition to `--full-index`, output a binary diff that can be applied with "
+"`git-apply`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archive.txt:92
+#: en/diff-options.txt:421 en/git-ls-files.txt:152 en/git-ls-tree.txt:63
+#: en/git-show-ref.txt:65
 #, no-wrap
-msgid "-9"
+msgid "--abbrev[=<n>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:95
+#: en/diff-options.txt:428
 msgid ""
-"Highest and slowest compression level.  You can specify any number from 1 to "
-"9 to adjust compression speed and ratio."
+"Instead of showing the full 40-byte hexadecimal object name in diff-raw "
+"format output and diff-tree header lines, show only a partial prefix.  This "
+"is independent of the `--full-index` option above, which controls the diff-"
+"patch output format.  Non default number of digits can be specified with `--"
+"abbrev=<n>`."
 msgstr ""
 
-#. type: Title -
-#: en/git-archive.txt:98 en/git-cvsexportcommit.txt:86 en/git-fmt-merge-msg.txt:53 en/git-format-patch.txt:287 en/git-grep.txt:42 en/git-imap-send.txt:52 en/git-instaweb.txt:69 en/git-log.txt:170 en/git-merge.txt:344 en/git-notes.txt:311 en/git-rebase.txt:204 en/git-send-email.txt:402 en/git-status.txt:331 en/git-svn.txt:1045 en/git-tag.txt:182
+#. type: Labeled list
+#: en/diff-options.txt:429
 #, no-wrap
-msgid "CONFIGURATION"
+msgid "-B[<n>][/<m>]"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archive.txt:100 en/config.txt:3083
+#: en/diff-options.txt:430
 #, no-wrap
-msgid "tar.umask"
+msgid "--break-rewrites[=[<n>][/<m>]]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:107
+#: en/diff-options.txt:433
 msgid ""
-"This variable can be used to restrict the permission bits of tar archive "
-"entries.  The default is 0002, which turns off the world write bit.  The "
-"special value \"user\" indicates that the archiving user's umask will be "
-"used instead.  See umask(2) for details.  If `--remote` is used then only "
-"the configuration of the remote repository takes effect."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-archive.txt:108
-#, no-wrap
-msgid "tar.<format>.command"
+"Break complete rewrite changes into pairs of delete and create. This serves "
+"two purposes:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:117
+#: en/diff-options.txt:443
 msgid ""
-"This variable specifies a shell command through which the tar output "
-"generated by `git archive` should be piped. The command is executed using "
-"the shell with the generated tar file on its standard input, and should "
-"produce the final output on its standard output. Any compression-level "
-"options will be passed to the command (e.g., \"-9\"). An output file with "
-"the same extension as `<format>` will be use this format if no other format "
-"is given."
+"It affects the way a change that amounts to a total rewrite of a file not as "
+"a series of deletion and insertion mixed together with a very few lines that "
+"happen to match textually as the context, but as a single deletion of "
+"everything old followed by a single insertion of everything new, and the "
+"number `m` controls this aspect of the -B option (defaults to 60%). `-B/70%` "
+"specifies that less than 30% of the original should remain in the result for "
+"Git to consider it a total rewrite (i.e. otherwise the resulting patch will "
+"be a series of deletion and insertion mixed together with context lines)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:120
+#: en/diff-options.txt:451
 msgid ""
-"The \"tar.gz\" and \"tgz\" formats are defined automatically and default to "
-"`gzip -cn`. You may override them with custom commands."
+"When used with -M, a totally-rewritten file is also considered as the source "
+"of a rename (usually -M only considers a file that disappeared as the source "
+"of a rename), and the number `n` controls this aspect of the -B option "
+"(defaults to 50%). `-B20%` specifies that a change with addition and "
+"deletion compared to 20% or more of the file's size are eligible for being "
+"picked up as a possible source of a rename to another file."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archive.txt:121
+#: en/diff-options.txt:452
 #, no-wrap
-msgid "tar.<format>.remote"
+msgid "-M[<n>]"
 msgstr ""
 
-#. type: Plain text
-#: en/git-archive.txt:126
-msgid ""
-"If true, enable `<format>` for use by remote clients via "
-"linkgit:git-upload-archive[1]. Defaults to false for user-defined formats, "
-"but true for the \"tar.gz\" and \"tgz\" formats."
+#. type: Labeled list
+#: en/diff-options.txt:453 en/git-status.txt:143
+#, no-wrap
+msgid "--find-renames[=<n>]"
 msgstr ""
 
-#. type: Title -
-#: en/git-archive.txt:129
+#. type: Plain text
+#: en/diff-options.txt:456
 #, no-wrap
-msgid "ATTRIBUTES"
+msgid "\tDetect renames.\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-archive.txt:131
+#. type: Plain text
+#: en/diff-options.txt:461
 #, no-wrap
-msgid "export-ignore"
+msgid ""
+"\tIf generating diffs, detect and report renames for each commit.\n"
+"\tFor following files across renames while traversing history, see\n"
+"\t`--follow`.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:134
+#: en/diff-options.txt:471
+#, no-wrap
 msgid ""
-"Files and directories with the attribute export-ignore won't be added to "
-"archive files.  See linkgit:gitattributes[5] for details."
+"\tIf `n` is specified, it is a threshold on the similarity\n"
+"\tindex (i.e. amount of addition/deletions compared to the\n"
+"\tfile's size). For example, `-M90%` means Git should consider a\n"
+"\tdelete/add pair to be a rename if more than 90% of the file\n"
+"\thasn't changed.  Without a `%` sign, the number is to be read as\n"
+"\ta fraction, with a decimal point before it.  I.e., `-M5` becomes\n"
+"\t0.5, and is thus the same as `-M50%`.  Similarly, `-M05` is\n"
+"\tthe same as `-M5%`.  To limit detection to exact renames, use\n"
+"\t`-M100%`.  The default similarity index is 50%.\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archive.txt:135
+#: en/diff-options.txt:472
 #, no-wrap
-msgid "export-subst"
+msgid "-C[<n>]"
 msgstr ""
 
-#. type: Plain text
-#: en/git-archive.txt:139
-msgid ""
-"If the attribute export-subst is set for a file then Git will expand several "
-"placeholders when adding this file to an archive.  See "
-"linkgit:gitattributes[5] for details."
+#. type: Labeled list
+#: en/diff-options.txt:473
+#, no-wrap
+msgid "--find-copies[=<n>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:147
+#: en/diff-options.txt:476
 msgid ""
-"Note that attributes are by default taken from the `.gitattributes` files in "
-"the tree that is being archived.  If you want to tweak the way the output is "
-"generated after the fact (e.g. you committed without adding an appropriate "
-"export-ignore in its `.gitattributes`), adjust the checked out "
-"`.gitattributes` file as necessary and use `--worktree-attributes` option.  "
-"Alternatively you can keep necessary attributes that should apply while "
-"archiving any tree in your `$GIT_DIR/info/attributes` file."
+"Detect copies as well as renames.  See also `--find-copies-harder`.  If `n` "
+"is specified, it has the same meaning as for `-M<n>`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archive.txt:150
+#: en/diff-options.txt:477 en/git-svn.txt:626
 #, no-wrap
-msgid "`git archive --format=tar --prefix=junk/ HEAD | (cd /var/tmp/ && tar xf -)`"
+msgid "--find-copies-harder"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:155
+#: en/diff-options.txt:485
 msgid ""
-"Create a tar archive that contains the contents of the latest commit on the "
-"current branch, and extract it in the `/var/tmp/junk` directory."
+"For performance reasons, by default, `-C` option finds copies only if the "
+"original file of the copy was modified in the same changeset.  This flag "
+"makes the command inspect unmodified files as candidates for the source of "
+"copy.  This is a very expensive operation for large projects, so use it with "
+"caution.  Giving more than one `-C` option has the same effect."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archive.txt:156
+#: en/diff-options.txt:486 en/git-branch.txt:91 en/git-http-push.txt:45
+#, no-wrap
+msgid "-D"
+msgstr ""
+
+#. type: Labeled list
+#: en/diff-options.txt:487
 #, no-wrap
+msgid "--irreversible-delete"
+msgstr ""
+
+#. type: Plain text
+#: en/diff-options.txt:495
 msgid ""
-"`git archive --format=tar --prefix=git-1.4.0/ v1.4.0 | gzip "
-">git-1.4.0.tar.gz`"
+"Omit the preimage for deletes, i.e. print only the header but not the diff "
+"between the preimage and `/dev/null`. The resulting patch is not meant to be "
+"applied with `patch` or `git apply`; this is solely for people who want to "
+"just concentrate on reviewing the text after the change. In addition, the "
+"output obviously lacks enough information to apply such a patch in reverse, "
+"even manually, hence the name of the option."
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:159
-msgid "Create a compressed tarball for v1.4.0 release."
+#: en/diff-options.txt:498
+msgid ""
+"When used together with `-B`, omit also the preimage in the deletion part of "
+"a delete/create pair."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archive.txt:160
+#: en/diff-options.txt:499 en/git-svn.txt:625
 #, no-wrap
-msgid "`git archive --format=tar.gz --prefix=git-1.4.0/ v1.4.0 >git-1.4.0.tar.gz`"
+msgid "-l<num>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:163
-msgid "Same as above, but using the builtin tar.gz handling."
+#: en/diff-options.txt:505
+msgid ""
+"The `-M` and `-C` options require O(n^2) processing time where n is the "
+"number of potential rename/copy targets.  This option prevents rename/copy "
+"detection from running if the number of rename/copy targets exceeds the "
+"specified number."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archive.txt:164
+#: en/diff-options.txt:507
 #, no-wrap
-msgid "`git archive --prefix=git-1.4.0/ -o git-1.4.0.tar.gz v1.4.0`"
+msgid "--diff-filter=[(A|C|D|M|R|T|U|X|B)...[*]]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:167
-msgid "Same as above, but the format is inferred from the output file."
+#: en/diff-options.txt:518
+msgid ""
+"Select only files that are Added (`A`), Copied (`C`), Deleted (`D`), "
+"Modified (`M`), Renamed (`R`), have their type (i.e. regular file, symlink, "
+"submodule, ...) changed (`T`), are Unmerged (`U`), are Unknown (`X`), or "
+"have had their pairing Broken (`B`).  Any combination of the filter "
+"characters (including none) can be used.  When `*` (All-or-none) is added to "
+"the combination, all paths are selected if there is any file that matches "
+"other criteria in the comparison; if there is no file that matches other "
+"criteria, nothing is selected."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-archive.txt:168
-#, no-wrap
+#. type: Plain text
+#: en/diff-options.txt:521
 msgid ""
-"`git archive --format=tar --prefix=git-1.4.0/ v1.4.0^{tree} | gzip "
-">git-1.4.0.tar.gz`"
+"Also, these upper-case letters can be downcased to exclude.  E.g.  `--diff-"
+"filter=ad` excludes added and deleted paths."
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:172
+#: en/diff-options.txt:527
 msgid ""
-"Create a compressed tarball for v1.4.0 release, but without a global "
-"extended pax header."
+"Note that not all diffs can feature all types. For instance, diffs from the "
+"index to the working tree can never have Added entries (because the set of "
+"paths included in the diff is limited by what is in the index).  Similarly, "
+"copied and renamed entries cannot appear if detection for those types is "
+"disabled."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archive.txt:173
+#: en/diff-options.txt:528
 #, no-wrap
-msgid ""
-"`git archive --format=zip --prefix=git-docs/ HEAD:Documentation/ > "
-"git-1.4.0-docs.zip`"
+msgid "-S<string>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:177
+#: en/diff-options.txt:532
 msgid ""
-"Put everything in the current head's Documentation/ directory into "
-"'git-1.4.0-docs.zip', with the prefix 'git-docs/'."
+"Look for differences that change the number of occurrences of the specified "
+"string (i.e. addition/deletion) in a file.  Intended for the scripter's use."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-archive.txt:178
-#, no-wrap
-msgid "`git archive -o latest.zip HEAD`"
+#. type: Plain text
+#: en/diff-options.txt:538
+msgid ""
+"It is useful when you're looking for an exact block of code (like a struct), "
+"and want to know the history of that block since it first came into being: "
+"use the feature iteratively to feed the interesting block in the preimage "
+"back into `-S`, and keep going until you get the very first version of the "
+"block."
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:183
-msgid ""
-"Create a Zip archive that contains the contents of the latest commit on the "
-"current branch. Note that the output format is inferred by the extension of "
-"the output file."
+#: en/diff-options.txt:540
+msgid "Binary files are searched as well."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-archive.txt:184
+#: en/diff-options.txt:541
 #, no-wrap
-msgid "`git config tar.tar.xz.command \"xz -c\"`"
+msgid "-G<regex>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:189
+#: en/diff-options.txt:544
 msgid ""
-"Configure a \"tar.xz\" format for making LZMA-compressed tarfiles.  You can "
-"use it specifying `--format=tar.xz`, or by creating an output file like `-o "
-"foo.tar.xz`."
+"Look for differences whose patch text contains added/removed lines that "
+"match <regex>."
 msgstr ""
 
 #. type: Plain text
-#: en/git-archive.txt:194
-msgid "linkgit:gitattributes[5]"
+#: en/diff-options.txt:548
+msgid ""
+"To illustrate the difference between `-S<regex> --pickaxe-regex` and `-"
+"G<regex>`, consider a commit with the following diff in the same file:"
 msgstr ""
 
-#. type: Title =
-#: en/git-bisect.txt:2
+#. type: delimited block -
+#: en/diff-options.txt:553
 #, no-wrap
-msgid "git-bisect(1)"
+msgid ""
+"+    return !regexec(regexp, two->ptr, 1, &regmatch, 0);\n"
+"...\n"
+"-    hit = !regexec(regexp, mf2.ptr, 1, &regmatch, 0);\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:7
-msgid "git-bisect - Use binary search to find the commit that introduced a bug"
+#: en/diff-options.txt:558
+msgid ""
+"While `git log -G\"regexec\\(regexp\"` will show this commit, `git log -S"
+"\"regexec\\(regexp\" --pickaxe-regex` will not (because the number of "
+"occurrences of that string did not change)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:13
-#, no-wrap
-msgid "'git bisect' <subcommand> <options>\n"
+#: en/diff-options.txt:561
+msgid ""
+"Unless `--text` is supplied patches of binary files without a textconv "
+"filter will be ignored."
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:18 en/git-reflog.txt:18
-msgid ""
-"The command takes various subcommands, and different options depending on "
-"the subcommand:"
+#: en/diff-options.txt:564
+msgid "See the 'pickaxe' entry in linkgit:gitdiffcore[7] for more information."
 msgstr ""
 
-#. type: Plain text
-#: en/git-bisect.txt:31
+#. type: Labeled list
+#: en/diff-options.txt:565
 #, no-wrap
-msgid ""
-" git bisect start [--term-{old,good}=<term> --term-{new,bad}=<term>]\n"
-"\t\t  [--no-checkout] [<bad> [<good>...]] [--] [<paths>...]\n"
-" git bisect (bad|new|<term-new>) [<rev>]\n"
-" git bisect (good|old|<term-old>) [<rev>...]\n"
-" git bisect terms [--term-good | --term-bad]\n"
-" git bisect skip [(<rev>|<range>)...]\n"
-" git bisect reset [<commit>]\n"
-" git bisect visualize\n"
-" git bisect replay <logfile>\n"
-" git bisect log\n"
-" git bisect run <cmd>...\n"
-" git bisect help\n"
+msgid "--find-object=<object-id>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:40
+#: en/diff-options.txt:570
 msgid ""
-"This command uses a binary search algorithm to find which commit in your "
-"project's history introduced a bug. You use it by first telling it a \"bad\" "
-"commit that is known to contain the bug, and a \"good\" commit that is known "
-"to be before the bug was introduced. Then `git bisect` picks a commit "
-"between those two endpoints and asks you whether the selected commit is "
-"\"good\" or \"bad\". It continues narrowing down the range until it finds "
-"the exact commit that introduced the change."
+"Look for differences that change the number of occurrences of the specified "
+"object. Similar to `-S`, just the argument is different in that it doesn't "
+"search for a specific string but for a specific object id."
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:47
+#: en/diff-options.txt:573
 msgid ""
-"In fact, `git bisect` can be used to find the commit that changed *any* "
-"property of your project; e.g., the commit that fixed a bug, or the commit "
-"that caused a benchmark's performance to improve. To support this more "
-"general usage, the terms \"old\" and \"new\" can be used in place of "
-"\"good\" and \"bad\", or you can choose your own terms. See section "
-"\"Alternate terms\" below for more information."
+"The object can be a blob or a submodule commit. It implies the `-t` option "
+"in `git-log` to also find trees."
 msgstr ""
 
-#. type: Title ~
-#: en/git-bisect.txt:49
+#. type: Labeled list
+#: en/diff-options.txt:574
 #, no-wrap
-msgid "Basic bisect commands: start, bad, good"
+msgid "--pickaxe-all"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:54
+#: en/diff-options.txt:578
 msgid ""
-"As an example, suppose you are trying to find the commit that broke a "
-"feature that was known to work in version `v2.6.13-rc2` of your project. You "
-"start a bisect session as follows:"
+"When `-S` or `-G` finds a change, show all the changes in that changeset, "
+"not just the files that contain the change in <string>."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:59
+#. type: Labeled list
+#: en/diff-options.txt:579
 #, no-wrap
-msgid ""
-"$ git bisect start\n"
-"$ git bisect bad                 # Current version is bad\n"
-"$ git bisect good v2.6.13-rc2    # v2.6.13-rc2 is known to be good\n"
+msgid "--pickaxe-regex"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:64
+#: en/diff-options.txt:582
 msgid ""
-"Once you have specified at least one bad and one good commit, `git bisect` "
-"selects a commit in the middle of that range of history, checks it out, and "
-"outputs something similar to the following:"
+"Treat the <string> given to `-S` as an extended POSIX regular expression to "
+"match."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:67
+#. type: Labeled list
+#: en/diff-options.txt:585 en/git-mergetool.txt:93
 #, no-wrap
-msgid "Bisecting: 675 revisions left to test after this (roughly 10 steps)\n"
+msgid "-O<orderfile>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:71
+#: en/diff-options.txt:590
 msgid ""
-"You should now compile the checked-out version and test it. If that version "
-"works correctly, type"
+"Control the order in which files appear in the output.  This overrides the "
+"`diff.orderFile` configuration variable (see linkgit:git-config[1]).  To "
+"cancel `diff.orderFile`, use `-O/dev/null`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:74
-#, no-wrap
-msgid "$ git bisect good\n"
+#. type: Plain text
+#: en/diff-options.txt:602
+msgid ""
+"The output order is determined by the order of glob patterns in "
+"<orderfile>.  All files with pathnames that match the first pattern are "
+"output first, all files with pathnames that match the second pattern (but "
+"not the first) are output next, and so on.  All files with pathnames that do "
+"not match any pattern are output last, as if there was an implicit match-all "
+"pattern at the end of the file.  If multiple pathnames have the same rank "
+"(they match the same pattern but no earlier patterns), their output order "
+"relative to each other is the normal order."
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:77
-msgid "If that version is broken, type"
+#: en/diff-options.txt:604
+msgid "<orderfile> is parsed as follows:"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:80
-#, no-wrap
-msgid "$ git bisect bad\n"
+#. type: Plain text
+#: en/diff-options.txt:608
+msgid ""
+"Blank lines are ignored, so they can be used as separators for readability."
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:83
-msgid "Then `git bisect` will respond with something like"
+#: en/diff-options.txt:612
+msgid ""
+"Lines starting with a hash (\"`#`\") are ignored, so they can be used for "
+"comments.  Add a backslash (\"`\\`\") to the beginning of the pattern if it "
+"starts with a hash."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:86
-#, no-wrap
-msgid "Bisecting: 337 revisions left to test after this (roughly 9 steps)\n"
+#. type: Plain text
+#: en/diff-options.txt:614
+msgid "Each other line contains a single pattern."
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:91
+#: en/diff-options.txt:621
 msgid ""
-"Keep repeating the process: compile the tree, test it, and depending on "
-"whether it is good or bad run `git bisect good` or `git bisect bad` to ask "
-"for the next commit that needs testing."
+"Patterns have the same syntax and semantics as patterns used for fnmatch(3) "
+"without the FNM_PATHNAME flag, except a pathname also matches a pattern if "
+"removing any number of the final pathname components matches the pattern.  "
+"For example, the pattern \"`foo*bar`\" matches \"`fooasdfbar`\" and \"`foo/"
+"bar/baz/asdf`\" but not \"`foobarx`\"."
+msgstr ""
+
+#. type: Labeled list
+#: en/diff-options.txt:623 en/git-apply.txt:104 en/git-cvsimport.txt:168
+#, no-wrap
+msgid "-R"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:95
+#: en/diff-options.txt:626
 msgid ""
-"Eventually there will be no more revisions left to inspect, and the command "
-"will print out a description of the first bad commit. The reference "
-"`refs/bisect/bad` will be left pointing at that commit."
+"Swap two inputs; that is, show differences from index or on-disk file to "
+"tree contents."
 msgstr ""
 
-#. type: Title ~
-#: en/git-bisect.txt:98
+#. type: Labeled list
+#: en/diff-options.txt:627
 #, no-wrap
-msgid "Bisect reset"
+msgid "--relative[=<path>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:102
+#: en/diff-options.txt:634
 msgid ""
-"After a bisect session, to clean up the bisection state and return to the "
-"original HEAD, issue the following command:"
+"When run from a subdirectory of the project, it can be told to exclude "
+"changes outside the directory and show pathnames relative to it with this "
+"option.  When you are not in a subdirectory (e.g. in a bare repository), you "
+"can name which subdirectory to make the output relative to by giving a "
+"<path> as an argument."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:105
+#. type: Labeled list
+#: en/diff-options.txt:636 en/fetch-options.txt:4 en/git-archimport.txt:99
+#: en/git-branch.txt:153 en/git-checkout-index.txt:38 en/git-commit.txt:64
+#: en/git-cvsexportcommit.txt:45 en/git-cvsimport.txt:135 en/git-grep.txt:101
+#: en/git-help.txt:45 en/git-merge-base.txt:71 en/git-merge-index.txt:26
+#: en/git-repack.txt:31 en/git-show-branch.txt:47 en/git-tag.txt:60
 #, no-wrap
-msgid "$ git bisect reset\n"
+msgid "-a"
 msgstr ""
 
-#. type: Plain text
-#: en/git-bisect.txt:110
-msgid ""
-"By default, this will return your tree to the commit that was checked out "
-"before `git bisect start`.  (A new `git bisect start` will also do that, as "
-"it cleans up the old bisection state.)"
+#. type: Labeled list
+#: en/diff-options.txt:637 en/git-grep.txt:102
+#, no-wrap
+msgid "--text"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:113
-msgid "With an optional argument, you can return to a different commit instead:"
+#: en/diff-options.txt:639
+msgid "Treat all files as text."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:116
+#. type: Labeled list
+#: en/diff-options.txt:640
 #, no-wrap
-msgid "$ git bisect reset <commit>\n"
+msgid "--ignore-cr-at-eol"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:121
-msgid ""
-"For example, `git bisect reset bisect/bad` will check out the first bad "
-"revision, while `git bisect reset HEAD` will leave you on the current "
-"bisection commit and avoid switching commits at all."
+#: en/diff-options.txt:642
+msgid "Ignore carriage-return at the end of line when doing a comparison."
 msgstr ""
 
-#. type: Title ~
-#: en/git-bisect.txt:124
+#. type: Labeled list
+#: en/diff-options.txt:643
 #, no-wrap
-msgid "Alternate terms"
+msgid "--ignore-space-at-eol"
 msgstr ""
 
-#. type: Plain text
-#: en/git-bisect.txt:132
-msgid ""
-"Sometimes you are not looking for the commit that introduced a breakage, but "
-"rather for a commit that caused a change between some other \"old\" state "
-"and \"new\" state. For example, you might be looking for the commit that "
-"introduced a particular fix. Or you might be looking for the first commit in "
-"which the source-code filenames were finally all converted to your company's "
-"naming standard. Or whatever."
+#. type: Labeled list
+#: en/diff-options.txt:647 en/git-am.txt:102 en/git-apply.txt:182
+#, no-wrap
+msgid "--ignore-space-change"
 msgstr ""
 
-#. type: Plain text
-#: en/git-bisect.txt:138
-msgid ""
-"In such cases it can be very confusing to use the terms \"good\" and \"bad\" "
-"to refer to \"the state before the change\" and \"the state after the "
-"change\". So instead, you can use the terms \"old\" and \"new\", "
-"respectively, in place of \"good\" and \"bad\". (But note that you cannot "
-"mix \"good\" and \"bad\" with \"old\" and \"new\" in a single session.)"
+#. type: Labeled list
+#: en/diff-options.txt:652 en/git-blame.txt:83 en/git-cvsexportcommit.txt:71
+#: en/git-grep.txt:134 en/git-hash-object.txt:31 en/git-help.txt:79
+#, no-wrap
+msgid "-w"
 msgstr ""
 
-#. type: Plain text
-#: en/git-bisect.txt:145
-msgid ""
-"In this more general usage, you provide `git bisect` with a \"new\" commit "
-"has some property and an \"old\" commit that doesn't have that "
-"property. Each time `git bisect` checks out a commit, you test if that "
-"commit has the property. If it does, mark the commit as \"new\"; otherwise, "
-"mark it as \"old\". When the bisection is done, `git bisect` will report "
-"which commit introduced the property."
+#. type: Labeled list
+#: en/diff-options.txt:653
+#, no-wrap
+msgid "--ignore-all-space"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:149
+#: en/diff-options.txt:657
 msgid ""
-"To use \"old\" and \"new\" instead of \"good\" and bad, you must run `git "
-"bisect start` without commits as argument and then run the following "
-"commands to add the commits:"
+"Ignore whitespace when comparing lines.  This ignores differences even if "
+"one line has whitespace where the other line has none."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:152
+#. type: Labeled list
+#: en/diff-options.txt:658
 #, no-wrap
-msgid "git bisect old [<rev>]\n"
+msgid "--ignore-blank-lines"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:155
-msgid "to indicate that a commit was before the sought change, or"
+#: en/diff-options.txt:660
+msgid "Ignore changes whose lines are all blank."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:158
+#. type: Labeled list
+#: en/diff-options.txt:661
 #, no-wrap
-msgid "git bisect new [<rev>...]\n"
+msgid "--inter-hunk-context=<lines>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:161
-msgid "to indicate that it was after."
+#: en/diff-options.txt:666
+msgid ""
+"Show the context between diff hunks, up to the specified number of lines, "
+"thereby fusing hunks that are close to each other.  Defaults to `diff."
+"interHunkContext` or 0 if the config option is unset."
 msgstr ""
 
-#. type: Plain text
-#: en/git-bisect.txt:163
-msgid "To get a reminder of the currently used terms, use"
+#. type: Labeled list
+#: en/diff-options.txt:667 en/git-cvsexportcommit.txt:77 en/git-grep.txt:261
+#, no-wrap
+msgid "-W"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:166
+#. type: Labeled list
+#: en/diff-options.txt:668 en/git-grep.txt:262
 #, no-wrap
-msgid "git bisect terms\n"
+msgid "--function-context"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:170
-msgid ""
-"You can get just the old (respectively new) term with `git bisect term "
-"--term-old` or `git bisect term --term-good`."
-msgstr ""
-
-#. type: Plain text
-#: en/git-bisect.txt:175
-msgid ""
-"If you would like to use your own terms instead of \"bad\"/\"good\" or "
-"\"new\"/\"old\", you can choose any names you like (except existing bisect "
-"subcommands like `reset`, `start`, ...) by starting the bisection using"
+#: en/diff-options.txt:670
+msgid "Show whole surrounding functions of changes."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:178
+#. type: Labeled list
+#: en/diff-options.txt:673 en/git-ls-remote.txt:46
 #, no-wrap
-msgid "git bisect start --term-old <term-old> --term-new <term-new>\n"
+msgid "--exit-code"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:182
+#: en/diff-options.txt:677
 msgid ""
-"For example, if you are looking for a commit that introduced a performance "
-"regression, you might use"
+"Make the program exit with codes similar to diff(1).  That is, it exits with "
+"1 if there were differences and 0 means no differences."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:185
+#. type: Labeled list
+#: en/diff-options.txt:678 en/fetch-options.txt:199 en/git-am.txt:74
+#: en/git-branch.txt:173 en/git-checkout-index.txt:31 en/git-checkout.txt:118
+#: en/git-clean.txt:52 en/git-clone.txt:118 en/git-commit.txt:314
+#: en/git-fast-import.txt:42 en/git-fetch-pack.txt:49
+#: en/git-format-patch.txt:296 en/git-gc.txt:87 en/git-grep.txt:296
+#: en/git-imap-send.txt:37 en/git-init.txt:42 en/git-ls-remote.txt:37
+#: en/git-notes.txt:207 en/git-prune-packed.txt:37 en/git-pull.txt:78
+#: en/git-push.txt:362 en/git-rebase.txt:310 en/git-reset.txt:97
+#: en/git-rev-parse.txt:114 en/git-rm.txt:67 en/git-send-email.txt:401
+#: en/git-show-ref.txt:71 en/git-submodule.txt:244 en/git-svn.txt:671
+#: en/git-symbolic-ref.txt:40 en/git-worktree.txt:185 en/merge-options.txt:122
+#: en/rev-list-options.txt:212
 #, no-wrap
-msgid "git bisect start --term-old fast --term-new slow\n"
+msgid "--quiet"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:188
-msgid "Or if you are looking for the commit that fixed a bug, you might use"
+#: en/diff-options.txt:680
+msgid "Disable all output of the program. Implies `--exit-code`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:191
+#. type: Labeled list
+#: en/diff-options.txt:683
 #, no-wrap
-msgid "git bisect start --term-new fixed --term-old broken\n"
+msgid "--ext-diff"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:195
+#: en/diff-options.txt:687
 msgid ""
-"Then, use `git bisect <term-old>` and `git bisect <term-new>` instead of "
-"`git bisect good` and `git bisect bad` to mark commits."
+"Allow an external diff helper to be executed. If you set an external diff "
+"driver with linkgit:gitattributes[5], you need to use this option with "
+"linkgit:git-log[1] and friends."
 msgstr ""
 
-#. type: Title ~
-#: en/git-bisect.txt:197
+#. type: Labeled list
+#: en/diff-options.txt:688
 #, no-wrap
-msgid "Bisect visualize"
+msgid "--no-ext-diff"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:201
-msgid ""
-"To see the currently remaining suspects in 'gitk', issue the following "
-"command during the bisection process:"
+#: en/diff-options.txt:690
+msgid "Disallow external diff drivers."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:204
+#. type: Labeled list
+#: en/diff-options.txt:691 en/git-cat-file.txt:60 en/git-grep.txt:105
 #, no-wrap
-msgid "$ git bisect visualize\n"
+msgid "--textconv"
 msgstr ""
 
-#. type: Plain text
-#: en/git-bisect.txt:207
-msgid "`view` may also be used as a synonym for `visualize`."
+#. type: Labeled list
+#: en/diff-options.txt:692 en/git-grep.txt:108
+#, no-wrap
+msgid "--no-textconv"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:211
+#: en/diff-options.txt:701
 msgid ""
-"If the `DISPLAY` environment variable is not set, 'git log' is used "
-"instead.  You can also give command-line options such as `-p` and `--stat`."
-msgstr ""
-
-#. type: delimited block -
-#: en/git-bisect.txt:214
-#, no-wrap
-msgid "$ git bisect view --stat\n"
+"Allow (or disallow) external text conversion filters to be run when "
+"comparing binary files. See linkgit:gitattributes[5] for details. Because "
+"textconv filters are typically a one-way conversion, the resulting diff is "
+"suitable for human consumption, but cannot be applied. For this reason, "
+"textconv filters are enabled by default only for linkgit:git-diff[1] and "
+"linkgit:git-log[1], but not for linkgit:git-format-patch[1] or diff plumbing "
+"commands."
 msgstr ""
 
-#. type: Title ~
-#: en/git-bisect.txt:217
+#. type: Labeled list
+#: en/diff-options.txt:702 en/git-status.txt:85
 #, no-wrap
-msgid "Bisect log and bisect replay"
+msgid "--ignore-submodules[=<when>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:221
+#: en/diff-options.txt:714
 msgid ""
-"After having marked revisions as good or bad, issue the following command to "
-"show what has been done so far:"
+"Ignore changes to submodules in the diff generation. <when> can be either "
+"\"none\", \"untracked\", \"dirty\" or \"all\", which is the default.  Using "
+"\"none\" will consider the submodule modified when it either contains "
+"untracked or modified files or its HEAD differs from the commit recorded in "
+"the superproject and can be used to override any settings of the 'ignore' "
+"option in linkgit:git-config[1] or linkgit:gitmodules[5]. When \"untracked\" "
+"is used submodules are not considered dirty when they only contain untracked "
+"content (but they are still scanned for modified content). Using \"dirty\" "
+"ignores all changes to the work tree of submodules, only changes to the "
+"commits stored in the superproject are shown (this was the behavior until "
+"1.7.0). Using \"all\" hides all changes to submodules."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:224
+#. type: Labeled list
+#: en/diff-options.txt:715
 #, no-wrap
-msgid "$ git bisect log\n"
+msgid "--src-prefix=<prefix>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:230
-msgid ""
-"If you discover that you made a mistake in specifying the status of a "
-"revision, you can save the output of this command to a file, edit it to "
-"remove the incorrect entries, and then issue the following commands to "
-"return to a corrected state:"
+#: en/diff-options.txt:717
+msgid "Show the given source prefix instead of \"a/\"."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:234
+#. type: Labeled list
+#: en/diff-options.txt:718
 #, no-wrap
-msgid ""
-"$ git bisect reset\n"
-"$ git bisect replay that-file\n"
+msgid "--dst-prefix=<prefix>"
 msgstr ""
 
-#. type: Title ~
-#: en/git-bisect.txt:237
-#, no-wrap
-msgid "Avoiding testing a commit"
+#. type: Plain text
+#: en/diff-options.txt:720
+msgid "Show the given destination prefix instead of \"b/\"."
 msgstr ""
 
-#. type: Plain text
-#: en/git-bisect.txt:244
-msgid ""
-"If, in the middle of a bisect session, you know that the suggested revision "
-"is not a good one to test (e.g. it fails to build and you know that the "
-"failure does not have anything to do with the bug you are chasing), you can "
-"manually select a nearby commit and test that one instead."
+#. type: Labeled list
+#: en/diff-options.txt:721
+#, no-wrap
+msgid "--no-prefix"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:246 en/git-tag.txt:337
-msgid "For example:"
+#: en/diff-options.txt:723
+msgid "Do not show any source or destination prefix."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:253
+#. type: Labeled list
+#: en/diff-options.txt:724
 #, no-wrap
-msgid ""
-"$ git bisect good/bad\t\t\t# previous round was good or bad.\n"
-"Bisecting: 337 revisions left to test after this (roughly 9 steps)\n"
-"$ git bisect visualize\t\t\t# oops, that is uninteresting.\n"
-"$ git reset --hard HEAD~3\t\t# try 3 revisions before what\n"
-"\t\t\t\t\t# was suggested\n"
+msgid "--line-prefix=<prefix>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:257
-msgid ""
-"Then compile and test the chosen revision, and afterwards mark the revision "
-"as good or bad in the usual manner."
+#: en/diff-options.txt:726
+msgid "Prepend an additional prefix to every line of output."
 msgstr ""
 
-#. type: Title ~
-#: en/git-bisect.txt:259
+#. type: Labeled list
+#: en/diff-options.txt:727
 #, no-wrap
-msgid "Bisect skip"
+msgid "--ita-invisible-in-index"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:263
+#: en/diff-options.txt:734
 msgid ""
-"Instead of choosing a nearby commit by yourself, you can ask Git to do it "
-"for you by issuing the command:"
+"By default entries added by \"git add -N\" appear as an existing empty file "
+"in \"git diff\" and a new file in \"git diff --cached\".  This option makes "
+"the entry appear as a new file in \"git diff\" and non-existent in \"git "
+"diff --cached\". This option could be reverted with `--ita-visible-in-"
+"index`. Both options are experimental and could be removed in future."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:266
+#. type: Plain text
+#: en/diff-options.txt:736
+msgid ""
+"For more detailed explanation on these common options, see also linkgit:"
+"gitdiffcore[7]."
+msgstr ""
+
+#. type: Labeled list
+#: en/fetch-options.txt:1 en/git-add.txt:123 en/git-branch.txt:154
+#: en/git-checkout-index.txt:39 en/git-commit.txt:65 en/git-describe.txt:50
+#: en/git-fetch-pack.txt:35 en/git-help.txt:46 en/git-http-push.txt:25
+#: en/git-merge-base.txt:72 en/git-name-rev.txt:42 en/git-pack-objects.txt:77
+#: en/git-pack-redundant.txt:32 en/git-pack-refs.txt:48 en/git-push.txt:149
+#: en/git-reflog.txt:72 en/git-rev-parse.txt:161 en/git-send-pack.txt:37
+#: en/git-show-branch.txt:48 en/git-submodule.txt:254
+#: en/rev-list-options.txt:138
 #, no-wrap
-msgid "$ git bisect skip                 # Current version cannot be tested\n"
+msgid "--all"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:271
-msgid ""
-"However, if you skip a commit adjacent to the one you are looking for, Git "
-"will be unable to tell exactly which of those commits was the first bad one."
+#: en/fetch-options.txt:3
+msgid "Fetch all remotes."
+msgstr ""
+
+#. type: Labeled list
+#: en/fetch-options.txt:5
+#, no-wrap
+msgid "--append"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:274
+#: en/fetch-options.txt:9
 msgid ""
-"You can also skip a range of commits, instead of just one commit, using "
-"range notation. For example:"
+"Append ref names and object names of fetched refs to the existing contents "
+"of `.git/FETCH_HEAD`.  Without this option old data in `.git/FETCH_HEAD` "
+"will be overwritten."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:277
+#. type: Labeled list
+#: en/fetch-options.txt:10
 #, no-wrap
-msgid "$ git bisect skip v2.5..v2.6\n"
+msgid "--depth=<depth>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:281
+#: en/fetch-options.txt:16
 msgid ""
-"This tells the bisect process that no commit after `v2.5`, up to and "
-"including `v2.6`, should be tested."
+"Limit fetching to the specified number of commits from the tip of each "
+"remote branch history. If fetching to a 'shallow' repository created by `git "
+"clone` with `--depth=<depth>` option (see linkgit:git-clone[1]), deepen or "
+"shorten the history to the specified number of commits. Tags for the "
+"deepened commits are not fetched."
+msgstr ""
+
+#. type: Labeled list
+#: en/fetch-options.txt:17
+#, no-wrap
+msgid "--deepen=<depth>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:284
+#: en/fetch-options.txt:21
 msgid ""
-"Note that if you also want to skip the first commit of the range you would "
-"issue the command:"
+"Similar to --depth, except it specifies the number of commits from the "
+"current shallow boundary instead of from the tip of each remote branch "
+"history."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:287
+#. type: Labeled list
+#: en/fetch-options.txt:22 en/git-clone.txt:206 en/git-fetch-pack.txt:90
 #, no-wrap
-msgid "$ git bisect skip v2.5 v2.5..v2.6\n"
+msgid "--shallow-since=<date>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:291
+#: en/fetch-options.txt:25 en/git-fetch-pack.txt:93
 msgid ""
-"This tells the bisect process that the commits between `v2.5` and `v2.6` "
-"(inclusive) should be skipped."
+"Deepen or shorten the history of a shallow repository to include all "
+"reachable commits after <date>."
 msgstr ""
 
-#. type: Title ~
-#: en/git-bisect.txt:294
+#. type: Labeled list
+#: en/fetch-options.txt:26 en/git-clone.txt:209 en/git-fetch-pack.txt:94
 #, no-wrap
-msgid "Cutting down bisection by giving more parameters to bisect start"
+msgid "--shallow-exclude=<revision>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:299
+#: en/fetch-options.txt:30 en/git-fetch-pack.txt:98
 msgid ""
-"You can further cut down the number of trials, if you know what part of the "
-"tree is involved in the problem you are tracking down, by specifying path "
-"parameters when issuing the `bisect start` command:"
+"Deepen or shorten the history of a shallow repository to exclude commits "
+"reachable from a specified remote branch or tag.  This option can be "
+"specified multiple times."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:302
+#. type: Labeled list
+#: en/fetch-options.txt:31
 #, no-wrap
-msgid "$ git bisect start -- arch/i386 include/asm-i386\n"
+msgid "--unshallow"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:307
+#: en/fetch-options.txt:35
 msgid ""
-"If you know beforehand more than one good commit, you can narrow the bisect "
-"space down by specifying all of the good commits immediately after the bad "
-"commit when issuing the `bisect start` command:"
+"If the source repository is complete, convert a shallow repository to a "
+"complete one, removing all the limitations imposed by shallow repositories."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:312
-#, no-wrap
+#. type: Plain text
+#: en/fetch-options.txt:38
 msgid ""
-"$ git bisect start v2.6.20-rc6 v2.6.20-rc4 v2.6.20-rc1 --\n"
-"                   # v2.6.20-rc6 is bad\n"
-"                   # v2.6.20-rc4 and v2.6.20-rc1 are good\n"
+"If the source repository is shallow, fetch as much as possible so that the "
+"current repository has the same history as the source repository."
 msgstr ""
 
-#. type: Title ~
-#: en/git-bisect.txt:315
+#. type: Labeled list
+#: en/fetch-options.txt:39
 #, no-wrap
-msgid "Bisect run"
+msgid "--update-shallow"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:319
+#: en/fetch-options.txt:44
 msgid ""
-"If you have a script that can tell if the current source code is good or "
-"bad, you can bisect by issuing the command:"
+"By default when fetching from a shallow repository, `git fetch` refuses refs "
+"that require updating .git/shallow. This option updates .git/shallow and "
+"accept such refs."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:322
+#. type: Labeled list
+#: en/fetch-options.txt:45
 #, no-wrap
-msgid "$ git bisect run my_script arguments\n"
+msgid "--negotiation-tip=<commit|glob>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:328
+#: en/fetch-options.txt:53
 msgid ""
-"Note that the script (`my_script` in the above example) should exit with "
-"code 0 if the current source code is good/old, and exit with a code between "
-"1 and 127 (inclusive), except 125, if the current source code is bad/new."
+"By default, Git will report, to the server, commits reachable from all local "
+"refs to find common commits in an attempt to reduce the size of the to-be-"
+"received packfile. If specified, Git will only report commits reachable from "
+"the given tips.  This is useful to speed up fetches when the user knows "
+"which local ref is likely to have commits in common with the upstream ref "
+"being fetched."
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:332
+#: en/fetch-options.txt:56
 msgid ""
-"Any other exit code will abort the bisect process. It should be noted that a "
-"program that terminates via `exit(-1)` leaves $? = 255, (see the exit(3) "
-"manual page), as the value is chopped with `& 0377`."
+"This option may be specified more than once; if so, Git will report commits "
+"reachable from any of the given commits."
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:341
+#: en/fetch-options.txt:60
 msgid ""
-"The special exit code 125 should be used when the current source code cannot "
-"be tested. If the script exits with this code, the current revision will be "
-"skipped (see `git bisect skip` above). 125 was chosen as the highest "
-"sensible value to use for this purpose, because 126 and 127 are used by "
-"POSIX shells to signal specific error status (127 is for command not found, "
-"126 is for command found but not executable--these details do not matter, as "
-"they are normal errors in the script, as far as `bisect run` is concerned)."
+"The argument to this option may be a glob on ref names, a ref, or the "
+"(possibly abbreviated) SHA-1 of a commit. Specifying a glob is equivalent to "
+"specifying this option multiple times, one for each matching ref name."
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:347
+#: en/fetch-options.txt:63
 msgid ""
-"You may often find that during a bisect session you want to have temporary "
-"modifications (e.g. s/#define DEBUG 0/#define DEBUG 1/ in a header file, or "
-"\"revision that does not have this commit needs this patch applied to work "
-"around another problem this bisection is not interested in\") applied to the "
-"revision being tested."
+"See also the `fetch.negotiationAlgorithm` configuration variable documented "
+"in linkgit:git-config[1]."
+msgstr ""
+
+#. type: Labeled list
+#: en/fetch-options.txt:65 en/git-add.txt:69 en/git-clean.txt:48
+#: en/git-commit.txt:317 en/git-http-push.txt:37 en/git-mv.txt:40
+#: en/git-notes.txt:179 en/git-p4.txt:332 en/git-prune-packed.txt:32
+#: en/git-prune.txt:37 en/git-push.txt:173 en/git-quiltimport.txt:35
+#: en/git-read-tree.txt:58 en/git-reflog.txt:120 en/git-rm.txt:44
+#: en/git-send-email.txt:392 en/git-send-pack.txt:51 en/git-svn.txt:687
+#: en/git-worktree.txt:175
+#, no-wrap
+msgid "--dry-run"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:355
-msgid ""
-"To cope with such a situation, after the inner 'git bisect' finds the next "
-"revision to test, the script can apply the patch before compiling, run the "
-"real test, and afterwards decide if the revision (possibly with the needed "
-"patch) passed the test and then rewind the tree to the pristine state.  "
-"Finally the script should exit with the status of the real test to let the "
-"`git bisect run` command loop determine the eventual outcome of the bisect "
-"session."
+#: en/fetch-options.txt:67
+msgid "Show what would be done, without making any changes."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-bisect.txt:358 en/git-clone.txt:134
+#: en/fetch-options.txt:69 en/git-add.txt:77 en/git-archimport.txt:81
+#: en/git-blame.txt:64 en/git-branch.txt:104 en/git-checkout-index.txt:34
+#: en/git-checkout.txt:127 en/git-clean.txt:34 en/git-cvsexportcommit.txt:54
+#: en/git-filter-branch.txt:195 en/git-ls-files.txt:137 en/git-mv.txt:31
+#: en/git-notes.txt:127 en/git-push.txt:324 en/git-rebase.txt:342
+#: en/git-repack.txt:70 en/git-replace.txt:60 en/git-rm.txt:39
+#: en/git-submodule.txt:266 en/git-tag.txt:72 en/git-update-server-info.txt:26
+#: en/git-worktree.txt:119
 #, no-wrap
-msgid "--no-checkout"
+msgid "-f"
 msgstr ""
 
-#. type: Plain text
-#: en/git-bisect.txt:363
-msgid ""
-"Do not checkout the new working tree at each iteration of the bisection "
-"process. Instead just update a special reference named `BISECT_HEAD` to make "
-"it point to the commit that should be tested."
+#. type: Labeled list
+#: en/fetch-options.txt:70 en/git-add.txt:78 en/git-branch.txt:105
+#: en/git-checkout-index.txt:35 en/git-checkout.txt:128 en/git-clean.txt:35
+#: en/git-fast-import.txt:37 en/git-filter-branch.txt:196 en/git-gc.txt:90
+#: en/git-http-push.txt:30 en/git-mv.txt:32 en/git-notes.txt:128
+#: en/git-push.txt:325 en/git-replace.txt:61 en/git-rm.txt:40
+#: en/git-send-email.txt:421 en/git-send-pack.txt:54 en/git-submodule.txt:267
+#: en/git-tag.txt:73 en/git-update-server-info.txt:27 en/git-worktree.txt:120
+#, no-wrap
+msgid "--force"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:366
+#: en/fetch-options.txt:73
 msgid ""
-"This option may be useful when the test you would perform in each step does "
-"not require a checked out tree."
+"When 'git fetch' is used with `<src>:<dst>` refspec it may refuse to update "
+"the local branch as discussed"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:368
-msgid "If the repository is bare, `--no-checkout` is assumed."
+#: en/fetch-options.txt:76
+#, no-wrap
+msgid ""
+"\tin the `<refspec>` part of the linkgit:git-fetch[1]\n"
+"\tdocumentation.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:373
-msgid "Automatically bisect a broken build between v1.2 and HEAD:"
+#: en/fetch-options.txt:79
+#, no-wrap
+msgid "\tin the `<refspec>` part below.\n"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:378
+#. type: Plain text
+#: en/fetch-options.txt:81
 #, no-wrap
-msgid ""
-"$ git bisect start HEAD v1.2 --      # HEAD is bad, v1.2 is good\n"
-"$ git bisect run make                # \"make\" builds the app\n"
-"$ git bisect reset                   # quit the bisect session\n"
+msgid "\tThis option overrides that check.\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-bisect.txt:381
-msgid "Automatically bisect a test failure between origin and HEAD:"
+#. type: Labeled list
+#: en/fetch-options.txt:82 en/git-am.txt:40 en/git-cvsexportcommit.txt:67
+#: en/git-cvsimport.txt:93 en/git-fetch-pack.txt:53 en/git-format-patch.txt:111
+#: en/git-ls-files.txt:74 en/git-mailinfo.txt:27 en/git-mv.txt:34
+#: en/git-repack.txt:156
+#, no-wrap
+msgid "-k"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:386
+#. type: Labeled list
+#: en/fetch-options.txt:83 en/git-am.txt:41 en/git-fetch-pack.txt:54
+#: en/git-index-pack.txt:54 en/git-reset.txt:82
 #, no-wrap
-msgid ""
-"$ git bisect start HEAD origin --    # HEAD is bad, origin is good\n"
-"$ git bisect run make test           # \"make test\" builds and tests\n"
-"$ git bisect reset                   # quit the bisect session\n"
+msgid "--keep"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:389 en/git-bisect.txt:443
-msgid "Automatically bisect a broken test case:"
+#: en/fetch-options.txt:85
+msgid "Keep downloaded pack."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:398
+#. type: Labeled list
+#: en/fetch-options.txt:87
 #, no-wrap
-msgid ""
-"$ cat ~/test.sh\n"
-"#!/bin/sh\n"
-"make || exit 125                     # this skips broken builds\n"
-"~/check_test_case.sh                 # does the test case pass?\n"
-"$ git bisect start HEAD HEAD~10 --   # culprit is among the last 10\n"
-"$ git bisect run ~/test.sh\n"
-"$ git bisect reset                   # quit the bisect session\n"
+msgid "--multiple"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:404
+#: en/fetch-options.txt:90
 msgid ""
-"Here we use a `test.sh` custom script. In this script, if `make` fails, we "
-"skip the current commit.  `check_test_case.sh` should `exit 0` if the test "
-"case passes, and `exit 1` otherwise."
+"Allow several <repository> and <group> arguments to be specified. No "
+"<refspec>s may be specified."
+msgstr ""
+
+#. type: Labeled list
+#: en/fetch-options.txt:92 en/git-push.txt:153
+#, no-wrap
+msgid "--prune"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:408
+#: en/fetch-options.txt:102
 msgid ""
-"It is safer if both `test.sh` and `check_test_case.sh` are outside the "
-"repository to prevent interactions between the bisect, make and test "
-"processes and the scripts."
+"Before fetching, remove any remote-tracking references that no longer exist "
+"on the remote.  Tags are not subject to pruning if they are fetched only "
+"because of the default tag auto-following or due to a --tags option.  "
+"However, if tags are fetched due to an explicit refspec (either on the "
+"command line or in the remote configuration, for example if the remote was "
+"cloned with the --mirror option), then they are also subject to pruning. "
+"Supplying `--prune-tags` is a shorthand for providing the tag refspec."
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:410
-msgid "Automatically bisect with temporary modifications (hot-fix):"
+#: en/fetch-options.txt:104 en/fetch-options.txt:115
+msgid "See the PRUNING section below for more details."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:414
+#. type: Labeled list
+#: en/fetch-options.txt:105 en/git-cvsexportcommit.txt:57 en/git-grep.txt:165
+#: en/git.txt:106 en/rev-list-options.txt:92
 #, no-wrap
-msgid ""
-"$ cat ~/test.sh\n"
-"#!/bin/sh\n"
+msgid "-P"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:427
+#. type: Labeled list
+#: en/fetch-options.txt:106
 #, no-wrap
+msgid "--prune-tags"
+msgstr ""
+
+#. type: Plain text
+#: en/fetch-options.txt:113
 msgid ""
-"# tweak the working tree by merging the hot-fix branch\n"
-"# and then attempt a build\n"
-"if\tgit merge --no-commit hot-fix &&\n"
-"\tmake\n"
-"then\n"
-"\t# run project specific test and report its status\n"
-"\t~/check_test_case.sh\n"
-"\tstatus=$?\n"
-"else\n"
-"\t# tell the caller this is untestable\n"
-"\tstatus=125\n"
-"fi\n"
+"Before fetching, remove any local tags that no longer exist on the remote if "
+"`--prune` is enabled. This option should be used more carefully, unlike `--"
+"prune` it will remove any local references (local tags) that have been "
+"created. This option is a shorthand for providing the explicit tag refspec "
+"along with `--prune`, see the discussion about that in its documentation."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:430
+#. type: Labeled list
+#: en/fetch-options.txt:119 en/git-add.txt:68 en/git-blame.txt:70
+#: en/git-checkout-index.txt:43 en/git-cherry-pick.txt:87 en/git-clean.txt:47
+#: en/git-clone.txt:135 en/git-commit.txt:174 en/git-format-patch.txt:96
+#: en/git-grep.txt:178 en/git-mailinfo.txt:66 en/git-mv.txt:39
+#: en/git-notes.txt:178 en/git-p4.txt:331 en/git-prune-packed.txt:31
+#: en/git-prune.txt:36 en/git-push.txt:172 en/git-quiltimport.txt:34
+#: en/git-read-tree.txt:57 en/git-rebase.txt:321 en/git-reflog.txt:119
+#: en/git-repack.txt:82 en/git-revert.txt:69 en/git-rm.txt:43
+#: en/git-shortlog.txt:29 en/git-submodule.txt:289 en/git-svn.txt:686
+#: en/git-unpack-objects.txt:30 en/git-worktree.txt:174 en/merge-options.txt:73
 #, no-wrap
-msgid ""
-"# undo the tweak to allow clean flipping to the next commit\n"
-"git reset --hard\n"
+msgid "-n"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:433
+#. type: Labeled list
+#: en/fetch-options.txt:121 en/git-clone.txt:224
 #, no-wrap
-msgid ""
-"# return control\n"
-"exit $status\n"
+msgid "--no-tags"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:441
+#: en/fetch-options.txt:127
 msgid ""
-"This applies modifications from a hot-fix branch before each test run, "
-"e.g. in case your build or test environment changed so that older revisions "
-"may need a fix which newer ones have already. (Make sure the hot-fix branch "
-"is based off a commit which is contained in all revisions which you are "
-"bisecting, so that the merge does not pull in too much, or use `git "
-"cherry-pick` instead of `git merge`.)"
+"By default, tags that point at objects that are downloaded from the remote "
+"repository are fetched and stored locally.  This option disables this "
+"automatic tag following. The default behavior for a remote may be specified "
+"with the remote.<name>.tagOpt setting. See linkgit:git-config[1]."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:448
+#. type: Labeled list
+#: en/fetch-options.txt:129
 #, no-wrap
-msgid ""
-"$ git bisect start HEAD HEAD~10 --   # culprit is among the last 10\n"
-"$ git bisect run sh -c \"make || exit 125; ~/check_test_case.sh\"\n"
-"$ git bisect reset                   # quit the bisect session\n"
+msgid "--refmap=<refspec>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:452
+#: en/fetch-options.txt:136
 msgid ""
-"This shows that you can do without a run script if you write the test on a "
-"single line."
+"When fetching refs listed on the command line, use the specified refspec "
+"(can be given more than once) to map the refs to remote-tracking branches, "
+"instead of the values of `remote.*.fetch` configuration variables for the "
+"remote repository.  See section on \"Configured Remote-tracking Branches\" "
+"for details."
 msgstr ""
 
-#. type: Plain text
-#: en/git-bisect.txt:454
-msgid "Locate a good region of the object graph in a damaged repository"
+#. type: Labeled list
+#: en/fetch-options.txt:138 en/git-describe.txt:55 en/git-fsck.txt:41
+#: en/git-ls-remote.txt:27 en/git-name-rev.txt:24 en/git-push.txt:186
+#: en/git-show-ref.txt:41
+#, no-wrap
+msgid "--tags"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:464
-#, no-wrap
+#. type: Plain text
+#: en/fetch-options.txt:145
 msgid ""
-"$ git bisect start HEAD <known-good-commit> [ <boundary-commit> ... ] "
-"--no-checkout\n"
-"$ git bisect run sh -c '\n"
-"\tGOOD=$(git for-each-ref \"--format=%(objectname)\" refs/bisect/good-*) "
-"&&\n"
-"\tgit rev-list --objects BISECT_HEAD --not $GOOD >tmp.$$ &&\n"
-"\tgit pack-objects --stdout >/dev/null <tmp.$$\n"
-"\trc=$?\n"
-"\trm -f tmp.$$\n"
-"\ttest $rc = 0'\n"
+"Fetch all tags from the remote (i.e., fetch remote tags `refs/tags/*` into "
+"local tags with the same name), in addition to whatever else would otherwise "
+"be fetched.  Using this option alone does not subject tags to pruning, even "
+"if --prune is used (though tags may be pruned anyway if they are also the "
+"destination of an explicit refspec; see `--prune`)."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:466
+#. type: Labeled list
+#: en/fetch-options.txt:146
 #, no-wrap
-msgid "$ git bisect reset                   # quit the bisect session\n"
+msgid "--recurse-submodules[=yes|on-demand|no]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:471
+#: en/fetch-options.txt:156
 msgid ""
-"In this case, when 'git bisect run' finishes, bisect/bad will refer to a "
-"commit that has at least one parent whose reachable graph is fully "
-"traversable in the sense required by 'git pack objects'."
+"This option controls if and under what conditions new commits of populated "
+"submodules should be fetched too. It can be used as a boolean option to "
+"completely disable recursion when set to 'no' or to unconditionally recurse "
+"into all populated submodules when set to 'yes', which is the default when "
+"this option is used without any value. Use 'on-demand' to only recurse into "
+"a populated submodule when the superproject retrieves a commit that updates "
+"the submodule's reference to a commit that isn't already in the local "
+"submodule clone."
 msgstr ""
 
-#. type: Plain text
-#: en/git-bisect.txt:473
-msgid "Look for a fix instead of a regression in the code"
+#. type: Labeled list
+#: en/fetch-options.txt:157
+#, no-wrap
+msgid "-j"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:478
+#. type: Labeled list
+#: en/fetch-options.txt:158
 #, no-wrap
-msgid ""
-"$ git bisect start\n"
-"$ git bisect new HEAD    # current commit is marked as new\n"
-"$ git bisect old HEAD~10 # the tenth commit from now is marked as old\n"
+msgid "--jobs=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:481
-msgid "or:"
+#: en/fetch-options.txt:163
+msgid ""
+"Number of parallel children to be used for fetching submodules.  Each will "
+"fetch from different submodules, such that fetching many submodules will be "
+"faster. By default submodules will be fetched one at a time."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bisect.txt:485
+#. type: Labeled list
+#: en/fetch-options.txt:164 en/git-push.txt:377
 #, no-wrap
+msgid "--no-recurse-submodules"
+msgstr ""
+
+#. type: Plain text
+#: en/fetch-options.txt:167
 msgid ""
-"$ git bisect start --term-old broken --term-new fixed\n"
-"$ git bisect fixed\n"
-"$ git bisect broken HEAD~10\n"
+"Disable recursive fetching of submodules (this has the same effect as using "
+"the `--recurse-submodules=no` option)."
 msgstr ""
 
-#. type: Title ~
-#: en/git-bisect.txt:488
+#. type: Labeled list
+#: en/fetch-options.txt:168
 #, no-wrap
-msgid "Getting help"
+msgid "--submodule-prefix=<path>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:492
+#: en/fetch-options.txt:172
 msgid ""
-"Use `git bisect` to get a short usage description, and `git bisect help` or "
-"`git bisect -h` to get a long usage description."
+"Prepend <path> to paths printed in informative messages such as \"Fetching "
+"submodule foo\".  This option is used internally when recursing over "
+"submodules."
+msgstr ""
+
+#. type: Labeled list
+#: en/fetch-options.txt:173
+#, no-wrap
+msgid "--recurse-submodules-default=[yes|on-demand]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bisect.txt:497
+#: en/fetch-options.txt:180
 msgid ""
-"link:git-bisect-lk2009.html[Fighting regressions with git bisect], "
-"linkgit:git-blame[1]."
+"This option is used internally to temporarily provide a non-negative default "
+"value for the --recurse-submodules option.  All other methods of configuring "
+"fetch's submodule recursion (such as settings in linkgit:gitmodules[5] and "
+"linkgit:git-config[1]) override this option, as does specifying --"
+"[no-]recurse-submodules directly."
 msgstr ""
 
-#. type: Title =
-#: en/git-blame.txt:2
+#. type: Labeled list
+#: en/fetch-options.txt:183
 #, no-wrap
-msgid "git-blame(1)"
+msgid "--update-head-ok"
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:7
-msgid "git-blame - Show what revision and author last modified each line of a file"
+#: en/fetch-options.txt:190
+msgid ""
+"By default 'git fetch' refuses to update the head which corresponds to the "
+"current branch.  This flag disables the check.  This is purely for the "
+"internal use for 'git pull' to communicate with 'git fetch', and unless you "
+"are implementing your own Porcelain you are not supposed to use it."
 msgstr ""
 
-#. type: Plain text
-#: en/git-blame.txt:15
+#. type: Labeled list
+#: en/fetch-options.txt:191 en/git-clone.txt:172
 #, no-wrap
-msgid ""
-"'git blame' [-c] [-b] [-l] [--root] [-t] [-f] [-n] [-s] [-e] [-p] [-w] "
-"[--incremental]\n"
-"\t    [-L <range>] [-S <revs-file>] [-M] [-C] [-C] [-C] [--since=<date>]\n"
-"\t    [--progress] [--abbrev=<n>] [<rev> | --contents <file> | --reverse "
-"<rev>..<rev>]\n"
-"\t    [--] <file>\n"
+msgid "--upload-pack <upload-pack>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:21
+#: en/fetch-options.txt:196
 msgid ""
-"Annotates each line in the given file with information from the revision "
-"which last modified the line. Optionally, start annotating from the given "
-"revision."
+"When given, and the repository to fetch from is handled by 'git fetch-pack', "
+"`--exec=<upload-pack>` is passed to the command to specify non-default path "
+"for the command run on the other end."
 msgstr ""
 
-#. type: Plain text
-#: en/git-blame.txt:24
-msgid ""
-"When specified one or more times, `-L` restricts annotation to the requested "
-"lines."
+#. type: Labeled list
+#: en/fetch-options.txt:198 en/git-am.txt:73 en/git-branch.txt:172
+#: en/git-checkout-index.txt:30 en/git-checkout.txt:117 en/git-clean.txt:51
+#: en/git-clone.txt:119 en/git-commit.txt:313 en/git-diff-files.txt:44
+#: en/git-fetch-pack.txt:48 en/git-format-patch.txt:295 en/git-grep.txt:295
+#: en/git-imap-send.txt:36 en/git-init.txt:41 en/git-ls-remote.txt:36
+#: en/git-merge-file.txt:67 en/git-merge-index.txt:35 en/git-notes.txt:206
+#: en/git-pack-objects.txt:173 en/git-prune-packed.txt:36 en/git-pull.txt:77
+#: en/git-push.txt:361 en/git-rebase.txt:309 en/git-repack.txt:78
+#: en/git-reset.txt:96 en/git-rev-parse.txt:113 en/git-rm.txt:66
+#: en/git-show-ref.txt:70 en/git-submodule.txt:243 en/git-svn.txt:670
+#: en/git-symbolic-ref.txt:39 en/git-unpack-objects.txt:34
+#: en/git-update-index.txt:58 en/git-worktree.txt:184 en/merge-options.txt:121
+#, no-wrap
+msgid "-q"
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:30
+#: en/fetch-options.txt:203
 msgid ""
-"The origin of lines is automatically followed across whole-file renames "
-"(currently there is no option to turn the rename-following off). To follow "
-"lines moved from one file to another, or to follow lines that were copied "
-"and pasted from another file, etc., see the `-C` and `-M` options."
-msgstr ""
-
-#. type: Plain text
-#: en/git-blame.txt:34
-msgid ""
-"The report does not tell you anything about lines which have been deleted or "
-"replaced; you need to use a tool such as 'git diff' or the \"pickaxe\" "
-"interface briefly mentioned in the following paragraph."
+"Pass --quiet to git-fetch-pack and silence any other internally used git "
+"commands. Progress is not reported to the standard error stream."
 msgstr ""
 
-#. type: Plain text
-#: en/git-blame.txt:41
-msgid ""
-"Apart from supporting file annotation, Git also supports searching the "
-"development history for when a code snippet occurred in a change. This makes "
-"it possible to track when a code snippet was added to a file, moved or "
-"copied between files, and eventually deleted or replaced. It works by "
-"searching for a text string in the diff. A small example of the pickaxe "
-"interface that searches for `blame_usage`:"
+#. type: Labeled list
+#: en/fetch-options.txt:204 en/git-add.txt:73 en/git-apply.txt:224
+#: en/git-archimport.txt:74 en/git-archive.txt:47 en/git-branch.txt:163
+#: en/git-cherry.txt:29 en/git-clone.txt:124 en/git-commit.txt:298
+#: en/git-count-objects.txt:21 en/git-cvsexportcommit.txt:82
+#: en/git-cvsimport.txt:52 en/git-diff-tree.txt:78 en/git-fetch-pack.txt:111
+#: en/git-grep.txt:140 en/git-http-fetch.txt:30 en/git-imap-send.txt:32
+#: en/git-index-pack.txt:27 en/git-ls-files.txt:132 en/git-mv.txt:43
+#: en/git-notes.txt:210 en/git-p4.txt:208 en/git-prune.txt:41
+#: en/git-pull.txt:83 en/git-push.txt:367 en/git-read-tree.txt:62
+#: en/git-rebase.txt:313 en/git-remote.txt:35 en/git-status.txt:50
+#: en/git-svn.txt:366 en/git-tag.txt:80 en/git-verify-commit.txt:23
+#: en/git-verify-pack.txt:26 en/git-verify-tag.txt:23 en/git-worktree.txt:188
+#: en/merge-options.txt:125
+#, no-wrap
+msgid "-v"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-blame.txt:46
+#. type: Labeled list
+#: en/fetch-options.txt:205 en/git-add.txt:74 en/git-apply.txt:225
+#: en/git-archive.txt:48 en/git-branch.txt:165 en/git-clone.txt:123
+#: en/git-commit.txt:299 en/git-count-objects.txt:22 en/git-daemon.txt:148
+#: en/git-fsck.txt:77 en/git-help.txt:50 en/git-http-push.txt:40
+#: en/git-imap-send.txt:33 en/git-mv.txt:44 en/git-notes.txt:211
+#: en/git-p4.txt:209 en/git-pack-redundant.txt:39 en/git-prune.txt:42
+#: en/git-pull.txt:84 en/git-push.txt:368 en/git-rebase.txt:314
+#: en/git-reflog.txt:124 en/git-remote.txt:36 en/git-send-pack.txt:61
+#: en/git-status.txt:51 en/git-svn.txt:367 en/git-update-index.txt:153
+#: en/git-verify-commit.txt:24 en/git-verify-pack.txt:27
+#: en/git-verify-tag.txt:24 en/git-worktree.txt:189 en/merge-options.txt:126
 #, no-wrap
-msgid ""
-"$ git log --pretty=oneline -S'blame_usage'\n"
-"5040f17eba15504bad66b14a645bddd9b015ebb7 blame -S <ancestry-file>\n"
-"ea4c7f9bf69e781dd0cd88d2bccb2bf5cc15c9a7 git-blame: Make the output\n"
+msgid "--verbose"
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:54
-msgid "Use the same output mode as linkgit:git-annotate[1] (Default: off)."
+#: en/fetch-options.txt:207 en/git-add.txt:76 en/git-imap-send.txt:35
+#: en/merge-options.txt:128
+msgid "Be verbose."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-blame.txt:55
+#: en/fetch-options.txt:209 en/git-clone.txt:128 en/git-format-patch.txt:321
+#: en/git-pack-objects.txt:151 en/git-prune.txt:45 en/git-push.txt:371
+#: en/git-submodule.txt:247 en/merge-options.txt:129
 #, no-wrap
-msgid "--score-debug"
+msgid "--progress"
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:63
+#: en/fetch-options.txt:214 en/git-clone.txt:133 en/git-pack-objects.txt:156
+#: en/git-push.txt:376
 msgid ""
-"Include debugging information related to the movement of lines between files "
-"(see `-C`) and lines moved within a file (see `-M`).  The first number "
-"listed is the score.  This is the number of alphanumeric characters detected "
-"as having been moved between or within files.  This must be above a certain "
-"threshold for 'git blame' to consider those lines of code to have been "
-"moved."
+"Progress status is reported on the standard error stream by default when it "
+"is attached to a terminal, unless -q is specified. This flag forces progress "
+"status even if the standard error stream is not directed to a terminal."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-blame.txt:65
+#: en/fetch-options.txt:215 en/git-ls-remote.txt:73 en/git-push.txt:215
 #, no-wrap
-msgid "--show-name"
-msgstr ""
-
-#. type: Plain text
-#: en/git-blame.txt:69
-msgid ""
-"Show the filename in the original commit.  By default the filename is shown "
-"if there is any line that came from a file with a different name, due to "
-"rename detection."
+msgid "-o <option>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-blame.txt:71
+#: en/fetch-options.txt:216 en/git-ls-remote.txt:74
 #, no-wrap
-msgid "--show-number"
+msgid "--server-option=<option>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:73
-msgid "Show the line number in the original commit (Default: off)."
+#: en/fetch-options.txt:222 en/git-ls-remote.txt:80
+msgid ""
+"Transmit the given string to the server when communicating using protocol "
+"version 2.  The given string must not contain a NUL or LF character.  When "
+"multiple `--server-option=<option>` are given, they are all sent to the "
+"other side in the order listed on the command line."
 msgstr ""
 
-#. type: Plain text
-#: en/git-blame.txt:76
-msgid "Suppress the author name and timestamp from the output."
+#. type: Labeled list
+#: en/fetch-options.txt:223 en/git-push.txt:398
+#, no-wrap
+msgid "-4"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-blame.txt:78
+#: en/fetch-options.txt:224 en/git-push.txt:399
 #, no-wrap
-msgid "--show-email"
+msgid "--ipv4"
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:82
-msgid ""
-"Show the author email instead of author name (Default: off).  This can also "
-"be controlled via the `blame.showEmail` config option."
+#: en/fetch-options.txt:226 en/git-push.txt:401
+msgid "Use IPv4 addresses only, ignoring IPv6 addresses."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-blame.txt:83 en/git-cvsexportcommit.txt:71 en/git-grep.txt:131 en/git-hash-object.txt:31 en/git-help.txt:66 en/diff-options.txt:531
+#: en/fetch-options.txt:227 en/git-push.txt:402
 #, no-wrap
-msgid "-w"
-msgstr ""
-
-#. type: Plain text
-#: en/git-blame.txt:86
-msgid ""
-"Ignore whitespace when comparing the parent's version and the child's to "
-"find where the lines came from."
+msgid "-6"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-blame.txt:87 en/git-describe.txt:52
+#: en/fetch-options.txt:228 en/git-push.txt:403
 #, no-wrap
-msgid "--abbrev=<n>"
+msgid "--ipv6"
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:91
-msgid ""
-"Instead of using the default 7+1 hexadecimal digits as the abbreviated "
-"object name, use <n>+1 digits. Note that 1 column is used for a caret to "
-"mark the boundary commit."
+#: en/fetch-options.txt:229 en/git-push.txt:405
+msgid "Use IPv6 addresses only, ignoring IPv4 addresses."
 msgstr ""
 
-#. type: Title -
-#: en/git-blame.txt:96
+#. type: Title =
+#: en/git-add.txt:2
 #, no-wrap
-msgid "THE PORCELAIN FORMAT"
+msgid "git-add(1)"
 msgstr ""
 
-#. type: Plain text
-#: en/git-blame.txt:100
-msgid ""
-"In this format, each line is output after a header; the header at the "
-"minimum has the first line which has:"
+#. type: Title -
+#: en/git-add.txt:5 en/git-am.txt:5 en/git-annotate.txt:5 en/git-apply.txt:5
+#: en/git-archimport.txt:5 en/git-archive.txt:5 en/git-bisect.txt:5
+#: en/git-blame.txt:5 en/git-branch.txt:5 en/git-bundle.txt:5
+#: en/git-cat-file.txt:5 en/git-check-attr.txt:5 en/git-check-ignore.txt:5
+#: en/git-check-mailmap.txt:5 en/git-checkout-index.txt:5 en/git-checkout.txt:5
+#: en/git-check-ref-format.txt:5 en/git-cherry-pick.txt:5 en/git-cherry.txt:5
+#: en/git-citool.txt:5 en/git-clean.txt:5 en/git-clone.txt:5
+#: en/git-column.txt:5 en/git-commit-tree.txt:5 en/git-commit.txt:5
+#: en/git-config.txt:5 en/git-count-objects.txt:5
+#: en/git-credential-cache--daemon.txt:5 en/git-credential-cache.txt:5
+#: en/git-credential-store.txt:5 en/git-credential.txt:5
+#: en/git-cvsexportcommit.txt:5 en/git-cvsimport.txt:5 en/git-cvsserver.txt:5
+#: en/git-daemon.txt:5 en/git-describe.txt:5 en/git-diff-files.txt:5
+#: en/git-diff-index.txt:5 en/git-difftool.txt:5 en/git-diff-tree.txt:5
+#: en/git-diff.txt:5 en/git-fast-export.txt:5 en/git-fast-import.txt:5
+#: en/git-fetch-pack.txt:5 en/git-fetch.txt:5 en/git-filter-branch.txt:5
+#: en/git-fmt-merge-msg.txt:5 en/git-for-each-ref.txt:5
+#: en/git-format-patch.txt:5 en/git-fsck-objects.txt:5 en/git-fsck.txt:5
+#: en/git-gc.txt:5 en/git-get-tar-commit-id.txt:5 en/git-grep.txt:5
+#: en/git-gui.txt:5 en/git-hash-object.txt:5 en/git-help.txt:5
+#: en/git-http-backend.txt:5 en/git-http-fetch.txt:5 en/git-http-push.txt:5
+#: en/git-imap-send.txt:5 en/git-index-pack.txt:5 en/git-init-db.txt:5
+#: en/git-init.txt:5 en/git-instaweb.txt:5 en/git-interpret-trailers.txt:5
+#: en/git-log.txt:5 en/git-ls-files.txt:5 en/git-ls-remote.txt:5
+#: en/git-ls-tree.txt:5 en/git-mailinfo.txt:5 en/git-mailsplit.txt:5
+#: en/git-merge-base.txt:5 en/git-merge-file.txt:5 en/git-merge-index.txt:5
+#: en/git-merge-one-file.txt:5 en/git-mergetool--lib.txt:5
+#: en/git-mergetool.txt:5 en/git-merge-tree.txt:5 en/git-merge.txt:5
+#: en/git-mktag.txt:5 en/git-mktree.txt:5 en/git-mv.txt:5 en/git-name-rev.txt:5
+#: en/git-notes.txt:5 en/git-p4.txt:5 en/git-pack-objects.txt:5
+#: en/git-pack-redundant.txt:5 en/git-pack-refs.txt:5 en/git-parse-remote.txt:5
+#: en/git-patch-id.txt:5 en/git-prune-packed.txt:5 en/git-prune.txt:5
+#: en/git-pull.txt:5 en/git-push.txt:5 en/git-quiltimport.txt:5
+#: en/git-read-tree.txt:5 en/git-rebase.txt:5 en/git-receive-pack.txt:5
+#: en/git-reflog.txt:5 en/git-remote-ext.txt:5 en/git-remote-fd.txt:5
+#: en/git-remote-testgit.txt:5 en/git-remote.txt:5 en/git-repack.txt:5
+#: en/git-replace.txt:5 en/git-request-pull.txt:5 en/git-rerere.txt:5
+#: en/git-reset.txt:5 en/git-revert.txt:5 en/git-rev-list.txt:5
+#: en/git-rev-parse.txt:5 en/git-rm.txt:5 en/git-send-email.txt:5
+#: en/git-send-pack.txt:5 en/git-shell.txt:5 en/git-sh-i18n--envsubst.txt:5
+#: en/git-sh-i18n.txt:5 en/git-shortlog.txt:5 en/git-show-branch.txt:5
+#: en/git-show-index.txt:5 en/git-show-ref.txt:5 en/git-show.txt:5
+#: en/git-sh-setup.txt:5 en/git-stage.txt:5 en/git-stash.txt:5
+#: en/git-status.txt:5 en/git-stripspace.txt:5 en/git-submodule.txt:5
+#: en/git-svn.txt:5 en/git-symbolic-ref.txt:5 en/git-tag.txt:5 en/git.txt:5
+#: en/git-unpack-file.txt:5 en/git-unpack-objects.txt:5
+#: en/git-update-index.txt:5 en/git-update-ref.txt:5
+#: en/git-update-server-info.txt:5 en/git-upload-archive.txt:5
+#: en/git-upload-pack.txt:5 en/git-var.txt:5 en/git-verify-commit.txt:5
+#: en/git-verify-pack.txt:5 en/git-verify-tag.txt:5 en/git-web--browse.txt:5
+#: en/git-whatchanged.txt:5 en/git-worktree.txt:5 en/git-write-tree.txt:5
+#, no-wrap
+msgid "NAME"
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:102
-msgid "40-byte SHA-1 of the commit the line is attributed to;"
+#: en/git-add.txt:7
+msgid "git-add - Add file contents to the index"
 msgstr ""
 
-#. type: Plain text
-#: en/git-blame.txt:103
-msgid "the line number of the line in the original file;"
+#. type: Title -
+#: en/git-add.txt:9 en/git-am.txt:10 en/git-annotate.txt:9 en/git-apply.txt:10
+#: en/git-archimport.txt:10 en/git-archive.txt:10 en/git-bisect.txt:10
+#: en/git-blame.txt:9 en/git-branch.txt:9 en/git-bundle.txt:10
+#: en/git-cat-file.txt:10 en/git-check-attr.txt:10 en/git-check-ignore.txt:10
+#: en/git-check-mailmap.txt:10 en/git-checkout-index.txt:10
+#: en/git-checkout.txt:9 en/git-check-ref-format.txt:9 en/git-cherry-pick.txt:9
+#: en/git-cherry.txt:9 en/git-citool.txt:9 en/git-clean.txt:9
+#: en/git-clone.txt:10 en/git-column.txt:9 en/git-commit-tree.txt:10
+#: en/git-commit.txt:9 en/git-config.txt:10 en/git-count-objects.txt:9
+#: en/git-credential-cache--daemon.txt:9 en/git-credential-cache.txt:9
+#: en/git-credential-store.txt:9 en/git-credential.txt:9
+#: en/git-cvsexportcommit.txt:10 en/git-cvsimport.txt:10 en/git-cvsserver.txt:9
+#: en/git-daemon.txt:9 en/git-describe.txt:9 en/git-diff-files.txt:10
+#: en/git-diff-index.txt:10 en/git-difftool.txt:9 en/git-diff-tree.txt:10
+#: en/git-diff.txt:10 en/git-fast-export.txt:10 en/git-fast-import.txt:10
+#: en/git-fetch-pack.txt:10 en/git-fetch.txt:10 en/git-filter-branch.txt:9
+#: en/git-fmt-merge-msg.txt:10 en/git-for-each-ref.txt:9
+#: en/git-format-patch.txt:10 en/git-fsck-objects.txt:10 en/git-fsck.txt:10
+#: en/git-gc.txt:10 en/git-get-tar-commit-id.txt:10 en/git-grep.txt:10
+#: en/git-gui.txt:9 en/git-hash-object.txt:10 en/git-help.txt:9
+#: en/git-http-backend.txt:9 en/git-http-fetch.txt:10 en/git-http-push.txt:10
+#: en/git-imap-send.txt:10 en/git-index-pack.txt:10 en/git-init-db.txt:10
+#: en/git-init.txt:10 en/git-instaweb.txt:9 en/git-interpret-trailers.txt:9
+#: en/git-log.txt:10 en/git-ls-files.txt:10 en/git-ls-remote.txt:10
+#: en/git-ls-tree.txt:10 en/git-mailinfo.txt:10 en/git-mailsplit.txt:9
+#: en/git-merge-base.txt:10 en/git-merge-file.txt:10 en/git-merge-index.txt:10
+#: en/git-merge-one-file.txt:10 en/git-mergetool--lib.txt:9
+#: en/git-mergetool.txt:9 en/git-merge-tree.txt:10 en/git-merge.txt:10
+#: en/git-mktag.txt:10 en/git-mktree.txt:10 en/git-mv.txt:10
+#: en/git-name-rev.txt:10 en/git-notes.txt:9 en/git-p4.txt:10
+#: en/git-pack-objects.txt:10 en/git-pack-redundant.txt:10
+#: en/git-pack-refs.txt:9 en/git-parse-remote.txt:10 en/git-patch-id.txt:9
+#: en/git-prune-packed.txt:10 en/git-prune.txt:10 en/git-pull.txt:10
+#: en/git-push.txt:10 en/git-quiltimport.txt:10 en/git-read-tree.txt:10
+#: en/git-rebase.txt:9 en/git-receive-pack.txt:10 en/git-reflog.txt:10
+#: en/git-remote-ext.txt:9 en/git-remote-fd.txt:9 en/git-remote-testgit.txt:10
+#: en/git-remote.txt:10 en/git-repack.txt:10 en/git-replace.txt:9
+#: en/git-request-pull.txt:9 en/git-rerere.txt:9 en/git-reset.txt:9
+#: en/git-revert.txt:9 en/git-rev-list.txt:10 en/git-rev-parse.txt:10
+#: en/git-rm.txt:9 en/git-send-email.txt:10 en/git-send-pack.txt:10
+#: en/git-shell.txt:10 en/git-sh-i18n--envsubst.txt:9 en/git-sh-i18n.txt:9
+#: en/git-shortlog.txt:9 en/git-show-branch.txt:9 en/git-show-index.txt:10
+#: en/git-show-ref.txt:9 en/git-show.txt:10 en/git-sh-setup.txt:9
+#: en/git-stage.txt:10 en/git-stash.txt:9 en/git-status.txt:10
+#: en/git-stripspace.txt:10 en/git-submodule.txt:10 en/git-svn.txt:9
+#: en/git-symbolic-ref.txt:9 en/git-tag.txt:10 en/git.txt:10
+#: en/git-unpack-file.txt:11 en/git-unpack-objects.txt:10
+#: en/git-update-index.txt:10 en/git-update-ref.txt:9
+#: en/git-update-server-info.txt:10 en/git-upload-archive.txt:10
+#: en/git-upload-pack.txt:10 en/git-var.txt:10 en/git-verify-commit.txt:9
+#: en/git-verify-pack.txt:10 en/git-verify-tag.txt:9 en/git-web--browse.txt:9
+#: en/git-whatchanged.txt:10 en/git-worktree.txt:10 en/git-write-tree.txt:10
+#, no-wrap
+msgid "SYNOPSIS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:104
-msgid "the line number of the line in the final file;"
+#: en/git-add.txt:15
+#, no-wrap
+msgid ""
+"'git add' [--verbose | -v] [--dry-run | -n] [--force | -f] [--interactive | -i] [--patch | -p]\n"
+"\t  [--edit | -e] [--[no-]all | --[no-]ignore-removal | [--update | -u]]\n"
+"\t  [--intent-to-add | -N] [--refresh] [--ignore-errors] [--ignore-missing] [--renormalize]\n"
+"\t  [--chmod=(+|-)x] [--] [<pathspec>...]\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-blame.txt:107
-msgid ""
-"on a line that starts a group of lines from a different commit than the "
-"previous one, the number of lines in this group.  On subsequent lines this "
-"field is absent."
+#. type: Title -
+#: en/git-add.txt:17 en/git-am.txt:22 en/git-annotate.txt:14
+#: en/git-apply.txt:22 en/git-archimport.txt:16 en/git-archive.txt:18
+#: en/git-bisect.txt:15 en/git-blame.txt:17 en/git-branch.txt:26
+#: en/git-bundle.txt:18 en/git-cat-file.txt:16 en/git-check-attr.txt:16
+#: en/git-check-ignore.txt:16 en/git-check-mailmap.txt:16
+#: en/git-checkout-index.txt:19 en/git-checkout.txt:20
+#: en/git-check-ref-format.txt:17 en/git-cherry-pick.txt:18
+#: en/git-cherry.txt:14 en/git-citool.txt:14 en/git-clean.txt:14
+#: en/git-clone.txt:21 en/git-column.txt:15 en/git-commit-tree.txt:18
+#: en/git-commit.txt:19 en/git-config.txt:29 en/git-count-objects.txt:14
+#: en/git-credential-cache--daemon.txt:14 en/git-credential-cache.txt:15
+#: en/git-credential-store.txt:15 en/git-credential.txt:15
+#: en/git-cvsexportcommit.txt:17 en/git-cvsimport.txt:20
+#: en/git-cvsserver.txt:61 en/git-daemon.txt:27 en/git-describe.txt:16
+#: en/git-diff-files.txt:15 en/git-diff-index.txt:15 en/git-difftool.txt:14
+#: en/git-diff-tree.txt:17 en/git-diff.txt:19 en/git-fast-export.txt:15
+#: en/git-fast-import.txt:15 en/git-fetch-pack.txt:18 en/git-fetch.txt:19
+#: en/git-filter-branch.txt:20 en/git-fmt-merge-msg.txt:16
+#: en/git-for-each-ref.txt:18 en/git-format-patch.txt:33
+#: en/git-fsck-objects.txt:15 en/git-fsck.txt:18 en/git-gc.txt:15
+#: en/git-get-tar-commit-id.txt:16 en/git-grep.txt:34 en/git-gui.txt:14
+#: en/git-hash-object.txt:16 en/git-help.txt:15 en/git-http-backend.txt:14
+#: en/git-http-fetch.txt:15 en/git-http-push.txt:15 en/git-imap-send.txt:16
+#: en/git-index-pack.txt:18 en/git-init-db.txt:16 en/git-init.txt:18
+#: en/git-instaweb.txt:16 en/git-interpret-trailers.txt:15 en/git-log.txt:15
+#: en/git-ls-files.txt:25 en/git-ls-remote.txt:17 en/git-ls-tree.txt:17
+#: en/git-mailinfo.txt:16 en/git-mailsplit.txt:15 en/git-merge-base.txt:19
+#: en/git-merge-file.txt:18 en/git-merge-index.txt:15
+#: en/git-merge-one-file.txt:15 en/git-mergetool--lib.txt:14
+#: en/git-mergetool.txt:14 en/git-merge-tree.txt:15 en/git-merge.txt:20
+#: en/git-mktag.txt:15 en/git-mktree.txt:15 en/git-mv.txt:15
+#: en/git-name-rev.txt:16 en/git-notes.txt:26 en/git-p4.txt:19
+#: en/git-pack-objects.txt:21 en/git-pack-redundant.txt:15
+#: en/git-pack-refs.txt:14 en/git-parse-remote.txt:15 en/git-patch-id.txt:14
+#: en/git-prune-packed.txt:16 en/git-prune.txt:15 en/git-pull.txt:16
+#: en/git-push.txt:20 en/git-quiltimport.txt:17 en/git-read-tree.txt:19
+#: en/git-rebase.txt:18 en/git-receive-pack.txt:15 en/git-reflog.txt:15
+#: en/git-remote-ext.txt:14 en/git-remote-fd.txt:13
+#: en/git-remote-testgit.txt:15 en/git-remote.txt:27 en/git-repack.txt:15
+#: en/git-replace.txt:19 en/git-request-pull.txt:14 en/git-rerere.txt:14
+#: en/git-reset.txt:16 en/git-revert.txt:17 en/git-rev-list.txt:66
+#: en/git-rev-parse.txt:15 en/git-rm.txt:14 en/git-send-email.txt:17
+#: en/git-send-pack.txt:18 en/git-shell.txt:17 en/git-sh-i18n--envsubst.txt:19
+#: en/git-sh-i18n.txt:14 en/git-shortlog.txt:15 en/git-show-branch.txt:19
+#: en/git-show-index.txt:16 en/git-show-ref.txt:17 en/git-show.txt:15
+#: en/git-sh-setup.txt:14 en/git-stage.txt:16 en/git-stash.txt:24
+#: en/git-status.txt:15 en/git-stripspace.txt:16 en/git-submodule.txt:24
+#: en/git-svn.txt:14 en/git-symbolic-ref.txt:16 en/git-tag.txt:22 en/git.txt:20
+#: en/git-unpack-file.txt:16 en/git-unpack-objects.txt:16
+#: en/git-update-index.txt:31 en/git-update-ref.txt:14
+#: en/git-update-server-info.txt:15 en/git-upload-archive.txt:15
+#: en/git-upload-pack.txt:16 en/git-var.txt:15 en/git-verify-commit.txt:14
+#: en/git-verify-pack.txt:16 en/git-verify-tag.txt:14 en/git-web--browse.txt:14
+#: en/git-whatchanged.txt:15 en/git-worktree.txt:21 en/git-write-tree.txt:15
+#, no-wrap
+msgid "DESCRIPTION"
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:110
+#: en/git-add.txt:24
 msgid ""
-"This header line is followed by the following information at least once for "
-"each commit:"
+"This command updates the index using the current content found in the "
+"working tree, to prepare the content staged for the next commit.  It "
+"typically adds the current content of existing paths as a whole, but with "
+"some options it can also be used to add content with only part of the "
+"changes made to the working tree files applied, or remove paths that do not "
+"exist in the working tree anymore."
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:114
+#: en/git-add.txt:30
 msgid ""
-"the author name (\"author\"), email (\"author-mail\"), time "
-"(\"author-time\"), and time zone (\"author-tz\"); similarly for committer."
+"The \"index\" holds a snapshot of the content of the working tree, and it is "
+"this snapshot that is taken as the contents of the next commit.  Thus after "
+"making any changes to the working tree, and before running the commit "
+"command, you must use the `add` command to add any new or modified files to "
+"the index."
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:115
-msgid "the filename in the commit that the line is attributed to."
+#: en/git-add.txt:35
+msgid ""
+"This command can be performed multiple times before a commit.  It only adds "
+"the content of the specified file(s) at the time the add command is run; if "
+"you want subsequent changes included in the next commit, then you must run "
+"`git add` again to add the new content to the index."
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:116
-msgid "the first line of the commit log message (\"summary\")."
+#: en/git-add.txt:38
+msgid ""
+"The `git status` command can be used to obtain a summary of which files have "
+"changes that are staged for the next commit."
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:120
+#: en/git-add.txt:45
 msgid ""
-"The contents of the actual line is output after the above header, prefixed "
-"by a TAB. This is to allow adding more header elements later."
+"The `git add` command will not add ignored files by default.  If any ignored "
+"files were explicitly specified on the command line, `git add` will fail "
+"with a list of ignored files.  Ignored files reached by directory recursion "
+"or filename globbing performed by Git (quote your globs before the shell) "
+"will be silently ignored.  The 'git add' command can be used to add ignored "
+"files with the `-f` (force) option."
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:128
+#: en/git-add.txt:48
 msgid ""
-"The porcelain format generally suppresses commit information that has "
-"already been seen. For example, two lines that are blamed to the same commit "
-"will both be shown, but the details for that commit will be shown only "
-"once. This is more efficient, but may require more state be kept by the "
-"reader. The `--line-porcelain` option can be used to output full commit "
-"information for each line, allowing simpler (but less efficient)  usage "
-"like:"
+"Please see linkgit:git-commit[1] for alternative ways to add content to a "
+"commit."
 msgstr ""
 
-#. type: Plain text
-#: en/git-blame.txt:133
+#. type: Title -
+#: en/git-add.txt:51 en/git-am.txt:28 en/git-annotate.txt:24
+#: en/git-apply.txt:36 en/git-archimport.txt:69 en/git-archive.txt:34
+#: en/git-bisect.txt:356 en/git-blame.txt:49 en/git-branch.txt:84
+#: en/git-bundle.txt:34 en/git-cat-file.txt:30 en/git-check-attr.txt:21
+#: en/git-check-ignore.txt:27 en/git-check-mailmap.txt:25
+#: en/git-checkout-index.txt:24 en/git-checkout.txt:116
+#: en/git-check-ref-format.txt:99 en/git-cherry-pick.txt:44
+#: en/git-cherry.txt:28 en/git-clean.txt:27 en/git-clone.txt:42
+#: en/git-column.txt:22 en/git-commit-tree.txt:42 en/git-commit.txt:63
+#: en/git-config.txt:72 en/git-count-objects.txt:20
+#: en/git-credential-cache.txt:27 en/git-credential-store.txt:30
+#: en/git-cvsexportcommit.txt:35 en/git-cvsimport.txt:51
+#: en/git-cvsserver.txt:28 en/git-daemon.txt:48 en/git-describe.txt:36
+#: en/git-diff-files.txt:22 en/git-diff-index.txt:23 en/git-difftool.txt:21
+#: en/git-diff-tree.txt:26 en/git-diff.txt:96 en/git-fast-export.txt:25
+#: en/git-fast-import.txt:35 en/git-fetch-pack.txt:34 en/git-fetch.txt:46
+#: en/git-filter-branch.txt:83 en/git-fmt-merge-msg.txt:25
+#: en/git-for-each-ref.txt:28 en/git-format-patch.txt:84 en/git-fsck.txt:22
+#: en/git-gc.txt:36 en/git-grep.txt:74 en/git-hash-object.txt:26
+#: en/git-help.txt:44 en/git-http-fetch.txt:23 en/git-http-push.txt:24
+#: en/git-imap-send.txt:30 en/git-index-pack.txt:26 en/git-init.txt:39
+#: en/git-instaweb.txt:21 en/git-interpret-trailers.txt:73 en/git-log.txt:25
+#: en/git-ls-files.txt:34 en/git-ls-remote.txt:23 en/git-ls-tree.txt:37
+#: en/git-mailinfo.txt:26 en/git-mailsplit.txt:23 en/git-merge-base.txt:70
+#: en/git-merge-file.txt:53 en/git-merge-index.txt:22 en/git-mergetool.txt:26
+#: en/git-merge.txt:64 en/git-mktree.txt:22 en/git-mv.txt:30
+#: en/git-name-rev.txt:22 en/git-notes.txt:126 en/git-p4.txt:199
+#: en/git-pack-objects.txt:50 en/git-pack-redundant.txt:29
+#: en/git-pack-refs.txt:46 en/git-patch-id.txt:31 en/git-prune-packed.txt:30
+#: en/git-prune.txt:34 en/git-pull.txt:75 en/git-quiltimport.txt:32
+#: en/git-read-tree.txt:33 en/git-rebase.txt:209 en/git-receive-pack.txt:40
+#: en/git-reflog.txt:61 en/git-remote.txt:33 en/git-repack.txt:29
+#: en/git-replace.txt:59 en/git-request-pull.txt:28 en/git-reset.txt:94
+#: en/git-revert.txt:34 en/git-rev-list.txt:114 en/git-rev-parse.txt:26
+#: en/git-rm.txt:28 en/git-send-email.txt:43 en/git-send-pack.txt:27
+#: en/git-shortlog.txt:27 en/git-show-branch.txt:32 en/git-show-ref.txt:34
+#: en/git-show.txt:36 en/git-stash.txt:47 en/git-status.txt:25
+#: en/git-stripspace.txt:37 en/git-submodule.txt:242 en/git-svn.txt:575
+#: en/git-symbolic-ref.txt:33 en/git-tag.txt:59 en/git.txt:40
+#: en/git-unpack-file.txt:22 en/git-unpack-objects.txt:29
+#: en/git-update-index.txt:43 en/git-update-server-info.txt:24
+#: en/git-upload-archive.txt:56 en/git-upload-pack.txt:26 en/git-var.txt:19
+#: en/git-verify-commit.txt:18 en/git-verify-pack.txt:22
+#: en/git-verify-tag.txt:18 en/git-web--browse.txt:43 en/git-worktree.txt:117
+#: en/git-write-tree.txt:29
 #, no-wrap
-msgid ""
-"\t# count the number of lines attributed to each author\n"
-"\tgit blame --line-porcelain file |\n"
-"\tsed -n 's/^author //p' |\n"
-"\tsort | uniq -c | sort -rn\n"
+msgid "OPTIONS"
 msgstr ""
 
-#. type: Title -
-#: en/git-blame.txt:136 en/revisions.txt:237
+#. type: Labeled list
+#: en/git-add.txt:52 en/git-grep.txt:308 en/git-status.txt:148
 #, no-wrap
-msgid "SPECIFYING RANGES"
+msgid "<pathspec>..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:142
+#: en/git-add.txt:64
 msgid ""
-"Unlike 'git blame' and 'git annotate' in older versions of git, the extent "
-"of the annotation can be limited to both line ranges and revision "
-"ranges. The `-L` option, which limits annotation to a range of lines, may be "
-"specified multiple times."
+"Files to add content from.  Fileglobs (e.g. `*.c`) can be given to add all "
+"matching files.  Also a leading directory name (e.g. `dir` to add `dir/"
+"file1` and `dir/file2`) can be given to update the index to match the "
+"current state of the directory as a whole (e.g.  specifying `dir` will "
+"record not just a file `dir/file1` modified in the working tree, a file `dir/"
+"file2` added to the working tree, but also a file `dir/file3` removed from "
+"the working tree). Note that older versions of Git used to ignore removed "
+"files; use `--no-all` option if you want to add modified or new files but "
+"ignore removed ones."
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:147
+#: en/git-add.txt:67 en/git-grep.txt:314
 msgid ""
-"When you are interested in finding the origin for lines 40-60 for file "
-"`foo`, you can use the `-L` option like so (they mean the same thing -- both "
-"ask for 21 lines starting at line 40):"
+"For more details about the <pathspec> syntax, see the 'pathspec' entry in "
+"linkgit:gitglossary[7]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:150
-#, no-wrap
+#: en/git-add.txt:72
 msgid ""
-"\tgit blame -L 40,60 foo\n"
-"\tgit blame -L 40,+21 foo\n"
+"Don't actually add the file(s), just show if they exist and/or will be "
+"ignored."
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:152
-msgid "Also you can use a regular expression to specify the line range:"
+#: en/git-add.txt:80
+msgid "Allow adding otherwise ignored files."
 msgstr ""
 
-#. type: Plain text
-#: en/git-blame.txt:154
+#. type: Labeled list
+#: en/git-add.txt:81 en/git-am.txt:122 en/git-branch.txt:137
+#: en/git-clean.txt:42 en/git-commit.txt:260 en/git-cvsimport.txt:88
+#: en/git-grep.txt:112 en/git-help.txt:64 en/git-ls-files.txt:51
+#: en/git-read-tree.txt:48 en/git-rebase.txt:389 en/git-repack.txt:163
+#: en/git-tag.txt:123 en/rev-list-options.txt:73
 #, no-wrap
-msgid "\tgit blame -L '/^sub hello {/,/^}$/' foo\n"
+msgid "-i"
 msgstr ""
 
-#. type: Plain text
-#: en/git-blame.txt:156
-msgid "which limits the annotation to the body of the `hello` subroutine."
+#. type: Labeled list
+#: en/git-add.txt:82 en/git-am.txt:123 en/git-clean.txt:43
+#: en/git-rebase.txt:390 en/git-rebase.txt:530 en/git-svn.txt:297
+#, no-wrap
+msgid "--interactive"
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:160
+#: en/git-add.txt:87
 msgid ""
-"When you are not interested in changes older than version v2.6.18, or "
-"changes older than 3 weeks, you can use revision range specifiers similar to "
-"'git rev-list':"
+"Add modified contents in the working tree interactively to the index. "
+"Optional path arguments may be supplied to limit operation to a subset of "
+"the working tree. See ``Interactive mode'' for details."
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:163
-#, no-wrap
+#: en/git-add.txt:94
 msgid ""
-"\tgit blame v2.6.18.. -- foo\n"
-"\tgit blame --since=3.weeks -- foo\n"
+"Interactively choose hunks of patch between the index and the work tree and "
+"add them to the index. This gives the user a chance to review the difference "
+"before adding modified contents to the index."
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:169
+#: en/git-add.txt:98
 msgid ""
-"When revision range specifiers are used to limit the annotation, lines that "
-"have not changed since the range boundary (either the commit v2.6.18 or the "
-"most recent commit that is more than 3 weeks old in the above example) are "
-"blamed for that range boundary commit."
+"This effectively runs `add --interactive`, but bypasses the initial command "
+"menu and directly jumps to the `patch` subcommand.  See ``Interactive mode'' "
+"for details."
 msgstr ""
 
-#. type: Plain text
-#: en/git-blame.txt:175
-msgid ""
-"A particularly useful way is to see if an added file has lines created by "
-"copy-and-paste from existing files.  Sometimes this indicates that the "
-"developer was being sloppy and did not refactor the code properly.  You can "
-"first find the commit that introduced the file with:"
+#. type: Labeled list
+#: en/git-add.txt:99 en/git-blame.txt:77 en/git-cat-file.txt:44
+#: en/git-cherry-pick.txt:55 en/git-commit.txt:219 en/git-config.txt:245
+#: en/git-grep.txt:275 en/git-revert.txt:43 en/git-shortlog.txt:38
+#: en/git-svn.txt:614 en/git-tag.txt:170 en/merge-options.txt:11
+#, no-wrap
+msgid "-e"
 msgstr ""
 
-#. type: Plain text
-#: en/git-blame.txt:177
+#. type: Labeled list
+#: en/git-add.txt:100 en/git-cherry-pick.txt:56 en/git-commit.txt:220
+#: en/git-config.txt:246 en/git-revert.txt:44 en/git-svn.txt:615
+#: en/git-tag.txt:171 en/merge-options.txt:10
 #, no-wrap
-msgid "\tgit log --diff-filter=A --pretty=short -- foo\n"
+msgid "--edit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:180
+#: en/git-add.txt:104
 msgid ""
-"and then annotate the change between the commit and its parents, using "
-"`commit^!` notation:"
+"Open the diff vs. the index in an editor and let the user edit it.  After "
+"the editor was closed, adjust the hunk headers and apply the patch to the "
+"index."
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:182
-#, no-wrap
-msgid "\tgit blame -C -C -f $commit^! -- foo\n"
+#: en/git-add.txt:110
+msgid ""
+"The intent of this option is to pick and choose lines of the patch to apply, "
+"or even to modify the contents of lines to be staged. This can be quicker "
+"and more flexible than using the interactive hunk selector.  However, it is "
+"easy to confuse oneself and create a patch that does not apply to the index. "
+"See EDITING PATCHES below."
 msgstr ""
 
-#. type: Title -
-#: en/git-blame.txt:185
+#. type: Labeled list
+#: en/git-add.txt:112
 #, no-wrap
-msgid "INCREMENTAL OUTPUT"
+msgid "--update"
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:192
+#: en/git-add.txt:116
 msgid ""
-"When called with `--incremental` option, the command outputs the result as "
-"it is built.  The output generally will talk about lines touched by more "
-"recent commits first (i.e. the lines will be annotated out of order) and is "
-"meant to be used by interactive viewers."
+"Update the index just where it already has an entry matching <pathspec>.  "
+"This removes as well as modifies index entries to match the working tree, "
+"but adds no new files."
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:196
+#: en/git-add.txt:121
 msgid ""
-"The output format is similar to the Porcelain format, but it does not "
-"contain the actual lines from the file that is being annotated."
+"If no <pathspec> is given when `-u` option is used, all tracked files in the "
+"entire working tree are updated (old versions of Git used to limit the "
+"update to the current directory and its subdirectories)."
 msgstr ""
 
-#. type: Plain text
-#: en/git-blame.txt:198
-msgid "Each blame entry always starts with a line of:"
+#. type: Labeled list
+#: en/git-add.txt:122 en/git-repack.txt:49 en/git-svn.txt:418
+#, no-wrap
+msgid "-A"
 msgstr ""
 
-#. type: Plain text
-#: en/git-blame.txt:200
+#. type: Labeled list
+#: en/git-add.txt:124
 #, no-wrap
-msgid "<40-byte hex sha1> <sourceline> <resultline> <num_lines>\n"
+msgid "--no-ignore-removal"
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:202
-msgid "Line numbers count from 1."
+#: en/git-add.txt:129
+msgid ""
+"Update the index not only where the working tree has a file matching "
+"<pathspec> but also where the index already has an entry. This adds, "
+"modifies, and removes index entries to match the working tree."
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:207
+#: en/git-add.txt:134
 msgid ""
-"The first time that a commit shows up in the stream, it has various other "
-"information about it printed out with a one-word tag at the beginning of "
-"each line describing the extra commit information (author, email, committer, "
-"dates, summary, etc.)."
+"If no <pathspec> is given when `-A` option is used, all files in the entire "
+"working tree are updated (old versions of Git used to limit the update to "
+"the current directory and its subdirectories)."
 msgstr ""
 
-#. type: Plain text
-#: en/git-blame.txt:210
-msgid ""
-"Unlike the Porcelain format, the filename information is always given and "
-"terminates the entry:"
+#. type: Labeled list
+#: en/git-add.txt:135
+#, no-wrap
+msgid "--no-all"
 msgstr ""
 
-#. type: Plain text
-#: en/git-blame.txt:212
+#. type: Labeled list
+#: en/git-add.txt:136
 #, no-wrap
-msgid "\"filename\" <whitespace-quoted-filename-goes-here>\n"
+msgid "--ignore-removal"
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:215
+#: en/git-add.txt:141
 msgid ""
-"and thus it is really quite easy to parse for some line- and word-oriented "
-"parser (which should be quite natural for most scripting languages)."
+"Update the index by adding new files that are unknown to the index and files "
+"modified in the working tree, but ignore files that have been removed from "
+"the working tree.  This option is a no-op when no <pathspec> is used."
 msgstr ""
 
 #. type: Plain text
-#: en/git-blame.txt:223
+#: en/git-add.txt:145
 msgid ""
-"For people who do parsing: to make it more robust, just ignore any lines "
-"between the first and last one (\"<sha1>\" and \"filename\" lines)  where "
-"you do not recognize the tag words (or care about that particular one) at "
-"the beginning of the \"extended information\" lines. That way, if there is "
-"ever added information (like the commit encoding or extended commit "
-"commentary), a blame viewer will not care."
-msgstr ""
-
-#. type: Title -
-#: en/git-blame.txt:226 en/git-check-mailmap.txt:40 en/git-shortlog.txt:80
-#, no-wrap
-msgid "MAPPING AUTHORS"
+"This option is primarily to help users who are used to older versions of "
+"Git, whose \"git add <pathspec>...\" was a synonym for \"git add --no-all "
+"<pathspec>...\", i.e. ignored removed files."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-blame.txt:234 en/cmds-ancillaryinterrogators.txt:1
+#: en/git-add.txt:146 en/git-format-patch.txt:100 en/git-submodule.txt:328
 #, no-wrap
-msgid "linkgit:git-annotate[1]"
+msgid "-N"
 msgstr ""
 
-#. type: Title =
-#: en/git-branch.txt:2
+#. type: Labeled list
+#: en/git-add.txt:147 en/git-apply.txt:77
 #, no-wrap
-msgid "git-branch(1)"
-msgstr ""
-
-#. type: Plain text
-#: en/git-branch.txt:7
-msgid "git-branch - List, create, or delete branches"
+msgid "--intent-to-add"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:22
-#, no-wrap
+#: en/git-add.txt:153
 msgid ""
-"'git branch' [--color[=<when>] | --no-color] [-r | -a]\n"
-"\t[--list] [-v [--abbrev=<length> | --no-abbrev]]\n"
-"\t[--column[=<options>] | --no-column]\n"
-"\t[(--merged | --no-merged | --contains) [<commit>]] [--sort=<key>]\n"
-"\t[--points-at <object>] [--format=<format>] [<pattern>...]\n"
-"'git branch' [--set-upstream | --track | --no-track] [-l] [-f] <branchname> "
-"[<start-point>]\n"
-"'git branch' (--set-upstream-to=<upstream> | -u <upstream>) [<branchname>]\n"
-"'git branch' --unset-upstream [<branchname>]\n"
-"'git branch' (-m | -M) [<oldbranch>] <newbranch>\n"
-"'git branch' (-d | -D) [-r] <branchname>...\n"
-"'git branch' --edit-description [<branchname>]\n"
+"Record only the fact that the path will be added later. An entry for the "
+"path is placed in the index with no content. This is useful for, among other "
+"things, showing the unstaged content of such files with `git diff` and "
+"committing them with `git commit -a`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-branch.txt:35
-msgid ""
-"If `--list` is given, or if there are no non-option arguments, existing "
-"branches are listed; the current branch will be highlighted with an "
-"asterisk.  Option `-r` causes the remote-tracking branches to be listed, and "
-"option `-a` shows both local and remote branches. If a `<pattern>` is given, "
-"it is used as a shell wildcard to restrict the output to matching "
-"branches. If multiple patterns are given, a branch is shown if it matches "
-"any of the patterns.  Note that when providing a `<pattern>`, you must use "
-"`--list`; otherwise the command is interpreted as branch creation."
+#. type: Labeled list
+#: en/git-add.txt:154 en/git-update-index.txt:54
+#, no-wrap
+msgid "--refresh"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:43
+#: en/git-add.txt:157
 msgid ""
-"With `--contains`, shows only the branches that contain the named commit (in "
-"other words, the branches whose tip commits are descendants of the named "
-"commit).  With `--merged`, only branches merged into the named commit "
-"(i.e. the branches whose tip commits are reachable from the named commit) "
-"will be listed.  With `--no-merged` only branches not merged into the named "
-"commit will be listed.  If the <commit> argument is missing it defaults to "
-"`HEAD` (i.e. the tip of the current branch)."
+"Don't add the file(s), but only refresh their stat()  information in the "
+"index."
 msgstr ""
 
-#. type: Plain text
-#: en/git-branch.txt:46
-msgid ""
-"The command's second form creates a new branch head named <branchname> which "
-"points to the current `HEAD`, or <start-point> if given."
+#. type: Labeled list
+#: en/git-add.txt:158
+#, no-wrap
+msgid "--ignore-errors"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:50
+#: en/git-add.txt:164
 msgid ""
-"Note that this will create the new branch, but it will not switch the "
-"working tree to it; use \"git checkout <newbranch>\" to switch to the new "
-"branch."
+"If some files could not be added because of errors indexing them, do not "
+"abort the operation, but continue adding the others. The command shall still "
+"exit with non-zero status.  The configuration variable `add.ignoreErrors` "
+"can be set to true to make this the default behaviour."
 msgstr ""
 
-#. type: Plain text
-#: en/git-branch.txt:58
-msgid ""
-"When a local branch is started off a remote-tracking branch, Git sets up the "
-"branch (specifically the `branch.<name>.remote` and `branch.<name>.merge` "
-"configuration entries) so that 'git pull' will appropriately merge from the "
-"remote-tracking branch. This behavior may be changed via the global "
-"`branch.autoSetupMerge` configuration flag. That setting can be overridden "
-"by using the `--track` and `--no-track` options, and changed later using "
-"`git branch --set-upstream-to`."
+#. type: Labeled list
+#: en/git-add.txt:165 en/git-notes.txt:169 en/git-update-index.txt:72
+#: en/rev-list-options.txt:193
+#, no-wrap
+msgid "--ignore-missing"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:64
+#: en/git-add.txt:170
 msgid ""
-"With a `-m` or `-M` option, <oldbranch> will be renamed to <newbranch>.  If "
-"<oldbranch> had a corresponding reflog, it is renamed to match <newbranch>, "
-"and a reflog entry is created to remember the branch renaming. If "
-"<newbranch> exists, -M must be used to force the rename to happen."
+"This option can only be used together with --dry-run. By using this option "
+"the user can check if any of the given files would be ignored, no matter if "
+"they are already present in the work tree or not."
 msgstr ""
 
-#. type: Plain text
-#: en/git-branch.txt:68
-msgid ""
-"With a `-d` or `-D` option, `<branchname>` will be deleted.  You may specify "
-"more than one branch for deletion.  If the branch currently has a reflog "
-"then the reflog will also be deleted."
+#. type: Labeled list
+#: en/git-add.txt:171
+#, no-wrap
+msgid "--no-warn-embedded-repo"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:74
+#: en/git-add.txt:177
 msgid ""
-"Use `-r` together with `-d` to delete remote-tracking branches. Note, that "
-"it only makes sense to delete remote-tracking branches if they no longer "
-"exist in the remote repository or if 'git fetch' was configured not to fetch "
-"them again. See also the 'prune' subcommand of linkgit:git-remote[1] for a "
-"way to clean up all obsolete remote-tracking branches."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-branch.txt:78 en/git-clean.txt:28 en/git-cvsexportcommit.txt:49 en/git-difftool.txt:22 en/git-http-push.txt:44 en/git-instaweb.txt:27 en/git-ls-files.txt:39 en/git-ls-tree.txt:41 en/git-repack.txt:55 en/git-replace.txt:64 en/git-show-ref.txt:47 en/git-symbolic-ref.txt:35 en/git-tag.txt:75
-#, no-wrap
-msgid "-d"
+"By default, `git add` will warn when adding an embedded repository to the "
+"index without using `git submodule add` to create an entry in `.gitmodules`. "
+"This option will suppress the warning (e.g., if you are manually performing "
+"operations on submodules)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-branch.txt:79 en/git-push.txt:126 en/git-replace.txt:65 en/git-symbolic-ref.txt:36 en/git-tag.txt:76
+#: en/git-add.txt:178
 #, no-wrap
-msgid "--delete"
+msgid "--renormalize"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:83
+#: en/git-add.txt:184
 msgid ""
-"Delete a branch. The branch must be fully merged in its upstream branch, or "
-"in `HEAD` if no upstream was set with `--track` or `--set-upstream`."
+"Apply the \"clean\" process freshly to all tracked files to forcibly add "
+"them again to the index.  This is useful after changing `core.autocrlf` "
+"configuration or the `text` attribute in order to correct files added with "
+"wrong CRLF/LF line endings.  This option implies `-u`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-branch.txt:84 en/git-http-push.txt:45 en/diff-options.txt:389
+#: en/git-add.txt:185 en/git-update-index.txt:85
 #, no-wrap
-msgid "-D"
+msgid "--chmod=(+|-)x"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:86
-msgid "Shortcut for `--delete --force`."
+#: en/git-add.txt:189
+msgid ""
+"Override the executable bit of the added files.  The executable bit is only "
+"changed in the index, the files on disk are left unchanged."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-branch.txt:88 en/git-tag.txt:152
+#: en/git-add.txt:190 en/git-check-attr.txt:39 en/git-checkout-index.txt:71
+#: en/git-commit.txt:343 en/git-grep.txt:304 en/git-ls-files.txt:180
+#: en/git-merge-index.txt:23 en/git-prune.txt:51 en/git-rm.txt:53
+#: en/git-update-index.txt:221 en/git-verify-pack.txt:36
 #, no-wrap
-msgid "--create-reflog"
-msgstr ""
-
-#. type: Plain text
-#: en/git-branch.txt:97
-msgid ""
-"Create the branch's reflog.  This activates recording of all changes made to "
-"the branch ref, enabling use of date based sha1 expressions such as "
-"\"<branchname>@\\{yesterday}\".  Note that in non-bare repositories, reflogs "
-"are usually enabled by default by the `core.logallrefupdates` config "
-"option.  The negated form `--no-create-reflog` only overrides an earlier "
-"`--create-reflog`, but currently does not negate the setting of "
-"`core.logallrefupdates`."
+msgid "\\--"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:106
+#: en/git-add.txt:194 en/git-rm.txt:57
 msgid ""
-"Reset <branchname> to <startpoint> if <branchname> exists already. Without "
-"`-f` 'git branch' refuses to change an existing branch.  In combination with "
-"`-d` (or `--delete`), allow deleting the branch irrespective of its merged "
-"status. In combination with `-m` (or `--move`), allow renaming the branch "
-"even if the new branch name already exists."
+"This option can be used to separate command-line options from the list of "
+"files, (useful when filenames might be mistaken for command-line options)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-branch.txt:108
+#. type: Title -
+#: en/git-add.txt:197 en/git-apply.txt:254 en/git-archive.txt:98
+#: en/git-branch.txt:282 en/git-config.txt:261 en/git-cvsexportcommit.txt:86
+#: en/git-fmt-merge-msg.txt:53 en/git-format-patch.txt:325 en/git-gc.txt:100
+#: en/git-grep.txt:42 en/git-imap-send.txt:52 en/git-instaweb.txt:70
+#: en/git-log.txt:177 en/git-merge.txt:344 en/git-notes.txt:311
+#: en/git-rebase.txt:204 en/git-send-email.txt:436 en/git-status.txt:394
+#: en/git-svn.txt:1083 en/git-tag.txt:208 en/git-update-index.txt:519
 #, no-wrap
-msgid "--move"
+msgid "CONFIGURATION"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:110
-msgid "Move/rename a branch and the corresponding reflog."
+#: en/git-add.txt:203
+msgid ""
+"The optional configuration variable `core.excludesFile` indicates a path to "
+"a file containing patterns of file names to exclude from git-add, similar to "
+"$GIT_DIR/info/exclude.  Patterns in the exclude file are used in addition to "
+"those in info/exclude.  See linkgit:gitignore[5]."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-branch.txt:111 en/git-fast-export.txt:53 en/git-p4.txt:280
+#. type: Title -
+#: en/git-add.txt:206 en/git-archive.txt:149 en/git-bisect.txt:369
+#: en/git-branch.txt:288 en/git-bundle.txt:96 en/git-check-attr.txt:71
+#: en/git-checkout-index.txt:143 en/git-checkout.txt:459
+#: en/git-check-ref-format.txt:122 en/git-cherry-pick.txt:156
+#: en/git-cherry.txt:43 en/git-clone.txt:283 en/git-column.txt:50
+#: en/git-commit.txt:357 en/git-config.txt:336 en/git-credential-cache.txt:55
+#: en/git-credential-store.txt:71 en/git-cvsexportcommit.txt:91
+#: en/git-daemon.txt:257 en/git-describe.txt:127 en/git-diff.txt:123
+#: en/git-fast-export.txt:146 en/git-fetch.txt:242 en/git-filter-branch.txt:234
+#: en/git-fmt-merge-msg.txt:61 en/git-for-each-ref.txt:268
+#: en/git-format-patch.txt:629 en/git-grep.txt:316 en/git-http-backend.txt:67
+#: en/git-imap-send.txt:97 en/git-init.txt:137
+#: en/git-interpret-trailers.txt:256 en/git-log.txt:115 en/git-ls-remote.txt:93
+#: en/git-merge-file.txt:81 en/git-merge.txt:310 en/git-name-rev.txt:65
+#: en/git-notes.txt:278 en/git-p4.txt:33 en/git-prune.txt:60
+#: en/git-pull.txt:210 en/git-push.txt:570 en/git-remote-ext.txt:77
+#: en/git-remote-fd.txt:37 en/git-remote.txt:207 en/git-request-pull.txt:50
+#: en/git-reset.txt:105 en/git-revert.txt:109 en/git-rev-parse.txt:430
+#: en/git-rm.txt:160 en/git-send-email.txt:475 en/git-shell.txt:66
+#: en/git-show-branch.txt:177 en/git-show-ref.txt:124 en/git-show.txt:58
+#: en/git-stash.txt:206 en/git-stripspace.txt:49 en/git-update-index.txt:351
+#: en/git-var.txt:27 en/git-worktree.txt:355
 #, no-wrap
-msgid "-M"
+msgid "EXAMPLES"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:113
-msgid "Shortcut for `--move --force`."
+#: en/git-add.txt:210
+msgid ""
+"Adds content from all `*.txt` files under `Documentation` directory and its "
+"subdirectories:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-branch.txt:114 en/git-grep.txt:206 en/git-show-branch.txt:119 en/diff-options.txt:218
+#. type: delimited block -
+#: en/git-add.txt:213
 #, no-wrap
-msgid "--color[=<when>]"
+msgid "$ git add Documentation/\\*.txt\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:118
+#: en/git-add.txt:218
 msgid ""
-"Color branches to highlight current, local, and remote-tracking branches.  "
-"The value must be always (the default), never, or auto."
+"Note that the asterisk `*` is quoted from the shell in this example; this "
+"lets the command include the files from subdirectories of `Documentation/` "
+"directory."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-branch.txt:119 en/git-grep.txt:210 en/git-show-branch.txt:124 en/diff-options.txt:227
+#. type: Plain text
+#: en/git-add.txt:220
+msgid "Considers adding content from all git-*.sh scripts:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-add.txt:223
 #, no-wrap
-msgid "--no-color"
+msgid "$ git add git-*.sh\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:123
+#: en/git-add.txt:228
 msgid ""
-"Turn off branch colors, even when the configuration file gives the default "
-"to color output.  Same as `--color=never`."
+"Because this example lets the shell expand the asterisk (i.e. you are "
+"listing the files explicitly), it does not consider `subdir/git-foo.sh`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-branch.txt:125 en/git-for-each-ref.txt:82 en/git-grep.txt:117 en/git-tag.txt:112
+#. type: Title -
+#: en/git-add.txt:230 en/git-rebase.txt:588
 #, no-wrap
-msgid "--ignore-case"
+msgid "INTERACTIVE MODE"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:127
-msgid "Sorting and filtering branches are case insensitive."
+#: en/git-add.txt:234
+msgid ""
+"When the command enters the interactive mode, it shows the output of the "
+"'status' subcommand, and then goes into its interactive command loop."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-branch.txt:128 en/git-status.txt:104 en/git-tag.txt:115
-#, no-wrap
-msgid "--column[=<options>]"
+#. type: Plain text
+#: en/git-add.txt:239 en/git-clean.txt:84
+msgid ""
+"The command loop shows the list of subcommands available, and gives a prompt "
+"\"What now> \".  In general, when the prompt ends with a single '>', you can "
+"pick only one of the choices given and type return, like this:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-branch.txt:129 en/git-status.txt:105 en/git-tag.txt:116
+#. type: delimited block -
+#: en/git-add.txt:245
 #, no-wrap
-msgid "--no-column"
+msgid ""
+"    *** Commands ***\n"
+"      1: status       2: update       3: revert       4: add untracked\n"
+"      5: patch        6: diff         7: quit         8: help\n"
+"    What now> 1\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:133
+#: en/git-add.txt:249
 msgid ""
-"Display branch listing in columns. See configuration variable column.branch "
-"for option syntax.`--column` and `--no-column` without options are "
-"equivalent to 'always' and 'never' respectively."
+"You also could say `s` or `sta` or `status` above as long as the choice is "
+"unique."
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:135
-msgid "This option is only applicable in non-verbose mode."
+#: en/git-add.txt:251
+msgid "The main command loop has 6 subcommands (plus help and quit)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-branch.txt:137 en/git-show-branch.txt:44
+#: en/git-add.txt:252
 #, no-wrap
-msgid "--remotes"
+msgid "status"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:139
-msgid "List or delete (if used with -d) the remote-tracking branches."
+#: en/git-add.txt:259
+msgid ""
+"This shows the change between HEAD and index (i.e. what will be committed if "
+"you say `git commit`), and between index and working tree files (i.e. what "
+"you could stage further before `git commit` using `git add`) for each path.  "
+"A sample output looks like this:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-branch.txt:143
-msgid "List both remote-tracking branches and local branches."
+#. type: delimited block -
+#: en/git-add.txt:264
+#, no-wrap
+msgid ""
+"              staged     unstaged path\n"
+"     1:       binary      nothing foo.png\n"
+"     2:     +403/-35        +1/-1 git-add--interactive.perl\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:147
+#: en/git-add.txt:275
 msgid ""
-"Activate the list mode. `git branch <pattern>` would try to create a branch, "
-"use `git branch --list <pattern>` to list matching branches."
+"It shows that foo.png has differences from HEAD (but that is binary so line "
+"count cannot be shown) and there is no difference between indexed copy and "
+"the working tree version (if the working tree version were also different, "
+"'binary' would have been shown in place of 'nothing').  The other file, git-"
+"add{litdd}interactive.perl, has 403 lines added and 35 lines deleted if you "
+"commit what is in the index, but working tree file has further modifications "
+"(one addition and one deletion)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-branch.txt:149
+#: en/git-add.txt:276 en/git-update-ref.txt:94
 #, no-wrap
-msgid "-vv"
+msgid "update"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:156
+#: en/git-add.txt:285
 msgid ""
-"When in list mode, show sha1 and commit subject line for each head, along "
-"with relationship to upstream branch (if any). If given twice, print the "
-"name of the upstream branch, as well (see also `git remote show <remote>`)."
+"This shows the status information and issues an \"Update>>\" prompt.  When "
+"the prompt ends with double '>>', you can make more than one selection, "
+"concatenated with whitespace or comma.  Also you can say ranges.  E.g. \"2-5 "
+"7,9\" to choose 2,3,4,5,7,9 from the list.  If the second number in a range "
+"is omitted, all remaining patches are taken.  E.g. \"7-\" to choose 7,8,9 "
+"from the list.  You can say '*' to choose everything."
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:161
+#: en/git-add.txt:288
+msgid "What you chose are then highlighted with '*', like this:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-add.txt:293
+#, no-wrap
 msgid ""
-"Be more quiet when creating or deleting a branch, suppressing non-error "
-"messages."
+"           staged     unstaged path\n"
+"  1:       binary      nothing foo.png\n"
+"* 2:     +403/-35        +1/-1 git-add--interactive.perl\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-branch.txt:162
+#. type: Plain text
+#: en/git-add.txt:297
+msgid "To remove selection, prefix the input with `-` like this:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-add.txt:300
 #, no-wrap
-msgid "--abbrev=<length>"
+msgid "Update>> -2\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:166
+#: en/git-add.txt:304
 msgid ""
-"Alter the sha1's minimum display length in the output listing.  The default "
-"value is 7 and can be overridden by the `core.abbrev` config option."
+"After making the selection, answer with an empty line to stage the contents "
+"of working tree files for selected paths in the index."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-branch.txt:167
+#: en/git-add.txt:305
 #, no-wrap
-msgid "--no-abbrev"
+msgid "revert"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:169
-msgid "Display the full sha1s in the output listing rather than abbreviating them."
+#: en/git-add.txt:310
+msgid ""
+"This has a very similar UI to 'update', and the staged information for "
+"selected paths are reverted to that of the HEAD version.  Reverting new "
+"paths makes them untracked."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-branch.txt:170 en/git-cat-file.txt:36 en/git-checkout.txt:155 en/git-diff-tree.txt:42 en/git-http-fetch.txt:29 en/git-ls-files.txt:112 en/git-ls-remote.txt:26 en/git-ls-tree.txt:47 en/git-svn.txt:296 en/blame-options.txt:25 en/fetch-options.txt:98 en/rev-list-options.txt:890
+#: en/git-add.txt:311
 #, no-wrap
-msgid "-t"
+msgid "add untracked"
+msgstr ""
+
+#. type: Plain text
+#: en/git-add.txt:315
+msgid ""
+"This has a very similar UI to 'update' and 'revert', and lets you add "
+"untracked paths to the index."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-branch.txt:171 en/git-checkout.txt:156
+#: en/git-add.txt:316
 #, no-wrap
-msgid "--track"
+msgid "patch"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:179
+#: en/git-add.txt:323
 msgid ""
-"When creating a new branch, set up `branch.<name>.remote` and "
-"`branch.<name>.merge` configuration entries to mark the start-point branch "
-"as \"upstream\" from the new branch. This configuration will tell git to "
-"show the relationship between the two branches in `git status` and `git "
-"branch -v`. Furthermore, it directs `git pull` without arguments to pull "
-"from the upstream when the new branch is checked out."
+"This lets you choose one path out of a 'status' like selection.  After "
+"choosing the path, it presents the diff between the index and the working "
+"tree file and asks you if you want to stage the change of each hunk.  You "
+"can select one of the following options and type return:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:185
+#: en/git-add.txt:338
+#, no-wrap
 msgid ""
-"This behavior is the default when the start point is a remote-tracking "
-"branch.  Set the branch.autoSetupMerge configuration variable to `false` if "
-"you want `git checkout` and `git branch` to always behave as if `--no-track` "
-"were given. Set it to `always` if you want this behavior when the "
-"start-point is either a local or remote-tracking branch."
+"y - stage this hunk\n"
+"n - do not stage this hunk\n"
+"q - quit; do not stage this hunk or any of the remaining ones\n"
+"a - stage this hunk and all later hunks in the file\n"
+"d - do not stage this hunk or any of the later hunks in the file\n"
+"g - select a hunk to go to\n"
+"/ - search for a hunk matching the given regex\n"
+"j - leave this hunk undecided, see next undecided hunk\n"
+"J - leave this hunk undecided, see next hunk\n"
+"k - leave this hunk undecided, see previous undecided hunk\n"
+"K - leave this hunk undecided, see previous hunk\n"
+"s - split the current hunk into smaller hunks\n"
+"e - manually edit the current hunk\n"
+"? - print help\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-branch.txt:186 en/git-checkout.txt:170
-#, no-wrap
-msgid "--no-track"
+#. type: Plain text
+#: en/git-add.txt:341
+msgid ""
+"After deciding the fate for all hunks, if there is any hunk that was chosen, "
+"the index is updated with the selected hunks."
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:189 en/git-checkout.txt:173
+#: en/git-add.txt:344
 msgid ""
-"Do not set up \"upstream\" configuration, even if the branch.autoSetupMerge "
-"configuration variable is true."
+"You can omit having to type return here, by setting the configuration "
+"variable `interactive.singleKey` to `true`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-branch.txt:190 en/git-push.txt:246
+#: en/git-add.txt:345
 #, no-wrap
-msgid "--set-upstream"
+msgid "diff"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:195
+#: en/git-add.txt:349
 msgid ""
-"If specified branch does not exist yet or if `--force` has been given, acts "
-"exactly like `--track`. Otherwise sets up configuration like `--track` would "
-"when creating the branch, except that where branch points to is not changed."
+"This lets you review what will be committed (i.e. between HEAD and index)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-branch.txt:196
+#. type: Title -
+#: en/git-add.txt:352
 #, no-wrap
-msgid "-u <upstream>"
+msgid "EDITING PATCHES"
+msgstr ""
+
+#. type: Plain text
+#: en/git-add.txt:362
+msgid ""
+"Invoking `git add -e` or selecting `e` from the interactive hunk selector "
+"will open a patch in your editor; after the editor exits, the result is "
+"applied to the index. You are free to make arbitrary changes to the patch, "
+"but note that some changes may have confusing results, or even result in a "
+"patch that cannot be applied.  If you want to abort the operation entirely "
+"(i.e., stage nothing new in the index), simply delete all lines of the "
+"patch. The list below describes some common things you may see in a patch, "
+"and which editing operations make sense on them."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-branch.txt:197
+#: en/git-add.txt:364
 #, no-wrap
-msgid "--set-upstream-to=<upstream>"
+msgid "added content"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:201
+#: en/git-add.txt:368
 msgid ""
-"Set up <branchname>'s tracking information so <upstream> is considered "
-"<branchname>'s upstream branch. If no <branchname> is specified, then it "
-"defaults to the current branch."
+"Added content is represented by lines beginning with \"{plus}\". You can "
+"prevent staging any addition lines by deleting them."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-branch.txt:202
+#: en/git-add.txt:369
 #, no-wrap
-msgid "--unset-upstream"
+msgid "removed content"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:205
+#: en/git-add.txt:373
 msgid ""
-"Remove the upstream information for <branchname>. If no branch is specified "
-"it defaults to the current branch."
+"Removed content is represented by lines beginning with \"-\". You can "
+"prevent staging their removal by converting the \"-\" to a \" \" (space)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-branch.txt:206
+#: en/git-add.txt:374
 #, no-wrap
-msgid "--edit-description"
+msgid "modified content"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:211
+#: en/git-add.txt:381
 msgid ""
-"Open an editor and edit the text to explain what the branch is for, to be "
-"used by various other commands (e.g. `format-patch`, `request-pull`, and "
-"`merge` (if enabled)). Multi-line explanations may be used."
+"Modified content is represented by \"-\" lines (removing the old content)  "
+"followed by \"{plus}\" lines (adding the replacement content). You can "
+"prevent staging the modification by converting \"-\" lines to \" \", and "
+"removing \"{plus}\" lines. Beware that modifying only half of the pair is "
+"likely to introduce confusing changes to the index."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-branch.txt:212 en/git-tag.txt:123
-#, no-wrap
-msgid "--contains [<commit>]"
+#. type: Plain text
+#: en/git-add.txt:389
+msgid ""
+"There are also more complex operations that can be performed. But beware "
+"that because the patch is applied only to the index and not the working "
+"tree, the working tree will appear to \"undo\" the change in the index.  For "
+"example, introducing a new line into the index that is in neither the HEAD "
+"nor the working tree will stage the new line for commit, but the line will "
+"appear to be reverted in the working tree."
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:215
-msgid ""
-"Only list branches which contain the specified commit (HEAD if not "
-"specified). Implies `--list`."
+#: en/git-add.txt:391
+msgid "Avoid using these constructs, or do so with extreme caution."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-branch.txt:216
+#: en/git-add.txt:393
 #, no-wrap
-msgid "--merged [<commit>]"
+msgid "removing untouched content"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:219
+#: en/git-add.txt:399
 msgid ""
-"Only list branches whose tips are reachable from the specified commit (HEAD "
-"if not specified). Implies `--list`."
+"Content which does not differ between the index and working tree may be "
+"shown on context lines, beginning with a \" \" (space).  You can stage "
+"context lines for removal by converting the space to a \"-\". The resulting "
+"working tree file will appear to re-add the content."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-branch.txt:220
+#: en/git-add.txt:400
 #, no-wrap
-msgid "--no-merged [<commit>]"
+msgid "modifying existing content"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:223
+#: en/git-add.txt:407
 msgid ""
-"Only list branches whose tips are not reachable from the specified commit "
-"(HEAD if not specified). Implies `--list`."
+"One can also modify context lines by staging them for removal (by converting "
+"\" \" to \"-\") and adding a \"{plus}\" line with the new content.  "
+"Similarly, one can modify \"{plus}\" lines for existing additions or "
+"modifications. In all cases, the new modification will appear reverted in "
+"the working tree."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-branch.txt:224
+#: en/git-add.txt:408
 #, no-wrap
-msgid "<branchname>"
+msgid "new content"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:229
+#: en/git-add.txt:413
 msgid ""
-"The name of the branch to create or delete.  The new branch name must pass "
-"all checks defined by linkgit:git-check-ref-format[1].  Some of these checks "
-"may restrict the characters allowed in a branch name."
+"You may also add new content that does not exist in the patch; simply add "
+"new lines, each starting with \"{plus}\". The addition will appear reverted "
+"in the working tree."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-branch.txt:230
+#. type: Plain text
+#: en/git-add.txt:417
+msgid ""
+"There are also several operations which should be avoided entirely, as they "
+"will make the patch impossible to apply:"
+msgstr ""
+
+#. type: Plain text
+#: en/git-add.txt:419
+msgid "adding context (\" \") or removal (\"-\") lines"
+msgstr ""
+
+#. type: Plain text
+#: en/git-add.txt:420
+msgid "deleting context or removal lines"
+msgstr ""
+
+#. type: Plain text
+#: en/git-add.txt:421
+msgid "modifying the contents of context or removal lines"
+msgstr ""
+
+#. type: Title -
+#: en/git-add.txt:423 en/git-am.txt:235 en/git-annotate.txt:28
+#: en/git-apply.txt:280 en/git-archive.txt:192 en/git-bisect.txt:493
+#: en/git-blame.txt:230 en/git-branch.txt:342 en/git-check-attr.txt:115
+#: en/git-check-ignore.txt:113 en/git-cherry-pick.txt:228 en/git-cherry.txt:140
+#: en/git-clean.txt:136 en/git-commit-tree.txt:113 en/git-commit.txt:487
+#: en/git-difftool.txt:135 en/git-diff.txt:193 en/git-fast-export.txt:234
+#: en/git-fast-import.txt:1487 en/git-fetch-pack.txt:127 en/git-fetch.txt:294
+#: en/git-fmt-merge-msg.txt:73 en/git-for-each-ref.txt:384
+#: en/git-format-patch.txt:674 en/git-gc.txt:204 en/git-gui.txt:103
+#: en/git-imap-send.txt:135 en/git-instaweb.txt:89
+#: en/git-interpret-trailers.txt:385 en/git-ls-files.txt:243
+#: en/git-ls-remote.txt:112 en/git-merge.txt:353 en/git-pack-objects.txt:399
+#: en/git-pack-redundant.txt:43 en/git-prune-packed.txt:41 en/git-prune.txt:81
+#: en/git-pull.txt:257 en/git-read-tree.txt:432 en/git-receive-pack.txt:247
+#: en/git-remote-ext.txt:120 en/git-remote-fd.txt:54
+#: en/git-remote-testgit.txt:25 en/git-remote.txt:249 en/git-repack.txt:182
+#: en/git-replace.txt:149 en/git-revert.txt:124 en/git-rm.txt:184
+#: en/git-send-email.txt:507 en/git-shell.txt:99 en/git-show-ref.txt:178
+#: en/git-stash.txt:292 en/git-status.txt:430 en/git-submodule.txt:424
+#: en/git-svn.txt:1169 en/git-tag.txt:374 en/git.txt:869
+#: en/git-update-index.txt:547 en/git-upload-pack.txt:48 en/git-var.txt:63
 #, no-wrap
-msgid "<start-point>"
+msgid "SEE ALSO"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:234
+#: en/git-add.txt:430
 msgid ""
-"The new branch head will point to this commit.  It may be given as a branch "
-"name, a commit-id, or a tag.  If this option is omitted, the current HEAD "
-"will be used instead."
+"linkgit:git-status[1] linkgit:git-rm[1] linkgit:git-reset[1] linkgit:git-"
+"mv[1] linkgit:git-commit[1] linkgit:git-update-index[1]"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-branch.txt:235
+#. type: Title -
+#: en/git-add.txt:432 en/git-am.txt:239 en/git-annotate.txt:32
+#: en/git-apply.txt:284 en/git-archimport.txt:112 en/git-archive.txt:196
+#: en/git-bisect.txt:498 en/git-blame.txt:234 en/git-branch.txt:350
+#: en/git-bundle.txt:204 en/git-cat-file.txt:318 en/git-check-attr.txt:119
+#: en/git-check-ignore.txt:119 en/git-check-mailmap.txt:46
+#: en/git-checkout-index.txt:176 en/git-checkout.txt:545
+#: en/git-check-ref-format.txt:138 en/git-cherry-pick.txt:232
+#: en/git-cherry.txt:144 en/git-citool.txt:24 en/git-clean.txt:140
+#: en/git-clone.txt:321 en/git-column.txt:78 en/git-commit-tree.txt:117
+#: en/git-commit.txt:495 en/git-config.txt:490 en/git-count-objects.txt:53
+#: en/git-credential-cache--daemon.txt:29 en/git-credential-cache.txt:79
+#: en/git-credential-store.txt:105 en/git-cvsexportcommit.txt:117
+#: en/git-cvsimport.txt:227 en/git-cvsserver.txt:432 en/git-daemon.txt:339
+#: en/git-describe.txt:206 en/git-diff-files.txt:51 en/git-diff-index.txt:121
+#: en/git-difftool.txt:146 en/git-diff-tree.txt:117 en/git-diff.txt:202
+#: en/git-fast-export.txt:238 en/git-fast-import.txt:1491
+#: en/git-fetch-pack.txt:131 en/git-fetch.txt:298 en/git-filter-branch.txt:480
+#: en/git-fmt-merge-msg.txt:77 en/git-for-each-ref.txt:388
+#: en/git-format-patch.txt:678 en/git-fsck-objects.txt:21 en/git-fsck.txt:161
+#: en/git-gc.txt:211 en/git-get-tar-commit-id.txt:29 en/git-grep.txt:334
+#: en/git-gui.txt:126 en/git-hash-object.txt:64 en/git-help.txt:203
+#: en/git-http-backend.txt:276 en/git-http-fetch.txt:48 en/git-http-push.txt:96
+#: en/git-imap-send.txt:139 en/git-index-pack.txt:107 en/git-init-db.txt:22
+#: en/git-init.txt:153 en/git-instaweb.txt:93 en/git-interpret-trailers.txt:389
+#: en/git-log.txt:234 en/git-ls-files.txt:247 en/git-ls-remote.txt:116
+#: en/git-ls-tree.txt:103 en/git-mailinfo.txt:101 en/git-mailsplit.txt:56
+#: en/git-merge-base.txt:230 en/git-merge-file.txt:94 en/git-merge-index.txt:78
+#: en/git-merge-one-file.txt:20 en/git-mergetool--lib.txt:46
+#: en/git-mergetool.txt:111 en/git-merge-tree.txt:28 en/git-merge.txt:362
+#: en/git-mktag.txt:38 en/git-mktree.txt:39 en/git-mv.txt:68
+#: en/git-name-rev.txt:88 en/git-notes.txt:404 en/git-pack-objects.txt:405
+#: en/git-pack-redundant.txt:49 en/git-pack-refs.txt:72
+#: en/git-parse-remote.txt:22 en/git-patch-id.txt:60 en/git-prune-packed.txt:46
+#: en/git-prune.txt:88 en/git-pull.txt:261 en/git-push.txt:672
+#: en/git-quiltimport.txt:63 en/git-read-tree.txt:437 en/git-rebase.txt:1048
+#: en/git-receive-pack.txt:251 en/git-reflog.txt:137 en/git-remote-ext.txt:124
+#: en/git-remote-fd.txt:58 en/git-remote-testgit.txt:29 en/git-remote.txt:255
+#: en/git-repack.txt:187 en/git-replace.txt:160 en/git-request-pull.txt:78
+#: en/git-rerere.txt:221 en/git-reset.txt:473 en/git-revert.txt:128
+#: en/git-rev-list.txt:122 en/git-rev-parse.txt:455 en/git-rm.txt:188
+#: en/git-send-email.txt:511 en/git-send-pack.txt:155 en/git-shell.txt:105
+#: en/git-sh-i18n--envsubst.txt:35 en/git-sh-i18n.txt:42 en/git-shortlog.txt:89
+#: en/git-show-branch.txt:203 en/git-show-index.txt:40 en/git-show-ref.txt:185
+#: en/git-show.txt:86 en/git-sh-setup.txt:94 en/git-stage.txt:22
+#: en/git-stash.txt:299 en/git-status.txt:434 en/git-stripspace.txt:93
+#: en/git-submodule.txt:428 en/git-svn.txt:1173 en/git-symbolic-ref.txt:68
+#: en/git-tag.txt:379 en/git.txt:877 en/git-unpack-file.txt:27
+#: en/git-unpack-objects.txt:51 en/git-update-index.txt:553
+#: en/git-update-ref.txt:151 en/git-update-server-info.txt:43
+#: en/git-upload-archive.txt:61 en/git-upload-pack.txt:52 en/git-var.txt:69
+#: en/git-verify-commit.txt:31 en/git-verify-pack.txt:52
+#: en/git-verify-tag.txt:31 en/git-web--browse.txt:123
+#: en/git-whatchanged.txt:42 en/git-worktree.txt:381 en/git-write-tree.txt:41
 #, no-wrap
-msgid "<oldbranch>"
+msgid "GIT"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:237
-msgid "The name of an existing branch to rename."
+#: en/git-add.txt:433 en/git-am.txt:240 en/git-annotate.txt:33
+#: en/git-apply.txt:285 en/git-archimport.txt:113 en/git-archive.txt:197
+#: en/git-bisect.txt:499 en/git-blame.txt:235 en/git-branch.txt:351
+#: en/git-bundle.txt:205 en/git-cat-file.txt:319 en/git-check-attr.txt:120
+#: en/git-check-ignore.txt:120 en/git-check-mailmap.txt:47
+#: en/git-checkout-index.txt:177 en/git-checkout.txt:546
+#: en/git-check-ref-format.txt:139 en/git-cherry-pick.txt:233
+#: en/git-cherry.txt:145 en/git-citool.txt:25 en/git-clean.txt:141
+#: en/git-clone.txt:322 en/git-column.txt:79 en/git-commit-tree.txt:118
+#: en/git-commit.txt:496 en/git-config.txt:491 en/git-count-objects.txt:54
+#: en/git-credential-cache--daemon.txt:30 en/git-credential-cache.txt:80
+#: en/git-credential-store.txt:106 en/git-cvsexportcommit.txt:118
+#: en/git-cvsimport.txt:228 en/git-cvsserver.txt:433 en/git-daemon.txt:340
+#: en/git-describe.txt:207 en/git-diff-files.txt:52 en/git-diff-index.txt:122
+#: en/git-difftool.txt:147 en/git-diff-tree.txt:118 en/git-diff.txt:203
+#: en/git-fast-export.txt:239 en/git-fast-import.txt:1492
+#: en/git-fetch-pack.txt:132 en/git-fetch.txt:299 en/git-filter-branch.txt:481
+#: en/git-fmt-merge-msg.txt:78 en/git-for-each-ref.txt:389
+#: en/git-format-patch.txt:679 en/git-fsck-objects.txt:22 en/git-fsck.txt:162
+#: en/git-gc.txt:212 en/git-get-tar-commit-id.txt:30 en/git-grep.txt:335
+#: en/git-gui.txt:127 en/git-hash-object.txt:65 en/git-help.txt:204
+#: en/git-http-backend.txt:277 en/git-http-fetch.txt:49 en/git-http-push.txt:97
+#: en/git-imap-send.txt:140 en/git-index-pack.txt:108 en/git-init-db.txt:23
+#: en/git-init.txt:154 en/git-instaweb.txt:94 en/git-interpret-trailers.txt:390
+#: en/git-log.txt:235 en/git-ls-files.txt:248 en/git-ls-remote.txt:117
+#: en/git-ls-tree.txt:104 en/git-mailinfo.txt:102 en/git-mailsplit.txt:57
+#: en/git-merge-base.txt:231 en/git-merge-file.txt:95 en/git-merge-index.txt:79
+#: en/git-merge-one-file.txt:21 en/git-mergetool--lib.txt:47
+#: en/git-mergetool.txt:112 en/git-merge-tree.txt:29 en/git-merge.txt:363
+#: en/git-mktag.txt:39 en/git-mktree.txt:40 en/git-mv.txt:69
+#: en/git-name-rev.txt:89 en/git-notes.txt:405 en/git-pack-objects.txt:406
+#: en/git-pack-redundant.txt:50 en/git-pack-refs.txt:73
+#: en/git-parse-remote.txt:23 en/git-patch-id.txt:61 en/git-prune-packed.txt:47
+#: en/git-prune.txt:89 en/git-pull.txt:262 en/git-push.txt:673
+#: en/git-quiltimport.txt:64 en/git-read-tree.txt:438 en/git-rebase.txt:1049
+#: en/git-receive-pack.txt:252 en/git-reflog.txt:138 en/git-remote-ext.txt:125
+#: en/git-remote-fd.txt:59 en/git-remote-testgit.txt:30 en/git-remote.txt:256
+#: en/git-repack.txt:188 en/git-replace.txt:161 en/git-request-pull.txt:79
+#: en/git-rerere.txt:222 en/git-reset.txt:474 en/git-revert.txt:129
+#: en/git-rev-list.txt:123 en/git-rev-parse.txt:456 en/git-rm.txt:189
+#: en/git-send-email.txt:512 en/git-send-pack.txt:156 en/git-shell.txt:106
+#: en/git-sh-i18n--envsubst.txt:36 en/git-sh-i18n.txt:43 en/git-shortlog.txt:90
+#: en/git-show-branch.txt:204 en/git-show-index.txt:41 en/git-show-ref.txt:186
+#: en/git-show.txt:87 en/git-sh-setup.txt:95 en/git-stage.txt:23
+#: en/git-stash.txt:300 en/git-status.txt:435 en/git-stripspace.txt:94
+#: en/git-submodule.txt:429 en/git-svn.txt:1174 en/git-symbolic-ref.txt:69
+#: en/git-tag.txt:380 en/git.txt:878 en/git-unpack-file.txt:28
+#: en/git-unpack-objects.txt:52 en/git-update-index.txt:554
+#: en/git-update-ref.txt:152 en/git-update-server-info.txt:44
+#: en/git-upload-archive.txt:62 en/git-upload-pack.txt:53 en/git-var.txt:70
+#: en/git-verify-commit.txt:32 en/git-verify-pack.txt:53
+#: en/git-verify-tag.txt:32 en/git-web--browse.txt:124
+#: en/git-whatchanged.txt:43 en/git-worktree.txt:382 en/git-write-tree.txt:42
+msgid "Part of the linkgit:git[1] suite"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-branch.txt:238
+#. type: Title =
+#: en/git-am.txt:2
 #, no-wrap
-msgid "<newbranch>"
+msgid "git-am(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:241
-msgid ""
-"The new name for an existing branch. The same restrictions as for "
-"<branchname> apply."
+#: en/git-am.txt:7
+msgid "git-am - Apply a series of patches from a mailbox"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-branch.txt:242 en/git-tag.txt:98
+#. type: Plain text
+#: en/git-am.txt:20
 #, no-wrap
-msgid "--sort=<key>"
+msgid ""
+"'git am' [--signoff] [--keep] [--[no-]keep-cr] [--[no-]utf8]\n"
+"\t [--[no-]3way] [--interactive] [--committer-date-is-author-date]\n"
+"\t [--ignore-date] [--ignore-space-change | --ignore-whitespace]\n"
+"\t [--whitespace=<option>] [-C<n>] [-p<n>] [--directory=<dir>]\n"
+"\t [--exclude=<path>] [--include=<path>] [--reject] [-q | --quiet]\n"
+"\t [--[no-]scissors] [-S[<keyid>]] [--patch-format=<format>]\n"
+"\t [(<mbox> | <Maildir>)...]\n"
+"'git am' (--continue | --skip | --abort | --quit | --show-current-patch)\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:251
+#: en/git-am.txt:26
 msgid ""
-"Sort based on the key given. Prefix `-` to sort in descending order of the "
-"value. You may use the --sort=<key> option multiple times, in which case the "
-"last key becomes the primary key. The keys supported are the same as those "
-"in `git for-each-ref`. Sort order defaults to sorting based on the full "
-"refname (including `refs/...` prefix). This lists detached HEAD (if present) "
-"first, then local branches and finally remote-tracking branches."
+"Splits mail messages in a mailbox into commit log message, authorship "
+"information and patches, and applies them to the current branch."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-branch.txt:253 en/git-for-each-ref.txt:67 en/git-tag.txt:127
+#: en/git-am.txt:29
 #, no-wrap
-msgid "--points-at <object>"
+msgid "(<mbox>|<Maildir>)..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:255
-msgid "Only list branches of the given object."
+#: en/git-am.txt:33
+msgid ""
+"The list of mailbox files to read patches from. If you do not supply this "
+"argument, the command reads from the standard input.  If you supply "
+"directories, they will be treated as Maildirs."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-branch.txt:256
+#: en/git-am.txt:35 en/git-cherry-pick.txt:101 en/git-commit.txt:166
+#: en/git-format-patch.txt:117 en/git-rebase.txt:382 en/git-revert.txt:90
+#: en/merge-options.txt:61
 #, no-wrap
-msgid "--format <format>"
+msgid "--signoff"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:260
+#: en/git-am.txt:39
 msgid ""
-"A string that interpolates `%(fieldname)` from the object pointed at by a "
-"ref being shown.  The format is the same as that of "
-"linkgit:git-for-each-ref[1]."
+"Add a `Signed-off-by:` line to the commit message, using the committer "
+"identity of yourself.  See the signoff option in linkgit:git-commit[1] for "
+"more information."
 msgstr ""
 
-#. type: Title -
-#: en/git-branch.txt:262 en/git-clone.txt:258 en/git-filter-branch.txt:214 en/git-grep.txt:298 en/git-gui.txt:52 en/git-imap-send.txt:106 en/git-push.txt:467 en/git-remote.txt:203 en/git-update-index.txt:337 en/git-whatchanged.txt:29
-#, no-wrap
-msgid "Examples"
+#. type: Plain text
+#: en/git-am.txt:43
+msgid "Pass `-k` flag to 'git mailinfo' (see linkgit:git-mailinfo[1])."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-branch.txt:264
+#: en/git-am.txt:44 en/git-quiltimport.txt:59
 #, no-wrap
-msgid "Start development from a known tag"
+msgid "--keep-non-patch"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-branch.txt:271
+#. type: Plain text
+#: en/git-am.txt:46 en/git-quiltimport.txt:61
+msgid "Pass `-b` flag to 'git mailinfo' (see linkgit:git-mailinfo[1])."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-am.txt:47
 #, no-wrap
-msgid ""
-"$ git clone git://git.kernel.org/pub/scm/.../linux-2.6 my2.6\n"
-"$ cd my2.6\n"
-"$ git branch my2.6.14 v2.6.14   <1>\n"
-"$ git checkout my2.6.14\n"
+msgid "--[no-]keep-cr"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:275
+#: en/git-am.txt:52
 msgid ""
-"This step and the next one could be combined into a single step with "
-"\"checkout -b my2.6.14 v2.6.14\"."
+"With `--keep-cr`, call 'git mailsplit' (see linkgit:git-mailsplit[1])  with "
+"the same option, to prevent it from stripping CR at the end of lines. `am."
+"keepcr` configuration variable can be used to specify the default "
+"behaviour.  `--no-keep-cr` is useful to override `am.keepcr`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-branch.txt:276
+#: en/git-am.txt:53 en/git-blame.txt:52 en/git-branch.txt:120
+#: en/git-cvsexportcommit.txt:37 en/git-diff-files.txt:37
+#: en/git-diff-tree.txt:88 en/git-grep.txt:216 en/git-help.txt:54
+#: en/git-ls-files.txt:35 en/git-shortlog.txt:50 en/git-stripspace.txt:42
+#: en/rev-list-options.txt:950
 #, no-wrap
-msgid "Delete an unneeded branch"
+msgid "-c"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-branch.txt:283
+#. type: Labeled list
+#: en/git-am.txt:54 en/git-mailinfo.txt:74
 #, no-wrap
-msgid ""
-"$ git clone git://git.kernel.org/.../git.git my.git\n"
-"$ cd my.git\n"
-"$ git branch -d -r origin/todo origin/html origin/man   <1>\n"
-"$ git branch -D test                                    <2>\n"
+msgid "--scissors"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:288
+#: en/git-am.txt:58
 msgid ""
-"Delete the remote-tracking branches \"todo\", \"html\" and \"man\". The next "
-"'fetch' or 'pull' will create them again unless you configure them not to.  "
-"See linkgit:git-fetch[1]."
+"Remove everything in body before a scissors line (see linkgit:git-"
+"mailinfo[1]). Can be activated by default using the `mailinfo.scissors` "
+"configuration variable."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-am.txt:59 en/git-mailinfo.txt:90
+#, no-wrap
+msgid "--no-scissors"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:290
-msgid ""
-"Delete the \"test\" branch even if the \"master\" branch (or whichever "
-"branch is currently checked out) does not have all commits from the test "
-"branch."
+#: en/git-am.txt:61
+msgid "Ignore scissors lines (see linkgit:git-mailinfo[1])."
 msgstr ""
 
-#. type: Title -
-#: en/git-branch.txt:293 en/git-filter-branch.txt:431 en/git-gc.txt:138 en/git-prune.txt:68
+#. type: Labeled list
+#: en/git-am.txt:62 en/git-branch.txt:113 en/git-checkout.txt:227
+#: en/git-cvsexportcommit.txt:60 en/git-cvsimport.txt:118
+#: en/git-diff-index.txt:32 en/git-diff-tree.txt:66 en/git-help.txt:69
+#: en/git-instaweb.txt:36 en/git-ls-files.txt:43 en/git-mailinfo.txt:69
+#: en/git-read-tree.txt:34 en/git-rebase.txt:267 en/git-svn.txt:308
+#: en/git-svn.txt:675 en/git-symbolic-ref.txt:49 en/rev-list-options.txt:963
 #, no-wrap
-msgid "Notes"
+msgid "-m"
 msgstr ""
 
-#. type: Plain text
-#: en/git-branch.txt:298
-msgid ""
-"If you are creating a branch that you want to checkout immediately, it is "
-"easier to use the git checkout command with its `-b` option to create a "
-"branch and check it out with a single command."
+#. type: Labeled list
+#: en/git-am.txt:63 en/git-mailinfo.txt:70
+#, no-wrap
+msgid "--message-id"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:301
+#: en/git-am.txt:68
 msgid ""
-"The options `--contains`, `--merged` and `--no-merged` serve three related "
-"but different purposes:"
+"Pass the `-m` flag to 'git mailinfo' (see linkgit:git-mailinfo[1]), so that "
+"the Message-ID header is added to the commit message.  The `am.messageid` "
+"configuration variable can be used to specify the default behaviour."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-am.txt:69
+#, no-wrap
+msgid "--no-message-id"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:305
+#: en/git-am.txt:72
 msgid ""
-"`--contains <commit>` is used to find all branches which will need special "
-"attention if <commit> were to be rebased or amended, since those branches "
-"contain the specified <commit>."
+"Do not add the Message-ID header to the commit message.  `no-message-id` is "
+"useful to override `am.messageid`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:308
-msgid ""
-"`--merged` is used to find all branches which can be safely deleted, since "
-"those branches are fully contained by HEAD."
+#: en/git-am.txt:76
+msgid "Be quiet. Only print error messages."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-am.txt:78
+#, no-wrap
+msgid "--utf8"
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:311
+#: en/git-am.txt:84
 msgid ""
-"`--no-merged` is used to find branches which are candidates for merging into "
-"HEAD, since those branches are not fully contained by HEAD."
+"Pass `-u` flag to 'git mailinfo' (see linkgit:git-mailinfo[1]).  The "
+"proposed commit log message taken from the e-mail is re-coded into UTF-8 "
+"encoding (configuration variable `i18n.commitencoding` can be used to "
+"specify project's preferred encoding if it is not UTF-8)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-branch.txt:319
+#: en/git-am.txt:87
+#, no-wrap
 msgid ""
-"linkgit:git-check-ref-format[1], linkgit:git-fetch[1], "
-"linkgit:git-remote[1], "
-"link:user-manual.html#what-is-a-branch[``Understanding history: What is a "
-"branch?''] in the Git User's Manual."
+"This was optional in prior versions of git, but now it is the\n"
+"default.   You can use `--no-utf8` to override this.\n"
 msgstr ""
 
-#. type: Title =
-#: en/git-bundle.txt:2
+#. type: Labeled list
+#: en/git-am.txt:88
 #, no-wrap
-msgid "git-bundle(1)"
+msgid "--no-utf8"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bundle.txt:7
-msgid "git-bundle - Move objects and refs by archive"
+#: en/git-am.txt:91
+msgid "Pass `-n` flag to 'git mailinfo' (see linkgit:git-mailinfo[1])."
 msgstr ""
 
-#. type: Plain text
-#: en/git-bundle.txt:16
+#. type: Labeled list
+#: en/git-am.txt:92 en/git-apply.txt:85
 #, no-wrap
-msgid ""
-"'git bundle' create <file> <git-rev-list-args>\n"
-"'git bundle' verify <file>\n"
-"'git bundle' list-heads <file> [<refname>...]\n"
-"'git bundle' unbundle <file> [<refname>...]\n"
+msgid "-3"
 msgstr ""
 
-#. type: Plain text
-#: en/git-bundle.txt:32
-msgid ""
-"Some workflows require that one or more branches of development on one "
-"machine be replicated on another machine, but the two machines cannot be "
-"directly connected, and therefore the interactive Git protocols (git, ssh, "
-"http) cannot be used.  This command provides support for 'git fetch' and "
-"'git pull' to operate by packaging objects and references in an archive at "
-"the originating machine, then importing those into another repository using "
-"'git fetch' and 'git pull' after moving the archive by some means (e.g., by "
-"sneakernet).  As no direct connection between the repositories exists, the "
-"user must specify a basis for the bundle that is held by the destination "
-"repository: the bundle assumes that all objects in the basis are already in "
-"the destination repository."
+#. type: Labeled list
+#: en/git-am.txt:93 en/git-apply.txt:86
+#, no-wrap
+msgid "--3way"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-bundle.txt:36
+#: en/git-am.txt:94
 #, no-wrap
-msgid "create <file>"
+msgid "--no-3way"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bundle.txt:39
+#: en/git-am.txt:101
 msgid ""
-"Used to create a bundle named 'file'.  This requires the 'git-rev-list-args' "
-"arguments to define the bundle contents."
+"When the patch does not apply cleanly, fall back on 3-way merge if the patch "
+"records the identity of blobs it is supposed to apply to and we have those "
+"blobs available locally. `--no-3way` can be used to override am.threeWay "
+"configuration variable. For more information, see am.threeWay in linkgit:git-"
+"config[1]."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-bundle.txt:40
+#. type: Plain text
+#: en/git-am.txt:103 en/git-apply.txt:183 en/git-rebase.txt:368
+#: en/git-rebase.txt:518
 #, no-wrap
-msgid "verify <file>"
+msgid "--ignore-whitespace"
 msgstr ""
 
-#. type: Plain text
-#: en/git-bundle.txt:47
-msgid ""
-"Used to check that a bundle file is valid and will apply cleanly to the "
-"current repository.  This includes checks on the bundle format itself as "
-"well as checking that the prerequisite commits exist and are fully linked in "
-"the current repository.  'git bundle' prints a list of missing commits, if "
-"any, and exits with a non-zero status."
+#. type: Labeled list
+#: en/git-am.txt:104 en/git-rebase.txt:369
+#, no-wrap
+msgid "--whitespace=<option>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-bundle.txt:48
+#: en/git-am.txt:105 en/git-apply.txt:129 en/git-rebase.txt:332
 #, no-wrap
-msgid "list-heads <file>"
+msgid "-C<n>"
 msgstr ""
 
-#. type: Plain text
-#: en/git-bundle.txt:52
-msgid ""
-"Lists the references defined in the bundle.  If followed by a list of "
-"references, only references matching those given are printed out."
+#. type: Labeled list
+#: en/git-am.txt:106 en/git-apply.txt:123
+#, no-wrap
+msgid "-p<n>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-bundle.txt:53
+#: en/git-am.txt:107
 #, no-wrap
-msgid "unbundle <file>"
+msgid "--directory=<dir>"
 msgstr ""
 
-#. type: Plain text
-#: en/git-bundle.txt:59
-msgid ""
-"Passes the objects in the bundle to 'git index-pack' for storage in the "
-"repository, then prints the names of all defined references. If a list of "
-"references is given, only references matching those in the list are "
-"printed. This command is really plumbing, intended to be called only by 'git "
-"fetch'."
+#. type: Labeled list
+#: en/git-am.txt:108
+#, no-wrap
+msgid "--exclude=<path>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-bundle.txt:60
+#: en/git-am.txt:109
 #, no-wrap
-msgid "<git-rev-list-args>"
+msgid "--include=<path>"
 msgstr ""
 
-#. type: Plain text
-#: en/git-bundle.txt:69
-msgid ""
-"A list of arguments, acceptable to 'git rev-parse' and 'git rev-list' (and "
-"containing a named ref, see SPECIFYING REFERENCES below), that specifies the "
-"specific objects and references to transport.  For example, "
-"`master~10..master` causes the current master reference to be packaged along "
-"with all objects added since its 10th ancestor commit.  There is no explicit "
-"limit to the number of references and objects that may be packaged."
+#. type: Labeled list
+#: en/git-am.txt:110 en/git-apply.txt:108
+#, no-wrap
+msgid "--reject"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bundle.txt:77
-#, no-wrap
+#: en/git-am.txt:114
 msgid ""
-"[<refname>...]::\n"
-"\tA list of references used to limit the references reported as\n"
-"\tavailable. This is principally of use to 'git fetch', which\n"
-"\texpects to receive only those references asked for and not\n"
-"\tnecessarily everything in the pack (in this case, 'git bundle' acts\n"
-"\tlike 'git fetch-pack').\n"
+"These flags are passed to the 'git apply' (see linkgit:git-apply[1])  "
+"program that applies the patch."
 msgstr ""
 
-#. type: Title -
-#: en/git-bundle.txt:79
+#. type: Labeled list
+#: en/git-am.txt:115
 #, no-wrap
-msgid "SPECIFYING REFERENCES"
+msgid "--patch-format"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bundle.txt:89
+#: en/git-am.txt:121
 msgid ""
-"'git bundle' will only package references that are shown by 'git show-ref': "
-"this includes heads, tags, and remote heads.  References such as `master~1` "
-"cannot be packaged, but are perfectly suitable for defining the basis.  More "
-"than one reference may be packaged, and more than one basis can be "
-"specified.  The objects packaged are those not contained in the union of the "
-"given bases.  Each basis can be specified explicitly (e.g. `^master~10`), or "
-"implicitly (e.g.  `master~10..master`, `--since=10.days.ago master`)."
+"By default the command will try to detect the patch format automatically. "
+"This option allows the user to bypass the automatic detection and specify "
+"the patch format that the patch(es) should be interpreted as. Valid formats "
+"are mbox, mboxrd, stgit, stgit-series and hg."
 msgstr ""
 
 #. type: Plain text
-#: en/git-bundle.txt:94
-msgid ""
-"It is very important that the basis used be held by the destination.  It is "
-"okay to err on the side of caution, causing the bundle file to contain "
-"objects already in the destination, as these are ignored when unpacking at "
-"the destination."
+#: en/git-am.txt:125
+msgid "Run interactively."
 msgstr ""
 
 #. type: Plain text
-#: en/git-bundle.txt:96 en/git-fmt-merge-msg.txt:61 en/git-imap-send.txt:140 en/git-name-rev.txt:65 en/git-p4.txt:33 en/git-prune.txt:57 en/git-request-pull.txt:50 en/git-send-email.txt:441 en/git-shell.txt:66 en/git-show-branch.txt:177 en/git-show-ref.txt:124 en/git-var.txt:27
+#: en/git-am.txt:126 en/git-rebase.txt:375 en/git-rebase.txt:515
 #, no-wrap
-msgid "EXAMPLE"
+msgid "--committer-date-is-author-date"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bundle.txt:103
+#: en/git-am.txt:132
 msgid ""
-"Assume you want to transfer the history from a repository R1 on machine A to "
-"another repository R2 on machine B.  For whatever reason, direct connection "
-"between A and B is not allowed, but we can move data from A to B via some "
-"mechanism (CD, email, etc.).  We want to update R2 with development made on "
-"the branch master in R1."
+"By default the command records the date from the e-mail message as the "
+"commit author date, and uses the time of commit creation as the committer "
+"date. This allows the user to lie about the committer date by using the same "
+"value as the author date."
 msgstr ""
 
 #. type: Plain text
-#: en/git-bundle.txt:108
-msgid ""
-"To bootstrap the process, you can first create a bundle that does not have "
-"any basis. You can use a tag to remember up to what commit you last "
-"processed, in order to make it easy to later update the other repository "
-"with an incremental bundle:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-bundle.txt:113
+#: en/git-am.txt:133 en/git-rebase.txt:376 en/git-rebase.txt:516
 #, no-wrap
-msgid ""
-"machineA$ cd R1\n"
-"machineA$ git bundle create file.bundle master\n"
-"machineA$ git tag -f lastR2bundle master\n"
+msgid "--ignore-date"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bundle.txt:118
+#: en/git-am.txt:139
 msgid ""
-"Then you transfer file.bundle to the target machine B. Because this bundle "
-"does not require any existing object to be extracted, you can create a new "
-"repository on machine B by cloning from it:"
+"By default the command records the date from the e-mail message as the "
+"commit author date, and uses the time of commit creation as the committer "
+"date. This allows the user to lie about the author date by using the same "
+"value as the committer date."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bundle.txt:121
+#. type: Labeled list
+#: en/git-am.txt:140 en/git-rebase.txt:256
 #, no-wrap
-msgid "machineB$ git clone -b master /home/me/tmp/file.bundle R2\n"
+msgid "--skip"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bundle.txt:126
+#: en/git-am.txt:143
 msgid ""
-"This will define a remote called \"origin\" in the resulting repository that "
-"lets you fetch and pull from the bundle. The $GIT_DIR/config file in R2 will "
-"have an entry like this:"
+"Skip the current patch.  This is only meaningful when restarting an aborted "
+"patch."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bundle.txt:131
+#. type: Labeled list
+#: en/git-am.txt:144 en/git-cherry-pick.txt:105 en/git-commit-tree.txt:57
+#: en/git-commit.txt:333 en/git-rebase.txt:303 en/git-revert.txt:83
+#: en/merge-options.txt:46
 #, no-wrap
-msgid ""
-"[remote \"origin\"]\n"
-"    url = /home/me/tmp/file.bundle\n"
-"    fetch = refs/heads/*:refs/remotes/origin/*\n"
+msgid "-S[<keyid>]"
 msgstr ""
 
-#. type: Plain text
-#: en/git-bundle.txt:136
-msgid ""
-"To update the resulting mine.git repository, you can fetch or pull after "
-"replacing the bundle stored at /home/me/tmp/file.bundle with incremental "
-"updates."
+#. type: Labeled list
+#: en/git-am.txt:145 en/git-cherry-pick.txt:106 en/git-commit-tree.txt:58
+#: en/git-commit.txt:334 en/git-rebase.txt:304 en/git-revert.txt:84
+#: en/merge-options.txt:47
+#, no-wrap
+msgid "--gpg-sign[=<keyid>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bundle.txt:139
+#: en/git-am.txt:149 en/git-cherry-pick.txt:110 en/git-commit-tree.txt:62
+#: en/git-commit.txt:338 en/git-rebase.txt:308 en/git-revert.txt:88
 msgid ""
-"After working some more in the original repository, you can create an "
-"incremental bundle to update the other repository:"
+"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."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bundle.txt:144
+#. type: Labeled list
+#: en/git-am.txt:150 en/git-merge.txt:102 en/git-rebase.txt:228
+#: en/sequencer.txt:1
 #, no-wrap
-msgid ""
-"machineA$ cd R1\n"
-"machineA$ git bundle create file.bundle lastR2bundle..master\n"
-"machineA$ git tag -f lastR2bundle master\n"
+msgid "--continue"
 msgstr ""
 
-#. type: Plain text
-#: en/git-bundle.txt:148
-msgid ""
-"You then transfer the bundle to the other machine to replace "
-"/home/me/tmp/file.bundle, and pull from it."
+#. type: Labeled list
+#: en/git-am.txt:151 en/git-branch.txt:149 en/git-cherry-pick.txt:74
+#: en/git-diff-tree.txt:36 en/git-grep.txt:127 en/git-ls-tree.txt:44
+#: en/git-pull.txt:103 en/git-rebase.txt:401 en/git-rm.txt:49
+#: en/git-show-branch.txt:43 en/git-unpack-objects.txt:38
+#: en/rev-list-options.txt:971
+#, no-wrap
+msgid "-r"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bundle.txt:152
+#. type: Labeled list
+#: en/git-am.txt:152
 #, no-wrap
-msgid ""
-"machineB$ cd R2\n"
-"machineB$ git pull\n"
+msgid "--resolved"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bundle.txt:160
+#: en/git-am.txt:159
 msgid ""
-"If you know up to what commit the intended recipient repository should have "
-"the necessary objects, you can use that knowledge to specify the basis, "
-"giving a cut-off point to limit the revisions and objects that go in the "
-"resulting bundle. The previous example used the lastR2bundle tag for this "
-"purpose, but you can use any other options that you would give to the "
-"linkgit:git-log[1] command. Here are more examples:"
+"After a patch failure (e.g. attempting to apply conflicting patch), the user "
+"has applied it by hand and the index file stores the result of the "
+"application.  Make a commit using the authorship and commit log extracted "
+"from the e-mail message and the current index file, and continue."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-am.txt:160
+#, no-wrap
+msgid "--resolvemsg=<msg>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bundle.txt:162
-msgid "You can use a tag that is present in both:"
+#: en/git-am.txt:166
+msgid ""
+"When a patch failure occurs, <msg> will be printed to the screen before "
+"exiting.  This overrides the standard message informing you to use `--"
+"continue` or `--skip` to handle the failure.  This is solely for internal "
+"use between 'git rebase' and 'git am'."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bundle.txt:165
+#. type: Labeled list
+#: en/git-am.txt:167 en/git-merge.txt:90 en/git-notes.txt:201
+#: en/git-rebase.txt:231 en/sequencer.txt:11
 #, no-wrap
-msgid "$ git bundle create mybundle v1.0.0..master\n"
+msgid "--abort"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bundle.txt:168
-msgid "You can use a basis based on time:"
+#: en/git-am.txt:169
+msgid "Restore the original branch and abort the patching operation."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bundle.txt:171
+#. type: Labeled list
+#: en/git-am.txt:170 en/git-rebase.txt:238 en/sequencer.txt:6
 #, no-wrap
-msgid "$ git bundle create mybundle --since=10.days master\n"
+msgid "--quit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bundle.txt:174
-msgid "You can use the number of commits:"
+#: en/git-am.txt:173
+msgid "Abort the patching operation but keep HEAD and the index untouched."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bundle.txt:177
+#. type: Labeled list
+#: en/git-am.txt:174 en/git-rebase.txt:262
 #, no-wrap
-msgid "$ git bundle create mybundle -10 master\n"
+msgid "--show-current-patch"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bundle.txt:181
+#: en/git-am.txt:177
 msgid ""
-"You can run `git-bundle verify` to see if you can extract from a bundle that "
-"was created with a basis:"
+"Show the patch being applied when \"git am\" is stopped because of conflicts."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-bundle.txt:184
+#. type: Title -
+#: en/git-am.txt:179 en/git-commit.txt:451 en/git-format-patch.txt:346
+#: en/git-fsck.txt:100 en/git-log.txt:172 en/git-merge-base.txt:76
+#: en/git-notes.txt:218 en/git-remote.txt:200 en/git-rerere.txt:77
+#: en/git-reset.txt:349 en/git-rm.txt:73 en/git-show.txt:81
+#: en/git-stash.txt:188 en/git-tag.txt:224
 #, no-wrap
-msgid "$ git bundle verify mybundle\n"
+msgid "DISCUSSION"
 msgstr ""
 
 #. type: Plain text
-#: en/git-bundle.txt:188
+#: en/git-am.txt:187
 msgid ""
-"This will list what commits you must have in order to extract from the "
-"bundle and will error out if you do not have them."
+"The commit author name is taken from the \"From: \" line of the message, and "
+"commit author date is taken from the \"Date: \" line of the message.  The "
+"\"Subject: \" line is used as the title of the commit, after stripping "
+"common prefix \"[PATCH <anything>]\".  The \"Subject: \" line is supposed to "
+"concisely describe what the commit is about in one line of text."
 msgstr ""
 
 #. type: Plain text
-#: en/git-bundle.txt:192
+#: en/git-am.txt:190
 msgid ""
-"A bundle from a recipient repository's point of view is just like a regular "
-"repository which it fetches or pulls from. You can, for example, map "
-"references when fetching:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-bundle.txt:195
-#, no-wrap
-msgid "$ git fetch mybundle master:localRef\n"
+"\"From: \" and \"Subject: \" lines starting the body override the respective "
+"commit author name and title values taken from the headers."
 msgstr ""
 
 #. type: Plain text
-#: en/git-bundle.txt:198
-msgid "You can also see what references it offers:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-bundle.txt:201
-#, no-wrap
-msgid "$ git ls-remote mybundle\n"
-msgstr ""
-
-#. type: Title =
-#: en/git-cat-file.txt:2
-#, no-wrap
-msgid "git-cat-file(1)"
+#: en/git-am.txt:195
+msgid ""
+"The commit message is formed by the title taken from the \"Subject: \", a "
+"blank line and the body of the message up to where the patch begins.  Excess "
+"whitespace at the end of each line is automatically stripped."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:7
+#: en/git-am.txt:198
 msgid ""
-"git-cat-file - Provide content or type and size information for repository "
-"objects"
+"The patch is expected to be inline, directly following the message.  Any "
+"line that is of the form:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:14
-#, no-wrap
-msgid ""
-"'git cat-file' (-t [--allow-unknown-type]| -s [--allow-unknown-type]| -e | "
-"-p | <type> | --textconv | --filters ) [--path=<path>] <object>\n"
-"'git cat-file' (--batch | --batch-check) [ --textconv | --filters ] "
-"[--follow-symlinks]\n"
+#: en/git-am.txt:200
+msgid "three-dashes and end-of-line, or"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:21
-msgid ""
-"In its first form, the command provides the content or the type of an object "
-"in the repository. The type is required unless `-t` or `-p` is used to find "
-"the object type, or `-s` is used to find the object size, or `--textconv` or "
-"`--filters` is used (which imply type \"blob\")."
+#: en/git-am.txt:201
+msgid "a line that begins with \"diff -\", or"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:28
-msgid ""
-"In the second form, a list of objects (separated by linefeeds) is provided "
-"on stdin, and the SHA-1, type, and size of each object is printed on "
-"stdout. The output format can be overridden using the optional `<format>` "
-"argument. If either `--textconv` or `--filters` was specified, the input is "
-"expected to list the object names followed by the path name, separated by a "
-"single white space, so that the appropriate drivers can be determined."
+#: en/git-am.txt:202
+msgid "a line that begins with \"Index: \""
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:35
+#: en/git-am.txt:205
 msgid ""
-"The name of the object to show.  For a more complete list of ways to spell "
-"object names, see the \"SPECIFYING REVISIONS\" section in "
-"linkgit:gitrevisions[7]."
+"is taken as the beginning of a patch, and the commit log message is "
+"terminated before the first occurrence of such a line."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:39
-msgid "Instead of the content, show the object type identified by <object>."
+#: en/git-am.txt:209
+msgid ""
+"When initially invoking `git am`, you give it the names of the mailboxes to "
+"process.  Upon seeing the first patch that does not apply, it aborts in the "
+"middle.  You can recover from this in one of two ways:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:43
-msgid "Instead of the content, show the object size identified by <object>."
+#: en/git-am.txt:212
+msgid ""
+"skip the current patch by re-running the command with the `--skip` option."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:47
+#: en/git-am.txt:216
 msgid ""
-"Suppress all output; instead exit with zero status if <object> exists and is "
-"a valid object."
+"hand resolve the conflict in the working directory, and update the index "
+"file to bring it into a state that the patch should have produced.  Then run "
+"the command with the `--continue` option."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:50
-msgid "Pretty-print the contents of <object> based on its type."
+#: en/git-am.txt:221
+msgid ""
+"The command refuses to process new mailboxes until the current operation is "
+"finished, so if you decide to start over from scratch, run `git am --abort` "
+"before running the command with mailbox names."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:58
+#: en/git-am.txt:227
 msgid ""
-"Typically this matches the real type of <object> but asking for a type that "
-"can trivially be dereferenced from the given <object> is also permitted.  An "
-"example is to ask for a \"tree\" with <object> being a commit object that "
-"contains it, or to ask for a \"blob\" with <object> being a tag object that "
-"points at it."
+"Before any patches are applied, ORIG_HEAD is set to the tip of the current "
+"branch.  This is useful if you have problems with multiple commits, like "
+"running 'git am' on the wrong branch or an error in the commits that is more "
+"easily fixed by changing the mailbox (e.g.  errors in the \"From:\" lines)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cat-file.txt:59 en/git-grep.txt:109 en/diff-options.txt:570
+#. type: Title -
+#: en/git-am.txt:229 en/git-commit.txt:471 en/git-gc.txt:197
 #, no-wrap
-msgid "--textconv"
+msgid "HOOKS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:64
+#: en/git-am.txt:233
 msgid ""
-"Show the content as transformed by a textconv filter. In this case, <object> "
-"has to be of the form <tree-ish>:<path>, or :<path> in order to apply the "
-"filter to the content recorded in the index at <path>."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-cat-file.txt:65
-#, no-wrap
-msgid "--filters"
+"This command can run `applypatch-msg`, `pre-applypatch`, and `post-"
+"applypatch` hooks.  See linkgit:githooks[5] for more information."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:70
-msgid ""
-"Show the content as converted by the filters configured in the current "
-"working tree for the given <path> (i.e. smudge filters, end-of-line "
-"conversion, etc). In this case, <object> has to be of the form "
-"<tree-ish>:<path>, or :<path>."
+#: en/git-am.txt:237
+msgid "linkgit:git-apply[1]."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cat-file.txt:71
+#. type: Title =
+#: en/git-annotate.txt:2
 #, no-wrap
-msgid "--path=<path>"
+msgid "git-annotate(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:75
-msgid ""
-"For use with --textconv or --filters, to allow specifying an object name and "
-"a path separately, e.g. when it is difficult to figure out the revision from "
-"which the blob came."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-cat-file.txt:76 en/git-mktree.txt:32
-#, no-wrap
-msgid "--batch"
+#: en/git-annotate.txt:7
+msgid "git-annotate - Annotate file lines with commit information"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cat-file.txt:77
+#. type: Plain text
+#: en/git-annotate.txt:12
 #, no-wrap
-msgid "--batch=<format>"
+msgid "'git annotate' [<options>] <file> [<revision>]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:83
+#: en/git-annotate.txt:17
 msgid ""
-"Print object information and contents for each object provided on stdin.  "
-"May not be combined with any other options or arguments except `--textconv` "
-"or `--filters`, in which case the input lines also need to specify the path, "
-"separated by white space.  See the section `BATCH OUTPUT` below for details."
+"Annotates each line in the given file with information from the commit which "
+"introduced the line. Optionally annotates from a given revision."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cat-file.txt:84
-#, no-wrap
-msgid "--batch-check"
+#. type: Plain text
+#: en/git-annotate.txt:22
+msgid ""
+"The only difference between this command and linkgit:git-blame[1] is that "
+"they use slightly different output formats, and this command exists only for "
+"backward compatibility to support existing scripts, and provide a more "
+"familiar command name for people coming from other SCM systems."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cat-file.txt:85
+#. type: Title =
+#: en/git-apply.txt:2
 #, no-wrap
-msgid "--batch-check=<format>"
+msgid "git-apply(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:91
-msgid ""
-"Print object information for each object provided on stdin.  May not be "
-"combined with any other options or arguments except `--textconv` or "
-"`--filters`, in which case the input lines also need to specify the path, "
-"separated by white space.  See the section `BATCH OUTPUT` below for details."
+#: en/git-apply.txt:7
+msgid "git-apply - Apply a patch to files and/or to the index"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cat-file.txt:92
+#. type: Plain text
+#: en/git-apply.txt:20
 #, no-wrap
-msgid "--batch-all-objects"
+msgid ""
+"'git apply' [--stat] [--numstat] [--summary] [--check] [--index | --intent-to-add] [--3way]\n"
+"\t  [--apply] [--no-add] [--build-fake-ancestor=<file>] [-R | --reverse]\n"
+"\t  [--allow-binary-replacement | --binary] [--reject] [-z]\n"
+"\t  [-p<n>] [-C<n>] [--inaccurate-eof] [--recount] [--cached]\n"
+"\t  [--ignore-space-change | --ignore-whitespace]\n"
+"\t  [--whitespace=(nowarn|warn|fix|error|error-all)]\n"
+"\t  [--exclude=<path>] [--include=<path>] [--directory=<root>]\n"
+"\t  [--verbose] [--unsafe-paths] [<patch>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:98
+#: en/git-apply.txt:30
 msgid ""
-"Instead of reading a list of objects on stdin, perform the requested batch "
-"operation on all objects in the repository and any alternate object stores "
-"(not just reachable objects).  Requires `--batch` or `--batch-check` be "
-"specified. Note that the objects are visited in order sorted by their "
-"hashes."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-cat-file.txt:99
-#, no-wrap
-msgid "--buffer"
+"Reads the supplied diff output (i.e. \"a patch\") and applies it to files.  "
+"When running from a subdirectory in a repository, patched paths outside the "
+"directory are ignored.  With the `--index` option the patch is also applied "
+"to the index, and with the `--cached` option the patch is only applied to "
+"the index.  Without these options, the command applies the patch only to "
+"files, and does not require them to be in a Git repository."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:105
+#: en/git-apply.txt:34
 msgid ""
-"Normally batch output is flushed after each object is output, so that a "
-"process can interactively read and write from `cat-file`. With this option, "
-"the output uses normal stdio buffering; this is much more efficient when "
-"invoking `--batch-check` on a large number of objects."
+"This command applies the patch but does not create a commit.  Use linkgit:"
+"git-am[1] to create commits from patches generated by linkgit:git-format-"
+"patch[1] and/or received by email."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cat-file.txt:106
+#: en/git-apply.txt:37
 #, no-wrap
-msgid "--allow-unknown-type"
+msgid "<patch>..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:108
-msgid "Allow -s or -t to query broken/corrupt objects of unknown type."
+#: en/git-apply.txt:40
+msgid ""
+"The files to read the patch from.  '-' can be used to read from the standard "
+"input."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cat-file.txt:109
+#: en/git-apply.txt:41 en/git-rebase.txt:317 en/merge-options.txt:72
 #, no-wrap
-msgid "--follow-symlinks"
+msgid "--stat"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:118
+#: en/git-apply.txt:44
 msgid ""
-"With --batch or --batch-check, follow symlinks inside the repository when "
-"requesting objects with extended SHA-1 expressions of the form "
-"tree-ish:path-in-tree.  Instead of providing output about the link itself, "
-"provide output about the linked-to object.  If a symlink points outside the "
-"tree-ish (e.g. a link to /foo or a root-level link to ../foo), the portion "
-"of the link which is outside the tree will be printed."
+"Instead of applying the patch, output diffstat for the input.  Turns off "
+"\"apply\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:122
+#: en/git-apply.txt:51
 msgid ""
-"This option does not (currently) work correctly when an object in the index "
-"is specified (e.g. `:link` instead of `HEAD:link`) rather than one in the "
-"tree."
+"Similar to `--stat`, but shows the number of added and deleted lines in "
+"decimal notation and the pathname without abbreviation, to make it more "
+"machine friendly.  For binary files, outputs two `-` instead of saying `0 "
+"0`.  Turns off \"apply\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:125
+#: en/git-apply.txt:57
 msgid ""
-"This option cannot (currently) be used unless `--batch` or `--batch-check` "
-"is used."
+"Instead of applying the patch, output a condensed summary of information "
+"obtained from git diff extended headers, such as creations, renames and mode "
+"changes.  Turns off \"apply\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:127
-msgid "For example, consider a git repository containing:"
+#: en/git-apply.txt:62
+msgid ""
+"Instead of applying the patch, see if the patch is applicable to the current "
+"working tree and/or the index file and detects errors.  Turns off \"apply\"."
 msgstr ""
 
-#. type: Plain text
-#: en/git-cat-file.txt:134
+#. type: Labeled list
+#: en/git-apply.txt:63 en/git-checkout-index.txt:26
 #, no-wrap
-msgid ""
-"\tf: a file containing \"hello\\n\"\n"
-"\tlink: a symlink to f\n"
-"\tdir/link: a symlink to ../f\n"
-"\tplink: a symlink to ../f\n"
-"\talink: a symlink to /etc/passwd\n"
+msgid "--index"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:137
-msgid "For a regular file `f`, `echo HEAD:f | git cat-file --batch` would print"
+#: en/git-apply.txt:71
+msgid ""
+"When `--check` is in effect, or when applying the patch (which is the "
+"default when none of the options that disables it is in effect), make sure "
+"the patch is applicable to what the current index file records.  If the file "
+"to be patched in the working tree is not up to date, it is flagged as an "
+"error.  This flag also causes the index file to be updated."
 msgstr ""
 
-#. type: Plain text
-#: en/git-cat-file.txt:140
+#. type: Labeled list
+#: en/git-apply.txt:72 en/git-check-attr.txt:27 en/git-diff-index.txt:29
+#: en/git-grep.txt:75 en/git-ls-files.txt:36 en/git-rm.txt:58
+#: en/git-submodule.txt:279
 #, no-wrap
-msgid "\tce013625030ba8dba906f756967f9e9ca394464a blob 6\n"
+msgid "--cached"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:145
+#: en/git-apply.txt:76
 msgid ""
-"And `echo HEAD:link | git cat-file --batch --follow-symlinks` would print "
-"the same thing, as would `HEAD:dir/link`, as they both point at `HEAD:f`."
+"Apply a patch without touching the working tree. Instead take the cached "
+"data, apply the patch, and store the result in the index without using the "
+"working tree. This implies `--index`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:148
+#: en/git-apply.txt:84
 msgid ""
-"Without `--follow-symlinks`, these would print data about the symlink "
-"itself.  In the case of `HEAD:link`, you would see"
+"When applying the patch only to the working tree, mark new files to be added "
+"to the index later (see `--intent-to-add` option in linkgit:git-add[1]). "
+"This option is ignored unless running in a Git repository and `--index` is "
+"not specified.  Note that `--index` could be implied by other options such "
+"as `--cached` or `--3way`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:151
-#, no-wrap
-msgid "\t4d1ae35ba2c8ec712fa2a379db44ad639ca277bd blob 1\n"
+#: en/git-apply.txt:93
+msgid ""
+"When the patch does not apply cleanly, fall back on 3-way merge if the patch "
+"records the identity of blobs it is supposed to apply to, and we have those "
+"blobs available locally, possibly leaving the conflict markers in the files "
+"in the working tree for the user to resolve.  This option implies the `--"
+"index` option, and is incompatible with the `--reject` and the `--cached` "
+"options."
 msgstr ""
 
-#. type: Plain text
-#: en/git-cat-file.txt:155
-msgid ""
-"Both `plink` and `alink` point outside the tree, so they would respectively "
-"print:"
+#. type: Labeled list
+#: en/git-apply.txt:94
+#, no-wrap
+msgid "--build-fake-ancestor=<file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:159
-#, no-wrap
+#: en/git-apply.txt:100
 msgid ""
-"\tsymlink 4\n"
-"\t../f\n"
+"Newer 'git diff' output has embedded 'index information' for each blob to "
+"help identify the original version that the patch applies to.  When this "
+"flag is given, and if the original versions of the blobs are available "
+"locally, builds a temporary index containing those blobs."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:162
-#, no-wrap
+#: en/git-apply.txt:103
 msgid ""
-"\tsymlink 11\n"
-"\t/etc/passwd\n"
+"When a pure mode change is encountered (which has no index information), the "
+"information is read from the current index instead."
 msgstr ""
 
-#. type: Title -
-#: en/git-cat-file.txt:166 en/git-check-attr.txt:48 en/git-check-ignore.txt:60 en/git-check-mailmap.txt:32 en/git-cvsimport.txt:188 en/git-fetch.txt:103 en/git-push.txt:306 en/git-show-branch.txt:134 en/git-show-ref.txt:97 en/git-status.txt:113 en/git-update-server-info.txt:32
+#. type: Labeled list
+#: en/git-apply.txt:105 en/rev-list-options.txt:668
 #, no-wrap
-msgid "OUTPUT"
+msgid "--reverse"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:168
-msgid "If `-t` is specified, one of the <type>."
+#: en/git-apply.txt:107
+msgid "Apply the patch in reverse."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:170
-msgid "If `-s` is specified, the size of the <object> in bytes."
+#: en/git-apply.txt:114
+msgid ""
+"For atomicity, 'git apply' by default fails the whole patch and does not "
+"touch the working tree when some of the hunks do not apply.  This option "
+"makes it apply the parts of the patch that are applicable, and leave the "
+"rejected hunks in corresponding *.rej files."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:172
-msgid "If `-e` is specified, no output."
+#: en/git-apply.txt:118
+msgid ""
+"When `--numstat` has been given, do not munge pathnames, but use a NUL-"
+"terminated machine-readable format."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:174
-msgid "If `-p` is specified, the contents of <object> are pretty-printed."
+#: en/git-apply.txt:128
+msgid ""
+"Remove <n> leading path components (separated by slashes) from traditional "
+"diff paths. E.g., with `-p2`, a patch against `a/dir/file` will be applied "
+"directly to `file`. The default is 1."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:177
+#: en/git-apply.txt:134 en/git-rebase.txt:337
 msgid ""
-"If <type> is specified, the raw (though uncompressed) contents of the "
-"<object> will be returned."
+"Ensure at least <n> lines of surrounding context match before and after each "
+"change.  When fewer lines of surrounding context exist they all must match.  "
+"By default no context is ever ignored."
 msgstr ""
 
-#. type: Title -
-#: en/git-cat-file.txt:179
+#. type: Labeled list
+#: en/git-apply.txt:135
 #, no-wrap
-msgid "BATCH OUTPUT"
+msgid "--unidiff-zero"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:185
+#: en/git-apply.txt:141
 msgid ""
-"If `--batch` or `--batch-check` is given, `cat-file` will read objects from "
-"stdin, one per line, and print information about them. By default, the whole "
-"line is considered as an object, as if it were fed to "
-"linkgit:git-rev-parse[1]."
+"By default, 'git apply' expects that the patch being applied is a unified "
+"diff with at least one line of context.  This provides good safety measures, "
+"but breaks down when applying a diff generated with `--unified=0`. To bypass "
+"these checks use `--unidiff-zero`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:190
+#: en/git-apply.txt:144
 msgid ""
-"You can specify the information shown for each object by using a custom "
-"`<format>`. The `<format>` is copied literally to stdout for each object, "
-"with placeholders of the form `%(atom)` expanded, followed by a newline. The "
-"available atoms are:"
+"Note, for the reasons stated above usage of context-free patches is "
+"discouraged."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cat-file.txt:191
+#: en/git-apply.txt:145
 #, no-wrap
-msgid "`objectname`"
+msgid "--apply"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:193
-msgid "The 40-hex object name of the object."
+#: en/git-apply.txt:151
+msgid ""
+"If you use any of the options marked \"Turns off 'apply'\" above, 'git "
+"apply' reads and outputs the requested information without actually applying "
+"the patch.  Give this flag after those flags to also apply the patch."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cat-file.txt:194
+#: en/git-apply.txt:152
 #, no-wrap
-msgid "`objecttype`"
+msgid "--no-add"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:196
-msgid "The type of of the object (the same as `cat-file -t` reports)."
+#: en/git-apply.txt:158
+msgid ""
+"When applying a patch, ignore additions made by the patch.  This can be used "
+"to extract the common part between two files by first running 'diff' on them "
+"and applying the result with this option, which would apply the deletion "
+"part but not the addition part."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cat-file.txt:197
+#: en/git-apply.txt:159
 #, no-wrap
-msgid "`objectsize`"
+msgid "--allow-binary-replacement"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:200
-msgid "The size, in bytes, of the object (the same as `cat-file -s` reports)."
+#: en/git-apply.txt:165
+msgid ""
+"Historically we did not allow binary patch applied without an explicit "
+"permission from the user, and this flag was the way to do so.  Currently we "
+"always allow binary patch application, so this is a no-op."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cat-file.txt:201
+#: en/git-apply.txt:166
 #, no-wrap
-msgid "`objectsize:disk`"
+msgid "--exclude=<path-pattern>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:204
+#: en/git-apply.txt:170
 msgid ""
-"The size, in bytes, that the object takes up on disk. See the note about "
-"on-disk sizes in the `CAVEATS` section below."
+"Don't apply changes to files matching the given path pattern. This can be "
+"useful when importing patchsets, where you want to exclude certain files or "
+"directories."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cat-file.txt:205
+#: en/git-apply.txt:171
 #, no-wrap
-msgid "`deltabase`"
+msgid "--include=<path-pattern>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:209
+#: en/git-apply.txt:175
 msgid ""
-"If the object is stored as a delta on-disk, this expands to the 40-hex sha1 "
-"of the delta base object. Otherwise, expands to the null sha1 (40 "
-"zeroes). See `CAVEATS` below."
+"Apply changes to files matching the given path pattern. This can be useful "
+"when importing patchsets, where you want to include certain files or "
+"directories."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cat-file.txt:210
-#, no-wrap
-msgid "`rest`"
+#. type: Plain text
+#: en/git-apply.txt:181
+msgid ""
+"When `--exclude` and `--include` patterns are used, they are examined in the "
+"order they appear on the command line, and the first match determines if a "
+"patch to each path is used.  A patch to a path that does not match any "
+"include/exclude pattern is used by default if there is no include pattern on "
+"the command line, and ignored if there is any include pattern."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:216
+#: en/git-apply.txt:189
 msgid ""
-"If this atom is used in the output string, input lines are split at the "
-"first whitespace boundary. All characters before that whitespace are "
-"considered to be the object name; characters after that first run of "
-"whitespace (i.e., the \"rest\" of the line) are output in place of the "
-"`%(rest)` atom."
+"When applying a patch, ignore changes in whitespace in context lines if "
+"necessary.  Context lines will preserve their whitespace, and they will not "
+"undergo whitespace fixing regardless of the value of the `--whitespace` "
+"option. New lines will still be fixed, though."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-apply.txt:190
+#, no-wrap
+msgid "--whitespace=<action>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:219
+#: en/git-apply.txt:198
 msgid ""
-"If no format is specified, the default format is `%(objectname)  "
-"%(objecttype) %(objectsize)`."
+"When applying a patch, detect a new or modified line that has whitespace "
+"errors.  What are considered whitespace errors is controlled by `core."
+"whitespace` configuration.  By default, trailing whitespaces (including "
+"lines that solely consist of whitespaces) and a space character that is "
+"immediately followed by a tab character inside the initial indent of the "
+"line are considered whitespace errors."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:223
+#: en/git-apply.txt:202
 msgid ""
-"If `--batch` is specified, the object information is followed by the object "
-"contents (consisting of `%(objectsize)` bytes), followed by a newline."
+"By default, the command outputs warning messages but applies the patch.  "
+"When `git-apply` is used for statistics and not applying a patch, it "
+"defaults to `nowarn`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:225
-msgid "For example, `--batch` without a custom format would produce:"
+#: en/git-apply.txt:205
+msgid "You can use different `<action>` values to control this behavior:"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cat-file.txt:229
-#, no-wrap
-msgid ""
-"<sha1> SP <type> SP <size> LF\n"
-"<contents> LF\n"
+#. type: Plain text
+#: en/git-apply.txt:207
+msgid "`nowarn` turns off the trailing whitespace warning."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:232
-msgid "Whereas `--batch-check='%(objectname) %(objecttype)'` would produce:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-cat-file.txt:235
-#, no-wrap
-msgid "<sha1> SP <type> LF\n"
+#: en/git-apply.txt:209
+msgid ""
+"`warn` outputs warnings for a few such errors, but applies the patch as-is "
+"(default)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:239
+#: en/git-apply.txt:213
 msgid ""
-"If a name is specified on stdin that cannot be resolved to an object in the "
-"repository, then `cat-file` will ignore any custom format and print:"
+"`fix` outputs warnings for a few such errors, and applies the patch after "
+"fixing them (`strip` is a synonym --- the tool used to consider only "
+"trailing whitespace characters as errors, and the fix involved 'stripping' "
+"them, but modern Gits do more)."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cat-file.txt:242 en/git-cat-file.txt:262
-#, no-wrap
-msgid "<object> SP missing LF\n"
+#. type: Plain text
+#: en/git-apply.txt:215
+msgid ""
+"`error` outputs warnings for a few such errors, and refuses to apply the "
+"patch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:247
-msgid ""
-"If --follow-symlinks is used, and a symlink in the repository points outside "
-"the repository, then `cat-file` will ignore any custom format and print:"
+#: en/git-apply.txt:216
+msgid "`error-all` is similar to `error` but shows all errors."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cat-file.txt:251
+#. type: Labeled list
+#: en/git-apply.txt:217
 #, no-wrap
-msgid ""
-"symlink SP <size> LF\n"
-"<symlink> LF\n"
+msgid "--inaccurate-eof"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:256
+#: en/git-apply.txt:223
 msgid ""
-"The symlink will either be absolute (beginning with a /), or relative to the "
-"tree root.  For instance, if dir/link points to ../../foo, then <symlink> "
-"will be ../foo.  <size> is the size of the symlink in bytes."
+"Under certain circumstances, some versions of 'diff' do not correctly detect "
+"a missing new-line at the end of the file. As a result, patches created by "
+"such 'diff' programs do not record incomplete lines correctly. This option "
+"adds support for applying such patches by working around this bug."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:259
+#: en/git-apply.txt:229
 msgid ""
-"If --follow-symlinks is used, the following error messages will be "
-"displayed:"
-msgstr ""
-
-#. type: Plain text
-#: en/git-cat-file.txt:264
-msgid "is printed when the initial symlink requested does not exist."
+"Report progress to stderr. By default, only a message about the current "
+"patch being applied will be printed. This option will cause additional "
+"information to be reported."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cat-file.txt:268
+#. type: Labeled list
+#: en/git-apply.txt:230
 #, no-wrap
-msgid ""
-"dangling SP <size> LF\n"
-"<object> LF\n"
+msgid "--recount"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:271
+#: en/git-apply.txt:234
 msgid ""
-"is printed when the initial symlink exists, but something that it "
-"(transitive-of) points to does not."
+"Do not trust the line counts in the hunk headers, but infer them by "
+"inspecting the patch (e.g. after editing the patch without adjusting the "
+"hunk headers appropriately)."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cat-file.txt:275
+#. type: Labeled list
+#: en/git-apply.txt:235
 #, no-wrap
+msgid "--directory=<root>"
+msgstr ""
+
+#. type: Plain text
+#: en/git-apply.txt:238
 msgid ""
-"loop SP <size> LF\n"
-"<object> LF\n"
+"Prepend <root> to all filenames.  If a \"-p\" argument was also passed, it "
+"is applied before prepending the new root."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:278
+#: en/git-apply.txt:242
 msgid ""
-"is printed for symlink loops (or any symlinks that require more than 40 link "
-"resolutions to resolve)."
+"For example, a patch that talks about updating `a/git-gui.sh` to `b/git-gui."
+"sh` can be applied to the file in the working tree `modules/git-gui/git-gui."
+"sh` by running `git apply --directory=modules/git-gui`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cat-file.txt:282
+#. type: Labeled list
+#: en/git-apply.txt:243
 #, no-wrap
+msgid "--unsafe-paths"
+msgstr ""
+
+#. type: Plain text
+#: en/git-apply.txt:248
 msgid ""
-"notdir SP <size> LF\n"
-"<object> LF\n"
+"By default, a patch that affects outside the working area (either a Git "
+"controlled working tree, or the current working directory when \"git apply\" "
+"is used as a replacement of GNU patch) is rejected as a mistake (or a "
+"mischief)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:285
+#: en/git-apply.txt:252
 msgid ""
-"is printed when, during symlink resolution, a file is used as a directory "
-"name."
+"When `git apply` is used as a \"better GNU patch\", the user can pass the `--"
+"unsafe-paths` option to override this safety check.  This option has no "
+"effect when `--index` or `--cached` is in use."
 msgstr ""
 
-#. type: Title -
-#: en/git-cat-file.txt:287 en/git-svn.txt:960
+#. type: Labeled list
+#: en/git-apply.txt:256
 #, no-wrap
-msgid "CAVEATS"
+msgid "apply.ignoreWhitespace"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:295
+#: en/git-apply.txt:260
 msgid ""
-"Note that the sizes of objects on disk are reported accurately, but care "
-"should be taken in drawing conclusions about which refs or objects are "
-"responsible for disk usage. The size of a packed non-delta object may be "
-"much larger than the size of objects which delta against it, but the choice "
-"of which object is the base and which is the delta is arbitrary and is "
-"subject to change during a repack."
+"Set to 'change' if you want changes in whitespace to be ignored by default.  "
+"Set to one of: no, none, never, false if you want changes in whitespace to "
+"be significant."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-apply.txt:260
+#, no-wrap
+msgid "apply.whitespace"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cat-file.txt:299
+#: en/git-apply.txt:263
 msgid ""
-"Note also that multiple copies of an object may be present in the object "
-"database; in this case, it is undefined which copy's size or delta base will "
-"be reported."
+"When no `--whitespace` flag is given from the command line, this "
+"configuration item is used as the default."
 msgstr ""
 
-#. type: Title =
-#: en/git-check-attr.txt:2
+#. type: Title -
+#: en/git-apply.txt:265 en/git-mv.txt:48 en/git-rm.txt:138
 #, no-wrap
-msgid "git-check-attr(1)"
+msgid "SUBMODULES"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:7
-msgid "git-check-attr - Display gitattributes information"
+#: en/git-apply.txt:268
+msgid ""
+"If the patch contains any changes to submodules then 'git apply' treats "
+"these changes as follows."
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:14
-#, no-wrap
+#: en/git-apply.txt:274
 msgid ""
-"'git check-attr' [-a | --all | attr...] [--] pathname...\n"
-"'git check-attr' --stdin [-z] [-a | --all | attr...]\n"
+"If `--index` is specified (explicitly or implicitly), then the submodule "
+"commits must match the index exactly for the patch to apply.  If any of the "
+"submodules are checked-out, then these check-outs are completely ignored, i."
+"e., they are not required to be up to date or clean and they are not updated."
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:19
+#: en/git-apply.txt:278
 msgid ""
-"For every pathname, this command will list if each attribute is "
-"'unspecified', 'set', or 'unset' as a gitattribute on that pathname."
+"If `--index` is not specified, then the submodule commits in the patch are "
+"ignored and only the absence or presence of the corresponding subdirectory "
+"is checked and (if possible) updated."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-check-attr.txt:22
-#, no-wrap
-msgid "-a, --all"
+#. type: Plain text
+#: en/git-apply.txt:282
+msgid "linkgit:git-am[1]."
 msgstr ""
 
-#. type: Plain text
-#: en/git-check-attr.txt:26
-msgid ""
-"List all attributes that are associated with the specified paths.  If this "
-"option is used, then 'unspecified' attributes will not be included in the "
-"output."
+#. type: Title =
+#: en/git-archimport.txt:2
+#, no-wrap
+msgid "git-archimport(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:29
-msgid "Consider `.gitattributes` in the index only, ignoring the working tree."
+#: en/git-archimport.txt:7
+msgid "git-archimport - Import a GNU Arch repository into Git"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-check-attr.txt:30 en/git-check-ignore.txt:37 en/git-check-mailmap.txt:26 en/git-checkout-index.txt:62 en/git-diff-tree.txt:49 en/git-fetch-pack.txt:38 en/git-hash-object.txt:34 en/git-http-fetch.txt:40 en/git-index-pack.txt:38 en/git-name-rev.txt:45 en/git-notes.txt:173 en/git-send-pack.txt:41 en/git-svn.txt:564 en/git-update-index.txt:140 en/rev-list-options.txt:194
+#. type: Plain text
+#: en/git-archimport.txt:14
 #, no-wrap
-msgid "--stdin"
+msgid ""
+"'git archimport' [-h] [-v] [-o] [-a] [-f] [-T] [-D depth] [-t tempdir]\n"
+"               <archive/branch>[:<git-branch>] ...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:33 en/git-check-ignore.txt:40
+#: en/git-archimport.txt:23
 msgid ""
-"Read pathnames from the standard input, one per line, instead of from the "
-"command-line."
+"Imports a project from one or more GNU Arch repositories.  It will follow "
+"branches and repositories within the namespaces defined by the <archive/"
+"branch> parameters supplied. If it cannot find the remote branch a merge "
+"comes from it will just import it as a regular commit. If it can find it, it "
+"will mark it as a merge whenever possible (see discussion below)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:38
+#: en/git-archimport.txt:27
 msgid ""
-"The output format is modified to be machine-parseable.  If `--stdin` is also "
-"given, input paths are separated with a NUL character instead of a linefeed "
-"character."
+"The script expects you to provide the key roots where it can start the "
+"import from an 'initial import' or 'tag' type of Arch commit. It will follow "
+"and import new branches within the provided roots."
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:42
+#: en/git-archimport.txt:32
 msgid ""
-"Interpret all preceding arguments as attributes and all following arguments "
-"as path names."
+"It expects to be dealing with one project only. If it sees branches that "
+"have different roots, it will refuse to run. In that case, edit your "
+"<archive/branch> parameters to define clearly the scope of the import."
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:46
+#: en/git-archimport.txt:37
 msgid ""
-"If none of `--stdin`, `--all`, or `--` is used, the first argument will be "
-"treated as an attribute and the rest of the arguments as pathnames."
+"'git archimport' uses `tla` extensively in the background to access the Arch "
+"repository.  Make sure you have a recent version of `tla` available in the "
+"path. `tla` must know about the repositories you pass to 'git archimport'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:52
-msgid "The output is of the form: <path> COLON SP <attribute> COLON SP <info> LF"
+#: en/git-archimport.txt:42
+msgid ""
+"For the initial import, 'git archimport' expects to find itself in an empty "
+"directory. To follow the development of a project that uses Arch, rerun 'git "
+"archimport' with the same parameters as the initial import to perform "
+"incremental imports."
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:55
+#: en/git-archimport.txt:49
 msgid ""
-"unless `-z` is in effect, in which case NUL is used as delimiter: <path> NUL "
-"<attribute> NUL <info> NUL"
+"While 'git archimport' will try to create sensible branch names for the "
+"archives that it imports, it is also possible to specify Git branch names "
+"manually.  To do so, write a Git branch name after each <archive/branch> "
+"parameter, separated by a colon.  This way, you can shorten the Arch branch "
+"names and convert Arch jargon to Git jargon, for example mapping a "
+"\"PROJECT{litdd}devo{litdd}VERSION\" branch to \"master\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:59
+#: en/git-archimport.txt:54
 msgid ""
-"<path> is the path of a file being queried, <attribute> is an attribute "
-"being queried and <info> can be either:"
+"Associating multiple Arch branches to one Git branch is possible; the result "
+"will make the most sense only if no commits are made to the first branch, "
+"after the second branch is created.  Still, this is useful to convert Arch "
+"repositories that had been rotated periodically."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-check-attr.txt:60
+#. type: Title -
+#: en/git-archimport.txt:57
 #, no-wrap
-msgid "'unspecified'"
+msgid "MERGES"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:61
-msgid "when the attribute is not defined for the path."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-check-attr.txt:61
-#, no-wrap
-msgid "'unset'"
+#: en/git-archimport.txt:63
+msgid ""
+"Patch merge data from Arch is used to mark merges in Git as well. Git does "
+"not care much about tracking patches, and only considers a merge when a "
+"branch incorporates all the commits since the point they forked. The end "
+"result is that Git will have a good idea of how far branches have diverged. "
+"So the import process does lose some patch-trading metadata."
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:62
-msgid "when the attribute is defined as false."
+#: en/git-archimport.txt:67
+msgid ""
+"Fortunately, when you try and merge branches imported from Arch, Git will "
+"find a good merge base, and it has a good chance of identifying patches that "
+"have been traded out-of-sequence between the branches."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-check-attr.txt:62
-#, no-wrap
-msgid "'set'"
+#. type: Plain text
+#: en/git-archimport.txt:73
+msgid "Display usage."
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:63
-msgid "when the attribute is defined as true."
+#: en/git-archimport.txt:76
+msgid "Verbose output."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-check-attr.txt:63
+#: en/git-archimport.txt:77
 #, no-wrap
-msgid "<value>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-check-attr.txt:64
-msgid "when a value has been assigned to the attribute."
+msgid "-T"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:69 en/git-check-ignore.txt:99
+#: en/git-archimport.txt:80
 msgid ""
-"Buffering happens as documented under the `GIT_FLUSH` option in "
-"linkgit:git[1].  The caller is responsible for avoiding deadlocks caused by "
-"overfilling an input buffer or reading from an empty output buffer."
+"Many tags. Will create a tag for every commit, reflecting the commit name in "
+"the Arch repository."
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:74
-msgid "In the examples, the following '.gitattributes' file is used:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-check-attr.txt:78
-#, no-wrap
+#: en/git-archimport.txt:85
 msgid ""
-"*.java diff=java -crlf myAttr\n"
-"NoMyAttr.java !myAttr\n"
-"README caveat=unspecified\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-check-attr.txt:81
-msgid "Listing a single attribute:"
+"Use the fast patchset import strategy.  This can be significantly faster for "
+"large trees, but cannot handle directory renames or permissions changes.  "
+"The default strategy is slow and safe."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-check-attr.txt:84
+#. type: Labeled list
+#: en/git-archimport.txt:86 en/git-commit.txt:267 en/git-grep.txt:211
+#: en/git-ls-files.txt:47 en/git-merge-index.txt:29
 #, no-wrap
-msgid ""
-"$ git check-attr diff org/example/MyClass.java\n"
-"org/example/MyClass.java: diff: java\n"
+msgid "-o"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:87
-msgid "Listing multiple attributes for a file:"
+#: en/git-archimport.txt:93
+msgid ""
+"Use this for compatibility with old-style branch names used by earlier "
+"versions of 'git archimport'.  Old-style branch names were category{litdd}"
+"branch, whereas new-style branch names are archive,category{litdd}"
+"branch{litdd}version.  In both cases, names given on the command-line will "
+"override the automatically-generated ones."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-check-attr.txt:92
+#. type: Labeled list
+#: en/git-archimport.txt:94
 #, no-wrap
-msgid ""
-"$ git check-attr crlf diff myAttr -- org/example/MyClass.java\n"
-"org/example/MyClass.java: crlf: unset\n"
-"org/example/MyClass.java: diff: java\n"
-"org/example/MyClass.java: myAttr: set\n"
+msgid "-D <depth>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:95
-msgid "Listing all attributes for a file:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-check-attr.txt:99
-#, no-wrap
+#: en/git-archimport.txt:98
 msgid ""
-"$ git check-attr --all -- org/example/MyClass.java\n"
-"org/example/MyClass.java: diff: java\n"
-"org/example/MyClass.java: myAttr: set\n"
+"Follow merge ancestry and attempt to import trees that have been merged "
+"from.  Specify a depth greater than 1 if patch logs have been pruned."
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:102
-msgid "Listing an attribute for multiple files:"
+#: en/git-archimport.txt:102
+msgid ""
+"Attempt to auto-register archives at `http://mirrors.sourcecontrol.net` This "
+"is particularly useful with the -D option."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-check-attr.txt:106
+#. type: Labeled list
+#: en/git-archimport.txt:103
 #, no-wrap
-msgid ""
-"$ git check-attr myAttr -- org/example/MyClass.java "
-"org/example/NoMyAttr.java\n"
-"org/example/MyClass.java: myAttr: set\n"
-"org/example/NoMyAttr.java: myAttr: unspecified\n"
+msgid "-t <tmpdir>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:109
-msgid "Not all values are equally unambiguous:"
+#: en/git-archimport.txt:105
+msgid "Override the default tempdir."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-check-attr.txt:112
+#. type: Labeled list
+#: en/git-archimport.txt:107
 #, no-wrap
-msgid ""
-"$ git check-attr caveat README\n"
-"README: caveat: unspecified\n"
+msgid "<archive/branch>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-attr.txt:117
-msgid "linkgit:gitattributes[5]."
+#: en/git-archimport.txt:109
+msgid "Archive/branch identifier in a format that `tla log` understands."
 msgstr ""
 
 #. type: Title =
-#: en/git-check-ignore.txt:2
+#: en/git-archive.txt:2
 #, no-wrap
-msgid "git-check-ignore(1)"
+msgid "git-archive(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ignore.txt:7
-msgid "git-check-ignore - Debug gitignore / exclude files"
+#: en/git-archive.txt:7
+msgid "git-archive - Create an archive of files from a named tree"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ignore.txt:14
+#: en/git-archive.txt:16
 #, no-wrap
 msgid ""
-"'git check-ignore' [options] pathname...\n"
-"'git check-ignore' [options] --stdin\n"
+"'git archive' [--format=<fmt>] [--list] [--prefix=<prefix>/] [<extra>]\n"
+"\t      [-o <file> | --output=<file>] [--worktree-attributes]\n"
+"\t      [--remote=<repo> [--exec=<git-upload-archive>]] <tree-ish>\n"
+"\t      [<path>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ignore.txt:22
+#: en/git-archive.txt:23
 msgid ""
-"For each pathname given via the command-line or from a file via `--stdin`, "
-"check whether the file is excluded by .gitignore (or other input files to "
-"the exclude mechanism) and output the path if it is excluded."
+"Creates an archive of the specified format containing the tree structure for "
+"the named tree, and writes it out to the standard output.  If <prefix> is "
+"specified it is prepended to the filenames in the archive."
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ignore.txt:25
+#: en/git-archive.txt:32
 msgid ""
-"By default, tracked files are not shown at all since they are not subject to "
-"exclude rules; but see `--no-index'."
+"'git archive' behaves differently when given a tree ID versus when given a "
+"commit ID or tag ID.  In the first case the current time is used as the "
+"modification time of each file in the archive.  In the latter case the "
+"commit time as recorded in the referenced commit object is used instead.  "
+"Additionally the commit ID is stored in a global extended pax header if the "
+"tar format is used; it can be extracted using 'git get-tar-commit-id'. In "
+"ZIP files it is stored as a file comment."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-check-ignore.txt:28
+#: en/git-archive.txt:36
 #, no-wrap
-msgid "-q, --quiet"
+msgid "--format=<fmt>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ignore.txt:31
+#: en/git-archive.txt:42
 msgid ""
-"Don't output anything, just set exit status.  This is only valid with a "
-"single pathname."
+"Format of the resulting archive: 'tar' or 'zip'. If this option is not "
+"given, and the output file is specified, the format is inferred from the "
+"filename if possible (e.g. writing to \"foo.zip\" makes the output to be in "
+"the zip format). Otherwise the output format is `tar`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-check-ignore.txt:32
+#: en/git-archive.txt:44 en/git-branch.txt:158 en/git-config.txt:165
+#: en/git-show-branch.txt:80 en/git-tag.txt:93
 #, no-wrap
-msgid "-v, --verbose"
+msgid "--list"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ignore.txt:36
-msgid ""
-"Also output details about the matching pattern (if any)  for each given "
-"pathname. For precedence rules within and between exclude sources, see "
-"linkgit:gitignore[5]."
+#: en/git-archive.txt:46
+msgid "Show all available formats."
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ignore.txt:45
-msgid ""
-"The output format is modified to be machine-parseable (see below).  If "
-"`--stdin` is also given, input paths are separated with a NUL character "
-"instead of a linefeed character."
+#: en/git-archive.txt:50
+msgid "Report progress to stderr."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-check-ignore.txt:46
+#: en/git-archive.txt:51 en/git-write-tree.txt:35
 #, no-wrap
-msgid "-n, --non-matching"
+msgid "--prefix=<prefix>/"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ignore.txt:51
-msgid ""
-"Show given paths which don't match any pattern.\t This only makes sense when "
-"`--verbose` is enabled, otherwise it would not be possible to distinguish "
-"between paths which match a pattern and those which don't."
+#: en/git-archive.txt:53
+msgid "Prepend <prefix>/ to each filename in the archive."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-check-ignore.txt:52 en/git-grep.txt:76
+#: en/git-archive.txt:54
 #, no-wrap
-msgid "--no-index"
+msgid "-o <file>"
 msgstr ""
 
-#. type: Plain text
-#: en/git-check-ignore.txt:58
-msgid ""
-"Don't look in the index when undertaking the checks. This can be used to "
-"debug why a path became tracked by e.g. `git add .` and was not ignored by "
-"the rules as expected by the user or when developing patterns including "
-"negation to match a path previously added with `git add -f`."
+#. type: Labeled list
+#: en/git-archive.txt:55
+#, no-wrap
+msgid "--output=<file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ignore.txt:66
-msgid ""
-"By default, any of the given pathnames which match an ignore pattern will be "
-"output, one per line.  If no pattern matches a given path, nothing will be "
-"output for that path; this means that path will not be ignored."
+#: en/git-archive.txt:57
+msgid "Write the archive to <file> instead of stdout."
 msgstr ""
 
-#. type: Plain text
-#: en/git-check-ignore.txt:68
-msgid "If `--verbose` is specified, the output is a series of lines of the form:"
+#. type: Labeled list
+#: en/git-archive.txt:58
+#, no-wrap
+msgid "--worktree-attributes"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ignore.txt:70
-msgid "<source> <COLON> <linenum> <COLON> <pattern> <HT> <pathname>"
+#: en/git-archive.txt:61
+msgid ""
+"Look for attributes in .gitattributes files in the working tree as well (see "
+"<<ATTRIBUTES>>)."
 msgstr ""
 
-#. type: Plain text
-#: en/git-check-ignore.txt:78
-msgid ""
-"<pathname> is the path of a file being queried, <pattern> is the matching "
-"pattern, <source> is the pattern's source file, and <linenum> is the line "
-"number of the pattern within that source.  If the pattern contained a `!` "
-"prefix or `/` suffix, it will be preserved in the output.  <source> will be "
-"an absolute path when referring to the file configured by "
-"`core.excludesFile`, or relative to the repository root when referring to "
-"`.git/info/exclude` or a per-directory exclude file."
+#. type: Labeled list
+#: en/git-archive.txt:62
+#, no-wrap
+msgid "<extra>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ignore.txt:82
+#: en/git-archive.txt:65
 msgid ""
-"If `-z` is specified, the pathnames in the output are delimited by the null "
-"character; if `--verbose` is also specified then null characters are also "
-"used instead of colons and hard tabs:"
+"This can be any options that the archiver backend understands.  See next "
+"section."
 msgstr ""
 
-#. type: Plain text
-#: en/git-check-ignore.txt:84
-msgid "<source> <NULL> <linenum> <NULL> <pattern> <NULL> <pathname> <NULL>"
+#. type: Labeled list
+#: en/git-archive.txt:66
+#, no-wrap
+msgid "--remote=<repo>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ignore.txt:94
+#: en/git-archive.txt:72
 msgid ""
-"If `-n` or `--non-matching` are specified, non-matching pathnames will also "
-"be output, in which case all fields in each output record except for "
-"<pathname> will be empty.  This can be useful when running "
-"non-interactively, so that files can be incrementally streamed to STDIN of a "
-"long-running check-ignore process, and for each of these files, STDOUT will "
-"indicate whether that file matched a pattern or not.  (Without this option, "
-"it would be impossible to tell whether the absence of output for a given "
-"file meant that it didn't match any pattern, or that the output hadn't been "
-"generated yet.)"
-msgstr ""
-
-#. type: Title -
-#: en/git-check-ignore.txt:101
-#, no-wrap
-msgid "EXIT STATUS"
+"Instead of making a tar archive from the local repository, retrieve a tar "
+"archive from a remote repository. Note that the remote repository may place "
+"restrictions on which sha1 expressions may be allowed in `<tree-ish>`. See "
+"linkgit:git-upload-archive[1] for details."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-check-ignore.txt:103
+#: en/git-archive.txt:73
 #, no-wrap
-msgid "0"
+msgid "--exec=<git-upload-archive>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ignore.txt:105
-msgid "One or more of the provided paths is ignored."
+#: en/git-archive.txt:76
+msgid ""
+"Used with --remote to specify the path to the 'git-upload-archive' on the "
+"remote side."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-check-ignore.txt:106
+#: en/git-archive.txt:77 en/git-checkout.txt:305 en/git-diff-index.txt:26
+#: en/git-diff-tree.txt:29 en/git-ls-tree.txt:38 en/git.txt:315
 #, no-wrap
-msgid "1"
+msgid "<tree-ish>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ignore.txt:108
-msgid "None of the provided paths are ignored."
+#: en/git-archive.txt:79
+msgid "The tree or commit to produce an archive for."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-check-ignore.txt:109
+#: en/git-archive.txt:80
 #, no-wrap
-msgid "128"
-msgstr ""
-
-#. type: Plain text
-#: en/git-check-ignore.txt:111
-msgid "A fatal error was encountered."
+msgid "<path>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ignore.txt:117
-msgid "linkgit:gitignore[5] linkgit:git-config[1] linkgit:git-ls-files[1]"
+#: en/git-archive.txt:84
+msgid ""
+"Without an optional path parameter, all files and subdirectories of the "
+"current working directory are included in the archive.  If one or more paths "
+"are specified, only these are included."
 msgstr ""
 
-#. type: Title =
-#: en/git-check-mailmap.txt:2
+#. type: Title -
+#: en/git-archive.txt:86
 #, no-wrap
-msgid "git-check-mailmap(1)"
+msgid "BACKEND EXTRA OPTIONS"
 msgstr ""
 
-#. type: Plain text
-#: en/git-check-mailmap.txt:7
-msgid "git-check-mailmap - Show canonical names and email addresses of contacts"
+#. type: Title ~
+#: en/git-archive.txt:89
+#, no-wrap
+msgid "zip"
 msgstr ""
 
-#. type: Plain text
-#: en/git-check-mailmap.txt:13
+#. type: Labeled list
+#: en/git-archive.txt:90 en/git-diff-files.txt:28 en/git-diff.txt:109
 #, no-wrap
-msgid "'git check-mailmap' [options] <contact>...\n"
+msgid "-0"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-mailmap.txt:22
-msgid ""
-"For each ``Name $$<user@host>$$'' or ``$$<user@host>$$'' from the "
-"command-line or standard input (when using `--stdin`), look up the person's "
-"canonical name and email address (see \"Mapping Authors\" below). If found, "
-"print them; otherwise print the input as-is."
+#: en/git-archive.txt:92
+msgid "Store the files instead of deflating them."
 msgstr ""
 
-#. type: Plain text
-#: en/git-check-mailmap.txt:29
-msgid ""
-"Read contacts, one per line, from the standard input after exhausting "
-"contacts provided on the command-line."
+#. type: Labeled list
+#: en/git-archive.txt:92
+#, no-wrap
+msgid "-9"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-mailmap.txt:37
+#: en/git-archive.txt:95
 msgid ""
-"For each contact, a single line is output, terminated by a newline.  If the "
-"name is provided or known to the 'mailmap', ``Name $$<user@host>$$'' is "
-"printed; otherwise only ``$$<user@host>$$'' is printed."
+"Highest and slowest compression level.  You can specify any number from 1 to "
+"9 to adjust compression speed and ratio."
 msgstr ""
 
-#. type: Title =
-#: en/git-checkout-index.txt:2
+#. type: Labeled list
+#: en/git-archive.txt:100
 #, no-wrap
-msgid "git-checkout-index(1)"
+msgid "tar.umask"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:7
-msgid "git-checkout-index - Copy files from the index to the working tree"
+#: en/git-archive.txt:107
+msgid ""
+"This variable can be used to restrict the permission bits of tar archive "
+"entries.  The default is 0002, which turns off the world write bit.  The "
+"special value \"user\" indicates that the archiving user's umask will be "
+"used instead.  See umask(2) for details.  If `--remote` is used then only "
+"the configuration of the remote repository takes effect."
 msgstr ""
 
-#. type: Plain text
-#: en/git-checkout-index.txt:17
+#. type: Labeled list
+#: en/git-archive.txt:108
 #, no-wrap
-msgid ""
-"'git checkout-index' [-u] [-q] [-a] [-f] [-n] [--prefix=<string>]\n"
-"\t\t   [--stage=<number>|all]\n"
-"\t\t   [--temp]\n"
-"\t\t   [-z] [--stdin]\n"
-"\t\t   [--] [<file>...]\n"
+msgid "tar.<format>.command"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:22
+#: en/git-archive.txt:117
 msgid ""
-"Will copy all files listed from the index to the working directory (not "
-"overwriting existing files)."
+"This variable specifies a shell command through which the tar output "
+"generated by `git archive` should be piped. The command is executed using "
+"the shell with the generated tar file on its standard input, and should "
+"produce the final output on its standard output. Any compression-level "
+"options will be passed to the command (e.g., \"-9\"). An output file with "
+"the same extension as `<format>` will be use this format if no other format "
+"is given."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:29
-msgid "update stat information for the checked out entries in the index file."
+#: en/git-archive.txt:120
+msgid ""
+"The \"tar.gz\" and \"tgz\" formats are defined automatically and default to "
+"`gzip -cn`. You may override them with custom commands."
 msgstr ""
 
-#. type: Plain text
-#: en/git-checkout-index.txt:33
-msgid "be quiet if files exist or are not in the index"
+#. type: Labeled list
+#: en/git-archive.txt:121
+#, no-wrap
+msgid "tar.<format>.remote"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:37
-msgid "forces overwrite of existing files"
+#: en/git-archive.txt:126
+msgid ""
+"If true, enable `<format>` for use by remote clients via linkgit:git-upload-"
+"archive[1]. Defaults to false for user-defined formats, but true for the "
+"\"tar.gz\" and \"tgz\" formats."
 msgstr ""
 
-#. type: Plain text
-#: en/git-checkout-index.txt:42
-msgid ""
-"checks out all files in the index.  Cannot be used together with explicit "
-"filenames."
+#. type: Title -
+#: en/git-archive.txt:129
+#, no-wrap
+msgid "ATTRIBUTES"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-checkout-index.txt:44
+#: en/git-archive.txt:131
 #, no-wrap
-msgid "--no-create"
+msgid "export-ignore"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:47
-msgid "Don't checkout new files, only refresh files already checked out."
+#: en/git-archive.txt:134
+msgid ""
+"Files and directories with the attribute export-ignore won't be added to "
+"archive files.  See linkgit:gitattributes[5] for details."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-checkout-index.txt:48
+#: en/git-archive.txt:135
 #, no-wrap
-msgid "--prefix=<string>"
+msgid "export-subst"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:51
+#: en/git-archive.txt:139
 msgid ""
-"When creating files, prepend <string> (usually a directory including a "
-"trailing /)"
+"If the attribute export-subst is set for a file then Git will expand several "
+"placeholders when adding this file to an archive.  See linkgit:"
+"gitattributes[5] for details."
+msgstr ""
+
+#. type: Plain text
+#: en/git-archive.txt:147
+msgid ""
+"Note that attributes are by default taken from the `.gitattributes` files in "
+"the tree that is being archived.  If you want to tweak the way the output is "
+"generated after the fact (e.g. you committed without adding an appropriate "
+"export-ignore in its `.gitattributes`), adjust the checked out `."
+"gitattributes` file as necessary and use `--worktree-attributes` option.  "
+"Alternatively you can keep necessary attributes that should apply while "
+"archiving any tree in your `$GIT_DIR/info/attributes` file."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-checkout-index.txt:52
+#: en/git-archive.txt:150
 #, no-wrap
-msgid "--stage=<number>|all"
+msgid "`git archive --format=tar --prefix=junk/ HEAD | (cd /var/tmp/ && tar xf -)`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:56
+#: en/git-archive.txt:155
 msgid ""
-"Instead of checking out unmerged entries, copy out the files from named "
-"stage.  <number> must be between 1 and 3.  Note: --stage=all automatically "
-"implies --temp."
+"Create a tar archive that contains the contents of the latest commit on the "
+"current branch, and extract it in the `/var/tmp/junk` directory."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-checkout-index.txt:57
+#: en/git-archive.txt:156
 #, no-wrap
-msgid "--temp"
+msgid "`git archive --format=tar --prefix=git-1.4.0/ v1.4.0 | gzip >git-1.4.0.tar.gz`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:61
-msgid ""
-"Instead of copying the files to the working directory write the content to "
-"temporary files.  The temporary name associations will be written to stdout."
+#: en/git-archive.txt:159
+msgid "Create a compressed tarball for v1.4.0 release."
 msgstr ""
 
-#. type: Plain text
-#: en/git-checkout-index.txt:66 en/git-update-index.txt:144
-msgid ""
-"Instead of taking list of paths from the command line, read list of paths "
-"from the standard input.  Paths are separated by LF (i.e. one path per line) "
-"by default."
+#. type: Labeled list
+#: en/git-archive.txt:160
+#, no-wrap
+msgid "`git archive --format=tar.gz --prefix=git-1.4.0/ v1.4.0 >git-1.4.0.tar.gz`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:70
-msgid ""
-"Only meaningful with `--stdin`; paths are separated with NUL character "
-"instead of LF."
+#: en/git-archive.txt:163
+msgid "Same as above, but using the builtin tar.gz handling."
 msgstr ""
 
-#. type: Plain text
-#: en/git-checkout-index.txt:73 en/git-commit.txt:338 en/git-ls-files.txt:176 en/git-merge-index.txt:25 en/git-prune.txt:47 en/git-update-index.txt:206 en/git-verify-pack.txt:38
-msgid "Do not interpret any more arguments as options."
+#. type: Labeled list
+#: en/git-archive.txt:164
+#, no-wrap
+msgid "`git archive --prefix=git-1.4.0/ -o git-1.4.0.tar.gz v1.4.0`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:75
-msgid "The order of the flags used to matter, but not anymore."
+#: en/git-archive.txt:167
+msgid "Same as above, but the format is inferred from the output file."
 msgstr ""
 
-#. type: Plain text
-#: en/git-checkout-index.txt:79
-msgid ""
-"Just doing `git checkout-index` does nothing. You probably meant `git "
-"checkout-index -a`. And if you want to force it, you want `git "
-"checkout-index -f -a`."
+#. type: Labeled list
+#: en/git-archive.txt:168
+#, no-wrap
+msgid "`git archive --format=tar --prefix=git-1.4.0/ v1.4.0^{tree} | gzip >git-1.4.0.tar.gz`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:83
+#: en/git-archive.txt:172
 msgid ""
-"Intuitiveness is not the goal here. Repeatability is. The reason for the "
-"\"no arguments means no work\" behavior is that from scripts you are "
-"supposed to be able to do:"
+"Create a compressed tarball for v1.4.0 release, but without a global "
+"extended pax header."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-checkout-index.txt:86
+#. type: Labeled list
+#: en/git-archive.txt:173
 #, no-wrap
-msgid "$ find . -name '*.h' -print0 | xargs -0 git checkout-index -f --\n"
+msgid "`git archive --format=zip --prefix=git-docs/ HEAD:Documentation/ > git-1.4.0-docs.zip`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:92
+#: en/git-archive.txt:177
 msgid ""
-"which will force all existing `*.h` files to be replaced with their cached "
-"copies. If an empty command line implied \"all\", then this would "
-"force-refresh everything in the index, which was not the point.  But since "
-"'git checkout-index' accepts --stdin it would be faster to use:"
+"Put everything in the current head's Documentation/ directory into "
+"'git-1.4.0-docs.zip', with the prefix 'git-docs/'."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-checkout-index.txt:95
+#. type: Labeled list
+#: en/git-archive.txt:178
 #, no-wrap
-msgid "$ find . -name '*.h' -print0 | git checkout-index -f -z --stdin\n"
+msgid "`git archive -o latest.zip HEAD`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:100
+#: en/git-archive.txt:183
 msgid ""
-"The `--` is just a good idea when you know the rest will be filenames; it "
-"will prevent problems with a filename of, for example, `-a`.  Using `--` is "
-"probably a good policy in scripts."
+"Create a Zip archive that contains the contents of the latest commit on the "
+"current branch. Note that the output format is inferred by the extension of "
+"the output file."
 msgstr ""
 
-#. type: Title -
-#: en/git-checkout-index.txt:103
+#. type: Labeled list
+#: en/git-archive.txt:184
 #, no-wrap
-msgid "Using --temp or --stage=all"
+msgid "`git config tar.tar.xz.command \"xz -c\"`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:110
+#: en/git-archive.txt:189
 msgid ""
-"When `--temp` is used (or implied by `--stage=all`)  'git checkout-index' "
-"will create a temporary file for each index entry being checked out.  The "
-"index will not be updated with stat information.  These options can be "
-"useful if the caller needs all stages of all unmerged entries so that the "
-"unmerged files can be processed by an external merge tool."
+"Configure a \"tar.xz\" format for making LZMA-compressed tarfiles.  You can "
+"use it specifying `--format=tar.xz`, or by creating an output file like `-o "
+"foo.tar.xz`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:114
-msgid ""
-"A listing will be written to stdout providing the association of temporary "
-"file names to tracked path names.  The listing format has two variations:"
+#: en/git-archive.txt:194
+msgid "linkgit:gitattributes[5]"
 msgstr ""
 
-#. type: Plain text
-#: en/git-checkout-index.txt:116
-msgid "tempname TAB path RS"
+#. type: Title =
+#: en/git-bisect.txt:2
+#, no-wrap
+msgid "git-bisect(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:121
-msgid ""
-"The first format is what gets used when `--stage` is omitted or is not "
-"`--stage=all`. The field tempname is the temporary file name holding the "
-"file content and path is the tracked path name in the index.  Only the "
-"requested entries are output."
+#: en/git-bisect.txt:7
+msgid "git-bisect - Use binary search to find the commit that introduced a bug"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:123
-msgid "stage1temp SP stage2temp SP stage3tmp TAB path RS"
+#: en/git-bisect.txt:13
+#, no-wrap
+msgid "'git bisect' <subcommand> <options>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:129
+#: en/git-bisect.txt:18 en/git-reflog.txt:18
 msgid ""
-"The second format is what gets used when `--stage=all`.  The three stage "
-"temporary fields (stage1temp, stage2temp, stage3temp) list the name of the "
-"temporary file if there is a stage entry in the index or `.` if there is no "
-"stage entry.  Paths which only have a stage 0 entry will always be omitted "
-"from the output."
+"The command takes various subcommands, and different options depending on "
+"the subcommand:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:136
+#: en/git-bisect.txt:31
+#, no-wrap
 msgid ""
-"In both formats RS (the record separator) is newline by default but will be "
-"the null byte if -z was passed on the command line.  The temporary file "
-"names are always safe strings; they will never contain directory separators "
-"or whitespace characters.  The path field is always relative to the current "
-"directory and the temporary file names are always relative to the top level "
-"directory."
+" git bisect start [--term-{old,good}=<term> --term-{new,bad}=<term>]\n"
+"\t\t  [--no-checkout] [<bad> [<good>...]] [--] [<paths>...]\n"
+" git bisect (bad|new|<term-new>) [<rev>]\n"
+" git bisect (good|old|<term-old>) [<rev>...]\n"
+" git bisect terms [--term-good | --term-bad]\n"
+" git bisect skip [(<rev>|<range>)...]\n"
+" git bisect reset [<commit>]\n"
+" git bisect (visualize|view)\n"
+" git bisect replay <logfile>\n"
+" git bisect log\n"
+" git bisect run <cmd>...\n"
+" git bisect help\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:140
+#: en/git-bisect.txt:40
 msgid ""
-"If the object being copied out to a temporary file is a symbolic link the "
-"content of the link will be written to a normal file.  It is up to the "
-"end-user or the Porcelain to make use of this information."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-checkout-index.txt:144
-#, no-wrap
-msgid "To update and refresh only the files already checked out"
+"This command uses a binary search algorithm to find which commit in your "
+"project's history introduced a bug. You use it by first telling it a \"bad\" "
+"commit that is known to contain the bug, and a \"good\" commit that is known "
+"to be before the bug was introduced. Then `git bisect` picks a commit "
+"between those two endpoints and asks you whether the selected commit is "
+"\"good\" or \"bad\". It continues narrowing down the range until it finds "
+"the exact commit that introduced the change."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-checkout-index.txt:148 en/git-update-index.txt:342
-#, no-wrap
+#. type: Plain text
+#: en/git-bisect.txt:47
 msgid ""
-"$ git checkout-index -n -f -a && git update-index --ignore-missing "
-"--refresh\n"
+"In fact, `git bisect` can be used to find the commit that changed *any* "
+"property of your project; e.g., the commit that fixed a bug, or the commit "
+"that caused a benchmark's performance to improve. To support this more "
+"general usage, the terms \"old\" and \"new\" can be used in place of \"good"
+"\" and \"bad\", or you can choose your own terms. See section \"Alternate "
+"terms\" below for more information."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-checkout-index.txt:150
+#. type: Title ~
+#: en/git-bisect.txt:49
 #, no-wrap
-msgid "Using 'git checkout-index' to \"export an entire tree\""
+msgid "Basic bisect commands: start, bad, good"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:154
+#: en/git-bisect.txt:54
 msgid ""
-"The prefix ability basically makes it trivial to use 'git checkout-index' as "
-"an \"export as tree\" function.  Just read the desired tree into the index, "
-"and do:"
+"As an example, suppose you are trying to find the commit that broke a "
+"feature that was known to work in version `v2.6.13-rc2` of your project. You "
+"start a bisect session as follows:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-checkout-index.txt:157
+#: en/git-bisect.txt:59
 #, no-wrap
-msgid "$ git checkout-index --prefix=git-export-dir/ -a\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-checkout-index.txt:161
-msgid "`git checkout-index` will \"export\" the index into the specified directory."
+msgid ""
+"$ git bisect start\n"
+"$ git bisect bad                 # Current version is bad\n"
+"$ git bisect good v2.6.13-rc2    # v2.6.13-rc2 is known to be good\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:165
+#: en/git-bisect.txt:64
 msgid ""
-"The final \"/\" is important. The exported name is literally just prefixed "
-"with the specified string.  Contrast this with the following example."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-checkout-index.txt:166
-#, no-wrap
-msgid "Export files with a prefix"
+"Once you have specified at least one bad and one good commit, `git bisect` "
+"selects a commit in the middle of that range of history, checks it out, and "
+"outputs something similar to the following:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-checkout-index.txt:170
+#: en/git-bisect.txt:67
 #, no-wrap
-msgid "$ git checkout-index --prefix=.merged- Makefile\n"
+msgid "Bisecting: 675 revisions left to test after this (roughly 10 steps)\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout-index.txt:174
+#: en/git-bisect.txt:71
 msgid ""
-"This will check out the currently cached copy of `Makefile` into the file "
-"`.merged-Makefile`."
+"You should now compile the checked-out version and test it. If that version "
+"works correctly, type"
 msgstr ""
 
-#. type: Title =
-#: en/git-checkout.txt:2
+#. type: delimited block -
+#: en/git-bisect.txt:74
 #, no-wrap
-msgid "git-checkout(1)"
+msgid "$ git bisect good\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:7
-msgid "git-checkout - Switch branches or restore working tree files"
+#: en/git-bisect.txt:77
+msgid "If that version is broken, type"
 msgstr ""
 
-#. type: Plain text
-#: en/git-checkout.txt:17
+#. type: delimited block -
+#: en/git-bisect.txt:80
 #, no-wrap
-msgid ""
-"'git checkout' [-q] [-f] [-m] [<branch>]\n"
-"'git checkout' [-q] [-f] [-m] --detach [<branch>]\n"
-"'git checkout' [-q] [-f] [-m] [--detach] <commit>\n"
-"'git checkout' [-q] [-f] [-m] [[-b|-B|--orphan] <new_branch>] "
-"[<start_point>]\n"
-"'git checkout' [-f|--ours|--theirs|-m|--conflict=<style>] [<tree-ish>] [--] "
-"<paths>...\n"
-"'git checkout' [-p|--patch] [<tree-ish>] [--] [<paths>...]\n"
+msgid "$ git bisect bad\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:24
-msgid ""
-"Updates files in the working tree to match the version in the index or the "
-"specified tree.  If no paths are given, 'git checkout' will also update "
-"`HEAD` to set the specified branch as the current branch."
+#: en/git-bisect.txt:83
+msgid "Then `git bisect` will respond with something like"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-checkout.txt:25
+#. type: delimited block -
+#: en/git-bisect.txt:86
 #, no-wrap
-msgid "'git checkout' <branch>"
+msgid "Bisecting: 337 revisions left to test after this (roughly 9 steps)\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:31
+#: en/git-bisect.txt:91
 msgid ""
-"To prepare for working on <branch>, switch to it by updating the index and "
-"the files in the working tree, and by pointing HEAD at the branch. Local "
-"modifications to the files in the working tree are kept, so that they can be "
-"committed to the <branch>."
+"Keep repeating the process: compile the tree, test it, and depending on "
+"whether it is good or bad run `git bisect good` or `git bisect bad` to ask "
+"for the next commit that needs testing."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:35
+#: en/git-bisect.txt:95
 msgid ""
-"If <branch> is not found but there does exist a tracking branch in exactly "
-"one remote (call it <remote>) with a matching name, treat as equivalent to"
+"Eventually there will be no more revisions left to inspect, and the command "
+"will print out a description of the first bad commit. The reference `refs/"
+"bisect/bad` will be left pointing at that commit."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-checkout.txt:38
+#. type: Title ~
+#: en/git-bisect.txt:98
 #, no-wrap
-msgid "$ git checkout -b <branch> --track <remote>/<branch>\n"
+msgid "Bisect reset"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:44
+#: en/git-bisect.txt:102
 msgid ""
-"You could omit <branch>, in which case the command degenerates to \"check "
-"out the current branch\", which is a glorified no-op with a rather expensive "
-"side-effects to show only the tracking information, if exists, for the "
-"current branch."
+"After a bisect session, to clean up the bisection state and return to the "
+"original HEAD, issue the following command:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-checkout.txt:45
+#. type: delimited block -
+#: en/git-bisect.txt:105
 #, no-wrap
-msgid "'git checkout' -b|-B <new_branch> [<start point>]"
+msgid "$ git bisect reset\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:53
+#: en/git-bisect.txt:110
 msgid ""
-"Specifying `-b` causes a new branch to be created as if "
-"linkgit:git-branch[1] were called and then checked out.  In this case you "
-"can use the `--track` or `--no-track` options, which will be passed to 'git "
-"branch'.  As a convenience, `--track` without `-b` implies branch creation; "
-"see the description of `--track` below."
+"By default, this will return your tree to the commit that was checked out "
+"before `git bisect start`.  (A new `git bisect start` will also do that, as "
+"it cleans up the old bisection state.)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:56
+#: en/git-bisect.txt:113
 msgid ""
-"If `-B` is given, <new_branch> is created if it doesn't exist; otherwise, it "
-"is reset. This is the transactional equivalent of"
+"With an optional argument, you can return to a different commit instead:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-checkout.txt:60
+#: en/git-bisect.txt:116
 #, no-wrap
-msgid ""
-"$ git branch -f <branch> [<start point>]\n"
-"$ git checkout <branch>\n"
+msgid "$ git bisect reset <commit>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:64
+#: en/git-bisect.txt:121
 msgid ""
-"that is to say, the branch is not reset/created unless \"git checkout\" is "
-"successful."
+"For example, `git bisect reset bisect/bad` will check out the first bad "
+"revision, while `git bisect reset HEAD` will leave you on the current "
+"bisection commit and avoid switching commits at all."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-checkout.txt:65
+#. type: Title ~
+#: en/git-bisect.txt:124
 #, no-wrap
-msgid "'git checkout' --detach [<branch>]"
+msgid "Alternate terms"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-checkout.txt:66
-#, no-wrap
-msgid "'git checkout' [--detach] <commit>"
+#. type: Plain text
+#: en/git-bisect.txt:132
+msgid ""
+"Sometimes you are not looking for the commit that introduced a breakage, but "
+"rather for a commit that caused a change between some other \"old\" state "
+"and \"new\" state. For example, you might be looking for the commit that "
+"introduced a particular fix. Or you might be looking for the first commit in "
+"which the source-code filenames were finally all converted to your company's "
+"naming standard. Or whatever."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:74
+#: en/git-bisect.txt:138
 msgid ""
-"Prepare to work on top of <commit>, by detaching HEAD at it (see \"DETACHED "
-"HEAD\" section), and updating the index and the files in the working tree.  "
-"Local modifications to the files in the working tree are kept, so that the "
-"resulting working tree will be the state recorded in the commit plus the "
-"local modifications."
+"In such cases it can be very confusing to use the terms \"good\" and \"bad\" "
+"to refer to \"the state before the change\" and \"the state after the change"
+"\". So instead, you can use the terms \"old\" and \"new\", respectively, in "
+"place of \"good\" and \"bad\". (But note that you cannot mix \"good\" and "
+"\"bad\" with \"old\" and \"new\" in a single session.)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:78
+#: en/git-bisect.txt:145
 msgid ""
-"When the <commit> argument is a branch name, the `--detach` option can be "
-"used to detach HEAD at the tip of the branch (`git checkout <branch>` would "
-"check out that branch without detaching HEAD)."
+"In this more general usage, you provide `git bisect` with a \"new\" commit "
+"that has some property and an \"old\" commit that doesn't have that "
+"property. Each time `git bisect` checks out a commit, you test if that "
+"commit has the property. If it does, mark the commit as \"new\"; otherwise, "
+"mark it as \"old\". When the bisection is done, `git bisect` will report "
+"which commit introduced the property."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:80
-msgid "Omitting <branch> detaches HEAD at the tip of the current branch."
+#: en/git-bisect.txt:149
+msgid ""
+"To use \"old\" and \"new\" instead of \"good\" and bad, you must run `git "
+"bisect start` without commits as argument and then run the following "
+"commands to add the commits:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-checkout.txt:81
+#. type: delimited block -
+#: en/git-bisect.txt:152
 #, no-wrap
-msgid "'git checkout' [-p|--patch] [<tree-ish>] [--] <pathspec>..."
+msgid "git bisect old [<rev>]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:91
-msgid ""
-"When <paths> or `--patch` are given, 'git checkout' does *not* switch "
-"branches.  It updates the named paths in the working tree from the index "
-"file or from a named <tree-ish> (most often a commit).  In this case, the "
-"`-b` and `--track` options are meaningless and giving either of them results "
-"in an error.  The <tree-ish> argument can be used to specify a specific "
-"tree-ish (i.e.  commit, tag or tree) to update the index for the given paths "
-"before updating the working tree."
+#: en/git-bisect.txt:155
+msgid "to indicate that a commit was before the sought change, or"
 msgstr ""
 
-#. type: Plain text
-#: en/git-checkout.txt:95
-msgid ""
-"'git checkout' with <paths> or `--patch` is used to restore modified or "
-"deleted paths to their original contents from the index or replace paths "
-"with the contents from a named <tree-ish> (most often a commit-ish)."
+#. type: delimited block -
+#: en/git-bisect.txt:158
+#, no-wrap
+msgid "git bisect new [<rev>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:103
-msgid ""
-"The index may contain unmerged entries because of a previous failed merge.  "
-"By default, if you try to check out such an entry from the index, the "
-"checkout operation will fail and nothing will be checked out.  Using `-f` "
-"will ignore these unmerged entries.  The contents from a specific side of "
-"the merge can be checked out of the index by using `--ours` or `--theirs`.  "
-"With `-m`, changes made to the working tree file can be discarded to "
-"re-create the original conflicted merge result."
+#: en/git-bisect.txt:161
+msgid "to indicate that it was after."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:109
-msgid "Quiet, suppress feedback messages."
+#: en/git-bisect.txt:163
+msgid "To get a reminder of the currently used terms, use"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-checkout.txt:110 en/git-fsck.txt:92 en/blame-options.txt:73
+#. type: delimited block -
+#: en/git-bisect.txt:166
 #, no-wrap
-msgid "--[no-]progress"
+msgid "git bisect terms\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:115
+#: en/git-bisect.txt:170
 msgid ""
-"Progress status is reported on the standard error stream by default when it "
-"is attached to a terminal, unless `--quiet` is specified. This flag enables "
-"progress reporting even if not attached to a terminal, regardless of "
-"`--quiet`."
+"You can get just the old (respectively new) term with `git bisect terms --"
+"term-old` or `git bisect terms --term-good`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:121
+#: en/git-bisect.txt:175
 msgid ""
-"When switching branches, proceed even if the index or the working tree "
-"differs from HEAD.  This is used to throw away local changes."
+"If you would like to use your own terms instead of \"bad\"/\"good\" or \"new"
+"\"/\"old\", you can choose any names you like (except existing bisect "
+"subcommands like `reset`, `start`, ...) by starting the bisection using"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-bisect.txt:178
+#, no-wrap
+msgid "git bisect start --term-old <term-old> --term-new <term-new>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:124
+#: en/git-bisect.txt:182
 msgid ""
-"When checking out paths from the index, do not fail upon unmerged entries; "
-"instead, unmerged entries are ignored."
+"For example, if you are looking for a commit that introduced a performance "
+"regression, you might use"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-checkout.txt:125 en/git-merge-file.txt:73
+#. type: delimited block -
+#: en/git-bisect.txt:185
 #, no-wrap
-msgid "--ours"
+msgid "git bisect start --term-old fast --term-new slow\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-checkout.txt:126 en/git-merge-file.txt:74
+#. type: Plain text
+#: en/git-bisect.txt:188
+msgid "Or if you are looking for the commit that fixed a bug, you might use"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-bisect.txt:191
 #, no-wrap
-msgid "--theirs"
+msgid "git bisect start --term-new fixed --term-old broken\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:129
+#: en/git-bisect.txt:195
 msgid ""
-"When checking out paths from the index, check out stage #2 ('ours') or #3 "
-"('theirs') for unmerged paths."
+"Then, use `git bisect <term-old>` and `git bisect <term-new>` instead of "
+"`git bisect good` and `git bisect bad` to mark commits."
+msgstr ""
+
+#. type: Title ~
+#: en/git-bisect.txt:197
+#, no-wrap
+msgid "Bisect visualize/view"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:134
+#: en/git-bisect.txt:202
 msgid ""
-"Note that during `git rebase` and `git pull --rebase`, 'ours' and 'theirs' "
-"may appear swapped; `--ours` gives the version from the branch the changes "
-"are rebased onto, while `--theirs` gives the version from the branch that "
-"holds your work that is being rebased."
+"To see the currently remaining suspects in 'gitk', issue the following "
+"command during the bisection process (the subcommand `view` can be used as "
+"an alternative to `visualize`):"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-bisect.txt:205
+#, no-wrap
+msgid "$ git bisect visualize\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:144
+#: en/git-bisect.txt:210
 msgid ""
-"This is because `rebase` is used in a workflow that treats the history at "
-"the remote as the shared canonical one, and treats the work done on the "
-"branch you are rebasing as the third-party work to be integrated, and you "
-"are temporarily assuming the role of the keeper of the canonical history "
-"during the rebase.  As the keeper of the canonical history, you need to view "
-"the history from the remote as `ours` (i.e. \"our shared canonical "
-"history\"), while what you did on your side branch as `theirs` (i.e. \"one "
-"contributor's work on top of it\")."
+"If the `DISPLAY` environment variable is not set, 'git log' is used "
+"instead.  You can also give command-line options such as `-p` and `--stat`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-checkout.txt:145
+#. type: delimited block -
+#: en/git-bisect.txt:213
 #, no-wrap
-msgid "-b <new_branch>"
+msgid "$ git bisect visualize --stat\n"
+msgstr ""
+
+#. type: Title ~
+#: en/git-bisect.txt:216
+#, no-wrap
+msgid "Bisect log and bisect replay"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:148
+#: en/git-bisect.txt:220
 msgid ""
-"Create a new branch named <new_branch> and start it at <start_point>; see "
-"linkgit:git-branch[1] for details."
+"After having marked revisions as good or bad, issue the following command to "
+"show what has been done so far:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-checkout.txt:149
+#. type: delimited block -
+#: en/git-bisect.txt:223
 #, no-wrap
-msgid "-B <new_branch>"
+msgid "$ git bisect log\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:154
+#: en/git-bisect.txt:229
 msgid ""
-"Creates the branch <new_branch> and start it at <start_point>; if it already "
-"exists, then reset it to <start_point>. This is equivalent to running \"git "
-"branch\" with \"-f\"; see linkgit:git-branch[1] for details."
+"If you discover that you made a mistake in specifying the status of a "
+"revision, you can save the output of this command to a file, edit it to "
+"remove the incorrect entries, and then issue the following commands to "
+"return to a corrected state:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-checkout.txt:159
+#. type: delimited block -
+#: en/git-bisect.txt:233
+#, no-wrap
 msgid ""
-"When creating a new branch, set up \"upstream\" configuration. See "
-"\"--track\" in linkgit:git-branch[1] for details."
+"$ git bisect reset\n"
+"$ git bisect replay that-file\n"
+msgstr ""
+
+#. type: Title ~
+#: en/git-bisect.txt:236
+#, no-wrap
+msgid "Avoiding testing a commit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:169
+#: en/git-bisect.txt:243
 msgid ""
-"If no `-b` option is given, the name of the new branch will be derived from "
-"the remote-tracking branch, by looking at the local part of the refspec "
-"configured for the corresponding remote, and then stripping the initial part "
-"up to the \"*\".  This would tell us to use \"hack\" as the local branch "
-"when branching off of \"origin/hack\" (or \"remotes/origin/hack\", or even "
-"\"refs/remotes/origin/hack\").  If the given name has no slash, or the above "
-"guessing results in an empty name, the guessing is aborted.  You can "
-"explicitly give a name with `-b` in such a case."
+"If, in the middle of a bisect session, you know that the suggested revision "
+"is not a good one to test (e.g. it fails to build and you know that the "
+"failure does not have anything to do with the bug you are chasing), you can "
+"manually select a nearby commit and test that one instead."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:177
-msgid "Create the new branch's reflog; see linkgit:git-branch[1] for details."
+#: en/git-bisect.txt:245 en/git-tag.txt:366
+msgid "For example:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-checkout.txt:178 en/git-daemon.txt:134 en/git-worktree.txt:100
+#. type: delimited block -
+#: en/git-bisect.txt:252
 #, no-wrap
-msgid "--detach"
+msgid ""
+"$ git bisect good/bad\t\t\t# previous round was good or bad.\n"
+"Bisecting: 337 revisions left to test after this (roughly 9 steps)\n"
+"$ git bisect visualize\t\t\t# oops, that is uninteresting.\n"
+"$ git reset --hard HEAD~3\t\t# try 3 revisions before what\n"
+"\t\t\t\t\t# was suggested\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:184
+#: en/git-bisect.txt:256
 msgid ""
-"Rather than checking out a branch to work on it, check out a commit for "
-"inspection and discardable experiments.  This is the default behavior of "
-"\"git checkout <commit>\" when <commit> is not a branch name.  See the "
-"\"DETACHED HEAD\" section below for details."
+"Then compile and test the chosen revision, and afterwards mark the revision "
+"as good or bad in the usual manner."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-checkout.txt:185
+#. type: Title ~
+#: en/git-bisect.txt:258
 #, no-wrap
-msgid "--orphan <new_branch>"
+msgid "Bisect skip"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:191
+#: en/git-bisect.txt:262
 msgid ""
-"Create a new 'orphan' branch, named <new_branch>, started from <start_point> "
-"and switch to it.  The first commit made on this new branch will have no "
-"parents and it will be the root of a new history totally disconnected from "
-"all the other branches and commits."
+"Instead of choosing a nearby commit by yourself, you can ask Git to do it "
+"for you by issuing the command:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-checkout.txt:196
-msgid ""
-"The index and the working tree are adjusted as if you had previously run "
-"\"git checkout <start_point>\".  This allows you to start a new history that "
-"records a set of paths similar to <start_point> by easily running \"git "
-"commit -a\" to make the root commit."
+#. type: delimited block -
+#: en/git-bisect.txt:265
+#, no-wrap
+msgid "$ git bisect skip                 # Current version cannot be tested\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:202
+#: en/git-bisect.txt:270
 msgid ""
-"This can be useful when you want to publish the tree from a commit without "
-"exposing its full history. You might want to do this to publish an open "
-"source branch of a project whose current tree is \"clean\", but whose full "
-"history contains proprietary or otherwise encumbered bits of code."
+"However, if you skip a commit adjacent to the one you are looking for, Git "
+"will be unable to tell exactly which of those commits was the first bad one."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:209
+#: en/git-bisect.txt:273
 msgid ""
-"If you want to start a disconnected history that records a set of paths that "
-"is totally different from the one of <start_point>, then you should clear "
-"the index and the working tree right after creating the orphan branch by "
-"running \"git rm -rf .\" from the top level of the working tree.  Afterwards "
-"you will be ready to prepare your new files, repopulating the working tree, "
-"by copying them from elsewhere, extracting a tarball, etc."
+"You can also skip a range of commits, instead of just one commit, using "
+"range notation. For example:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-checkout.txt:210
+#. type: delimited block -
+#: en/git-bisect.txt:276
 #, no-wrap
-msgid "--ignore-skip-worktree-bits"
+msgid "$ git bisect skip v2.5..v2.6\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:215
+#: en/git-bisect.txt:280
 msgid ""
-"In sparse checkout mode, `git checkout -- <paths>` would update only entries "
-"matched by <paths> and sparse patterns in "
-"$GIT_DIR/info/sparse-checkout. This option ignores the sparse patterns and "
-"adds back any files in <paths>."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-checkout.txt:217 en/git-rebase.txt:271 en/git-reset.txt:71 en/git-submodule.txt:363 en/git-svn.txt:638 en/rev-list-options.txt:278
-#, no-wrap
-msgid "--merge"
+"This tells the bisect process that no commit after `v2.5`, up to and "
+"including `v2.6`, should be tested."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:226
+#: en/git-bisect.txt:283
 msgid ""
-"When switching branches, if you have local modifications to one or more "
-"files that are different between the current branch and the branch to which "
-"you are switching, the command refuses to switch branches in order to "
-"preserve your modifications in context.  However, with this option, a "
-"three-way merge between the current branch, your working tree contents, and "
-"the new branch is done, and you will be on the new branch."
+"Note that if you also want to skip the first commit of the range you would "
+"issue the command:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-checkout.txt:231
-msgid ""
-"When a merge conflict happens, the index entries for conflicting paths are "
-"left unmerged, and you need to resolve the conflicts and mark the resolved "
-"paths with `git add` (or `git rm` if the merge should result in deletion of "
-"the path)."
+#. type: delimited block -
+#: en/git-bisect.txt:286
+#, no-wrap
+msgid "$ git bisect skip v2.5 v2.5..v2.6\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:234
+#: en/git-bisect.txt:290
 msgid ""
-"When checking out paths from the index, this option lets you recreate the "
-"conflicted merge in the specified paths."
+"This tells the bisect process that the commits between `v2.5` and `v2.6` "
+"(inclusive) should be skipped."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-checkout.txt:235
+#. type: Title ~
+#: en/git-bisect.txt:293
 #, no-wrap
-msgid "--conflict=<style>"
+msgid "Cutting down bisection by giving more parameters to bisect start"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:241
+#: en/git-bisect.txt:298
 msgid ""
-"The same as --merge option above, but changes the way the conflicting hunks "
-"are presented, overriding the merge.conflictStyle configuration variable.  "
-"Possible values are \"merge\" (default) and \"diff3\" (in addition to what "
-"is shown by \"merge\" style, shows the original contents)."
+"You can further cut down the number of trials, if you know what part of the "
+"tree is involved in the problem you are tracking down, by specifying path "
+"parameters when issuing the `bisect start` command:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-bisect.txt:301
+#, no-wrap
+msgid "$ git bisect start -- arch/i386 include/asm-i386\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:248
+#: en/git-bisect.txt:306
 msgid ""
-"Interactively select hunks in the difference between the <tree-ish> (or the "
-"index, if unspecified) and the working tree.  The chosen hunks are then "
-"applied in reverse to the working tree (and if a <tree-ish> was specified, "
-"the index)."
+"If you know beforehand more than one good commit, you can narrow the bisect "
+"space down by specifying all of the good commits immediately after the bad "
+"commit when issuing the `bisect start` command:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-checkout.txt:252
+#. type: delimited block -
+#: en/git-bisect.txt:311
+#, no-wrap
 msgid ""
-"This means that you can use `git checkout -p` to selectively discard edits "
-"from your current working tree. See the ``Interactive Mode'' section of "
-"linkgit:git-add[1] to learn how to operate the `--patch` mode."
+"$ git bisect start v2.6.20-rc6 v2.6.20-rc4 v2.6.20-rc1 --\n"
+"                   # v2.6.20-rc6 is bad\n"
+"                   # v2.6.20-rc4 and v2.6.20-rc1 are good\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-checkout.txt:253
+#. type: Title ~
+#: en/git-bisect.txt:314
 #, no-wrap
-msgid "--ignore-other-worktrees"
+msgid "Bisect run"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:258
+#: en/git-bisect.txt:318
 msgid ""
-"`git checkout` refuses when the wanted ref is already checked out by another "
-"worktree. This option makes it check the ref out anyway. In other words, the "
-"ref can be held by more than one worktree."
+"If you have a script that can tell if the current source code is good or "
+"bad, you can bisect by issuing the command:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-checkout.txt:259 en/git-rebase.txt:242
+#. type: delimited block -
+#: en/git-bisect.txt:321
 #, no-wrap
-msgid "<branch>"
+msgid "$ git bisect run my_script arguments\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:265
+#: en/git-bisect.txt:327
 msgid ""
-"Branch to checkout; if it refers to a branch (i.e., a name that, when "
-"prepended with \"refs/heads/\", is a valid ref), then that branch is checked "
-"out. Otherwise, if it refers to a valid commit, your HEAD becomes "
-"\"detached\" and you are no longer on any branch (see below for details)."
+"Note that the script (`my_script` in the above example) should exit with "
+"code 0 if the current source code is good/old, and exit with a code between "
+"1 and 127 (inclusive), except 125, if the current source code is bad/new."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:269
+#: en/git-bisect.txt:331
 msgid ""
-"As a special case, the `\"@{-N}\"` syntax for the N-th last branch/commit "
-"checks out branches (instead of detaching).  You may also specify `-` which "
-"is synonymous with `\"@{-1}\"`."
+"Any other exit code will abort the bisect process. It should be noted that a "
+"program that terminates via `exit(-1)` leaves $? = 255, (see the exit(3) "
+"manual page), as the value is chopped with `& 0377`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:273
+#: en/git-bisect.txt:340
 msgid ""
-"As a further special case, you may use `\"A...B\"` as a shortcut for the "
-"merge base of `A` and `B` if there is exactly one merge base. You can leave "
-"out at most one of `A` and `B`, in which case it defaults to `HEAD`."
+"The special exit code 125 should be used when the current source code cannot "
+"be tested. If the script exits with this code, the current revision will be "
+"skipped (see `git bisect skip` above). 125 was chosen as the highest "
+"sensible value to use for this purpose, because 126 and 127 are used by "
+"POSIX shells to signal specific error status (127 is for command not found, "
+"126 is for command found but not executable--these details do not matter, as "
+"they are normal errors in the script, as far as `bisect run` is concerned)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-checkout.txt:274
-#, no-wrap
-msgid "<new_branch>"
+#. type: Plain text
+#: en/git-bisect.txt:346
+msgid ""
+"You may often find that during a bisect session you want to have temporary "
+"modifications (e.g. s/#define DEBUG 0/#define DEBUG 1/ in a header file, or "
+"\"revision that does not have this commit needs this patch applied to work "
+"around another problem this bisection is not interested in\") applied to the "
+"revision being tested."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:276
-msgid "Name for the new branch."
+#: en/git-bisect.txt:354
+msgid ""
+"To cope with such a situation, after the inner 'git bisect' finds the next "
+"revision to test, the script can apply the patch before compiling, run the "
+"real test, and afterwards decide if the revision (possibly with the needed "
+"patch) passed the test and then rewind the tree to the pristine state.  "
+"Finally the script should exit with the status of the real test to let the "
+"`git bisect run` command loop determine the eventual outcome of the bisect "
+"session."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-checkout.txt:277
+#: en/git-bisect.txt:357 en/git-clone.txt:134
 #, no-wrap
-msgid "<start_point>"
+msgid "--no-checkout"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:280
+#: en/git-bisect.txt:362
 msgid ""
-"The name of a commit at which to start the new branch; see "
-"linkgit:git-branch[1] for details. Defaults to HEAD."
+"Do not checkout the new working tree at each iteration of the bisection "
+"process. Instead just update a special reference named `BISECT_HEAD` to make "
+"it point to the commit that should be tested."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:284
+#: en/git-bisect.txt:365
 msgid ""
-"Tree to checkout from (when paths are given). If not specified, the index "
-"will be used."
+"This option may be useful when the test you would perform in each step does "
+"not require a checked out tree."
 msgstr ""
 
-#. type: Title -
-#: en/git-checkout.txt:288
-#, no-wrap
-msgid "DETACHED HEAD"
+#. type: Plain text
+#: en/git-bisect.txt:367
+msgid "If the repository is bare, `--no-checkout` is assumed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:292
-msgid ""
-"HEAD normally refers to a named branch (e.g. 'master'). Meanwhile, each "
-"branch refers to a specific commit. Let's look at a repo with three commits, "
-"one of them tagged, and with branch 'master' checked out:"
+#: en/git-bisect.txt:372
+msgid "Automatically bisect a broken build between v1.2 and HEAD:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-checkout.txt:301
+#: en/git-bisect.txt:377
 #, no-wrap
 msgid ""
-"\t   HEAD (refers to branch 'master')\n"
-"\t    |\n"
-"\t    v\n"
-"a---b---c  branch 'master' (refers to commit 'c')\n"
-"    ^\n"
-"    |\n"
-"  tag 'v2.0' (refers to commit 'b')\n"
+"$ git bisect start HEAD v1.2 --      # HEAD is bad, v1.2 is good\n"
+"$ git bisect run make                # \"make\" builds the app\n"
+"$ git bisect reset                   # quit the bisect session\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:308
-msgid ""
-"When a commit is created in this state, the branch is updated to refer to "
-"the new commit. Specifically, 'git commit' creates a new commit 'd', whose "
-"parent is commit 'c', and then updates branch 'master' to refer to new "
-"commit 'd'. HEAD still refers to branch 'master' and so indirectly now "
-"refers to commit 'd':"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-checkout.txt:311 en/git-checkout.txt:346 en/git-checkout.txt:363
-#, no-wrap
-msgid "$ edit; git add; git commit\n"
+#: en/git-bisect.txt:380
+msgid "Automatically bisect a test failure between origin and HEAD:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-checkout.txt:319
+#: en/git-bisect.txt:385
 #, no-wrap
 msgid ""
-"\t       HEAD (refers to branch 'master')\n"
-"\t\t|\n"
-"\t\tv\n"
-"a---b---c---d  branch 'master' (refers to commit 'd')\n"
-"    ^\n"
-"    |\n"
-"  tag 'v2.0' (refers to commit 'b')\n"
+"$ git bisect start HEAD origin --    # HEAD is bad, origin is good\n"
+"$ git bisect run make test           # \"make test\" builds and tests\n"
+"$ git bisect reset                   # quit the bisect session\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:325
-msgid ""
-"It is sometimes useful to be able to checkout a commit that is not at the "
-"tip of any named branch, or even to create a new commit that is not "
-"referenced by a named branch. Let's look at what happens when we checkout "
-"commit 'b' (here we show two ways this may be done):"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-checkout.txt:329
-#, no-wrap
-msgid ""
-"$ git checkout v2.0  # or\n"
-"$ git checkout master^^\n"
+#: en/git-bisect.txt:388 en/git-bisect.txt:442
+msgid "Automatically bisect a broken test case:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-checkout.txt:337
+#: en/git-bisect.txt:397
 #, no-wrap
 msgid ""
-"   HEAD (refers to commit 'b')\n"
-"    |\n"
-"    v\n"
-"a---b---c---d  branch 'master' (refers to commit 'd')\n"
-"    ^\n"
-"    |\n"
-"  tag 'v2.0' (refers to commit 'b')\n"
+"$ cat ~/test.sh\n"
+"#!/bin/sh\n"
+"make || exit 125                     # this skips broken builds\n"
+"~/check_test_case.sh                 # does the test case pass?\n"
+"$ git bisect start HEAD HEAD~10 --   # culprit is among the last 10\n"
+"$ git bisect run ~/test.sh\n"
+"$ git bisect reset                   # quit the bisect session\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:343
+#: en/git-bisect.txt:403
 msgid ""
-"Notice that regardless of which checkout command we use, HEAD now refers "
-"directly to commit 'b'. This is known as being in detached HEAD state.  It "
-"means simply that HEAD refers to a specific commit, as opposed to referring "
-"to a named branch. Let's see what happens when we create a commit:"
+"Here we use a `test.sh` custom script. In this script, if `make` fails, we "
+"skip the current commit.  `check_test_case.sh` should `exit 0` if the test "
+"case passes, and `exit 1` otherwise."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-checkout.txt:356
-#, no-wrap
+#. type: Plain text
+#: en/git-bisect.txt:407
 msgid ""
-"     HEAD (refers to commit 'e')\n"
-"      |\n"
-"      v\n"
-"      e\n"
-"     /\n"
-"a---b---c---d  branch 'master' (refers to commit 'd')\n"
-"    ^\n"
-"    |\n"
-"  tag 'v2.0' (refers to commit 'b')\n"
+"It is safer if both `test.sh` and `check_test_case.sh` are outside the "
+"repository to prevent interactions between the bisect, make and test "
+"processes and the scripts."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:360
-msgid ""
-"There is now a new commit 'e', but it is referenced only by HEAD. We can of "
-"course add yet another commit in this state:"
+#: en/git-bisect.txt:409
+msgid "Automatically bisect with temporary modifications (hot-fix):"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-checkout.txt:373
+#: en/git-bisect.txt:413
 #, no-wrap
 msgid ""
-"\t HEAD (refers to commit 'f')\n"
-"\t  |\n"
-"\t  v\n"
-"      e---f\n"
-"     /\n"
-"a---b---c---d  branch 'master' (refers to commit 'd')\n"
-"    ^\n"
-"    |\n"
-"  tag 'v2.0' (refers to commit 'b')\n"
+"$ cat ~/test.sh\n"
+"#!/bin/sh\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-checkout.txt:377
+#. type: delimited block -
+#: en/git-bisect.txt:426
+#, no-wrap
 msgid ""
-"In fact, we can perform all the normal Git operations. But, let's look at "
-"what happens when we then checkout master:"
+"# tweak the working tree by merging the hot-fix branch\n"
+"# and then attempt a build\n"
+"if\tgit merge --no-commit hot-fix &&\n"
+"\tmake\n"
+"then\n"
+"\t# run project specific test and report its status\n"
+"\t~/check_test_case.sh\n"
+"\tstatus=$?\n"
+"else\n"
+"\t# tell the caller this is untestable\n"
+"\tstatus=125\n"
+"fi\n"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-checkout.txt:380
+#: en/git-bisect.txt:429
 #, no-wrap
-msgid "$ git checkout master\n"
+msgid ""
+"# undo the tweak to allow clean flipping to the next commit\n"
+"git reset --hard\n"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-checkout.txt:388
+#: en/git-bisect.txt:432
 #, no-wrap
 msgid ""
-"\t       HEAD (refers to branch 'master')\n"
-"      e---f     |\n"
-"     /          v\n"
-"a---b---c---d  branch 'master' (refers to commit 'd')\n"
-"    ^\n"
-"    |\n"
-"  tag 'v2.0' (refers to commit 'b')\n"
+"# return control\n"
+"exit $status\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:395
+#: en/git-bisect.txt:440
 msgid ""
-"It is important to realize that at this point nothing refers to commit "
-"'f'. Eventually commit 'f' (and by extension commit 'e') will be deleted by "
-"the routine Git garbage collection process, unless we create a reference "
-"before that happens. If we have not yet moved away from commit 'f', any of "
-"these will create a reference to it:"
+"This applies modifications from a hot-fix branch before each test run, e.g. "
+"in case your build or test environment changed so that older revisions may "
+"need a fix which newer ones have already. (Make sure the hot-fix branch is "
+"based off a commit which is contained in all revisions which you are "
+"bisecting, so that the merge does not pull in too much, or use `git cherry-"
+"pick` instead of `git merge`.)"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-checkout.txt:400
+#: en/git-bisect.txt:447
 #, no-wrap
 msgid ""
-"$ git checkout -b foo   <1>\n"
-"$ git branch foo        <2>\n"
-"$ git tag foo           <3>\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-checkout.txt:405
-msgid ""
-"creates a new branch 'foo', which refers to commit 'f', and then updates "
-"HEAD to refer to branch 'foo'. In other words, we'll no longer be in "
-"detached HEAD state after this command."
+"$ git bisect start HEAD HEAD~10 --   # culprit is among the last 10\n"
+"$ git bisect run sh -c \"make || exit 125; ~/check_test_case.sh\"\n"
+"$ git bisect reset                   # quit the bisect session\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:408
+#: en/git-bisect.txt:451
 msgid ""
-"similarly creates a new branch 'foo', which refers to commit 'f', but leaves "
-"HEAD detached."
-msgstr ""
-
-#. type: Plain text
-#: en/git-checkout.txt:411
-msgid "creates a new tag 'foo', which refers to commit 'f', leaving HEAD detached."
+"This shows that you can do without a run script if you write the test on a "
+"single line."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:416
-msgid ""
-"If we have moved away from commit 'f', then we must first recover its object "
-"name (typically by using git reflog), and then we can create a reference to "
-"it. For example, to see the last two commits to which HEAD referred, we can "
-"use either of these commands:"
+#: en/git-bisect.txt:453
+msgid "Locate a good region of the object graph in a damaged repository"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-checkout.txt:420
+#: en/git-bisect.txt:463
 #, no-wrap
 msgid ""
-"$ git reflog -2 HEAD # or\n"
-"$ git log -g -2 HEAD\n"
+"$ git bisect start HEAD <known-good-commit> [ <boundary-commit> ... ] --no-checkout\n"
+"$ git bisect run sh -c '\n"
+"\tGOOD=$(git for-each-ref \"--format=%(objectname)\" refs/bisect/good-*) &&\n"
+"\tgit rev-list --objects BISECT_HEAD --not $GOOD >tmp.$$ &&\n"
+"\tgit pack-objects --stdout >/dev/null <tmp.$$\n"
+"\trc=$?\n"
+"\trm -f tmp.$$\n"
+"\ttest $rc = 0'\n"
 msgstr ""
 
-#. type: Title -
-#: en/git-checkout.txt:423
+#. type: delimited block -
+#: en/git-bisect.txt:465
 #, no-wrap
-msgid "ARGUMENT DISAMBIGUATION"
+msgid "$ git bisect reset                   # quit the bisect session\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:433
+#: en/git-bisect.txt:470
 msgid ""
-"When there is only one argument given and it is not `--` (e.g. \"git "
-"checkout abc\"), and when the argument is both a valid `<tree-ish>` (e.g. a "
-"branch \"abc\" exists) and a valid `<pathspec>` (e.g. a file or a directory "
-"whose name is \"abc\" exists), Git would usually ask you to disambiguate.  "
-"Because checking out a branch is so common an operation, however, \"git "
-"checkout abc\" takes \"abc\" as a `<tree-ish>` in such a situation.  Use "
-"`git checkout -- <pathspec>` if you want to checkout these paths out of the "
-"index."
+"In this case, when 'git bisect run' finishes, bisect/bad will refer to a "
+"commit that has at least one parent whose reachable graph is fully "
+"traversable in the sense required by 'git pack objects'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:440
-msgid ""
-"The following sequence checks out the `master` branch, reverts the "
-"`Makefile` to two revisions back, deletes hello.c by mistake, and gets it "
-"back from the index."
+#: en/git-bisect.txt:472
+msgid "Look for a fix instead of a regression in the code"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-checkout.txt:446
+#: en/git-bisect.txt:477
 #, no-wrap
 msgid ""
-"$ git checkout master             <1>\n"
-"$ git checkout master~2 Makefile  <2>\n"
-"$ rm -f hello.c\n"
-"$ git checkout hello.c            <3>\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-checkout.txt:449
-msgid "switch branch"
-msgstr ""
-
-#. type: Plain text
-#: en/git-checkout.txt:450
-msgid "take a file out of another commit"
+"$ git bisect start\n"
+"$ git bisect new HEAD    # current commit is marked as new\n"
+"$ git bisect old HEAD~10 # the tenth commit from now is marked as old\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:451
-msgid "restore hello.c from the index"
+#: en/git-bisect.txt:480
+msgid "or:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-checkout.txt:454
-msgid "If you want to check out _all_ C source files out of the index, you can say"
+#. type: delimited block -
+#: en/git-bisect.txt:484
+#, no-wrap
+msgid ""
+"$ git bisect start --term-old broken --term-new fixed\n"
+"$ git bisect fixed\n"
+"$ git bisect broken HEAD~10\n"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-checkout.txt:457
+#. type: Title ~
+#: en/git-bisect.txt:487
 #, no-wrap
-msgid "$ git checkout -- '*.c'\n"
+msgid "Getting help"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:463
+#: en/git-bisect.txt:491
 msgid ""
-"Note the quotes around `*.c`.  The file `hello.c` will also be checked out, "
-"even though it is no longer in the working tree, because the file globbing "
-"is used to match entries in the index (not in the working tree by the "
-"shell)."
+"Use `git bisect` to get a short usage description, and `git bisect help` or "
+"`git bisect -h` to get a long usage description."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:467
+#: en/git-bisect.txt:496
 msgid ""
-"If you have an unfortunate branch that is named `hello.c`, this step would "
-"be confused as an instruction to switch to that branch.  You should instead "
-"write:"
+"link:git-bisect-lk2009.html[Fighting regressions with git bisect], linkgit:"
+"git-blame[1]."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-checkout.txt:470
+#. type: Title =
+#: en/git-blame.txt:2
 #, no-wrap
-msgid "$ git checkout -- hello.c\n"
+msgid "git-blame(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:474
+#: en/git-blame.txt:7
 msgid ""
-"After working in the wrong branch, switching to the correct branch would be "
-"done using:"
+"git-blame - Show what revision and author last modified each line of a file"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-checkout.txt:477
+#. type: Plain text
+#: en/git-blame.txt:15
 #, no-wrap
-msgid "$ git checkout mytopic\n"
+msgid ""
+"'git blame' [-c] [-b] [-l] [--root] [-t] [-f] [-n] [-s] [-e] [-p] [-w] [--incremental]\n"
+"\t    [-L <range>] [-S <revs-file>] [-M] [-C] [-C] [-C] [--since=<date>]\n"
+"\t    [--progress] [--abbrev=<n>] [<rev> | --contents <file> | --reverse <rev>..<rev>]\n"
+"\t    [--] <file>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:482
+#: en/git-blame.txt:21
 msgid ""
-"However, your \"wrong\" branch and correct \"mytopic\" branch may differ in "
-"files that you have modified locally, in which case the above checkout would "
-"fail like this:"
+"Annotates each line in the given file with information from the revision "
+"which last modified the line. Optionally, start annotating from the given "
+"revision."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-checkout.txt:486
-#, no-wrap
+#. type: Plain text
+#: en/git-blame.txt:24
 msgid ""
-"$ git checkout mytopic\n"
-"error: You have local changes to 'frotz'; not switching branches.\n"
+"When specified one or more times, `-L` restricts annotation to the requested "
+"lines."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:490
-msgid ""
-"You can give the `-m` flag to the command, which would try a three-way "
-"merge:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-checkout.txt:494
-#, no-wrap
+#: en/git-blame.txt:30
 msgid ""
-"$ git checkout -m mytopic\n"
-"Auto-merging frotz\n"
+"The origin of lines is automatically followed across whole-file renames "
+"(currently there is no option to turn the rename-following off). To follow "
+"lines moved from one file to another, or to follow lines that were copied "
+"and pasted from another file, etc., see the `-C` and `-M` options."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:499
+#: en/git-blame.txt:34
 msgid ""
-"After this three-way merge, the local modifications are _not_ registered in "
-"your index file, so `git diff` would show you what changes you made since "
-"the tip of the new branch."
+"The report does not tell you anything about lines which have been deleted or "
+"replaced; you need to use a tool such as 'git diff' or the \"pickaxe\" "
+"interface briefly mentioned in the following paragraph."
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:502
+#: en/git-blame.txt:41
 msgid ""
-"When a merge conflict happens during switching branches with the `-m` "
-"option, you would see something like this:"
+"Apart from supporting file annotation, Git also supports searching the "
+"development history for when a code snippet occurred in a change. This makes "
+"it possible to track when a code snippet was added to a file, moved or "
+"copied between files, and eventually deleted or replaced. It works by "
+"searching for a text string in the diff. A small example of the pickaxe "
+"interface that searches for `blame_usage`:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-checkout.txt:508
+#: en/git-blame.txt:46
 #, no-wrap
 msgid ""
-"$ git checkout -m mytopic\n"
-"Auto-merging frotz\n"
-"ERROR: Merge conflict in frotz\n"
-"fatal: merge program failed\n"
+"$ git log --pretty=oneline -S'blame_usage'\n"
+"5040f17eba15504bad66b14a645bddd9b015ebb7 blame -S <ancestry-file>\n"
+"ea4c7f9bf69e781dd0cd88d2bccb2bf5cc15c9a7 git-blame: Make the output\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-checkout.txt:514
-msgid ""
-"At this point, `git diff` shows the changes cleanly merged as in the "
-"previous example, as well as the changes in the conflicted files.  Edit and "
-"resolve the conflict and mark it resolved with `git add` as usual:"
+#: en/git-blame.txt:54
+msgid "Use the same output mode as linkgit:git-annotate[1] (Default: off)."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-checkout.txt:518
+#. type: Labeled list
+#: en/git-blame.txt:55
 #, no-wrap
+msgid "--score-debug"
+msgstr ""
+
+#. type: Plain text
+#: en/git-blame.txt:63
 msgid ""
-"$ edit frotz\n"
-"$ git add frotz\n"
+"Include debugging information related to the movement of lines between files "
+"(see `-C`) and lines moved within a file (see `-M`).  The first number "
+"listed is the score.  This is the number of alphanumeric characters detected "
+"as having been moved between or within files.  This must be above a certain "
+"threshold for 'git blame' to consider those lines of code to have been moved."
 msgstr ""
 
-#. type: Title =
-#: en/git-check-ref-format.txt:2
+#. type: Labeled list
+#: en/git-blame.txt:65
 #, no-wrap
-msgid "git-check-ref-format(1)"
+msgid "--show-name"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:7
-msgid "git-check-ref-format - Ensures that a reference name is well formed"
+#: en/git-blame.txt:69
+msgid ""
+"Show the filename in the original commit.  By default the filename is shown "
+"if there is any line that came from a file with a different name, due to "
+"rename detection."
 msgstr ""
 
-#. type: Plain text
-#: en/git-check-ref-format.txt:15
+#. type: Labeled list
+#: en/git-blame.txt:71
 #, no-wrap
-msgid ""
-"'git check-ref-format' [--normalize]\n"
-"       [--[no-]allow-onelevel] [--refspec-pattern]\n"
-"       <refname>\n"
-"'git check-ref-format' --branch <branchname-shorthand>\n"
+msgid "--show-number"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:20
-msgid ""
-"Checks if a given 'refname' is acceptable, and exits with a non-zero status "
-"if it is not."
+#: en/git-blame.txt:73
+msgid "Show the line number in the original commit (Default: off)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:27
-msgid ""
-"A reference is used in Git to specify branches and tags.  A branch head is "
-"stored in the `refs/heads` hierarchy, while a tag is stored in the "
-"`refs/tags` hierarchy of the ref namespace (typically in "
-"`$GIT_DIR/refs/heads` and `$GIT_DIR/refs/tags` directories or, as entries in "
-"file `$GIT_DIR/packed-refs` if refs are packed by `git gc`)."
+#: en/git-blame.txt:76
+msgid "Suppress the author name and timestamp from the output."
 msgstr ""
 
-#. type: Plain text
-#: en/git-check-ref-format.txt:29
-msgid "Git imposes the following rules on how references are named:"
+#. type: Labeled list
+#: en/git-blame.txt:78
+#, no-wrap
+msgid "--show-email"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:33
+#: en/git-blame.txt:82
 msgid ""
-"They can include slash `/` for hierarchical (directory)  grouping, but no "
-"slash-separated component can begin with a dot `.` or end with the sequence "
-"`.lock`."
+"Show the author email instead of author name (Default: off).  This can also "
+"be controlled via the `blame.showEmail` config option."
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:38
+#: en/git-blame.txt:86
 msgid ""
-"They must contain at least one `/`. This enforces the presence of a category "
-"like `heads/`, `tags/` etc. but the actual names are not restricted.  If the "
-"`--allow-onelevel` option is used, this rule is waived."
+"Ignore whitespace when comparing the parent's version and the child's to "
+"find where the lines came from."
 msgstr ""
 
-#. type: Plain text
-#: en/git-check-ref-format.txt:40
-msgid "They cannot have two consecutive dots `..` anywhere."
+#. type: Labeled list
+#: en/git-blame.txt:87 en/git-describe.txt:65
+#, no-wrap
+msgid "--abbrev=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:44
+#: en/git-blame.txt:91
 msgid ""
-"They cannot have ASCII control characters (i.e. bytes whose values are lower "
-"than \\040, or \\177 `DEL`), space, tilde `~`, caret `^`, or colon `:` "
-"anywhere."
+"Instead of using the default 7+1 hexadecimal digits as the abbreviated "
+"object name, use <n>+1 digits. Note that 1 column is used for a caret to "
+"mark the boundary commit."
 msgstr ""
 
-#. type: Plain text
-#: en/git-check-ref-format.txt:48
-msgid ""
-"They cannot have question-mark `?`, asterisk `*`, or open bracket `[` "
-"anywhere.  See the `--refspec-pattern` option below for an exception to this "
-"rule."
+#. type: Title -
+#: en/git-blame.txt:94
+#, no-wrap
+msgid "THE PORCELAIN FORMAT"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:52
+#: en/git-blame.txt:98
 msgid ""
-"They cannot begin or end with a slash `/` or contain multiple consecutive "
-"slashes (see the `--normalize` option below for an exception to this rule)"
-msgstr ""
-
-#. type: Plain text
-#: en/git-check-ref-format.txt:54
-msgid "They cannot end with a dot `.`."
+"In this format, each line is output after a header; the header at the "
+"minimum has the first line which has:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:56
-msgid "They cannot contain a sequence `@{`."
+#: en/git-blame.txt:100
+msgid "40-byte SHA-1 of the commit the line is attributed to;"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:58
-msgid "They cannot be the single character `@`."
+#: en/git-blame.txt:101
+msgid "the line number of the line in the original file;"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:60
-msgid "They cannot contain a `\\`."
+#: en/git-blame.txt:102
+msgid "the line number of the line in the final file;"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:65
+#: en/git-blame.txt:105
 msgid ""
-"These rules make it easy for shell script based tools to parse reference "
-"names, pathname expansion by the shell when a reference name is used "
-"unquoted (by mistake), and also avoid ambiguities in certain reference name "
-"expressions (see linkgit:gitrevisions[7]):"
+"on a line that starts a group of lines from a different commit than the "
+"previous one, the number of lines in this group.  On subsequent lines this "
+"field is absent."
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:69
+#: en/git-blame.txt:108
 msgid ""
-"A double-dot `..` is often used as in `ref1..ref2`, and in some contexts "
-"this notation means `^ref1 ref2` (i.e. not in `ref1` and in `ref2`)."
+"This header line is followed by the following information at least once for "
+"each commit:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:72
+#: en/git-blame.txt:112
 msgid ""
-"A tilde `~` and caret `^` are used to introduce the postfix 'nth parent' and "
-"'peel onion' operation."
+"the author name (\"author\"), email (\"author-mail\"), time (\"author-time"
+"\"), and time zone (\"author-tz\"); similarly for committer."
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:77
-msgid ""
-"A colon `:` is used as in `srcref:dstref` to mean \"use srcref\\'s value and "
-"store it in dstref\" in fetch and push operations.  It may also be used to "
-"select a specific object such as with 'git cat-file': \"git cat-file blob "
-"v1.3.3:refs.c\"."
+#: en/git-blame.txt:113
+msgid "the filename in the commit that the line is attributed to."
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:79
-msgid "at-open-brace `@{` is used as a notation to access a reflog entry."
+#: en/git-blame.txt:114
+msgid "the first line of the commit log message (\"summary\")."
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:85
+#: en/git-blame.txt:118
 msgid ""
-"With the `--branch` option, it expands the ``previous branch syntax'' "
-"`@{-n}`.  For example, `@{-1}` is a way to refer the last branch you were "
-"on.  This option should be used by porcelains to accept this syntax anywhere "
-"a branch name is expected, so they can act as if you typed the branch name."
+"The contents of the actual line is output after the above header, prefixed "
+"by a TAB. This is to allow adding more header elements later."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-check-ref-format.txt:88
-#, no-wrap
-msgid "--[no-]allow-onelevel"
+#. type: Plain text
+#: en/git-blame.txt:126
+msgid ""
+"The porcelain format generally suppresses commit information that has "
+"already been seen. For example, two lines that are blamed to the same commit "
+"will both be shown, but the details for that commit will be shown only once. "
+"This is more efficient, but may require more state be kept by the reader. "
+"The `--line-porcelain` option can be used to output full commit information "
+"for each line, allowing simpler (but less efficient)  usage like:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:92
+#: en/git-blame.txt:131
+#, no-wrap
 msgid ""
-"Controls whether one-level refnames are accepted (i.e., refnames that do not "
-"contain multiple `/`-separated components).  The default is "
-"`--no-allow-onelevel`."
+"\t# count the number of lines attributed to each author\n"
+"\tgit blame --line-porcelain file |\n"
+"\tsed -n 's/^author //p' |\n"
+"\tsort | uniq -c | sort -rn\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-check-ref-format.txt:93
+#. type: Title -
+#: en/git-blame.txt:134 en/revisions.txt:248
 #, no-wrap
-msgid "--refspec-pattern"
+msgid "SPECIFYING RANGES"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:99
+#: en/git-blame.txt:140
 msgid ""
-"Interpret <refname> as a reference name pattern for a refspec (as used with "
-"remote repositories).  If this option is enabled, <refname> is allowed to "
-"contain a single `*` in the refspec (e.g., `foo/bar*/baz` or `foo/bar*baz/` "
-"but not `foo/bar*/baz*`)."
+"Unlike 'git blame' and 'git annotate' in older versions of git, the extent "
+"of the annotation can be limited to both line ranges and revision ranges. "
+"The `-L` option, which limits annotation to a range of lines, may be "
+"specified multiple times."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-check-ref-format.txt:100
-#, no-wrap
-msgid "--normalize"
+#. type: Plain text
+#: en/git-blame.txt:145
+msgid ""
+"When you are interested in finding the origin for lines 40-60 for file "
+"`foo`, you can use the `-L` option like so (they mean the same thing -- both "
+"ask for 21 lines starting at line 40):"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:107
+#: en/git-blame.txt:148
+#, no-wrap
 msgid ""
-"Normalize 'refname' by removing any leading slash (`/`)  characters and "
-"collapsing runs of adjacent slashes between name components into a single "
-"slash.  If the normalized refname is valid then print it to standard output "
-"and exit with a status of 0, otherwise exit with a non-zero status.  "
-"(`--print` is a deprecated way to spell `--normalize`.)"
+"\tgit blame -L 40,60 foo\n"
+"\tgit blame -L 40,+21 foo\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:113
-msgid "Print the name of the previous branch:"
+#: en/git-blame.txt:150
+msgid "Also you can use a regular expression to specify the line range:"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-check-ref-format.txt:116
+#. type: Plain text
+#: en/git-blame.txt:152
 #, no-wrap
-msgid "$ git check-ref-format --branch @{-1}\n"
+msgid "\tgit blame -L '/^sub hello {/,/^}$/' foo\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-check-ref-format.txt:119
-msgid "Determine the reference name to use for a new branch:"
+#: en/git-blame.txt:154
+msgid "which limits the annotation to the body of the `hello` subroutine."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-check-ref-format.txt:123
-#, no-wrap
+#. type: Plain text
+#: en/git-blame.txt:158
 msgid ""
-"$ ref=$(git check-ref-format --normalize \"refs/heads/$newbranch\")||\n"
-"{ echo \"we do not like '$newbranch' as a branch name.\" >&2 ; exit 1 ; }\n"
-msgstr ""
-
-#. type: Title =
-#: en/git-cherry-pick.txt:2
-#, no-wrap
-msgid "git-cherry-pick(1)"
+"When you are not interested in changes older than version v2.6.18, or "
+"changes older than 3 weeks, you can use revision range specifiers similar to "
+"'git rev-list':"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:7
-msgid "git-cherry-pick - Apply the changes introduced by some existing commits"
+#: en/git-blame.txt:161
+#, no-wrap
+msgid ""
+"\tgit blame v2.6.18.. -- foo\n"
+"\tgit blame --since=3.weeks -- foo\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:16
-#, no-wrap
+#: en/git-blame.txt:167
 msgid ""
-"'git cherry-pick' [--edit] [-n] [-m parent-number] [-s] [-x] [--ff]\n"
-"\t\t  [-S[<keyid>]] <commit>...\n"
-"'git cherry-pick' --continue\n"
-"'git cherry-pick' --quit\n"
-"'git cherry-pick' --abort\n"
+"When revision range specifiers are used to limit the annotation, lines that "
+"have not changed since the range boundary (either the commit v2.6.18 or the "
+"most recent commit that is more than 3 weeks old in the above example) are "
+"blamed for that range boundary commit."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:23
+#: en/git-blame.txt:173
 msgid ""
-"Given one or more existing commits, apply the change each one introduces, "
-"recording a new commit for each.  This requires your working tree to be "
-"clean (no modifications from the HEAD commit)."
+"A particularly useful way is to see if an added file has lines created by "
+"copy-and-paste from existing files.  Sometimes this indicates that the "
+"developer was being sloppy and did not refactor the code properly.  You can "
+"first find the commit that introduced the file with:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:26
-msgid "When it is not obvious how to apply a change, the following happens:"
+#: en/git-blame.txt:175
+#, no-wrap
+msgid "\tgit log --diff-filter=A --pretty=short -- foo\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:29
+#: en/git-blame.txt:178
 msgid ""
-"The current branch and `HEAD` pointer stay at the last commit successfully "
-"made."
+"and then annotate the change between the commit and its parents, using "
+"`commit^!` notation:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:31
-msgid ""
-"The `CHERRY_PICK_HEAD` ref is set to point at the commit that introduced the "
-"change that is difficult to apply."
+#: en/git-blame.txt:180
+#, no-wrap
+msgid "\tgit blame -C -C -f $commit^! -- foo\n"
+msgstr ""
+
+#. type: Title -
+#: en/git-blame.txt:183
+#, no-wrap
+msgid "INCREMENTAL OUTPUT"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:33
+#: en/git-blame.txt:190
 msgid ""
-"Paths in which the change applied cleanly are updated both in the index file "
-"and in your working tree."
+"When called with `--incremental` option, the command outputs the result as "
+"it is built.  The output generally will talk about lines touched by more "
+"recent commits first (i.e. the lines will be annotated out of order) and is "
+"meant to be used by interactive viewers."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:38
+#: en/git-blame.txt:194
 msgid ""
-"For conflicting paths, the index file records up to three versions, as "
-"described in the \"TRUE MERGE\" section of linkgit:git-merge[1].  The "
-"working tree files will include a description of the conflict bracketed by "
-"the usual conflict markers `<<<<<<<` and `>>>>>>>`."
+"The output format is similar to the Porcelain format, but it does not "
+"contain the actual lines from the file that is being annotated."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:39
-msgid "No other modifications are made."
+#: en/git-blame.txt:196
+msgid "Each blame entry always starts with a line of:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:42
-msgid "See linkgit:git-merge[1] for some hints on resolving such conflicts."
+#: en/git-blame.txt:198
+#, no-wrap
+msgid "<40-byte hex sha1> <sourceline> <resultline> <num_lines>\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cherry-pick.txt:45 en/git-merge.txt:110 en/git-revert.txt:35 en/git-verify-commit.txt:27
-#, no-wrap
-msgid "<commit>..."
+#. type: Plain text
+#: en/git-blame.txt:200
+msgid "Line numbers count from 1."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:54
+#: en/git-blame.txt:205
 msgid ""
-"Commits to cherry-pick.  For a more complete list of ways to spell commits, "
-"see linkgit:gitrevisions[7].  Sets of commits can be passed but no traversal "
-"is done by default, as if the `--no-walk` option was specified, see "
-"linkgit:git-rev-list[1]. Note that specifying a range will feed all "
-"<commit>... arguments to a single revision walk (see a later example that "
-"uses 'maint master..next')."
+"The first time that a commit shows up in the stream, it has various other "
+"information about it printed out with a one-word tag at the beginning of "
+"each line describing the extra commit information (author, email, committer, "
+"dates, summary, etc.)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:59
+#: en/git-blame.txt:208
 msgid ""
-"With this option, 'git cherry-pick' will let you edit the commit message "
-"prior to committing."
+"Unlike the Porcelain format, the filename information is always given and "
+"terminates the entry:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cherry-pick.txt:60 en/git-clean.txt:62
+#. type: Plain text
+#: en/git-blame.txt:210
 #, no-wrap
-msgid "-x"
+msgid "\"filename\" <whitespace-quoted-filename-goes-here>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:73
+#: en/git-blame.txt:213
 msgid ""
-"When recording the commit, append a line that says \"(cherry picked from "
-"commit ...)\" to the original commit message in order to indicate which "
-"commit this change was cherry-picked from.  This is done only for cherry "
-"picks without conflicts.  Do not use this option if you are cherry-picking "
-"from your private branch because the information is useless to the "
-"recipient.  If on the other hand you are cherry-picking between two publicly "
-"visible branches (e.g. backporting a fix to a maintenance branch for an "
-"older release from a development branch), adding this information can be "
-"useful."
+"and thus it is really quite easy to parse for some line- and word-oriented "
+"parser (which should be quite natural for most scripting languages)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:78
+#: en/git-blame.txt:221
 msgid ""
-"It used to be that the command defaulted to do `-x` described above, and "
-"`-r` was to disable it.  Now the default is not to do `-x` so this option is "
-"a no-op."
+"For people who do parsing: to make it more robust, just ignore any lines "
+"between the first and last one (\"<sha1>\" and \"filename\" lines)  where "
+"you do not recognize the tag words (or care about that particular one) at "
+"the beginning of the \"extended information\" lines. That way, if there is "
+"ever added information (like the commit encoding or extended commit "
+"commentary), a blame viewer will not care."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cherry-pick.txt:79 en/git-revert.txt:49
+#. type: Title -
+#: en/git-blame.txt:224 en/git-check-mailmap.txt:40 en/git-shortlog.txt:80
 #, no-wrap
-msgid "-m parent-number"
+msgid "MAPPING AUTHORS"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cherry-pick.txt:80 en/git-revert.txt:50
+#. type: Title =
+#: en/git-branch.txt:2
 #, no-wrap
-msgid "--mainline parent-number"
+msgid "git-branch(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:86
-msgid ""
-"Usually you cannot cherry-pick a merge because you do not know which side of "
-"the merge should be considered the mainline.  This option specifies the "
-"parent number (starting from 1) of the mainline and allows cherry-pick to "
-"replay the change relative to the specified parent."
+#: en/git-branch.txt:7
+msgid "git-branch - List, create, or delete branches"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cherry-pick.txt:88 en/git-revert.txt:70 en/merge-options.txt:2
+#. type: Plain text
+#: en/git-branch.txt:24
 #, no-wrap
-msgid "--no-commit"
+msgid ""
+"'git branch' [--color[=<when>] | --no-color] [-r | -a]\n"
+"\t[--list] [-v [--abbrev=<length> | --no-abbrev]]\n"
+"\t[--column[=<options>] | --no-column] [--sort=<key>]\n"
+"\t[(--merged | --no-merged) [<commit>]]\n"
+"\t[--contains [<commit]] [--no-contains [<commit>]]\n"
+"\t[--points-at <object>] [--format=<format>] [<pattern>...]\n"
+"'git branch' [--track | --no-track] [-f] <branchname> [<start-point>]\n"
+"'git branch' (--set-upstream-to=<upstream> | -u <upstream>) [<branchname>]\n"
+"'git branch' --unset-upstream [<branchname>]\n"
+"'git branch' (-m | -M) [<oldbranch>] <newbranch>\n"
+"'git branch' (-c | -C) [<oldbranch>] <newbranch>\n"
+"'git branch' (-d | -D) [-r] <branchname>...\n"
+"'git branch' --edit-description [<branchname>]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:96
+#: en/git-branch.txt:37
 msgid ""
-"Usually the command automatically creates a sequence of commits.  This flag "
-"applies the changes necessary to cherry-pick each named commit to your "
-"working tree and the index, without making any commit.  In addition, when "
-"this option is used, your index does not have to match the HEAD commit.  The "
-"cherry-pick is done against the beginning state of your index."
+"If `--list` is given, or if there are no non-option arguments, existing "
+"branches are listed; the current branch will be highlighted with an "
+"asterisk.  Option `-r` causes the remote-tracking branches to be listed, and "
+"option `-a` shows both local and remote branches. If a `<pattern>` is given, "
+"it is used as a shell wildcard to restrict the output to matching branches. "
+"If multiple patterns are given, a branch is shown if it matches any of the "
+"patterns.  Note that when providing a `<pattern>`, you must use `--list`; "
+"otherwise the command is interpreted as branch creation."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:99
+#: en/git-branch.txt:46
 msgid ""
-"This is useful when cherry-picking more than one commits' effect to your "
-"index in a row."
+"With `--contains`, shows only the branches that contain the named commit (in "
+"other words, the branches whose tip commits are descendants of the named "
+"commit), `--no-contains` inverts it. With `--merged`, only branches merged "
+"into the named commit (i.e. the branches whose tip commits are reachable "
+"from the named commit) will be listed.  With `--no-merged` only branches not "
+"merged into the named commit will be listed.  If the <commit> argument is "
+"missing it defaults to `HEAD` (i.e. the tip of the current branch)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:104 en/git-revert.txt:93
+#: en/git-branch.txt:49
 msgid ""
-"Add Signed-off-by line at the end of the commit message.  See the signoff "
-"option in linkgit:git-commit[1] for more information."
+"The command's second form creates a new branch head named <branchname> which "
+"points to the current `HEAD`, or <start-point> if given."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cherry-pick.txt:111 en/merge-options.txt:30
-#, no-wrap
-msgid "--ff"
+#. type: Plain text
+#: en/git-branch.txt:53
+msgid ""
+"Note that this will create the new branch, but it will not switch the "
+"working tree to it; use \"git checkout <newbranch>\" to switch to the new "
+"branch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:115
+#: en/git-branch.txt:61
 msgid ""
-"If the current HEAD is the same as the parent of the cherry-pick'ed commit, "
-"then a fast forward to this commit will be performed."
+"When a local branch is started off a remote-tracking branch, Git sets up the "
+"branch (specifically the `branch.<name>.remote` and `branch.<name>.merge` "
+"configuration entries) so that 'git pull' will appropriately merge from the "
+"remote-tracking branch. This behavior may be changed via the global `branch."
+"autoSetupMerge` configuration flag. That setting can be overridden by using "
+"the `--track` and `--no-track` options, and changed later using `git branch "
+"--set-upstream-to`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cherry-pick.txt:116 en/git-commit.txt:173 en/git-notes.txt:158
-#, no-wrap
-msgid "--allow-empty"
+#. type: Plain text
+#: en/git-branch.txt:67
+msgid ""
+"With a `-m` or `-M` option, <oldbranch> will be renamed to <newbranch>.  If "
+"<oldbranch> had a corresponding reflog, it is renamed to match <newbranch>, "
+"and a reflog entry is created to remember the branch renaming. If "
+"<newbranch> exists, -M must be used to force the rename to happen."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:128
+#: en/git-branch.txt:71
 msgid ""
-"By default, cherry-picking an empty commit will fail, indicating that an "
-"explicit invocation of `git commit --allow-empty` is required. This option "
-"overrides that behavior, allowing empty commits to be preserved "
-"automatically in a cherry-pick. Note that when \"--ff\" is in effect, empty "
-"commits that meet the \"fast-forward\" requirement will be kept even without "
-"this option.  Note also, that use of this option only keeps commits that "
-"were initially empty (i.e. the commit recorded the same tree as its "
-"parent).  Commits which are made empty due to a previous commit are "
-"dropped.  To force the inclusion of those commits use "
-"`--keep-redundant-commits`."
+"The `-c` and `-C` options have the exact same semantics as `-m` and `-M`, "
+"except instead of the branch being renamed it along with its config and "
+"reflog will be copied to a new name."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cherry-pick.txt:129 en/git-commit.txt:179
-#, no-wrap
-msgid "--allow-empty-message"
+#. type: Plain text
+#: en/git-branch.txt:75
+msgid ""
+"With a `-d` or `-D` option, `<branchname>` will be deleted.  You may specify "
+"more than one branch for deletion.  If the branch currently has a reflog "
+"then the reflog will also be deleted."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:133
+#: en/git-branch.txt:81
 msgid ""
-"By default, cherry-picking a commit with an empty message will fail.  This "
-"option overrides that behavior, allowing commits with empty messages to be "
-"cherry picked."
+"Use `-r` together with `-d` to delete remote-tracking branches. Note, that "
+"it only makes sense to delete remote-tracking branches if they no longer "
+"exist in the remote repository or if 'git fetch' was configured not to fetch "
+"them again. See also the 'prune' subcommand of linkgit:git-remote[1] for a "
+"way to clean up all obsolete remote-tracking branches."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cherry-pick.txt:134
+#: en/git-branch.txt:85 en/git-clean.txt:28 en/git-cvsexportcommit.txt:49
+#: en/git-difftool.txt:22 en/git-http-push.txt:44 en/git-instaweb.txt:27
+#: en/git-ls-files.txt:39 en/git-ls-tree.txt:41 en/git-push.txt:181
+#: en/git-repack.txt:60 en/git-replace.txt:65 en/git-show-ref.txt:47
+#: en/git-symbolic-ref.txt:35 en/git-tag.txt:76
 #, no-wrap
-msgid "--keep-redundant-commits"
-msgstr ""
-
-#. type: Plain text
-#: en/git-cherry-pick.txt:140
-msgid ""
-"If a commit being cherry picked duplicates a commit already in the current "
-"history, it will become empty.  By default these redundant commits cause "
-"`cherry-pick` to stop so the user can examine the commit. This option "
-"overrides that behavior and creates an empty commit object.  Implies "
-"`--allow-empty`."
+msgid "-d"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cherry-pick.txt:141 en/git-notes.txt:184 en/git-rebase.txt:283 en/git-revert.txt:94 en/git-svn.txt:640 en/merge-options.txt:78
+#: en/git-branch.txt:86 en/git-push.txt:182 en/git-replace.txt:66
+#: en/git-symbolic-ref.txt:36 en/git-tag.txt:77
 #, no-wrap
-msgid "--strategy=<strategy>"
+msgid "--delete"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:145 en/git-revert.txt:98
+#: en/git-branch.txt:90
 msgid ""
-"Use the given merge strategy.  Should only be used once.  See the MERGE "
-"STRATEGIES section in linkgit:git-merge[1] for details."
+"Delete a branch. The branch must be fully merged in its upstream branch, or "
+"in `HEAD` if no upstream was set with `--track` or `--set-upstream-to`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cherry-pick.txt:146 en/git-revert.txt:99
-#, no-wrap
-msgid "-X<option>"
+#. type: Plain text
+#: en/git-branch.txt:93
+msgid "Shortcut for `--delete --force`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cherry-pick.txt:147 en/git-revert.txt:100 en/merge-options.txt:86
+#: en/git-branch.txt:94 en/git-tag.txt:183
 #, no-wrap
-msgid "--strategy-option=<option>"
+msgid "--create-reflog"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:150 en/git-revert.txt:103
+#: en/git-branch.txt:103
 msgid ""
-"Pass the merge strategy-specific option through to the merge strategy.  See "
-"linkgit:git-merge[1] for details."
+"Create the branch's reflog.  This activates recording of all changes made to "
+"the branch ref, enabling use of date based sha1 expressions such as "
+"\"<branchname>@\\{yesterday}\".  Note that in non-bare repositories, reflogs "
+"are usually enabled by default by the `core.logAllRefUpdates` config "
+"option.  The negated form `--no-create-reflog` only overrides an earlier `--"
+"create-reflog`, but currently does not negate the setting of `core."
+"logAllRefUpdates`."
 msgstr ""
 
-#. type: Title -
-#: en/git-cherry-pick.txt:152 en/git-revert.txt:105
-#, no-wrap
-msgid "SEQUENCER SUBCOMMANDS"
+#. type: Plain text
+#: en/git-branch.txt:112
+msgid ""
+"Reset <branchname> to <startpoint>, even if <branchname> exists already. "
+"Without `-f`, 'git branch' refuses to change an existing branch.  In "
+"combination with `-d` (or `--delete`), allow deleting the branch "
+"irrespective of its merged status. In combination with `-m` (or `--move`), "
+"allow renaming the branch even if the new branch name already exists, the "
+"same applies for `-c` (or `--copy`)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cherry-pick.txt:157
+#: en/git-branch.txt:114
 #, no-wrap
-msgid "`git cherry-pick master`"
+msgid "--move"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:161
-msgid ""
-"Apply the change introduced by the commit at the tip of the master branch "
-"and create a new commit with this change."
+#: en/git-branch.txt:116
+msgid "Move/rename a branch and the corresponding reflog."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cherry-pick.txt:162
+#: en/git-branch.txt:117 en/git-fast-export.txt:53 en/git-p4.txt:317
 #, no-wrap
-msgid "`git cherry-pick ..master`"
+msgid "-M"
+msgstr ""
+
+#. type: Plain text
+#: en/git-branch.txt:119
+msgid "Shortcut for `--move --force`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cherry-pick.txt:163
+#: en/git-branch.txt:121
 #, no-wrap
-msgid "`git cherry-pick ^HEAD master`"
+msgid "--copy"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:167
-msgid ""
-"Apply the changes introduced by all commits that are ancestors of master but "
-"not of HEAD to produce new commits."
+#: en/git-branch.txt:123
+msgid "Copy a branch and the corresponding reflog."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cherry-pick.txt:168
+#. type: Plain text
+#: en/git-branch.txt:124 en/git-fast-export.txt:54 en/git-rebase.txt:519
 #, no-wrap
-msgid "`git cherry-pick maint next ^master`"
+msgid "-C"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cherry-pick.txt:169
-#, no-wrap
-msgid "`git cherry-pick maint master..next`"
+#. type: Plain text
+#: en/git-branch.txt:126
+msgid "Shortcut for `--copy --force`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:176
+#: en/git-branch.txt:131
 msgid ""
-"Apply the changes introduced by all commits that are ancestors of maint or "
-"next, but not master or any of its ancestors.  Note that the latter does not "
-"mean `maint` and everything between `master` and `next`; specifically, "
-"`maint` will not be used if it is included in `master`."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-cherry-pick.txt:177
-#, no-wrap
-msgid "`git cherry-pick master~4 master~2`"
+"Color branches to highlight current, local, and remote-tracking branches.  "
+"The value must be always (the default), never, or auto."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:182
+#: en/git-branch.txt:136
 msgid ""
-"Apply the changes introduced by the fifth and third last commits pointed to "
-"by master and create 2 new commits with these changes."
+"Turn off branch colors, even when the configuration file gives the default "
+"to color output.  Same as `--color=never`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cherry-pick.txt:183
+#: en/git-branch.txt:138 en/git-for-each-ref.txt:95 en/git-grep.txt:113
+#: en/git-tag.txt:124
 #, no-wrap
-msgid "`git cherry-pick -n master~1 next`"
+msgid "--ignore-case"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:189
-msgid ""
-"Apply to the working tree and the index the changes introduced by the second "
-"last commit pointed to by master and by the last commit pointed to by next, "
-"but do not create any commit with these changes."
+#: en/git-branch.txt:140
+msgid "Sorting and filtering branches are case insensitive."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cherry-pick.txt:190
+#: en/git-branch.txt:141 en/git-status.txt:126 en/git-tag.txt:127
 #, no-wrap
-msgid "`git cherry-pick --ff ..next`"
-msgstr ""
-
-#. type: Plain text
-#: en/git-cherry-pick.txt:197
-msgid ""
-"If history is linear and HEAD is an ancestor of next, update the working "
-"tree and advance the HEAD pointer to match next.  Otherwise, apply the "
-"changes introduced by those commits that are in next but not HEAD to the "
-"current branch, creating a new commit for each new change."
+msgid "--column[=<options>]"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cherry-pick.txt:198
+#: en/git-branch.txt:142 en/git-status.txt:127 en/git-tag.txt:128
 #, no-wrap
-msgid "`git rev-list --reverse master -- README | git cherry-pick -n --stdin`"
+msgid "--no-column"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:204
+#: en/git-branch.txt:146
 msgid ""
-"Apply the changes introduced by all commits on the master branch that "
-"touched README to the working tree and index, so the result can be inspected "
-"and made into a single new commit if suitable."
+"Display branch listing in columns. See configuration variable column.branch "
+"for option syntax.`--column` and `--no-column` without options are "
+"equivalent to 'always' and 'never' respectively."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:208
-msgid ""
-"The following sequence attempts to backport a patch, bails out because the "
-"code the patch applies to has changed too much, and then tries again, this "
-"time exercising more care about matching up context lines."
+#: en/git-branch.txt:148
+msgid "This option is only applicable in non-verbose mode."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cherry-pick.txt:214
+#. type: Labeled list
+#: en/git-branch.txt:150 en/git-show-branch.txt:44
 #, no-wrap
-msgid ""
-"$ git cherry-pick topic^             <1>\n"
-"$ git diff                           <2>\n"
-"$ git reset --merge ORIG_HEAD        <3>\n"
-"$ git cherry-pick -Xpatience topic^  <4>\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-cherry-pick.txt:219
-msgid ""
-"apply the change that would be shown by `git show topic^`.  In this example, "
-"the patch does not apply cleanly, so information about the conflict is "
-"written to the index and working tree and no new commit results."
+msgid "--remotes"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:220
-msgid "summarize changes to be reconciled"
+#: en/git-branch.txt:152
+msgid "List or delete (if used with -d) the remote-tracking branches."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:223
-msgid ""
-"cancel the cherry-pick.  In other words, return to the pre-cherry-pick "
-"state, preserving any local modifications you had in the working tree."
+#: en/git-branch.txt:156
+msgid "List both remote-tracking branches and local branches."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry-pick.txt:226
+#: en/git-branch.txt:162
 msgid ""
-"try to apply the change introduced by `topic^` again, spending extra time to "
-"avoid mistakes based on incorrectly matching context lines."
+"List branches.  With optional `<pattern>...`, e.g. `git branch --list 'maint-"
+"*'`, list only the branches that match the pattern(s)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cherry-pick.txt:230 en/cmds-mainporcelain.txt:85
+#: en/git-branch.txt:164
 #, no-wrap
-msgid "linkgit:git-revert[1]"
+msgid "-vv"
 msgstr ""
 
-#. type: Title =
-#: en/git-cherry.txt:2
-#, no-wrap
-msgid "git-cherry(1)"
+#. type: Plain text
+#: en/git-branch.txt:171
+msgid ""
+"When in list mode, show sha1 and commit subject line for each head, along "
+"with relationship to upstream branch (if any). If given twice, print the "
+"name of the upstream branch, as well (see also `git remote show <remote>`)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry.txt:7
-msgid "git-cherry - Find commits yet to be applied to upstream"
+#: en/git-branch.txt:176
+msgid ""
+"Be more quiet when creating or deleting a branch, suppressing non-error "
+"messages."
 msgstr ""
 
-#. type: Plain text
-#: en/git-cherry.txt:12
+#. type: Labeled list
+#: en/git-branch.txt:177
 #, no-wrap
-msgid "'git cherry' [-v] [<upstream> [<head> [<limit>]]]\n"
+msgid "--abbrev=<length>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry.txt:17
+#: en/git-branch.txt:181
 msgid ""
-"Determine whether there are commits in `<head>..<upstream>` that are "
-"equivalent to those in the range `<limit>..<head>`."
+"Alter the sha1's minimum display length in the output listing.  The default "
+"value is 7 and can be overridden by the `core.abbrev` config option."
 msgstr ""
 
-#. type: Plain text
-#: en/git-cherry.txt:22
-msgid ""
-"The equivalence test is based on the diff, after removing whitespace and "
-"line numbers.  git-cherry therefore detects when commits have been "
-"\"copied\" by means of linkgit:git-cherry-pick[1], linkgit:git-am[1] or "
-"linkgit:git-rebase[1]."
+#. type: Labeled list
+#: en/git-branch.txt:182
+#, no-wrap
+msgid "--no-abbrev"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry.txt:26
+#: en/git-branch.txt:184
 msgid ""
-"Outputs the SHA1 of every commit in `<limit>..<head>`, prefixed with `-` for "
-"commits that have an equivalent in <upstream>, and `+` for commits that do "
-"not."
-msgstr ""
-
-#. type: Plain text
-#: en/git-cherry.txt:31
-msgid "Show the commit subjects next to the SHA1s."
+"Display the full sha1s in the output listing rather than abbreviating them."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cherry.txt:32 en/git-rebase.txt:237
+#: en/git-branch.txt:186 en/git-checkout.txt:167
 #, no-wrap
-msgid "<upstream>"
+msgid "--track"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry.txt:35
+#: en/git-branch.txt:194
 msgid ""
-"Upstream branch to search for equivalent commits.  Defaults to the upstream "
-"branch of HEAD."
+"When creating a new branch, set up `branch.<name>.remote` and `branch.<name>."
+"merge` configuration entries to mark the start-point branch as \"upstream\" "
+"from the new branch. This configuration will tell git to show the "
+"relationship between the two branches in `git status` and `git branch -v`. "
+"Furthermore, it directs `git pull` without arguments to pull from the "
+"upstream when the new branch is checked out."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry.txt:38 en/git-rebase.txt:244
-msgid "Working branch; defaults to HEAD."
+#: en/git-branch.txt:200
+msgid ""
+"This behavior is the default when the start point is a remote-tracking "
+"branch.  Set the branch.autoSetupMerge configuration variable to `false` if "
+"you want `git checkout` and `git branch` to always behave as if `--no-track` "
+"were given. Set it to `always` if you want this behavior when the start-"
+"point is either a local or remote-tracking branch."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cherry.txt:39 en/diff-config.txt:44 en/diff-options.txt:161
+#: en/git-branch.txt:201 en/git-checkout.txt:181
 #, no-wrap
-msgid "<limit>"
+msgid "--no-track"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry.txt:41
-msgid "Do not report commits up to (and including) limit."
+#: en/git-branch.txt:204 en/git-checkout.txt:184
+msgid ""
+"Do not set up \"upstream\" configuration, even if the branch.autoSetupMerge "
+"configuration variable is true."
 msgstr ""
 
-#. type: Title ~
-#: en/git-cherry.txt:46
+#. type: Labeled list
+#: en/git-branch.txt:205 en/git-push.txt:349
 #, no-wrap
-msgid "Patch workflows"
+msgid "--set-upstream"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry.txt:52
+#: en/git-branch.txt:208
 msgid ""
-"git-cherry is frequently used in patch-based workflows (see "
-"linkgit:gitworkflows[7]) to determine if a series of patches has been "
-"applied by the upstream maintainer.  In such a workflow you might create and "
-"send a topic branch like this:"
+"As this option had confusing syntax, it is no longer supported.  Please use "
+"`--track` or `--set-upstream-to` instead."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cherry.txt:58
+#. type: Labeled list
+#: en/git-branch.txt:209
 #, no-wrap
-msgid ""
-"$ git checkout -b topic origin/master\n"
-"# work and create some commits\n"
-"$ git format-patch origin/master\n"
-"$ git send-email ... 00*\n"
+msgid "-u <upstream>"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-branch.txt:210
+#, no-wrap
+msgid "--set-upstream-to=<upstream>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry.txt:62
+#: en/git-branch.txt:214
 msgid ""
-"Later, you can see whether your changes have been applied by saying (still "
-"on `topic`):"
+"Set up <branchname>'s tracking information so <upstream> is considered "
+"<branchname>'s upstream branch. If no <branchname> is specified, then it "
+"defaults to the current branch."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cherry.txt:66
+#. type: Labeled list
+#: en/git-branch.txt:215
 #, no-wrap
+msgid "--unset-upstream"
+msgstr ""
+
+#. type: Plain text
+#: en/git-branch.txt:218
 msgid ""
-"$ git fetch  # update your notion of origin/master\n"
-"$ git cherry -v\n"
+"Remove the upstream information for <branchname>. If no branch is specified "
+"it defaults to the current branch."
 msgstr ""
 
-#. type: Title ~
-#: en/git-cherry.txt:69
+#. type: Labeled list
+#: en/git-branch.txt:219
 #, no-wrap
-msgid "Concrete example"
+msgid "--edit-description"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry.txt:73
+#: en/git-branch.txt:224
 msgid ""
-"In a situation where topic consisted of three commits, and the maintainer "
-"applied two of them, the situation might look like:"
+"Open an editor and edit the text to explain what the branch is for, to be "
+"used by various other commands (e.g. `format-patch`, `request-pull`, and "
+"`merge` (if enabled)). Multi-line explanations may be used."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cherry.txt:86
+#. type: Labeled list
+#: en/git-branch.txt:225 en/git-tag.txt:135
 #, no-wrap
-msgid ""
-"$ git log --graph --oneline --decorate --boundary origin/master...topic\n"
-"* 7654321 (origin/master) upstream tip commit\n"
-"[... snip some other commits ...]\n"
-"* cccc111 cherry-pick of C\n"
-"* aaaa111 cherry-pick of A\n"
-"[... snip a lot more that has happened ...]\n"
-"| * cccc000 (topic) commit C\n"
-"| * bbbb000 commit B\n"
-"| * aaaa000 commit A\n"
-"|/\n"
-"o 1234567 branch point\n"
+msgid "--contains [<commit>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry.txt:90
+#: en/git-branch.txt:228
 msgid ""
-"In such cases, git-cherry shows a concise summary of what has yet to be "
-"applied:"
+"Only list branches which contain the specified commit (HEAD if not "
+"specified). Implies `--list`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cherry.txt:96
+#. type: Labeled list
+#: en/git-branch.txt:229 en/git-tag.txt:139
 #, no-wrap
-msgid ""
-"$ git cherry origin/master topic\n"
-"- cccc000... commit C\n"
-"+ bbbb000... commit B\n"
-"- aaaa000... commit A\n"
+msgid "--no-contains [<commit>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry.txt:102
+#: en/git-branch.txt:232
 msgid ""
-"Here, we see that the commits A and C (marked with `-`) can be dropped from "
-"your `topic` branch when you rebase it on top of `origin/master`, while the "
-"commit B (marked with `+`) still needs to be kept so that it will be sent to "
-"be applied to `origin/master`."
+"Only list branches which don't contain the specified commit (HEAD if not "
+"specified). Implies `--list`."
 msgstr ""
 
-#. type: Title ~
-#: en/git-cherry.txt:105
+#. type: Labeled list
+#: en/git-branch.txt:233 en/git-tag.txt:143
 #, no-wrap
-msgid "Using a limit"
+msgid "--merged [<commit>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry.txt:110
+#: en/git-branch.txt:237
 msgid ""
-"The optional <limit> is useful in cases where your topic is based on other "
-"work that is not in upstream.  Expanding on the previous example, this might "
-"look like:"
+"Only list branches whose tips are reachable from the specified commit (HEAD "
+"if not specified). Implies `--list`, incompatible with `--no-merged`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cherry.txt:126
+#. type: Labeled list
+#: en/git-branch.txt:238 en/git-tag.txt:147
 #, no-wrap
-msgid ""
-"$ git log --graph --oneline --decorate --boundary origin/master...topic\n"
-"* 7654321 (origin/master) upstream tip commit\n"
-"[... snip some other commits ...]\n"
-"* cccc111 cherry-pick of C\n"
-"* aaaa111 cherry-pick of A\n"
-"[... snip a lot more that has happened ...]\n"
-"| * cccc000 (topic) commit C\n"
-"| * bbbb000 commit B\n"
-"| * aaaa000 commit A\n"
-"| * 0000fff (base) unpublished stuff F\n"
-"[... snip ...]\n"
-"| * 0000aaa unpublished stuff A\n"
-"|/\n"
-"o 1234567 merge-base between upstream and topic\n"
+msgid "--no-merged [<commit>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cherry.txt:130
+#: en/git-branch.txt:242
 msgid ""
-"By specifying `base` as the limit, you can avoid listing commits between "
-"`base` and `topic`:"
+"Only list branches whose tips are not reachable from the specified commit "
+"(HEAD if not specified). Implies `--list`, incompatible with `--merged`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cherry.txt:136
+#. type: Labeled list
+#: en/git-branch.txt:243
 #, no-wrap
+msgid "<branchname>"
+msgstr ""
+
+#. type: Plain text
+#: en/git-branch.txt:248
 msgid ""
-"$ git cherry origin/master topic base\n"
-"- cccc000... commit C\n"
-"+ bbbb000... commit B\n"
-"- aaaa000... commit A\n"
+"The name of the branch to create or delete.  The new branch name must pass "
+"all checks defined by linkgit:git-check-ref-format[1].  Some of these checks "
+"may restrict the characters allowed in a branch name."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cherry.txt:142 en/cmds-purehelpers.txt:40
+#: en/git-branch.txt:249
 #, no-wrap
-msgid "linkgit:git-patch-id[1]"
+msgid "<start-point>"
 msgstr ""
 
-#. type: Title =
-#: en/git-citool.txt:2
+#. type: Plain text
+#: en/git-branch.txt:253
+msgid ""
+"The new branch head will point to this commit.  It may be given as a branch "
+"name, a commit-id, or a tag.  If this option is omitted, the current HEAD "
+"will be used instead."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-branch.txt:254
 #, no-wrap
-msgid "git-citool(1)"
+msgid "<oldbranch>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-citool.txt:7
-msgid "git-citool - Graphical alternative to git-commit"
+#: en/git-branch.txt:256
+msgid "The name of an existing branch to rename."
 msgstr ""
 
-#. type: Plain text
-#: en/git-citool.txt:12
+#. type: Labeled list
+#: en/git-branch.txt:257
 #, no-wrap
-msgid "'git citool'\n"
+msgid "<newbranch>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-citool.txt:19
+#: en/git-branch.txt:260
 msgid ""
-"A Tcl/Tk based graphical interface to review modified files, stage them into "
-"the index, enter a commit message and record the new commit onto the current "
-"branch.  This interface is an alternative to the less interactive 'git "
-"commit' program."
+"The new name for an existing branch. The same restrictions as for "
+"<branchname> apply."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-branch.txt:261 en/git-for-each-ref.txt:40 en/git-ls-remote.txt:63
+#: en/git-tag.txt:105
+#, no-wrap
+msgid "--sort=<key>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-citool.txt:22
+#: en/git-branch.txt:271
 msgid ""
-"'git citool' is actually a standard alias for `git gui citool`.  See "
-"linkgit:git-gui[1] for more details."
+"Sort based on the key given. Prefix `-` to sort in descending order of the "
+"value. You may use the --sort=<key> option multiple times, in which case the "
+"last key becomes the primary key. The keys supported are the same as those "
+"in `git for-each-ref`. Sort order defaults to the value configured for the "
+"`branch.sort` variable if exists, or to sorting based on the full refname "
+"(including `refs/...` prefix). This lists detached HEAD (if present) first, "
+"then local branches and finally remote-tracking branches. See linkgit:git-"
+"config[1]."
 msgstr ""
 
-#. type: Title =
-#: en/git-clean.txt:2
+#. type: Labeled list
+#: en/git-branch.txt:273 en/git-tag.txt:151
 #, no-wrap
-msgid "git-clean(1)"
+msgid "--points-at <object>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clean.txt:7
-msgid "git-clean - Remove untracked files from the working tree"
+#: en/git-branch.txt:275
+msgid "Only list branches of the given object."
 msgstr ""
 
-#. type: Plain text
-#: en/git-clean.txt:12
+#. type: Labeled list
+#: en/git-branch.txt:276
 #, no-wrap
-msgid ""
-"'git clean' [-d] [-f] [-i] [-n] [-q] [-e <pattern>] [-x | -X] [--] "
-"<path>...\n"
+msgid "--format <format>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clean.txt:18
+#: en/git-branch.txt:280
 msgid ""
-"Cleans the working tree by recursively removing files that are not under "
-"version control, starting from the current directory."
+"A string that interpolates `%(fieldname)` from a branch ref being shown and "
+"the object it points at.  The format is the same as that of linkgit:git-for-"
+"each-ref[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-clean.txt:22
+#: en/git-branch.txt:286
 msgid ""
-"Normally, only files unknown to Git are removed, but if the `-x` option is "
-"specified, ignored files are also removed. This can, for example, be useful "
-"to remove all build products."
+"`pager.branch` is only respected when listing branches, i.e., when `--list` "
+"is used or implied. The default is to use a pager.  See linkgit:git-"
+"config[1]."
 msgstr ""
 
-#. type: Plain text
-#: en/git-clean.txt:25
-msgid ""
-"If any optional `<path>...` arguments are given, only those paths are "
-"affected."
+#. type: Labeled list
+#: en/git-branch.txt:290
+#, no-wrap
+msgid "Start development from a known tag"
 msgstr ""
 
-#. type: Plain text
-#: en/git-clean.txt:33
+#. type: delimited block -
+#: en/git-branch.txt:297
+#, no-wrap
 msgid ""
-"Remove untracked directories in addition to untracked files.  If an "
-"untracked directory is managed by a different Git repository, it is not "
-"removed by default.  Use -f option twice if you really want to remove such a "
-"directory."
+"$ git clone git://git.kernel.org/pub/scm/.../linux-2.6 my2.6\n"
+"$ cd my2.6\n"
+"$ git branch my2.6.14 v2.6.14   <1>\n"
+"$ git checkout my2.6.14\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clean.txt:41
+#: en/git-branch.txt:301
 msgid ""
-"If the Git configuration variable clean.requireForce is not set to false, "
-"'git clean' will refuse to delete files or directories unless given -f, -n "
-"or -i. Git will refuse to delete directories with .git sub directory or file "
-"unless a second -f is given."
+"This step and the next one could be combined into a single step with "
+"\"checkout -b my2.6.14 v2.6.14\"."
 msgstr ""
 
-#. type: Plain text
-#: en/git-clean.txt:46
+#. type: Labeled list
+#: en/git-branch.txt:302
+#, no-wrap
+msgid "Delete an unneeded branch"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-branch.txt:309
+#, no-wrap
 msgid ""
-"Show what would be done and clean files interactively. See ``Interactive "
-"mode'' for details."
+"$ git clone git://git.kernel.org/.../git.git my.git\n"
+"$ cd my.git\n"
+"$ git branch -d -r origin/todo origin/html origin/man   <1>\n"
+"$ git branch -D test                                    <2>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clean.txt:50
-msgid "Don't actually remove anything, just show what would be done."
+#: en/git-branch.txt:314
+msgid ""
+"Delete the remote-tracking branches \"todo\", \"html\" and \"man\". The next "
+"'fetch' or 'pull' will create them again unless you configure them not to.  "
+"See linkgit:git-fetch[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-clean.txt:55
+#: en/git-branch.txt:316
 msgid ""
-"Be quiet, only report errors, but not the files that are successfully "
-"removed."
+"Delete the \"test\" branch even if the \"master\" branch (or whichever "
+"branch is currently checked out) does not have all commits from the test "
+"branch."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-clean.txt:56
+#. type: Title -
+#: en/git-branch.txt:319 en/git-filter-branch.txt:449 en/git-gc.txt:164
+#: en/git-index-pack.txt:97 en/git-prune.txt:71 en/git-symbolic-ref.txt:54
 #, no-wrap
-msgid "-e <pattern>"
+msgid "NOTES"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-clean.txt:57 en/git-ls-files.txt:84 en/git-name-rev.txt:33
-#, no-wrap
-msgid "--exclude=<pattern>"
+#. type: Plain text
+#: en/git-branch.txt:324
+msgid ""
+"If you are creating a branch that you want to checkout immediately, it is "
+"easier to use the git checkout command with its `-b` option to create a "
+"branch and check it out with a single command."
 msgstr ""
 
 #. type: Plain text
-#: en/git-clean.txt:61
+#: en/git-branch.txt:327
 msgid ""
-"In addition to those found in .gitignore (per directory) and "
-"$GIT_DIR/info/exclude, also consider these patterns to be in the set of the "
-"ignore rules in effect."
+"The options `--contains`, `--no-contains`, `--merged` and `--no-merged` "
+"serve four related but different purposes:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clean.txt:69
+#: en/git-branch.txt:331
 msgid ""
-"Don't use the standard ignore rules read from .gitignore (per directory) and "
-"$GIT_DIR/info/exclude, but do still use the ignore rules given with `-e` "
-"options.  This allows removing all untracked files, including build "
-"products.  This can be used (possibly in conjunction with 'git reset') to "
-"create a pristine working directory to test a clean build."
+"`--contains <commit>` is used to find all branches which will need special "
+"attention if <commit> were to be rebased or amended, since those branches "
+"contain the specified <commit>."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-clean.txt:70
-#, no-wrap
-msgid "-X"
+#. type: Plain text
+#: en/git-branch.txt:334
+msgid ""
+"`--no-contains <commit>` is the inverse of that, i.e. branches that don't "
+"contain the specified <commit>."
 msgstr ""
 
 #. type: Plain text
-#: en/git-clean.txt:73
+#: en/git-branch.txt:337
 msgid ""
-"Remove only files ignored by Git.  This may be useful to rebuild everything "
-"from scratch, but keep manually created files."
+"`--merged` is used to find all branches which can be safely deleted, since "
+"those branches are fully contained by HEAD."
 msgstr ""
 
 #. type: Plain text
-#: en/git-clean.txt:79
+#: en/git-branch.txt:340
 msgid ""
-"When the command enters the interactive mode, it shows the files and "
-"directories to be cleaned, and goes into its interactive command loop."
+"`--no-merged` is used to find branches which are candidates for merging into "
+"HEAD, since those branches are not fully contained by HEAD."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-clean.txt:90
-#, no-wrap
+#. type: Plain text
+#: en/git-branch.txt:348
 msgid ""
-"    *** Commands ***\n"
-"\t1: clean                2: filter by pattern    3: select by numbers\n"
-"\t4: ask each             5: quit                 6: help\n"
-"    What now> 1\n"
+"linkgit:git-check-ref-format[1], linkgit:git-fetch[1], linkgit:git-"
+"remote[1], link:user-manual.html#what-is-a-branch[``Understanding history: "
+"What is a branch?''] in the Git User's Manual."
 msgstr ""
 
-#. type: Plain text
-#: en/git-clean.txt:93
-msgid "You also could say `c` or `clean` above as long as the choice is unique."
+#. type: Title =
+#: en/git-bundle.txt:2
+#, no-wrap
+msgid "git-bundle(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clean.txt:95
-msgid "The main command loop has 6 subcommands."
+#: en/git-bundle.txt:7
+msgid "git-bundle - Move objects and refs by archive"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-clean.txt:96
+#. type: Plain text
+#: en/git-bundle.txt:16
 #, no-wrap
-msgid "clean"
+msgid ""
+"'git bundle' create <file> <git-rev-list-args>\n"
+"'git bundle' verify <file>\n"
+"'git bundle' list-heads <file> [<refname>...]\n"
+"'git bundle' unbundle <file> [<refname>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clean.txt:99
-msgid "Start cleaning files and directories, and then quit."
+#: en/git-bundle.txt:32
+msgid ""
+"Some workflows require that one or more branches of development on one "
+"machine be replicated on another machine, but the two machines cannot be "
+"directly connected, and therefore the interactive Git protocols (git, ssh, "
+"http) cannot be used.  This command provides support for 'git fetch' and "
+"'git pull' to operate by packaging objects and references in an archive at "
+"the originating machine, then importing those into another repository using "
+"'git fetch' and 'git pull' after moving the archive by some means (e.g., by "
+"sneakernet).  As no direct connection between the repositories exists, the "
+"user must specify a basis for the bundle that is held by the destination "
+"repository: the bundle assumes that all objects in the basis are already in "
+"the destination repository."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-clean.txt:100
+#: en/git-bundle.txt:36
 #, no-wrap
-msgid "filter by pattern"
+msgid "create <file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clean.txt:108
+#: en/git-bundle.txt:39
 msgid ""
-"This shows the files and directories to be deleted and issues an \"Input "
-"ignore patterns>>\" prompt. You can input space-separated patterns to "
-"exclude files and directories from deletion.  E.g. \"*.c *.h\" will excludes "
-"files end with \".c\" and \".h\" from deletion. When you are satisfied with "
-"the filtered result, press ENTER (empty) back to the main menu."
+"Used to create a bundle named 'file'.  This requires the 'git-rev-list-args' "
+"arguments to define the bundle contents."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-clean.txt:109
+#: en/git-bundle.txt:40
 #, no-wrap
-msgid "select by numbers"
+msgid "verify <file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clean.txt:120
+#: en/git-bundle.txt:47
 msgid ""
-"This shows the files and directories to be deleted and issues an \"Select "
-"items to delete>>\" prompt. When the prompt ends with double '>>' like this, "
-"you can make more than one selection, concatenated with whitespace or "
-"comma.  Also you can say ranges.  E.g. \"2-5 7,9\" to choose 2,3,4,5,7,9 "
-"from the list.  If the second number in a range is omitted, all remaining "
-"items are selected.  E.g. \"7-\" to choose 7,8,9 from the list.  You can say "
-"'*' to choose everything.  Also when you are satisfied with the filtered "
-"result, press ENTER (empty) back to the main menu."
+"Used to check that a bundle file is valid and will apply cleanly to the "
+"current repository.  This includes checks on the bundle format itself as "
+"well as checking that the prerequisite commits exist and are fully linked in "
+"the current repository.  'git bundle' prints a list of missing commits, if "
+"any, and exits with a non-zero status."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-clean.txt:121
+#: en/git-bundle.txt:48
 #, no-wrap
-msgid "ask each"
+msgid "list-heads <file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clean.txt:126
+#: en/git-bundle.txt:52
 msgid ""
-"This will start to clean, and you must confirm one by one in order to delete "
-"items. Please note that this action is not as efficient as the above two "
-"actions."
+"Lists the references defined in the bundle.  If followed by a list of "
+"references, only references matching those given are printed out."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-clean.txt:127
+#: en/git-bundle.txt:53
 #, no-wrap
-msgid "quit"
+msgid "unbundle <file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clean.txt:130
-msgid "This lets you quit without do cleaning."
+#: en/git-bundle.txt:59
+msgid ""
+"Passes the objects in the bundle to 'git index-pack' for storage in the "
+"repository, then prints the names of all defined references. If a list of "
+"references is given, only references matching those in the list are printed. "
+"This command is really plumbing, intended to be called only by 'git fetch'."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-clean.txt:131
+#: en/git-bundle.txt:60
 #, no-wrap
-msgid "help"
-msgstr ""
-
-#. type: Plain text
-#: en/git-clean.txt:134
-msgid "Show brief usage of interactive git-clean."
+msgid "<git-rev-list-args>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clean.txt:138 en/git-status.txt:356
-msgid "linkgit:gitignore[5]"
+#: en/git-bundle.txt:69
+msgid ""
+"A list of arguments, acceptable to 'git rev-parse' and 'git rev-list' (and "
+"containing a named ref, see SPECIFYING REFERENCES below), that specifies the "
+"specific objects and references to transport.  For example, `master~10.."
+"master` causes the current master reference to be packaged along with all "
+"objects added since its 10th ancestor commit.  There is no explicit limit to "
+"the number of references and objects that may be packaged."
 msgstr ""
 
-#. type: Title =
-#: en/git-clone.txt:2
+#. type: Labeled list
+#: en/git-bundle.txt:71
 #, no-wrap
-msgid "git-clone(1)"
+msgid "[<refname>...]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:7
-msgid "git-clone - Clone a repository into a new directory"
+#: en/git-bundle.txt:77
+msgid ""
+"A list of references used to limit the references reported as available. "
+"This is principally of use to 'git fetch', which expects to receive only "
+"those references asked for and not necessarily everything in the pack (in "
+"this case, 'git bundle' acts like 'git fetch-pack')."
 msgstr ""
 
-#. type: Plain text
-#: en/git-clone.txt:19
+#. type: Title -
+#: en/git-bundle.txt:79
 #, no-wrap
-msgid ""
-"'git clone' [--template=<template_directory>]\n"
-"\t  [-l] [-s] [--no-hardlinks] [-q] [-n] [--bare] [--mirror]\n"
-"\t  [-o <name>] [-b <name>] [-u <upload-pack>] [--reference <repository>]\n"
-"\t  [--dissociate] [--separate-git-dir <git dir>]\n"
-"\t  [--depth <depth>] [--[no-]single-branch]\n"
-"\t  [--recursive | --recurse-submodules] [--[no-]shallow-submodules]\n"
-"\t  [--jobs <n>] [--] <repository> [<directory>]\n"
+msgid "SPECIFYING REFERENCES"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:28
+#: en/git-bundle.txt:89
 msgid ""
-"Clones a repository into a newly created directory, creates remote-tracking "
-"branches for each branch in the cloned repository (visible using `git branch "
-"-r`), and creates and checks out an initial branch that is forked from the "
-"cloned repository's currently active branch."
+"'git bundle' will only package references that are shown by 'git show-ref': "
+"this includes heads, tags, and remote heads.  References such as `master~1` "
+"cannot be packaged, but are perfectly suitable for defining the basis.  More "
+"than one reference may be packaged, and more than one basis can be "
+"specified.  The objects packaged are those not contained in the union of the "
+"given bases.  Each basis can be specified explicitly (e.g. `^master~10`), or "
+"implicitly (e.g.  `master~10..master`, `--since=10.days.ago master`)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:34
+#: en/git-bundle.txt:94
 msgid ""
-"After the clone, a plain `git fetch` without arguments will update all the "
-"remote-tracking branches, and a `git pull` without arguments will in "
-"addition merge the remote master branch into the current master branch, if "
-"any (this is untrue when \"--single-branch\" is given; see below)."
+"It is very important that the basis used be held by the destination.  It is "
+"okay to err on the side of caution, causing the bundle file to contain "
+"objects already in the destination, as these are ignored when unpacking at "
+"the destination."
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:39
+#: en/git-bundle.txt:103
 msgid ""
-"This default configuration is achieved by creating references to the remote "
-"branch heads under `refs/remotes/origin` and by initializing "
-"`remote.origin.url` and `remote.origin.fetch` configuration variables."
+"Assume you want to transfer the history from a repository R1 on machine A to "
+"another repository R2 on machine B.  For whatever reason, direct connection "
+"between A and B is not allowed, but we can move data from A to B via some "
+"mechanism (CD, email, etc.).  We want to update R2 with development made on "
+"the branch master in R1."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-clone.txt:43 en/git-config.txt:127 en/git-instaweb.txt:24 en/git-pack-objects.txt:127 en/git-svn.txt:229
-#, no-wrap
-msgid "--local"
+#. type: Plain text
+#: en/git-bundle.txt:108
+msgid ""
+"To bootstrap the process, you can first create a bundle that does not have "
+"any basis. You can use a tag to remember up to what commit you last "
+"processed, in order to make it easy to later update the other repository "
+"with an incremental bundle:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-clone.txt:51
+#. type: delimited block -
+#: en/git-bundle.txt:113
+#, no-wrap
 msgid ""
-"When the repository to clone from is on a local machine, this flag bypasses "
-"the normal \"Git aware\" transport mechanism and clones the repository by "
-"making a copy of HEAD and everything under objects and refs directories.  "
-"The files under `.git/objects/` directory are hardlinked to save space when "
-"possible."
+"machineA$ cd R1\n"
+"machineA$ git bundle create file.bundle master\n"
+"machineA$ git tag -f lastR2bundle master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:58
+#: en/git-bundle.txt:118
 msgid ""
-"If the repository is specified as a local path (e.g., `/path/to/repo`), this "
-"is the default, and --local is essentially a no-op.  If the repository is "
-"specified as a URL, then this flag is ignored (and we never use the local "
-"optimizations).  Specifying `--no-local` will override the default when "
-"`/path/to/repo` is given, using the regular Git transport instead."
+"Then you transfer file.bundle to the target machine B. Because this bundle "
+"does not require any existing object to be extracted, you can create a new "
+"repository on machine B by cloning from it:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-clone.txt:59
+#. type: delimited block -
+#: en/git-bundle.txt:121
 #, no-wrap
-msgid "--no-hardlinks"
+msgid "machineB$ git clone -b master /home/me/tmp/file.bundle R2\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:64
+#: en/git-bundle.txt:126
 msgid ""
-"Force the cloning process from a repository on a local filesystem to copy "
-"the files under the `.git/objects` directory instead of using "
-"hardlinks. This may be desirable if you are trying to make a back-up of your "
-"repository."
+"This will define a remote called \"origin\" in the resulting repository that "
+"lets you fetch and pull from the bundle. The $GIT_DIR/config file in R2 will "
+"have an entry like this:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-clone.txt:65
+#. type: delimited block -
+#: en/git-bundle.txt:131
 #, no-wrap
-msgid "--shared"
+msgid ""
+"[remote \"origin\"]\n"
+"    url = /home/me/tmp/file.bundle\n"
+"    fetch = refs/heads/*:refs/remotes/origin/*\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:72
+#: en/git-bundle.txt:136
 msgid ""
-"When the repository to clone is on the local machine, instead of using hard "
-"links, automatically setup `.git/objects/info/alternates` to share the "
-"objects with the source repository.  The resulting repository starts out "
-"without any object of its own."
+"To update the resulting mine.git repository, you can fetch or pull after "
+"replacing the bundle stored at /home/me/tmp/file.bundle with incremental "
+"updates."
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:82
-#, no-wrap
+#: en/git-bundle.txt:139
 msgid ""
-"*NOTE*: this is a possibly dangerous operation; do *not* use\n"
-"it unless you understand what it does. If you clone your\n"
-"repository using this option and then delete branches (or use any\n"
-"other Git command that makes any existing commit unreferenced) in the\n"
-"source repository, some objects may become unreferenced (or dangling).\n"
-"These objects may be removed by normal Git operations (such as `git "
-"commit`)\n"
-"which automatically call `git gc --auto`. (See linkgit:git-gc[1].)\n"
-"If these objects are removed and were referenced by the cloned repository,\n"
-"then the cloned repository will become corrupt.\n"
+"After working some more in the original repository, you can create an "
+"incremental bundle to update the other repository:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-clone.txt:88
+#. type: delimited block -
+#: en/git-bundle.txt:144
+#, no-wrap
 msgid ""
-"Note that running `git repack` without the `-l` option in a repository "
-"cloned with `-s` will copy objects from the source repository into a pack in "
-"the cloned repository, removing the disk space savings of `clone -s`.  It is "
-"safe, however, to run `git gc`, which uses the `-l` option by default."
+"machineA$ cd R1\n"
+"machineA$ git bundle create file.bundle lastR2bundle..master\n"
+"machineA$ git tag -f lastR2bundle master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:92
+#: en/git-bundle.txt:148
 msgid ""
-"If you want to break the dependency of a repository cloned with `-s` on its "
-"source repository, you can simply run `git repack -a` to copy all objects "
-"from the source repository into a pack in the cloned repository."
+"You then transfer the bundle to the other machine to replace /home/me/tmp/"
+"file.bundle, and pull from it."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-clone.txt:93
+#. type: delimited block -
+#: en/git-bundle.txt:152
 #, no-wrap
-msgid "--reference[-if-able] <repository>"
+msgid ""
+"machineB$ cd R2\n"
+"machineB$ git pull\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:103
+#: en/git-bundle.txt:160
 msgid ""
-"If the reference repository is on the local machine, automatically setup "
-"`.git/objects/info/alternates` to obtain objects from the reference "
-"repository.  Using an already existing repository as an alternate will "
-"require fewer objects to be copied from the repository being cloned, "
-"reducing network and local storage costs.  When using the "
-"`--reference-if-able`, a non existing directory is skipped with a warning "
-"instead of aborting the clone."
+"If you know up to what commit the intended recipient repository should have "
+"the necessary objects, you can use that knowledge to specify the basis, "
+"giving a cut-off point to limit the revisions and objects that go in the "
+"resulting bundle. The previous example used the lastR2bundle tag for this "
+"purpose, but you can use any other options that you would give to the "
+"linkgit:git-log[1] command. Here are more examples:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:106
-#, no-wrap
-msgid ""
-"*NOTE*: see the NOTE for the `--shared` option, and also the\n"
-"`--dissociate` option.\n"
+#: en/git-bundle.txt:162
+msgid "You can use a tag that is present in both:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-clone.txt:107
+#. type: delimited block -
+#: en/git-bundle.txt:165
 #, no-wrap
-msgid "--dissociate"
+msgid "$ git bundle create mybundle v1.0.0..master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:117
-msgid ""
-"Borrow the objects from reference repositories specified with the "
-"`--reference` options only to reduce network transfer, and stop borrowing "
-"from them after a clone is made by making necessary local copies of borrowed "
-"objects.  This option can also be used when cloning locally from a "
-"repository that already borrows objects from another repository--the new "
-"repository will borrow objects from the same repository, and this option can "
-"be used to stop the borrowing."
+#: en/git-bundle.txt:168
+msgid "You can use a basis based on time:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-clone.txt:122
-msgid "Operate quietly.  Progress is not reported to the standard error stream."
+#. type: delimited block -
+#: en/git-bundle.txt:171
+#, no-wrap
+msgid "$ git bundle create mybundle --since=10.days master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:127
-msgid ""
-"Run verbosely. Does not affect the reporting of progress status to the "
-"standard error stream."
+#: en/git-bundle.txt:174
+msgid "You can use the number of commits:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-clone.txt:128 en/git-pack-objects.txt:136 en/git-push.txt:268 en/fetch-options.txt:170 en/merge-options.txt:112
+#. type: delimited block -
+#: en/git-bundle.txt:177
 #, no-wrap
-msgid "--progress"
+msgid "$ git bundle create mybundle -10 master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:133 en/git-pack-objects.txt:141 en/git-push.txt:273 en/fetch-options.txt:175
+#: en/git-bundle.txt:181
 msgid ""
-"Progress status is reported on the standard error stream by default when it "
-"is attached to a terminal, unless -q is specified. This flag forces progress "
-"status even if the standard error stream is not directed to a terminal."
+"You can run `git-bundle verify` to see if you can extract from a bundle that "
+"was created with a basis:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-bundle.txt:184
+#, no-wrap
+msgid "$ git bundle verify mybundle\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:137
-msgid "No checkout of HEAD is performed after the clone is complete."
+#: en/git-bundle.txt:188
+msgid ""
+"This will list what commits you must have in order to extract from the "
+"bundle and will error out if you do not have them."
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:149
+#: en/git-bundle.txt:192
 msgid ""
-"Make a 'bare' Git repository.  That is, instead of creating `<directory>` "
-"and placing the administrative files in `<directory>/.git`, make the "
-"`<directory>` itself the `$GIT_DIR`. This obviously implies the `-n` because "
-"there is nowhere to check out the working tree.  Also the branch heads at "
-"the remote are copied directly to corresponding local branch heads, without "
-"mapping them to `refs/remotes/origin/`.  When this option is used, neither "
-"remote-tracking branches nor the related configuration variables are "
-"created."
+"A bundle from a recipient repository's point of view is just like a regular "
+"repository which it fetches or pulls from. You can, for example, map "
+"references when fetching:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-clone.txt:150 en/git-push.txt:106
+#. type: delimited block -
+#: en/git-bundle.txt:195
 #, no-wrap
-msgid "--mirror"
+msgid "$ git fetch mybundle master:localRef\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:157
-msgid ""
-"Set up a mirror of the source repository.  This implies `--bare`.  Compared "
-"to `--bare`, `--mirror` not only maps local branches of the source to local "
-"branches of the target, it maps all refs (including remote-tracking "
-"branches, notes etc.) and sets up a refspec configuration such that all "
-"these refs are overwritten by a `git remote update` in the target "
-"repository."
+#: en/git-bundle.txt:198
+msgid "You can also see what references it offers:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-clone.txt:158
+#. type: delimited block -
+#: en/git-bundle.txt:201
 #, no-wrap
-msgid "--origin <name>"
+msgid "$ git ls-remote mybundle\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-clone.txt:159
+#. type: Title =
+#: en/git-cat-file.txt:2
 #, no-wrap
-msgid "-o <name>"
+msgid "git-cat-file(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:162
+#: en/git-cat-file.txt:7
 msgid ""
-"Instead of using the remote name `origin` to keep track of the upstream "
-"repository, use `<name>`."
+"git-cat-file - Provide content or type and size information for repository "
+"objects"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-clone.txt:163
+#. type: Plain text
+#: en/git-cat-file.txt:14
 #, no-wrap
-msgid "--branch <name>"
+msgid ""
+"'git cat-file' (-t [--allow-unknown-type]| -s [--allow-unknown-type]| -e | -p | <type> | --textconv | --filters ) [--path=<path>] <object>\n"
+"'git cat-file' (--batch | --batch-check) [ --textconv | --filters ] [--follow-symlinks]\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-clone.txt:164
-#, no-wrap
-msgid "-b <name>"
+#. type: Plain text
+#: en/git-cat-file.txt:21
+msgid ""
+"In its first form, the command provides the content or the type of an object "
+"in the repository. The type is required unless `-t` or `-p` is used to find "
+"the object type, or `-s` is used to find the object size, or `--textconv` or "
+"`--filters` is used (which imply type \"blob\")."
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:171
+#: en/git-cat-file.txt:28
 msgid ""
-"Instead of pointing the newly created HEAD to the branch pointed to by the "
-"cloned repository's HEAD, point to `<name>` branch instead. In a non-bare "
-"repository, this is the branch that will be checked out.  `--branch` can "
-"also take tags and detaches the HEAD at that commit in the resulting "
-"repository."
+"In the second form, a list of objects (separated by linefeeds) is provided "
+"on stdin, and the SHA-1, type, and size of each object is printed on stdout. "
+"The output format can be overridden using the optional `<format>` argument. "
+"If either `--textconv` or `--filters` was specified, the input is expected "
+"to list the object names followed by the path name, separated by a single "
+"whitespace, so that the appropriate drivers can be determined."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-clone.txt:172 en/fetch-options.txt:152
+#: en/git-cat-file.txt:31 en/git-fsck.txt:23 en/git-tag.txt:203 en/git.txt:303
 #, no-wrap
-msgid "--upload-pack <upload-pack>"
+msgid "<object>"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-clone.txt:173
-#, no-wrap
-msgid "-u <upload-pack>"
+#. type: Plain text
+#: en/git-cat-file.txt:35
+msgid ""
+"The name of the object to show.  For a more complete list of ways to spell "
+"object names, see the \"SPECIFYING REVISIONS\" section in linkgit:"
+"gitrevisions[7]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:177
-msgid ""
-"When given, and the repository to clone from is accessed via ssh, this "
-"specifies a non-default path for the command run on the other end."
+#: en/git-cat-file.txt:39
+msgid "Instead of the content, show the object type identified by <object>."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-clone.txt:178 en/git-init.txt:53 en/git-svn.txt:547
-#, no-wrap
-msgid "--template=<template_directory>"
+#. type: Plain text
+#: en/git-cat-file.txt:43
+msgid "Instead of the content, show the object size identified by <object>."
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:181
+#: en/git-cat-file.txt:48
 msgid ""
-"Specify the directory from which templates will be used; (See the \"TEMPLATE "
-"DIRECTORY\" section of linkgit:git-init[1].)"
+"Exit with zero status if <object> exists and is a valid object. If <object> "
+"is of an invalid format exit with non-zero and emits an error on stderr."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-clone.txt:182
-#, no-wrap
-msgid "--config <key>=<value>"
+#. type: Plain text
+#: en/git-cat-file.txt:51
+msgid "Pretty-print the contents of <object> based on its type."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-clone.txt:183
+#: en/git-cat-file.txt:52 en/git.txt:327
 #, no-wrap
-msgid "-c <key>=<value>"
+msgid "<type>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:192
+#: en/git-cat-file.txt:59
 msgid ""
-"Set a configuration variable in the newly-created repository; this takes "
-"effect immediately after the repository is initialized, but before the "
-"remote history is fetched or any files checked out.  The key is in the same "
-"format as expected by linkgit:git-config[1] (e.g., `core.eol=true`). If "
-"multiple values are given for the same key, each value will be written to "
-"the config file. This makes it safe, for example, to add additional fetch "
-"refspecs to the origin remote."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-clone.txt:193
-#, no-wrap
-msgid "--depth <depth>"
+"Typically this matches the real type of <object> but asking for a type that "
+"can trivially be dereferenced from the given <object> is also permitted.  An "
+"example is to ask for a \"tree\" with <object> being a commit object that "
+"contains it, or to ask for a \"blob\" with <object> being a tag object that "
+"points at it."
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:199
+#: en/git-cat-file.txt:65
 msgid ""
-"Create a 'shallow' clone with a history truncated to the specified number of "
-"commits. Implies `--single-branch` unless `--no-single-branch` is given to "
-"fetch the histories near the tips of all branches. If you want to clone "
-"submodules shallowly, also pass `--shallow-submodules`."
+"Show the content as transformed by a textconv filter. In this case, <object> "
+"has to be of the form <tree-ish>:<path>, or :<path> in order to apply the "
+"filter to the content recorded in the index at <path>."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-clone.txt:200 en/git-fetch-pack.txt:90 en/fetch-options.txt:22
+#: en/git-cat-file.txt:66
 #, no-wrap
-msgid "--shallow-since=<date>"
+msgid "--filters"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:202
-msgid "Create a shallow clone with a history after the specified time."
+#: en/git-cat-file.txt:71
+msgid ""
+"Show the content as converted by the filters configured in the current "
+"working tree for the given <path> (i.e. smudge filters, end-of-line "
+"conversion, etc). In this case, <object> has to be of the form <tree-ish>:"
+"<path>, or :<path>."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-clone.txt:203 en/git-fetch-pack.txt:94 en/fetch-options.txt:26
+#: en/git-cat-file.txt:72
 #, no-wrap
-msgid "--shallow-exclude=<revision>"
+msgid "--path=<path>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:207
+#: en/git-cat-file.txt:76
 msgid ""
-"Create a shallow clone with a history, excluding commits reachable from a "
-"specified remote branch or tag.  This option can be specified multiple "
-"times."
+"For use with --textconv or --filters, to allow specifying an object name and "
+"a path separately, e.g. when it is difficult to figure out the revision from "
+"which the blob came."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-clone.txt:208
+#: en/git-cat-file.txt:77 en/git-mktree.txt:32
 #, no-wrap
-msgid "--[no-]single-branch"
+msgid "--batch"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-cat-file.txt:78
+#, no-wrap
+msgid "--batch=<format>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:217
+#: en/git-cat-file.txt:84
 msgid ""
-"Clone only the history leading to the tip of a single branch, either "
-"specified by the `--branch` option or the primary branch remote's `HEAD` "
-"points at.  Further fetches into the resulting repository will only update "
-"the remote-tracking branch for the branch this option was used for the "
-"initial cloning.  If the HEAD at the remote did not point at any branch when "
-"`--single-branch` clone was made, no remote-tracking branch is created."
+"Print object information and contents for each object provided on stdin.  "
+"May not be combined with any other options or arguments except `--textconv` "
+"or `--filters`, in which case the input lines also need to specify the path, "
+"separated by whitespace.  See the section `BATCH OUTPUT` below for details."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-clone.txt:218 en/git-submodule.txt:400
+#: en/git-cat-file.txt:85
 #, no-wrap
-msgid "--recursive"
+msgid "--batch-check"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-clone.txt:219 en/git-grep.txt:92 en/git-ls-files.txt:142
+#: en/git-cat-file.txt:86
 #, no-wrap
-msgid "--recurse-submodules"
+msgid "--batch-check=<format>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:226
+#: en/git-cat-file.txt:92
 msgid ""
-"After the clone is created, initialize all submodules within, using their "
-"default settings. This is equivalent to running `git submodule update --init "
-"--recursive` immediately after the clone is finished. This option is ignored "
-"if the cloned repository does not have a worktree/checkout (i.e. if any of "
-"`--no-checkout`/`-n`, `--bare`, or `--mirror` is given)"
+"Print object information for each object provided on stdin.  May not be "
+"combined with any other options or arguments except `--textconv` or `--"
+"filters`, in which case the input lines also need to specify the path, "
+"separated by whitespace.  See the section `BATCH OUTPUT` below for details."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-clone.txt:227
+#: en/git-cat-file.txt:93
 #, no-wrap
-msgid "--[no-]shallow-submodules"
+msgid "--batch-all-objects"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:229
-msgid "All submodules which are cloned will be shallow with a depth of 1."
+#: en/git-cat-file.txt:99
+msgid ""
+"Instead of reading a list of objects on stdin, perform the requested batch "
+"operation on all objects in the repository and any alternate object stores "
+"(not just reachable objects).  Requires `--batch` or `--batch-check` be "
+"specified. Note that the objects are visited in order sorted by their hashes."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-clone.txt:230 en/git-init.txt:58
+#: en/git-cat-file.txt:100
 #, no-wrap
-msgid "--separate-git-dir=<git dir>"
+msgid "--buffer"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:236
+#: en/git-cat-file.txt:106
 msgid ""
-"Instead of placing the cloned repository where it is supposed to be, place "
-"the cloned repository at the specified directory, then make a "
-"filesystem-agnostic Git symbolic link to there.  The result is Git "
-"repository can be separated from working tree."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-clone.txt:237 en/git-submodule.txt:417
-#, no-wrap
-msgid "-j <n>"
+"Normally batch output is flushed after each object is output, so that a "
+"process can interactively read and write from `cat-file`. With this option, "
+"the output uses normal stdio buffering; this is much more efficient when "
+"invoking `--batch-check` on a large number of objects."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-clone.txt:238 en/git-submodule.txt:418
+#: en/git-cat-file.txt:107
 #, no-wrap
-msgid "--jobs <n>"
+msgid "--unordered"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:241
+#: en/git-cat-file.txt:116
 msgid ""
-"The number of submodules fetched at the same time.  Defaults to the "
-"`submodule.fetchJobs` option."
+"When `--batch-all-objects` is in use, visit objects in an order which may be "
+"more efficient for accessing the object contents than hash order. The exact "
+"details of the order are unspecified, but if you do not require a specific "
+"order, this should generally result in faster output, especially with `--"
+"batch`.  Note that `cat-file` will still show each object only once, even if "
+"it is stored multiple times in the repository."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-clone.txt:242 en/git-fetch-pack.txt:114 en/git-ls-remote.txt:63 en/git-push.txt:50 en/pull-fetch-param.txt:1
+#: en/git-cat-file.txt:117
 #, no-wrap
-msgid "<repository>"
+msgid "--allow-unknown-type"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:246
-msgid ""
-"The (possibly remote) repository to clone from.  See the <<URLS,URLS>> "
-"section below for more information on specifying repositories."
+#: en/git-cat-file.txt:119
+msgid "Allow -s or -t to query broken/corrupt objects of unknown type."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-clone.txt:247 en/git-cvsserver.txt:53 en/git-daemon.txt:198 en/git-receive-pack.txt:41 en/git-send-pack.txt:89 en/git-upload-archive.txt:57 en/git-upload-pack.txt:44
+#: en/git-cat-file.txt:120
 #, no-wrap
-msgid "<directory>"
+msgid "--follow-symlinks"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:253
+#: en/git-cat-file.txt:129
 msgid ""
-"The name of a new directory to clone into.  The \"humanish\" part of the "
-"source repository is used if no directory is explicitly given (`repo` for "
-"`/path/to/repo.git` and `foo` for `host.xz:foo/.git`).  Cloning into an "
-"existing directory is only allowed if the directory is empty."
+"With --batch or --batch-check, follow symlinks inside the repository when "
+"requesting objects with extended SHA-1 expressions of the form tree-ish:path-"
+"in-tree.  Instead of providing output about the link itself, provide output "
+"about the linked-to object.  If a symlink points outside the tree-ish (e.g. "
+"a link to /foo or a root-level link to ../foo), the portion of the link "
+"which is outside the tree will be printed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:261
-msgid "Clone from upstream:"
+#: en/git-cat-file.txt:133
+msgid ""
+"This option does not (currently) work correctly when an object in the index "
+"is specified (e.g. `:link` instead of `HEAD:link`) rather than one in the "
+"tree."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-clone.txt:266
-#, no-wrap
+#. type: Plain text
+#: en/git-cat-file.txt:136
 msgid ""
-"$ git clone git://git.kernel.org/pub/scm/.../linux.git my-linux\n"
-"$ cd my-linux\n"
-"$ make\n"
+"This option cannot (currently) be used unless `--batch` or `--batch-check` "
+"is used."
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:270
-msgid ""
-"Make a local clone that borrows from the current directory, without checking "
-"things out:"
+#: en/git-cat-file.txt:138
+msgid "For example, consider a git repository containing:"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-clone.txt:275
+#. type: Plain text
+#: en/git-cat-file.txt:145
 #, no-wrap
 msgid ""
-"$ git clone -l -s -n . ../copy\n"
-"$ cd ../copy\n"
-"$ git show-branch\n"
+"\tf: a file containing \"hello\\n\"\n"
+"\tlink: a symlink to f\n"
+"\tdir/link: a symlink to ../f\n"
+"\tplink: a symlink to ../f\n"
+"\talink: a symlink to /etc/passwd\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:279
-msgid "Clone from upstream while borrowing from an existing local directory:"
+#: en/git-cat-file.txt:148
+msgid ""
+"For a regular file `f`, `echo HEAD:f | git cat-file --batch` would print"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-clone.txt:285
+#. type: Plain text
+#: en/git-cat-file.txt:151
 #, no-wrap
-msgid ""
-"$ git clone --reference /git/linux.git \\\n"
-"\tgit://git.kernel.org/pub/scm/.../linux.git \\\n"
-"\tmy-linux\n"
-"$ cd my-linux\n"
+msgid "\tce013625030ba8dba906f756967f9e9ca394464a blob 6\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-clone.txt:289
-msgid "Create a bare repository to publish your changes to the public:"
+#: en/git-cat-file.txt:156
+msgid ""
+"And `echo HEAD:link | git cat-file --batch --follow-symlinks` would print "
+"the same thing, as would `HEAD:dir/link`, as they both point at `HEAD:f`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-clone.txt:292
-#, no-wrap
-msgid "$ git clone --bare -l /home/proj/.git /pub/scm/proj.git\n"
+#. type: Plain text
+#: en/git-cat-file.txt:159
+msgid ""
+"Without `--follow-symlinks`, these would print data about the symlink "
+"itself.  In the case of `HEAD:link`, you would see"
 msgstr ""
 
-#. type: Title =
-#: en/git-column.txt:2
+#. type: Plain text
+#: en/git-cat-file.txt:162
 #, no-wrap
-msgid "git-column(1)"
+msgid "\t4d1ae35ba2c8ec712fa2a379db44ad639ca277bd blob 1\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-column.txt:7
-msgid "git-column - Display data in columns"
+#: en/git-cat-file.txt:166
+msgid ""
+"Both `plink` and `alink` point outside the tree, so they would respectively "
+"print:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-column.txt:13
+#: en/git-cat-file.txt:170
 #, no-wrap
 msgid ""
-"'git column' [--command=<name>] [--[raw-]mode=<mode>] [--width=<width>]\n"
-"\t     [--indent=<string>] [--nl=<string>] [--padding=<n>]\n"
+"\tsymlink 4\n"
+"\t../f\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-column.txt:17
-msgid "This command formats its input into multiple columns."
+#: en/git-cat-file.txt:173
+#, no-wrap
+msgid ""
+"\tsymlink 11\n"
+"\t/etc/passwd\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-column.txt:20
+#. type: Title -
+#: en/git-cat-file.txt:177 en/git-check-attr.txt:48 en/git-check-ignore.txt:60
+#: en/git-check-mailmap.txt:32 en/git-cvsimport.txt:188 en/git-fetch.txt:190
+#: en/git-ls-files.txt:188 en/git-push.txt:409 en/git-show-branch.txt:134
+#: en/git-show-ref.txt:97 en/git-status.txt:152
+#: en/git-update-server-info.txt:32
 #, no-wrap
-msgid "--command=<name>"
+msgid "OUTPUT"
 msgstr ""
 
 #. type: Plain text
-#: en/git-column.txt:23
-msgid ""
-"Look up layout mode using configuration variable column.<name> and "
-"column.ui."
+#: en/git-cat-file.txt:179
+msgid "If `-t` is specified, one of the <type>."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-column.txt:24
-#, no-wrap
-msgid "--mode=<mode>"
+#. type: Plain text
+#: en/git-cat-file.txt:181
+msgid "If `-s` is specified, the size of the <object> in bytes."
 msgstr ""
 
 #. type: Plain text
-#: en/git-column.txt:27
-msgid "Specify layout mode. See configuration variable column.ui for option syntax."
+#: en/git-cat-file.txt:183
+msgid "If `-e` is specified, no output, unless the <object> is malformed."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-column.txt:28
-#, no-wrap
-msgid "--raw-mode=<n>"
+#. type: Plain text
+#: en/git-cat-file.txt:185
+msgid "If `-p` is specified, the contents of <object> are pretty-printed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-column.txt:31
+#: en/git-cat-file.txt:188
 msgid ""
-"Same as --mode but take mode encoded as a number. This is mainly used by "
-"other commands that have already parsed layout mode."
+"If <type> is specified, the raw (though uncompressed) contents of the "
+"<object> will be returned."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-column.txt:32
+#. type: Title -
+#: en/git-cat-file.txt:190
 #, no-wrap
-msgid "--width=<width>"
+msgid "BATCH OUTPUT"
 msgstr ""
 
 #. type: Plain text
-#: en/git-column.txt:35
+#: en/git-cat-file.txt:196
 msgid ""
-"Specify the terminal width. By default 'git column' will detect the terminal "
-"width, or fall back to 80 if it is unable to do so."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-column.txt:36
-#, no-wrap
-msgid "--indent=<string>"
+"If `--batch` or `--batch-check` is given, `cat-file` will read objects from "
+"stdin, one per line, and print information about them. By default, the whole "
+"line is considered as an object, as if it were fed to linkgit:git-rev-"
+"parse[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-column.txt:38
-msgid "String to be printed at the beginning of each line."
+#: en/git-cat-file.txt:201
+msgid ""
+"You can specify the information shown for each object by using a custom "
+"`<format>`. The `<format>` is copied literally to stdout for each object, "
+"with placeholders of the form `%(atom)` expanded, followed by a newline. The "
+"available atoms are:"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-column.txt:39
+#: en/git-cat-file.txt:202
 #, no-wrap
-msgid "--nl=<N>"
+msgid "`objectname`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-column.txt:42
-msgid "String to be printed at the end of each line, including newline character."
+#: en/git-cat-file.txt:204
+msgid "The 40-hex object name of the object."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-column.txt:43
+#: en/git-cat-file.txt:205
 #, no-wrap
-msgid "--padding=<N>"
+msgid "`objecttype`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-column.txt:45
-msgid "The number of spaces between columns. One space by default."
+#: en/git-cat-file.txt:207
+msgid "The type of the object (the same as `cat-file -t` reports)."
 msgstr ""
 
-#. type: Title =
-#: en/git-commit.txt:2
+#. type: Labeled list
+#: en/git-cat-file.txt:208
 #, no-wrap
-msgid "git-commit(1)"
+msgid "`objectsize`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:7
-msgid "git-commit - Record changes to the repository"
+#: en/git-cat-file.txt:211
+msgid "The size, in bytes, of the object (the same as `cat-file -s` reports)."
 msgstr ""
 
-#. type: Plain text
-#: en/git-commit.txt:17
+#. type: Labeled list
+#: en/git-cat-file.txt:212
 #, no-wrap
-msgid ""
-"'git commit' [-a | --interactive | --patch] [-s] [-v] [-u<mode>] [--amend]\n"
-"\t   [--dry-run] [(-c | -C | --fixup | --squash) <commit>]\n"
-"\t   [-F <file> | -m <msg>] [--reset-author] [--allow-empty]\n"
-"\t   [--allow-empty-message] [--no-verify] [-e] [--author=<author>]\n"
-"\t   [--date=<date>] [--cleanup=<mode>] [--[no-]status]\n"
-"\t   [-i | -o] [-S[<keyid>]] [--] [<file>...]\n"
+msgid "`objectsize:disk`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:22
+#: en/git-cat-file.txt:215
 msgid ""
-"Stores the current contents of the index in a new commit along with a log "
-"message from the user describing the changes."
-msgstr ""
-
-#. type: Plain text
-#: en/git-commit.txt:24
-msgid "The content to be added can be specified in several ways:"
+"The size, in bytes, that the object takes up on disk. See the note about on-"
+"disk sizes in the `CAVEATS` section below."
 msgstr ""
 
-#. type: Plain text
-#: en/git-commit.txt:28
-msgid ""
-"by using 'git add' to incrementally \"add\" changes to the index before "
-"using the 'commit' command (Note: even modified files must be \"added\");"
+#. type: Labeled list
+#: en/git-cat-file.txt:216
+#, no-wrap
+msgid "`deltabase`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:31
+#: en/git-cat-file.txt:220
 msgid ""
-"by using 'git rm' to remove files from the working tree and the index, again "
-"before using the 'commit' command;"
+"If the object is stored as a delta on-disk, this expands to the 40-hex sha1 "
+"of the delta base object. Otherwise, expands to the null sha1 (40 zeroes). "
+"See `CAVEATS` below."
 msgstr ""
 
-#. type: Plain text
-#: en/git-commit.txt:37
-msgid ""
-"by listing files as arguments to the 'commit' command (without --interactive "
-"or --patch switch), in which case the commit will ignore changes staged in "
-"the index, and instead record the current content of the listed files (which "
-"must already be known to Git);"
+#. type: Labeled list
+#: en/git-cat-file.txt:221
+#, no-wrap
+msgid "`rest`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:43
+#: en/git-cat-file.txt:227
 msgid ""
-"by using the -a switch with the 'commit' command to automatically \"add\" "
-"changes from all known files (i.e. all files that are already listed in the "
-"index) and to automatically \"rm\" files in the index that have been removed "
-"from the working tree, and then perform the actual commit;"
+"If this atom is used in the output string, input lines are split at the "
+"first whitespace boundary. All characters before that whitespace are "
+"considered to be the object name; characters after that first run of "
+"whitespace (i.e., the \"rest\" of the line) are output in place of the `"
+"%(rest)` atom."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:49
+#: en/git-cat-file.txt:230
 msgid ""
-"by using the --interactive or --patch switches with the 'commit' command to "
-"decide one by one which files or hunks should be part of the commit in "
-"addition to contents in the index, before finalizing the operation. See the "
-"``Interactive Mode'' section of linkgit:git-add[1] to learn how to operate "
-"these modes."
+"If no format is specified, the default format is `%(objectname)  "
+"%(objecttype) %(objectsize)`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:53
+#: en/git-cat-file.txt:234
 msgid ""
-"The `--dry-run` option can be used to obtain a summary of what is included "
-"by any of the above for the next commit by giving the same set of parameters "
-"(options and paths)."
+"If `--batch` is specified, the object information is followed by the object "
+"contents (consisting of `%(objectsize)` bytes), followed by a newline."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:56
-msgid ""
-"If you make a commit and then find a mistake immediately after that, you can "
-"recover from it with 'git reset'."
+#: en/git-cat-file.txt:236
+msgid "For example, `--batch` without a custom format would produce:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-commit.txt:65
+#. type: delimited block -
+#: en/git-cat-file.txt:240
+#, no-wrap
 msgid ""
-"Tell the command to automatically stage files that have been modified and "
-"deleted, but new files you have not told Git about are not affected."
+"<sha1> SP <type> SP <size> LF\n"
+"<contents> LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:71
-msgid ""
-"Use the interactive patch selection interface to chose which changes to "
-"commit. See linkgit:git-add[1] for details."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-commit.txt:72
-#, no-wrap
-msgid "-C <commit>"
+#: en/git-cat-file.txt:243
+msgid "Whereas `--batch-check='%(objectname) %(objecttype)'` would produce:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-commit.txt:73
+#. type: delimited block -
+#: en/git-cat-file.txt:246
 #, no-wrap
-msgid "--reuse-message=<commit>"
+msgid "<sha1> SP <type> LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:77
+#: en/git-cat-file.txt:250
 msgid ""
-"Take an existing commit object, and reuse the log message and the authorship "
-"information (including the timestamp)  when creating the commit."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-commit.txt:78
-#, no-wrap
-msgid "-c <commit>"
+"If a name is specified on stdin that cannot be resolved to an object in the "
+"repository, then `cat-file` will ignore any custom format and print:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-commit.txt:79
+#. type: delimited block -
+#: en/git-cat-file.txt:253 en/git-cat-file.txt:279
 #, no-wrap
-msgid "--reedit-message=<commit>"
+msgid "<object> SP missing LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:82
+#: en/git-cat-file.txt:256
 msgid ""
-"Like '-C', but with `-c` the editor is invoked, so that the user can further "
-"edit the commit message."
+"If a name is specified that might refer to more than one object (an "
+"ambiguous short sha), then `cat-file` will ignore any custom format and "
+"print:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-commit.txt:83
+#. type: delimited block -
+#: en/git-cat-file.txt:259
 #, no-wrap
-msgid "--fixup=<commit>"
+msgid "<object> SP ambiguous LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:88
+#: en/git-cat-file.txt:264
 msgid ""
-"Construct a commit message for use with `rebase --autosquash`.  The commit "
-"message will be the subject line from the specified commit with a prefix of "
-"\"fixup! \".  See linkgit:git-rebase[1] for details."
+"If --follow-symlinks is used, and a symlink in the repository points outside "
+"the repository, then `cat-file` will ignore any custom format and print:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-commit.txt:89
+#. type: delimited block -
+#: en/git-cat-file.txt:268
 #, no-wrap
-msgid "--squash=<commit>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-commit.txt:95
 msgid ""
-"Construct a commit message for use with `rebase --autosquash`.  The commit "
-"message subject line is taken from the specified commit with a prefix of "
-"\"squash! \".  Can be used with additional commit message options "
-"(`-m`/`-c`/`-C`/`-F`). See linkgit:git-rebase[1] for details."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-commit.txt:96
-#, no-wrap
-msgid "--reset-author"
+"symlink SP <size> LF\n"
+"<symlink> LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:101
+#: en/git-cat-file.txt:273
 msgid ""
-"When used with -C/-c/--amend options, or when committing after a a "
-"conflicting cherry-pick, declare that the authorship of the resulting commit "
-"now belongs to the committer. This also renews the author timestamp."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-commit.txt:102 en/git-rev-parse.txt:139 en/git-status.txt:28 en/git-symbolic-ref.txt:45
-#, no-wrap
-msgid "--short"
+"The symlink will either be absolute (beginning with a /), or relative to the "
+"tree root.  For instance, if dir/link points to ../../foo, then <symlink> "
+"will be ../foo.  <size> is the size of the symlink in bytes."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:105
+#: en/git-cat-file.txt:276
 msgid ""
-"When doing a dry-run, give the output in the short-format. See "
-"linkgit:git-status[1] for details. Implies `--dry-run`."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-commit.txt:106 en/git-status.txt:32 en/git-submodule.txt:280
-#, no-wrap
-msgid "--branch"
+"If --follow-symlinks is used, the following error messages will be displayed:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:108 en/git-status.txt:34
-msgid "Show the branch and tracking info even in short-format."
+#: en/git-cat-file.txt:281
+msgid "is printed when the initial symlink requested does not exist."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-commit.txt:109 en/git-push.txt:121 en/git-worktree.txt:115 en/blame-options.txt:40
+#. type: delimited block -
+#: en/git-cat-file.txt:285
 #, no-wrap
-msgid "--porcelain"
+msgid ""
+"dangling SP <size> LF\n"
+"<object> LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:113
+#: en/git-cat-file.txt:288
 msgid ""
-"When doing a dry-run, give the output in a porcelain-ready format. See "
-"linkgit:git-status[1] for details. Implies `--dry-run`."
+"is printed when the initial symlink exists, but something that it "
+"(transitive-of) points to does not."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-commit.txt:114 en/git-describe.txt:74 en/git-ls-tree.txt:52 en/git-status.txt:44
+#. type: delimited block -
+#: en/git-cat-file.txt:292
 #, no-wrap
-msgid "--long"
+msgid ""
+"loop SP <size> LF\n"
+"<object> LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:117
+#: en/git-cat-file.txt:295
 msgid ""
-"When doing a dry-run, give the output in a the long-format.  Implies "
-"`--dry-run`."
+"is printed for symlink loops (or any symlinks that require more than 40 link "
+"resolutions to resolve)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-commit.txt:119 en/git-config.txt:184 en/git-grep.txt:197
+#. type: delimited block -
+#: en/git-cat-file.txt:299
 #, no-wrap
-msgid "--null"
+msgid ""
+"notdir SP <size> LF\n"
+"<object> LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:126
+#: en/git-cat-file.txt:302
 msgid ""
-"When showing `short` or `porcelain` status output, print the filename "
-"verbatim and terminate the entries with NUL, instead of LF.  If no format is "
-"given, implies the `--porcelain` output format.  Without the `-z` option, "
-"filenames with \"unusual\" characters are quoted as explained for the "
-"configuration variable `core.quotePath` (see linkgit:git-config[1])."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-commit.txt:127 en/git-commit-tree.txt:53 en/git-fmt-merge-msg.txt:47 en/git-notes.txt:140 en/git-tag.txt:138
-#, no-wrap
-msgid "-F <file>"
+"is printed when, during symlink resolution, a file is used as a directory "
+"name."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-commit.txt:128 en/git-notes.txt:141 en/git-tag.txt:139
+#. type: Title -
+#: en/git-cat-file.txt:304 en/git-for-each-ref.txt:370 en/git-svn.txt:998
 #, no-wrap
-msgid "--file=<file>"
+msgid "CAVEATS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:131
+#: en/git-cat-file.txt:312 en/git-for-each-ref.txt:378
 msgid ""
-"Take the commit message from the given file.  Use '-' to read the message "
-"from the standard input."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-commit.txt:132
-#, no-wrap
-msgid "--author=<author>"
+"Note that the sizes of objects on disk are reported accurately, but care "
+"should be taken in drawing conclusions about which refs or objects are "
+"responsible for disk usage. The size of a packed non-delta object may be "
+"much larger than the size of objects which delta against it, but the choice "
+"of which object is the base and which is the delta is arbitrary and is "
+"subject to change during a repack."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:138
+#: en/git-cat-file.txt:316 en/git-for-each-ref.txt:382
 msgid ""
-"Override the commit author. Specify an explicit author using the standard `A "
-"U Thor <author@example.com>` format. Otherwise <author> is assumed to be a "
-"pattern and is used to search for an existing commit by that author "
-"(i.e. rev-list --all -i --author=<author>); the commit author is then copied "
-"from the first such commit found."
+"Note also that multiple copies of an object may be present in the object "
+"database; in this case, it is undefined which copy's size or delta base will "
+"be reported."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-commit.txt:139
+#. type: Title =
+#: en/git-check-attr.txt:2
 #, no-wrap
-msgid "--date=<date>"
+msgid "git-check-attr(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:141
-msgid "Override the author date used in the commit."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-commit.txt:142 en/git-merge.txt:78 en/git-notes.txt:132 en/git-tag.txt:130
-#, no-wrap
-msgid "-m <msg>"
+#: en/git-check-attr.txt:7
+msgid "git-check-attr - Display gitattributes information"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-commit.txt:143 en/git-notes.txt:133 en/git-tag.txt:131
+#. type: Plain text
+#: en/git-check-attr.txt:14
 #, no-wrap
-msgid "--message=<msg>"
+msgid ""
+"'git check-attr' [-a | --all | <attr>...] [--] <pathname>...\n"
+"'git check-attr' --stdin [-z] [-a | --all | <attr>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:147
+#: en/git-check-attr.txt:19
 msgid ""
-"Use the given <msg> as the commit message.  If multiple `-m` options are "
-"given, their values are concatenated as separate paragraphs."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-commit.txt:148
-#, no-wrap
-msgid "-t <file>"
+"For every pathname, this command will list if each attribute is "
+"'unspecified', 'set', or 'unset' as a gitattribute on that pathname."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-commit.txt:149
+#: en/git-check-attr.txt:22
 #, no-wrap
-msgid "--template=<file>"
+msgid "-a, --all"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:158
+#: en/git-check-attr.txt:26
 msgid ""
-"When editing the commit message, start the editor with the contents in the "
-"given file.  The `commit.template` configuration variable is often used to "
-"give this option implicitly to the command.  This mechanism can be used by "
-"projects that want to guide participants with some hints on what to write in "
-"the message in what order.  If the user exits the editor without editing the "
-"message, the commit is aborted.  This has no effect when a message is given "
-"by other means, e.g. with the `-m` or `-F` options."
+"List all attributes that are associated with the specified paths.  If this "
+"option is used, then 'unspecified' attributes will not be included in the "
+"output."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:167
-msgid ""
-"Add Signed-off-by line by the committer at the end of the commit log "
-"message.  The meaning of a signoff depends on the project, but it typically "
-"certifies that committer has the rights to submit this work under the same "
-"license and agrees to a Developer Certificate of Origin (see "
-"http://developercertificate.org/ for more information)."
+#: en/git-check-attr.txt:29
+msgid "Consider `.gitattributes` in the index only, ignoring the working tree."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-commit.txt:169 en/git-rebase.txt:322
+#: en/git-check-attr.txt:30 en/git-check-ignore.txt:37
+#: en/git-check-mailmap.txt:26 en/git-checkout-index.txt:62
+#: en/git-diff-tree.txt:46 en/git-fetch-pack.txt:38 en/git-hash-object.txt:34
+#: en/git-http-fetch.txt:37 en/git-index-pack.txt:38 en/git-name-rev.txt:45
+#: en/git-notes.txt:173 en/git-send-pack.txt:41 en/git-svn.txt:595
+#: en/git-update-index.txt:148 en/rev-list-options.txt:205
 #, no-wrap
-msgid "--no-verify"
+msgid "--stdin"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:172
+#: en/git-check-attr.txt:33 en/git-check-ignore.txt:40
 msgid ""
-"This option bypasses the pre-commit and commit-msg hooks.  See also "
-"linkgit:githooks[5]."
+"Read pathnames from the standard input, one per line, instead of from the "
+"command-line."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:178
+#: en/git-check-attr.txt:38
 msgid ""
-"Usually recording a commit that has the exact same tree as its sole parent "
-"commit is a mistake, and the command prevents you from making such a "
-"commit.  This option bypasses the safety, and is primarily for use by "
-"foreign SCM interface scripts."
+"The output format is modified to be machine-parseable.  If `--stdin` is also "
+"given, input paths are separated with a NUL character instead of a linefeed "
+"character."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:184
+#: en/git-check-attr.txt:42
 msgid ""
-"Like --allow-empty this command is primarily for use by foreign SCM "
-"interface scripts. It allows you to create a commit with an empty commit "
-"message without using plumbing commands like linkgit:git-commit-tree[1]."
+"Interpret all preceding arguments as attributes and all following arguments "
+"as path names."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-commit.txt:185 en/git-tag.txt:145
-#, no-wrap
-msgid "--cleanup=<mode>"
+#. type: Plain text
+#: en/git-check-attr.txt:46
+msgid ""
+"If none of `--stdin`, `--all`, or `--` is used, the first argument will be "
+"treated as an attribute and the rest of the arguments as pathnames."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:189
+#: en/git-check-attr.txt:52
 msgid ""
-"This option determines how the supplied commit message should be cleaned up "
-"before committing.  The '<mode>' can be `strip`, `whitespace`, `verbatim`, "
-"`scissors` or `default`."
+"The output is of the form: <path> COLON SP <attribute> COLON SP <info> LF"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-commit.txt:191
-#, no-wrap
-msgid "strip"
+#. type: Plain text
+#: en/git-check-attr.txt:55
+msgid ""
+"unless `-z` is in effect, in which case NUL is used as delimiter: <path> NUL "
+"<attribute> NUL <info> NUL"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:194
+#: en/git-check-attr.txt:59
 msgid ""
-"Strip leading and trailing empty lines, trailing whitespace, commentary and "
-"collapse consecutive empty lines."
+"<path> is the path of a file being queried, <attribute> is an attribute "
+"being queried and <info> can be either:"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-commit.txt:194
+#: en/git-check-attr.txt:60
 #, no-wrap
-msgid "whitespace"
+msgid "'unspecified'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:196
-msgid "Same as `strip` except #commentary is not removed."
+#: en/git-check-attr.txt:61
+msgid "when the attribute is not defined for the path."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-commit.txt:196
+#: en/git-check-attr.txt:61
 #, no-wrap
-msgid "verbatim"
+msgid "'unset'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:198
-msgid "Do not change the message at all."
+#: en/git-check-attr.txt:62
+msgid "when the attribute is defined as false."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-commit.txt:198
+#: en/git-check-attr.txt:62
 #, no-wrap
-msgid "scissors"
+msgid "'set'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:204
-msgid ""
-"Same as `whitespace`, except that everything from (and including) the line "
-"\"`# ------------------------ >8 ------------------------`\" is truncated if "
-"the message is to be edited. \"`#`\" can be customized with "
-"core.commentChar."
+#: en/git-check-attr.txt:63
+msgid "when the attribute is defined as true."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-commit.txt:204
+#: en/git-check-attr.txt:63
 #, no-wrap
-msgid "default"
+msgid "<value>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:207
-msgid "Same as `strip` if the message is to be edited.  Otherwise `whitespace`."
+#: en/git-check-attr.txt:64
+msgid "when a value has been assigned to the attribute."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:211
+#: en/git-check-attr.txt:69 en/git-check-ignore.txt:99
 msgid ""
-"The default can be changed by the `commit.cleanup` configuration variable "
-"(see linkgit:git-config[1])."
+"Buffering happens as documented under the `GIT_FLUSH` option in linkgit:"
+"git[1].  The caller is responsible for avoiding deadlocks caused by "
+"overfilling an input buffer or reading from an empty output buffer."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:218
-msgid ""
-"The message taken from file with `-F`, command line with `-m`, and from "
-"commit object with `-C` are usually used as the commit log message "
-"unmodified. This option lets you further edit the message taken from these "
-"sources."
+#: en/git-check-attr.txt:74
+msgid "In the examples, the following '.gitattributes' file is used:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-commit.txt:219 en/git-revert.txt:65 en/merge-options.txt:12
+#. type: delimited block -
+#: en/git-check-attr.txt:78
 #, no-wrap
-msgid "--no-edit"
+msgid ""
+"*.java diff=java -crlf myAttr\n"
+"NoMyAttr.java !myAttr\n"
+"README caveat=unspecified\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:223
-msgid ""
-"Use the selected commit message without launching an editor.  For example, "
-"`git commit --amend --no-edit` amends a commit without changing its commit "
-"message."
+#: en/git-check-attr.txt:81
+msgid "Listing a single attribute:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-commit.txt:224
+#. type: delimited block -
+#: en/git-check-attr.txt:84
 #, no-wrap
-msgid "--amend"
-msgstr ""
-
-#. type: Plain text
-#: en/git-commit.txt:234
 msgid ""
-"Replace the tip of the current branch by creating a new commit. The recorded "
-"tree is prepared as usual (including the effect of the `-i` and `-o` options "
-"and explicit pathspec), and the message from the original commit is used as "
-"the starting point, instead of an empty message, when no other message is "
-"specified from the command line via options such as `-m`, `-F`, `-c`, etc.  "
-"The new commit has the same parents and author as the current one (the "
-"`--reset-author` option can countermand this)."
+"$ git check-attr diff org/example/MyClass.java\n"
+"org/example/MyClass.java: diff: java\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:237
-msgid "It is a rough equivalent for:"
+#: en/git-check-attr.txt:87
+msgid "Listing multiple attributes for a file:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-commit.txt:241
+#: en/git-check-attr.txt:92
 #, no-wrap
 msgid ""
-"\t$ git reset --soft HEAD^\n"
-"\t$ ... do something else to come up with the right tree ...\n"
-"\t$ git commit -c ORIG_HEAD\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-commit.txt:244
-msgid "but can be used to amend a merge commit."
+"$ git check-attr crlf diff myAttr -- org/example/MyClass.java\n"
+"org/example/MyClass.java: crlf: unset\n"
+"org/example/MyClass.java: diff: java\n"
+"org/example/MyClass.java: myAttr: set\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:249
-msgid ""
-"You should understand the implications of rewriting history if you amend a "
-"commit that has already been published.  (See the \"RECOVERING FROM UPSTREAM "
-"REBASE\" section in linkgit:git-rebase[1].)"
+#: en/git-check-attr.txt:95
+msgid "Listing all attributes for a file:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-commit.txt:250
+#. type: delimited block -
+#: en/git-check-attr.txt:99
 #, no-wrap
-msgid "--no-post-rewrite"
+msgid ""
+"$ git check-attr --all -- org/example/MyClass.java\n"
+"org/example/MyClass.java: diff: java\n"
+"org/example/MyClass.java: myAttr: set\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:252
-msgid "Bypass the post-rewrite hook."
+#: en/git-check-attr.txt:102
+msgid "Listing an attribute for multiple files:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-commit.txt:254
+#. type: delimited block -
+#: en/git-check-attr.txt:106
 #, no-wrap
-msgid "--include"
+msgid ""
+"$ git check-attr myAttr -- org/example/MyClass.java org/example/NoMyAttr.java\n"
+"org/example/MyClass.java: myAttr: set\n"
+"org/example/NoMyAttr.java: myAttr: unspecified\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:259
-msgid ""
-"Before making a commit out of staged contents so far, stage the contents of "
-"paths given on the command line as well.  This is usually not what you want "
-"unless you are concluding a conflicted merge."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-commit.txt:261
-#, no-wrap
-msgid "--only"
-msgstr ""
-
-#. type: Plain text
-#: en/git-commit.txt:273
-msgid ""
-"Make a commit by taking the updated working tree contents of the paths "
-"specified on the command line, disregarding any contents that have been "
-"staged for other paths. This is the default mode of operation of 'git "
-"commit' if any paths are given on the command line, in which case this "
-"option can be omitted.  If this option is specified together with `--amend`, "
-"then no paths need to be specified, which can be used to amend the last "
-"commit without committing changes that have already been staged. If used "
-"together with `--allow-empty` paths are also not required, and an empty "
-"commit will be created."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-commit.txt:274 en/git-status.txt:55
-#, no-wrap
-msgid "-u[<mode>]"
+#: en/git-check-attr.txt:109
+msgid "Not all values are equally unambiguous:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-commit.txt:275 en/git-status.txt:56
+#. type: delimited block -
+#: en/git-check-attr.txt:112
 #, no-wrap
-msgid "--untracked-files[=<mode>]"
-msgstr ""
-
-#. type: Plain text
-#: en/git-commit.txt:277 en/git-status.txt:58
-msgid "Show untracked files."
-msgstr ""
-
-#. type: Plain text
-#: en/git-commit.txt:281
 msgid ""
-"The mode parameter is optional (defaults to 'all'), and is used to specify "
-"the handling of untracked files; when -u is not used, the default is "
-"'normal', i.e. show untracked files and directories."
+"$ git check-attr caveat README\n"
+"README: caveat: unspecified\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:283 en/git-status.txt:64
-msgid "The possible options are:"
+#: en/git-check-attr.txt:117
+msgid "linkgit:gitattributes[5]."
 msgstr ""
 
-#. type: Plain text
-#: en/git-commit.txt:285
+#. type: Title =
+#: en/git-check-ignore.txt:2
 #, no-wrap
-msgid "'no'     - Show no untracked files\n"
+msgid "git-check-ignore(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:286
-#, no-wrap
-msgid "'normal' - Shows untracked files and directories\n"
+#: en/git-check-ignore.txt:7
+msgid "git-check-ignore - Debug gitignore / exclude files"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:287 en/git-status.txt:68
+#: en/git-check-ignore.txt:14
 #, no-wrap
-msgid "'all'    - Also shows individual files in untracked directories.\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-commit.txt:290 en/git-status.txt:81
 msgid ""
-"The default can be changed using the status.showUntrackedFiles configuration "
-"variable documented in linkgit:git-config[1]."
+"'git check-ignore' [<options>] <pathname>...\n"
+"'git check-ignore' [<options>] --stdin\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:301
+#: en/git-check-ignore.txt:22
 msgid ""
-"Show unified diff between the HEAD commit and what would be committed at the "
-"bottom of the commit message template to help the user describe the commit "
-"by reminding what changes the commit has.  Note that this diff output "
-"doesn't have its lines prefixed with '#'. This diff will not be a part of "
-"the commit message. See the `commit.verbose` configuration variable in "
-"linkgit:git-config[1]."
+"For each pathname given via the command-line or from a file via `--stdin`, "
+"check whether the file is excluded by .gitignore (or other input files to "
+"the exclude mechanism) and output the path if it is excluded."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:305
+#: en/git-check-ignore.txt:25
 msgid ""
-"If specified twice, show in addition the unified diff between what would be "
-"committed and the worktree files, i.e. the unstaged changes to tracked "
-"files."
+"By default, tracked files are not shown at all since they are not subject to "
+"exclude rules; but see `--no-index'."
 msgstr ""
 
-#. type: Plain text
-#: en/git-commit.txt:309
-msgid "Suppress commit summary message."
+#. type: Labeled list
+#: en/git-check-ignore.txt:28
+#, no-wrap
+msgid "-q, --quiet"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:314
+#: en/git-check-ignore.txt:31
 msgid ""
-"Do not create a commit, but show a list of paths that are to be committed, "
-"paths with local changes that will be left uncommitted and paths that are "
-"untracked."
+"Don't output anything, just set exit status.  This is only valid with a "
+"single pathname."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-commit.txt:315
+#: en/git-check-ignore.txt:32
 #, no-wrap
-msgid "--status"
+msgid "-v, --verbose"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:320
+#: en/git-check-ignore.txt:36
 msgid ""
-"Include the output of linkgit:git-status[1] in the commit message template "
-"when using an editor to prepare the commit message.  Defaults to on, but can "
-"be used to override configuration variable commit.status."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-commit.txt:321
-#, no-wrap
-msgid "--no-status"
+"Also output details about the matching pattern (if any)  for each given "
+"pathname. For precedence rules within and between exclude sources, see "
+"linkgit:gitignore[5]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:325
+#: en/git-check-ignore.txt:45
 msgid ""
-"Do not include the output of linkgit:git-status[1] in the commit message "
-"template when using an editor to prepare the default commit message."
+"The output format is modified to be machine-parseable (see below).  If `--"
+"stdin` is also given, input paths are separated with a NUL character instead "
+"of a linefeed character."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-commit.txt:332 en/git-commit-tree.txt:63
+#: en/git-check-ignore.txt:46
 #, no-wrap
-msgid "--no-gpg-sign"
+msgid "-n, --non-matching"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:335
+#: en/git-check-ignore.txt:51
 msgid ""
-"Countermand `commit.gpgSign` configuration variable that is set to force "
-"each and every commit to be signed."
+"Show given paths which don't match any pattern.\t This only makes sense when "
+"`--verbose` is enabled, otherwise it would not be possible to distinguish "
+"between paths which match a pattern and those which don't."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-commit.txt:339 en/git-rm.txt:29
+#: en/git-check-ignore.txt:52 en/git-grep.txt:79
 #, no-wrap
-msgid "<file>..."
+msgid "--no-index"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:345
+#: en/git-check-ignore.txt:58
 msgid ""
-"When files are given on the command line, the command commits the contents "
-"of the named files, without recording the changes already staged.  The "
-"contents of these files are also staged for the next commit on top of what "
-"have been staged before."
+"Don't look in the index when undertaking the checks. This can be used to "
+"debug why a path became tracked by e.g. `git add .` and was not ignored by "
+"the rules as expected by the user or when developing patterns including "
+"negation to match a path previously added with `git add -f`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:362
-msgid ""
-"When recording your own work, the contents of modified files in your working "
-"tree are temporarily stored to a staging area called the \"index\" with 'git "
-"add'.  A file can be reverted back, only in the index but not in the working "
-"tree, to that of the last commit with `git reset HEAD -- <file>`, which "
-"effectively reverts 'git add' and prevents the changes to this file from "
-"participating in the next commit.  After building the state to be committed "
-"incrementally with these commands, `git commit` (without any pathname "
-"parameter) is used to record what has been staged so far.  This is the most "
-"basic form of the command.  An example:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-commit.txt:368
-#, no-wrap
+#: en/git-check-ignore.txt:66
 msgid ""
-"$ edit hello.c\n"
-"$ git rm goodbye.c\n"
-"$ git add hello.c\n"
-"$ git commit\n"
+"By default, any of the given pathnames which match an ignore pattern will be "
+"output, one per line.  If no pattern matches a given path, nothing will be "
+"output for that path; this means that path will not be ignored."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:376
+#: en/git-check-ignore.txt:68
 msgid ""
-"Instead of staging files after each individual change, you can tell `git "
-"commit` to notice the changes to the files whose contents are tracked in "
-"your working tree and do corresponding `git add` and `git rm` for you.  That "
-"is, this example does the same as the earlier example if there is no other "
-"change in your working tree:"
+"If `--verbose` is specified, the output is a series of lines of the form:"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-commit.txt:381
-#, no-wrap
-msgid ""
-"$ edit hello.c\n"
-"$ rm goodbye.c\n"
-"$ git commit -a\n"
+#. type: Plain text
+#: en/git-check-ignore.txt:70
+msgid "<source> <COLON> <linenum> <COLON> <pattern> <HT> <pathname>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:386
+#: en/git-check-ignore.txt:78
 msgid ""
-"The command `git commit -a` first looks at your working tree, notices that "
-"you have modified hello.c and removed goodbye.c, and performs necessary `git "
-"add` and `git rm` for you."
+"<pathname> is the path of a file being queried, <pattern> is the matching "
+"pattern, <source> is the pattern's source file, and <linenum> is the line "
+"number of the pattern within that source.  If the pattern contained a `!` "
+"prefix or `/` suffix, it will be preserved in the output.  <source> will be "
+"an absolute path when referring to the file configured by `core."
+"excludesFile`, or relative to the repository root when referring to `.git/"
+"info/exclude` or a per-directory exclude file."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:391
+#: en/git-check-ignore.txt:82
 msgid ""
-"After staging changes to many files, you can alter the order the changes are "
-"recorded in, by giving pathnames to `git commit`.  When pathnames are given, "
-"the command makes a commit that only records the changes made to the named "
-"paths:"
+"If `-z` is specified, the pathnames in the output are delimited by the null "
+"character; if `--verbose` is also specified then null characters are also "
+"used instead of colons and hard tabs:"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-commit.txt:397
-#, no-wrap
-msgid ""
-"$ edit hello.c hello.h\n"
-"$ git add hello.c hello.h\n"
-"$ edit Makefile\n"
-"$ git commit Makefile\n"
+#. type: Plain text
+#: en/git-check-ignore.txt:84
+msgid "<source> <NULL> <linenum> <NULL> <pattern> <NULL> <pathname> <NULL>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:404
+#: en/git-check-ignore.txt:94
 msgid ""
-"This makes a commit that records the modification to `Makefile`.  The "
-"changes staged for `hello.c` and `hello.h` are not included in the resulting "
-"commit.  However, their changes are not lost -- they are still staged and "
-"merely held back.  After the above sequence, if you do:"
+"If `-n` or `--non-matching` are specified, non-matching pathnames will also "
+"be output, in which case all fields in each output record except for "
+"<pathname> will be empty.  This can be useful when running non-"
+"interactively, so that files can be incrementally streamed to STDIN of a "
+"long-running check-ignore process, and for each of these files, STDOUT will "
+"indicate whether that file matched a pattern or not.  (Without this option, "
+"it would be impossible to tell whether the absence of output for a given "
+"file meant that it didn't match any pattern, or that the output hadn't been "
+"generated yet.)"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-commit.txt:407 en/git-commit.txt:433
+#. type: Title -
+#: en/git-check-ignore.txt:101 en/git-filter-branch.txt:226
 #, no-wrap
-msgid "$ git commit\n"
+msgid "EXIT STATUS"
 msgstr ""
 
-#. type: Plain text
-#: en/git-commit.txt:411
-msgid ""
-"this second commit would record the changes to `hello.c` and `hello.h` as "
-"expected."
+#. type: Labeled list
+#: en/git-check-ignore.txt:103
+#, no-wrap
+msgid "0"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:419
-msgid ""
-"After a merge (initiated by 'git merge' or 'git pull') stops because of "
-"conflicts, cleanly merged paths are already staged to be committed for you, "
-"and paths that conflicted are left in unmerged state.  You would have to "
-"first check which paths are conflicting with 'git status' and after fixing "
-"them manually in your working tree, you would stage the result as usual with "
-"'git add':"
+#: en/git-check-ignore.txt:105
+msgid "One or more of the provided paths is ignored."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-commit.txt:425
+#. type: Labeled list
+#: en/git-check-ignore.txt:106
 #, no-wrap
-msgid ""
-"$ git status | grep unmerged\n"
-"unmerged: hello.c\n"
-"$ edit hello.c\n"
-"$ git add hello.c\n"
+msgid "1"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:430
-msgid ""
-"After resolving conflicts and staging the result, `git ls-files -u` would "
-"stop mentioning the conflicted path.  When you are done, run `git commit` to "
-"finally record the merge:"
+#: en/git-check-ignore.txt:108
+msgid "None of the provided paths are ignored."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-check-ignore.txt:109
+#, no-wrap
+msgid "128"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:441
-msgid ""
-"As with the case to record your own changes, you can use `-a` option to save "
-"typing.  One difference is that during a merge resolution, you cannot use "
-"`git commit` with pathnames to alter the order the changes are committed, "
-"because the merge should be recorded as a single commit.  In fact, the "
-"command refuses to run when given pathnames (but see `-i` option)."
+#: en/git-check-ignore.txt:111
+msgid "A fatal error was encountered."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:453
-msgid ""
-"Though not required, it's a good idea to begin the commit message with a "
-"single short (less than 50 character) line summarizing the change, followed "
-"by a blank line and then a more thorough description.  The text up to the "
-"first blank line in a commit message is treated as the commit title, and "
-"that title is used throughout Git.  For example, linkgit:git-format-patch[1] "
-"turns a commit into email, and it uses the title on the Subject line and the "
-"rest of the commit in the body."
+#: en/git-check-ignore.txt:117
+msgid "linkgit:gitignore[5] linkgit:git-config[1] linkgit:git-ls-files[1]"
 msgstr ""
 
-#. type: Title -
-#: en/git-commit.txt:457
+#. type: Title =
+#: en/git-check-mailmap.txt:2
 #, no-wrap
-msgid "ENVIRONMENT AND CONFIGURATION VARIABLES"
+msgid "git-check-mailmap(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:462
+#: en/git-check-mailmap.txt:7
 msgid ""
-"The editor used to edit the commit log message will be chosen from the "
-"`GIT_EDITOR` environment variable, the core.editor configuration variable, "
-"the `VISUAL` environment variable, or the `EDITOR` environment variable (in "
-"that order).  See linkgit:git-var[1] for details."
+"git-check-mailmap - Show canonical names and email addresses of contacts"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:468
-msgid ""
-"This command can run `commit-msg`, `prepare-commit-msg`, `pre-commit`, "
-"`post-commit` and `post-rewrite` hooks.  See linkgit:githooks[5] for more "
-"information."
-msgstr ""
-
-#. type: Title -
-#: en/git-commit.txt:470 en/git-commit-tree.txt:109 en/git-config.txt:233 en/git-credential-store.txt:45 en/git-show-ref.txt:174 en/git-submodule.txt:429 en/git-svn.txt:1118
+#: en/git-check-mailmap.txt:13
 #, no-wrap
-msgid "FILES"
+msgid "'git check-mailmap' [<options>] <contact>...\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-commit.txt:472
-#, no-wrap
-msgid "`$GIT_DIR/COMMIT_EDITMSG`"
+#. type: Plain text
+#: en/git-check-mailmap.txt:22
+msgid ""
+"For each ``Name $$<user@host>$$'' or ``$$<user@host>$$'' from the command-"
+"line or standard input (when using `--stdin`), look up the person's "
+"canonical name and email address (see \"Mapping Authors\" below). If found, "
+"print them; otherwise print the input as-is."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:478
+#: en/git-check-mailmap.txt:29
 msgid ""
-"This file contains the commit message of a commit in progress.  If `git "
-"commit` exits due to an error before creating a commit, any commit message "
-"that has been provided by the user (e.g., in an editor session) will be "
-"available in this file, but will be overwritten by the next invocation of "
-"`git commit`."
+"Read contacts, one per line, from the standard input after exhausting "
+"contacts provided on the command-line."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit.txt:486
+#: en/git-check-mailmap.txt:37
 msgid ""
-"linkgit:git-add[1], linkgit:git-rm[1], linkgit:git-mv[1], "
-"linkgit:git-merge[1], linkgit:git-commit-tree[1]"
+"For each contact, a single line is output, terminated by a newline.  If the "
+"name is provided or known to the 'mailmap', ``Name $$<user@host>$$'' is "
+"printed; otherwise only ``$$<user@host>$$'' is printed."
 msgstr ""
 
 #. type: Title =
-#: en/git-commit-tree.txt:2
+#: en/git-checkout-index.txt:2
 #, no-wrap
-msgid "git-commit-tree(1)"
+msgid "git-checkout-index(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit-tree.txt:7
-msgid "git-commit-tree - Create a new commit object"
+#: en/git-checkout-index.txt:7
+msgid "git-checkout-index - Copy files from the index to the working tree"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit-tree.txt:15
+#: en/git-checkout-index.txt:17
 #, no-wrap
 msgid ""
-"'git commit-tree' <tree> [(-p <parent>)...]\n"
-"'git commit-tree' [(-p <parent>)...] [-S[<keyid>]] [(-m <message>)...]\n"
-"\t\t  [(-F <file>)...] <tree>\n"
+"'git checkout-index' [-u] [-q] [-a] [-f] [-n] [--prefix=<string>]\n"
+"\t\t   [--stage=<number>|all]\n"
+"\t\t   [--temp]\n"
+"\t\t   [-z] [--stdin]\n"
+"\t\t   [--] [<file>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit-tree.txt:21
+#: en/git-checkout-index.txt:22
 msgid ""
-"This is usually not what an end user wants to run directly.  See "
-"linkgit:git-commit[1] instead."
+"Will copy all files listed from the index to the working directory (not "
+"overwriting existing files)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit-tree.txt:25
-msgid ""
-"Creates a new commit object based on the provided tree object and emits the "
-"new commit object id on stdout. The log message is read from the standard "
-"input, unless `-m` or `-F` options are given."
+#: en/git-checkout-index.txt:29
+msgid "update stat information for the checked out entries in the index file."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit-tree.txt:30
-msgid ""
-"A commit object may have any number of parents. With exactly one parent, it "
-"is an ordinary commit. Having more than one parent makes the commit a merge "
-"between several lines of history. Initial (root)  commits have no parents."
+#: en/git-checkout-index.txt:33
+msgid "be quiet if files exist or are not in the index"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit-tree.txt:34
-msgid ""
-"While a tree represents a particular directory state of a working directory, "
-"a commit represents that state in \"time\", and explains how to get there."
+#: en/git-checkout-index.txt:37
+msgid "forces overwrite of existing files"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit-tree.txt:40
+#: en/git-checkout-index.txt:42
 msgid ""
-"Normally a commit would identify a new \"HEAD\" state, and while Git doesn't "
-"care where you save the note about that state, in practice we tend to just "
-"write the result to the file that is pointed at by `.git/HEAD`, so that we "
-"can always see what the last committed state was."
-msgstr ""
-
-#. type: Plain text
-#: en/git-commit-tree.txt:45
-msgid "An existing tree object"
+"checks out all files in the index.  Cannot be used together with explicit "
+"filenames."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-commit-tree.txt:46
+#: en/git-checkout-index.txt:44
 #, no-wrap
-msgid "-p <parent>"
+msgid "--no-create"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit-tree.txt:48
-msgid "Each `-p` indicates the id of a parent commit object."
+#: en/git-checkout-index.txt:47
+msgid "Don't checkout new files, only refresh files already checked out."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-commit-tree.txt:49 en/git-fmt-merge-msg.txt:42
+#: en/git-checkout-index.txt:48
 #, no-wrap
-msgid "-m <message>"
+msgid "--prefix=<string>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit-tree.txt:52
+#: en/git-checkout-index.txt:51
 msgid ""
-"A paragraph in the commit log message. This can be given more than once and "
-"each <message> becomes its own paragraph."
+"When creating files, prepend <string> (usually a directory including a "
+"trailing /)"
 msgstr ""
 
-#. type: Plain text
-#: en/git-commit-tree.txt:56
-msgid ""
-"Read the commit log message from the given file. Use `-` to read from the "
-"standard input."
+#. type: Labeled list
+#: en/git-checkout-index.txt:52
+#, no-wrap
+msgid "--stage=<number>|all"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit-tree.txt:66
+#: en/git-checkout-index.txt:56
 msgid ""
-"Do not GPG-sign commit, to countermand a `--gpg-sign` option given earlier "
-"on the command line."
+"Instead of checking out unmerged entries, copy out the files from named "
+"stage.  <number> must be between 1 and 3.  Note: --stage=all automatically "
+"implies --temp."
 msgstr ""
 
-#. type: Title -
-#: en/git-commit-tree.txt:69
+#. type: Labeled list
+#: en/git-checkout-index.txt:57
 #, no-wrap
-msgid "Commit Information"
+msgid "--temp"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit-tree.txt:72
-msgid "A commit encapsulates:"
+#: en/git-checkout-index.txt:61
+msgid ""
+"Instead of copying the files to the working directory write the content to "
+"temporary files.  The temporary name associations will be written to stdout."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit-tree.txt:74
-msgid "all parent object ids"
+#: en/git-checkout-index.txt:66 en/git-update-index.txt:152
+msgid ""
+"Instead of taking list of paths from the command line, read list of paths "
+"from the standard input.  Paths are separated by LF (i.e. one path per line) "
+"by default."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit-tree.txt:75
-msgid "author name, email and date"
+#: en/git-checkout-index.txt:70
+msgid ""
+"Only meaningful with `--stdin`; paths are separated with NUL character "
+"instead of LF."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit-tree.txt:76
-msgid "committer name and email and the commit time."
+#: en/git-checkout-index.txt:73 en/git-commit.txt:345 en/git-ls-files.txt:182
+#: en/git-merge-index.txt:25 en/git-prune.txt:53 en/git-update-index.txt:223
+#: en/git-verify-pack.txt:38
+msgid "Do not interpret any more arguments as options."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit-tree.txt:80
-msgid ""
-"While parent object ids are provided on the command line, author and "
-"committer information is taken from the following environment variables, if "
-"set:"
+#: en/git-checkout-index.txt:75
+msgid "The order of the flags used to matter, but not anymore."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit-tree.txt:87
-#, no-wrap
+#: en/git-checkout-index.txt:79
 msgid ""
-"\tGIT_AUTHOR_NAME\n"
-"\tGIT_AUTHOR_EMAIL\n"
-"\tGIT_AUTHOR_DATE\n"
-"\tGIT_COMMITTER_NAME\n"
-"\tGIT_COMMITTER_EMAIL\n"
-"\tGIT_COMMITTER_DATE\n"
+"Just doing `git checkout-index` does nothing. You probably meant `git "
+"checkout-index -a`. And if you want to force it, you want `git checkout-"
+"index -f -a`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit-tree.txt:89
-msgid "(nb \"<\", \">\" and \"\\n\"s are stripped)"
+#: en/git-checkout-index.txt:83
+msgid ""
+"Intuitiveness is not the goal here. Repeatability is. The reason for the "
+"\"no arguments means no work\" behavior is that from scripts you are "
+"supposed to be able to do:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-commit-tree.txt:96
-msgid ""
-"In case (some of) these environment variables are not set, the information "
-"is taken from the configuration items user.name and user.email, or, if not "
-"present, the environment variable EMAIL, or, if that is not set, system user "
-"name and the hostname used for outgoing mail (taken from `/etc/mailname` and "
-"falling back to the fully qualified hostname when that file does not exist)."
+#. type: delimited block -
+#: en/git-checkout-index.txt:86
+#, no-wrap
+msgid "$ find . -name '*.h' -print0 | xargs -0 git checkout-index -f --\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit-tree.txt:100
+#: en/git-checkout-index.txt:92
 msgid ""
-"A commit comment is read from stdin. If a changelog entry is not provided "
-"via \"<\" redirection, 'git commit-tree' will just wait for one to be "
-"entered and terminated with ^D."
+"which will force all existing `*.h` files to be replaced with their cached "
+"copies. If an empty command line implied \"all\", then this would force-"
+"refresh everything in the index, which was not the point.  But since 'git "
+"checkout-index' accepts --stdin it would be faster to use:"
 msgstr ""
 
-#. type: Title -
-#: en/git-commit-tree.txt:104 en/git-show.txt:81
+#. type: delimited block -
+#: en/git-checkout-index.txt:95
 #, no-wrap
-msgid "Discussion"
+msgid "$ find . -name '*.h' -print0 | git checkout-index -f -z --stdin\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-commit-tree.txt:111
-msgid "/etc/mailname"
+#: en/git-checkout-index.txt:100
+msgid ""
+"The `--` is just a good idea when you know the rest will be filenames; it "
+"will prevent problems with a filename of, for example, `-a`.  Using `--` is "
+"probably a good policy in scripts."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-commit-tree.txt:115 en/cmds-plumbingmanipulators.txt:49
+#. type: Title -
+#: en/git-checkout-index.txt:103
 #, no-wrap
-msgid "linkgit:git-write-tree[1]"
+msgid "Using --temp or --stage=all"
 msgstr ""
 
-#. type: Title =
-#: en/git-config.txt:2
-#, no-wrap
-msgid "git-config(1)"
+#. type: Plain text
+#: en/git-checkout-index.txt:110
+msgid ""
+"When `--temp` is used (or implied by `--stage=all`)  'git checkout-index' "
+"will create a temporary file for each index entry being checked out.  The "
+"index will not be updated with stat information.  These options can be "
+"useful if the caller needs all stages of all unmerged entries so that the "
+"unmerged files can be processed by an external merge tool."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:7
-msgid "git-config - Get and set repository or global options"
+#: en/git-checkout-index.txt:114
+msgid ""
+"A listing will be written to stdout providing the association of temporary "
+"file names to tracked path names.  The listing format has two variations:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:27
-#, no-wrap
-msgid ""
-"'git config' [<file-option>] [type] [--show-origin] [-z|--null] name [value "
-"[value_regex]]\n"
-"'git config' [<file-option>] [type] --add name value\n"
-"'git config' [<file-option>] [type] --replace-all name value [value_regex]\n"
-"'git config' [<file-option>] [type] [--show-origin] [-z|--null] --get name "
-"[value_regex]\n"
-"'git config' [<file-option>] [type] [--show-origin] [-z|--null] --get-all "
-"name [value_regex]\n"
-"'git config' [<file-option>] [type] [--show-origin] [-z|--null] "
-"[--name-only] --get-regexp name_regex [value_regex]\n"
-"'git config' [<file-option>] [type] [-z|--null] --get-urlmatch name URL\n"
-"'git config' [<file-option>] --unset name [value_regex]\n"
-"'git config' [<file-option>] --unset-all name [value_regex]\n"
-"'git config' [<file-option>] --rename-section old_name new_name\n"
-"'git config' [<file-option>] --remove-section name\n"
-"'git config' [<file-option>] [--show-origin] [-z|--null] [--name-only] -l | "
-"--list\n"
-"'git config' [<file-option>] --get-color name [default]\n"
-"'git config' [<file-option>] --get-colorbool name [stdout-is-tty]\n"
-"'git config' [<file-option>] -e | --edit\n"
+#: en/git-checkout-index.txt:116
+msgid "tempname TAB path RS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:33
+#: en/git-checkout-index.txt:121
 msgid ""
-"You can query/set/replace/unset options with this command. The name is "
-"actually the section and the key separated by a dot, and the value will be "
-"escaped."
-msgstr ""
-
-#. type: Plain text
-#: en/git-config.txt:40
-msgid ""
-"Multiple lines can be added to an option by using the `--add` option.  If "
-"you want to update or unset an option which can occur on multiple lines, a "
-"POSIX regexp `value_regex` needs to be given.  Only the existing values that "
-"match the regexp are updated or unset.  If you want to handle the lines that "
-"do *not* match the regex, just prepend a single exclamation mark in front "
-"(see also <<EXAMPLES>>)."
+"The first format is what gets used when `--stage` is omitted or is not `--"
+"stage=all`. The field tempname is the temporary file name holding the file "
+"content and path is the tracked path name in the index.  Only the requested "
+"entries are output."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:47
-msgid ""
-"The type specifier can be either `--int` or `--bool`, to make 'git config' "
-"ensure that the variable(s) are of the given type and convert the value to "
-"the canonical form (simple decimal number for int, a \"true\" or \"false\" "
-"string for bool), or `--path`, which does some path expansion (see `--path` "
-"below).  If no type specifier is passed, no checks or transformations are "
-"performed on the value."
+#: en/git-checkout-index.txt:123
+msgid "stage1temp SP stage2temp SP stage3tmp TAB path RS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:52
+#: en/git-checkout-index.txt:129
 msgid ""
-"When reading, the values are read from the system, global and repository "
-"local configuration files by default, and options `--system`, `--global`, "
-"`--local` and `--file <filename>` can be used to tell the command to read "
-"from only that location (see <<FILES>>)."
+"The second format is what gets used when `--stage=all`.  The three stage "
+"temporary fields (stage1temp, stage2temp, stage3temp) list the name of the "
+"temporary file if there is a stage entry in the index or `.` if there is no "
+"stage entry.  Paths which only have a stage 0 entry will always be omitted "
+"from the output."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:57
+#: en/git-checkout-index.txt:136
 msgid ""
-"When writing, the new value is written to the repository local configuration "
-"file by default, and options `--system`, `--global`, `--file <filename>` can "
-"be used to tell the command to write to that location (you can say `--local` "
-"but that is the default)."
+"In both formats RS (the record separator) is newline by default but will be "
+"the null byte if -z was passed on the command line.  The temporary file "
+"names are always safe strings; they will never contain directory separators "
+"or whitespace characters.  The path field is always relative to the current "
+"directory and the temporary file names are always relative to the top level "
+"directory."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:60
+#: en/git-checkout-index.txt:140
 msgid ""
-"This command will fail with non-zero status upon error.  Some exit codes "
-"are:"
-msgstr ""
-
-#. type: Plain text
-#: en/git-config.txt:62
-msgid "The section or key is invalid (ret=1),"
+"If the object being copied out to a temporary file is a symbolic link the "
+"content of the link will be written to a normal file.  It is up to the end-"
+"user or the Porcelain to make use of this information."
 msgstr ""
 
-#. type: Plain text
-#: en/git-config.txt:63
-msgid "no section or name was provided (ret=2),"
+#. type: Labeled list
+#: en/git-checkout-index.txt:144
+#, no-wrap
+msgid "To update and refresh only the files already checked out"
 msgstr ""
 
-#. type: Plain text
-#: en/git-config.txt:64
-msgid "the config file is invalid (ret=3),"
+#. type: delimited block -
+#: en/git-checkout-index.txt:148 en/git-update-index.txt:356
+#, no-wrap
+msgid "$ git checkout-index -n -f -a && git update-index --ignore-missing --refresh\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-config.txt:65
-msgid "the config file cannot be written (ret=4),"
+#. type: Labeled list
+#: en/git-checkout-index.txt:150
+#, no-wrap
+msgid "Using 'git checkout-index' to \"export an entire tree\""
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:66
-msgid "you try to unset an option which does not exist (ret=5),"
+#: en/git-checkout-index.txt:154
+msgid ""
+"The prefix ability basically makes it trivial to use 'git checkout-index' as "
+"an \"export as tree\" function.  Just read the desired tree into the index, "
+"and do:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-config.txt:67
-msgid "you try to unset/set an option for which multiple lines match (ret=5), or"
+#. type: delimited block -
+#: en/git-checkout-index.txt:157
+#, no-wrap
+msgid "$ git checkout-index --prefix=git-export-dir/ -a\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:68
-msgid "you try to use an invalid regexp (ret=6)."
+#: en/git-checkout-index.txt:161
+msgid ""
+"`git checkout-index` will \"export\" the index into the specified directory."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:70
-msgid "On success, the command returns the exit code 0."
+#: en/git-checkout-index.txt:165
+msgid ""
+"The final \"/\" is important. The exported name is literally just prefixed "
+"with the specified string.  Contrast this with the following example."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-config.txt:74
+#: en/git-checkout-index.txt:166
 #, no-wrap
-msgid "--replace-all"
-msgstr ""
-
-#. type: Plain text
-#: en/git-config.txt:77
-msgid ""
-"Default behavior is to replace at most one line. This replaces all lines "
-"matching the key (and optionally the value_regex)."
+msgid "Export files with a prefix"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-config.txt:78 en/git-update-index.txt:42
+#. type: delimited block -
+#: en/git-checkout-index.txt:170
 #, no-wrap
-msgid "--add"
+msgid "$ git checkout-index --prefix=.merged- Makefile\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:82
+#: en/git-checkout-index.txt:174
 msgid ""
-"Adds a new line to the option without altering any existing values.  This is "
-"the same as providing '^$' as the value_regex in `--replace-all`."
+"This will check out the currently cached copy of `Makefile` into the file `."
+"merged-Makefile`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-config.txt:83
+#. type: Title =
+#: en/git-checkout.txt:2
 #, no-wrap
-msgid "--get"
+msgid "git-checkout(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:87
-msgid ""
-"Get the value for a given key (optionally filtered by a regex matching the "
-"value). Returns error code 1 if the key was not found and the last value if "
-"multiple key values were found."
+#: en/git-checkout.txt:7
+msgid "git-checkout - Switch branches or restore working tree files"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-config.txt:88
+#. type: Plain text
+#: en/git-checkout.txt:18
 #, no-wrap
-msgid "--get-all"
+msgid ""
+"'git checkout' [-q] [-f] [-m] [<branch>]\n"
+"'git checkout' [-q] [-f] [-m] --detach [<branch>]\n"
+"'git checkout' [-q] [-f] [-m] [--detach] <commit>\n"
+"'git checkout' [-q] [-f] [-m] [[-b|-B|--orphan] <new_branch>] [<start_point>]\n"
+"'git checkout' [-f|--ours|--theirs|-m|--conflict=<style>] [<tree-ish>] [--] <paths>...\n"
+"'git checkout' [<tree-ish>] [--] <pathspec>...\n"
+"'git checkout' (-p|--patch) [<tree-ish>] [--] [<paths>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:90
-msgid "Like get, but returns all values for a multi-valued key."
+#: en/git-checkout.txt:25
+msgid ""
+"Updates files in the working tree to match the version in the index or the "
+"specified tree.  If no paths are given, 'git checkout' will also update "
+"`HEAD` to set the specified branch as the current branch."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-config.txt:91
+#: en/git-checkout.txt:26
 #, no-wrap
-msgid "--get-regexp"
+msgid "'git checkout' <branch>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:97
+#: en/git-checkout.txt:32
 msgid ""
-"Like --get-all, but interprets the name as a regular expression and writes "
-"out the key names.  Regular expression matching is currently case-sensitive "
-"and done against a canonicalized version of the key in which section and "
-"variable names are lowercased, but subsection names are not."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-config.txt:98
-#, no-wrap
-msgid "--get-urlmatch name URL"
+"To prepare for working on <branch>, switch to it by updating the index and "
+"the files in the working tree, and by pointing HEAD at the branch. Local "
+"modifications to the files in the working tree are kept, so that they can be "
+"committed to the <branch>."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:105
+#: en/git-checkout.txt:36
 msgid ""
-"When given a two-part name section.key, the value for section.<url>.key "
-"whose <url> part matches the best to the given URL is returned (if no such "
-"key exists, the value for section.key is used as a fallback).  When given "
-"just the section as name, do so for all the keys in the section and list "
-"them.  Returns error code 1 if no value is found."
+"If <branch> is not found but there does exist a tracking branch in exactly "
+"one remote (call it <remote>) with a matching name, treat as equivalent to"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-config.txt:106
+#. type: delimited block -
+#: en/git-checkout.txt:39
 #, no-wrap
-msgid "--global"
+msgid "$ git checkout -b <branch> --track <remote>/<branch>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:111
+#: en/git-checkout.txt:49 en/git-worktree.txt:71
 msgid ""
-"For writing options: write to global `~/.gitconfig` file rather than the "
-"repository `.git/config`, write to `$XDG_CONFIG_HOME/git/config` file if "
-"this file exists and the `~/.gitconfig` file doesn't."
+"If the branch exists in multiple remotes and one of them is named by the "
+"`checkout.defaultRemote` configuration variable, we'll use that one for the "
+"purposes of disambiguation, even if the `<branch>` isn't unique across all "
+"remotes. Set it to e.g. `checkout.defaultRemote=origin` to always checkout "
+"remote branches from there if `<branch>` is ambiguous but exists on the "
+"'origin' remote. See also `checkout.defaultRemote` in linkgit:git-config[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:114
+#: en/git-checkout.txt:54
 msgid ""
-"For reading options: read only from global `~/.gitconfig` and from "
-"`$XDG_CONFIG_HOME/git/config` rather than from all available files."
-msgstr ""
-
-#. type: Plain text
-#: en/git-config.txt:116 en/git-config.txt:126 en/git-config.txt:135 en/git-config.txt:292
-msgid "See also <<FILES>>."
+"You could omit <branch>, in which case the command degenerates to \"check "
+"out the current branch\", which is a glorified no-op with rather expensive "
+"side-effects to show only the tracking information, if exists, for the "
+"current branch."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-config.txt:117
+#: en/git-checkout.txt:55
 #, no-wrap
-msgid "--system"
+msgid "'git checkout' -b|-B <new_branch> [<start point>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:121
+#: en/git-checkout.txt:63
 msgid ""
-"For writing options: write to system-wide `$(prefix)/etc/gitconfig` rather "
-"than the repository `.git/config`."
+"Specifying `-b` causes a new branch to be created as if linkgit:git-"
+"branch[1] were called and then checked out.  In this case you can use the `--"
+"track` or `--no-track` options, which will be passed to 'git branch'.  As a "
+"convenience, `--track` without `-b` implies branch creation; see the "
+"description of `--track` below."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:124
+#: en/git-checkout.txt:66
 msgid ""
-"For reading options: read only from system-wide `$(prefix)/etc/gitconfig` "
-"rather than from all available files."
+"If `-B` is given, <new_branch> is created if it doesn't exist; otherwise, it "
+"is reset. This is the transactional equivalent of"
 msgstr ""
 
-#. type: Plain text
-#: en/git-config.txt:130
+#. type: delimited block -
+#: en/git-checkout.txt:70
+#, no-wrap
 msgid ""
-"For writing options: write to the repository `.git/config` file.  This "
-"is\tthe default behavior."
+"$ git branch -f <branch> [<start point>]\n"
+"$ git checkout <branch>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:133
+#: en/git-checkout.txt:74
 msgid ""
-"For reading options: read only from the repository `.git/config` rather than "
-"from all available files."
+"that is to say, the branch is not reset/created unless \"git checkout\" is "
+"successful."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-config.txt:136
+#: en/git-checkout.txt:75
 #, no-wrap
-msgid "-f config-file"
+msgid "'git checkout' --detach [<branch>]"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-config.txt:137
+#: en/git-checkout.txt:76
 #, no-wrap
-msgid "--file config-file"
+msgid "'git checkout' [--detach] <commit>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:139
-msgid "Use the given config file instead of the one specified by GIT_CONFIG."
+#: en/git-checkout.txt:84
+msgid ""
+"Prepare to work on top of <commit>, by detaching HEAD at it (see \"DETACHED "
+"HEAD\" section), and updating the index and the files in the working tree.  "
+"Local modifications to the files in the working tree are kept, so that the "
+"resulting working tree will be the state recorded in the commit plus the "
+"local modifications."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-config.txt:140
-#, no-wrap
-msgid "--blob blob"
+#. type: Plain text
+#: en/git-checkout.txt:88
+msgid ""
+"When the <commit> argument is a branch name, the `--detach` option can be "
+"used to detach HEAD at the tip of the branch (`git checkout <branch>` would "
+"check out that branch without detaching HEAD)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:146
-msgid ""
-"Similar to `--file` but use the given blob instead of a file. E.g.  you can "
-"use 'master:.gitmodules' to read values from the file '.gitmodules' in the "
-"master branch. See \"SPECIFYING REVISIONS\" section in "
-"linkgit:gitrevisions[7] for a more complete list of ways to spell blob "
-"names."
+#: en/git-checkout.txt:90
+msgid "Omitting <branch> detaches HEAD at the tip of the current branch."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-config.txt:147
+#: en/git-checkout.txt:91
 #, no-wrap
-msgid "--remove-section"
+msgid "'git checkout' [<tree-ish>] [--] <pathspec>..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:149
-msgid "Remove the given section from the configuration file."
+#: en/git-checkout.txt:98
+msgid ""
+"Overwrite paths in the working tree by replacing with the contents in the "
+"index or in the <tree-ish> (most often a commit).  When a <tree-ish> is "
+"given, the paths that match the <pathspec> are updated both in the index and "
+"in the working tree."
+msgstr ""
+
+#. type: Plain text
+#: en/git-checkout.txt:106
+msgid ""
+"The index may contain unmerged entries because of a previous failed merge.  "
+"By default, if you try to check out such an entry from the index, the "
+"checkout operation will fail and nothing will be checked out.  Using `-f` "
+"will ignore these unmerged entries.  The contents from a specific side of "
+"the merge can be checked out of the index by using `--ours` or `--theirs`.  "
+"With `-m`, changes made to the working tree file can be discarded to re-"
+"create the original conflicted merge result."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-config.txt:150
+#: en/git-checkout.txt:107
 #, no-wrap
-msgid "--rename-section"
+msgid "'git checkout' (-p|--patch) [<tree-ish>] [--] [<pathspec>...]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:152
-msgid "Rename the given section to a new name."
+#: en/git-checkout.txt:113
+msgid ""
+"This is similar to the \"check out paths to the working tree from either the "
+"index or from a tree-ish\" mode described above, but lets you use the "
+"interactive interface to show the \"diff\" output and choose which hunks to "
+"use in the result.  See below for the description of `--patch` option."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-config.txt:153
-#, no-wrap
-msgid "--unset"
+#. type: Plain text
+#: en/git-checkout.txt:120
+msgid "Quiet, suppress feedback messages."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:155
-msgid "Remove the line matching the key from config file."
+#: en/git-checkout.txt:126
+msgid ""
+"Progress status is reported on the standard error stream by default when it "
+"is attached to a terminal, unless `--quiet` is specified. This flag enables "
+"progress reporting even if not attached to a terminal, regardless of `--"
+"quiet`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-config.txt:156
-#, no-wrap
-msgid "--unset-all"
+#. type: Plain text
+#: en/git-checkout.txt:132
+msgid ""
+"When switching branches, proceed even if the index or the working tree "
+"differs from HEAD.  This is used to throw away local changes."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:158
-msgid "Remove all lines matching the key from config file."
+#: en/git-checkout.txt:135
+msgid ""
+"When checking out paths from the index, do not fail upon unmerged entries; "
+"instead, unmerged entries are ignored."
 msgstr ""
 
-#. type: Plain text
-#: en/git-config.txt:162
-msgid "List all variables set in config file, along with their values."
+#. type: Labeled list
+#: en/git-checkout.txt:136 en/git-merge-file.txt:73
+#, no-wrap
+msgid "--ours"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-config.txt:163
+#: en/git-checkout.txt:137 en/git-merge-file.txt:74
 #, no-wrap
-msgid "--bool"
+msgid "--theirs"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:165
-msgid "'git config' will ensure that the output is \"true\" or \"false\""
+#: en/git-checkout.txt:140
+msgid ""
+"When checking out paths from the index, check out stage #2 ('ours') or #3 "
+"('theirs') for unmerged paths."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-config.txt:166
-#, no-wrap
-msgid "--int"
+#. type: Plain text
+#: en/git-checkout.txt:145
+msgid ""
+"Note that during `git rebase` and `git pull --rebase`, 'ours' and 'theirs' "
+"may appear swapped; `--ours` gives the version from the branch the changes "
+"are rebased onto, while `--theirs` gives the version from the branch that "
+"holds your work that is being rebased."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:171
+#: en/git-checkout.txt:155
 msgid ""
-"'git config' will ensure that the output is a simple decimal number.  An "
-"optional value suffix of 'k', 'm', or 'g' in the config file will cause the "
-"value to be multiplied by 1024, 1048576, or 1073741824 prior to output."
+"This is because `rebase` is used in a workflow that treats the history at "
+"the remote as the shared canonical one, and treats the work done on the "
+"branch you are rebasing as the third-party work to be integrated, and you "
+"are temporarily assuming the role of the keeper of the canonical history "
+"during the rebase.  As the keeper of the canonical history, you need to view "
+"the history from the remote as `ours` (i.e. \"our shared canonical history"
+"\"), while what you did on your side branch as `theirs` (i.e. \"one "
+"contributor's work on top of it\")."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-config.txt:172
+#: en/git-checkout.txt:156
 #, no-wrap
-msgid "--bool-or-int"
+msgid "-b <new_branch>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:175
+#: en/git-checkout.txt:159
 msgid ""
-"'git config' will ensure that the output matches the format of either --bool "
-"or --int, as described above."
+"Create a new branch named <new_branch> and start it at <start_point>; see "
+"linkgit:git-branch[1] for details."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-config.txt:176 en/git-hash-object.txt:41
+#: en/git-checkout.txt:160
 #, no-wrap
-msgid "--path"
+msgid "-B <new_branch>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:182
+#: en/git-checkout.txt:165
 msgid ""
-"'git-config' will expand leading '{tilde}' to the value of '$HOME', and "
-"'{tilde}user' to the home directory for the specified user.  This option has "
-"no effect when setting the value (but you can use 'git config bla {tilde}/' "
-"from the command line to let your shell do the expansion)."
+"Creates the branch <new_branch> and start it at <start_point>; if it already "
+"exists, then reset it to <start_point>. This is equivalent to running \"git "
+"branch\" with \"-f\"; see linkgit:git-branch[1] for details."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:191
+#: en/git-checkout.txt:170
 msgid ""
-"For all options that output values and/or keys, always end values with the "
-"null character (instead of a newline). Use newline instead as a delimiter "
-"between key and value. This allows for secure parsing of the output without "
-"getting confused e.g. by values that contain line breaks."
+"When creating a new branch, set up \"upstream\" configuration. See \"--track"
+"\" in linkgit:git-branch[1] for details."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-config.txt:192 en/git-grep.txt:178 en/git-ls-tree.txt:59 en/git-name-rev.txt:51 en/diff-options.txt:199
-#, no-wrap
-msgid "--name-only"
+#. type: Plain text
+#: en/git-checkout.txt:180
+msgid ""
+"If no `-b` option is given, the name of the new branch will be derived from "
+"the remote-tracking branch, by looking at the local part of the refspec "
+"configured for the corresponding remote, and then stripping the initial part "
+"up to the \"*\".  This would tell us to use \"hack\" as the local branch "
+"when branching off of \"origin/hack\" (or \"remotes/origin/hack\", or even "
+"\"refs/remotes/origin/hack\").  If the given name has no slash, or the above "
+"guessing results in an empty name, the guessing is aborted.  You can "
+"explicitly give a name with `-b` in such a case."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:195
-msgid "Output only the names of config variables for `--list` or `--get-regexp`."
+#: en/git-checkout.txt:188
+msgid "Create the new branch's reflog; see linkgit:git-branch[1] for details."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-config.txt:196
+#: en/git-checkout.txt:189 en/git-daemon.txt:156 en/git-worktree.txt:143
 #, no-wrap
-msgid "--show-origin"
+msgid "--detach"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:201
+#: en/git-checkout.txt:195
 msgid ""
-"Augment the output of all queried config options with the origin type (file, "
-"standard input, blob, command line) and the actual origin (config file path, "
-"ref, or blob id if applicable)."
+"Rather than checking out a branch to work on it, check out a commit for "
+"inspection and discardable experiments.  This is the default behavior of "
+"\"git checkout <commit>\" when <commit> is not a branch name.  See the "
+"\"DETACHED HEAD\" section below for details."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-config.txt:202
+#: en/git-checkout.txt:196
 #, no-wrap
-msgid "--get-colorbool name [stdout-is-tty]"
+msgid "--orphan <new_branch>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:212
+#: en/git-checkout.txt:202
 msgid ""
-"Find the color setting for `name` (e.g. `color.diff`) and output \"true\" or "
-"\"false\".  `stdout-is-tty` should be either \"true\" or \"false\", and is "
-"taken into account when configuration says \"auto\".  If `stdout-is-tty` is "
-"missing, then checks the standard output of the command itself, and exits "
-"with status 0 if color is to be used, or exits with status 1 otherwise.  "
-"When the color setting for `name` is undefined, the command uses `color.ui` "
-"as fallback."
+"Create a new 'orphan' branch, named <new_branch>, started from <start_point> "
+"and switch to it.  The first commit made on this new branch will have no "
+"parents and it will be the root of a new history totally disconnected from "
+"all the other branches and commits."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-config.txt:213
-#, no-wrap
-msgid "--get-color name [default]"
+#. type: Plain text
+#: en/git-checkout.txt:207
+msgid ""
+"The index and the working tree are adjusted as if you had previously run "
+"\"git checkout <start_point>\".  This allows you to start a new history that "
+"records a set of paths similar to <start_point> by easily running \"git "
+"commit -a\" to make the root commit."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:219
+#: en/git-checkout.txt:213
 msgid ""
-"Find the color configured for `name` (e.g. `color.diff.new`) and output it "
-"as the ANSI color escape sequence to the standard output.  The optional "
-"`default` parameter is used instead, if there is no color configured for "
-"`name`."
+"This can be useful when you want to publish the tree from a commit without "
+"exposing its full history. You might want to do this to publish an open "
+"source branch of a project whose current tree is \"clean\", but whose full "
+"history contains proprietary or otherwise encumbered bits of code."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:224
+#: en/git-checkout.txt:220
 msgid ""
-"Opens an editor to modify the specified config file; either `--system`, "
-"`--global`, or repository (default)."
+"If you want to start a disconnected history that records a set of paths that "
+"is totally different from the one of <start_point>, then you should clear "
+"the index and the working tree right after creating the orphan branch by "
+"running \"git rm -rf .\" from the top level of the working tree.  Afterwards "
+"you will be ready to prepare your new files, repopulating the working tree, "
+"by copying them from elsewhere, extracting a tarball, etc."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-config.txt:225
+#: en/git-checkout.txt:221
 #, no-wrap
-msgid "--[no-]includes"
+msgid "--ignore-skip-worktree-bits"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:230
+#: en/git-checkout.txt:226
 msgid ""
-"Respect `include.*` directives in config files when looking up "
-"values. Defaults to `off` when a specific file is given (e.g., using "
-"`--file`, `--global`, etc) and `on` when searching all config files."
+"In sparse checkout mode, `git checkout -- <paths>` would update only entries "
+"matched by <paths> and sparse patterns in $GIT_DIR/info/sparse-checkout. "
+"This option ignores the sparse patterns and adds back any files in <paths>."
 msgstr ""
 
-#. type: Plain text
-#: en/git-config.txt:237
-msgid ""
-"If not set explicitly with `--file`, there are four files where 'git config' "
-"will search for configuration options:"
+#. type: Labeled list
+#: en/git-checkout.txt:228 en/git-rebase.txt:268 en/git-rebase.txt:523
+#: en/git-reset.txt:71 en/git-submodule.txt:342 en/git-svn.txt:676
+#: en/rev-list-options.txt:289
+#, no-wrap
+msgid "--merge"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:240
-#, no-wrap
+#: en/git-checkout.txt:237
 msgid ""
-"$(prefix)/etc/gitconfig::\n"
-"\tSystem-wide configuration file.\n"
+"When switching branches, if you have local modifications to one or more "
+"files that are different between the current branch and the branch to which "
+"you are switching, the command refuses to switch branches in order to "
+"preserve your modifications in context.  However, with this option, a three-"
+"way merge between the current branch, your working tree contents, and the "
+"new branch is done, and you will be on the new branch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:248
-#, no-wrap
+#: en/git-checkout.txt:242
 msgid ""
-"$XDG_CONFIG_HOME/git/config::\n"
-"\tSecond user-specific configuration file. If $XDG_CONFIG_HOME is not set\n"
-"\tor empty, `$HOME/.config/git/config` will be used. Any single-valued\n"
-"\tvariable set in this file will be overwritten by whatever is in\n"
-"\t`~/.gitconfig`.  It is a good idea not to create this file if\n"
-"\tyou sometimes use older versions of Git, as support for this\n"
-"\tfile was added fairly recently.\n"
+"When a merge conflict happens, the index entries for conflicting paths are "
+"left unmerged, and you need to resolve the conflicts and mark the resolved "
+"paths with `git add` (or `git rm` if the merge should result in deletion of "
+"the path)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:252
-#, no-wrap
+#: en/git-checkout.txt:245
 msgid ""
-"~/.gitconfig::\n"
-"\tUser-specific configuration file. Also called \"global\"\n"
-"\tconfiguration file.\n"
+"When checking out paths from the index, this option lets you recreate the "
+"conflicted merge in the specified paths."
 msgstr ""
 
-#. type: Plain text
-#: en/git-config.txt:255
+#. type: Labeled list
+#: en/git-checkout.txt:246
 #, no-wrap
-msgid ""
-"$GIT_DIR/config::\n"
-"\tRepository specific configuration file.\n"
+msgid "--conflict=<style>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:261
+#: en/git-checkout.txt:252
 msgid ""
-"If no further options are given, all reading options will read all of these "
-"files that are available. If the global or the system-wide configuration "
-"file are not available they will be ignored. If the repository configuration "
-"file is not available or readable, 'git config' will exit with a non-zero "
-"error code. However, in neither case will an error message be issued."
+"The same as --merge option above, but changes the way the conflicting hunks "
+"are presented, overriding the merge.conflictStyle configuration variable.  "
+"Possible values are \"merge\" (default) and \"diff3\" (in addition to what "
+"is shown by \"merge\" style, shows the original contents)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:265
+#: en/git-checkout.txt:259
 msgid ""
-"The files are read in the order given above, with last value found taking "
-"precedence over values read earlier.  When multiple values are taken then "
-"all values of a key from all files will be used."
+"Interactively select hunks in the difference between the <tree-ish> (or the "
+"index, if unspecified) and the working tree.  The chosen hunks are then "
+"applied in reverse to the working tree (and if a <tree-ish> was specified, "
+"the index)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:268
+#: en/git-checkout.txt:263
 msgid ""
-"You may override individual configuration parameters when running any git "
-"command by using the `-c` option. See linkgit:git[1] for details."
+"This means that you can use `git checkout -p` to selectively discard edits "
+"from your current working tree. See the ``Interactive Mode'' section of "
+"linkgit:git-add[1] to learn how to operate the `--patch` mode."
 msgstr ""
 
-#. type: Plain text
-#: en/git-config.txt:272
-msgid ""
-"All writing options will per default write to the repository specific "
-"configuration file. Note that this also affects options like `--replace-all` "
-"and `--unset`. *'git config' will only ever change one file at a time*."
+#. type: Labeled list
+#: en/git-checkout.txt:264
+#, no-wrap
+msgid "--ignore-other-worktrees"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:277
+#: en/git-checkout.txt:269
 msgid ""
-"You can override these rules either by command-line options or by "
-"environment variables. The `--global` and the `--system` options will limit "
-"the file used to the global or system-wide file respectively. The "
-"`GIT_CONFIG` environment variable has a similar effect, but you can specify "
-"any filename you want."
+"`git checkout` refuses when the wanted ref is already checked out by another "
+"worktree. This option makes it check the ref out anyway. In other words, the "
+"ref can be held by more than one worktree."
 msgstr ""
 
-#. type: Title -
-#: en/git-config.txt:280 en/git-cvsserver.txt:310 en/git-daemon.txt:310 en/git-http-backend.txt:243 en/git-notes.txt:373
+#. type: Labeled list
+#: en/git-checkout.txt:270 en/git-read-tree.txt:117
 #, no-wrap
-msgid "ENVIRONMENT"
+msgid "--[no-]recurse-submodules"
+msgstr ""
+
+#. type: Plain text
+#: en/git-checkout.txt:278
+msgid ""
+"Using --recurse-submodules will update the content of all initialized "
+"submodules according to the commit recorded in the superproject. If local "
+"modifications in a submodule would be overwritten the checkout will fail "
+"unless `-f` is used. If nothing (or --no-recurse-submodules)  is used, the "
+"work trees of submodules will not be updated.  Just like linkgit:git-"
+"submodule[1], this will detach the submodules HEAD."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-config.txt:282
+#: en/git-checkout.txt:279
 #, no-wrap
-msgid "GIT_CONFIG"
+msgid "--no-guess"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:286
+#: en/git-checkout.txt:282
 msgid ""
-"Take the configuration from the given file instead of .git/config.  Using "
-"the \"--global\" option forces this to ~/.gitconfig. Using the \"--system\" "
-"option forces this to $(prefix)/etc/gitconfig."
+"Do not attempt to create a branch if a remote tracking branch of the same "
+"name exists."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-config.txt:287
+#: en/git-checkout.txt:283 en/git-rebase.txt:225
 #, no-wrap
-msgid "GIT_CONFIG_NOSYSTEM"
+msgid "<branch>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:290
+#: en/git-checkout.txt:289
 msgid ""
-"Whether to skip reading settings from the system-wide "
-"$(prefix)/etc/gitconfig file. See linkgit:git[1] for details."
+"Branch to checkout; if it refers to a branch (i.e., a name that, when "
+"prepended with \"refs/heads/\", is a valid ref), then that branch is checked "
+"out. Otherwise, if it refers to a valid commit, your HEAD becomes \"detached"
+"\" and you are no longer on any branch (see below for details)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:299
-msgid "Given a .git/config like this:"
+#: en/git-checkout.txt:293
+msgid ""
+"You can use the `\"@{-N}\"` syntax to refer to the N-th last branch/commit "
+"checked out using \"git checkout\" operation. You may also specify `-` which "
+"is synonymous to `\"@{-1}`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:305
-#, no-wrap
+#: en/git-checkout.txt:297
 msgid ""
-"\t#\n"
-"\t# This is the config file, and\n"
-"\t# a '#' or ';' character indicates\n"
-"\t# a comment\n"
-"\t#\n"
+"As a special case, you may use `\"A...B\"` as a shortcut for the merge base "
+"of `A` and `B` if there is exactly one merge base. You can leave out at most "
+"one of `A` and `B`, in which case it defaults to `HEAD`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-config.txt:310
+#. type: Labeled list
+#: en/git-checkout.txt:298
 #, no-wrap
-msgid ""
-"\t; core variables\n"
-"\t[core]\n"
-"\t\t; Don't trust file modes\n"
-"\t\tfilemode = false\n"
+msgid "<new_branch>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:315
-#, no-wrap
-msgid ""
-"\t; Our diff algorithm\n"
-"\t[diff]\n"
-"\t\texternal = /usr/local/bin/diff-wrapper\n"
-"\t\trenames = true\n"
+#: en/git-checkout.txt:300
+msgid "Name for the new branch."
 msgstr ""
 
-#. type: Plain text
-#: en/git-config.txt:320
+#. type: Labeled list
+#: en/git-checkout.txt:301
 #, no-wrap
-msgid ""
-"\t; Proxy settings\n"
-"\t[core]\n"
-"\t\tgitproxy=proxy-command for kernel.org\n"
-"\t\tgitproxy=default-proxy ; for all the rest\n"
+msgid "<start_point>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:327
-#, no-wrap
+#: en/git-checkout.txt:304
 msgid ""
-"\t; HTTP\n"
-"\t[http]\n"
-"\t\tsslVerify\n"
-"\t[http \"https://weak.example.com\"]\n"
-"\t\tsslVerify = false\n"
-"\t\tcookieFile = /tmp/cookie.txt\n"
+"The name of a commit at which to start the new branch; see linkgit:git-"
+"branch[1] for details. Defaults to HEAD."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:329
-msgid "you can set the filemode to true with"
+#: en/git-checkout.txt:308
+msgid ""
+"Tree to checkout from (when paths are given). If not specified, the index "
+"will be used."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-config.txt:332
+#. type: Title -
+#: en/git-checkout.txt:312
 #, no-wrap
-msgid "% git config core.filemode true\n"
+msgid "DETACHED HEAD"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:337
+#: en/git-checkout.txt:316
 msgid ""
-"The hypothetical proxy command entries actually have a postfix to discern "
-"what URL they apply to. Here is how to change the entry for kernel.org to "
-"\"ssh\"."
+"HEAD normally refers to a named branch (e.g. 'master'). Meanwhile, each "
+"branch refers to a specific commit. Let's look at a repo with three commits, "
+"one of them tagged, and with branch 'master' checked out:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-config.txt:340
+#: en/git-checkout.txt:325
 #, no-wrap
-msgid "% git config core.gitproxy '\"ssh\" for kernel.org' 'for kernel.org$'\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-config.txt:343
-msgid "This makes sure that only the key/value pair for kernel.org is replaced."
+msgid ""
+"           HEAD (refers to branch 'master')\n"
+"            |\n"
+"            v\n"
+"a---b---c  branch 'master' (refers to commit 'c')\n"
+"    ^\n"
+"    |\n"
+"  tag 'v2.0' (refers to commit 'b')\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:345
-msgid "To delete the entry for renames, do"
+#: en/git-checkout.txt:332
+msgid ""
+"When a commit is created in this state, the branch is updated to refer to "
+"the new commit. Specifically, 'git commit' creates a new commit 'd', whose "
+"parent is commit 'c', and then updates branch 'master' to refer to new "
+"commit 'd'. HEAD still refers to branch 'master' and so indirectly now "
+"refers to commit 'd':"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-config.txt:348
+#: en/git-checkout.txt:335 en/git-checkout.txt:370 en/git-checkout.txt:387
 #, no-wrap
-msgid "% git config --unset diff.renames\n"
+msgid "$ edit; git add; git commit\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-config.txt:352
+#. type: delimited block -
+#: en/git-checkout.txt:343
+#, no-wrap
 msgid ""
-"If you want to delete an entry for a multivar (like core.gitproxy above), "
-"you have to provide a regex matching the value of exactly one line."
+"               HEAD (refers to branch 'master')\n"
+"                |\n"
+"                v\n"
+"a---b---c---d  branch 'master' (refers to commit 'd')\n"
+"    ^\n"
+"    |\n"
+"  tag 'v2.0' (refers to commit 'b')\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:354
-msgid "To query the value for a given key, do"
+#: en/git-checkout.txt:349
+msgid ""
+"It is sometimes useful to be able to checkout a commit that is not at the "
+"tip of any named branch, or even to create a new commit that is not "
+"referenced by a named branch. Let's look at what happens when we checkout "
+"commit 'b' (here we show two ways this may be done):"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-config.txt:357
+#: en/git-checkout.txt:353
 #, no-wrap
-msgid "% git config --get core.filemode\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-config.txt:360 en/git-gui.txt:120 en/git-merge-index.txt:64
-msgid "or"
+msgid ""
+"$ git checkout v2.0  # or\n"
+"$ git checkout master^^\n"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-config.txt:363
+#: en/git-checkout.txt:361
 #, no-wrap
-msgid "% git config core.filemode\n"
+msgid ""
+"   HEAD (refers to commit 'b')\n"
+"    |\n"
+"    v\n"
+"a---b---c---d  branch 'master' (refers to commit 'd')\n"
+"    ^\n"
+"    |\n"
+"  tag 'v2.0' (refers to commit 'b')\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:366
-msgid "or, to query a multivar:"
+#: en/git-checkout.txt:367
+msgid ""
+"Notice that regardless of which checkout command we use, HEAD now refers "
+"directly to commit 'b'. This is known as being in detached HEAD state.  It "
+"means simply that HEAD refers to a specific commit, as opposed to referring "
+"to a named branch. Let's see what happens when we create a commit:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-config.txt:369
+#: en/git-checkout.txt:380
 #, no-wrap
-msgid "% git config --get core.gitproxy \"for kernel.org$\"\n"
+msgid ""
+"     HEAD (refers to commit 'e')\n"
+"      |\n"
+"      v\n"
+"      e\n"
+"     /\n"
+"a---b---c---d  branch 'master' (refers to commit 'd')\n"
+"    ^\n"
+"    |\n"
+"  tag 'v2.0' (refers to commit 'b')\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:372
-msgid "If you want to know all the values for a multivar, do:"
+#: en/git-checkout.txt:384
+msgid ""
+"There is now a new commit 'e', but it is referenced only by HEAD. We can of "
+"course add yet another commit in this state:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-config.txt:375
+#: en/git-checkout.txt:397
 #, no-wrap
-msgid "% git config --get-all core.gitproxy\n"
+msgid ""
+"\t HEAD (refers to commit 'f')\n"
+"\t  |\n"
+"\t  v\n"
+"      e---f\n"
+"     /\n"
+"a---b---c---d  branch 'master' (refers to commit 'd')\n"
+"    ^\n"
+"    |\n"
+"  tag 'v2.0' (refers to commit 'b')\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:379
+#: en/git-checkout.txt:401
 msgid ""
-"If you like to live dangerously, you can replace *all* core.gitproxy by a "
-"new one with"
+"In fact, we can perform all the normal Git operations. But, let's look at "
+"what happens when we then checkout master:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-config.txt:382
+#: en/git-checkout.txt:404
 #, no-wrap
-msgid "% git config --replace-all core.gitproxy ssh\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-config.txt:386
-msgid ""
-"However, if you really only want to replace the line for the default proxy, "
-"i.e. the one without a \"for ...\" postfix, do something like this:"
+msgid "$ git checkout master\n"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-config.txt:389
+#: en/git-checkout.txt:412
 #, no-wrap
-msgid "% git config core.gitproxy ssh '! for '\n"
+msgid ""
+"               HEAD (refers to branch 'master')\n"
+"      e---f     |\n"
+"     /          v\n"
+"a---b---c---d  branch 'master' (refers to commit 'd')\n"
+"    ^\n"
+"    |\n"
+"  tag 'v2.0' (refers to commit 'b')\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:392
-msgid "To actually match only values with an exclamation mark, you have to"
+#: en/git-checkout.txt:419
+msgid ""
+"It is important to realize that at this point nothing refers to commit 'f'. "
+"Eventually commit 'f' (and by extension commit 'e') will be deleted by the "
+"routine Git garbage collection process, unless we create a reference before "
+"that happens. If we have not yet moved away from commit 'f', any of these "
+"will create a reference to it:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-config.txt:395
+#: en/git-checkout.txt:424
 #, no-wrap
-msgid "% git config section.key value '[!]'\n"
+msgid ""
+"$ git checkout -b foo   <1>\n"
+"$ git branch foo        <2>\n"
+"$ git tag foo           <3>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:398
-msgid "To add a new proxy, without altering any of the existing ones, use"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-config.txt:401
-#, no-wrap
-msgid "% git config --add core.gitproxy '\"proxy-command\" for example.com'\n"
+#: en/git-checkout.txt:429
+msgid ""
+"creates a new branch 'foo', which refers to commit 'f', and then updates "
+"HEAD to refer to branch 'foo'. In other words, we'll no longer be in "
+"detached HEAD state after this command."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:405
-msgid "An example to use customized color from the configuration in your script:"
+#: en/git-checkout.txt:432
+msgid ""
+"similarly creates a new branch 'foo', which refers to commit 'f', but leaves "
+"HEAD detached."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-config.txt:411
-#, no-wrap
+#. type: Plain text
+#: en/git-checkout.txt:435
 msgid ""
-"#!/bin/sh\n"
-"WS=$(git config --get-color color.diff.whitespace \"blue reverse\")\n"
-"RESET=$(git config --get-color \"\" \"reset\")\n"
-"echo \"${WS}your whitespace color or blue reverse${RESET}\"\n"
+"creates a new tag 'foo', which refers to commit 'f', leaving HEAD detached."
 msgstr ""
 
 #. type: Plain text
-#: en/git-config.txt:415
+#: en/git-checkout.txt:440
 msgid ""
-"For URLs in `https://weak.example.com`, `http.sslVerify` is set to false, "
-"while it is set to `true` for all others:"
+"If we have moved away from commit 'f', then we must first recover its object "
+"name (typically by using git reflog), and then we can create a reference to "
+"it. For example, to see the last two commits to which HEAD referred, we can "
+"use either of these commands:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-config.txt:424
+#: en/git-checkout.txt:444
 #, no-wrap
 msgid ""
-"% git config --bool --get-urlmatch http.sslverify https://good.example.com\n"
-"true\n"
-"% git config --bool --get-urlmatch http.sslverify https://weak.example.com\n"
-"false\n"
-"% git config --get-urlmatch http https://weak.example.com\n"
-"http.cookieFile /tmp/cookie.txt\n"
-"http.sslverify false\n"
+"$ git reflog -2 HEAD # or\n"
+"$ git log -g -2 HEAD\n"
 msgstr ""
 
-#. type: Title =
-#: en/git-count-objects.txt:2
+#. type: Title -
+#: en/git-checkout.txt:447
 #, no-wrap
-msgid "git-count-objects(1)"
+msgid "ARGUMENT DISAMBIGUATION"
 msgstr ""
 
 #. type: Plain text
-#: en/git-count-objects.txt:7
+#: en/git-checkout.txt:457
 msgid ""
-"git-count-objects - Count unpacked number of objects and their disk "
-"consumption"
+"When there is only one argument given and it is not `--` (e.g. \"git "
+"checkout abc\"), and when the argument is both a valid `<tree-ish>` (e.g. a "
+"branch \"abc\" exists) and a valid `<pathspec>` (e.g. a file or a directory "
+"whose name is \"abc\" exists), Git would usually ask you to disambiguate.  "
+"Because checking out a branch is so common an operation, however, \"git "
+"checkout abc\" takes \"abc\" as a `<tree-ish>` in such a situation.  Use "
+"`git checkout -- <pathspec>` if you want to checkout these paths out of the "
+"index."
 msgstr ""
 
 #. type: Plain text
-#: en/git-count-objects.txt:12
-#, no-wrap
-msgid "'git count-objects' [-v] [-H | --human-readable]\n"
+#: en/git-checkout.txt:464
+msgid ""
+"The following sequence checks out the `master` branch, reverts the "
+"`Makefile` to two revisions back, deletes hello.c by mistake, and gets it "
+"back from the index."
 msgstr ""
 
-#. type: Plain text
-#: en/git-count-objects.txt:17
+#. type: delimited block -
+#: en/git-checkout.txt:470
+#, no-wrap
 msgid ""
-"This counts the number of unpacked object files and disk space consumed by "
-"them, to help you decide when it is a good time to repack."
+"$ git checkout master             <1>\n"
+"$ git checkout master~2 Makefile  <2>\n"
+"$ rm -f hello.c\n"
+"$ git checkout hello.c            <3>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-count-objects.txt:24
-msgid "Report in more detail:"
+#: en/git-checkout.txt:473
+msgid "switch branch"
 msgstr ""
 
 #. type: Plain text
-#: en/git-count-objects.txt:26
-msgid "count: the number of loose objects"
+#: en/git-checkout.txt:474
+msgid "take a file out of another commit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-count-objects.txt:28
-msgid "size: disk space consumed by loose objects, in KiB (unless -H is specified)"
+#: en/git-checkout.txt:475
+msgid "restore hello.c from the index"
 msgstr ""
 
 #. type: Plain text
-#: en/git-count-objects.txt:30
-msgid "in-pack: the number of in-pack objects"
+#: en/git-checkout.txt:478
+msgid ""
+"If you want to check out _all_ C source files out of the index, you can say"
 msgstr ""
 
-#. type: Plain text
-#: en/git-count-objects.txt:32
-msgid "size-pack: disk space consumed by the packs, in KiB (unless -H is specified)"
+#. type: delimited block -
+#: en/git-checkout.txt:481
+#, no-wrap
+msgid "$ git checkout -- '*.c'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-count-objects.txt:35
+#: en/git-checkout.txt:487
 msgid ""
-"prune-packable: the number of loose objects that are also present in the "
-"packs. These objects could be pruned using `git prune-packed`."
+"Note the quotes around `*.c`.  The file `hello.c` will also be checked out, "
+"even though it is no longer in the working tree, because the file globbing "
+"is used to match entries in the index (not in the working tree by the shell)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-count-objects.txt:38
+#: en/git-checkout.txt:491
 msgid ""
-"garbage: the number of files in object database that are neither valid loose "
-"objects nor valid packs"
+"If you have an unfortunate branch that is named `hello.c`, this step would "
+"be confused as an instruction to switch to that branch.  You should instead "
+"write:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-count-objects.txt:41
-msgid ""
-"size-garbage: disk space consumed by garbage files, in KiB (unless -H is "
-"specified)"
+#. type: delimited block -
+#: en/git-checkout.txt:494
+#, no-wrap
+msgid "$ git checkout -- hello.c\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-count-objects.txt:46
+#: en/git-checkout.txt:498
 msgid ""
-"alternate: absolute path of alternate object databases; may appear multiple "
-"times, one line per path. Note that if the path contains non-printable "
-"characters, it may be surrounded by double-quotes and contain C-style "
-"backslashed escape sequences."
+"After working in the wrong branch, switching to the correct branch would be "
+"done using:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-count-objects.txt:47 en/git-cvsserver.txt:49 en/git-grep.txt:142
+#. type: delimited block -
+#: en/git-checkout.txt:501
 #, no-wrap
-msgid "-H"
+msgid "$ git checkout mytopic\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-count-objects.txt:48
+#. type: Plain text
+#: en/git-checkout.txt:506
+msgid ""
+"However, your \"wrong\" branch and correct \"mytopic\" branch may differ in "
+"files that you have modified locally, in which case the above checkout would "
+"fail like this:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-checkout.txt:510
 #, no-wrap
-msgid "--human-readable"
+msgid ""
+"$ git checkout mytopic\n"
+"error: You have local changes to 'frotz'; not switching branches.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-count-objects.txt:51
-msgid "Print sizes in human readable format"
+#: en/git-checkout.txt:514
+msgid ""
+"You can give the `-m` flag to the command, which would try a three-way merge:"
 msgstr ""
 
-#. type: Title =
-#: en/git-credential-cache--daemon.txt:2
+#. type: delimited block -
+#: en/git-checkout.txt:518
 #, no-wrap
-msgid "git-credential-cache--daemon(1)"
+msgid ""
+"$ git checkout -m mytopic\n"
+"Auto-merging frotz\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-cache--daemon.txt:7
-msgid "git-credential-cache--daemon - Temporarily store user credentials in memory"
+#: en/git-checkout.txt:523
+msgid ""
+"After this three-way merge, the local modifications are _not_ registered in "
+"your index file, so `git diff` would show you what changes you made since "
+"the tip of the new branch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-cache--daemon.txt:12
-#, no-wrap
-msgid "git credential-cache--daemon [--debug] <socket>\n"
+#: en/git-checkout.txt:526
+msgid ""
+"When a merge conflict happens during switching branches with the `-m` "
+"option, you would see something like this:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-credential-cache--daemon.txt:18
+#. type: delimited block -
+#: en/git-checkout.txt:532
+#, no-wrap
 msgid ""
-"You probably don't want to invoke this command yourself; it is started "
-"automatically when you use linkgit:git-credential-cache[1]."
+"$ git checkout -m mytopic\n"
+"Auto-merging frotz\n"
+"ERROR: Merge conflict in frotz\n"
+"fatal: merge program failed\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-cache--daemon.txt:23
+#: en/git-checkout.txt:538
 msgid ""
-"This command listens on the Unix domain socket specified by `<socket>` for "
-"`git-credential-cache` clients. Clients may store and retrieve "
-"credentials. Each credential is held for a timeout specified by the client; "
-"once no credentials are held, the daemon exits."
+"At this point, `git diff` shows the changes cleanly merged as in the "
+"previous example, as well as the changes in the conflicted files.  Edit and "
+"resolve the conflict and mark it resolved with `git add` as usual:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-credential-cache--daemon.txt:27
+#. type: delimited block -
+#: en/git-checkout.txt:542
+#, no-wrap
 msgid ""
-"If the `--debug` option is specified, the daemon does not close its stderr "
-"stream, and may output extra diagnostics to it even after it has begun "
-"listening for clients."
+"$ edit frotz\n"
+"$ git add frotz\n"
 msgstr ""
 
 #. type: Title =
-#: en/git-credential-cache.txt:2
+#: en/git-check-ref-format.txt:2
 #, no-wrap
-msgid "git-credential-cache(1)"
+msgid "git-check-ref-format(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-cache.txt:7
-msgid "git-credential-cache - Helper to temporarily store passwords in memory"
+#: en/git-check-ref-format.txt:7
+msgid "git-check-ref-format - Ensures that a reference name is well formed"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-credential-cache.txt:12
+#. type: Plain text
+#: en/git-check-ref-format.txt:15
 #, no-wrap
-msgid "git config credential.helper 'cache [options]'\n"
+msgid ""
+"'git check-ref-format' [--normalize]\n"
+"       [--[no-]allow-onelevel] [--refspec-pattern]\n"
+"       <refname>\n"
+"'git check-ref-format' --branch <branchname-shorthand>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-cache.txt:21
+#: en/git-check-ref-format.txt:20
 msgid ""
-"This command caches credentials in memory for use by future Git "
-"programs. The stored credentials never touch the disk, and are forgotten "
-"after a configurable timeout.  The cache is accessible over a Unix domain "
-"socket, restricted to the current user by filesystem permissions."
+"Checks if a given 'refname' is acceptable, and exits with a non-zero status "
+"if it is not."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-cache.txt:25
+#: en/git-check-ref-format.txt:27
 msgid ""
-"You probably don't want to invoke this command directly; it is meant to be "
-"used as a credential helper by other parts of Git. See "
-"linkgit:gitcredentials[7] or `EXAMPLES` below."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-credential-cache.txt:29
-#, no-wrap
-msgid "--timeout <seconds>"
+"A reference is used in Git to specify branches and tags.  A branch head is "
+"stored in the `refs/heads` hierarchy, while a tag is stored in the `refs/"
+"tags` hierarchy of the ref namespace (typically in `$GIT_DIR/refs/heads` and "
+"`$GIT_DIR/refs/tags` directories or, as entries in file `$GIT_DIR/packed-"
+"refs` if refs are packed by `git gc`)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-cache.txt:32
-msgid "Number of seconds to cache credentials (default: 900)."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-credential-cache.txt:33
-#, no-wrap
-msgid "--socket <path>"
+#: en/git-check-ref-format.txt:29
+msgid "Git imposes the following rules on how references are named:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-cache.txt:40
+#: en/git-check-ref-format.txt:33
 msgid ""
-"Use `<path>` to contact a running cache daemon (or start a new cache daemon "
-"if one is not started). Defaults to `~/.git-credential-cache/socket`. If "
-"your home directory is on a network-mounted filesystem, you may need to "
-"change this to a local filesystem. You must specify an absolute path."
-msgstr ""
-
-#. type: Title -
-#: en/git-credential-cache.txt:42
-#, no-wrap
-msgid "CONTROLLING THE DAEMON"
+"They can include slash `/` for hierarchical (directory)  grouping, but no "
+"slash-separated component can begin with a dot `.` or end with the sequence "
+"`.lock`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-cache.txt:46
+#: en/git-check-ref-format.txt:38
 msgid ""
-"If you would like the daemon to exit early, forgetting all cached "
-"credentials before their timeout, you can issue an `exit` action:"
+"They must contain at least one `/`. This enforces the presence of a category "
+"like `heads/`, `tags/` etc. but the actual names are not restricted.  If the "
+"`--allow-onelevel` option is used, this rule is waived."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-credential-cache.txt:49
-#, no-wrap
-msgid "git credential-cache exit\n"
+#. type: Plain text
+#: en/git-check-ref-format.txt:40
+msgid "They cannot have two consecutive dots `..` anywhere."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-cache.txt:56 en/git-credential-store.txt:75
+#: en/git-check-ref-format.txt:44
 msgid ""
-"The point of this helper is to reduce the number of times you must type your "
-"username or password. For example:"
+"They cannot have ASCII control characters (i.e. bytes whose values are lower "
+"than \\040, or \\177 `DEL`), space, tilde `~`, caret `^`, or colon `:` "
+"anywhere."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-credential-cache.txt:62
-#, no-wrap
+#. type: Plain text
+#: en/git-check-ref-format.txt:48
 msgid ""
-"$ git config credential.helper cache\n"
-"$ git push http://example.com/repo.git\n"
-"Username: <type your username>\n"
-"Password: <type your password>\n"
+"They cannot have question-mark `?`, asterisk `*`, or open bracket `[` "
+"anywhere.  See the `--refspec-pattern` option below for an exception to this "
+"rule."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-credential-cache.txt:66
-#, no-wrap
+#. type: Plain text
+#: en/git-check-ref-format.txt:52
 msgid ""
-"[work for 5 more minutes]\n"
-"$ git push http://example.com/repo.git\n"
-"[your credentials are used automatically]\n"
+"They cannot begin or end with a slash `/` or contain multiple consecutive "
+"slashes (see the `--normalize` option below for an exception to this rule)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-cache.txt:70
-msgid ""
-"You can provide options via the credential.helper configuration variable "
-"(this example drops the cache time to 5 minutes):"
+#: en/git-check-ref-format.txt:54
+msgid "They cannot end with a dot `.`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-credential-cache.txt:73
-#, no-wrap
-msgid "$ git config credential.helper 'cache --timeout=300'\n"
+#. type: Plain text
+#: en/git-check-ref-format.txt:56
+msgid "They cannot contain a sequence `@{`."
 msgstr ""
 
-#. type: Title =
-#: en/git-credential-store.txt:2
-#, no-wrap
-msgid "git-credential-store(1)"
+#. type: Plain text
+#: en/git-check-ref-format.txt:58
+msgid "They cannot be the single character `@`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-store.txt:7
-msgid "git-credential-store - Helper to store credentials on disk"
+#: en/git-check-ref-format.txt:60
+msgid "They cannot contain a `\\`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-credential-store.txt:12
-#, no-wrap
-msgid "git config credential.helper 'store [options]'\n"
+#. type: Plain text
+#: en/git-check-ref-format.txt:65
+msgid ""
+"These rules make it easy for shell script based tools to parse reference "
+"names, pathname expansion by the shell when a reference name is used "
+"unquoted (by mistake), and also avoid ambiguities in certain reference name "
+"expressions (see linkgit:gitrevisions[7]):"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-store.txt:21
+#: en/git-check-ref-format.txt:69
 msgid ""
-"Using this helper will store your passwords unencrypted on disk, protected "
-"only by filesystem permissions. If this is not an acceptable security "
-"tradeoff, try linkgit:git-credential-cache[1], or find a helper that "
-"integrates with secure storage provided by your operating system."
+"A double-dot `..` is often used as in `ref1..ref2`, and in some contexts "
+"this notation means `^ref1 ref2` (i.e. not in `ref1` and in `ref2`)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-store.txt:24
+#: en/git-check-ref-format.txt:72
 msgid ""
-"This command stores credentials indefinitely on disk for use by future Git "
-"programs."
+"A tilde `~` and caret `^` are used to introduce the postfix 'nth parent' and "
+"'peel onion' operation."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-store.txt:28
+#: en/git-check-ref-format.txt:77
 msgid ""
-"You probably don't want to invoke this command directly; it is meant to be "
-"used as a credential helper by other parts of git. See "
-"linkgit:gitcredentials[7] or `EXAMPLES` below."
+"A colon `:` is used as in `srcref:dstref` to mean \"use srcref\\'s value and "
+"store it in dstref\" in fetch and push operations.  It may also be used to "
+"select a specific object such as with 'git cat-file': \"git cat-file blob "
+"v1.3.3:refs.c\"."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-credential-store.txt:32
-#, no-wrap
-msgid "--file=<path>"
+#. type: Plain text
+#: en/git-check-ref-format.txt:79
+msgid "at-open-brace `@{` is used as a notation to access a reflog entry."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-store.txt:42
+#: en/git-check-ref-format.txt:97
 msgid ""
-"Use `<path>` to lookup and store credentials. The file will have its "
-"filesystem permissions set to prevent other users on the system from reading "
-"it, but will not be encrypted or otherwise protected. If not specified, "
-"credentials will be searched for from `~/.git-credentials` and "
-"`$XDG_CONFIG_HOME/git/credentials`, and credentials will be written to "
-"`~/.git-credentials` if it exists, or `$XDG_CONFIG_HOME/git/credentials` if "
-"it exists and the former does not. See also <<FILES>>."
+"With the `--branch` option, the command takes a name and checks if it can be "
+"used as a valid branch name (e.g. when creating a new branch). But be "
+"cautious when using the previous checkout syntax that may refer to a "
+"detached HEAD state.  The rule `git check-ref-format --branch $name` "
+"implements may be stricter than what `git check-ref-format refs/heads/$name` "
+"says (e.g. a dash may appear at the beginning of a ref component, but it is "
+"explicitly forbidden at the beginning of a branch name).  When run with `--"
+"branch` option in a repository, the input is first expanded for the "
+"``previous checkout syntax'' `@{-n}`.  For example, `@{-1}` is a way to "
+"refer the last thing that was checked out using \"git checkout\" operation. "
+"This option should be used by porcelains to accept this syntax anywhere a "
+"branch name is expected, so they can act as if you typed the branch name. As "
+"an exception note that, the ``previous checkout operation'' might result in "
+"a commit object name when the N-th last thing checked out was not a branch."
 msgstr ""
 
-#. type: Plain text
-#: en/git-credential-store.txt:49
-msgid ""
-"If not set explicitly with `--file`, there are two files where "
-"git-credential-store will search for credentials in order of precedence:"
+#. type: Labeled list
+#: en/git-check-ref-format.txt:100
+#, no-wrap
+msgid "--[no-]allow-onelevel"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-store.txt:52
-#, no-wrap
+#: en/git-check-ref-format.txt:104
 msgid ""
-"~/.git-credentials::\n"
-"\tUser-specific credentials file.\n"
+"Controls whether one-level refnames are accepted (i.e., refnames that do not "
+"contain multiple `/`-separated components).  The default is `--no-allow-"
+"onelevel`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-credential-store.txt:59
+#. type: Labeled list
+#: en/git-check-ref-format.txt:105
 #, no-wrap
-msgid ""
-"$XDG_CONFIG_HOME/git/credentials::\n"
-"\tSecond user-specific credentials file. If '$XDG_CONFIG_HOME' is not set\n"
-"\tor empty, `$HOME/.config/git/credentials` will be used. Any credentials\n"
-"\tstored in this file will not be used if `~/.git-credentials` has a\n"
-"\tmatching credential as well. It is a good idea not to create this file\n"
-"\tif you sometimes use older versions of Git that do not support it.\n"
+msgid "--refspec-pattern"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-store.txt:63
+#: en/git-check-ref-format.txt:111
 msgid ""
-"For credential lookups, the files are read in the order given above, with "
-"the first matching credential found taking precedence over credentials found "
-"in files further down the list."
+"Interpret <refname> as a reference name pattern for a refspec (as used with "
+"remote repositories).  If this option is enabled, <refname> is allowed to "
+"contain a single `*` in the refspec (e.g., `foo/bar*/baz` or `foo/bar*baz/` "
+"but not `foo/bar*/baz*`)."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-check-ref-format.txt:112
+#, no-wrap
+msgid "--normalize"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-store.txt:67
+#: en/git-check-ref-format.txt:119
 msgid ""
-"Credential storage will by default write to the first existing file in the "
-"list. If none of these files exist, `~/.git-credentials` will be created and "
-"written to."
+"Normalize 'refname' by removing any leading slash (`/`)  characters and "
+"collapsing runs of adjacent slashes between name components into a single "
+"slash.  If the normalized refname is valid then print it to standard output "
+"and exit with a status of 0, otherwise exit with a non-zero status.  (`--"
+"print` is a deprecated way to spell `--normalize`.)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-store.txt:69
-msgid ""
-"When erasing credentials, matching credentials will be erased from all "
-"files."
+#: en/git-check-ref-format.txt:125
+msgid "Print the name of the previous thing checked out:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-credential-store.txt:81
+#: en/git-check-ref-format.txt:128
 #, no-wrap
-msgid ""
-"$ git config credential.helper store\n"
-"$ git push http://example.com/repo.git\n"
-"Username: <type your username>\n"
-"Password: <type your password>\n"
+msgid "$ git check-ref-format --branch @{-1}\n"
+msgstr ""
+
+#. type: Plain text
+#: en/git-check-ref-format.txt:131
+msgid "Determine the reference name to use for a new branch:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-credential-store.txt:85
+#: en/git-check-ref-format.txt:135
 #, no-wrap
 msgid ""
-"[several days later]\n"
-"$ git push http://example.com/repo.git\n"
-"[your credentials are used automatically]\n"
+"$ ref=$(git check-ref-format --normalize \"refs/heads/$newbranch\")||\n"
+"{ echo \"we do not like '$newbranch' as a branch name.\" >&2 ; exit 1 ; }\n"
 msgstr ""
 
-#. type: Title -
-#: en/git-credential-store.txt:88
+#. type: Title =
+#: en/git-cherry-pick.txt:2
 #, no-wrap
-msgid "STORAGE FORMAT"
+msgid "git-cherry-pick(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-store.txt:92
-msgid ""
-"The `.git-credentials` file is stored in plaintext. Each credential is "
-"stored on its own line as a URL like:"
+#: en/git-cherry-pick.txt:7
+msgid "git-cherry-pick - Apply the changes introduced by some existing commits"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-credential-store.txt:95
+#. type: Plain text
+#: en/git-cherry-pick.txt:16
 #, no-wrap
-msgid "https://user:pass@example.com\n"
+msgid ""
+"'git cherry-pick' [--edit] [-n] [-m parent-number] [-s] [-x] [--ff]\n"
+"\t\t  [-S[<keyid>]] <commit>...\n"
+"'git cherry-pick' --continue\n"
+"'git cherry-pick' --quit\n"
+"'git cherry-pick' --abort\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential-store.txt:103
+#: en/git-cherry-pick.txt:23
 msgid ""
-"When Git needs authentication for a particular URL context, credential-store "
-"will consider that context a pattern to match against each entry in the "
-"credentials file.  If the protocol, hostname, and username (if we already "
-"have one) match, then the password is returned to Git. See the discussion of "
-"configuration in linkgit:gitcredentials[7] for more information."
-msgstr ""
-
-#. type: Title =
-#: en/git-credential.txt:2
-#, no-wrap
-msgid "git-credential(1)"
+"Given one or more existing commits, apply the change each one introduces, "
+"recording a new commit for each.  This requires your working tree to be "
+"clean (no modifications from the HEAD commit)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:7
-msgid "git-credential - Retrieve and store user credentials"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-credential.txt:12
-#, no-wrap
-msgid "git credential <fill|approve|reject>\n"
+#: en/git-cherry-pick.txt:26
+msgid "When it is not obvious how to apply a change, the following happens:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:25
+#: en/git-cherry-pick.txt:29
 msgid ""
-"Git has an internal interface for storing and retrieving credentials from "
-"system-specific helpers, as well as prompting the user for usernames and "
-"passwords. The git-credential command exposes this interface to scripts "
-"which may want to retrieve, store, or prompt for credentials in the same "
-"manner as Git. The design of this scriptable interface models the internal C "
-"API; see link:technical/api-credentials.html[the Git credential API] for "
-"more background on the concepts."
+"The current branch and `HEAD` pointer stay at the last commit successfully "
+"made."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:29
+#: en/git-cherry-pick.txt:31
 msgid ""
-"git-credential takes an \"action\" option on the command-line (one of "
-"`fill`, `approve`, or `reject`) and reads a credential description on stdin "
-"(see <<IOFMT,INPUT/OUTPUT FORMAT>>)."
+"The `CHERRY_PICK_HEAD` ref is set to point at the commit that introduced the "
+"change that is difficult to apply."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:36
+#: en/git-cherry-pick.txt:33
 msgid ""
-"If the action is `fill`, git-credential will attempt to add \"username\" and "
-"\"password\" attributes to the description by reading config files, by "
-"contacting any configured credential helpers, or by prompting the user. The "
-"username and password attributes of the credential description are then "
-"printed to stdout together with the attributes already provided."
+"Paths in which the change applied cleanly are updated both in the index file "
+"and in your working tree."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:40
+#: en/git-cherry-pick.txt:38
 msgid ""
-"If the action is `approve`, git-credential will send the description to any "
-"configured credential helpers, which may store the credential for later use."
+"For conflicting paths, the index file records up to three versions, as "
+"described in the \"TRUE MERGE\" section of linkgit:git-merge[1].  The "
+"working tree files will include a description of the conflict bracketed by "
+"the usual conflict markers `<<<<<<<` and `>>>>>>>`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:44
-msgid ""
-"If the action is `reject`, git-credential will send the description to any "
-"configured credential helpers, which may erase any stored credential "
-"matching the description."
+#: en/git-cherry-pick.txt:39
+msgid "No other modifications are made."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:46
-msgid "If the action is `approve` or `reject`, no output should be emitted."
+#: en/git-cherry-pick.txt:42
+msgid "See linkgit:git-merge[1] for some hints on resolving such conflicts."
 msgstr ""
 
-#. type: Title -
-#: en/git-credential.txt:48
+#. type: Labeled list
+#: en/git-cherry-pick.txt:45 en/git-merge.txt:107 en/git-revert.txt:35
+#: en/git-verify-commit.txt:27
 #, no-wrap
-msgid "TYPICAL USE OF GIT CREDENTIAL"
+msgid "<commit>..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:52
+#: en/git-cherry-pick.txt:54
 msgid ""
-"An application using git-credential will typically use `git credential` "
-"following these steps:"
+"Commits to cherry-pick.  For a more complete list of ways to spell commits, "
+"see linkgit:gitrevisions[7].  Sets of commits can be passed but no traversal "
+"is done by default, as if the `--no-walk` option was specified, see linkgit:"
+"git-rev-list[1]. Note that specifying a range will feed all <commit>... "
+"arguments to a single revision walk (see a later example that uses 'maint "
+"master..next')."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:54
-msgid "Generate a credential description based on the context."
+#: en/git-cherry-pick.txt:59
+msgid ""
+"With this option, 'git cherry-pick' will let you edit the commit message "
+"prior to committing."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-cherry-pick.txt:60 en/git-clean.txt:62
+#, no-wrap
+msgid "-x"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:60
+#: en/git-cherry-pick.txt:73
 msgid ""
-"For example, if we want a password for `https://example.com/foo.git`, we "
-"might generate the following credential description (don't forget the blank "
-"line at the end; it tells `git credential` that the application finished "
-"feeding all the information it has):"
+"When recording the commit, append a line that says \"(cherry picked from "
+"commit ...)\" to the original commit message in order to indicate which "
+"commit this change was cherry-picked from.  This is done only for cherry "
+"picks without conflicts.  Do not use this option if you are cherry-picking "
+"from your private branch because the information is useless to the "
+"recipient.  If on the other hand you are cherry-picking between two publicly "
+"visible branches (e.g. backporting a fix to a maintenance branch for an "
+"older release from a development branch), adding this information can be "
+"useful."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:64
-#, no-wrap
+#: en/git-cherry-pick.txt:78
 msgid ""
-"\t protocol=https\n"
-"\t host=example.com\n"
-"\t path=foo.git\n"
+"It used to be that the command defaulted to do `-x` described above, and `-"
+"r` was to disable it.  Now the default is not to do `-x` so this option is a "
+"no-op."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-cherry-pick.txt:79 en/git-revert.txt:49
+#, no-wrap
+msgid "-m parent-number"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-cherry-pick.txt:80 en/git-revert.txt:50
+#, no-wrap
+msgid "--mainline parent-number"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:70
+#: en/git-cherry-pick.txt:86
 msgid ""
-"Ask git-credential to give us a username and password for this "
-"description. This is done by running `git credential fill`, feeding the "
-"description from step (1) to its standard input. The complete credential "
-"description (including the credential per se, i.e. the login and password) "
-"will be produced on standard output, like:"
+"Usually you cannot cherry-pick a merge because you do not know which side of "
+"the merge should be considered the mainline.  This option specifies the "
+"parent number (starting from 1) of the mainline and allows cherry-pick to "
+"replay the change relative to the specified parent."
 msgstr ""
 
-#. type: Plain text
-#: en/git-credential.txt:75
+#. type: Labeled list
+#: en/git-cherry-pick.txt:88 en/git-revert.txt:70 en/merge-options.txt:2
 #, no-wrap
-msgid ""
-"protocol=https\n"
-"host=example.com\n"
-"username=bob\n"
-"password=secr3t\n"
+msgid "--no-commit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:80
+#: en/git-cherry-pick.txt:96
 msgid ""
-"In most cases, this means the attributes given in the input will be repeated "
-"in the output, but Git may also modify the credential description, for "
-"example by removing the `path` attribute when the protocol is HTTP(s) and "
-"`credential.useHttpPath` is false."
+"Usually the command automatically creates a sequence of commits.  This flag "
+"applies the changes necessary to cherry-pick each named commit to your "
+"working tree and the index, without making any commit.  In addition, when "
+"this option is used, your index does not have to match the HEAD commit.  The "
+"cherry-pick is done against the beginning state of your index."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:86
+#: en/git-cherry-pick.txt:99
 msgid ""
-"If the `git credential` knew about the password, this step may not have "
-"involved the user actually typing this password (the user may have typed a "
-"password to unlock the keychain instead, or no user interaction was done if "
-"the keychain was already unlocked) before it returned `password=secr3t`."
+"This is useful when cherry-picking more than one commits' effect to your "
+"index in a row."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:89
+#: en/git-cherry-pick.txt:104 en/git-revert.txt:93
 msgid ""
-"Use the credential (e.g., access the URL with the username and password from "
-"step (2)), and see if it's accepted."
+"Add Signed-off-by line at the end of the commit message.  See the signoff "
+"option in linkgit:git-commit[1] for more information."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-cherry-pick.txt:111 en/merge-options.txt:30
+#, no-wrap
+msgid "--ff"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:99
+#: en/git-cherry-pick.txt:115
 msgid ""
-"Report on the success or failure of the password. If the credential allowed "
-"the operation to complete successfully, then it can be marked with an "
-"\"approve\" action to tell `git credential` to reuse it in its next "
-"invocation. If the credential was rejected during the operation, use the "
-"\"reject\" action so that `git credential` will ask for a new password in "
-"its next invocation. In either case, `git credential` should be fed with the "
-"credential description obtained from step (2) (which also contain the ones "
-"provided in step (1))."
+"If the current HEAD is the same as the parent of the cherry-pick'ed commit, "
+"then a fast forward to this commit will be performed."
 msgstr ""
 
-#. type: Title -
-#: en/git-credential.txt:102
+#. type: Labeled list
+#: en/git-cherry-pick.txt:116 en/git-commit.txt:179 en/git-notes.txt:158
 #, no-wrap
-msgid "INPUT/OUTPUT FORMAT"
+msgid "--allow-empty"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:109
+#: en/git-cherry-pick.txt:128
 msgid ""
-"`git credential` reads and/or writes (depending on the action used)  "
-"credential information in its standard input/output. This information can "
-"correspond either to keys for which `git credential` will obtain the "
-"login/password information (e.g. host, protocol, path), or to the actual "
-"credential data to be obtained (login/password)."
+"By default, cherry-picking an empty commit will fail, indicating that an "
+"explicit invocation of `git commit --allow-empty` is required. This option "
+"overrides that behavior, allowing empty commits to be preserved "
+"automatically in a cherry-pick. Note that when \"--ff\" is in effect, empty "
+"commits that meet the \"fast-forward\" requirement will be kept even without "
+"this option.  Note also, that use of this option only keeps commits that "
+"were initially empty (i.e. the commit recorded the same tree as its "
+"parent).  Commits which are made empty due to a previous commit are "
+"dropped.  To force the inclusion of those commits use `--keep-redundant-"
+"commits`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:119
+#: en/git-cherry-pick.txt:129 en/git-commit.txt:185 en/git-rebase.txt:249
+#: en/git-rebase.txt:526
+#, no-wrap
+msgid "--allow-empty-message"
+msgstr ""
+
+#. type: Plain text
+#: en/git-cherry-pick.txt:133
 msgid ""
-"The credential is split into a set of named attributes, with one attribute "
-"per line. Each attribute is specified by a key-value pair, separated by an "
-"`=` (equals) sign, followed by a newline. The key may contain any bytes "
-"except `=`, newline, or NUL. The value may contain any bytes except newline "
-"or NUL.  In both cases, all bytes are treated as-is (i.e., there is no "
-"quoting, and one cannot transmit a value with newline or NUL in it). The "
-"list of attributes is terminated by a blank line or end-of-file.  Git "
-"understands the following attributes:"
+"By default, cherry-picking a commit with an empty message will fail.  This "
+"option overrides that behavior, allowing commits with empty messages to be "
+"cherry picked."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-credential.txt:120
+#: en/git-cherry-pick.txt:134
 #, no-wrap
-msgid "`protocol`"
+msgid "--keep-redundant-commits"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:124
-msgid "The protocol over which the credential will be used (e.g., `https`)."
+#: en/git-cherry-pick.txt:140
+msgid ""
+"If a commit being cherry picked duplicates a commit already in the current "
+"history, it will become empty.  By default these redundant commits cause "
+"`cherry-pick` to stop so the user can examine the commit. This option "
+"overrides that behavior and creates an empty commit object.  Implies `--"
+"allow-empty`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-credential.txt:125
+#: en/git-cherry-pick.txt:141 en/git-notes.txt:184 en/git-rebase.txt:282
+#: en/git-revert.txt:94 en/git-svn.txt:678 en/merge-options.txt:95
 #, no-wrap
-msgid "`host`"
+msgid "--strategy=<strategy>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:128
-msgid "The remote hostname for a network credential."
+#: en/git-cherry-pick.txt:145 en/git-revert.txt:98
+msgid ""
+"Use the given merge strategy.  Should only be used once.  See the MERGE "
+"STRATEGIES section in linkgit:git-merge[1] for details."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-credential.txt:129
+#: en/git-cherry-pick.txt:146 en/git-revert.txt:99
 #, no-wrap
-msgid "`path`"
+msgid "-X<option>"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-cherry-pick.txt:147 en/git-revert.txt:100 en/merge-options.txt:103
+#, no-wrap
+msgid "--strategy-option=<option>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:134
+#: en/git-cherry-pick.txt:150 en/git-revert.txt:103
 msgid ""
-"The path with which the credential will be used. E.g., for accessing a "
-"remote https repository, this will be the repository's path on the server."
+"Pass the merge strategy-specific option through to the merge strategy.  See "
+"linkgit:git-merge[1] for details."
+msgstr ""
+
+#. type: Title -
+#: en/git-cherry-pick.txt:152 en/git-revert.txt:105
+#, no-wrap
+msgid "SEQUENCER SUBCOMMANDS"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-credential.txt:135
+#: en/git-cherry-pick.txt:157
 #, no-wrap
-msgid "`username`"
+msgid "`git cherry-pick master`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:139
+#: en/git-cherry-pick.txt:161
 msgid ""
-"The credential's username, if we already have one (e.g., from a URL, from "
-"the user, or from a previously run helper)."
+"Apply the change introduced by the commit at the tip of the master branch "
+"and create a new commit with this change."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-credential.txt:140
+#: en/git-cherry-pick.txt:162
 #, no-wrap
-msgid "`password`"
+msgid "`git cherry-pick ..master`"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-cherry-pick.txt:163
+#, no-wrap
+msgid "`git cherry-pick ^HEAD master`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:143
-msgid "The credential's password, if we are asking it to be stored."
+#: en/git-cherry-pick.txt:167
+msgid ""
+"Apply the changes introduced by all commits that are ancestors of master but "
+"not of HEAD to produce new commits."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-credential.txt:144
+#: en/git-cherry-pick.txt:168
 #, no-wrap
-msgid "`url`"
+msgid "`git cherry-pick maint next ^master`"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-cherry-pick.txt:169
+#, no-wrap
+msgid "`git cherry-pick maint master..next`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-credential.txt:154
+#: en/git-cherry-pick.txt:176
 msgid ""
-"When this special attribute is read by `git credential`, the value is parsed "
-"as a URL and treated as if its constituent parts were read (e.g., "
-"`url=https://example.com` would behave as if `protocol=https` and "
-"`host=example.com` had been provided). This can help callers avoid parsing "
-"URLs themselves.  Note that any components which are missing from the URL "
-"(e.g., there is no username in the example above) will be set to empty; if "
-"you want to provide a URL and override some attributes, provide the URL "
-"attribute first, followed by any overrides."
+"Apply the changes introduced by all commits that are ancestors of maint or "
+"next, but not master or any of its ancestors.  Note that the latter does not "
+"mean `maint` and everything between `master` and `next`; specifically, "
+"`maint` will not be used if it is included in `master`."
 msgstr ""
 
-#. type: Title =
-#: en/git-cvsexportcommit.txt:2
+#. type: Labeled list
+#: en/git-cherry-pick.txt:177
 #, no-wrap
-msgid "git-cvsexportcommit(1)"
+msgid "`git cherry-pick master~4 master~2`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsexportcommit.txt:7
-msgid "git-cvsexportcommit - Export a single commit to a CVS checkout"
+#: en/git-cherry-pick.txt:182
+msgid ""
+"Apply the changes introduced by the fifth and third last commits pointed to "
+"by master and create 2 new commits with these changes."
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsexportcommit.txt:14
+#. type: Labeled list
+#: en/git-cherry-pick.txt:183
 #, no-wrap
-msgid ""
-"'git cvsexportcommit' [-h] [-u] [-v] [-c] [-P] [-p] [-a] [-d cvsroot]\n"
-"\t[-w cvsworkdir] [-W] [-f] [-m msgprefix] [PARENTCOMMIT] COMMITID\n"
+msgid "`git cherry-pick -n master~1 next`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsexportcommit.txt:20
+#: en/git-cherry-pick.txt:189
 msgid ""
-"Exports a commit from Git to a CVS checkout, making it easier to merge "
-"patches from a Git repository into a CVS repository."
+"Apply to the working tree and the index the changes introduced by the second "
+"last commit pointed to by master and by the last commit pointed to by next, "
+"but do not create any commit with these changes."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-cherry-pick.txt:190
+#, no-wrap
+msgid "`git cherry-pick --ff ..next`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsexportcommit.txt:24
+#: en/git-cherry-pick.txt:197
 msgid ""
-"Specify the name of a CVS checkout using the -w switch or execute it from "
-"the root of the CVS working copy. In the latter case GIT_DIR must be "
-"defined. See examples below."
+"If history is linear and HEAD is an ancestor of next, update the working "
+"tree and advance the HEAD pointer to match next.  Otherwise, apply the "
+"changes introduced by those commits that are in next but not HEAD to the "
+"current branch, creating a new commit for each new change."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-cherry-pick.txt:198
+#, no-wrap
+msgid "`git rev-list --reverse master -- README | git cherry-pick -n --stdin`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsexportcommit.txt:28
+#: en/git-cherry-pick.txt:204
 msgid ""
-"It does its best to do the safe thing, it will check that the files are "
-"unchanged and up to date in the CVS checkout, and it will not autocommit by "
-"default."
+"Apply the changes introduced by all commits on the master branch that "
+"touched README to the working tree and index, so the result can be inspected "
+"and made into a single new commit if suitable."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsexportcommit.txt:30
-msgid "Supports file additions, removals, and commits that affect binary files."
+#: en/git-cherry-pick.txt:208
+msgid ""
+"The following sequence attempts to backport a patch, bails out because the "
+"code the patch applies to has changed too much, and then tries again, this "
+"time exercising more care about matching up context lines."
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsexportcommit.txt:33
+#. type: delimited block -
+#: en/git-cherry-pick.txt:214
+#, no-wrap
 msgid ""
-"If the commit is a merge commit, you must tell 'git cvsexportcommit' what "
-"parent the changeset should be done against."
+"$ git cherry-pick topic^             <1>\n"
+"$ git diff                           <2>\n"
+"$ git reset --merge ORIG_HEAD        <3>\n"
+"$ git cherry-pick -Xpatience topic^  <4>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsexportcommit.txt:40
+#: en/git-cherry-pick.txt:219
 msgid ""
-"Commit automatically if the patch applied cleanly. It will not commit if any "
-"hunks fail to apply or there were other problems."
+"apply the change that would be shown by `git show topic^`.  In this example, "
+"the patch does not apply cleanly, so information about the conflict is "
+"written to the index and working tree and no new commit results."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsexportcommit.txt:44
-msgid "Be pedantic (paranoid) when applying patches. Invokes patch with --fuzz=0"
+#: en/git-cherry-pick.txt:220
+msgid "summarize changes to be reconciled"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsexportcommit.txt:48
+#: en/git-cherry-pick.txt:223
 msgid ""
-"Add authorship information. Adds Author line, and Committer (if different "
-"from Author) to the message."
+"cancel the cherry-pick.  In other words, return to the pre-cherry-pick "
+"state, preserving any local modifications you had in the working tree."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsexportcommit.txt:53
+#: en/git-cherry-pick.txt:226
 msgid ""
-"Set an alternative CVSROOT to use.  This corresponds to the CVS -d "
-"parameter.  Usually users will not want to set this, except if using CVS in "
-"an asymmetric fashion."
+"try to apply the change introduced by `topic^` again, spending extra time to "
+"avoid mistakes based on incorrectly matching context lines."
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsexportcommit.txt:56
-msgid "Force the merge even if the files are not up to date."
+#. type: Title =
+#: en/git-cherry.txt:2
+#, no-wrap
+msgid "git-cherry(1)"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cvsexportcommit.txt:57 en/git-grep.txt:162
-#, no-wrap
-msgid "-P"
+#. type: Plain text
+#: en/git-cherry.txt:7
+msgid "git-cherry - Find commits yet to be applied to upstream"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsexportcommit.txt:59
-msgid "Force the parent commit, even if it is not a direct parent."
+#: en/git-cherry.txt:12
+#, no-wrap
+msgid "'git cherry' [-v] [<upstream> [<head> [<limit>]]]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsexportcommit.txt:63
+#: en/git-cherry.txt:17
 msgid ""
-"Prepend the commit message with the provided prefix.  Useful for patch "
-"series and the like."
+"Determine whether there are commits in `<head>..<upstream>` that are "
+"equivalent to those in the range `<limit>..<head>`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsexportcommit.txt:66
-msgid "Update affected files from CVS repository before attempting export."
+#: en/git-cherry.txt:22
+msgid ""
+"The equivalence test is based on the diff, after removing whitespace and "
+"line numbers.  git-cherry therefore detects when commits have been \"copied"
+"\" by means of linkgit:git-cherry-pick[1], linkgit:git-am[1] or linkgit:git-"
+"rebase[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsexportcommit.txt:70
+#: en/git-cherry.txt:26
 msgid ""
-"Reverse CVS keyword expansion (e.g. $Revision: 1.2.3.4$ becomes $Revision$) "
-"in working CVS checkout before applying patch."
+"Outputs the SHA1 of every commit in `<limit>..<head>`, prefixed with `-` for "
+"commits that have an equivalent in <upstream>, and `+` for commits that do "
+"not."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsexportcommit.txt:76
-msgid ""
-"Specify the location of the CVS checkout to use for the export. This option "
-"does not require GIT_DIR to be set before execution if the current directory "
-"is within a Git repository.  The default is the value of "
-"'cvsexportcommit.cvsdir'."
+#: en/git-cherry.txt:31
+msgid "Show the commit subjects next to the SHA1s."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cvsexportcommit.txt:77 en/git-grep.txt:246 en/diff-options.txt:546
+#: en/git-cherry.txt:32 en/git-rebase.txt:220
 #, no-wrap
-msgid "-W"
+msgid "<upstream>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsexportcommit.txt:81
+#: en/git-cherry.txt:35
 msgid ""
-"Tell cvsexportcommit that the current working directory is not only a Git "
-"checkout, but also the CVS checkout.  Therefore, Git will reset the working "
-"directory to the parent commit before proceeding."
-msgstr ""
-
-#. type: Plain text
-#: en/git-cvsexportcommit.txt:84
-msgid "Verbose."
+"Upstream branch to search for equivalent commits.  Defaults to the upstream "
+"branch of HEAD."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cvsexportcommit.txt:87
+#: en/git-cherry.txt:36 en/git.txt:347
 #, no-wrap
-msgid "cvsexportcommit.cvsdir"
+msgid "<head>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsexportcommit.txt:89
-msgid "The default location of the CVS checkout to use for the export."
+#: en/git-cherry.txt:38 en/git-rebase.txt:227
+msgid "Working branch; defaults to HEAD."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cvsexportcommit.txt:93
-#, no-wrap
-msgid "Merge one patch into CVS"
+#. type: Plain text
+#: en/git-cherry.txt:41
+msgid "Do not report commits up to (and including) limit."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cvsexportcommit.txt:100
+#. type: Title ~
+#: en/git-cherry.txt:46
 #, no-wrap
-msgid ""
-"$ export GIT_DIR=~/project/.git\n"
-"$ cd ~/project_cvs_checkout\n"
-"$ git cvsexportcommit -v <commit-sha1>\n"
-"$ cvs commit -F .msg <files>\n"
+msgid "Patch workflows"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cvsexportcommit.txt:102
-#, no-wrap
+#. type: Plain text
+#: en/git-cherry.txt:52
 msgid ""
-"Merge one patch into CVS (-c and -w options). The working directory is "
-"within the Git Repo"
+"git-cherry is frequently used in patch-based workflows (see linkgit:"
+"gitworkflows[7]) to determine if a series of patches has been applied by the "
+"upstream maintainer.  In such a workflow you might create and send a topic "
+"branch like this:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-cvsexportcommit.txt:106
-#, no-wrap
-msgid "\t$ git cvsexportcommit -v -c -w ~/project_cvs_checkout <commit-sha1>\n"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-cvsexportcommit.txt:108
+#: en/git-cherry.txt:58
 #, no-wrap
 msgid ""
-"Merge pending patches into CVS automatically -- only if you really know what "
-"you are doing"
+"$ git checkout -b topic origin/master\n"
+"# work and create some commits\n"
+"$ git format-patch origin/master\n"
+"$ git send-email ... 00*\n"
+msgstr ""
+
+#. type: Plain text
+#: en/git-cherry.txt:62
+msgid ""
+"Later, you can see whether your changes have been applied by saying (still "
+"on `topic`):"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-cvsexportcommit.txt:114
+#: en/git-cherry.txt:66
 #, no-wrap
 msgid ""
-"$ export GIT_DIR=~/project/.git\n"
-"$ cd ~/project_cvs_checkout\n"
-"$ git cherry cvshead myhead | sed -n 's/^+ //p' | xargs -l1 git "
-"cvsexportcommit -c -p -v\n"
+"$ git fetch  # update your notion of origin/master\n"
+"$ git cherry -v\n"
 msgstr ""
 
-#. type: Title =
-#: en/git-cvsimport.txt:2
+#. type: Title ~
+#: en/git-cherry.txt:69
 #, no-wrap
-msgid "git-cvsimport(1)"
+msgid "Concrete example"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:7
-msgid "git-cvsimport - Salvage your data out of another SCM people love to hate"
+#: en/git-cherry.txt:73
+msgid ""
+"In a situation where topic consisted of three commits, and the maintainer "
+"applied two of them, the situation might look like:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsimport.txt:17
+#. type: delimited block -
+#: en/git-cherry.txt:86
 #, no-wrap
 msgid ""
-"'git cvsimport' [-o <branch-for-HEAD>] [-h] [-v] [-d <CVSROOT>]\n"
-"\t      [-A <author-conv-file>] [-p <options-for-cvsps>] [-P <file>]\n"
-"\t      [-C <git_repository>] [-z <fuzz>] [-i] [-k] [-u] [-s <subst>]\n"
-"\t      [-a] [-m] [-M <regex>] [-S <regex>] [-L <commitlimit>]\n"
-"\t      [-r <remote>] [-R] [<CVS_module>]\n"
+"$ git log --graph --oneline --decorate --boundary origin/master...topic\n"
+"* 7654321 (origin/master) upstream tip commit\n"
+"[... snip some other commits ...]\n"
+"* cccc111 cherry-pick of C\n"
+"* aaaa111 cherry-pick of A\n"
+"[... snip a lot more that has happened ...]\n"
+"| * cccc000 (topic) commit C\n"
+"| * bbbb000 commit B\n"
+"| * aaaa000 commit A\n"
+"|/\n"
+"o 1234567 branch point\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:26
+#: en/git-cherry.txt:90
+msgid ""
+"In such cases, git-cherry shows a concise summary of what has yet to be "
+"applied:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-cherry.txt:96
 #, no-wrap
 msgid ""
-"*WARNING:* `git cvsimport` uses cvsps version 2, which is considered\n"
-"deprecated; it does not work with cvsps version 3 and later.  If you are\n"
-"performing a one-shot import of a CVS repository consider using\n"
-"http://cvs2svn.tigris.org/cvs2git.html[cvs2git] or\n"
-"http://www.catb.org/esr/cvs-fast-export/[cvs-fast-export].\n"
+"$ git cherry origin/master topic\n"
+"- cccc000... commit C\n"
+"+ bbbb000... commit B\n"
+"- aaaa000... commit A\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:29
+#: en/git-cherry.txt:102
 msgid ""
-"Imports a CVS repository into Git. It will either create a new repository, "
-"or incrementally import into an existing one."
+"Here, we see that the commits A and C (marked with `-`) can be dropped from "
+"your `topic` branch when you rebase it on top of `origin/master`, while the "
+"commit B (marked with `+`) still needs to be kept so that it will be sent to "
+"be applied to `origin/master`."
+msgstr ""
+
+#. type: Title ~
+#: en/git-cherry.txt:105
+#, no-wrap
+msgid "Using a limit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:32
+#: en/git-cherry.txt:110
 msgid ""
-"Splitting the CVS log into patch sets is done by 'cvsps'.  At least version "
-"2.1 is required."
+"The optional <limit> is useful in cases where your topic is based on other "
+"work that is not in upstream.  Expanding on the previous example, this might "
+"look like:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsimport.txt:35
+#. type: delimited block -
+#: en/git-cherry.txt:126
 #, no-wrap
 msgid ""
-"*WARNING:* for certain situations the import leads to incorrect results.\n"
-"Please see the section <<issues,ISSUES>> for further reference.\n"
+"$ git log --graph --oneline --decorate --boundary origin/master...topic\n"
+"* 7654321 (origin/master) upstream tip commit\n"
+"[... snip some other commits ...]\n"
+"* cccc111 cherry-pick of C\n"
+"* aaaa111 cherry-pick of A\n"
+"[... snip a lot more that has happened ...]\n"
+"| * cccc000 (topic) commit C\n"
+"| * bbbb000 commit B\n"
+"| * aaaa000 commit A\n"
+"| * 0000fff (base) unpublished stuff F\n"
+"[... snip ...]\n"
+"| * 0000aaa unpublished stuff A\n"
+"|/\n"
+"o 1234567 merge-base between upstream and topic\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:42
+#: en/git-cherry.txt:130
 msgid ""
-"You should *never* do any work of your own on the branches that are created "
-"by 'git cvsimport'.  By default initial import will create and populate a "
-"\"master\" branch from the CVS repository's main branch which you're free to "
-"work with; after that, you need to 'git merge' incremental imports, or any "
-"CVS branches, yourself.  It is advisable to specify a named remote via -r to "
-"separate and protect the incoming branches."
+"By specifying `base` as the limit, you can avoid listing commits between "
+"`base` and `topic`:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsimport.txt:48
+#. type: delimited block -
+#: en/git-cherry.txt:136
+#, no-wrap
 msgid ""
-"If you intend to set up a shared public repository that all developers can "
-"read/write, or if you want to use linkgit:git-cvsserver[1], then you "
-"probably want to make a bare clone of the imported repository, and use the "
-"clone as the shared repository.  See linkgit:gitcvs-migration[7]."
+"$ git cherry origin/master topic base\n"
+"- cccc000... commit C\n"
+"+ bbbb000... commit B\n"
+"- aaaa000... commit A\n"
+msgstr ""
+
+#. type: Title =
+#: en/git-citool.txt:2
+#, no-wrap
+msgid "git-citool(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:54
-msgid "Verbosity: let 'cvsimport' report what it is doing."
+#: en/git-citool.txt:7
+msgid "git-citool - Graphical alternative to git-commit"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cvsimport.txt:55
+#. type: Plain text
+#: en/git-citool.txt:12
 #, no-wrap
-msgid "-d <CVSROOT>"
+msgid "'git citool'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:61
+#: en/git-citool.txt:19
 msgid ""
-"The root of the CVS archive. May be local (a simple path) or remote; "
-"currently, only the :local:, :ext: and :pserver: access methods are "
-"supported. If not given, 'git cvsimport' will try to read it from "
-"`CVS/Root`. If no such file exists, it checks for the `CVSROOT` environment "
-"variable."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-cvsimport.txt:62
-#, no-wrap
-msgid "<CVS_module>"
+"A Tcl/Tk based graphical interface to review modified files, stage them into "
+"the index, enter a commit message and record the new commit onto the current "
+"branch.  This interface is an alternative to the less interactive 'git "
+"commit' program."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:66
+#: en/git-citool.txt:22
 msgid ""
-"The CVS module you want to import. Relative to <CVSROOT>.  If not given, "
-"'git cvsimport' tries to read it from `CVS/Repository`."
+"'git citool' is actually a standard alias for `git gui citool`.  See linkgit:"
+"git-gui[1] for more details."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cvsimport.txt:67
+#. type: Title =
+#: en/git-clean.txt:2
 #, no-wrap
-msgid "-C <target-dir>"
+msgid "git-clean(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:69
-msgid "The Git repository to import to.  If the directory doesn't"
+#: en/git-clean.txt:7
+msgid "git-clean - Remove untracked files from the working tree"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:70
+#: en/git-clean.txt:12
 #, no-wrap
-msgid "exist, it will be created.  Default is the current directory.\n"
+msgid "'git clean' [-d] [-f] [-i] [-n] [-q] [-e <pattern>] [-x | -X] [--] <path>...\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cvsimport.txt:71
-#, no-wrap
-msgid "-r <remote>"
+#. type: Plain text
+#: en/git-clean.txt:18
+msgid ""
+"Cleans the working tree by recursively removing files that are not under "
+"version control, starting from the current directory."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:75
+#: en/git-clean.txt:22
 msgid ""
-"The Git remote to import this CVS repository into.  Moves all CVS branches "
-"into remotes/<remote>/<branch> akin to the way 'git clone' uses 'origin' by "
-"default."
+"Normally, only files unknown to Git are removed, but if the `-x` option is "
+"specified, ignored files are also removed. This can, for example, be useful "
+"to remove all build products."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cvsimport.txt:76
-#, no-wrap
-msgid "-o <branch-for-HEAD>"
+#. type: Plain text
+#: en/git-clean.txt:25
+msgid ""
+"If any optional `<path>...` arguments are given, only those paths are "
+"affected."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:84
+#: en/git-clean.txt:33
 msgid ""
-"When no remote is specified (via -r) the `HEAD` branch from CVS is imported "
-"to the 'origin' branch within the Git repository, as `HEAD` already has a "
-"special meaning for Git.  When a remote is specified the `HEAD` branch is "
-"named remotes/<remote>/master mirroring 'git clone' behaviour.  Use this "
-"option if you want to import into a different branch."
+"Remove untracked directories in addition to untracked files.  If an "
+"untracked directory is managed by a different Git repository, it is not "
+"removed by default.  Use -f option twice if you really want to remove such a "
+"directory."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:87
+#: en/git-clean.txt:41
 msgid ""
-"Use '-o master' for continuing an import that was initially done by the old "
-"cvs2git tool."
+"If the Git configuration variable clean.requireForce is not set to false, "
+"'git clean' will refuse to delete files or directories unless given -f, -n "
+"or -i. Git will refuse to delete directories with .git sub directory or file "
+"unless a second -f is given."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:92
+#: en/git-clean.txt:46
 msgid ""
-"Import-only: don't perform a checkout after importing.  This option ensures "
-"the working directory and index remain untouched and will not create them if "
-"they do not exist."
+"Show what would be done and clean files interactively. See ``Interactive "
+"mode'' for details."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:97
-msgid ""
-"Kill keywords: will extract files with '-kk' from the CVS archive to avoid "
-"noisy changesets. Highly recommended, but off by default to preserve "
-"compatibility with early imported trees."
+#: en/git-clean.txt:50
+msgid "Don't actually remove anything, just show what would be done."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:100
-msgid "Convert underscores in tag and branch names to dots."
+#: en/git-clean.txt:55
+msgid ""
+"Be quiet, only report errors, but not the files that are successfully "
+"removed."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cvsimport.txt:101
+#: en/git-clean.txt:56
 #, no-wrap
-msgid "-s <subst>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-cvsimport.txt:103
-msgid "Substitute the character \"/\" in branch names with <subst>"
+msgid "-e <pattern>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cvsimport.txt:104
+#: en/git-clean.txt:57 en/git-ls-files.txt:85 en/git-name-rev.txt:33
 #, no-wrap
-msgid "-p <options-for-cvsps>"
+msgid "--exclude=<pattern>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:107
+#: en/git-clean.txt:61
 msgid ""
-"Additional options for cvsps.  The options `-u` and '-A' are implicit and "
-"should not be used here."
+"In addition to those found in .gitignore (per directory) and $GIT_DIR/info/"
+"exclude, also consider these patterns to be in the set of the ignore rules "
+"in effect."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:109
-msgid "If you need to pass multiple options, separate them with a comma."
+#: en/git-clean.txt:69
+msgid ""
+"Don't use the standard ignore rules read from .gitignore (per directory) and "
+"$GIT_DIR/info/exclude, but do still use the ignore rules given with `-e` "
+"options.  This allows removing all untracked files, including build "
+"products.  This can be used (possibly in conjunction with 'git reset') to "
+"create a pristine working directory to test a clean build."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cvsimport.txt:110
+#: en/git-clean.txt:70
 #, no-wrap
-msgid "-z <fuzz>"
+msgid "-X"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:113
+#: en/git-clean.txt:73
 msgid ""
-"Pass the timestamp fuzz factor to cvsps, in seconds. If unset, cvsps "
-"defaults to 300s."
+"Remove only files ignored by Git.  This may be useful to rebuild everything "
+"from scratch, but keep manually created files."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cvsimport.txt:114
+#. type: Title -
+#: en/git-clean.txt:75
 #, no-wrap
-msgid "-P <cvsps-output-file>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-cvsimport.txt:117
-msgid ""
-"Instead of calling cvsps, read the provided cvsps output file. Useful for "
-"debugging or when cvsps is being handled outside cvsimport."
+msgid "Interactive mode"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:122
+#: en/git-clean.txt:79
 msgid ""
-"Attempt to detect merges based on the commit message. This option will "
-"enable default regexes that try to capture the source branch name from the "
-"commit message."
+"When the command enters the interactive mode, it shows the files and "
+"directories to be cleaned, and goes into its interactive command loop."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-cvsimport.txt:123
+#. type: delimited block -
+#: en/git-clean.txt:90
 #, no-wrap
-msgid "-M <regex>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-cvsimport.txt:127
 msgid ""
-"Attempt to detect merges based on the commit message with a custom regex. It "
-"can be used with `-m` to enable the default regexes as well. You must escape "
-"forward slashes."
+"    *** Commands ***\n"
+"\t1: clean                2: filter by pattern    3: select by numbers\n"
+"\t4: ask each             5: quit                 6: help\n"
+"    What now> 1\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:129
-msgid "The regex must capture the source branch name in $1."
+#: en/git-clean.txt:93
+msgid ""
+"You also could say `c` or `clean` above as long as the choice is unique."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:131
-msgid "This option can be used several times to provide several detection regexes."
+#: en/git-clean.txt:95
+msgid "The main command loop has 6 subcommands."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cvsimport.txt:132
+#: en/git-clean.txt:96
 #, no-wrap
-msgid "-S <regex>"
+msgid "clean"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:134
-msgid "Skip paths matching the regex."
+#: en/git-clean.txt:99
+msgid "Start cleaning files and directories, and then quit."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-clean.txt:100
+#, no-wrap
+msgid "filter by pattern"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:138
+#: en/git-clean.txt:108
 msgid ""
-"Import all commits, including recent ones. cvsimport by default skips "
-"commits that have a timestamp less than 10 minutes ago."
+"This shows the files and directories to be deleted and issues an \"Input "
+"ignore patterns>>\" prompt. You can input space-separated patterns to "
+"exclude files and directories from deletion.  E.g. \"*.c *.h\" will excludes "
+"files end with \".c\" and \".h\" from deletion. When you are satisfied with "
+"the filtered result, press ENTER (empty) back to the main menu."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cvsimport.txt:139
+#: en/git-clean.txt:109
 #, no-wrap
-msgid "-L <limit>"
+msgid "select by numbers"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:142
+#: en/git-clean.txt:120
 msgid ""
-"Limit the number of commits imported. Workaround for cases where cvsimport "
-"leaks memory."
+"This shows the files and directories to be deleted and issues an \"Select "
+"items to delete>>\" prompt. When the prompt ends with double '>>' like this, "
+"you can make more than one selection, concatenated with whitespace or "
+"comma.  Also you can say ranges.  E.g. \"2-5 7,9\" to choose 2,3,4,5,7,9 "
+"from the list.  If the second number in a range is omitted, all remaining "
+"items are selected.  E.g. \"7-\" to choose 7,8,9 from the list.  You can say "
+"'*' to choose everything.  Also when you are satisfied with the filtered "
+"result, press ENTER (empty) back to the main menu."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cvsimport.txt:143
+#: en/git-clean.txt:121
 #, no-wrap
-msgid "-A <author-conv-file>"
+msgid "ask each"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:148
+#: en/git-clean.txt:126
 msgid ""
-"CVS by default uses the Unix username when writing its commit logs. Using "
-"this option and an author-conv-file maps the name recorded in CVS to author "
-"name, e-mail and optional time zone:"
+"This will start to clean, and you must confirm one by one in order to delete "
+"items. Please note that this action is not as efficient as the above two "
+"actions."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cvsimport.txt:152
+#. type: Labeled list
+#: en/git-clean.txt:127
 #, no-wrap
-msgid ""
-"\texon=Andreas Ericsson <ae@op5.se>\n"
-"\tspawn=Simon Pawn <spawn@frog-pond.org> America/Chicago\n"
+msgid "quit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:159
-msgid ""
-"'git cvsimport' will make it appear as those authors had their "
-"GIT_AUTHOR_NAME and GIT_AUTHOR_EMAIL set properly all along.  If a time zone "
-"is specified, GIT_AUTHOR_DATE will have the corresponding offset applied."
+#: en/git-clean.txt:130
+msgid "This lets you quit without do cleaning."
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsimport.txt:163
-msgid ""
-"For convenience, this data is saved to `$GIT_DIR/cvs-authors` each time the "
-"'-A' option is provided and read from that same file each time 'git "
-"cvsimport' is run."
+#. type: Labeled list
+#: en/git-clean.txt:131
+#, no-wrap
+msgid "help"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:167
-msgid ""
-"It is not recommended to use this feature if you intend to export changes "
-"back to CVS again later with 'git cvsexportcommit'."
+#: en/git-clean.txt:134
+msgid "Show brief usage of interactive git-clean."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:173
-msgid ""
-"Generate a `$GIT_DIR/cvs-revisions` file containing a mapping from CVS "
-"revision numbers to newly-created Git commit IDs.  The generated file will "
-"contain one line for each (filename, revision) pair imported; each line will "
-"look like"
+#: en/git-clean.txt:138 en/git-status.txt:432
+msgid "linkgit:gitignore[5]"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cvsimport.txt:176
+#. type: Title =
+#: en/git-clone.txt:2
 #, no-wrap
-msgid "src/widget.c 1.1 1d862f173cdc7325b6fa6d2ae1cfd61fd1b512b7\n"
+msgid "git-clone(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:180
-msgid ""
-"The revision data is appended to the file if it already exists, for use when "
-"doing incremental imports."
+#: en/git-clone.txt:7
+msgid "git-clone - Clone a repository into a new directory"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:183
+#: en/git-clone.txt:19
+#, no-wrap
 msgid ""
-"This option may be useful if you have CVS revision numbers stored in commit "
-"messages, bug-tracking systems, email archives, and the like."
+"'git clone' [--template=<template_directory>]\n"
+"\t  [-l] [-s] [--no-hardlinks] [-q] [-n] [--bare] [--mirror]\n"
+"\t  [-o <name>] [-b <name>] [-u <upload-pack>] [--reference <repository>]\n"
+"\t  [--dissociate] [--separate-git-dir <git dir>]\n"
+"\t  [--depth <depth>] [--[no-]single-branch] [--no-tags]\n"
+"\t  [--recurse-submodules[=<pathspec>]] [--[no-]shallow-submodules]\n"
+"\t  [--jobs <n>] [--] <repository> [<directory>]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:186
-msgid "Print a short usage message and exit."
+#: en/git-clone.txt:28
+msgid ""
+"Clones a repository into a newly created directory, creates remote-tracking "
+"branches for each branch in the cloned repository (visible using `git branch "
+"-r`), and creates and checks out an initial branch that is forked from the "
+"cloned repository's currently active branch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:190
-msgid "If `-v` is specified, the script reports what it is doing."
+#: en/git-clone.txt:34
+msgid ""
+"After the clone, a plain `git fetch` without arguments will update all the "
+"remote-tracking branches, and a `git pull` without arguments will in "
+"addition merge the remote master branch into the current master branch, if "
+"any (this is untrue when \"--single-branch\" is given; see below)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:193
+#: en/git-clone.txt:39
 msgid ""
-"Otherwise, success is indicated the Unix way, i.e. by simply exiting with a "
-"zero exit status."
+"This default configuration is achieved by creating references to the remote "
+"branch heads under `refs/remotes/origin` and by initializing `remote.origin."
+"url` and `remote.origin.fetch` configuration variables."
 msgstr ""
 
-#. type: Title -
-#: en/git-cvsimport.txt:196
+#. type: Labeled list
+#: en/git-clone.txt:43 en/git-config.txt:127 en/git-instaweb.txt:24
+#: en/git-pack-objects.txt:142 en/git-svn.txt:245
 #, no-wrap
-msgid "ISSUES"
-msgstr ""
-
-#. type: Plain text
-#: en/git-cvsimport.txt:198
-msgid "Problems related to timestamps:"
+msgid "--local"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:202
+#: en/git-clone.txt:51
 msgid ""
-"If timestamps of commits in the CVS repository are not stable enough to be "
-"used for ordering commits changes may show up in the wrong order."
+"When the repository to clone from is on a local machine, this flag bypasses "
+"the normal \"Git aware\" transport mechanism and clones the repository by "
+"making a copy of HEAD and everything under objects and refs directories.  "
+"The files under `.git/objects/` directory are hardlinked to save space when "
+"possible."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:204
+#: en/git-clone.txt:58
 msgid ""
-"If any files were ever \"cvs import\"ed more than once (e.g., import of more "
-"than one vendor release) the HEAD contains the wrong content."
+"If the repository is specified as a local path (e.g., `/path/to/repo`), this "
+"is the default, and --local is essentially a no-op.  If the repository is "
+"specified as a URL, then this flag is ignored (and we never use the local "
+"optimizations).  Specifying `--no-local` will override the default when `/"
+"path/to/repo` is given, using the regular Git transport instead."
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsimport.txt:207
-msgid ""
-"If the timestamp order of different files cross the revision order within "
-"the commit matching time window the order of commits may be wrong."
+#. type: Labeled list
+#: en/git-clone.txt:59
+#, no-wrap
+msgid "--no-hardlinks"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:209
-msgid "Problems related to branches:"
+#: en/git-clone.txt:64
+msgid ""
+"Force the cloning process from a repository on a local filesystem to copy "
+"the files under the `.git/objects` directory instead of using hardlinks. "
+"This may be desirable if you are trying to make a back-up of your repository."
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsimport.txt:211
-msgid "Branches on which no commits have been made are not imported."
+#. type: Labeled list
+#: en/git-clone.txt:65
+#, no-wrap
+msgid "--shared"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:213
+#: en/git-clone.txt:72
 msgid ""
-"All files from the branching point are added to a branch even if never added "
-"in CVS."
+"When the repository to clone is on the local machine, instead of using hard "
+"links, automatically setup `.git/objects/info/alternates` to share the "
+"objects with the source repository.  The resulting repository starts out "
+"without any object of its own."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:216
+#: en/git-clone.txt:82
+#, no-wrap
 msgid ""
-"This applies to files added to the source branch *after* a daughter branch "
-"was created: if previously no commit was made on the daughter branch they "
-"will erroneously be added to the daughter branch in git."
+"*NOTE*: this is a possibly dangerous operation; do *not* use\n"
+"it unless you understand what it does. If you clone your\n"
+"repository using this option and then delete branches (or use any\n"
+"other Git command that makes any existing commit unreferenced) in the\n"
+"source repository, some objects may become unreferenced (or dangling).\n"
+"These objects may be removed by normal Git operations (such as `git commit`)\n"
+"which automatically call `git gc --auto`. (See linkgit:git-gc[1].)\n"
+"If these objects are removed and were referenced by the cloned repository,\n"
+"then the cloned repository will become corrupt.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:218
-msgid "Problems related to tags:"
+#: en/git-clone.txt:88
+msgid ""
+"Note that running `git repack` without the `-l` option in a repository "
+"cloned with `-s` will copy objects from the source repository into a pack in "
+"the cloned repository, removing the disk space savings of `clone -s`.  It is "
+"safe, however, to run `git gc`, which uses the `-l` option by default."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:220
-msgid "Multiple tags on the same revision are not imported."
+#: en/git-clone.txt:92
+msgid ""
+"If you want to break the dependency of a repository cloned with `-s` on its "
+"source repository, you can simply run `git repack -a` to copy all objects "
+"from the source repository into a pack in the cloned repository."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-clone.txt:93
+#, no-wrap
+msgid "--reference[-if-able] <repository>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:223
+#: en/git-clone.txt:103
 msgid ""
-"If you suspect that any of these issues may apply to the repository you want "
-"to import, consider using cvs2git:"
+"If the reference repository is on the local machine, automatically setup `."
+"git/objects/info/alternates` to obtain objects from the reference "
+"repository.  Using an already existing repository as an alternate will "
+"require fewer objects to be copied from the repository being cloned, "
+"reducing network and local storage costs.  When using the `--reference-if-"
+"able`, a non existing directory is skipped with a warning instead of "
+"aborting the clone."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsimport.txt:225
-msgid "cvs2git (part of cvs2svn), `http://subversion.apache.org/`"
+#: en/git-clone.txt:106
+#, no-wrap
+msgid ""
+"*NOTE*: see the NOTE for the `--shared` option, and also the\n"
+"`--dissociate` option.\n"
 msgstr ""
 
-#. type: Title =
-#: en/git-cvsserver.txt:2
+#. type: Labeled list
+#: en/git-clone.txt:107 en/git-submodule.txt:380
 #, no-wrap
-msgid "git-cvsserver(1)"
+msgid "--dissociate"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:7
-msgid "git-cvsserver - A CVS server emulator for Git"
+#: en/git-clone.txt:117
+msgid ""
+"Borrow the objects from reference repositories specified with the `--"
+"reference` options only to reduce network transfer, and stop borrowing from "
+"them after a clone is made by making necessary local copies of borrowed "
+"objects.  This option can also be used when cloning locally from a "
+"repository that already borrows objects from another repository--the new "
+"repository will borrow objects from the same repository, and this option can "
+"be used to stop the borrowing."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:12
-msgid "SSH:"
+#: en/git-clone.txt:122
+msgid ""
+"Operate quietly.  Progress is not reported to the standard error stream."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:16
-#, no-wrap
+#: en/git-clone.txt:127
 msgid ""
-"export CVS_SERVER=\"git cvsserver\"\n"
-"'cvs' -d :ext:user@server/path/repo.git co <HEAD_name>\n"
+"Run verbosely. Does not affect the reporting of progress status to the "
+"standard error stream."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:18
-msgid "pserver (/etc/inetd.conf):"
+#: en/git-clone.txt:137
+msgid "No checkout of HEAD is performed after the clone is complete."
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsserver.txt:21
+#. type: Labeled list
+#: en/git-clone.txt:138 en/git-init.txt:46 en/git-p4.txt:305 en/git.txt:133
 #, no-wrap
-msgid ""
-"cvspserver stream tcp nowait nobody /usr/bin/git-cvsserver git-cvsserver "
-"pserver\n"
+msgid "--bare"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:23
-msgid "Usage:"
+#: en/git-clone.txt:149
+msgid ""
+"Make a 'bare' Git repository.  That is, instead of creating `<directory>` "
+"and placing the administrative files in `<directory>/.git`, make the "
+"`<directory>` itself the `$GIT_DIR`. This obviously implies the `-n` because "
+"there is nowhere to check out the working tree.  Also the branch heads at "
+"the remote are copied directly to corresponding local branch heads, without "
+"mapping them to `refs/remotes/origin/`.  When this option is used, neither "
+"remote-tracking branches nor the related configuration variables are created."
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsserver.txt:26
+#. type: Labeled list
+#: en/git-clone.txt:150 en/git-push.txt:161
 #, no-wrap
-msgid "'git-cvsserver' [options] [pserver|server] [<directory> ...]\n"
+msgid "--mirror"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:33
+#: en/git-clone.txt:157
 msgid ""
-"All these options obviously only make sense if enforced by the server side.  "
-"They have been implemented to resemble the linkgit:git-daemon[1] options as "
-"closely as possible."
+"Set up a mirror of the source repository.  This implies `--bare`.  Compared "
+"to `--bare`, `--mirror` not only maps local branches of the source to local "
+"branches of the target, it maps all refs (including remote-tracking "
+"branches, notes etc.) and sets up a refspec configuration such that all "
+"these refs are overwritten by a `git remote update` in the target repository."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cvsserver.txt:34
+#: en/git-clone.txt:158
 #, no-wrap
-msgid "--base-path <path>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-cvsserver.txt:36
-msgid "Prepend 'path' to requested CVSROOT"
+msgid "--origin <name>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cvsserver.txt:37 en/git-daemon.txt:48
+#: en/git-clone.txt:159
 #, no-wrap
-msgid "--strict-paths"
+msgid "-o <name>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:39
-msgid "Don't allow recursing into subdirectories"
+#: en/git-clone.txt:162
+msgid ""
+"Instead of using the remote name `origin` to keep track of the upstream "
+"repository, use `<name>`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cvsserver.txt:40 en/git-daemon.txt:77
+#: en/git-clone.txt:163
 #, no-wrap
-msgid "--export-all"
-msgstr ""
-
-#. type: Plain text
-#: en/git-cvsserver.txt:43
-msgid ""
-"Don't check for `gitcvs.enabled` in config. You also have to specify a list "
-"of allowed directories (see below) if you want to use this option."
+msgid "--branch <name>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cvsserver.txt:44
+#: en/git-clone.txt:164
 #, no-wrap
-msgid "-V"
+msgid "-b <name>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:47
-msgid "Print version information and exit"
+#: en/git-clone.txt:171
+msgid ""
+"Instead of pointing the newly created HEAD to the branch pointed to by the "
+"cloned repository's HEAD, point to `<name>` branch instead. In a non-bare "
+"repository, this is the branch that will be checked out.  `--branch` can "
+"also take tags and detaches the HEAD at that commit in the resulting "
+"repository."
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsserver.txt:52
-msgid "Print usage information and exit"
+#. type: Labeled list
+#: en/git-clone.txt:173
+#, no-wrap
+msgid "-u <upload-pack>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:58
+#: en/git-clone.txt:177
 msgid ""
-"You can specify a list of allowed directories. If no directories are given, "
-"all are allowed. This is an additional restriction, gitcvs access still "
-"needs to be enabled by the `gitcvs.enabled` config option unless "
-"`--export-all` was given, too."
+"When given, and the repository to clone from is accessed via ssh, this "
+"specifies a non-default path for the command run on the other end."
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsserver.txt:64
-msgid "This application is a CVS emulation layer for Git."
+#. type: Labeled list
+#: en/git-clone.txt:178 en/git-init.txt:51 en/git-svn.txt:578
+#, no-wrap
+msgid "--template=<template_directory>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:68
+#: en/git-clone.txt:181
 msgid ""
-"It is highly functional. However, not all methods are implemented, and for "
-"those methods that are implemented, not all switches are implemented."
+"Specify the directory from which templates will be used; (See the \"TEMPLATE "
+"DIRECTORY\" section of linkgit:git-init[1].)"
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsserver.txt:71
-msgid ""
-"Testing has been done using both the CLI CVS client, and the Eclipse CVS "
-"plugin. Most functionality works fine with both of these clients."
+#. type: Labeled list
+#: en/git-clone.txt:182
+#, no-wrap
+msgid "--config <key>=<value>"
 msgstr ""
 
-#. type: Title -
-#: en/git-cvsserver.txt:73
+#. type: Labeled list
+#: en/git-clone.txt:183
 #, no-wrap
-msgid "LIMITATIONS"
+msgid "-c <key>=<value>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:76
-msgid "CVS clients cannot tag, branch or perform Git merges."
+#: en/git-clone.txt:192
+msgid ""
+"Set a configuration variable in the newly-created repository; this takes "
+"effect immediately after the repository is initialized, but before the "
+"remote history is fetched or any files checked out.  The key is in the same "
+"format as expected by linkgit:git-config[1] (e.g., `core.eol=true`). If "
+"multiple values are given for the same key, each value will be written to "
+"the config file. This makes it safe, for example, to add additional fetch "
+"refspecs to the origin remote."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:80
+#: en/git-clone.txt:198
 msgid ""
-"'git-cvsserver' maps Git branches to CVS modules. This is very different "
-"from what most CVS users would expect since in CVS modules usually represent "
-"one or more directories."
+"Due to limitations of the current implementation, some configuration "
+"variables do not take effect until after the initial fetch and checkout.  "
+"Configuration variables known to not take effect are: `remote.<name>.mirror` "
+"and `remote.<name>.tagOpt`.  Use the corresponding `--mirror` and `--no-"
+"tags` options instead."
 msgstr ""
 
-#. type: Title -
-#: en/git-cvsserver.txt:82
+#. type: Labeled list
+#: en/git-clone.txt:199
 #, no-wrap
-msgid "INSTALLATION"
+msgid "--depth <depth>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:86
+#: en/git-clone.txt:205
 msgid ""
-"If you are going to offer CVS access via pserver, add a line in "
-"/etc/inetd.conf like"
+"Create a 'shallow' clone with a history truncated to the specified number of "
+"commits. Implies `--single-branch` unless `--no-single-branch` is given to "
+"fetch the histories near the tips of all branches. If you want to clone "
+"submodules shallowly, also pass `--shallow-submodules`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cvsserver.txt:90
-#, no-wrap
-msgid "   cvspserver stream tcp nowait nobody git-cvsserver pserver\n"
+#. type: Plain text
+#: en/git-clone.txt:208
+msgid "Create a shallow clone with a history after the specified time."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:96
+#: en/git-clone.txt:213
 msgid ""
-"Note: Some inetd servers let you specify the name of the executable "
-"independently of the value of argv[0] (i.e. the name the program assumes it "
-"was executed with). In this case the correct line in /etc/inetd.conf looks "
-"like"
+"Create a shallow clone with a history, excluding commits reachable from a "
+"specified remote branch or tag.  This option can be specified multiple times."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cvsserver.txt:99
+#. type: Labeled list
+#: en/git-clone.txt:214
 #, no-wrap
-msgid ""
-"   cvspserver stream tcp nowait nobody /usr/bin/git-cvsserver git-cvsserver "
-"pserver\n"
+msgid "--[no-]single-branch"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:106
+#: en/git-clone.txt:223
 msgid ""
-"Only anonymous access is provided by pserve by default. To commit you will "
-"have to create pserver accounts, simply add a gitcvs.authdb setting in the "
-"config file of the repositories you want the cvsserver to allow writes to, "
-"for example:"
+"Clone only the history leading to the tip of a single branch, either "
+"specified by the `--branch` option or the primary branch remote's `HEAD` "
+"points at.  Further fetches into the resulting repository will only update "
+"the remote-tracking branch for the branch this option was used for the "
+"initial cloning.  If the HEAD at the remote did not point at any branch when "
+"`--single-branch` clone was made, no remote-tracking branch is created."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cvsserver.txt:111
-#, no-wrap
+#. type: Plain text
+#: en/git-clone.txt:230
 msgid ""
-"   [gitcvs]\n"
-"\tauthdb = /etc/cvsserver/passwd\n"
+"Don't clone any tags, and set `remote.<remote>.tagOpt=--no-tags` in the "
+"config, ensuring that future `git pull` and `git fetch` operations won't "
+"follow any tags. Subsequent explicit tag fetches will still work, (see "
+"linkgit:git-fetch[1])."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:115
+#: en/git-clone.txt:235
 msgid ""
-"The format of these files is username followed by the encrypted password, "
-"for example:"
+"Can be used in conjunction with `--single-branch` to clone and maintain a "
+"branch with no references other than a single cloned branch. This is useful "
+"e.g. to maintain minimal clones of the default branch of some repository for "
+"search indexing."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cvsserver.txt:119
+#. type: Labeled list
+#: en/git-clone.txt:236
 #, no-wrap
-msgid ""
-"   myuser:$1Oyx5r9mdGZ2\n"
-"   myuser:$1$BA)@$vbnMJMDym7tA32AamXrm./\n"
+msgid "--recurse-submodules[=<pathspec]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:123
+#: en/git-clone.txt:244
 msgid ""
-"You can use the 'htpasswd' facility that comes with Apache to make these "
-"files, but Apache's MD5 crypt method differs from the one used by most C "
-"library's crypt() function, so don't use the -m option."
+"After the clone is created, initialize and clone submodules within based on "
+"the provided pathspec.  If no pathspec is provided, all submodules are "
+"initialized and cloned.  This option can be given multiple times for "
+"pathspecs consisting of multiple entries.  The resulting clone has "
+"`submodule.active` set to the provided pathspec, or \".\" (meaning all "
+"submodules) if no pathspec is provided."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:125
-msgid "Alternatively you can produce the password with perl's crypt() operator:"
+#: en/git-clone.txt:251
+msgid ""
+"Submodules are initialized and cloned using their default settings. This is "
+"equivalent to running `git submodule update --init --recursive <pathspec>` "
+"immediately after the clone is finished. This option is ignored if the "
+"cloned repository does not have a worktree/checkout (i.e. if any of `--no-"
+"checkout`/`-n`, `--bare`, or `--mirror` is given)"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cvsserver.txt:127
+#. type: Labeled list
+#: en/git-clone.txt:252
 #, no-wrap
-msgid ""
-"   perl -e 'my ($user, $pass) = @ARGV; printf \"%s:%s\\n\", $user, "
-"crypt($user, $pass)' $USER password\n"
+msgid "--[no-]shallow-submodules"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:130
-msgid "Then provide your password via the pserver method, for example:"
+#: en/git-clone.txt:254
+msgid "All submodules which are cloned will be shallow with a depth of 1."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cvsserver.txt:132
+#. type: Labeled list
+#: en/git-clone.txt:255 en/git-init.txt:56
 #, no-wrap
-msgid ""
-"   cvs -d:pserver:someuser:somepassword <at> server/path/repo.git co "
-"<HEAD_name>\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-cvsserver.txt:136
-msgid ""
-"No special setup is needed for SSH access, other than having Git tools in "
-"the PATH. If you have clients that do not accept the CVS_SERVER environment "
-"variable, you can rename 'git-cvsserver' to `cvs`."
+msgid "--separate-git-dir=<git dir>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:139
+#: en/git-clone.txt:261
 msgid ""
-"Note: Newer CVS versions (>= 1.12.11) also support specifying CVS_SERVER "
-"directly in CVSROOT like"
+"Instead of placing the cloned repository where it is supposed to be, place "
+"the cloned repository at the specified directory, then make a filesystem-"
+"agnostic Git symbolic link to there.  The result is Git repository can be "
+"separated from working tree."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cvsserver.txt:142
+#. type: Labeled list
+#: en/git-clone.txt:262 en/git-submodule.txt:404
 #, no-wrap
-msgid ""
-"cvs -d \":ext;CVS_SERVER=git cvsserver:user@server/path/repo.git\" co "
-"<HEAD_name>\n"
+msgid "-j <n>"
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsserver.txt:148
-msgid ""
-"This has the advantage that it will be saved in your 'CVS/Root' files and "
-"you don't need to worry about always setting the correct environment "
-"variable.  SSH users restricted to 'git-shell' don't need to override the "
-"default with CVS_SERVER (and shouldn't) as 'git-shell' understands `cvs` to "
-"mean 'git-cvsserver' and pretends that the other end runs the real 'cvs' "
-"better."
+#. type: Labeled list
+#: en/git-clone.txt:263 en/git-submodule.txt:405
+#, no-wrap
+msgid "--jobs <n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:151
+#: en/git-clone.txt:266
 msgid ""
-"For each repo that you want accessible from CVS you need to edit config in "
-"the repo and add the following section."
+"The number of submodules fetched at the same time.  Defaults to the "
+"`submodule.fetchJobs` option."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cvsserver.txt:158
+#. type: Labeled list
+#: en/git-clone.txt:267 en/git-fetch-pack.txt:114 en/git-ls-remote.txt:81
+#: en/git-push.txt:50 en/pull-fetch-param.txt:1
 #, no-wrap
-msgid ""
-"   [gitcvs]\n"
-"        enabled=1\n"
-"        # optional for debugging\n"
-"\tlogFile=/path/to/logfile\n"
+msgid "<repository>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:164
+#: en/git-clone.txt:271
 msgid ""
-"Note: you need to ensure each user that is going to invoke 'git-cvsserver' "
-"has write access to the log file and to the database (see "
-"<<dbbackend,Database Backend>>. If you want to offer write access over SSH, "
-"the users of course also need write access to the Git repository itself."
+"The (possibly remote) repository to clone from.  See the <<URLS,GIT URLS>> "
+"section below for more information on specifying repositories."
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsserver.txt:167
-msgid ""
-"You also need to ensure that each repository is \"bare\" (without a Git "
-"index file) for `cvs commit` to work. See linkgit:gitcvs-migration[7]."
+#. type: Labeled list
+#: en/git-clone.txt:272 en/git-cvsserver.txt:53 en/git-daemon.txt:220
+#: en/git-receive-pack.txt:41 en/git-send-pack.txt:95
+#: en/git-upload-archive.txt:57 en/git-upload-pack.txt:44
+#, no-wrap
+msgid "<directory>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:173
+#: en/git-clone.txt:278
 msgid ""
-"All configuration variables can also be overridden for a specific method of "
-"access. Valid method names are \"ext\" (for SSH access) and \"pserver\". The "
-"following example configuration would disable pserver access while still "
-"allowing access over SSH."
+"The name of a new directory to clone into.  The \"humanish\" part of the "
+"source repository is used if no directory is explicitly given (`repo` for `/"
+"path/to/repo.git` and `foo` for `host.xz:foo/.git`).  Cloning into an "
+"existing directory is only allowed if the directory is empty."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-cvsserver.txt:176
-#, no-wrap
-msgid ""
-"   [gitcvs]\n"
-"        enabled=0\n"
+#. type: Plain text
+#: en/git-clone.txt:286
+msgid "Clone from upstream:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-cvsserver.txt:179
+#: en/git-clone.txt:291
 #, no-wrap
 msgid ""
-"   [gitcvs \"ext\"]\n"
-"        enabled=1\n"
+"$ git clone git://git.kernel.org/pub/scm/.../linux.git my-linux\n"
+"$ cd my-linux\n"
+"$ make\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:186
+#: en/git-clone.txt:295
 msgid ""
-"If you didn't specify the CVSROOT/CVS_SERVER directly in the checkout "
-"command, automatically saving it in your 'CVS/Root' files, then you need to "
-"set them explicitly in your environment.  CVSROOT should be set as per "
-"normal, but the directory should point at the appropriate Git repo.  As "
-"above, for SSH clients _not_ restricted to 'git-shell', CVS_SERVER should be "
-"set to 'git-cvsserver'."
+"Make a local clone that borrows from the current directory, without checking "
+"things out:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-cvsserver.txt:191
+#: en/git-clone.txt:300
 #, no-wrap
 msgid ""
-"     export CVSROOT=:ext:user@server:/var/git/project.git\n"
-"     export CVS_SERVER=\"git cvsserver\"\n"
+"$ git clone -l -s -n . ../copy\n"
+"$ cd ../copy\n"
+"$ git show-branch\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:198
+#: en/git-clone.txt:304
+msgid "Clone from upstream while borrowing from an existing local directory:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-clone.txt:310
+#, no-wrap
 msgid ""
-"For SSH clients that will make commits, make sure their server-side "
-".ssh/environment files (or .bashrc, etc., according to their specific shell)  "
-"export appropriate values for GIT_AUTHOR_NAME, GIT_AUTHOR_EMAIL, "
-"GIT_COMMITTER_NAME, and GIT_COMMITTER_EMAIL.  For SSH clients whose login "
-"shell is bash, .bashrc may be a reasonable alternative."
+"$ git clone --reference /git/linux.git \\\n"
+"\tgit://git.kernel.org/pub/scm/.../linux.git \\\n"
+"\tmy-linux\n"
+"$ cd my-linux\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:204
-msgid ""
-"Clients should now be able to check out the project. Use the CVS 'module' "
-"name to indicate what Git 'head' you want to check out.  This also sets the "
-"name of your newly checked-out directory, unless you tell it otherwise with "
-"`-d <dir_name>`.  For example, this checks out 'master' branch to the "
-"`project-master` directory:"
+#: en/git-clone.txt:314
+msgid "Create a bare repository to publish your changes to the public:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-cvsserver.txt:207
+#: en/git-clone.txt:317
 #, no-wrap
-msgid "     cvs co -d project-master master\n"
+msgid "$ git clone --bare -l /home/proj/.git /pub/scm/proj.git\n"
 msgstr ""
 
-#. type: Title -
-#: en/git-cvsserver.txt:211
+#. type: Title =
+#: en/git-column.txt:2
 #, no-wrap
-msgid "Database Backend"
-msgstr ""
-
-#. type: Plain text
-#: en/git-cvsserver.txt:217
-msgid ""
-"'git-cvsserver' uses one database per Git head (i.e. CVS module) to store "
-"information about the repository to maintain consistent CVS revision "
-"numbers. The database needs to be updated (i.e. written to) after every "
-"commit."
+msgid "git-column(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:222
-msgid ""
-"If the commit is done directly by using `git` (as opposed to using "
-"'git-cvsserver') the update will need to happen on the next repository "
-"access by 'git-cvsserver', independent of access method and requested "
-"operation."
+#: en/git-column.txt:7
+msgid "git-column - Display data in columns"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:227
+#: en/git-column.txt:13
+#, no-wrap
 msgid ""
-"That means that even if you offer only read access (e.g. by using the "
-"pserver method), 'git-cvsserver' should have write access to the database to "
-"work reliably (otherwise you need to make sure that the database is "
-"up-to-date any time 'git-cvsserver' is executed)."
+"'git column' [--command=<name>] [--[raw-]mode=<mode>] [--width=<width>]\n"
+"\t     [--indent=<string>] [--nl=<string>] [--padding=<n>]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:234
+#: en/git-column.txt:20
 msgid ""
-"By default it uses SQLite databases in the Git directory, named "
-"`gitcvs.<module_name>.sqlite`. Note that the SQLite backend creates "
-"temporary files in the same directory as the database file on write so it "
-"might not be enough to grant the users using 'git-cvsserver' write access to "
-"the database file without granting them write access to the directory, too."
+"This command formats the lines of its standard input into a table with "
+"multiple columns. Each input line occupies one cell of the table. It is used "
+"internally by other git commands to format output into columns."
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsserver.txt:246
-msgid ""
-"The database can not be reliably regenerated in a consistent form after the "
-"branch it is tracking has changed.  Example: For merged branches, "
-"'git-cvsserver' only tracks one branch of development, and after a 'git "
-"merge' an incrementally updated database may track a different branch than a "
-"database regenerated from scratch, causing inconsistent CVS revision "
-"numbers. `git-cvsserver` has no way of knowing which branch it would have "
-"picked if it had been run incrementally pre-merge. So if you have to fully "
-"or partially (from old backup) regenerate the database, you should be "
-"suspicious of pre-existing CVS sandboxes."
+#. type: Labeled list
+#: en/git-column.txt:23
+#, no-wrap
+msgid "--command=<name>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:249
+#: en/git-column.txt:26
 msgid ""
-"You can configure the database backend with the following configuration "
-"variables:"
+"Look up layout mode using configuration variable column.<name> and column.ui."
 msgstr ""
 
-#. type: Title ~
-#: en/git-cvsserver.txt:251
+#. type: Labeled list
+#: en/git-column.txt:27
 #, no-wrap
-msgid "Configuring database backend"
+msgid "--mode=<mode>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:256
+#: en/git-column.txt:30
 msgid ""
-"'git-cvsserver' uses the Perl DBI module. Please also read its documentation "
-"if changing these variables, especially about `DBI->connect()`."
+"Specify layout mode. See configuration variable column.ui for option syntax "
+"in linkgit:git-config[1]."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cvsserver.txt:257 en/config.txt:1567
+#: en/git-column.txt:31
 #, no-wrap
-msgid "gitcvs.dbName"
+msgid "--raw-mode=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:263
+#: en/git-column.txt:34
 msgid ""
-"Database name. The exact meaning depends on the selected database driver, "
-"for SQLite this is a filename.  Supports variable substitution (see "
-"below). May not contain semicolons (`;`).  Default: '%Ggitcvs.%m.sqlite'"
+"Same as --mode but take mode encoded as a number. This is mainly used by "
+"other commands that have already parsed layout mode."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cvsserver.txt:264 en/config.txt:1575
+#: en/git-column.txt:35
 #, no-wrap
-msgid "gitcvs.dbDriver"
+msgid "--width=<width>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:272
+#: en/git-column.txt:38
 msgid ""
-"Used DBI driver. You can specify any available driver for this here, but it "
-"might not work. cvsserver is tested with 'DBD::SQLite', reported to work "
-"with 'DBD::Pg', and reported *not* to work with 'DBD::mysql'.  Please regard "
-"this as an experimental feature. May not contain colons (`:`).  Default: "
-"'SQLite'"
+"Specify the terminal width. By default 'git column' will detect the terminal "
+"width, or fall back to 80 if it is unable to do so."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cvsserver.txt:273
+#: en/git-column.txt:39
 #, no-wrap
-msgid "gitcvs.dbuser"
+msgid "--indent=<string>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:277
-msgid ""
-"Database user. Only useful if setting `dbDriver`, since SQLite has no "
-"concept of database users. Supports variable substitution (see below)."
+#: en/git-column.txt:41
+msgid "String to be printed at the beginning of each line."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cvsserver.txt:278
+#: en/git-column.txt:42
 #, no-wrap
-msgid "gitcvs.dbPass"
+msgid "--nl=<N>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:281
+#: en/git-column.txt:45
 msgid ""
-"Database password.  Only useful if setting `dbDriver`, since SQLite has no "
-"concept of database passwords."
+"String to be printed at the end of each line, including newline character."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-cvsserver.txt:282 en/config.txt:1589
+#: en/git-column.txt:46
 #, no-wrap
-msgid "gitcvs.dbTableNamePrefix"
+msgid "--padding=<N>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:286
-msgid ""
-"Database table name prefix.  Supports variable substitution (see below).  "
-"Any non-alphabetic characters will be replaced with underscores."
+#: en/git-column.txt:48
+msgid "The number of spaces between columns. One space by default."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:288
-msgid ""
-"All variables can also be set per access method, see "
-"<<configaccessmethod,above>>."
+#: en/git-column.txt:53
+msgid "Format data by columns:"
 msgstr ""
 
-#. type: Title ^
-#: en/git-cvsserver.txt:290
+#. type: delimited block -
+#: en/git-column.txt:58
 #, no-wrap
-msgid "Variable substitution"
+msgid ""
+"$ seq 1 24 | git column --mode=column --padding=5\n"
+"1      4      7      10     13     16     19     22\n"
+"2      5      8      11     14     17     20     23\n"
+"3      6      9      12     15     18     21     24\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:292
-msgid "In `dbDriver` and `dbUser` you can use the following variables:"
+#: en/git-column.txt:61
+msgid "Format data by rows:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsserver.txt:308
+#. type: delimited block -
+#: en/git-column.txt:66
 #, no-wrap
 msgid ""
-"%G::\n"
-"\tGit directory name\n"
-"%g::\n"
-"\tGit directory name, where all characters except for\n"
-"\talpha-numeric ones, `.`, and `-` are replaced with\n"
-"\t`_` (this should make it easier to use the directory\n"
-"\tname in a filename if wanted)\n"
-"%m::\n"
-"\tCVS module/Git head name\n"
-"%a::\n"
-"\taccess method (one of \"ext\" or \"pserver\")\n"
-"%u::\n"
-"\tName of the user running 'git-cvsserver'.\n"
-"\tIf no name can be determined, the\n"
-"\tnumeric uid is used.\n"
+"$ seq 1 21 | git column --mode=row --padding=5\n"
+"1      2      3      4      5      6      7\n"
+"8      9      10     11     12     13     14\n"
+"15     16     17     18     19     20     21\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:314
+#: en/git-column.txt:69
+msgid "List some tags in a table with unequal column widths:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-column.txt:75
+#, no-wrap
 msgid ""
-"These variables obviate the need for command-line options in some "
-"circumstances, allowing easier restricted usage through git-shell."
+"$ git tag --list 'v2.4.*' --column=row,dense\n"
+"v2.4.0  v2.4.0-rc0  v2.4.0-rc1  v2.4.0-rc2  v2.4.0-rc3\n"
+"v2.4.1  v2.4.10     v2.4.11     v2.4.12     v2.4.2\n"
+"v2.4.3  v2.4.4      v2.4.5      v2.4.6      v2.4.7\n"
+"v2.4.8  v2.4.9\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsserver.txt:316
-msgid "GIT_CVSSERVER_BASE_PATH takes the place of the argument to --base-path."
+#. type: Title =
+#: en/git-commit-tree.txt:2
+#, no-wrap
+msgid "git-commit-tree(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:320
-msgid ""
-"GIT_CVSSERVER_ROOT specifies a single-directory whitelist. The repository "
-"must still be configured to allow access through git-cvsserver, as described "
-"above."
+#: en/git-commit-tree.txt:7
+msgid "git-commit-tree - Create a new commit object"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:323
-msgid ""
-"When these environment variables are set, the corresponding command-line "
-"arguments may not be used."
-msgstr ""
-
-#. type: Title -
-#: en/git-cvsserver.txt:325
+#: en/git-commit-tree.txt:15
 #, no-wrap
-msgid "Eclipse CVS Client Notes"
+msgid ""
+"'git commit-tree' <tree> [(-p <parent>)...]\n"
+"'git commit-tree' [(-p <parent>)...] [-S[<keyid>]] [(-m <message>)...]\n"
+"\t\t  [(-F <file>)...] <tree>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:328
-msgid "To get a checkout with the Eclipse CVS client:"
+#: en/git-commit-tree.txt:21
+msgid ""
+"This is usually not what an end user wants to run directly.  See linkgit:git-"
+"commit[1] instead."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:330
-msgid "Select \"Create a new project -> From CVS checkout\""
+#: en/git-commit-tree.txt:25
+msgid ""
+"Creates a new commit object based on the provided tree object and emits the "
+"new commit object id on stdout. The log message is read from the standard "
+"input, unless `-m` or `-F` options are given."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:332
+#: en/git-commit-tree.txt:30
 msgid ""
-"Create a new location. See the notes below for details on how to choose the "
-"right protocol."
+"A commit object may have any number of parents. With exactly one parent, it "
+"is an ordinary commit. Having more than one parent makes the commit a merge "
+"between several lines of history. Initial (root)  commits have no parents."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:335
+#: en/git-commit-tree.txt:34
 msgid ""
-"Browse the 'modules' available. It will give you a list of the heads in the "
-"repository. You will not be able to browse the tree from there. Only the "
-"heads."
+"While a tree represents a particular directory state of a working directory, "
+"a commit represents that state in \"time\", and explains how to get there."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:337
+#: en/git-commit-tree.txt:40
 msgid ""
-"Pick `HEAD` when it asks what branch/tag to check out. Untick the \"launch "
-"commit wizard\" to avoid committing the .project file."
+"Normally a commit would identify a new \"HEAD\" state, and while Git doesn't "
+"care where you save the note about that state, in practice we tend to just "
+"write the result to the file that is pointed at by `.git/HEAD`, so that we "
+"can always see what the last committed state was."
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsserver.txt:343
-msgid ""
-"Protocol notes: If you are using anonymous access via pserver, just select "
-"that.  Those using SSH access should choose the 'ext' protocol, and "
-"configure 'ext' access on the Preferences->Team->CVS->ExtConnection "
-"pane. Set CVS_SERVER to \"`git cvsserver`\". Note that password support is "
-"not good when using 'ext', you will definitely want to have SSH keys setup."
+#. type: Labeled list
+#: en/git-commit-tree.txt:43 en/git.txt:309
+#, no-wrap
+msgid "<tree>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:348
-msgid ""
-"Alternatively, you can just use the non-standard extssh protocol that "
-"Eclipse offer. In that case CVS_SERVER is ignored, and you will have to "
-"replace the cvs utility on the server with 'git-cvsserver' or manipulate "
-"your `.bashrc` so that calling 'cvs' effectively calls 'git-cvsserver'."
+#: en/git-commit-tree.txt:45
+msgid "An existing tree object"
 msgstr ""
 
-#. type: Title -
-#: en/git-cvsserver.txt:350
+#. type: Labeled list
+#: en/git-commit-tree.txt:46
 #, no-wrap
-msgid "Clients known to work"
+msgid "-p <parent>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:353
-msgid "CVS 1.12.9 on Debian"
+#: en/git-commit-tree.txt:48
+msgid "Each `-p` indicates the id of a parent commit object."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-commit-tree.txt:49 en/git-fmt-merge-msg.txt:42
+#, no-wrap
+msgid "-m <message>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:354
-msgid "CVS 1.11.17 on MacOSX (from Fink package)"
+#: en/git-commit-tree.txt:52
+msgid ""
+"A paragraph in the commit log message. This can be given more than once and "
+"each <message> becomes its own paragraph."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-commit-tree.txt:53 en/git-commit.txt:131 en/git-fmt-merge-msg.txt:47
+#: en/git-merge.txt:78 en/git-notes.txt:140 en/git-tag.txt:163
+#, no-wrap
+msgid "-F <file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:355
-msgid "Eclipse 3.0, 3.1.2 on MacOSX (see Eclipse CVS Client Notes)"
+#: en/git-commit-tree.txt:56
+msgid ""
+"Read the commit log message from the given file. Use `-` to read from the "
+"standard input."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-commit-tree.txt:63 en/git-commit.txt:339
+#, no-wrap
+msgid "--no-gpg-sign"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:356
-msgid "TortoiseCVS"
+#: en/git-commit-tree.txt:66
+msgid ""
+"Do not GPG-sign commit, to countermand a `--gpg-sign` option given earlier "
+"on the command line."
 msgstr ""
 
 #. type: Title -
-#: en/git-cvsserver.txt:358
+#: en/git-commit-tree.txt:69
 #, no-wrap
-msgid "Operations supported"
+msgid "Commit Information"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:362
-msgid ""
-"All the operations required for normal use are supported, including "
-"checkout, diff, status, update, log, add, remove, commit."
+#: en/git-commit-tree.txt:72
+msgid "A commit encapsulates:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:371
-msgid ""
-"Most CVS command arguments that read CVS tags or revision numbers (typically "
-"-r) work, and also support any git refspec (tag, branch, commit ID, etc).  "
-"However, CVS revision numbers for non-default branches are not well "
-"emulated, and cvs log does not show tags or branches at all.  "
-"(Non-main-branch CVS revision numbers superficially resemble CVS revision "
-"numbers, but they actually encode a git commit ID directly, rather than "
-"represent the number of revisions since the branch point.)"
+#: en/git-commit-tree.txt:74
+msgid "all parent object ids"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:385
-msgid ""
-"Note that there are two ways to checkout a particular branch.  As described "
-"elsewhere on this page, the \"module\" parameter of cvs checkout is "
-"interpreted as a branch name, and it becomes the main branch.  It remains "
-"the main branch for a given sandbox even if you temporarily make another "
-"branch sticky with cvs update -r.  Alternatively, the -r argument can "
-"indicate some other branch to actually checkout, even though the module is "
-"still the \"main\" branch.  Tradeoffs (as currently implemented): Each new "
-"\"module\" creates a new database on disk with a history for the given "
-"module, and after the database is created, operations against that main "
-"branch are fast.  Or alternatively, -r doesn't take any extra disk space, "
-"but may be significantly slower for many operations, like cvs update."
+#: en/git-commit-tree.txt:75
+msgid "author name, email and date"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:398
-msgid ""
-"If you want to refer to a git refspec that has characters that are not "
-"allowed by CVS, you have two options.  First, it may just work to supply the "
-"git refspec directly to the appropriate CVS -r argument; some CVS clients "
-"don't seem to do much sanity checking of the argument.  Second, if that "
-"fails, you can use a special character escape mechanism that only uses "
-"characters that are valid in CVS tags.  A sequence of 4 or 5 characters of "
-"the form (underscore (`\"_\"`), dash (`\"-\"`), one or two characters, and "
-"dash (`\"-\"`)) can encode various characters based on the one or two "
-"letters: `\"s\"` for slash (`\"/\"`), `\"p\"` for period (`\".\"`), `\"u\"` "
-"for underscore (`\"_\"`), or two hexadecimal digits for any byte value at "
-"all (typically an ASCII number, or perhaps a part of a UTF-8 encoded "
-"character)."
+#: en/git-commit-tree.txt:76
+msgid "committer name and email and the commit time."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:401
+#: en/git-commit-tree.txt:80
 msgid ""
-"Legacy monitoring operations are not supported (edit, watch and related).  "
-"Exports and tagging (tags and branches) are not supported at this stage."
+"While parent object ids are provided on the command line, author and "
+"committer information is taken from the following environment variables, if "
+"set:"
 msgstr ""
 
-#. type: Title ~
-#: en/git-cvsserver.txt:403
+#. type: Plain text
+#: en/git-commit-tree.txt:87
 #, no-wrap
-msgid "CRLF Line Ending Conversions"
+msgid ""
+"\tGIT_AUTHOR_NAME\n"
+"\tGIT_AUTHOR_EMAIL\n"
+"\tGIT_AUTHOR_DATE\n"
+"\tGIT_COMMITTER_NAME\n"
+"\tGIT_COMMITTER_EMAIL\n"
+"\tGIT_COMMITTER_DATE\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:408
-msgid ""
-"By default the server leaves the `-k` mode blank for all files, which causes "
-"the CVS client to treat them as a text files, subject to end-of-line "
-"conversion on some platforms."
+#: en/git-commit-tree.txt:89
+msgid "(nb \"<\", \">\" and \"\\n\"s are stripped)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:413
+#: en/git-commit-tree.txt:96
 msgid ""
-"You can make the server use the end-of-line conversion attributes to set the "
-"`-k` modes for files by setting the `gitcvs.usecrlfattr` config variable.  "
-"See linkgit:gitattributes[5] for more information about end-of-line "
-"conversion."
+"In case (some of) these environment variables are not set, the information "
+"is taken from the configuration items user.name and user.email, or, if not "
+"present, the environment variable EMAIL, or, if that is not set, system user "
+"name and the hostname used for outgoing mail (taken from `/etc/mailname` and "
+"falling back to the fully qualified hostname when that file does not exist)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:422
+#: en/git-commit-tree.txt:100
 msgid ""
-"Alternatively, if `gitcvs.usecrlfattr` config is not enabled or the "
-"attributes do not allow automatic detection for a filename, then the server "
-"uses the `gitcvs.allBinary` config for the default setting.  If "
-"`gitcvs.allBinary` is set, then file not otherwise specified will default to "
-"'-kb' mode. Otherwise the `-k` mode is left blank. But if `gitcvs.allBinary` "
-"is set to \"guess\", then the correct `-k` mode will be guessed based on the "
-"contents of the file."
+"A commit comment is read from stdin. If a changelog entry is not provided "
+"via \"<\" redirection, 'git commit-tree' will just wait for one to be "
+"entered and terminated with ^D."
 msgstr ""
 
-#. type: Plain text
-#: en/git-cvsserver.txt:426
-msgid ""
-"For best consistency with 'cvs', it is probably best to override the "
-"defaults by setting `gitcvs.usecrlfattr` to true, and `gitcvs.allBinary` to "
-"\"guess\"."
+#. type: Title -
+#: en/git-commit-tree.txt:104
+#, no-wrap
+msgid "Discussion"
 msgstr ""
 
 #. type: Title -
-#: en/git-cvsserver.txt:428
+#: en/git-commit-tree.txt:109 en/git-commit.txt:477 en/git-config.txt:268
+#: en/git-credential-store.txt:45 en/git-show-ref.txt:174
+#: en/git-submodule.txt:416 en/git-svn.txt:1156
 #, no-wrap
-msgid "Dependencies"
+msgid "FILES"
 msgstr ""
 
 #. type: Plain text
-#: en/git-cvsserver.txt:430
-msgid "'git-cvsserver' depends on DBD::SQLite."
+#: en/git-commit-tree.txt:111
+msgid "/etc/mailname"
 msgstr ""
 
 #. type: Title =
-#: en/git-daemon.txt:2
+#: en/git-commit.txt:2
 #, no-wrap
-msgid "git-daemon(1)"
+msgid "git-commit(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:7
-msgid "git-daemon - A really simple server for Git repositories"
+#: en/git-commit.txt:7
+msgid "git-commit - Record changes to the repository"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:24
+#: en/git-commit.txt:17
 #, no-wrap
 msgid ""
-"'git daemon' [--verbose] [--syslog] [--export-all]\n"
-"\t     [--timeout=<n>] [--init-timeout=<n>] [--max-connections=<n>]\n"
-"\t     [--strict-paths] [--base-path=<path>] [--base-path-relaxed]\n"
-"\t     [--user-path | --user-path=<path>]\n"
-"\t     [--interpolated-path=<pathtemplate>]\n"
-"\t     [--reuseaddr] [--detach] [--pid-file=<file>]\n"
-"\t     [--enable=<service>] [--disable=<service>]\n"
-"\t     [--allow-override=<service>] [--forbid-override=<service>]\n"
-"\t     [--access-hook=<path>] [--[no-]informative-errors]\n"
-"\t     [--inetd |\n"
-"\t      [--listen=<host_or_ipaddr>] [--port=<n>]\n"
-"\t      [--user=<user> [--group=<group>]]]\n"
-"\t     [<directory>...]\n"
+"'git commit' [-a | --interactive | --patch] [-s] [-v] [-u<mode>] [--amend]\n"
+"\t   [--dry-run] [(-c | -C | --fixup | --squash) <commit>]\n"
+"\t   [-F <file> | -m <msg>] [--reset-author] [--allow-empty]\n"
+"\t   [--allow-empty-message] [--no-verify] [-e] [--author=<author>]\n"
+"\t   [--date=<date>] [--cleanup=<mode>] [--[no-]status]\n"
+"\t   [-i | -o] [-S[<keyid>]] [--] [<file>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:30
+#: en/git-commit.txt:26
 msgid ""
-"A really simple TCP Git daemon that normally listens on port "
-"\"DEFAULT_GIT_PORT\" aka 9418.  It waits for a connection asking for a "
-"service, and will serve that service if it is enabled."
+"Create a new commit containing the current contents of the index and the "
+"given log message describing the changes. The new commit is a direct child "
+"of HEAD, usually the tip of the current branch, and the branch is updated to "
+"point to it (unless no branch is associated with the working tree, in which "
+"case HEAD is \"detached\" as described in linkgit:git-checkout[1])."
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:36
-msgid ""
-"It verifies that the directory has the magic file \"git-daemon-export-ok\", "
-"and it will refuse to export any Git directory that hasn't explicitly been "
-"marked for export this way (unless the `--export-all` parameter is "
-"specified). If you pass some directory paths as 'git daemon' arguments, you "
-"can further restrict the offers to a whitelist comprising of those."
+#: en/git-commit.txt:28
+msgid "The content to be committed can be specified in several ways:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:40
+#: en/git-commit.txt:32
 msgid ""
-"By default, only `upload-pack` service is enabled, which serves 'git "
-"fetch-pack' and 'git ls-remote' clients, which are invoked from 'git fetch', "
-"'git pull', and 'git clone'."
+"by using linkgit:git-add[1] to incrementally \"add\" changes to the index "
+"before using the 'commit' command (Note: even modified files must be \"added"
+"\");"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:43
+#: en/git-commit.txt:35
 msgid ""
-"This is ideally suited for read-only updates, i.e., pulling from Git "
-"repositories."
+"by using linkgit:git-rm[1] to remove files from the working tree and the "
+"index, again before using the 'commit' command;"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:45
-msgid "An `upload-archive` also exists to serve 'git archive'."
+#: en/git-commit.txt:41
+msgid ""
+"by listing files as arguments to the 'commit' command (without --interactive "
+"or --patch switch), in which case the commit will ignore changes staged in "
+"the index, and instead record the current content of the listed files (which "
+"must already be known to Git);"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:53
+#: en/git-commit.txt:47
 msgid ""
-"Match paths exactly (i.e. don't allow \"/foo/repo\" when the real path is "
-"\"/foo/repo.git\" or \"/foo/repo/.git\") and don't do user-relative paths.  "
-"'git daemon' will refuse to start when this option is enabled and no "
-"whitelist is specified."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-daemon.txt:54
-#, no-wrap
-msgid "--base-path=<path>"
+"by using the -a switch with the 'commit' command to automatically \"add\" "
+"changes from all known files (i.e. all files that are already listed in the "
+"index) and to automatically \"rm\" files in the index that have been removed "
+"from the working tree, and then perform the actual commit;"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:60
+#: en/git-commit.txt:53
 msgid ""
-"Remap all the path requests as relative to the given path.  This is sort of "
-"\"Git root\" - if you run 'git daemon' with '--base-path=/srv/git' on "
-"example.com, then if you later try to pull 'git://example.com/hello.git', "
-"'git daemon' will interpret the path as '/srv/git/hello.git'."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-daemon.txt:61
-#, no-wrap
-msgid "--base-path-relaxed"
+"by using the --interactive or --patch switches with the 'commit' command to "
+"decide one by one which files or hunks should be part of the commit in "
+"addition to contents in the index, before finalizing the operation. See the "
+"``Interactive Mode'' section of linkgit:git-add[1] to learn how to operate "
+"these modes."
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:66
+#: en/git-commit.txt:57
 msgid ""
-"If --base-path is enabled and repo lookup fails, with this option 'git "
-"daemon' will attempt to lookup without prefixing the base path.  This is "
-"useful for switching to --base-path usage, while still allowing the old "
-"paths."
+"The `--dry-run` option can be used to obtain a summary of what is included "
+"by any of the above for the next commit by giving the same set of parameters "
+"(options and paths)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-daemon.txt:67
-#, no-wrap
-msgid "--interpolated-path=<pathtemplate>"
+#. type: Plain text
+#: en/git-commit.txt:60
+msgid ""
+"If you make a commit and then find a mistake immediately after that, you can "
+"recover from it with 'git reset'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:76
+#: en/git-commit.txt:69
 msgid ""
-"To support virtual hosting, an interpolated path template can be used to "
-"dynamically construct alternate paths.  The template supports %H for the "
-"target hostname as supplied by the client but converted to all lowercase, "
-"%CH for the canonical hostname, %IP for the server's IP address, %P for the "
-"port number, and %D for the absolute path of the named repository.  After "
-"interpolation, the path is validated against the directory whitelist."
+"Tell the command to automatically stage files that have been modified and "
+"deleted, but new files you have not told Git about are not affected."
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:81
+#: en/git-commit.txt:75
 msgid ""
-"Allow pulling from all directories that look like Git repositories (have the "
-"'objects' and 'refs' subdirectories), even if they do not have the "
-"'git-daemon-export-ok' file."
+"Use the interactive patch selection interface to chose which changes to "
+"commit. See linkgit:git-add[1] for details."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:82
+#: en/git-commit.txt:76
 #, no-wrap
-msgid "--inetd"
-msgstr ""
-
-#. type: Plain text
-#: en/git-daemon.txt:86
-msgid ""
-"Have the server run as an inetd service. Implies --syslog.  Incompatible "
-"with --detach, --port, --listen, --user and --group options."
+msgid "-C <commit>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:87
+#: en/git-commit.txt:77
 #, no-wrap
-msgid "--listen=<host_or_ipaddr>"
+msgid "--reuse-message=<commit>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:94
+#: en/git-commit.txt:81
 msgid ""
-"Listen on a specific IP address or hostname.  IP addresses can be either an "
-"IPv4 address or an IPv6 address if supported.  If IPv6 is not supported, "
-"then --listen=hostname is also not supported and --listen must be given an "
-"IPv4 address.  Can be given more than once.  Incompatible with `--inetd` "
-"option."
+"Take an existing commit object, and reuse the log message and the authorship "
+"information (including the timestamp)  when creating the commit."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:95
+#: en/git-commit.txt:82
 #, no-wrap
-msgid "--port=<n>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-daemon.txt:97
-msgid "Listen on an alternative port.  Incompatible with `--inetd` option."
+msgid "-c <commit>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:98
+#: en/git-commit.txt:83
 #, no-wrap
-msgid "--init-timeout=<n>"
+msgid "--reedit-message=<commit>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:102
+#: en/git-commit.txt:86
 msgid ""
-"Timeout (in seconds) between the moment the connection is established and "
-"the client request is received (typically a rather low value, since that "
-"should be basically immediate)."
+"Like '-C', but with `-c` the editor is invoked, so that the user can further "
+"edit the commit message."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:103 en/git-upload-pack.txt:31
+#: en/git-commit.txt:87
 #, no-wrap
-msgid "--timeout=<n>"
+msgid "--fixup=<commit>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:107
+#: en/git-commit.txt:92
 msgid ""
-"Timeout (in seconds) for specific client sub-requests. This includes the "
-"time it takes for the server to process the sub-request and the time spent "
-"waiting for the next client's request."
+"Construct a commit message for use with `rebase --autosquash`.  The commit "
+"message will be the subject line from the specified commit with a prefix of "
+"\"fixup! \".  See linkgit:git-rebase[1] for details."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:108
+#: en/git-commit.txt:93
 #, no-wrap
-msgid "--max-connections=<n>"
+msgid "--squash=<commit>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:111
+#: en/git-commit.txt:99
 msgid ""
-"Maximum number of concurrent clients, defaults to 32.  Set it to zero for no "
-"limit."
+"Construct a commit message for use with `rebase --autosquash`.  The commit "
+"message subject line is taken from the specified commit with a prefix of "
+"\"squash! \".  Can be used with additional commit message options (`-m`/`-c`/"
+"`-C`/`-F`). See linkgit:git-rebase[1] for details."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:112
+#: en/git-commit.txt:100
 #, no-wrap
-msgid "--syslog"
+msgid "--reset-author"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:115
+#: en/git-commit.txt:105
 msgid ""
-"Log to syslog instead of stderr. Note that this option does not imply "
-"--verbose, thus by default only error conditions will be logged."
+"When used with -C/-c/--amend options, or when committing after a conflicting "
+"cherry-pick, declare that the authorship of the resulting commit now belongs "
+"to the committer. This also renews the author timestamp."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:116
+#: en/git-commit.txt:106 en/git-status.txt:28 en/git-symbolic-ref.txt:45
 #, no-wrap
-msgid "--user-path"
+msgid "--short"
+msgstr ""
+
+#. type: Plain text
+#: en/git-commit.txt:109
+msgid ""
+"When doing a dry-run, give the output in the short-format. See linkgit:git-"
+"status[1] for details. Implies `--dry-run`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:117
+#: en/git-commit.txt:110 en/git-status.txt:32 en/git-submodule.txt:259
 #, no-wrap
-msgid "--user-path=<path>"
+msgid "--branch"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:125
-msgid ""
-"Allow {tilde}user notation to be used in requests.  When specified with no "
-"parameter, requests to git://host/{tilde}alice/foo is taken as a request to "
-"access 'foo' repository in the home directory of user `alice`.  If "
-"`--user-path=path` is specified, the same request is taken as a request to "
-"access `path/foo` repository in the home directory of user `alice`."
+#: en/git-commit.txt:112 en/git-status.txt:34
+msgid "Show the branch and tracking info even in short-format."
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:128
-msgid "Log details about the incoming connections and requested files."
+#: en/git-commit.txt:117
+msgid ""
+"When doing a dry-run, give the output in a porcelain-ready format. See "
+"linkgit:git-status[1] for details. Implies `--dry-run`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:129
+#: en/git-commit.txt:118 en/git-describe.txt:87 en/git-ls-tree.txt:52
+#: en/git-status.txt:47
 #, no-wrap
-msgid "--reuseaddr"
+msgid "--long"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:133
+#: en/git-commit.txt:121
 msgid ""
-"Use SO_REUSEADDR when binding the listening socket.  This allows the server "
-"to restart without waiting for old connections to time out."
-msgstr ""
-
-#. type: Plain text
-#: en/git-daemon.txt:136
-msgid "Detach from the shell. Implies --syslog."
+"When doing a dry-run, give the output in the long-format.  Implies `--dry-"
+"run`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:137
+#: en/git-commit.txt:123 en/git-config.txt:207 en/git-grep.txt:207
 #, no-wrap
-msgid "--pid-file=<file>"
+msgid "--null"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:140
+#: en/git-commit.txt:130
 msgid ""
-"Save the process id in 'file'.  Ignored when the daemon is run under "
-"`--inetd`."
+"When showing `short` or `porcelain` status output, print the filename "
+"verbatim and terminate the entries with NUL, instead of LF.  If no format is "
+"given, implies the `--porcelain` output format.  Without the `-z` option, "
+"filenames with \"unusual\" characters are quoted as explained for the "
+"configuration variable `core.quotePath` (see linkgit:git-config[1])."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:141
+#: en/git-commit.txt:132 en/git-merge.txt:79 en/git-notes.txt:141
+#: en/git-tag.txt:164
 #, no-wrap
-msgid "--user=<user>"
+msgid "--file=<file>"
+msgstr ""
+
+#. type: Plain text
+#: en/git-commit.txt:135
+msgid ""
+"Take the commit message from the given file.  Use '-' to read the message "
+"from the standard input."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:142
+#: en/git-commit.txt:136
 #, no-wrap
-msgid "--group=<group>"
+msgid "--author=<author>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:148
+#: en/git-commit.txt:142
 msgid ""
-"Change daemon's uid and gid before entering the service loop.  When only "
-"`--user` is given without `--group`, the primary group ID for the user is "
-"used.  The values of the option are given to `getpwnam(3)` and `getgrnam(3)` "
-"and numeric IDs are not supported."
+"Override the commit author. Specify an explicit author using the standard `A "
+"U Thor <author@example.com>` format. Otherwise <author> is assumed to be a "
+"pattern and is used to search for an existing commit by that author (i.e. "
+"rev-list --all -i --author=<author>); the commit author is then copied from "
+"the first such commit found."
 msgstr ""
 
-#. type: Plain text
-#: en/git-daemon.txt:152
-msgid ""
-"Giving these options is an error when used with `--inetd`; use the facility "
-"of inet daemon to achieve the same before spawning 'git daemon' if needed."
+#. type: Labeled list
+#: en/git-commit.txt:143
+#, no-wrap
+msgid "--date=<date>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:159
-msgid ""
-"Like many programs that switch user id, the daemon does not reset "
-"environment variables such as `$HOME` when it runs git programs, "
-"e.g. `upload-pack` and `receive-pack`. When using this option, you may also "
-"want to set and export `HOME` to point at the home directory of `<user>` "
-"before starting the daemon, and make sure any Git configuration files in "
-"that directory are readable by `<user>`."
+#: en/git-commit.txt:145
+msgid "Override the author date used in the commit."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:160
+#: en/git-commit.txt:146 en/git-merge.txt:67 en/git-notes.txt:132
+#: en/git-svn.txt:468 en/git-tag.txt:155
 #, no-wrap
-msgid "--enable=<service>"
+msgid "-m <msg>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:161
+#: en/git-commit.txt:147 en/git-notes.txt:133 en/git-svn.txt:469
+#: en/git-tag.txt:156
 #, no-wrap
-msgid "--disable=<service>"
+msgid "--message=<msg>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:167
+#: en/git-commit.txt:151
 msgid ""
-"Enable/disable the service site-wide per default.  Note that a service "
-"disabled site-wide can still be enabled per repository if it is marked "
-"overridable and the repository enables the service with a configuration "
-"item."
+"Use the given <msg> as the commit message.  If multiple `-m` options are "
+"given, their values are concatenated as separate paragraphs."
+msgstr ""
+
+#. type: Plain text
+#: en/git-commit.txt:153
+msgid "The `-m` option is mutually exclusive with `-c`, `-C`, and `-F`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:168
+#: en/git-commit.txt:154
 #, no-wrap
-msgid "--allow-override=<service>"
+msgid "-t <file>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:169
+#: en/git-commit.txt:155
 #, no-wrap
-msgid "--forbid-override=<service>"
+msgid "--template=<file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:173
+#: en/git-commit.txt:164
 msgid ""
-"Allow/forbid overriding the site-wide default with per repository "
-"configuration.  By default, all the services may be overridden."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-daemon.txt:174
-#, no-wrap
-msgid "--[no-]informative-errors"
+"When editing the commit message, start the editor with the contents in the "
+"given file.  The `commit.template` configuration variable is often used to "
+"give this option implicitly to the command.  This mechanism can be used by "
+"projects that want to guide participants with some hints on what to write in "
+"the message in what order.  If the user exits the editor without editing the "
+"message, the commit is aborted.  This has no effect when a message is given "
+"by other means, e.g. with the `-m` or `-F` options."
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:182
+#: en/git-commit.txt:173 en/merge-options.txt:69
 msgid ""
-"When informative errors are turned on, git-daemon will report more verbose "
-"errors to the client, differentiating conditions like \"no such repository\" "
-"from \"repository not exported\". This is more convenient for clients, but "
-"may leak information about the existence of unexported repositories.  When "
-"informative errors are not enabled, all errors report \"access denied\" to "
-"the client. The default is --no-informative-errors."
+"Add Signed-off-by line by the committer at the end of the commit log "
+"message.  The meaning of a signoff depends on the project, but it typically "
+"certifies that committer has the rights to submit this work under the same "
+"license and agrees to a Developer Certificate of Origin (see http://"
+"developercertificate.org/ for more information)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:183
+#: en/git-commit.txt:175 en/git-rebase.txt:325
 #, no-wrap
-msgid "--access-hook=<path>"
+msgid "--no-verify"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:193
+#: en/git-commit.txt:178
 msgid ""
-"Every time a client connects, first run an external command specified by the "
-"<path> with service name (e.g. \"upload-pack\"), path to the repository, "
-"hostname (%H), canonical hostname (%CH), IP address (%IP), and TCP port (%P) "
-"as its command-line arguments. The external command can decide to decline "
-"the service by exiting with a non-zero status (or to allow it by exiting "
-"with a zero status).  It can also look at the $REMOTE_ADDR and "
-"`$REMOTE_PORT` environment variables to learn about the requestor when "
-"making this decision."
+"This option bypasses the pre-commit and commit-msg hooks.  See also linkgit:"
+"githooks[5]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:197
+#: en/git-commit.txt:184
 msgid ""
-"The external command can optionally write a single line to its standard "
-"output to be sent to the requestor as an error message when it declines the "
-"service."
+"Usually recording a commit that has the exact same tree as its sole parent "
+"commit is a mistake, and the command prevents you from making such a "
+"commit.  This option bypasses the safety, and is primarily for use by "
+"foreign SCM interface scripts."
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:202
+#: en/git-commit.txt:190
 msgid ""
-"A directory to add to the whitelist of allowed directories. Unless "
-"--strict-paths is specified this will also include subdirectories of each "
-"named directory."
+"Like --allow-empty this command is primarily for use by foreign SCM "
+"interface scripts. It allows you to create a commit with an empty commit "
+"message without using plumbing commands like linkgit:git-commit-tree[1]."
 msgstr ""
 
-#. type: Title -
-#: en/git-daemon.txt:204 en/git-http-backend.txt:33
+#. type: Labeled list
+#: en/git-commit.txt:191 en/git-tag.txt:176
 #, no-wrap
-msgid "SERVICES"
+msgid "--cleanup=<mode>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:212
+#: en/git-commit.txt:195
 msgid ""
-"These services can be globally enabled/disabled using the command-line "
-"options of this command.  If finer-grained control is desired (e.g. to allow "
-"'git archive' to be run against only in a few selected repositories the "
-"daemon serves), the per-repository configuration file can be used to enable "
-"or disable them."
+"This option determines how the supplied commit message should be cleaned up "
+"before committing.  The '<mode>' can be `strip`, `whitespace`, `verbatim`, "
+"`scissors` or `default`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:213
+#: en/git-commit.txt:197
 #, no-wrap
-msgid "upload-pack"
+msgid "strip"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:218
+#: en/git-commit.txt:200
 msgid ""
-"This serves 'git fetch-pack' and 'git ls-remote' clients.  It is enabled by "
-"default, but a repository can disable it by setting `daemon.uploadpack` "
-"configuration item to `false`."
+"Strip leading and trailing empty lines, trailing whitespace, commentary and "
+"collapse consecutive empty lines."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:219
+#: en/git-commit.txt:200
 #, no-wrap
-msgid "upload-archive"
+msgid "whitespace"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:223
-msgid ""
-"This serves 'git archive --remote'.  It is disabled by default, but a "
-"repository can enable it by setting `daemon.uploadarch` configuration item "
-"to `true`."
+#: en/git-commit.txt:202
+msgid "Same as `strip` except #commentary is not removed."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:224
+#: en/git-commit.txt:202
 #, no-wrap
-msgid "receive-pack"
+msgid "verbatim"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:233
-msgid ""
-"This serves 'git send-pack' clients, allowing anonymous push.  It is "
-"disabled by default, as there is _no_ authentication in the protocol (in "
-"other words, anybody can push anything into the repository, including "
-"removal of refs).  This is solely meant for a closed LAN setting where "
-"everybody is friendly.  This service can be enabled by setting "
-"`daemon.receivepack` configuration item to `true`."
+#: en/git-commit.txt:204
+msgid "Do not change the message at all."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:236
+#: en/git-commit.txt:204
 #, no-wrap
-msgid "We assume the following in /etc/services"
+msgid "scissors"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-daemon.txt:241
-#, no-wrap
+#. type: Plain text
+#: en/git-commit.txt:208
 msgid ""
-"$ grep 9418 /etc/services\n"
-"git\t\t9418/tcp\t\t# Git Version Control System\n"
+"Same as `whitespace` except that everything from (and including)  the line "
+"found below is truncated, if the message is to be edited.  \"`#`\" can be "
+"customized with core.commentChar."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-daemon.txt:243
+#. type: Plain text
+#: en/git-commit.txt:210
 #, no-wrap
-msgid "'git daemon' as inetd server"
+msgid "# ------------------------ >8 ------------------------\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:248
+#: en/git-commit.txt:214
 msgid ""
-"To set up 'git daemon' as an inetd service that handles any repository under "
-"the whitelisted set of directories, /pub/foo and /pub/bar, place an entry "
-"like the following into /etc/inetd all on one line:"
+"Same as `strip` if the message is to be edited.  Otherwise `whitespace`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-daemon.txt:253
-#, no-wrap
+#. type: Plain text
+#: en/git-commit.txt:218
 msgid ""
-"\tgit stream tcp nowait nobody  /usr/bin/git\n"
-"\t\tgit daemon --inetd --verbose --export-all\n"
-"\t\t/pub/foo /pub/bar\n"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-daemon.txt:256
-#, no-wrap
-msgid "'git daemon' as inetd server for virtual hosts"
+"The default can be changed by the `commit.cleanup` configuration variable "
+"(see linkgit:git-config[1])."
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:261
+#: en/git-commit.txt:225
 msgid ""
-"To set up 'git daemon' as an inetd service that handles repositories for "
-"different virtual hosts, `www.example.com` and `www.example.org`, place an "
-"entry like the following into `/etc/inetd` all on one line:"
+"The message taken from file with `-F`, command line with `-m`, and from "
+"commit object with `-C` are usually used as the commit log message "
+"unmodified. This option lets you further edit the message taken from these "
+"sources."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-daemon.txt:269
+#. type: Labeled list
+#: en/git-commit.txt:226 en/git-revert.txt:65 en/merge-options.txt:12
 #, no-wrap
-msgid ""
-"\tgit stream tcp nowait nobody /usr/bin/git\n"
-"\t\tgit daemon --inetd --verbose --export-all\n"
-"\t\t--interpolated-path=/pub/%H%D\n"
-"\t\t/pub/www.example.org/software\n"
-"\t\t/pub/www.example.com/software\n"
-"\t\t/software\n"
+msgid "--no-edit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:277
+#: en/git-commit.txt:230
 msgid ""
-"In this example, the root-level directory `/pub` will contain a subdirectory "
-"for each virtual host name supported.  Further, both hosts advertise "
-"repositories simply as `git://www.example.com/software/repo.git`.  For "
-"pre-1.4.0 clients, a symlink from `/software` into the appropriate default "
-"repository could be made as well."
+"Use the selected commit message without launching an editor.  For example, "
+"`git commit --amend --no-edit` amends a commit without changing its commit "
+"message."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-daemon.txt:279
+#: en/git-commit.txt:231
 #, no-wrap
-msgid "'git daemon' as regular daemon for virtual hosts"
+msgid "--amend"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:283
+#: en/git-commit.txt:241
 msgid ""
-"To set up 'git daemon' as a regular, non-inetd service that handles "
-"repositories for multiple virtual hosts based on their IP addresses, start "
-"the daemon like this:"
+"Replace the tip of the current branch by creating a new commit. The recorded "
+"tree is prepared as usual (including the effect of the `-i` and `-o` options "
+"and explicit pathspec), and the message from the original commit is used as "
+"the starting point, instead of an empty message, when no other message is "
+"specified from the command line via options such as `-m`, `-F`, `-c`, etc.  "
+"The new commit has the same parents and author as the current one (the `--"
+"reset-author` option can countermand this)."
+msgstr ""
+
+#. type: Plain text
+#: en/git-commit.txt:244
+msgid "It is a rough equivalent for:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-daemon.txt:289
+#: en/git-commit.txt:248
 #, no-wrap
 msgid ""
-"\tgit daemon --verbose --export-all\n"
-"\t\t--interpolated-path=/pub/%IP/%D\n"
-"\t\t/pub/192.168.1.200/software\n"
-"\t\t/pub/10.10.220.23/software\n"
+"\t$ git reset --soft HEAD^\n"
+"\t$ ... do something else to come up with the right tree ...\n"
+"\t$ git commit -c ORIG_HEAD\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:295
-msgid ""
-"In this example, the root-level directory `/pub` will contain a subdirectory "
-"for each virtual host IP address supported.  Repositories can still be "
-"accessed by hostname though, assuming they correspond to these IP addresses."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-daemon.txt:296
-#, no-wrap
-msgid "selectively enable/disable services per repository"
+#: en/git-commit.txt:251
+msgid "but can be used to amend a merge commit."
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:301
+#: en/git-commit.txt:256
 msgid ""
-"To enable 'git archive --remote' and disable 'git fetch' against a "
-"repository, have the following in the configuration file in the repository "
-"(that is the file 'config' next to `HEAD`, 'refs' and 'objects')."
+"You should understand the implications of rewriting history if you amend a "
+"commit that has already been published.  (See the \"RECOVERING FROM UPSTREAM "
+"REBASE\" section in linkgit:git-rebase[1].)"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-daemon.txt:306
+#. type: Labeled list
+#: en/git-commit.txt:257
 #, no-wrap
-msgid ""
-"\t[daemon]\n"
-"\t\tuploadpack = false\n"
-"\t\tuploadarch = true\n"
+msgid "--no-post-rewrite"
 msgstr ""
 
 #. type: Plain text
-#: en/git-daemon.txt:315
-msgid ""
-"'git daemon' will set REMOTE_ADDR to the IP address of the client that "
-"connected to it, if the IP address is available. REMOTE_ADDR will be "
-"available in the environment of hooks called when services are performed."
+#: en/git-commit.txt:259
+msgid "Bypass the post-rewrite hook."
 msgstr ""
 
-#. type: Title =
-#: en/git-describe.txt:2
+#. type: Labeled list
+#: en/git-commit.txt:261
 #, no-wrap
-msgid "git-describe(1)"
+msgid "--include"
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:7
-msgid "git-describe - Describe a commit using the most recent tag reachable from it"
+#: en/git-commit.txt:266
+msgid ""
+"Before making a commit out of staged contents so far, stage the contents of "
+"paths given on the command line as well.  This is usually not what you want "
+"unless you are concluding a conflicted merge."
 msgstr ""
 
-#. type: Plain text
-#: en/git-describe.txt:14
+#. type: Labeled list
+#: en/git-commit.txt:268
 #, no-wrap
-msgid ""
-"'git describe' [--all] [--tags] [--contains] [--abbrev=<n>] "
-"[<commit-ish>...]\n"
-"'git describe' [--all] [--tags] [--contains] [--abbrev=<n>] "
-"--dirty[=<mark>]\n"
+msgid "--only"
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:22
+#: en/git-commit.txt:280
 msgid ""
-"The command finds the most recent tag that is reachable from a commit.  If "
-"the tag points to the commit, then only the tag is shown.  Otherwise, it "
-"suffixes the tag name with the number of additional commits on top of the "
-"tagged object and the abbreviated object name of the most recent commit."
+"Make a commit by taking the updated working tree contents of the paths "
+"specified on the command line, disregarding any contents that have been "
+"staged for other paths. This is the default mode of operation of 'git "
+"commit' if any paths are given on the command line, in which case this "
+"option can be omitted.  If this option is specified together with `--amend`, "
+"then no paths need to be specified, which can be used to amend the last "
+"commit without committing changes that have already been staged. If used "
+"together with `--allow-empty` paths are also not required, and an empty "
+"commit will be created."
 msgstr ""
 
-#. type: Plain text
-#: en/git-describe.txt:26
-msgid ""
-"By default (without --all or --tags) `git describe` only shows annotated "
-"tags.  For more information about creating annotated tags see the -a and -s "
-"options to linkgit:git-tag[1]."
+#. type: Labeled list
+#: en/git-commit.txt:281 en/git-status.txt:58
+#, no-wrap
+msgid "-u[<mode>]"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-describe.txt:29
+#: en/git-commit.txt:282 en/git-status.txt:59
 #, no-wrap
-msgid "<commit-ish>..."
+msgid "--untracked-files[=<mode>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:31
-msgid "Commit-ish object names to describe.  Defaults to HEAD if omitted."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-describe.txt:32
-#, no-wrap
-msgid "--dirty[=<mark>]"
+#: en/git-commit.txt:284 en/git-status.txt:61
+msgid "Show untracked files."
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:36
+#: en/git-commit.txt:288
 msgid ""
-"Describe the working tree.  It means describe HEAD and appends <mark> "
-"(`-dirty` by default) if the working tree is dirty."
+"The mode parameter is optional (defaults to 'all'), and is used to specify "
+"the handling of untracked files; when -u is not used, the default is "
+"'normal', i.e. show untracked files and directories."
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:41
-msgid ""
-"Instead of using only the annotated tags, use any ref found in `refs/` "
-"namespace.  This option enables matching any known branch, remote-tracking "
-"branch, or lightweight tag."
+#: en/git-commit.txt:290 en/git-status.txt:67 en/git-status.txt:107
+msgid "The possible options are:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-describe.txt:42 en/git-fsck.txt:41 en/git-ls-remote.txt:27 en/git-name-rev.txt:24 en/git-push.txt:130 en/git-show-ref.txt:40 en/fetch-options.txt:99
+#. type: Plain text
+#: en/git-commit.txt:292
 #, no-wrap
-msgid "--tags"
+msgid "'no'     - Show no untracked files\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:46
-msgid ""
-"Instead of using only the annotated tags, use any tag found in `refs/tags` "
-"namespace.  This option enables matching a lightweight (non-annotated) tag."
+#: en/git-commit.txt:293
+#, no-wrap
+msgid "'normal' - Shows untracked files and directories\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-describe.txt:47
+#. type: Plain text
+#: en/git-commit.txt:294 en/git-status.txt:71
 #, no-wrap
-msgid "--contains"
+msgid "'all'    - Also shows individual files in untracked directories.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:51
+#: en/git-commit.txt:297 en/git-status.txt:84
 msgid ""
-"Instead of finding the tag that predates the commit, find the tag that comes "
-"after the commit, and thus contains it.  Automatically implies --tags."
+"The default can be changed using the status.showUntrackedFiles configuration "
+"variable documented in linkgit:git-config[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:57
+#: en/git-commit.txt:308
 msgid ""
-"Instead of using the default 7 hexadecimal digits as the abbreviated object "
-"name, use <n> digits, or as many digits as needed to form a unique object "
-"name.  An <n> of 0 will suppress long format, only showing the closest tag."
+"Show unified diff between the HEAD commit and what would be committed at the "
+"bottom of the commit message template to help the user describe the commit "
+"by reminding what changes the commit has.  Note that this diff output "
+"doesn't have its lines prefixed with '#'. This diff will not be a part of "
+"the commit message. See the `commit.verbose` configuration variable in "
+"linkgit:git-config[1]."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-describe.txt:58
-#, no-wrap
-msgid "--candidates=<n>"
+#. type: Plain text
+#: en/git-commit.txt:312
+msgid ""
+"If specified twice, show in addition the unified diff between what would be "
+"committed and the worktree files, i.e. the unstaged changes to tracked files."
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:64
+#: en/git-commit.txt:316
+msgid "Suppress commit summary message."
+msgstr ""
+
+#. type: Plain text
+#: en/git-commit.txt:321
 msgid ""
-"Instead of considering only the 10 most recent tags as candidates to "
-"describe the input commit-ish consider up to <n> candidates.  Increasing <n> "
-"above 10 will take slightly longer but may produce a more accurate result.  "
-"An <n> of 0 will cause only exact matches to be output."
+"Do not create a commit, but show a list of paths that are to be committed, "
+"paths with local changes that will be left uncommitted and paths that are "
+"untracked."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-describe.txt:65
+#: en/git-commit.txt:322
 #, no-wrap
-msgid "--exact-match"
+msgid "--status"
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:68
+#: en/git-commit.txt:327
 msgid ""
-"Only output exact matches (a tag directly references the supplied commit).  "
-"This is a synonym for --candidates=0."
+"Include the output of linkgit:git-status[1] in the commit message template "
+"when using an editor to prepare the commit message.  Defaults to on, but can "
+"be used to override configuration variable commit.status."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-describe.txt:69 en/git-ls-files.txt:151
+#: en/git-commit.txt:328
 #, no-wrap
-msgid "--debug"
+msgid "--no-status"
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:73
+#: en/git-commit.txt:332
 msgid ""
-"Verbosely display information about the searching strategy being employed to "
-"standard error.  The tag name will still be printed to standard out."
+"Do not include the output of linkgit:git-status[1] in the commit message "
+"template when using an editor to prepare the default commit message."
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:82
+#: en/git-commit.txt:342
 msgid ""
-"Always output the long format (the tag, the number of commits and the "
-"abbreviated commit name) even when it matches a tag.  This is useful when "
-"you want to see parts of the commit object name in \"describe\" output, even "
-"when the commit in question happens to be a tagged version.  Instead of just "
-"emitting the tag name, it will describe such a commit as v1.2-0-gdeadbee "
-"(0th commit since tag v1.2 that points at object deadbee....)."
+"Countermand `commit.gpgSign` configuration variable that is set to force "
+"each and every commit to be signed."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-describe.txt:83
+#: en/git-commit.txt:346 en/git-rm.txt:29
 #, no-wrap
-msgid "--match <pattern>"
+msgid "<file>..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:90
+#: en/git-commit.txt:352
 msgid ""
-"Only consider tags matching the given `glob(7)` pattern, excluding the "
-"\"refs/tags/\" prefix.  This can be used to avoid leaking private tags from "
-"the repository. If given multiple times, a list of patterns will be "
-"accumulated, and tags matching any of the patterns will be considered. Use "
-"`--no-match` to clear and reset the list of patterns."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-describe.txt:91
-#, no-wrap
-msgid "--exclude <pattern>"
+"When files are given on the command line, the command commits the contents "
+"of the named files, without recording the changes already staged.  The "
+"contents of these files are also staged for the next commit on top of what "
+"have been staged before."
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:100
+#: en/git-commit.txt:369
 msgid ""
-"Do not consider tags matching the given `glob(7)` pattern, excluding the "
-"\"refs/tags/\" prefix. This can be used to narrow the tag space and find "
-"only tags matching some meaningful criteria. If given multiple times, a list "
-"of patterns will be accumulated and tags matching any of the patterns will "
-"be excluded. When combined with --match a tag will be considered when it "
-"matches at least one --match pattern and does not match any of the --exclude "
-"patterns. Use `--no-exclude` to clear and reset the list of patterns."
+"When recording your own work, the contents of modified files in your working "
+"tree are temporarily stored to a staging area called the \"index\" with 'git "
+"add'.  A file can be reverted back, only in the index but not in the working "
+"tree, to that of the last commit with `git reset HEAD -- <file>`, which "
+"effectively reverts 'git add' and prevents the changes to this file from "
+"participating in the next commit.  After building the state to be committed "
+"incrementally with these commands, `git commit` (without any pathname "
+"parameter) is used to record what has been staged so far.  This is the most "
+"basic form of the command.  An example:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-describe.txt:101 en/git-diff-tree.txt:111 en/git-name-rev.txt:61
+#. type: delimited block -
+#: en/git-commit.txt:375
 #, no-wrap
-msgid "--always"
+msgid ""
+"$ edit hello.c\n"
+"$ git rm goodbye.c\n"
+"$ git add hello.c\n"
+"$ git commit\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:103 en/git-name-rev.txt:63
-msgid "Show uniquely abbreviated commit object as fallback."
+#: en/git-commit.txt:383
+msgid ""
+"Instead of staging files after each individual change, you can tell `git "
+"commit` to notice the changes to the files whose contents are tracked in "
+"your working tree and do corresponding `git add` and `git rm` for you.  That "
+"is, this example does the same as the earlier example if there is no other "
+"change in your working tree:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-describe.txt:104 en/rev-list-options.txt:121
+#. type: delimited block -
+#: en/git-commit.txt:388
 #, no-wrap
-msgid "--first-parent"
+msgid ""
+"$ edit hello.c\n"
+"$ rm goodbye.c\n"
+"$ git commit -a\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:108
+#: en/git-commit.txt:393
 msgid ""
-"Follow only the first parent commit upon seeing a merge commit.  This is "
-"useful when you wish to not match tags on branches merged in the history of "
-"the target commit."
+"The command `git commit -a` first looks at your working tree, notices that "
+"you have modified hello.c and removed goodbye.c, and performs necessary `git "
+"add` and `git rm` for you."
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:113
-msgid "With something like git.git current tree, I get:"
+#: en/git-commit.txt:398
+msgid ""
+"After staging changes to many files, you can alter the order the changes are "
+"recorded in, by giving pathnames to `git commit`.  When pathnames are given, "
+"the command makes a commit that only records the changes made to the named "
+"paths:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-describe.txt:116
+#. type: delimited block -
+#: en/git-commit.txt:404
 #, no-wrap
 msgid ""
-"\t[torvalds@g5 git]$ git describe parent\n"
-"\tv1.0.4-14-g2414721\n"
+"$ edit hello.c hello.h\n"
+"$ git add hello.c hello.h\n"
+"$ edit Makefile\n"
+"$ git commit Makefile\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:122
+#: en/git-commit.txt:411
 msgid ""
-"i.e. the current head of my \"parent\" branch is based on v1.0.4, but since "
-"it has a few commits on top of that, describe has added the number of "
-"additional commits (\"14\") and an abbreviated object name for the commit "
-"itself (\"2414721\")  at the end."
+"This makes a commit that records the modification to `Makefile`.  The "
+"changes staged for `hello.c` and `hello.h` are not included in the resulting "
+"commit.  However, their changes are not lost -- they are still staged and "
+"merely held back.  After the above sequence, if you do:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-commit.txt:414 en/git-commit.txt:440
+#, no-wrap
+msgid "$ git commit\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:130
+#: en/git-commit.txt:418
 msgid ""
-"The number of additional commits is the number of commits which would be "
-"displayed by \"git log v1.0.4..parent\".  The hash suffix is \"-g\" + 7-char "
-"abbreviation for the tip commit of parent (which was "
-"`2414721b194453f058079d897d13c4e377f92dc6`).  The \"g\" prefix stands for "
-"\"git\" and is used to allow describing the version of a software depending "
-"on the SCM the software is managed with. This is useful in an environment "
-"where people may use different SCMs."
+"this second commit would record the changes to `hello.c` and `hello.h` as "
+"expected."
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:132
-msgid "Doing a 'git describe' on a tag-name will just show the tag name:"
+#: en/git-commit.txt:426
+msgid ""
+"After a merge (initiated by 'git merge' or 'git pull') stops because of "
+"conflicts, cleanly merged paths are already staged to be committed for you, "
+"and paths that conflicted are left in unmerged state.  You would have to "
+"first check which paths are conflicting with 'git status' and after fixing "
+"them manually in your working tree, you would stage the result as usual with "
+"'git add':"
 msgstr ""
 
-#. type: Plain text
-#: en/git-describe.txt:135
+#. type: delimited block -
+#: en/git-commit.txt:432
 #, no-wrap
 msgid ""
-"\t[torvalds@g5 git]$ git describe v1.0.4\n"
-"\tv1.0.4\n"
+"$ git status | grep unmerged\n"
+"unmerged: hello.c\n"
+"$ edit hello.c\n"
+"$ git add hello.c\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:138
+#: en/git-commit.txt:437
 msgid ""
-"With --all, the command can use branch heads as references, so the output "
-"shows the reference path as well:"
+"After resolving conflicts and staging the result, `git ls-files -u` would "
+"stop mentioning the conflicted path.  When you are done, run `git commit` to "
+"finally record the merge:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:141
-#, no-wrap
+#: en/git-commit.txt:448
 msgid ""
-"\t[torvalds@g5 git]$ git describe --all --abbrev=4 v1.0.5^2\n"
-"\ttags/v1.0.0-21-g975b\n"
+"As with the case to record your own changes, you can use `-a` option to save "
+"typing.  One difference is that during a merge resolution, you cannot use "
+"`git commit` with pathnames to alter the order the changes are committed, "
+"because the merge should be recorded as a single commit.  In fact, the "
+"command refuses to run when given pathnames (but see `-i` option)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:144
-#, no-wrap
+#: en/git-commit.txt:460
 msgid ""
-"\t[torvalds@g5 git]$ git describe --all --abbrev=4 HEAD^\n"
-"\theads/lt/describe-7-g975b\n"
+"Though not required, it's a good idea to begin the commit message with a "
+"single short (less than 50 character) line summarizing the change, followed "
+"by a blank line and then a more thorough description.  The text up to the "
+"first blank line in a commit message is treated as the commit title, and "
+"that title is used throughout Git.  For example, linkgit:git-format-patch[1] "
+"turns a commit into email, and it uses the title on the Subject line and the "
+"rest of the commit in the body."
 msgstr ""
 
-#. type: Plain text
-#: en/git-describe.txt:147
-msgid ""
-"With --abbrev set to 0, the command can be used to find the closest tagname "
-"without any suffix:"
+#. type: Title -
+#: en/git-commit.txt:464
+#, no-wrap
+msgid "ENVIRONMENT AND CONFIGURATION VARIABLES"
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:150
-#, no-wrap
+#: en/git-commit.txt:469
 msgid ""
-"\t[torvalds@g5 git]$ git describe --abbrev=0 v1.0.5^2\n"
-"\ttags/v1.0.0\n"
+"The editor used to edit the commit log message will be chosen from the "
+"`GIT_EDITOR` environment variable, the core.editor configuration variable, "
+"the `VISUAL` environment variable, or the `EDITOR` environment variable (in "
+"that order).  See linkgit:git-var[1] for details."
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:156
+#: en/git-commit.txt:475
 msgid ""
-"Note that the suffix you get if you type these commands today may be longer "
-"than what Linus saw above when he ran these commands, as your Git repository "
-"may have new commits whose object names begin with 975b that did not exist "
-"back then, and \"-g975b\" suffix alone may not be sufficient to disambiguate "
-"these commits."
+"This command can run `commit-msg`, `prepare-commit-msg`, `pre-commit`, `post-"
+"commit` and `post-rewrite` hooks.  See linkgit:githooks[5] for more "
+"information."
 msgstr ""
 
-#. type: Title -
-#: en/git-describe.txt:159
+#. type: Labeled list
+#: en/git-commit.txt:479
 #, no-wrap
-msgid "SEARCH STRATEGY"
-msgstr ""
-
-#. type: Plain text
-#: en/git-describe.txt:166
-msgid ""
-"For each commit-ish supplied, 'git describe' will first look for a tag which "
-"tags exactly that commit.  Annotated tags will always be preferred over "
-"lightweight tags, and tags with newer dates will always be preferred over "
-"tags with older dates.  If an exact match is found, its name will be output "
-"and searching will stop."
+msgid "`$GIT_DIR/COMMIT_EDITMSG`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:173
+#: en/git-commit.txt:485
 msgid ""
-"If an exact match was not found, 'git describe' will walk back through the "
-"commit history to locate an ancestor commit which has been tagged.  The "
-"ancestor's tag will be output along with an abbreviation of the input "
-"commit-ish's SHA-1. If `--first-parent` was specified then the walk will "
-"only consider the first parent of each commit."
+"This file contains the commit message of a commit in progress.  If `git "
+"commit` exits due to an error before creating a commit, any commit message "
+"that has been provided by the user (e.g., in an editor session) will be "
+"available in this file, but will be overwritten by the next invocation of "
+"`git commit`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-describe.txt:179
+#: en/git-commit.txt:493
 msgid ""
-"If multiple tags were found during the walk then the tag which has the "
-"fewest commits different from the input commit-ish will be selected and "
-"output.  Here fewest commits different is defined as the number of commits "
-"which would be shown by `git log tag..input` will be the smallest number of "
-"commits possible."
+"linkgit:git-add[1], linkgit:git-rm[1], linkgit:git-mv[1], linkgit:git-"
+"merge[1], linkgit:git-commit-tree[1]"
 msgstr ""
 
 #. type: Title =
-#: en/git-diff-files.txt:2
+#: en/git-config.txt:2
 #, no-wrap
-msgid "git-diff-files(1)"
+msgid "git-config(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-files.txt:7
-msgid "git-diff-files - Compares files in the working tree and the index"
+#: en/git-config.txt:7
+msgid "git-config - Get and set repository or global options"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-files.txt:13
+#: en/git-config.txt:27
 #, no-wrap
 msgid ""
-"'git diff-files' [-q] [-0|-1|-2|-3|-c|--cc] [<common diff options>] "
-"[<path>...]\n"
+"'git config' [<file-option>] [--type=<type>] [--show-origin] [-z|--null] name [value [value_regex]]\n"
+"'git config' [<file-option>] [--type=<type>] --add name value\n"
+"'git config' [<file-option>] [--type=<type>] --replace-all name value [value_regex]\n"
+"'git config' [<file-option>] [--type=<type>] [--show-origin] [-z|--null] --get name [value_regex]\n"
+"'git config' [<file-option>] [--type=<type>] [--show-origin] [-z|--null] --get-all name [value_regex]\n"
+"'git config' [<file-option>] [--type=<type>] [--show-origin] [-z|--null] [--name-only] --get-regexp name_regex [value_regex]\n"
+"'git config' [<file-option>] [--type=<type>] [-z|--null] --get-urlmatch name URL\n"
+"'git config' [<file-option>] --unset name [value_regex]\n"
+"'git config' [<file-option>] --unset-all name [value_regex]\n"
+"'git config' [<file-option>] --rename-section old_name new_name\n"
+"'git config' [<file-option>] --remove-section name\n"
+"'git config' [<file-option>] [--show-origin] [-z|--null] [--name-only] -l | --list\n"
+"'git config' [<file-option>] --get-color name [default]\n"
+"'git config' [<file-option>] --get-colorbool name [stdout-is-tty]\n"
+"'git config' [<file-option>] -e | --edit\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-files.txt:20
+#: en/git-config.txt:33
 msgid ""
-"Compares the files in the working tree and the index.  When paths are "
-"specified, compares only those named paths.  Otherwise all entries in the "
-"index are compared.  The output format is the same as for 'git diff-index' "
-"and 'git diff-tree'."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-diff-files.txt:25
-#, no-wrap
-msgid "-1 --base"
+"You can query/set/replace/unset options with this command. The name is "
+"actually the section and the key separated by a dot, and the value will be "
+"escaped."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-diff-files.txt:26
-#, no-wrap
-msgid "-2 --ours"
+#. type: Plain text
+#: en/git-config.txt:40
+msgid ""
+"Multiple lines can be added to an option by using the `--add` option.  If "
+"you want to update or unset an option which can occur on multiple lines, a "
+"POSIX regexp `value_regex` needs to be given.  Only the existing values that "
+"match the regexp are updated or unset.  If you want to handle the lines that "
+"do *not* match the regex, just prepend a single exclamation mark in front "
+"(see also <<EXAMPLES>>)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-diff-files.txt:27
-#, no-wrap
-msgid "-3 --theirs"
+#. type: Plain text
+#: en/git-config.txt:45
+msgid ""
+"The `--type=<type>` option instructs 'git config' to ensure that incoming "
+"and outgoing values are canonicalize-able under the given <type>.  If no `--"
+"type=<type>` is given, no canonicalization will be performed. Callers may "
+"unset an existing `--type` specifier with `--no-type`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-files.txt:32
+#: en/git-config.txt:51
 msgid ""
-"Diff against the \"base\" version, \"our branch\" or \"their branch\" "
-"respectively.  With these options, diffs for merged entries are not shown."
+"When reading, the values are read from the system, global and repository "
+"local configuration files by default, and options `--system`, `--global`, `--"
+"local`, `--worktree` and `--file <filename>` can be used to tell the command "
+"to read from only that location (see <<FILES>>)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-files.txt:36
+#: en/git-config.txt:57
 msgid ""
-"The default is to diff against our branch (-2) and the cleanly resolved "
-"paths.  The option -0 can be given to omit diff output for unmerged entries "
-"and just show \"Unmerged\"."
+"When writing, the new value is written to the repository local configuration "
+"file by default, and options `--system`, `--global`, `--worktree`, `--file "
+"<filename>` can be used to tell the command to write to that location (you "
+"can say `--local` but that is the default)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-diff-files.txt:38 en/git-diff-tree.txt:101 en/rev-list-options.txt:873
-#, no-wrap
-msgid "--cc"
+#. type: Plain text
+#: en/git-config.txt:60
+msgid ""
+"This command will fail with non-zero status upon error.  Some exit codes are:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-files.txt:43
-msgid ""
-"This compares stage 2 (our branch), stage 3 (their branch) and the working "
-"tree file and outputs a combined diff, similar to the way 'diff-tree' shows "
-"a merge commit with these flags."
+#: en/git-config.txt:62
+msgid "The section or key is invalid (ret=1),"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-files.txt:46
-msgid "Remain silent even on nonexistent files"
+#: en/git-config.txt:63
+msgid "no section or name was provided (ret=2),"
 msgstr ""
 
-#. type: Title =
-#: en/git-diff-index.txt:2
-#, no-wrap
-msgid "git-diff-index(1)"
+#. type: Plain text
+#: en/git-config.txt:64
+msgid "the config file is invalid (ret=3),"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-index.txt:7
-msgid "git-diff-index - Compare a tree to the working tree or index"
+#: en/git-config.txt:65
+msgid "the config file cannot be written (ret=4),"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-index.txt:13
-#, no-wrap
-msgid ""
-"'git diff-index' [-m] [--cached] [<common diff options>] <tree-ish> "
-"[<path>...]\n"
+#: en/git-config.txt:66
+msgid "you try to unset an option which does not exist (ret=5),"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-index.txt:21
+#: en/git-config.txt:67
 msgid ""
-"Compares the content and mode of the blobs found in a tree object with the "
-"corresponding tracked files in the working tree, or with the corresponding "
-"paths in the index.  When <path> arguments are present, compares only paths "
-"matching those patterns.  Otherwise all tracked files are compared."
+"you try to unset/set an option for which multiple lines match (ret=5), or"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-index.txt:28
-msgid "The id of a tree object to diff against."
+#: en/git-config.txt:68
+msgid "you try to use an invalid regexp (ret=6)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-index.txt:31
-msgid "do not consider the on-disk file at all"
+#: en/git-config.txt:70
+msgid "On success, the command returns the exit code 0."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-config.txt:74
+#, no-wrap
+msgid "--replace-all"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-index.txt:37
+#: en/git-config.txt:77
 msgid ""
-"By default, files recorded in the index but not checked out are reported as "
-"deleted.  This flag makes 'git diff-index' say that all non-checked-out "
-"files are up to date."
+"Default behavior is to replace at most one line. This replaces all lines "
+"matching the key (and optionally the value_regex)."
 msgstr ""
 
-#. type: Title -
-#: en/git-diff-index.txt:41
+#. type: Labeled list
+#: en/git-config.txt:78 en/git-update-index.txt:44
 #, no-wrap
-msgid "Operating Modes"
+msgid "--add"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-index.txt:46
+#: en/git-config.txt:82
 msgid ""
-"You can choose whether you want to trust the index file entirely (using the "
-"`--cached` flag) or ask the diff logic to show any files that don't match "
-"the stat state as being \"tentatively changed\".  Both of these operations "
-"are very useful indeed."
+"Adds a new line to the option without altering any existing values.  This is "
+"the same as providing '^$' as the value_regex in `--replace-all`."
 msgstr ""
 
-#. type: Title -
-#: en/git-diff-index.txt:48
+#. type: Labeled list
+#: en/git-config.txt:83
 #, no-wrap
-msgid "Cached Mode"
+msgid "--get"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-index.txt:50
-msgid "If `--cached` is specified, it allows you to ask:"
+#: en/git-config.txt:87
+msgid ""
+"Get the value for a given key (optionally filtered by a regex matching the "
+"value). Returns error code 1 if the key was not found and the last value if "
+"multiple key values were found."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-config.txt:88
+#, no-wrap
+msgid "--get-all"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-index.txt:53
+#: en/git-config.txt:90
+msgid "Like get, but returns all values for a multi-valued key."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-config.txt:91
 #, no-wrap
-msgid ""
-"\tshow me the differences between HEAD and the current index\n"
-"\tcontents (the ones I'd write using 'git write-tree')\n"
+msgid "--get-regexp"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-index.txt:58
+#: en/git-config.txt:97
 msgid ""
-"For example, let's say that you have worked on your working directory, "
-"updated some files in the index and are ready to commit. You want to see "
-"exactly *what* you are going to commit, without having to write a new tree "
-"object and compare it that way, and to do that, you just do"
+"Like --get-all, but interprets the name as a regular expression and writes "
+"out the key names.  Regular expression matching is currently case-sensitive "
+"and done against a canonicalized version of the key in which section and "
+"variable names are lowercased, but subsection names are not."
 msgstr ""
 
-#. type: Plain text
-#: en/git-diff-index.txt:60
+#. type: Labeled list
+#: en/git-config.txt:98
 #, no-wrap
-msgid "\tgit diff-index --cached HEAD\n"
+msgid "--get-urlmatch name URL"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-index.txt:65
+#: en/git-config.txt:105
 msgid ""
-"Example: let's say I had renamed `commit.c` to `git-commit.c`, and I had "
-"done an `update-index` to make that effective in the index file.  `git "
-"diff-files` wouldn't show anything at all, since the index file matches my "
-"working directory. But doing a 'git diff-index' does:"
+"When given a two-part name section.key, the value for section.<url>.key "
+"whose <url> part matches the best to the given URL is returned (if no such "
+"key exists, the value for section.key is used as a fallback).  When given "
+"just the section as name, do so for all the keys in the section and list "
+"them.  Returns error code 1 if no value is found."
 msgstr ""
 
-#. type: Plain text
-#: en/git-diff-index.txt:69
+#. type: Labeled list
+#: en/git-config.txt:106
 #, no-wrap
-msgid ""
-"  torvalds@ppc970:~/git> git diff-index --cached HEAD\n"
-"  -100644 blob    4161aecc6700a2eb579e842af0b7f22b98443f74        commit.c\n"
-"  +100644 blob    4161aecc6700a2eb579e842af0b7f22b98443f74        "
-"git-commit.c\n"
+msgid "--global"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-index.txt:71
-msgid "You can see easily that the above is a rename."
+#: en/git-config.txt:111
+msgid ""
+"For writing options: write to global `~/.gitconfig` file rather than the "
+"repository `.git/config`, write to `$XDG_CONFIG_HOME/git/config` file if "
+"this file exists and the `~/.gitconfig` file doesn't."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-index.txt:75
+#: en/git-config.txt:114
 msgid ""
-"In fact, `git diff-index --cached` *should* always be entirely equivalent to "
-"actually doing a 'git write-tree' and comparing that. Except this one is "
-"much nicer for the case where you just want to check where you are."
+"For reading options: read only from global `~/.gitconfig` and from `"
+"$XDG_CONFIG_HOME/git/config` rather than from all available files."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-index.txt:79
-msgid ""
-"So doing a `git diff-index --cached` is basically very useful when you are "
-"asking yourself \"what have I already marked for being committed, and what's "
-"the difference to a previous tree\"."
+#: en/git-config.txt:116 en/git-config.txt:126 en/git-config.txt:135
+#: en/git-config.txt:332
+msgid "See also <<FILES>>."
 msgstr ""
 
-#. type: Title -
-#: en/git-diff-index.txt:81
+#. type: Labeled list
+#: en/git-config.txt:117
 #, no-wrap
-msgid "Non-cached Mode"
+msgid "--system"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-index.txt:86
+#: en/git-config.txt:121
 msgid ""
-"The \"non-cached\" mode takes a different approach, and is potentially the "
-"more useful of the two in that what it does can't be emulated with a 'git "
-"write-tree' + 'git diff-tree'. Thus that's the default mode.  The non-cached "
-"version asks the question:"
+"For writing options: write to system-wide `$(prefix)/etc/gitconfig` rather "
+"than the repository `.git/config`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-index.txt:89
-#, no-wrap
+#: en/git-config.txt:124
 msgid ""
-"  show me the differences between HEAD and the currently checked out\n"
-"  tree - index contents _and_ files that aren't up-to-date\n"
+"For reading options: read only from system-wide `$(prefix)/etc/gitconfig` "
+"rather than from all available files."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-index.txt:93
+#: en/git-config.txt:130
 msgid ""
-"which is obviously a very useful question too, since that tells you what you "
-"*could* commit. Again, the output matches the 'git diff-tree -r' output to a "
-"tee, but with a twist."
+"For writing options: write to the repository `.git/config` file.  This is"
+"\tthe default behavior."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-index.txt:99
+#: en/git-config.txt:133
 msgid ""
-"The twist is that if some file doesn't match the index, we don't have a "
-"backing store thing for it, and we use the magic \"all-zero\" sha1 to show "
-"that. So let's say that you have edited `kernel/sched.c`, but have not "
-"actually done a 'git update-index' on it yet - there is no \"object\" "
-"associated with the new state, and you get:"
+"For reading options: read only from the repository `.git/config` rather than "
+"from all available files."
 msgstr ""
 
-#. type: Plain text
-#: en/git-diff-index.txt:102
+#. type: Labeled list
+#: en/git-config.txt:136
 #, no-wrap
-msgid ""
-"  torvalds@ppc970:~/v2.6/linux> git diff-index --abbrev HEAD\n"
-"  :100644 100664 7476bb... 000000...      kernel/sched.c\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-diff-index.txt:107
-msgid ""
-"i.e., it shows that the tree has changed, and that `kernel/sched.c` has is "
-"not up-to-date and may contain new stuff. The all-zero sha1 means that to "
-"get the real diff, you need to look at the object in the working directory "
-"directly rather than do an object-to-object diff."
+msgid "--worktree"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-index.txt:113
+#: en/git-config.txt:140
 msgid ""
-"As with other commands of this type, 'git diff-index' does not actually look "
-"at the contents of the file at all. So maybe `kernel/sched.c` hasn't "
-"actually changed, and it's just that you touched it. In either case, it's a "
-"note that you need to 'git update-index' it to make the index be in sync."
+"Similar to `--local` except that `.git/config.worktree` is read from or "
+"written to if `extensions.worktreeConfig` is present. If not it's the same "
+"as `--local`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-diff-index.txt:119
-msgid ""
-"You can have a mixture of files show up as \"has been updated\" and \"is "
-"still dirty in the working directory\" together. You can always tell which "
-"file is in which state, since the \"has been updated\" ones show a valid "
-"sha1, and the \"not in sync with the index\" ones will always have the "
-"special all-zero sha1."
+#. type: Labeled list
+#: en/git-config.txt:141
+#, no-wrap
+msgid "-f config-file"
 msgstr ""
 
-#. type: Title =
-#: en/git-difftool.txt:2
+#. type: Labeled list
+#: en/git-config.txt:142
 #, no-wrap
-msgid "git-difftool(1)"
+msgid "--file config-file"
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:7
-msgid "git-difftool - Show changes using common diff tools"
+#: en/git-config.txt:144
+msgid "Use the given config file instead of the one specified by GIT_CONFIG."
 msgstr ""
 
-#. type: Plain text
-#: en/git-difftool.txt:12
+#. type: Labeled list
+#: en/git-config.txt:145
 #, no-wrap
-msgid "'git difftool' [<options>] [<commit> [<commit>]] [--] [<path>...]\n"
+msgid "--blob blob"
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:19
+#: en/git-config.txt:151
 msgid ""
-"'git difftool' is a Git command that allows you to compare and edit files "
-"between revisions using common diff tools.  'git difftool' is a frontend to "
-"'git diff' and accepts the same options and arguments. See "
-"linkgit:git-diff[1]."
+"Similar to `--file` but use the given blob instead of a file. E.g.  you can "
+"use 'master:.gitmodules' to read values from the file '.gitmodules' in the "
+"master branch. See \"SPECIFYING REVISIONS\" section in linkgit:"
+"gitrevisions[7] for a more complete list of ways to spell blob names."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-difftool.txt:23
+#: en/git-config.txt:152
 #, no-wrap
-msgid "--dir-diff"
+msgid "--remove-section"
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:27
-msgid ""
-"Copy the modified files to a temporary location and perform a directory diff "
-"on them. This mode never prompts before launching the diff tool."
+#: en/git-config.txt:154
+msgid "Remove the given section from the configuration file."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-difftool.txt:28 en/git-mergetool.txt:70
+#: en/git-config.txt:155
 #, no-wrap
-msgid "-y"
+msgid "--rename-section"
+msgstr ""
+
+#. type: Plain text
+#: en/git-config.txt:157
+msgid "Rename the given section to a new name."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-difftool.txt:29 en/git-mergetool.txt:71
+#: en/git-config.txt:158
 #, no-wrap
-msgid "--no-prompt"
+msgid "--unset"
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:31
-msgid "Do not prompt before launching a diff tool."
+#: en/git-config.txt:160
+msgid "Remove the line matching the key from config file."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-difftool.txt:32 en/git-mergetool.txt:78
+#: en/git-config.txt:161
 #, no-wrap
-msgid "--prompt"
+msgid "--unset-all"
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:36
-msgid ""
-"Prompt before each invocation of the diff tool.  This is the default "
-"behaviour; the option is provided to override any configuration settings."
+#: en/git-config.txt:163
+msgid "Remove all lines matching the key from config file."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-difftool.txt:37 en/git-mergetool.txt:27
-#, no-wrap
-msgid "-t <tool>"
+#. type: Plain text
+#: en/git-config.txt:167
+msgid "List all variables set in config file, along with their values."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-difftool.txt:38 en/git-mergetool.txt:28
+#: en/git-config.txt:168
 #, no-wrap
-msgid "--tool=<tool>"
+msgid "--type <type>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:42
+#: en/git-config.txt:172
 msgid ""
-"Use the diff tool specified by <tool>.  Valid values include emerge, "
-"kompare, meld, and vimdiff. Run `git difftool --tool-help` for the list of "
-"valid <tool> settings."
+"'git config' will ensure that any input or output is valid under the given "
+"type constraint(s), and will canonicalize outgoing values in `<type>`'s "
+"canonical form."
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:47
-msgid ""
-"If a diff tool is not specified, 'git difftool' will use the configuration "
-"variable `diff.tool`.  If the configuration variable `diff.tool` is not set, "
-"'git difftool' will pick a suitable default."
+#: en/git-config.txt:174
+msgid "Valid `<type>`'s include:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:53
-msgid ""
-"You can explicitly provide a full path to the tool by setting the "
-"configuration variable `difftool.<tool>.path`. For example, you can "
-"configure the absolute path to kdiff3 by setting "
-"`difftool.kdiff3.path`. Otherwise, 'git difftool' assumes the tool is "
-"available in PATH."
+#: en/git-config.txt:176
+msgid "'bool': canonicalize values as either \"true\" or \"false\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:58
+#: en/git-config.txt:179
 msgid ""
-"Instead of running one of the known diff tools, 'git difftool' can be "
-"customized to run an alternative program by specifying the command line to "
-"invoke in a configuration variable `difftool.<tool>.cmd`."
+"'int': canonicalize values as simple decimal numbers. An optional suffix of "
+"'k', 'm', or 'g' will cause the value to be multiplied by 1024, 1048576, or "
+"1073741824 upon input."
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:68
+#: en/git-config.txt:181
 msgid ""
-"When 'git difftool' is invoked with this tool (either through the `-t` or "
-"`--tool` option or the `diff.tool` configuration variable)  the configured "
-"command line will be invoked with the following variables available: "
-"`$LOCAL` is set to the name of the temporary file containing the contents of "
-"the diff pre-image and `$REMOTE` is set to the name of the temporary file "
-"containing the contents of the diff post-image.  `$MERGED` is the name of "
-"the file which is being compared. `$BASE` is provided for compatibility with "
-"custom merge tool commands and has the same value as `$MERGED`."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-difftool.txt:69 en/git-mergetool.txt:67
-#, no-wrap
-msgid "--tool-help"
+"'bool-or-int': canonicalize according to either 'bool' or 'int', as "
+"described above."
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:71
-msgid "Print a list of diff tools that may be used with `--tool`."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-difftool.txt:72
-#, no-wrap
-msgid "--[no-]symlinks"
+#: en/git-config.txt:185
+msgid ""
+"'path': canonicalize by adding a leading `~` to the value of `$HOME` and "
+"`~user` to the home directory for the specified user. This specifier has no "
+"effect when setting the value (but you can use `git config section.variable "
+"~/` from the command line to let your shell do the expansion.)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:77
+#: en/git-config.txt:187
 msgid ""
-"'git difftool''s default behavior is create symlinks to the working tree "
-"when run in `--dir-diff` mode and the right-hand side of the comparison "
-"yields the same content as the file in the working tree."
+"'expiry-date': canonicalize by converting from a fixed or relative date-"
+"string to a timestamp. This specifier has no effect when setting the value."
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:80
+#: en/git-config.txt:191
 msgid ""
-"Specifying `--no-symlinks` instructs 'git difftool' to create copies "
-"instead.  `--no-symlinks` is the default on Windows."
+"'color': When getting a value, canonicalize by converting to an ANSI color "
+"escape sequence. When setting a value, a sanity-check is performed to ensure "
+"that the given value is canonicalize-able as an ANSI color, but it is "
+"written as-is."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-difftool.txt:81
+#: en/git-config.txt:193
 #, no-wrap
-msgid "-x <command>"
+msgid "--bool"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-difftool.txt:82
+#: en/git-config.txt:194
 #, no-wrap
-msgid "--extcmd=<command>"
+msgid "--int"
 msgstr ""
 
-#. type: Plain text
-#: en/git-difftool.txt:87
-msgid ""
-"Specify a custom command for viewing diffs.  'git-difftool' ignores the "
-"configured defaults and runs `$command $LOCAL $REMOTE` when this option is "
-"specified.  Additionally, `$BASE` is set in the environment."
+#. type: Labeled list
+#: en/git-config.txt:195
+#, no-wrap
+msgid "--bool-or-int"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-difftool.txt:88 en/git-help.txt:46 en/git-show-branch.txt:111 en/git-update-index.txt:114 en/rev-list-options.txt:245
+#: en/git-config.txt:196 en/git-hash-object.txt:41
 #, no-wrap
-msgid "-g"
+msgid "--path"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-difftool.txt:89
+#: en/git-config.txt:197
 #, no-wrap
-msgid "--[no-]gui"
+msgid "--expiry-date"
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:94
+#: en/git-config.txt:200
 msgid ""
-"When 'git-difftool' is invoked with the `-g` or `--gui` option the default "
-"diff tool will be read from the configured `diff.guitool` variable instead "
-"of `diff.tool`. The `--no-gui` option can be used to override this setting."
+"Historical options for selecting a type specifier. Prefer instead `--type` "
+"(see above)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-difftool.txt:95
+#: en/git-config.txt:201
 #, no-wrap
-msgid "--[no-]trust-exit-code"
+msgid "--no-type"
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:100
+#: en/git-config.txt:205
 msgid ""
-"'git-difftool' invokes a diff tool individually on each file.  Errors "
-"reported by the diff tool are ignored by default.  Use `--trust-exit-code` "
-"to make 'git-difftool' exit when an invoked diff tool returns a non-zero "
-"exit code."
+"Un-sets the previously set type specifier (if one was previously set). This "
+"option requests that 'git config' not canonicalize the retrieved variable.  "
+"`--no-type` has no effect without `--type=<type>` or `--<type>`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:103
+#: en/git-config.txt:214
 msgid ""
-"'git-difftool' will forward the exit code of the invoked tool when "
-"`--trust-exit-code` is used."
+"For all options that output values and/or keys, always end values with the "
+"null character (instead of a newline). Use newline instead as a delimiter "
+"between key and value. This allows for secure parsing of the output without "
+"getting confused e.g. by values that contain line breaks."
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:105
-msgid "See linkgit:git-diff[1] for the full list of supported options."
+#: en/git-config.txt:218
+msgid ""
+"Output only the names of config variables for `--list` or `--get-regexp`."
 msgstr ""
 
-#. type: Title -
-#: en/git-difftool.txt:107
+#. type: Labeled list
+#: en/git-config.txt:219
 #, no-wrap
-msgid "CONFIG VARIABLES"
+msgid "--show-origin"
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:110
+#: en/git-config.txt:224
 msgid ""
-"'git difftool' falls back to 'git mergetool' config variables when the "
-"difftool equivalents have not been defined."
+"Augment the output of all queried config options with the origin type (file, "
+"standard input, blob, command line) and the actual origin (config file path, "
+"ref, or blob id if applicable)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-difftool.txt:111 en/diff-config.txt:172
+#: en/git-config.txt:225
 #, no-wrap
-msgid "diff.tool"
+msgid "--get-colorbool name [stdout-is-tty]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:113
-msgid "The default diff tool to use."
+#: en/git-config.txt:235
+msgid ""
+"Find the color setting for `name` (e.g. `color.diff`) and output \"true\" or "
+"\"false\".  `stdout-is-tty` should be either \"true\" or \"false\", and is "
+"taken into account when configuration says \"auto\".  If `stdout-is-tty` is "
+"missing, then checks the standard output of the command itself, and exits "
+"with status 0 if color is to be used, or exits with status 1 otherwise.  "
+"When the color setting for `name` is undefined, the command uses `color.ui` "
+"as fallback."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-difftool.txt:114
+#: en/git-config.txt:236
 #, no-wrap
-msgid "diff.guitool"
+msgid "--get-color name [default]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:116
-msgid "The default diff tool to use when `--gui` is specified."
+#: en/git-config.txt:242
+msgid ""
+"Find the color configured for `name` (e.g. `color.diff.new`) and output it "
+"as the ANSI color escape sequence to the standard output.  The optional "
+"`default` parameter is used instead, if there is no color configured for "
+"`name`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-difftool.txt:117 en/config.txt:1270
-#, no-wrap
-msgid "difftool.<tool>.path"
+#. type: Plain text
+#: en/git-config.txt:244
+msgid "`--type=color [--default=<default>]` is preferred over `--get-color`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:120 en/config.txt:1273 en/config.txt:2188
+#: en/git-config.txt:249
 msgid ""
-"Override the path for the given tool.  This is useful in case your tool is "
-"not in the PATH."
+"Opens an editor to modify the specified config file; either `--system`, `--"
+"global`, or repository (default)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-difftool.txt:121 en/config.txt:1274
+#: en/git-config.txt:250
 #, no-wrap
-msgid "difftool.<tool>.cmd"
-msgstr ""
-
-#. type: Plain text
-#: en/git-difftool.txt:123
-msgid "Specify the command to invoke the specified diff tool."
+msgid "--[no-]includes"
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:125
-msgid "See the `--tool=<tool>` option above for more details."
+#: en/git-config.txt:255
+msgid ""
+"Respect `include.*` directives in config files when looking up values. "
+"Defaults to `off` when a specific file is given (e.g., using `--file`, `--"
+"global`, etc) and `on` when searching all config files."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-difftool.txt:126 en/config.txt:1282
+#: en/git-config.txt:256
 #, no-wrap
-msgid "difftool.prompt"
+msgid "--default <value>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:128 en/config.txt:1284
-msgid "Prompt before each invocation of the diff tool."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-difftool.txt:129
-#, no-wrap
-msgid "difftool.trustExitCode"
+#: en/git-config.txt:259
+msgid ""
+"When using `--get`, and the requested variable is not found, behave as if "
+"<value> were the value assigned to the that variable."
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:131
-msgid "Exit difftool if the invoked diff tool returns a non-zero exit status."
+#: en/git-config.txt:265
+msgid ""
+"`pager.config` is only respected when listing configuration, i.e., when "
+"using `--list` or any of the `--get-*` which may return multiple results.  "
+"The default is to use a pager."
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:133
-msgid "See the `--trust-exit-code` option above for more details."
+#: en/git-config.txt:272
+msgid ""
+"If not set explicitly with `--file`, there are four files where 'git config' "
+"will search for configuration options:"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-difftool.txt:136 en/cmds-mainporcelain.txt:40
+#: en/git-config.txt:273
 #, no-wrap
-msgid "linkgit:git-diff[1]"
+msgid "$(prefix)/etc/gitconfig"
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:138
-msgid "Show changes between commits, commit and working tree, etc"
+#: en/git-config.txt:275
+msgid "System-wide configuration file."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-difftool.txt:139 en/cmds-ancillarymanipulators.txt:13
+#: en/git-config.txt:276
 #, no-wrap
-msgid "linkgit:git-mergetool[1]"
+msgid "$XDG_CONFIG_HOME/git/config"
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:141
-msgid "Run merge conflict resolution tools to resolve merge conflicts"
+#: en/git-config.txt:283
+msgid ""
+"Second user-specific configuration file. If $XDG_CONFIG_HOME is not set or "
+"empty, `$HOME/.config/git/config` will be used. Any single-valued variable "
+"set in this file will be overwritten by whatever is in `~/.gitconfig`.  It "
+"is a good idea not to create this file if you sometimes use older versions "
+"of Git, as support for this file was added fairly recently."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-difftool.txt:142 en/cmds-ancillarymanipulators.txt:1
+#: en/git-config.txt:284
 #, no-wrap
-msgid "linkgit:git-config[1]"
+msgid "~/.gitconfig"
 msgstr ""
 
 #. type: Plain text
-#: en/git-difftool.txt:144
-msgid "Get and set repository or global options"
+#: en/git-config.txt:287
+msgid ""
+"User-specific configuration file. Also called \"global\" configuration file."
 msgstr ""
 
-#. type: Title =
-#: en/git-diff-tree.txt:2
+#. type: Labeled list
+#: en/git-config.txt:288
 #, no-wrap
-msgid "git-diff-tree(1)"
+msgid "$GIT_DIR/config"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:7
-msgid ""
-"git-diff-tree - Compares the content and mode of blobs found via two tree "
-"objects"
+#: en/git-config.txt:290
+msgid "Repository specific configuration file."
 msgstr ""
 
-#. type: Plain text
-#: en/git-diff-tree.txt:15
+#. type: Labeled list
+#: en/git-config.txt:291
 #, no-wrap
-msgid ""
-"'git diff-tree' [--stdin] [-m] [-s] [-v] [--no-commit-id] [--pretty]\n"
-"\t      [-t] [-r] [-c | --cc] [--root] [<common diff options>]\n"
-"\t      <tree-ish> [<tree-ish>] [<path>...]\n"
+msgid "$GIT_DIR/config.worktree"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:19
-msgid "Compares the content and mode of the blobs found via two tree objects."
+#: en/git-config.txt:294
+msgid ""
+"This is optional and is only searched when `extensions.worktreeConfig` is "
+"present in $GIT_DIR/config."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:22
+#: en/git-config.txt:300
 msgid ""
-"If there is only one <tree-ish> given, the commit is compared with its "
-"parents (see --stdin below)."
+"If no further options are given, all reading options will read all of these "
+"files that are available. If the global or the system-wide configuration "
+"file are not available they will be ignored. If the repository configuration "
+"file is not available or readable, 'git config' will exit with a non-zero "
+"error code. However, in neither case will an error message be issued."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:24
-msgid "Note that 'git diff-tree' can use the tree encapsulated in a commit object."
+#: en/git-config.txt:304
+msgid ""
+"The files are read in the order given above, with last value found taking "
+"precedence over values read earlier.  When multiple values are taken then "
+"all values of a key from all files will be used."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:31
-msgid "The id of a tree object."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-diff-tree.txt:32 en/git-diff.txt:100 en/git-submodule.txt:423
-#, no-wrap
-msgid "<path>..."
+#: en/git-config.txt:307
+msgid ""
+"You may override individual configuration parameters when running any git "
+"command by using the `-c` option. See linkgit:git[1] for details."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:38
+#: en/git-config.txt:311
 msgid ""
-"If provided, the results are limited to a subset of files matching one of "
-"these prefix strings.  i.e., file matches `/^<pattern1>|<pattern2>|.../` "
-"Note that this parameter does not provide any wildcard or regexp features."
+"All writing options will per default write to the repository specific "
+"configuration file. Note that this also affects options like `--replace-all` "
+"and `--unset`. *'git config' will only ever change one file at a time*."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:41
-msgid "recurse into sub-trees"
+#: en/git-config.txt:317
+msgid ""
+"You can override these rules either by command-line options or by "
+"environment variables. The `--global`, `--system` and `--worktree` options "
+"will limit the file used to the global, system-wide or per-worktree file "
+"respectively.  The `GIT_CONFIG` environment variable has a similar effect, "
+"but you can specify any filename you want."
 msgstr ""
 
-#. type: Plain text
-#: en/git-diff-tree.txt:44
-msgid "show tree entry itself as well as subtrees.  Implies -r."
+#. type: Title -
+#: en/git-config.txt:320 en/git-cvsserver.txt:310 en/git-daemon.txt:332
+#: en/git-http-backend.txt:243 en/git-notes.txt:373
+#, no-wrap
+msgid "ENVIRONMENT"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-diff-tree.txt:45 en/git-format-patch.txt:279 en/git-fsck.txt:38 en/git-rebase.txt:415 en/blame-options.txt:5
+#: en/git-config.txt:322
 #, no-wrap
-msgid "--root"
+msgid "GIT_CONFIG"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:48
+#: en/git-config.txt:326
 msgid ""
-"When `--root` is specified the initial commit will be shown as a big "
-"creation event. This is equivalent to a diff against the NULL tree."
+"Take the configuration from the given file instead of .git/config.  Using "
+"the \"--global\" option forces this to ~/.gitconfig. Using the \"--system\" "
+"option forces this to $(prefix)/etc/gitconfig."
 msgstr ""
 
-#. type: Plain text
-#: en/git-diff-tree.txt:55
-msgid ""
-"When `--stdin` is specified, the command does not take <tree-ish> arguments "
-"from the command line.  Instead, it reads lines containing either two "
-"<tree>, one <commit>, or a list of <commit> from its standard input.  (Use a "
-"single space as separator.)"
+#. type: Labeled list
+#: en/git-config.txt:327
+#, no-wrap
+msgid "GIT_CONFIG_NOSYSTEM"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:60
+#: en/git-config.txt:330
 msgid ""
-"When two trees are given, it compares the first tree with the second.  When "
-"a single commit is given, it compares the commit with its parents.  The "
-"remaining commits, when given, are used as if they are parents of the first "
-"commit."
+"Whether to skip reading settings from the system-wide $(prefix)/etc/"
+"gitconfig file. See linkgit:git[1] for details."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:65
-msgid ""
-"When comparing two trees, the ID of both trees (separated by a space and "
-"terminated by a newline) is printed before the difference.  When comparing "
-"commits, the ID of the first (or only) commit, followed by a newline, is "
-"printed."
+#: en/git-config.txt:339
+msgid "Given a .git/config like this:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:68
+#: en/git-config.txt:345
+#, no-wrap
 msgid ""
-"The following flags further affect the behavior when comparing commits (but "
-"not trees)."
+"\t#\n"
+"\t# This is the config file, and\n"
+"\t# a '#' or ';' character indicates\n"
+"\t# a comment\n"
+"\t#\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:74
+#: en/git-config.txt:350
+#, no-wrap
 msgid ""
-"By default, 'git diff-tree --stdin' does not show differences for merge "
-"commits.  With this flag, it shows differences to that commit from all of "
-"its parents. See also `-c`."
+"\t; core variables\n"
+"\t[core]\n"
+"\t\t; Don't trust file modes\n"
+"\t\tfilemode = false\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:80
+#: en/git-config.txt:355
+#, no-wrap
 msgid ""
-"By default, 'git diff-tree --stdin' shows differences, either in "
-"machine-readable form (without `-p`) or in patch form (with `-p`).  This "
-"output can be suppressed.  It is only useful with `-v` flag."
+"\t; Our diff algorithm\n"
+"\t[diff]\n"
+"\t\texternal = /usr/local/bin/diff-wrapper\n"
+"\t\trenames = true\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:84
-msgid ""
-"This flag causes 'git diff-tree --stdin' to also show the commit message "
-"before the differences."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-diff-tree.txt:87
+#: en/git-config.txt:360
 #, no-wrap
-msgid "--no-commit-id"
-msgstr ""
-
-#. type: Plain text
-#: en/git-diff-tree.txt:90
-msgid ""
-"'git diff-tree' outputs a line with the commit ID when applicable.  This "
-"flag suppressed the commit ID output."
-msgstr ""
-
-#. type: Plain text
-#: en/git-diff-tree.txt:100
 msgid ""
-"This flag changes the way a merge commit is displayed (which means it is "
-"useful only when the command is given one <tree-ish>, or `--stdin`).  It "
-"shows the differences from each of the parents to the merge result "
-"simultaneously instead of showing pairwise diff between a parent and the "
-"result one at a time (which is what the `-m` option does).  Furthermore, it "
-"lists only files which were modified from all parents."
+"\t; Proxy settings\n"
+"\t[core]\n"
+"\t\tgitproxy=proxy-command for kernel.org\n"
+"\t\tgitproxy=default-proxy ; for all the rest\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:110
+#: en/git-config.txt:367
+#, no-wrap
 msgid ""
-"This flag changes the way a merge commit patch is displayed, in a similar "
-"way to the `-c` option. It implies the `-c` and `-p` options and further "
-"compresses the patch output by omitting uninteresting hunks whose the "
-"contents in the parents have only two variants and the merge result picks "
-"one of them without modification.  When all hunks are uninteresting, the "
-"commit itself and the commit log message is not shown, just like in any "
-"other \"empty diff\" case."
+"\t; HTTP\n"
+"\t[http]\n"
+"\t\tsslVerify\n"
+"\t[http \"https://weak.example.com\"]\n"
+"\t\tsslVerify = false\n"
+"\t\tcookieFile = /tmp/cookie.txt\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:114
-msgid ""
-"Show the commit itself and the commit log message even if the diff itself is "
-"empty."
+#: en/git-config.txt:369
+msgid "you can set the filemode to true with"
 msgstr ""
 
-#. type: Title -
-#: en/git-diff-tree.txt:120
+#. type: delimited block -
+#: en/git-config.txt:372
 #, no-wrap
-msgid "Limiting Output"
+msgid "% git config core.filemode true\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:123
+#: en/git-config.txt:377
 msgid ""
-"If you're only interested in differences in a subset of files, for example "
-"some architecture-specific files, you might do:"
+"The hypothetical proxy command entries actually have a postfix to discern "
+"what URL they apply to. Here is how to change the entry for kernel.org to "
+"\"ssh\"."
 msgstr ""
 
-#. type: Plain text
-#: en/git-diff-tree.txt:125
+#. type: delimited block -
+#: en/git-config.txt:380
 #, no-wrap
-msgid "\tgit diff-tree -r <tree-ish> <tree-ish> arch/ia64 include/asm-ia64\n"
+msgid "% git config core.gitproxy '\"ssh\" for kernel.org' 'for kernel.org$'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:127
-msgid "and it will only show you what changed in those two directories."
+#: en/git-config.txt:383
+msgid ""
+"This makes sure that only the key/value pair for kernel.org is replaced."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:129
-msgid "Or if you are searching for what changed in just `kernel/sched.c`, just do"
+#: en/git-config.txt:385
+msgid "To delete the entry for renames, do"
 msgstr ""
 
-#. type: Plain text
-#: en/git-diff-tree.txt:131
+#. type: delimited block -
+#: en/git-config.txt:388
 #, no-wrap
-msgid "\tgit diff-tree -r <tree-ish> <tree-ish> kernel/sched.c\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-diff-tree.txt:133
-msgid "and it will ignore all differences to other files."
+msgid "% git config --unset diff.renames\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:138
+#: en/git-config.txt:392
 msgid ""
-"The pattern is always the prefix, and is matched exactly.  There are no "
-"wildcards.  Even stricter, it has to match a complete path component.  "
-"I.e. \"foo\" does not pick up `foobar.h`.  \"foo\" does match `foo/bar.h` so "
-"it can be used to name subdirectories."
+"If you want to delete an entry for a multivar (like core.gitproxy above), "
+"you have to provide a regex matching the value of exactly one line."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:140
-msgid "An example of normal usage is:"
+#: en/git-config.txt:394
+msgid "To query the value for a given key, do"
 msgstr ""
 
-#. type: Plain text
-#: en/git-diff-tree.txt:143
+#. type: delimited block -
+#: en/git-config.txt:397
 #, no-wrap
-msgid ""
-"  torvalds@ppc970:~/git> git diff-tree --abbrev 5319e4\n"
-"  :100664 100664 ac348b... a01513...\tgit-fsck-objects.c\n"
+msgid "% git config --get core.filemode\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:146
-msgid ""
-"which tells you that the last commit changed just one file (it's from this "
-"one:"
+#: en/git-config.txt:400 en/git-gui.txt:120 en/git-merge-index.txt:64
+msgid "or"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-diff-tree.txt:153
+#: en/git-config.txt:403
 #, no-wrap
-msgid ""
-"commit 3c6f7ca19ad4043e9e72fa94106f352897e651a8\n"
-"tree 5319e4d609cdd282069cc4dce33c1db559539b03\n"
-"parent b4e628ea30d5ab3606119d2ea5caeab141d38df7\n"
-"author Linus Torvalds <torvalds@ppc970.osdl.org> Sat Apr 9 12:02:30 2005\n"
-"committer Linus Torvalds <torvalds@ppc970.osdl.org> Sat Apr 9 12:02:30 "
-"2005\n"
+msgid "% git config core.filemode\n"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-diff-tree.txt:155
-#, no-wrap
-msgid "Make \"git-fsck-objects\" print out all the root commits it finds.\n"
+#. type: Plain text
+#: en/git-config.txt:406
+msgid "or, to query a multivar:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-diff-tree.txt:158
+#: en/git-config.txt:409
 #, no-wrap
-msgid ""
-"Once I do the reference tracking, I'll also make it print out all the\n"
-"HEAD commits it finds, which is even more interesting.\n"
+msgid "% git config --get core.gitproxy \"for kernel.org$\"\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff-tree.txt:161
-msgid "in case you care)."
+#: en/git-config.txt:412
+msgid "If you want to know all the values for a multivar, do:"
 msgstr ""
 
-#. type: Title =
-#: en/git-diff.txt:2
+#. type: delimited block -
+#: en/git-config.txt:415
 #, no-wrap
-msgid "git-diff(1)"
+msgid "% git config --get-all core.gitproxy\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:7
-msgid "git-diff - Show changes between commits, commit and working tree, etc"
+#: en/git-config.txt:419
+msgid ""
+"If you like to live dangerously, you can replace *all* core.gitproxy by a "
+"new one with"
 msgstr ""
 
-#. type: Plain text
-#: en/git-diff.txt:17
+#. type: delimited block -
+#: en/git-config.txt:422
 #, no-wrap
-msgid ""
-"'git diff' [options] [<commit>] [--] [<path>...]\n"
-"'git diff' [options] --cached [<commit>] [--] [<path>...]\n"
-"'git diff' [options] <commit> <commit> [--] [<path>...]\n"
-"'git diff' [options] <blob> <blob>\n"
-"'git diff' [options] [--no-index] [--] <path> <path>\n"
+msgid "% git config --replace-all core.gitproxy ssh\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:23
+#: en/git-config.txt:426
 msgid ""
-"Show changes between the working tree and the index or a tree, changes "
-"between the index and a tree, changes between two trees, changes between two "
-"blob objects, or changes between two files on disk."
+"However, if you really only want to replace the line for the default proxy, "
+"i.e. the one without a \"for ...\" postfix, do something like this:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-diff.txt:24
+#. type: delimited block -
+#: en/git-config.txt:429
 #, no-wrap
-msgid "'git diff' [--options] [--] [<path>...]"
+msgid "% git config core.gitproxy ssh '! for '\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:31
-msgid ""
-"This form is to view the changes you made relative to the index (staging "
-"area for the next commit).  In other words, the differences are what you "
-"_could_ tell Git to further add to the index but you still haven't.  You can "
-"stage these changes by using linkgit:git-add[1]."
+#: en/git-config.txt:432
+msgid "To actually match only values with an exclamation mark, you have to"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-diff.txt:32
+#. type: delimited block -
+#: en/git-config.txt:435
 #, no-wrap
-msgid "'git diff' --no-index [--options] [--] [<path>...]"
+msgid "% git config section.key value '[!]'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:40
-msgid ""
-"This form is to compare the given two paths on the filesystem.  You can omit "
-"the `--no-index` option when running the command in a working tree "
-"controlled by Git and at least one of the paths points outside the working "
-"tree, or when running the command outside a working tree controlled by Git."
+#: en/git-config.txt:438
+msgid "To add a new proxy, without altering any of the existing ones, use"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-diff.txt:41
+#. type: delimited block -
+#: en/git-config.txt:441
 #, no-wrap
-msgid "'git diff' [--options] --cached [<commit>] [--] [<path>...]"
+msgid "% git config --add core.gitproxy '\"proxy-command\" for example.com'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:50
+#: en/git-config.txt:445
 msgid ""
-"This form is to view the changes you staged for the next commit relative to "
-"the named <commit>.  Typically you would want comparison with the latest "
-"commit, so if you do not give <commit>, it defaults to HEAD.  If HEAD does "
-"not exist (e.g. unborn branches) and <commit> is not given, it shows all "
-"staged changes.  --staged is a synonym of --cached."
+"An example to use customized color from the configuration in your script:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-diff.txt:51
+#. type: delimited block -
+#: en/git-config.txt:451
 #, no-wrap
-msgid "'git diff' [--options] <commit> [--] [<path>...]"
+msgid ""
+"#!/bin/sh\n"
+"WS=$(git config --get-color color.diff.whitespace \"blue reverse\")\n"
+"RESET=$(git config --get-color \"\" \"reset\")\n"
+"echo \"${WS}your whitespace color or blue reverse${RESET}\"\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:58
+#: en/git-config.txt:455
 msgid ""
-"This form is to view the changes you have in your working tree relative to "
-"the named <commit>.  You can use HEAD to compare it with the latest commit, "
-"or a branch name to compare with the tip of a different branch."
+"For URLs in `https://weak.example.com`, `http.sslVerify` is set to false, "
+"while it is set to `true` for all others:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-diff.txt:59
+#. type: delimited block -
+#: en/git-config.txt:464
 #, no-wrap
-msgid "'git diff' [--options] <commit> <commit> [--] [<path>...]"
-msgstr ""
-
-#. type: Plain text
-#: en/git-diff.txt:63
-msgid "This is to view the changes between two arbitrary <commit>."
+msgid ""
+"% git config --type=bool --get-urlmatch http.sslverify https://good.example.com\n"
+"true\n"
+"% git config --type=bool --get-urlmatch http.sslverify https://weak.example.com\n"
+"false\n"
+"% git config --get-urlmatch http https://weak.example.com\n"
+"http.cookieFile /tmp/cookie.txt\n"
+"http.sslverify false\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-diff.txt:64
+#. type: Title -
+#: en/git-config.txt:469 en/git-describe.txt:198 en/git-fetch.txt:285
+#: en/git-mv.txt:56 en/git-pack-refs.txt:64 en/git-pull.txt:248
+#: en/git-rebase.txt:1025 en/git-replace.txt:139 en/git-rm.txt:175
+#: en/git-svn.txt:1064 en/git-worktree.txt:375
 #, no-wrap
-msgid "'git diff' [--options] <commit>..<commit> [--] [<path>...]"
+msgid "BUGS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:69
+#: en/git-config.txt:474
 msgid ""
-"This is synonymous to the previous form.  If <commit> on one side is "
-"omitted, it will have the same effect as using HEAD instead."
+"When using the deprecated `[section.subsection]` syntax, changing a value "
+"will result in adding a multi-line key instead of a change, if the "
+"subsection is given with at least one uppercase character. For example when "
+"the config looks like"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-diff.txt:70
+#. type: delimited block -
+#: en/git-config.txt:478
 #, no-wrap
-msgid "'git diff' [--options] <commit>\\...<commit> [--] [<path>...]"
-msgstr ""
-
-#. type: Plain text
-#: en/git-diff.txt:77
 msgid ""
-"This form is to view the changes on the branch containing and up to the "
-"second <commit>, starting at a common ancestor of both <commit>.  \"git diff "
-"A\\...B\" is equivalent to \"git diff $(git-merge-base A B) B\".  You can "
-"omit any one of <commit>, which has the same effect as using HEAD instead."
+"  [section.subsection]\n"
+"    key = value1\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:82
-msgid ""
-"Just in case if you are doing something exotic, it should be noted that all "
-"of the <commit> in the above description, except in the last two forms that "
-"use \"..\" notations, can be any <tree>."
+#: en/git-config.txt:481
+msgid "and running `git config section.Subsection.key value2` will result in"
 msgstr ""
 
-#. type: Plain text
-#: en/git-diff.txt:89
+#. type: delimited block -
+#: en/git-config.txt:486
+#, no-wrap
 msgid ""
-"For a more complete list of ways to spell <commit>, see \"SPECIFYING "
-"REVISIONS\" section in linkgit:gitrevisions[7].  However, \"diff\" is about "
-"comparing two _endpoints_, not ranges, and the range notations "
-"(\"<commit>..<commit>\" and \"<commit>\\...<commit>\") do not mean a range "
-"as defined in the \"SPECIFYING RANGES\" section in linkgit:gitrevisions[7]."
+"  [section.subsection]\n"
+"    key = value1\n"
+"    key = value2\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-diff.txt:90
+#. type: Title =
+#: en/git-count-objects.txt:2
 #, no-wrap
-msgid "'git diff' [options] <blob> <blob>"
+msgid "git-count-objects(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:94
+#: en/git-count-objects.txt:7
 msgid ""
-"This form is to view the differences between the raw contents of two blob "
-"objects."
+"git-count-objects - Count unpacked number of objects and their disk "
+"consumption"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:104
-msgid ""
-"The <paths> parameters, when given, are used to limit the diff to the named "
-"paths (you can give directory names and get diff for all files under them)."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-diff.txt:111
+#: en/git-count-objects.txt:12
 #, no-wrap
-msgid "Various ways to check your working tree"
+msgid "'git count-objects' [-v] [-H | --human-readable]\n"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-diff.txt:117
-#, no-wrap
+#. type: Plain text
+#: en/git-count-objects.txt:17
 msgid ""
-"$ git diff            <1>\n"
-"$ git diff --cached   <2>\n"
-"$ git diff HEAD       <3>\n"
+"This counts the number of unpacked object files and disk space consumed by "
+"them, to help you decide when it is a good time to repack."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:120
-msgid "Changes in the working tree not yet staged for the next commit."
+#: en/git-count-objects.txt:24
+msgid "Report in more detail:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:122
-msgid ""
-"Changes between the index and your last commit; what you would be committing "
-"if you run \"git commit\" without \"-a\" option."
+#: en/git-count-objects.txt:26
+msgid "count: the number of loose objects"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:124
+#: en/git-count-objects.txt:28
 msgid ""
-"Changes in the working tree since your last commit; what you would be "
-"committing if you run \"git commit -a\""
+"size: disk space consumed by loose objects, in KiB (unless -H is specified)"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-diff.txt:125
-#, no-wrap
-msgid "Comparing with arbitrary commits"
+#. type: Plain text
+#: en/git-count-objects.txt:30
+msgid "in-pack: the number of in-pack objects"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-diff.txt:131
-#, no-wrap
+#. type: Plain text
+#: en/git-count-objects.txt:32
 msgid ""
-"$ git diff test            <1>\n"
-"$ git diff HEAD -- ./test  <2>\n"
-"$ git diff HEAD^ HEAD      <3>\n"
+"size-pack: disk space consumed by the packs, in KiB (unless -H is specified)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:135
+#: en/git-count-objects.txt:35
 msgid ""
-"Instead of using the tip of the current branch, compare with the tip of "
-"\"test\" branch."
+"prune-packable: the number of loose objects that are also present in the "
+"packs. These objects could be pruned using `git prune-packed`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:138
+#: en/git-count-objects.txt:38
 msgid ""
-"Instead of comparing with the tip of \"test\" branch, compare with the tip "
-"of the current branch, but limit the comparison to the file \"test\"."
+"garbage: the number of files in object database that are neither valid loose "
+"objects nor valid packs"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:139
-msgid "Compare the version before the last commit and the last commit."
+#: en/git-count-objects.txt:41
+msgid ""
+"size-garbage: disk space consumed by garbage files, in KiB (unless -H is "
+"specified)"
+msgstr ""
+
+#. type: Plain text
+#: en/git-count-objects.txt:46
+msgid ""
+"alternate: absolute path of alternate object databases; may appear multiple "
+"times, one line per path. Note that if the path contains non-printable "
+"characters, it may be surrounded by double-quotes and contain C-style "
+"backslashed escape sequences."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-diff.txt:140
+#: en/git-count-objects.txt:47 en/git-cvsserver.txt:49 en/git-grep.txt:145
 #, no-wrap
-msgid "Comparing branches"
+msgid "-H"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-diff.txt:146
+#. type: Labeled list
+#: en/git-count-objects.txt:48
 #, no-wrap
-msgid ""
-"$ git diff topic master    <1>\n"
-"$ git diff topic..master   <2>\n"
-"$ git diff topic...master  <3>\n"
+msgid "--human-readable"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:149
-msgid "Changes between the tips of the topic and the master branches."
+#: en/git-count-objects.txt:51
+msgid "Print sizes in human readable format"
 msgstr ""
 
-#. type: Plain text
-#: en/git-diff.txt:150 en/git-remote-fd.txt:44 en/git-remote-fd.txt:52 en/git-web--browse.txt:52
-msgid "Same as above."
+#. type: Title =
+#: en/git-credential-cache--daemon.txt:2
+#, no-wrap
+msgid "git-credential-cache--daemon(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:152
+#: en/git-credential-cache--daemon.txt:7
 msgid ""
-"Changes that occurred on the master branch since when the topic branch was "
-"started off it."
+"git-credential-cache--daemon - Temporarily store user credentials in memory"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-diff.txt:153
+#. type: Plain text
+#: en/git-credential-cache--daemon.txt:12
 #, no-wrap
-msgid "Limiting the diff output"
+msgid "git credential-cache--daemon [--debug] <socket>\n"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-diff.txt:159
-#, no-wrap
+#. type: Plain text
+#: en/git-credential-cache--daemon.txt:18
 msgid ""
-"$ git diff --diff-filter=MRC            <1>\n"
-"$ git diff --name-status                <2>\n"
-"$ git diff arch/i386 include/asm-i386   <3>\n"
+"You probably don't want to invoke this command yourself; it is started "
+"automatically when you use linkgit:git-credential-cache[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:163
-msgid "Show only modification, rename, and copy, but not addition or deletion."
+#: en/git-credential-cache--daemon.txt:23
+msgid ""
+"This command listens on the Unix domain socket specified by `<socket>` for "
+"`git-credential-cache` clients. Clients may store and retrieve credentials. "
+"Each credential is held for a timeout specified by the client; once no "
+"credentials are held, the daemon exits."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:165
-msgid "Show only names and the nature of change, but not actual diff output."
+#: en/git-credential-cache--daemon.txt:27
+msgid ""
+"If the `--debug` option is specified, the daemon does not close its stderr "
+"stream, and may output extra diagnostics to it even after it has begun "
+"listening for clients."
 msgstr ""
 
-#. type: Plain text
-#: en/git-diff.txt:166
-msgid "Limit diff output to named subtrees."
+#. type: Title =
+#: en/git-credential-cache.txt:2
+#, no-wrap
+msgid "git-credential-cache(1)"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-diff.txt:167
-#, no-wrap
-msgid "Munging the diff output"
+#. type: Plain text
+#: en/git-credential-cache.txt:7
+msgid "git-credential-cache - Helper to temporarily store passwords in memory"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-diff.txt:172
+#: en/git-credential-cache.txt:12
 #, no-wrap
-msgid ""
-"$ git diff --find-copies-harder -B -C  <1>\n"
-"$ git diff -R                          <2>\n"
+msgid "git config credential.helper 'cache [<options>]'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:176
+#: en/git-credential-cache.txt:21
 msgid ""
-"Spend extra cycles to find renames, copies and complete rewrites (very "
-"expensive)."
-msgstr ""
-
-#. type: Plain text
-#: en/git-diff.txt:177
-msgid "Output diff in reverse."
+"This command caches credentials in memory for use by future Git programs. "
+"The stored credentials never touch the disk, and are forgotten after a "
+"configurable timeout.  The cache is accessible over a Unix domain socket, "
+"restricted to the current user by filesystem permissions."
 msgstr ""
 
 #. type: Plain text
-#: en/git-diff.txt:186
+#: en/git-credential-cache.txt:25
 msgid ""
-"diff(1), linkgit:git-difftool[1], linkgit:git-log[1], "
-"linkgit:gitdiffcore[7], linkgit:git-format-patch[1], linkgit:git-apply[1]"
+"You probably don't want to invoke this command directly; it is meant to be "
+"used as a credential helper by other parts of Git. See linkgit:"
+"gitcredentials[7] or `EXAMPLES` below."
 msgstr ""
 
-#. type: Title =
-#: en/git-fast-export.txt:2
+#. type: Labeled list
+#: en/git-credential-cache.txt:29
 #, no-wrap
-msgid "git-fast-export(1)"
+msgid "--timeout <seconds>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:7
-msgid "git-fast-export - Git data exporter"
+#: en/git-credential-cache.txt:32
+msgid "Number of seconds to cache credentials (default: 900)."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-export.txt:13
+#. type: Labeled list
+#: en/git-credential-cache.txt:33
 #, no-wrap
-msgid "'git fast-export [options]' | 'git fast-import'\n"
+msgid "--socket <path>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:18
+#: en/git-credential-cache.txt:43
 msgid ""
-"This program dumps the given revisions in a form suitable to be piped into "
-"'git fast-import'."
+"Use `<path>` to contact a running cache daemon (or start a new cache daemon "
+"if one is not started).  Defaults to `$XDG_CACHE_HOME/git/credential/socket` "
+"unless `~/.git-credential-cache/` exists in which case `~/.git-credential-"
+"cache/socket` is used instead.  If your home directory is on a network-"
+"mounted filesystem, you may need to change this to a local filesystem. You "
+"must specify an absolute path."
+msgstr ""
+
+#. type: Title -
+#: en/git-credential-cache.txt:45
+#, no-wrap
+msgid "CONTROLLING THE DAEMON"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:22
+#: en/git-credential-cache.txt:49
 msgid ""
-"You can use it as a human-readable bundle replacement (see "
-"linkgit:git-bundle[1]), or as a kind of an interactive 'git filter-branch'."
+"If you would like the daemon to exit early, forgetting all cached "
+"credentials before their timeout, you can issue an `exit` action:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fast-export.txt:26
+#. type: delimited block -
+#: en/git-credential-cache.txt:52
 #, no-wrap
-msgid "--progress=<n>"
+msgid "git credential-cache exit\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:29
+#: en/git-credential-cache.txt:59 en/git-credential-store.txt:75
 msgid ""
-"Insert 'progress' statements every <n> objects, to be shown by 'git "
-"fast-import' during import."
+"The point of this helper is to reduce the number of times you must type your "
+"username or password. For example:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fast-export.txt:30
+#. type: delimited block -
+#: en/git-credential-cache.txt:65
 #, no-wrap
-msgid "--signed-tags=(verbatim|warn|warn-strip|strip|abort)"
+msgid ""
+"$ git config credential.helper cache\n"
+"$ git push http://example.com/repo.git\n"
+"Username: <type your username>\n"
+"Password: <type your password>\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-export.txt:34
+#. type: delimited block -
+#: en/git-credential-cache.txt:69
+#, no-wrap
 msgid ""
-"Specify how to handle signed tags.  Since any transformation after the "
-"export can change the tag names (which can also happen when excluding "
-"revisions) the signatures will not match."
+"[work for 5 more minutes]\n"
+"$ git push http://example.com/repo.git\n"
+"[your credentials are used automatically]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:41
+#: en/git-credential-cache.txt:73
 msgid ""
-"When asking to 'abort' (which is the default), this program will die when "
-"encountering a signed tag.  With 'strip', the tags will silently be made "
-"unsigned, with 'warn-strip' they will be made unsigned but a warning will be "
-"displayed, with 'verbatim', they will be silently exported and with 'warn', "
-"they will be exported, but you will see a warning."
+"You can provide options via the credential.helper configuration variable "
+"(this example drops the cache time to 5 minutes):"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fast-export.txt:42
+#. type: delimited block -
+#: en/git-credential-cache.txt:76
 #, no-wrap
-msgid "--tag-of-filtered-object=(abort|drop|rewrite)"
+msgid "$ git config credential.helper 'cache --timeout=300'\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-export.txt:46
-msgid ""
-"Specify how to handle tags whose tagged object is filtered out.  Since "
-"revisions and files to export can be limited by path, tagged objects may be "
-"filtered completely."
+#. type: Title =
+#: en/git-credential-store.txt:2
+#, no-wrap
+msgid "git-credential-store(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:52
-msgid ""
-"When asking to 'abort' (which is the default), this program will die when "
-"encountering such a tag.  With 'drop' it will omit such tags from the "
-"output.  With 'rewrite', if the tagged object is a commit, it will rewrite "
-"the tag to tag an ancestor commit (via parent rewriting; see "
-"linkgit:git-rev-list[1])"
+#: en/git-credential-store.txt:7
+msgid "git-credential-store - Helper to store credentials on disk"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fast-export.txt:54
+#. type: delimited block -
+#: en/git-credential-store.txt:12
 #, no-wrap
-msgid "-C"
+msgid "git config credential.helper 'store [<options>]'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:58
+#: en/git-credential-store.txt:21
 msgid ""
-"Perform move and/or copy detection, as described in the linkgit:git-diff[1] "
-"manual page, and use it to generate rename and copy commands in the output "
-"dump."
+"Using this helper will store your passwords unencrypted on disk, protected "
+"only by filesystem permissions. If this is not an acceptable security "
+"tradeoff, try linkgit:git-credential-cache[1], or find a helper that "
+"integrates with secure storage provided by your operating system."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:61
+#: en/git-credential-store.txt:24
 msgid ""
-"Note that earlier versions of this command did not complain and produced "
-"incorrect results if you gave these options."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-fast-export.txt:62 en/git-fast-import.txt:77
-#, no-wrap
-msgid "--export-marks=<file>"
+"This command stores credentials indefinitely on disk for use by future Git "
+"programs."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:73
+#: en/git-credential-store.txt:28
 msgid ""
-"Dumps the internal marks table to <file> when complete.  Marks are written "
-"one per line as `:markid SHA-1`. Only marks for revisions are dumped; marks "
-"for blobs are ignored.  Backends can use this file to validate imports after "
-"they have been completed, or to save the marks table across incremental "
-"runs.  As <file> is only opened and truncated at completion, the same path "
-"can also be safely given to --import-marks.  The file will not be written if "
-"no new object has been marked/exported."
+"You probably don't want to invoke this command directly; it is meant to be "
+"used as a credential helper by other parts of git. See linkgit:"
+"gitcredentials[7] or `EXAMPLES` below."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-export.txt:74 en/git-fast-import.txt:86
+#: en/git-credential-store.txt:32
 #, no-wrap
-msgid "--import-marks=<file>"
+msgid "--file=<path>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:78
+#: en/git-credential-store.txt:42
 msgid ""
-"Before processing any input, load the marks specified in <file>.  The input "
-"file must exist, must be readable, and must use the same format as produced "
-"by --export-marks."
+"Use `<path>` to lookup and store credentials. The file will have its "
+"filesystem permissions set to prevent other users on the system from reading "
+"it, but will not be encrypted or otherwise protected. If not specified, "
+"credentials will be searched for from `~/.git-credentials` and `"
+"$XDG_CONFIG_HOME/git/credentials`, and credentials will be written to `~/."
+"git-credentials` if it exists, or `$XDG_CONFIG_HOME/git/credentials` if it "
+"exists and the former does not. See also <<FILES>>."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:83
+#: en/git-credential-store.txt:49
 msgid ""
-"Any commits that have already been marked will not be exported again.  If "
-"the backend uses a similar --import-marks file, this allows for incremental "
-"bidirectional exporting of the repository by keeping the marks the same "
-"across runs."
+"If not set explicitly with `--file`, there are two files where git-"
+"credential-store will search for credentials in order of precedence:"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-export.txt:84
+#: en/git-credential-store.txt:50
 #, no-wrap
-msgid "--fake-missing-tagger"
+msgid "~/.git-credentials"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:89
-msgid ""
-"Some old repositories have tags without a tagger.  The fast-import protocol "
-"was pretty strict about that, and did not allow that.  So fake a tagger to "
-"be able to fast-import the output."
+#: en/git-credential-store.txt:52
+msgid "User-specific credentials file."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-export.txt:90
+#: en/git-credential-store.txt:53
 #, no-wrap
-msgid "--use-done-feature"
+msgid "$XDG_CONFIG_HOME/git/credentials"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:93
+#: en/git-credential-store.txt:59
 msgid ""
-"Start the stream with a 'feature done' stanza, and terminate it with a "
-"'done' command."
+"Second user-specific credentials file. If '$XDG_CONFIG_HOME' is not set or "
+"empty, `$HOME/.config/git/credentials` will be used. Any credentials stored "
+"in this file will not be used if `~/.git-credentials` has a matching "
+"credential as well. It is a good idea not to create this file if you "
+"sometimes use older versions of Git that do not support it."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fast-export.txt:94
-#, no-wrap
-msgid "--no-data"
+#. type: Plain text
+#: en/git-credential-store.txt:63
+msgid ""
+"For credential lookups, the files are read in the order given above, with "
+"the first matching credential found taking precedence over credentials found "
+"in files further down the list."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:101
+#: en/git-credential-store.txt:67
 msgid ""
-"Skip output of blob objects and instead refer to blobs via their original "
-"SHA-1 hash.  This is useful when rewriting the directory structure or "
-"history of a repository without touching the contents of individual files.  "
-"Note that the resulting stream can only be used by a repository which "
-"already contains the necessary objects."
+"Credential storage will by default write to the first existing file in the "
+"list. If none of these files exist, `~/.git-credentials` will be created and "
+"written to."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fast-export.txt:102 en/git-ls-tree.txt:72
+#. type: Plain text
+#: en/git-credential-store.txt:69
+msgid ""
+"When erasing credentials, matching credentials will be erased from all files."
+msgstr ""
+
+#. type: delimited block -
+#: en/git-credential-store.txt:81
 #, no-wrap
-msgid "--full-tree"
+msgid ""
+"$ git config credential.helper store\n"
+"$ git push http://example.com/repo.git\n"
+"Username: <type your username>\n"
+"Password: <type your password>\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-export.txt:107
+#. type: delimited block -
+#: en/git-credential-store.txt:85
+#, no-wrap
 msgid ""
-"This option will cause fast-export to issue a \"deleteall\" directive for "
-"each commit followed by a full list of all files in the commit (as opposed "
-"to just listing the files which are different from the commit's first "
-"parent)."
+"[several days later]\n"
+"$ git push http://example.com/repo.git\n"
+"[your credentials are used automatically]\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fast-export.txt:108
+#. type: Title -
+#: en/git-credential-store.txt:88
 #, no-wrap
-msgid "--anonymize"
+msgid "STORAGE FORMAT"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:112
+#: en/git-credential-store.txt:92
 msgid ""
-"Anonymize the contents of the repository while still retaining the shape of "
-"the history and stored tree.  See the section on `ANONYMIZING` below."
+"The `.git-credentials` file is stored in plaintext. Each credential is "
+"stored on its own line as a URL like:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fast-export.txt:113
+#. type: delimited block -
+#: en/git-credential-store.txt:95
 #, no-wrap
-msgid "--refspec"
+msgid "https://user:pass@example.com\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:116
+#: en/git-credential-store.txt:103
 msgid ""
-"Apply the specified refspec to each ref exported. Multiple of them can be "
-"specified."
+"When Git needs authentication for a particular URL context, credential-store "
+"will consider that context a pattern to match against each entry in the "
+"credentials file.  If the protocol, hostname, and username (if we already "
+"have one) match, then the password is returned to Git. See the discussion of "
+"configuration in linkgit:gitcredentials[7] for more information."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-export.txt:123
+#. type: Title =
+#: en/git-credential.txt:2
 #, no-wrap
-msgid ""
-"[<git-rev-list-args>...]::\n"
-"\tA list of arguments, acceptable to 'git rev-parse' and\n"
-"\t'git rev-list', that specifies the specific objects and references\n"
-"\tto export.  For example, `master~10..master` causes the\n"
-"\tcurrent master reference to be exported along with all objects\n"
-"\tadded since its 10th ancestor commit.\n"
+msgid "git-credential(1)"
+msgstr ""
+
+#. type: Plain text
+#: en/git-credential.txt:7
+msgid "git-credential - Retrieve and store user credentials"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-fast-export.txt:129
+#: en/git-credential.txt:12
 #, no-wrap
-msgid "$ git fast-export --all | (cd /empty/repository && git fast-import)\n"
+msgid "git credential <fill|approve|reject>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:134
+#: en/git-credential.txt:25
 msgid ""
-"This will export the whole repository and import it into the existing empty "
-"repository.  Except for reencoding commits that are not in UTF-8, it would "
-"be a one-to-one mirror."
+"Git has an internal interface for storing and retrieving credentials from "
+"system-specific helpers, as well as prompting the user for usernames and "
+"passwords. The git-credential command exposes this interface to scripts "
+"which may want to retrieve, store, or prompt for credentials in the same "
+"manner as Git. The design of this scriptable interface models the internal C "
+"API; see link:technical/api-credentials.html[the Git credential API] for "
+"more background on the concepts."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-fast-export.txt:139
-#, no-wrap
+#. type: Plain text
+#: en/git-credential.txt:29
 msgid ""
-"$ git fast-export master~5..master |\n"
-"\tsed \"s|refs/heads/master|refs/heads/other|\" |\n"
-"\tgit fast-import\n"
+"git-credential takes an \"action\" option on the command-line (one of "
+"`fill`, `approve`, or `reject`) and reads a credential description on stdin "
+"(see <<IOFMT,INPUT/OUTPUT FORMAT>>)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:143
+#: en/git-credential.txt:36
 msgid ""
-"This makes a new branch called 'other' from 'master~5..master' (i.e. if "
-"'master' has linear history, it will take the last 5 commits)."
+"If the action is `fill`, git-credential will attempt to add \"username\" and "
+"\"password\" attributes to the description by reading config files, by "
+"contacting any configured credential helpers, or by prompting the user. The "
+"username and password attributes of the credential description are then "
+"printed to stdout together with the attributes already provided."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:147
+#: en/git-credential.txt:40
 msgid ""
-"Note that this assumes that none of the blobs and commit messages referenced "
-"by that revision range contains the string 'refs/heads/master'."
+"If the action is `approve`, git-credential will send the description to any "
+"configured credential helpers, which may store the credential for later use."
+msgstr ""
+
+#. type: Plain text
+#: en/git-credential.txt:44
+msgid ""
+"If the action is `reject`, git-credential will send the description to any "
+"configured credential helpers, which may erase any stored credential "
+"matching the description."
+msgstr ""
+
+#. type: Plain text
+#: en/git-credential.txt:46
+msgid "If the action is `approve` or `reject`, no output should be emitted."
 msgstr ""
 
 #. type: Title -
-#: en/git-fast-export.txt:150
+#: en/git-credential.txt:48
 #, no-wrap
-msgid "ANONYMIZING"
+msgid "TYPICAL USE OF GIT CREDENTIAL"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:158
+#: en/git-credential.txt:52
 msgid ""
-"If the `--anonymize` option is given, git will attempt to remove all "
-"identifying information from the repository while still retaining enough of "
-"the original tree and history patterns to reproduce some bugs. The goal is "
-"that a git bug which is found on a private repository will persist in the "
-"anonymized repository, and the latter can be shared with git developers to "
-"help solve the bug."
+"An application using git-credential will typically use `git credential` "
+"following these steps:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:170
-msgid ""
-"With this option, git will replace all refnames, paths, blob contents, "
-"commit and tag messages, names, and email addresses in the output with "
-"anonymized data.  Two instances of the same string will be replaced "
-"equivalently (e.g., two commits with the same author will have the same "
-"anonymized author in the output, but bear no resemblance to the original "
-"author string). The relationship between commits, branches, and tags is "
-"retained, as well as the commit timestamps (but the commit messages and "
-"refnames bear no resemblance to the originals). The relative makeup of the "
-"tree is retained (e.g., if you have a root tree with 10 files and 3 trees, "
-"so will the output), but their names and the contents of the files will be "
-"replaced."
+#: en/git-credential.txt:54
+msgid "Generate a credential description based on the context."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:173
+#: en/git-credential.txt:60
 msgid ""
-"If you think you have found a git bug, you can start by exporting an "
-"anonymized stream of the whole repository:"
+"For example, if we want a password for `https://example.com/foo.git`, we "
+"might generate the following credential description (don't forget the blank "
+"line at the end; it tells `git credential` that the application finished "
+"feeding all the information it has):"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-fast-export.txt:176
+#. type: Plain text
+#: en/git-credential.txt:64
 #, no-wrap
-msgid "$ git fast-export --anonymize --all >anon-stream\n"
+msgid ""
+"\t protocol=https\n"
+"\t host=example.com\n"
+"\t path=foo.git\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:181
+#: en/git-credential.txt:70
 msgid ""
-"Then confirm that the bug persists in a repository created from that stream "
-"(many bugs will not, as they really do depend on the exact repository "
-"contents):"
+"Ask git-credential to give us a username and password for this description. "
+"This is done by running `git credential fill`, feeding the description from "
+"step (1) to its standard input. The complete credential description "
+"(including the credential per se, i.e. the login and password) will be "
+"produced on standard output, like:"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-fast-export.txt:187
+#. type: Plain text
+#: en/git-credential.txt:75
 #, no-wrap
 msgid ""
-"$ git init anon-repo\n"
-"$ cd anon-repo\n"
-"$ git fast-import <../anon-stream\n"
-"$ ... test your bug ...\n"
+"protocol=https\n"
+"host=example.com\n"
+"username=bob\n"
+"password=secr3t\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:194
+#: en/git-credential.txt:80
 msgid ""
-"If the anonymized repository shows the bug, it may be worth sharing "
-"`anon-stream` along with a regular bug report. Note that the anonymized "
-"stream compresses very well, so gzipping it is encouraged. If you want to "
-"examine the stream to see that it does not contain any private data, you can "
-"peruse it directly before sending. You may also want to try:"
+"In most cases, this means the attributes given in the input will be repeated "
+"in the output, but Git may also modify the credential description, for "
+"example by removing the `path` attribute when the protocol is HTTP(s) and "
+"`credential.useHttpPath` is false."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-fast-export.txt:197
-#, no-wrap
-msgid "$ perl -pe 's/\\d+/X/g' <anon-stream | sort -u | less\n"
+#. type: Plain text
+#: en/git-credential.txt:86
+msgid ""
+"If the `git credential` knew about the password, this step may not have "
+"involved the user actually typing this password (the user may have typed a "
+"password to unlock the keychain instead, or no user interaction was done if "
+"the keychain was already unlocked) before it returned `password=secr3t`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:203
+#: en/git-credential.txt:89
 msgid ""
-"which shows all of the unique lines (with numbers converted to \"X\", to "
-"collapse \"User 0\", \"User 1\", etc into \"User X\"). This produces a much "
-"smaller output, and it is usually easy to quickly confirm that there is no "
-"private data in the stream."
+"Use the credential (e.g., access the URL with the username and password from "
+"step (2)), and see if it's accepted."
+msgstr ""
+
+#. type: Plain text
+#: en/git-credential.txt:99
+msgid ""
+"Report on the success or failure of the password. If the credential allowed "
+"the operation to complete successfully, then it can be marked with an "
+"\"approve\" action to tell `git credential` to reuse it in its next "
+"invocation. If the credential was rejected during the operation, use the "
+"\"reject\" action so that `git credential` will ask for a new password in "
+"its next invocation. In either case, `git credential` should be fed with the "
+"credential description obtained from step (2) (which also contain the ones "
+"provided in step (1))."
 msgstr ""
 
 #. type: Title -
-#: en/git-fast-export.txt:206
+#: en/git-credential.txt:102
 #, no-wrap
-msgid "Limitations"
+msgid "INPUT/OUTPUT FORMAT"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-export.txt:211
+#: en/git-credential.txt:109
 msgid ""
-"Since 'git fast-import' cannot tag trees, you will not be able to export the "
-"linux.git repository completely, as it contains a tag referencing a tree "
-"instead of a commit."
+"`git credential` reads and/or writes (depending on the action used)  "
+"credential information in its standard input/output. This information can "
+"correspond either to keys for which `git credential` will obtain the login/"
+"password information (e.g. host, protocol, path), or to the actual "
+"credential data to be obtained (login/password)."
+msgstr ""
+
+#. type: Plain text
+#: en/git-credential.txt:119
+msgid ""
+"The credential is split into a set of named attributes, with one attribute "
+"per line. Each attribute is specified by a key-value pair, separated by an "
+"`=` (equals) sign, followed by a newline. The key may contain any bytes "
+"except `=`, newline, or NUL. The value may contain any bytes except newline "
+"or NUL.  In both cases, all bytes are treated as-is (i.e., there is no "
+"quoting, and one cannot transmit a value with newline or NUL in it). The "
+"list of attributes is terminated by a blank line or end-of-file.  Git "
+"understands the following attributes:"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-export.txt:215 en/cmds-ancillarymanipulators.txt:7
+#: en/git-credential.txt:120
 #, no-wrap
-msgid "linkgit:git-fast-import[1]"
+msgid "`protocol`"
 msgstr ""
 
-#. type: Title =
-#: en/git-fast-import.txt:2
+#. type: Plain text
+#: en/git-credential.txt:124
+msgid "The protocol over which the credential will be used (e.g., `https`)."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-credential.txt:125
 #, no-wrap
-msgid "git-fast-import(1)"
+msgid "`host`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:7
-msgid "git-fast-import - Backend for fast Git data importers"
+#: en/git-credential.txt:128
+msgid "The remote hostname for a network credential."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:13
+#. type: Labeled list
+#: en/git-credential.txt:129
 #, no-wrap
-msgid "frontend | 'git fast-import' [options]\n"
+msgid "`path`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:20
+#: en/git-credential.txt:134
 msgid ""
-"This program is usually not what the end user wants to run directly.  Most "
-"end users want to use one of the existing frontend programs, which parses a "
-"specific type of foreign source and feeds the contents stored there to 'git "
-"fast-import'."
+"The path with which the credential will be used. E.g., for accessing a "
+"remote https repository, this will be the repository's path on the server."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:26
-msgid ""
-"fast-import reads a mixed command/data stream from standard input and writes "
-"one or more packfiles directly into the current repository.  When EOF is "
-"received on standard input, fast import writes out updated branch and tag "
-"refs, fully updating the current repository with the newly imported data."
+#. type: Labeled list
+#: en/git-credential.txt:135
+#, no-wrap
+msgid "`username`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:32
+#: en/git-credential.txt:139
 msgid ""
-"The fast-import backend itself can import into an empty repository (one that "
-"has already been initialized by 'git init') or incrementally update an "
-"existing populated repository.  Whether or not incremental imports are "
-"supported from a particular foreign source depends on the frontend program "
-"in use."
+"The credential's username, if we already have one (e.g., from a URL, from "
+"the user, or from a previously run helper)."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:41
-msgid ""
-"Force updating modified existing branches, even if doing so would cause "
-"commits to be lost (as the new commit does not contain the old commit)."
+#. type: Labeled list
+#: en/git-credential.txt:140
+#, no-wrap
+msgid "`password`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:46
-msgid ""
-"Disable all non-fatal output, making fast-import silent when it is "
-"successful.  This option disables the output shown by --stats."
+#: en/git-credential.txt:143
+msgid "The credential's password, if we are asking it to be stored."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-import.txt:47
+#: en/git-credential.txt:144
 #, no-wrap
-msgid "--stats"
+msgid "`url`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:52
+#: en/git-credential.txt:154
 msgid ""
-"Display some basic statistics about the objects fast-import has created, the "
-"packfiles they were stored into, and the memory used by fast-import during "
-"this run.  Showing this output is currently the default, but can be disabled "
-"with --quiet."
+"When this special attribute is read by `git credential`, the value is parsed "
+"as a URL and treated as if its constituent parts were read (e.g., "
+"`url=https://example.com` would behave as if `protocol=https` and "
+"`host=example.com` had been provided). This can help callers avoid parsing "
+"URLs themselves.  Note that any components which are missing from the URL (e."
+"g., there is no username in the example above) will be set to empty; if you "
+"want to provide a URL and override some attributes, provide the URL "
+"attribute first, followed by any overrides."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:54
+#. type: Title =
+#: en/git-cvsexportcommit.txt:2
 #, no-wrap
-msgid "Options for Frontends"
+msgid "git-cvsexportcommit(1)"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fast-import.txt:56
-#, no-wrap
-msgid "--cat-blob-fd=<fd>"
+#. type: Plain text
+#: en/git-cvsexportcommit.txt:7
+msgid "git-cvsexportcommit - Export a single commit to a CVS checkout"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:61
+#: en/git-cvsexportcommit.txt:14
+#, no-wrap
 msgid ""
-"Write responses to `get-mark`, `cat-blob`, and `ls` queries to the file "
-"descriptor <fd> instead of `stdout`.  Allows `progress` output intended for "
-"the end-user to be separated from other output."
+"'git cvsexportcommit' [-h] [-u] [-v] [-c] [-P] [-p] [-a] [-d cvsroot]\n"
+"\t[-w cvsworkdir] [-W] [-f] [-m msgprefix] [PARENTCOMMIT] COMMITID\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fast-import.txt:62
-#, no-wrap
-msgid "--date-format=<fmt>"
+#. type: Plain text
+#: en/git-cvsexportcommit.txt:20
+msgid ""
+"Exports a commit from Git to a CVS checkout, making it easier to merge "
+"patches from a Git repository into a CVS repository."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:67
+#: en/git-cvsexportcommit.txt:24
 msgid ""
-"Specify the type of dates the frontend will supply to fast-import within "
-"`author`, `committer` and `tagger` commands.  See ``Date Formats'' below for "
-"details about which formats are supported, and their syntax."
+"Specify the name of a CVS checkout using the -w switch or execute it from "
+"the root of the CVS working copy. In the latter case GIT_DIR must be "
+"defined. See examples below."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fast-import.txt:68
-#, no-wrap
-msgid "--done"
+#. type: Plain text
+#: en/git-cvsexportcommit.txt:28
+msgid ""
+"It does its best to do the safe thing, it will check that the files are "
+"unchanged and up to date in the CVS checkout, and it will not autocommit by "
+"default."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:73
+#: en/git-cvsexportcommit.txt:30
 msgid ""
-"Terminate with error if there is no `done` command at the end of the "
-"stream.  This option might be useful for detecting errors that cause the "
-"frontend to terminate before it has started to write a stream."
+"Supports file additions, removals, and commits that affect binary files."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:75
-#, no-wrap
-msgid "Locations of Marks Files"
+#. type: Plain text
+#: en/git-cvsexportcommit.txt:33
+msgid ""
+"If the commit is a merge commit, you must tell 'git cvsexportcommit' what "
+"parent the changeset should be done against."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:85
+#: en/git-cvsexportcommit.txt:40
 msgid ""
-"Dumps the internal marks table to <file> when complete.  Marks are written "
-"one per line as `:markid SHA-1`.  Frontends can use this file to validate "
-"imports after they have been completed, or to save the marks table across "
-"incremental runs.  As <file> is only opened and truncated at checkpoint (or "
-"completion) the same path can also be safely given to --import-marks."
+"Commit automatically if the patch applied cleanly. It will not commit if any "
+"hunks fail to apply or there were other problems."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:93
+#: en/git-cvsexportcommit.txt:44
 msgid ""
-"Before processing any input, load the marks specified in <file>.  The input "
-"file must exist, must be readable, and must use the same format as produced "
-"by --export-marks.  Multiple options may be supplied to import more than one "
-"set of marks.  If a mark is defined to different values, the last file wins."
+"Be pedantic (paranoid) when applying patches. Invokes patch with --fuzz=0"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fast-import.txt:94
-#, no-wrap
-msgid "--import-marks-if-exists=<file>"
+#. type: Plain text
+#: en/git-cvsexportcommit.txt:48
+msgid ""
+"Add authorship information. Adds Author line, and Committer (if different "
+"from Author) to the message."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:97
+#: en/git-cvsexportcommit.txt:53
 msgid ""
-"Like --import-marks but instead of erroring out, silently skips the file if "
-"it does not exist."
+"Set an alternative CVSROOT to use.  This corresponds to the CVS -d "
+"parameter.  Usually users will not want to set this, except if using CVS in "
+"an asymmetric fashion."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fast-import.txt:98
-#, no-wrap
-msgid "--[no-]relative-marks"
+#. type: Plain text
+#: en/git-cvsexportcommit.txt:56
+msgid "Force the merge even if the files are not up to date."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:105
-msgid ""
-"After specifying --relative-marks the paths specified with --import-marks= "
-"and --export-marks= are relative to an internal directory in the current "
-"repository.  In git-fast-import this means that the paths are relative to "
-"the .git/info/fast-import directory. However, other importers may use a "
-"different location."
+#: en/git-cvsexportcommit.txt:59
+msgid "Force the parent commit, even if it is not a direct parent."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:108
+#: en/git-cvsexportcommit.txt:63
 msgid ""
-"Relative and non-relative marks may be combined by interweaving "
-"--(no-)-relative-marks with the --(import|export)-marks= options."
+"Prepend the commit message with the provided prefix.  Useful for patch "
+"series and the like."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:110
-#, no-wrap
-msgid "Performance and Compression Tuning"
+#. type: Plain text
+#: en/git-cvsexportcommit.txt:66
+msgid "Update affected files from CVS repository before attempting export."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fast-import.txt:112
-#, no-wrap
-msgid "--active-branches=<n>"
+#. type: Plain text
+#: en/git-cvsexportcommit.txt:70
+msgid ""
+"Reverse CVS keyword expansion (e.g. $Revision: 1.2.3.4$ becomes $Revision$) "
+"in working CVS checkout before applying patch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:115
+#: en/git-cvsexportcommit.txt:76
 msgid ""
-"Maximum number of branches to maintain active at once.  See ``Memory "
-"Utilization'' below for details.  Default is 5."
+"Specify the location of the CVS checkout to use for the export. This option "
+"does not require GIT_DIR to be set before execution if the current directory "
+"is within a Git repository.  The default is the value of 'cvsexportcommit."
+"cvsdir'."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fast-import.txt:116
-#, no-wrap
-msgid "--big-file-threshold=<n>"
+#. type: Plain text
+#: en/git-cvsexportcommit.txt:81
+msgid ""
+"Tell cvsexportcommit that the current working directory is not only a Git "
+"checkout, but also the CVS checkout.  Therefore, Git will reset the working "
+"directory to the parent commit before proceeding."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:121
-msgid ""
-"Maximum size of a blob that fast-import will attempt to create a delta for, "
-"expressed in bytes.  The default is 512m (512 MiB).  Some importers may wish "
-"to lower this on systems with constrained memory."
+#: en/git-cvsexportcommit.txt:84
+msgid "Verbose."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-import.txt:122 en/git-fetch-pack.txt:85 en/git-pack-objects.txt:87 en/git-repack.txt:85
+#: en/git-cvsexportcommit.txt:87
 #, no-wrap
-msgid "--depth=<n>"
+msgid "cvsexportcommit.cvsdir"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:125
-msgid "Maximum delta depth, for blob and tree deltification.  Default is 10."
+#: en/git-cvsexportcommit.txt:89
+msgid "The default location of the CVS checkout to use for the export."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-import.txt:126
+#: en/git-cvsexportcommit.txt:93
 #, no-wrap
-msgid "--export-pack-edges=<file>"
+msgid "Merge one patch into CVS"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:134
+#. type: delimited block -
+#: en/git-cvsexportcommit.txt:100
+#, no-wrap
 msgid ""
-"After creating a packfile, print a line of data to <file> listing the "
-"filename of the packfile and the last commit on each branch that was written "
-"to that packfile.  This information may be useful after importing projects "
-"whose total object set exceeds the 4 GiB packfile limit, as these commits "
-"can be used as edge points during calls to 'git pack-objects'."
+"$ export GIT_DIR=~/project/.git\n"
+"$ cd ~/project_cvs_checkout\n"
+"$ git cvsexportcommit -v <commit-sha1>\n"
+"$ cvs commit -F .msg <files>\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-import.txt:135 en/git-pack-objects.txt:110 en/git-repack.txt:108
+#: en/git-cvsexportcommit.txt:102
 #, no-wrap
-msgid "--max-pack-size=<n>"
+msgid "Merge one patch into CVS (-c and -w options). The working directory is within the Git Repo"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:138
-msgid "Maximum size of each output packfile.  The default is unlimited."
+#. type: delimited block -
+#: en/git-cvsexportcommit.txt:106
+#, no-wrap
+msgid "\t$ git cvsexportcommit -v -c -w ~/project_cvs_checkout <commit-sha1>\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-import.txt:139 en/config.txt:1285
+#: en/git-cvsexportcommit.txt:108
 #, no-wrap
-msgid "fastimport.unpackLimit"
+msgid "Merge pending patches into CVS automatically -- only if you really know what you are doing"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:141
-msgid "See linkgit:git-config[1]"
+#. type: delimited block -
+#: en/git-cvsexportcommit.txt:114
+#, no-wrap
+msgid ""
+"$ export GIT_DIR=~/project/.git\n"
+"$ cd ~/project_cvs_checkout\n"
+"$ git cherry cvshead myhead | sed -n 's/^+ //p' | xargs -l1 git cvsexportcommit -c -p -v\n"
 msgstr ""
 
-#. type: Title -
-#: en/git-fast-import.txt:143
+#. type: Title =
+#: en/git-cvsimport.txt:2
 #, no-wrap
-msgid "Performance"
+msgid "git-cvsimport(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:150
+#: en/git-cvsimport.txt:7
 msgid ""
-"The design of fast-import allows it to import large projects in a minimum "
-"amount of memory usage and processing time.  Assuming the frontend is able "
-"to keep up with fast-import and feed it a constant stream of data, import "
-"times for projects holding 10+ years of history and containing 100,000+ "
-"individual commits are generally completed in just 1-2 hours on quite modest "
-"(~$2,000 USD) hardware."
+"git-cvsimport - Salvage your data out of another SCM people love to hate"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:156
+#: en/git-cvsimport.txt:17
+#, no-wrap
 msgid ""
-"Most bottlenecks appear to be in foreign source data access (the source just "
-"cannot extract revisions fast enough) or disk IO (fast-import writes as fast "
-"as the disk will take the data).  Imports will run faster if the source data "
-"is stored on a different drive than the destination Git repository (due to "
-"less IO contention)."
-msgstr ""
-
-#. type: Title -
-#: en/git-fast-import.txt:159
-#, no-wrap
-msgid "Development Cost"
+"'git cvsimport' [-o <branch-for-HEAD>] [-h] [-v] [-d <CVSROOT>]\n"
+"\t      [-A <author-conv-file>] [-p <options-for-cvsps>] [-P <file>]\n"
+"\t      [-C <git_repository>] [-z <fuzz>] [-i] [-k] [-u] [-s <subst>]\n"
+"\t      [-a] [-m] [-M <regex>] [-S <regex>] [-L <commitlimit>]\n"
+"\t      [-r <remote>] [-R] [<CVS_module>]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:166
-msgid ""
-"A typical frontend for fast-import tends to weigh in at approximately 200 "
-"lines of Perl/Python/Ruby code.  Most developers have been able to create "
-"working importers in just a couple of hours, even though it is their first "
-"exposure to fast-import, and sometimes even to Git.  This is an ideal "
-"situation, given that most conversion tools are throw-away (use once, and "
-"never look back)."
-msgstr ""
-
-#. type: Title -
-#: en/git-fast-import.txt:169
+#: en/git-cvsimport.txt:26
 #, no-wrap
-msgid "Parallel Operation"
+msgid ""
+"*WARNING:* `git cvsimport` uses cvsps version 2, which is considered\n"
+"deprecated; it does not work with cvsps version 3 and later.  If you are\n"
+"performing a one-shot import of a CVS repository consider using\n"
+"http://cvs2svn.tigris.org/cvs2git.html[cvs2git] or\n"
+"http://www.catb.org/esr/cvs-fast-export/[cvs-fast-export].\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:174
+#: en/git-cvsimport.txt:29
 msgid ""
-"Like 'git push' or 'git fetch', imports handled by fast-import are safe to "
-"run alongside parallel `git repack -a -d` or `git gc` invocations, or any "
-"other Git operation (including 'git prune', as loose objects are never used "
-"by fast-import)."
+"Imports a CVS repository into Git. It will either create a new repository, "
+"or incrementally import into an existing one."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:183
+#: en/git-cvsimport.txt:32
 msgid ""
-"fast-import does not lock the branch or tag refs it is actively importing.  "
-"After the import, during its ref update phase, fast-import tests each "
-"existing branch ref to verify the update will be a fast-forward update (the "
-"commit stored in the ref is contained in the new history of the commit to be "
-"written).  If the update is not a fast-forward update, fast-import will skip "
-"updating that ref and instead prints a warning message.  fast-import will "
-"always attempt to update all branch refs, and does not stop on the first "
-"failure."
+"Splitting the CVS log into patch sets is done by 'cvsps'.  At least version "
+"2.1 is required."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:187
+#: en/git-cvsimport.txt:35
+#, no-wrap
 msgid ""
-"Branch updates can be forced with --force, but it's recommended that this "
-"only be used on an otherwise quiet repository.  Using --force is not "
-"necessary for an initial import into an empty repository."
+"*WARNING:* for certain situations the import leads to incorrect results.\n"
+"Please see the section <<issues,ISSUES>> for further reference.\n"
 msgstr ""
 
-#. type: Title -
-#: en/git-fast-import.txt:190
-#, no-wrap
-msgid "Technical Discussion"
+#. type: Plain text
+#: en/git-cvsimport.txt:42
+msgid ""
+"You should *never* do any work of your own on the branches that are created "
+"by 'git cvsimport'.  By default initial import will create and populate a "
+"\"master\" branch from the CVS repository's main branch which you're free to "
+"work with; after that, you need to 'git merge' incremental imports, or any "
+"CVS branches, yourself.  It is advisable to specify a named remote via -r to "
+"separate and protect the incoming branches."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:197
+#: en/git-cvsimport.txt:48
 msgid ""
-"fast-import tracks a set of branches in memory.  Any branch can be created "
-"or modified at any point during the import process by sending a `commit` "
-"command on the input stream.  This design allows a frontend program to "
-"process an unlimited number of branches simultaneously, generating commits "
-"in the order they are available from the source data.  It also simplifies "
-"the frontend programs considerably."
+"If you intend to set up a shared public repository that all developers can "
+"read/write, or if you want to use linkgit:git-cvsserver[1], then you "
+"probably want to make a bare clone of the imported repository, and use the "
+"clone as the shared repository.  See linkgit:gitcvs-migration[7]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:206
-msgid ""
-"fast-import does not use or alter the current working directory, or any file "
-"within it.  (It does however update the current Git repository, as "
-"referenced by `GIT_DIR`.)  Therefore an import frontend may use the working "
-"directory for its own purposes, such as extracting file revisions from the "
-"foreign source.  This ignorance of the working directory also allows "
-"fast-import to run very quickly, as it does not need to perform any costly "
-"file update operations when switching between branches."
+#: en/git-cvsimport.txt:54
+msgid "Verbosity: let 'cvsimport' report what it is doing."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:208 en/git-rev-parse.txt:309
+#. type: Labeled list
+#: en/git-cvsimport.txt:55
 #, no-wrap
-msgid "Input Format"
+msgid "-d <CVSROOT>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:214
+#: en/git-cvsimport.txt:61
 msgid ""
-"With the exception of raw file data (which Git does not interpret)  the "
-"fast-import input format is text (ASCII) based.  This text based format "
-"simplifies development and debugging of frontend programs, especially when a "
-"higher level language such as Perl, Python or Ruby is being used."
+"The root of the CVS archive. May be local (a simple path) or remote; "
+"currently, only the :local:, :ext: and :pserver: access methods are "
+"supported. If not given, 'git cvsimport' will try to read it from `CVS/"
+"Root`. If no such file exists, it checks for the `CVSROOT` environment "
+"variable."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-cvsimport.txt:62
+#, no-wrap
+msgid "<CVS_module>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:222
+#: en/git-cvsimport.txt:66
 msgid ""
-"fast-import is very strict about its input.  Where we say SP below we mean "
-"*exactly* one space.  Likewise LF means one (and only one) linefeed and HT "
-"one (and only one) horizontal tab.  Supplying additional whitespace "
-"characters will cause unexpected results, such as branch names or file names "
-"with leading or trailing spaces in their name, or early termination of "
-"fast-import when it encounters unexpected input."
+"The CVS module you want to import. Relative to <CVSROOT>.  If not given, "
+"'git cvsimport' tries to read it from `CVS/Repository`."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:224
+#. type: Labeled list
+#: en/git-cvsimport.txt:67
 #, no-wrap
-msgid "Stream Comments"
+msgid "-C <target-dir>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:231
-msgid ""
-"To aid in debugging frontends fast-import ignores any line that begins with "
-"`#` (ASCII pound/hash) up to and including the line ending `LF`.  A comment "
-"line may contain any sequence of bytes that does not contain an LF and "
-"therefore may be used to include any detailed debugging information that "
-"might be specific to the frontend and useful when inspecting a fast-import "
-"data stream."
+#: en/git-cvsimport.txt:69
+msgid "The Git repository to import to.  If the directory doesn't"
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:233
+#. type: Plain text
+#: en/git-cvsimport.txt:70
 #, no-wrap
-msgid "Date Formats"
+msgid "exist, it will be created.  Default is the current directory.\n"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-cvsimport.txt:71
+#, no-wrap
+msgid "-r <remote>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:237
+#: en/git-cvsimport.txt:75
 msgid ""
-"The following date formats are supported.  A frontend should select the "
-"format it will use for this import by passing the format name in the "
-"--date-format=<fmt> command-line option."
+"The Git remote to import this CVS repository into.  Moves all CVS branches "
+"into remotes/<remote>/<branch> akin to the way 'git clone' uses 'origin' by "
+"default."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-import.txt:238
+#: en/git-cvsimport.txt:76
 #, no-wrap
-msgid "`raw`"
+msgid "-o <branch-for-HEAD>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:242
+#: en/git-cvsimport.txt:84
 msgid ""
-"This is the Git native format and is `<time> SP <offutc>`.  It is also "
-"fast-import's default format, if --date-format was not specified."
+"When no remote is specified (via -r) the `HEAD` branch from CVS is imported "
+"to the 'origin' branch within the Git repository, as `HEAD` already has a "
+"special meaning for Git.  When a remote is specified the `HEAD` branch is "
+"named remotes/<remote>/master mirroring 'git clone' behaviour.  Use this "
+"option if you want to import into a different branch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:246
+#: en/git-cvsimport.txt:87
 msgid ""
-"The time of the event is specified by `<time>` as the number of seconds "
-"since the UNIX epoch (midnight, Jan 1, 1970, UTC) and is written as an ASCII "
-"decimal integer."
+"Use '-o master' for continuing an import that was initially done by the old "
+"cvs2git tool."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:252
+#: en/git-cvsimport.txt:92
 msgid ""
-"The local offset is specified by `<offutc>` as a positive or negative offset "
-"from UTC.  For example EST (which is 5 hours behind UTC)  would be expressed "
-"in `<tz>` by ``-0500'' while UTC is ``+0000''.  The local offset does not "
-"affect `<time>`; it is used only as an advisement to help formatting "
-"routines display the timestamp."
+"Import-only: don't perform a checkout after importing.  This option ensures "
+"the working directory and index remain untouched and will not create them if "
+"they do not exist."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:258
+#: en/git-cvsimport.txt:97
 msgid ""
-"If the local offset is not available in the source material, use ``+0000'', "
-"or the most common local offset.  For example many organizations have a CVS "
-"repository which has only ever been accessed by users who are located in the "
-"same location and time zone.  In this case a reasonable offset from UTC "
-"could be assumed."
+"Kill keywords: will extract files with '-kk' from the CVS archive to avoid "
+"noisy changesets. Highly recommended, but off by default to preserve "
+"compatibility with early imported trees."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:261
-msgid ""
-"Unlike the `rfc2822` format, this format is very strict.  Any variation in "
-"formatting will cause fast-import to reject the value."
+#: en/git-cvsimport.txt:100
+msgid "Convert underscores in tag and branch names to dots."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-import.txt:262
+#: en/git-cvsimport.txt:101
 #, no-wrap
-msgid "`rfc2822`"
+msgid "-s <subst>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:264
-msgid "This is the standard email format as described by RFC 2822."
+#: en/git-cvsimport.txt:103
+msgid "Substitute the character \"/\" in branch names with <subst>"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:269
-msgid ""
-"An example value is ``Tue Feb 6 11:22:18 2007 -0500''.  The Git parser is "
-"accurate, but a little on the lenient side.  It is the same parser used by "
-"'git am' when applying patches received from email."
+#. type: Labeled list
+#: en/git-cvsimport.txt:104
+#, no-wrap
+msgid "-p <options-for-cvsps>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:275
+#: en/git-cvsimport.txt:107
 msgid ""
-"Some malformed strings may be accepted as valid dates.  In some of these "
-"cases Git will still be able to obtain the correct date from the malformed "
-"string.  There are also some types of malformed strings which Git will parse "
-"wrong, and yet consider valid.  Seriously malformed strings will be "
-"rejected."
+"Additional options for cvsps.  The options `-u` and '-A' are implicit and "
+"should not be used here."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:280
-msgid ""
-"Unlike the `raw` format above, the time zone/UTC offset information "
-"contained in an RFC 2822 date string is used to adjust the date value to UTC "
-"prior to storage.  Therefore it is important that this information be as "
-"accurate as possible."
+#: en/git-cvsimport.txt:109
+msgid "If you need to pass multiple options, separate them with a comma."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:285
-msgid ""
-"If the source material uses RFC 2822 style dates, the frontend should let "
-"fast-import handle the parsing and conversion (rather than attempting to do "
-"it itself) as the Git parser has been well tested in the wild."
+#. type: Labeled list
+#: en/git-cvsimport.txt:110
+#, no-wrap
+msgid "-z <fuzz>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:290
+#: en/git-cvsimport.txt:113
 msgid ""
-"Frontends should prefer the `raw` format if the source material already uses "
-"UNIX-epoch format, can be coaxed to give dates in that format, or its format "
-"is easily convertible to it, as there is no ambiguity in parsing."
+"Pass the timestamp fuzz factor to cvsps, in seconds. If unset, cvsps "
+"defaults to 300s."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-import.txt:291
+#: en/git-cvsimport.txt:114
 #, no-wrap
-msgid "`now`"
+msgid "-P <cvsps-output-file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:294
+#: en/git-cvsimport.txt:117
 msgid ""
-"Always use the current time and time zone.  The literal `now` must always be "
-"supplied for `<when>`."
+"Instead of calling cvsps, read the provided cvsps output file. Useful for "
+"debugging or when cvsps is being handled outside cvsimport."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:299
+#: en/git-cvsimport.txt:122
 msgid ""
-"This is a toy format.  The current time and time zone of this system is "
-"always copied into the identity string at the time it is being created by "
-"fast-import.  There is no way to specify a different time or time zone."
+"Attempt to detect merges based on the commit message. This option will "
+"enable default regexes that try to capture the source branch name from the "
+"commit message."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:304
-msgid ""
-"This particular format is supplied as it's short to implement and may be "
-"useful to a process that wants to create a new commit right now, without "
-"needing to use a working directory or 'git update-index'."
+#. type: Labeled list
+#: en/git-cvsimport.txt:123
+#, no-wrap
+msgid "-M <regex>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:311
+#: en/git-cvsimport.txt:127
 msgid ""
-"If separate `author` and `committer` commands are used in a `commit` the "
-"timestamps may not match, as the system clock will be polled twice (once for "
-"each command).  The only way to ensure that both author and committer "
-"identity information has the same timestamp is to omit `author` (thus "
-"copying from `committer`) or to use a date format other than `now`."
+"Attempt to detect merges based on the commit message with a custom regex. It "
+"can be used with `-m` to enable the default regexes as well. You must escape "
+"forward slashes."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:313
-#, no-wrap
-msgid "Commands"
+#. type: Plain text
+#: en/git-cvsimport.txt:129
+msgid "The regex must capture the source branch name in $1."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:317
+#: en/git-cvsimport.txt:131
 msgid ""
-"fast-import accepts several commands to update the current repository and "
-"control the current import process.  More detailed discussion (with "
-"examples) of each command follows later."
+"This option can be used several times to provide several detection regexes."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:318 en/git-fast-import.txt:380
+#. type: Labeled list
+#: en/git-cvsimport.txt:132
 #, no-wrap
-msgid "`commit`"
+msgid "-S <regex>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:322
-msgid ""
-"Creates a new branch or updates an existing branch by creating a new commit "
-"and updating the branch to point at the newly created commit."
-msgstr ""
-
-#. type: Title ~
-#: en/git-fast-import.txt:323 en/git-fast-import.txt:744
-#, no-wrap
-msgid "`tag`"
+#: en/git-cvsimport.txt:134
+msgid "Skip paths matching the regex."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:328
+#: en/git-cvsimport.txt:138
 msgid ""
-"Creates an annotated tag object from an existing commit or branch.  "
-"Lightweight tags are not supported by this command, as they are not "
-"recommended for recording meaningful points in time."
+"Import all commits, including recent ones. cvsimport by default skips "
+"commits that have a timestamp less than 10 minutes ago."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:329 en/git-fast-import.txt:787
+#. type: Labeled list
+#: en/git-cvsimport.txt:139
 #, no-wrap
-msgid "`reset`"
+msgid "-L <limit>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:333
+#: en/git-cvsimport.txt:142
 msgid ""
-"Reset an existing branch (or a new branch) to a specific revision.  This "
-"command must be used to change a branch to a specific revision without "
-"making a commit on it."
+"Limit the number of commits imported. Workaround for cases where cvsimport "
+"leaks memory."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:334 en/git-fast-import.txt:816
+#. type: Labeled list
+#: en/git-cvsimport.txt:143
 #, no-wrap
-msgid "`blob`"
+msgid "-A <author-conv-file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:338
+#: en/git-cvsimport.txt:148
 msgid ""
-"Convert raw file data into a blob, for future use in a `commit` command.  "
-"This command is optional and is not needed to perform an import."
+"CVS by default uses the Unix username when writing its commit logs. Using "
+"this option and an author-conv-file maps the name recorded in CVS to author "
+"name, e-mail and optional time zone:"
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:339 en/git-fast-import.txt:888
+#. type: delimited block -
+#: en/git-cvsimport.txt:152
 #, no-wrap
-msgid "`checkpoint`"
+msgid ""
+"\texon=Andreas Ericsson <ae@op5.se>\n"
+"\tspawn=Simon Pawn <spawn@frog-pond.org> America/Chicago\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:344
+#: en/git-cvsimport.txt:159
 msgid ""
-"Forces fast-import to close the current packfile, generate its unique SHA-1 "
-"checksum and index, and start a new packfile.  This command is optional and "
-"is not needed to perform an import."
-msgstr ""
-
-#. type: Title ~
-#: en/git-fast-import.txt:345 en/git-fast-import.txt:916
-#, no-wrap
-msgid "`progress`"
+"'git cvsimport' will make it appear as those authors had their "
+"GIT_AUTHOR_NAME and GIT_AUTHOR_EMAIL set properly all along.  If a time zone "
+"is specified, GIT_AUTHOR_DATE will have the corresponding offset applied."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:349
+#: en/git-cvsimport.txt:163
 msgid ""
-"Causes fast-import to echo the entire line to its own standard output.  This "
-"command is optional and is not needed to perform an import."
+"For convenience, this data is saved to `$GIT_DIR/cvs-authors` each time the "
+"'-A' option is provided and read from that same file each time 'git "
+"cvsimport' is run."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:350 en/git-fast-import.txt:1126
-#, no-wrap
-msgid "`done`"
+#. type: Plain text
+#: en/git-cvsimport.txt:167
+msgid ""
+"It is not recommended to use this feature if you intend to export changes "
+"back to CVS again later with 'git cvsexportcommit'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:354
+#: en/git-cvsimport.txt:173
 msgid ""
-"Marks the end of the stream. This command is optional unless the `done` "
-"feature was requested using the `--done` command-line option or `feature "
-"done` command."
+"Generate a `$GIT_DIR/cvs-revisions` file containing a mapping from CVS "
+"revision numbers to newly-created Git commit IDs.  The generated file will "
+"contain one line for each (filename, revision) pair imported; each line will "
+"look like"
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:355 en/git-fast-import.txt:941
+#. type: delimited block -
+#: en/git-cvsimport.txt:176
 #, no-wrap
-msgid "`get-mark`"
+msgid "src/widget.c 1.1 1d862f173cdc7325b6fa6d2ae1cfd61fd1b512b7\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:359
+#: en/git-cvsimport.txt:180
 msgid ""
-"Causes fast-import to print the SHA-1 corresponding to a mark to the file "
-"descriptor set with `--cat-blob-fd`, or `stdout` if unspecified."
+"The revision data is appended to the file if it already exists, for use when "
+"doing incremental imports."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:360 en/git-fast-import.txt:960
-#, no-wrap
-msgid "`cat-blob`"
+#. type: Plain text
+#: en/git-cvsimport.txt:183
+msgid ""
+"This option may be useful if you have CVS revision numbers stored in commit "
+"messages, bug-tracking systems, email archives, and the like."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:364
-msgid ""
-"Causes fast-import to print a blob in 'cat-file --batch' format to the file "
-"descriptor set with `--cat-blob-fd` or `stdout` if unspecified."
+#: en/git-cvsimport.txt:186
+msgid "Print a short usage message and exit."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:365 en/git-fast-import.txt:990
-#, no-wrap
-msgid "`ls`"
+#. type: Plain text
+#: en/git-cvsimport.txt:190
+msgid "If `-v` is specified, the script reports what it is doing."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:369
+#: en/git-cvsimport.txt:193
 msgid ""
-"Causes fast-import to print a line describing a directory entry in 'ls-tree' "
-"format to the file descriptor set with `--cat-blob-fd` or `stdout` if "
-"unspecified."
+"Otherwise, success is indicated the Unix way, i.e. by simply exiting with a "
+"zero exit status."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:370 en/git-fast-import.txt:1043
+#. type: Title -
+#: en/git-cvsimport.txt:196
 #, no-wrap
-msgid "`feature`"
+msgid "ISSUES"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:373
-msgid ""
-"Enable the specified feature. This requires that fast-import supports the "
-"specified feature, and aborts if it does not."
-msgstr ""
-
-#. type: Title ~
-#: en/git-fast-import.txt:374 en/git-fast-import.txt:1098
-#, no-wrap
-msgid "`option`"
+#: en/git-cvsimport.txt:198
+msgid "Problems related to timestamps:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:378
+#: en/git-cvsimport.txt:202
 msgid ""
-"Specify any of the options listed under OPTIONS that do not change stream "
-"semantic to suit the frontend's needs. This command is optional and is not "
-"needed to perform an import."
+"If timestamps of commits in the CVS repository are not stable enough to be "
+"used for ordering commits changes may show up in the wrong order."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:383
+#: en/git-cvsimport.txt:204
 msgid ""
-"Create or update a branch with a new commit, recording one logical change to "
-"the project."
+"If any files were ever \"cvs import\"ed more than once (e.g., import of more "
+"than one vendor release) the HEAD contains the wrong content."
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:394
-#, no-wrap
+#. type: Plain text
+#: en/git-cvsimport.txt:207
 msgid ""
-"\t'commit' SP <ref> LF\n"
-"\tmark?\n"
-"\t('author' (SP <name>)? SP LT <email> GT SP <when> LF)?\n"
-"\t'committer' (SP <name>)? SP LT <email> GT SP <when> LF\n"
-"\tdata\n"
-"\t('from' SP <commit-ish> LF)?\n"
-"\t('merge' SP <commit-ish> LF)?\n"
-"\t(filemodify | filedelete | filecopy | filerename | filedeleteall | "
-"notemodify)*\n"
-"\tLF?\n"
+"If the timestamp order of different files cross the revision order within "
+"the commit matching time window the order of commits may be wrong."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:402
-msgid ""
-"where `<ref>` is the name of the branch to make the commit on.  Typically "
-"branch names are prefixed with `refs/heads/` in Git, so importing the CVS "
-"branch symbol `RELENG-1_0` would use `refs/heads/RELENG-1_0` for the value "
-"of `<ref>`.  The value of `<ref>` must be a valid refname in Git.  As `LF` "
-"is not valid in a Git refname, no quoting or escaping syntax is supported "
-"here."
+#: en/git-cvsimport.txt:209
+msgid "Problems related to branches:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:408
-msgid ""
-"A `mark` command may optionally appear, requesting fast-import to save a "
-"reference to the newly created commit for future use by the frontend (see "
-"below for format).  It is very common for frontends to mark every commit "
-"they create, thereby allowing future branch creation from any imported "
-"commit."
+#: en/git-cvsimport.txt:211
+msgid "Branches on which no commits have been made are not imported."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:414
+#: en/git-cvsimport.txt:213
 msgid ""
-"The `data` command following `committer` must supply the commit message (see "
-"below for `data` command syntax).  To import an empty commit message use a 0 "
-"length data.  Commit messages are free-form and are not interpreted by Git.  "
-"Currently they must be encoded in UTF-8, as fast-import does not permit "
-"other encodings to be specified."
+"All files from the branching point are added to a branch even if never added "
+"in CVS."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:422
+#: en/git-cvsimport.txt:216
 msgid ""
-"Zero or more `filemodify`, `filedelete`, `filecopy`, `filerename`, "
-"`filedeleteall` and `notemodify` commands may be included to update the "
-"contents of the branch prior to creating the commit.  These commands may be "
-"supplied in any order.  However it is recommended that a `filedeleteall` "
-"command precede all `filemodify`, `filecopy`, `filerename` and `notemodify` "
-"commands in the same commit, as `filedeleteall` wipes the branch clean (see "
-"below)."
+"This applies to files added to the source branch *after* a daughter branch "
+"was created: if previously no commit was made on the daughter branch they "
+"will erroneously be added to the daughter branch in git."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:424 en/git-fast-import.txt:803 en/git-fast-import.txt:914
-msgid "The `LF` after the command is optional (it used to be required)."
+#: en/git-cvsimport.txt:218
+msgid "Problems related to tags:"
 msgstr ""
 
-#. type: Title ^
-#: en/git-fast-import.txt:426
-#, no-wrap
-msgid "`author`"
+#. type: Plain text
+#: en/git-cvsimport.txt:220
+msgid "Multiple tags on the same revision are not imported."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:432
+#: en/git-cvsimport.txt:223
 msgid ""
-"An `author` command may optionally appear, if the author information might "
-"differ from the committer information.  If `author` is omitted then "
-"fast-import will automatically use the committer's information for the "
-"author portion of the commit.  See below for a description of the fields in "
-"`author`, as they are identical to `committer`."
+"If you suspect that any of these issues may apply to the repository you want "
+"to import, consider using cvs2git:"
 msgstr ""
 
-#. type: Title ^
-#: en/git-fast-import.txt:434
+#. type: Plain text
+#: en/git-cvsimport.txt:225
+msgid "cvs2git (part of cvs2svn), `http://subversion.apache.org/`"
+msgstr ""
+
+#. type: Title =
+#: en/git-cvsserver.txt:2
 #, no-wrap
-msgid "`committer`"
+msgid "git-cvsserver(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:437
-msgid ""
-"The `committer` command indicates who made this commit, and when they made "
-"it."
+#: en/git-cvsserver.txt:7
+msgid "git-cvsserver - A CVS server emulator for Git"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:445
-msgid ""
-"Here `<name>` is the person's display name (for example ``Com M Itter'') and "
-"`<email>` is the person's email address (``\\cm@example.com'').  `LT` and "
-"`GT` are the literal less-than (\\x3c)  and greater-than (\\x3e) symbols.  "
-"These are required to delimit the email address from the other fields in the "
-"line.  Note that `<name>` and `<email>` are free-form and may contain any "
-"sequence of bytes, except `LT`, `GT` and `LF`.  `<name>` is typically UTF-8 "
-"encoded."
+#: en/git-cvsserver.txt:12
+msgid "SSH:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:450
+#: en/git-cvsserver.txt:16
+#, no-wrap
 msgid ""
-"The time of the change is specified by `<when>` using the date format that "
-"was selected by the --date-format=<fmt> command-line option.  See ``Date "
-"Formats'' above for the set of supported formats, and their syntax."
+"export CVS_SERVER=\"git cvsserver\"\n"
+"'cvs' -d :ext:user@server/path/repo.git co <HEAD_name>\n"
 msgstr ""
 
-#. type: Title ^
-#: en/git-fast-import.txt:452
-#, no-wrap
-msgid "`from`"
+#. type: Plain text
+#: en/git-cvsserver.txt:18
+msgid "pserver (/etc/inetd.conf):"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:458
-msgid ""
-"The `from` command is used to specify the commit to initialize this branch "
-"from.  This revision will be the first ancestor of the new commit.  The "
-"state of the tree built at this commit will begin with the state at the "
-"`from` commit, and be altered by the content modifications in this commit."
+#: en/git-cvsserver.txt:21
+#, no-wrap
+msgid "cvspserver stream tcp nowait nobody /usr/bin/git-cvsserver git-cvsserver pserver\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:468
-msgid ""
-"Omitting the `from` command in the first commit of a new branch will cause "
-"fast-import to create that commit with no ancestor. This tends to be desired "
-"only for the initial commit of a project.  If the frontend creates all files "
-"from scratch when making a new branch, a `merge` command may be used instead "
-"of `from` to start the commit with an empty tree.  Omitting the `from` "
-"command on existing branches is usually desired, as the current commit on "
-"that branch is automatically assumed to be the first ancestor of the new "
-"commit."
+#: en/git-cvsserver.txt:23
+msgid "Usage:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:471
-msgid ""
-"As `LF` is not valid in a Git refname or SHA-1 expression, no quoting or "
-"escaping syntax is supported within `<commit-ish>`."
+#: en/git-cvsserver.txt:26
+#, no-wrap
+msgid "'git-cvsserver' [<options>] [pserver|server] [<directory> ...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:473
-msgid "Here `<commit-ish>` is any of the following:"
+#: en/git-cvsserver.txt:33
+msgid ""
+"All these options obviously only make sense if enforced by the server side.  "
+"They have been implemented to resemble the linkgit:git-daemon[1] options as "
+"closely as possible."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:477
-msgid ""
-"The name of an existing branch already in fast-import's internal branch "
-"table.  If fast-import doesn't know the name, it's treated as a SHA-1 "
-"expression."
+#. type: Labeled list
+#: en/git-cvsserver.txt:34
+#, no-wrap
+msgid "--base-path <path>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:479
-msgid "A mark reference, `:<idnum>`, where `<idnum>` is the mark number."
+#: en/git-cvsserver.txt:36
+msgid "Prepend 'path' to requested CVSROOT"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:485
-msgid ""
-"The reason fast-import uses `:` to denote a mark reference is this character "
-"is not legal in a Git branch name.  The leading `:` makes it easy to "
-"distinguish between the mark 42 (`:42`) and the branch 42 (`42` or "
-"`refs/heads/42`), or an abbreviated SHA-1 which happened to consist only of "
-"base-10 digits."
+#. type: Labeled list
+#: en/git-cvsserver.txt:37 en/git-daemon.txt:49
+#, no-wrap
+msgid "--strict-paths"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:487
-msgid "Marks must be declared (via `mark`) before they can be used."
+#: en/git-cvsserver.txt:39
+msgid "Don't allow recursing into subdirectories"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:489
-msgid "A complete 40 byte or abbreviated commit SHA-1 in hex."
+#. type: Labeled list
+#: en/git-cvsserver.txt:40 en/git-daemon.txt:78
+#, no-wrap
+msgid "--export-all"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:492
+#: en/git-cvsserver.txt:43
 msgid ""
-"Any valid Git SHA-1 expression that resolves to a commit.  See ``SPECIFYING "
-"REVISIONS'' in linkgit:gitrevisions[7] for details."
+"Don't check for `gitcvs.enabled` in config. You also have to specify a list "
+"of allowed directories (see below) if you want to use this option."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:495
-msgid ""
-"The special null SHA-1 (40 zeros) specifies that the branch is to be "
-"removed."
+#. type: Labeled list
+#: en/git-cvsserver.txt:44
+#, no-wrap
+msgid "-V"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-cvsserver.txt:45 en/git.txt:41
+#, no-wrap
+msgid "--version"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:498
-msgid ""
-"The special case of restarting an incremental import from the current branch "
-"value should be written as:"
+#: en/git-cvsserver.txt:47
+msgid "Print version information and exit"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-fast-import.txt:500
+#. type: Labeled list
+#: en/git-cvsserver.txt:50 en/git.txt:44
 #, no-wrap
-msgid "\tfrom refs/heads/branch^0\n"
+msgid "--help"
+msgstr ""
+
+#. type: Plain text
+#: en/git-cvsserver.txt:52
+msgid "Print usage information and exit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:507
+#: en/git-cvsserver.txt:58
 msgid ""
-"The `^0` suffix is necessary as fast-import does not permit a branch to "
-"start from itself, and the branch is created in memory before the `from` "
-"command is even read from the input.  Adding `^0` will force fast-import to "
-"resolve the commit through Git's revision parsing library, rather than its "
-"internal branch table, thereby loading in the existing value of the branch."
+"You can specify a list of allowed directories. If no directories are given, "
+"all are allowed. This is an additional restriction, gitcvs access still "
+"needs to be enabled by the `gitcvs.enabled` config option unless `--export-"
+"all` was given, too."
 msgstr ""
 
-#. type: Title ^
-#: en/git-fast-import.txt:509
-#, no-wrap
-msgid "`merge`"
+#. type: Plain text
+#: en/git-cvsserver.txt:64
+msgid "This application is a CVS emulation layer for Git."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:517
+#: en/git-cvsserver.txt:68
 msgid ""
-"Includes one additional ancestor commit.  The additional ancestry link does "
-"not change the way the tree state is built at this commit.  If the `from` "
-"command is omitted when creating a new branch, the first `merge` commit will "
-"be the first ancestor of the current commit, and the branch will start out "
-"with no files.  An unlimited number of `merge` commands per commit are "
-"permitted by fast-import, thereby establishing an n-way merge."
+"It is highly functional. However, not all methods are implemented, and for "
+"those methods that are implemented, not all switches are implemented."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:520
+#: en/git-cvsserver.txt:71
 msgid ""
-"Here `<commit-ish>` is any of the commit specification expressions also "
-"accepted by `from` (see above)."
+"Testing has been done using both the CLI CVS client, and the Eclipse CVS "
+"plugin. Most functionality works fine with both of these clients."
 msgstr ""
 
-#. type: Title ^
-#: en/git-fast-import.txt:522
+#. type: Title -
+#: en/git-cvsserver.txt:73 en/git-fast-export.txt:227
 #, no-wrap
-msgid "`filemodify`"
+msgid "LIMITATIONS"
+msgstr ""
+
+#. type: Plain text
+#: en/git-cvsserver.txt:76
+msgid "CVS clients cannot tag, branch or perform Git merges."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:526
+#: en/git-cvsserver.txt:80
 msgid ""
-"Included in a `commit` command to add a new file or change the content of an "
-"existing file.  This command has two different means of specifying the "
-"content of the file."
+"'git-cvsserver' maps Git branches to CVS modules. This is very different "
+"from what most CVS users would expect since in CVS modules usually represent "
+"one or more directories."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fast-import.txt:527 en/git-fast-import.txt:694
+#. type: Title -
+#: en/git-cvsserver.txt:82
 #, no-wrap
-msgid "External data format"
+msgid "INSTALLATION"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:530
+#: en/git-cvsserver.txt:86
 msgid ""
-"The data content for the file was already supplied by a prior `blob` "
-"command.  The frontend just needs to connect it."
+"If you are going to offer CVS access via pserver, add a line in /etc/inetd."
+"conf like"
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:533
+#. type: delimited block -
+#: en/git-cvsserver.txt:90
 #, no-wrap
-msgid "\t'M' SP <mode> SP <dataref> SP <path> LF\n"
+msgid "   cvspserver stream tcp nowait nobody git-cvsserver pserver\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:540
+#: en/git-cvsserver.txt:96
 msgid ""
-"Here usually `<dataref>` must be either a mark reference (`:<idnum>`)  set "
-"by a prior `blob` command, or a full 40-byte SHA-1 of an existing Git blob "
-"object.  If `<mode>` is `040000`` then `<dataref>` must be the full 40-byte "
-"SHA-1 of an existing Git tree object or a mark reference set with "
-"`--import-marks`."
+"Note: Some inetd servers let you specify the name of the executable "
+"independently of the value of argv[0] (i.e. the name the program assumes it "
+"was executed with). In this case the correct line in /etc/inetd.conf looks "
+"like"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fast-import.txt:541 en/git-fast-import.txt:707
+#. type: delimited block -
+#: en/git-cvsserver.txt:99
 #, no-wrap
-msgid "Inline data format"
+msgid "   cvspserver stream tcp nowait nobody /usr/bin/git-cvsserver git-cvsserver pserver\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:545
+#: en/git-cvsserver.txt:106
 msgid ""
-"The data content for the file has not been supplied yet.  The frontend wants "
-"to supply it as part of this modify command."
+"Only anonymous access is provided by pserve by default. To commit you will "
+"have to create pserver accounts, simply add a gitcvs.authdb setting in the "
+"config file of the repositories you want the cvsserver to allow writes to, "
+"for example:"
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:549
+#. type: delimited block -
+#: en/git-cvsserver.txt:111
 #, no-wrap
 msgid ""
-"\t'M' SP <mode> SP 'inline' SP <path> LF\n"
-"\tdata\n"
+"   [gitcvs]\n"
+"\tauthdb = /etc/cvsserver/passwd\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:552 en/git-fast-import.txt:718
-msgid "See below for a detailed description of the `data` command."
+#: en/git-cvsserver.txt:115
+msgid ""
+"The format of these files is username followed by the encrypted password, "
+"for example:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:555
+#. type: delimited block -
+#: en/git-cvsserver.txt:119
+#, no-wrap
 msgid ""
-"In both formats `<mode>` is the type of file entry, specified in octal.  Git "
-"only supports the following modes:"
+"   myuser:$1Oyx5r9mdGZ2\n"
+"   myuser:$1$BA)@$vbnMJMDym7tA32AamXrm./\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:559
+#: en/git-cvsserver.txt:123
 msgid ""
-"`100644` or `644`: A normal (not-executable) file.  The majority of files in "
-"most projects use this mode.  If in doubt, this is what you want."
+"You can use the 'htpasswd' facility that comes with Apache to make these "
+"files, but Apache's MD5 crypt method differs from the one used by most C "
+"library's crypt() function, so don't use the -m option."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:560
-msgid "`100755` or `755`: A normal, but executable, file."
+#: en/git-cvsserver.txt:125
+msgid ""
+"Alternatively you can produce the password with perl's crypt() operator:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:561
-msgid "`120000`: A symlink, the content of the file will be the link target."
+#. type: delimited block -
+#: en/git-cvsserver.txt:127
+#, no-wrap
+msgid "   perl -e 'my ($user, $pass) = @ARGV; printf \"%s:%s\\n\", $user, crypt($user, $pass)' $USER password\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:564
-msgid ""
-"`160000`: A gitlink, SHA-1 of the object refers to a commit in another "
-"repository. Git links can only be specified by SHA or through a commit "
-"mark. They are used to implement submodules."
+#: en/git-cvsserver.txt:130
+msgid "Then provide your password via the pserver method, for example:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:566
-msgid ""
-"`040000`: A subdirectory.  Subdirectories can only be specified by SHA or "
-"through a tree mark set with `--import-marks`."
+#. type: delimited block -
+#: en/git-cvsserver.txt:132
+#, no-wrap
+msgid "   cvs -d:pserver:someuser:somepassword <at> server/path/repo.git co <HEAD_name>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:569
+#: en/git-cvsserver.txt:136
 msgid ""
-"In both formats `<path>` is the complete path of the file to be added (if "
-"not already existing) or modified (if already existing)."
+"No special setup is needed for SSH access, other than having Git tools in "
+"the PATH. If you have clients that do not accept the CVS_SERVER environment "
+"variable, you can rename 'git-cvsserver' to `cvs`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:573
+#: en/git-cvsserver.txt:139
 msgid ""
-"A `<path>` string must use UNIX-style directory separators (forward slash "
-"`/`), may contain any byte other than `LF`, and must not start with double "
-"quote (`\"`)."
+"Note: Newer CVS versions (>= 1.12.11) also support specifying CVS_SERVER "
+"directly in CVSROOT like"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:580
-msgid ""
-"A path can use C-style string quoting; this is accepted in all cases and "
-"mandatory if the filename starts with double quote or contains `LF`. In "
-"C-style quoting, the complete name should be surrounded with double quotes, "
-"and any `LF`, backslash, or double quote characters must be escaped by "
-"preceding them with a backslash (e.g., `\"path/with\\n, \\\\ and \\\" in "
-"it\"`)."
+#. type: delimited block -
+#: en/git-cvsserver.txt:142
+#, no-wrap
+msgid "cvs -d \":ext;CVS_SERVER=git cvsserver:user@server/path/repo.git\" co <HEAD_name>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:582
-msgid "The value of `<path>` must be in canonical form. That is it must not:"
+#: en/git-cvsserver.txt:148
+msgid ""
+"This has the advantage that it will be saved in your 'CVS/Root' files and "
+"you don't need to worry about always setting the correct environment "
+"variable.  SSH users restricted to 'git-shell' don't need to override the "
+"default with CVS_SERVER (and shouldn't) as 'git-shell' understands `cvs` to "
+"mean 'git-cvsserver' and pretends that the other end runs the real 'cvs' "
+"better."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:584
-msgid "contain an empty directory component (e.g. `foo//bar` is invalid),"
+#: en/git-cvsserver.txt:151
+msgid ""
+"For each repo that you want accessible from CVS you need to edit config in "
+"the repo and add the following section."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:585
-msgid "end with a directory separator (e.g. `foo/` is invalid),"
+#. type: delimited block -
+#: en/git-cvsserver.txt:158
+#, no-wrap
+msgid ""
+"   [gitcvs]\n"
+"        enabled=1\n"
+"        # optional for debugging\n"
+"\tlogFile=/path/to/logfile\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:586
-msgid "start with a directory separator (e.g. `/foo` is invalid),"
+#: en/git-cvsserver.txt:164
+msgid ""
+"Note: you need to ensure each user that is going to invoke 'git-cvsserver' "
+"has write access to the log file and to the database (see <<dbbackend,"
+"Database Backend>>. If you want to offer write access over SSH, the users of "
+"course also need write access to the Git repository itself."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:588
+#: en/git-cvsserver.txt:167
 msgid ""
-"contain the special component `.` or `..` (e.g. `foo/./bar` and `foo/../bar` "
-"are invalid)."
+"You also need to ensure that each repository is \"bare\" (without a Git "
+"index file) for `cvs commit` to work. See linkgit:gitcvs-migration[7]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:590
-msgid "The root of the tree can be represented by an empty string as `<path>`."
+#: en/git-cvsserver.txt:173
+msgid ""
+"All configuration variables can also be overridden for a specific method of "
+"access. Valid method names are \"ext\" (for SSH access) and \"pserver\". The "
+"following example configuration would disable pserver access while still "
+"allowing access over SSH."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:592
-msgid "It is recommended that `<path>` always be encoded using UTF-8."
+#. type: delimited block -
+#: en/git-cvsserver.txt:176
+#, no-wrap
+msgid ""
+"   [gitcvs]\n"
+"        enabled=0\n"
 msgstr ""
 
-#. type: Title ^
-#: en/git-fast-import.txt:594
+#. type: delimited block -
+#: en/git-cvsserver.txt:179
 #, no-wrap
-msgid "`filedelete`"
+msgid ""
+"   [gitcvs \"ext\"]\n"
+"        enabled=1\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:600
+#: en/git-cvsserver.txt:186
 msgid ""
-"Included in a `commit` command to remove a file or recursively delete an "
-"entire directory from the branch.  If the file or directory removal makes "
-"its parent directory empty, the parent directory will be automatically "
-"removed too.  This cascades up the tree until the first non-empty directory "
-"or the root is reached."
+"If you didn't specify the CVSROOT/CVS_SERVER directly in the checkout "
+"command, automatically saving it in your 'CVS/Root' files, then you need to "
+"set them explicitly in your environment.  CVSROOT should be set as per "
+"normal, but the directory should point at the appropriate Git repo.  As "
+"above, for SSH clients _not_ restricted to 'git-shell', CVS_SERVER should be "
+"set to 'git-cvsserver'."
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:603
+#. type: delimited block -
+#: en/git-cvsserver.txt:191
 #, no-wrap
-msgid "\t'D' SP <path> LF\n"
+msgid ""
+"     export CVSROOT=:ext:user@server:/var/git/project.git\n"
+"     export CVS_SERVER=\"git cvsserver\"\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:608
+#: en/git-cvsserver.txt:198
 msgid ""
-"here `<path>` is the complete path of the file or subdirectory to be removed "
-"from the branch.  See `filemodify` above for a detailed description of "
-"`<path>`."
-msgstr ""
-
-#. type: Title ^
-#: en/git-fast-import.txt:610
-#, no-wrap
-msgid "`filecopy`"
+"For SSH clients that will make commits, make sure their server-side .ssh/"
+"environment files (or .bashrc, etc., according to their specific shell)  "
+"export appropriate values for GIT_AUTHOR_NAME, GIT_AUTHOR_EMAIL, "
+"GIT_COMMITTER_NAME, and GIT_COMMITTER_EMAIL.  For SSH clients whose login "
+"shell is bash, .bashrc may be a reasonable alternative."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:615
+#: en/git-cvsserver.txt:204
 msgid ""
-"Recursively copies an existing file or subdirectory to a different location "
-"within the branch.  The existing file or directory must exist.  If the "
-"destination exists it will be completely replaced by the content copied from "
-"the source."
+"Clients should now be able to check out the project. Use the CVS 'module' "
+"name to indicate what Git 'head' you want to check out.  This also sets the "
+"name of your newly checked-out directory, unless you tell it otherwise with "
+"`-d <dir_name>`.  For example, this checks out 'master' branch to the "
+"`project-master` directory:"
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:618
+#. type: delimited block -
+#: en/git-cvsserver.txt:207
 #, no-wrap
-msgid "\t'C' SP <path> SP <path> LF\n"
+msgid "     cvs co -d project-master master\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:624 en/git-fast-import.txt:644
-msgid ""
-"here the first `<path>` is the source location and the second `<path>` is "
-"the destination.  See `filemodify` above for a detailed description of what "
-"`<path>` may look like.  To use a source path that contains SP the path must "
-"be quoted."
+#. type: Title -
+#: en/git-cvsserver.txt:211
+#, no-wrap
+msgid "DATABASE BACKEND"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:629
+#: en/git-cvsserver.txt:217
 msgid ""
-"A `filecopy` command takes effect immediately.  Once the source location has "
-"been copied to the destination any future commands applied to the source "
-"location will not impact the destination of the copy."
+"'git-cvsserver' uses one database per Git head (i.e. CVS module) to store "
+"information about the repository to maintain consistent CVS revision "
+"numbers. The database needs to be updated (i.e. written to) after every "
+"commit."
 msgstr ""
 
-#. type: Title ^
-#: en/git-fast-import.txt:631
-#, no-wrap
-msgid "`filerename`"
+#. type: Plain text
+#: en/git-cvsserver.txt:222
+msgid ""
+"If the commit is done directly by using `git` (as opposed to using 'git-"
+"cvsserver') the update will need to happen on the next repository access by "
+"'git-cvsserver', independent of access method and requested operation."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:635
+#: en/git-cvsserver.txt:227
 msgid ""
-"Renames an existing file or subdirectory to a different location within the "
-"branch.  The existing file or directory must exist. If the destination "
-"exists it will be replaced by the source directory."
+"That means that even if you offer only read access (e.g. by using the "
+"pserver method), 'git-cvsserver' should have write access to the database to "
+"work reliably (otherwise you need to make sure that the database is up to "
+"date any time 'git-cvsserver' is executed)."
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:638
-#, no-wrap
-msgid "\t'R' SP <path> SP <path> LF\n"
+#. type: Plain text
+#: en/git-cvsserver.txt:234
+msgid ""
+"By default it uses SQLite databases in the Git directory, named `gitcvs."
+"<module_name>.sqlite`. Note that the SQLite backend creates temporary files "
+"in the same directory as the database file on write so it might not be "
+"enough to grant the users using 'git-cvsserver' write access to the database "
+"file without granting them write access to the directory, too."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:649
+#: en/git-cvsserver.txt:246
 msgid ""
-"A `filerename` command takes effect immediately.  Once the source location "
-"has been renamed to the destination any future commands applied to the "
-"source location will create new files there and not impact the destination "
-"of the rename."
+"The database can not be reliably regenerated in a consistent form after the "
+"branch it is tracking has changed.  Example: For merged branches, 'git-"
+"cvsserver' only tracks one branch of development, and after a 'git merge' an "
+"incrementally updated database may track a different branch than a database "
+"regenerated from scratch, causing inconsistent CVS revision numbers. `git-"
+"cvsserver` has no way of knowing which branch it would have picked if it had "
+"been run incrementally pre-merge. So if you have to fully or partially (from "
+"old backup) regenerate the database, you should be suspicious of pre-"
+"existing CVS sandboxes."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:658
+#: en/git-cvsserver.txt:249
 msgid ""
-"Note that a `filerename` is the same as a `filecopy` followed by a "
-"`filedelete` of the source location.  There is a slight performance "
-"advantage to using `filerename`, but the advantage is so small that it is "
-"never worth trying to convert a delete/add pair in source material into a "
-"rename for fast-import.  This `filerename` command is provided just to "
-"simplify frontends that already have rename information and don't want "
-"bother with decomposing it into a `filecopy` followed by a `filedelete`."
+"You can configure the database backend with the following configuration "
+"variables:"
 msgstr ""
 
-#. type: Title ^
-#: en/git-fast-import.txt:660
+#. type: Title ~
+#: en/git-cvsserver.txt:251
 #, no-wrap
-msgid "`filedeleteall`"
+msgid "Configuring database backend"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:665
+#: en/git-cvsserver.txt:256
 msgid ""
-"Included in a `commit` command to remove all files (and also all "
-"directories) from the branch.  This command resets the internal branch "
-"structure to have no files in it, allowing the frontend to subsequently add "
-"all interesting files from scratch."
+"'git-cvsserver' uses the Perl DBI module. Please also read its documentation "
+"if changing these variables, especially about `DBI->connect()`."
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:668
+#. type: Labeled list
+#: en/git-cvsserver.txt:257
 #, no-wrap
-msgid "\t'deleteall' LF\n"
+msgid "gitcvs.dbName"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:674
+#: en/git-cvsserver.txt:263
 msgid ""
-"This command is extremely useful if the frontend does not know (or does not "
-"care to know) what files are currently on the branch, and therefore cannot "
-"generate the proper `filedelete` commands to update the content."
+"Database name. The exact meaning depends on the selected database driver, "
+"for SQLite this is a filename.  Supports variable substitution (see below). "
+"May not contain semicolons (`;`).  Default: '%Ggitcvs.%m.sqlite'"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-cvsserver.txt:264
+#, no-wrap
+msgid "gitcvs.dbDriver"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:682
+#: en/git-cvsserver.txt:272
 msgid ""
-"Issuing a `filedeleteall` followed by the needed `filemodify` commands to "
-"set the correct content will produce the same results as sending only the "
-"needed `filemodify` and `filedelete` commands.  The `filedeleteall` approach "
-"may however require fast-import to use slightly more memory per active "
-"branch (less than 1 MiB for even most large projects); so frontends that can "
-"easily obtain only the affected paths for a commit are encouraged to do so."
+"Used DBI driver. You can specify any available driver for this here, but it "
+"might not work. cvsserver is tested with 'DBD::SQLite', reported to work "
+"with 'DBD::Pg', and reported *not* to work with 'DBD::mysql'.  Please regard "
+"this as an experimental feature. May not contain colons (`:`).  Default: "
+"'SQLite'"
 msgstr ""
 
-#. type: Title ^
-#: en/git-fast-import.txt:684
+#. type: Labeled list
+#: en/git-cvsserver.txt:273
 #, no-wrap
-msgid "`notemodify`"
+msgid "gitcvs.dbuser"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:693
+#: en/git-cvsserver.txt:277
 msgid ""
-"Included in a `commit` `<notes_ref>` command to add a new note annotating a "
-"`<commit-ish>` or change this annotation contents.  Internally it is similar "
-"to filemodify 100644 on `<commit-ish>` path (maybe split into "
-"subdirectories). It's not advised to use any other commands to write to the "
-"`<notes_ref>` tree except `filedeleteall` to delete all existing notes in "
-"this tree.  This command has two different means of specifying the content "
-"of the note."
+"Database user. Only useful if setting `dbDriver`, since SQLite has no "
+"concept of database users. Supports variable substitution (see below)."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-cvsserver.txt:278
+#, no-wrap
+msgid "gitcvs.dbPass"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:698
+#: en/git-cvsserver.txt:281
 msgid ""
-"The data content for the note was already supplied by a prior `blob` "
-"command.  The frontend just needs to connect it to the commit that is to be "
-"annotated."
+"Database password.  Only useful if setting `dbDriver`, since SQLite has no "
+"concept of database passwords."
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:701
+#. type: Labeled list
+#: en/git-cvsserver.txt:282
 #, no-wrap
-msgid "\t'N' SP <dataref> SP <commit-ish> LF\n"
+msgid "gitcvs.dbTableNamePrefix"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:706
+#: en/git-cvsserver.txt:286
 msgid ""
-"Here `<dataref>` can be either a mark reference (`:<idnum>`)  set by a prior "
-"`blob` command, or a full 40-byte SHA-1 of an existing Git blob object."
+"Database table name prefix.  Supports variable substitution (see below).  "
+"Any non-alphabetic characters will be replaced with underscores."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:711
+#: en/git-cvsserver.txt:288
 msgid ""
-"The data content for the note has not been supplied yet.  The frontend wants "
-"to supply it as part of this modify command."
+"All variables can also be set per access method, see <<configaccessmethod,"
+"above>>."
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:715
+#. type: Title ^
+#: en/git-cvsserver.txt:290
 #, no-wrap
-msgid ""
-"\t'N' SP 'inline' SP <commit-ish> LF\n"
-"\tdata\n"
+msgid "Variable substitution"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:721
-msgid ""
-"In both formats `<commit-ish>` is any of the commit specification "
-"expressions also accepted by `from` (see above)."
+#: en/git-cvsserver.txt:292
+msgid "In `dbDriver` and `dbUser` you can use the following variables:"
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:723
+#. type: Labeled list
+#: en/git-cvsserver.txt:293
 #, no-wrap
-msgid "`mark`"
+msgid "%G"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:729
-msgid ""
-"Arranges for fast-import to save a reference to the current object, allowing "
-"the frontend to recall this object at a future point in time, without "
-"knowing its SHA-1.  Here the current object is the object creation command "
-"the `mark` command appears within.  This can be `commit`, `tag`, and `blob`, "
-"but `commit` is the most common usage."
+#: en/git-cvsserver.txt:295
+msgid "Git directory name"
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:732
+#. type: Labeled list
+#: en/git-cvsserver.txt:295
 #, no-wrap
-msgid "\t'mark' SP ':' <idnum> LF\n"
+msgid "%g"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:738
+#: en/git-cvsserver.txt:300
 msgid ""
-"where `<idnum>` is the number assigned by the frontend to this mark.  The "
-"value of `<idnum>` is expressed as an ASCII decimal integer.  The value 0 is "
-"reserved and cannot be used as a mark.  Only values greater than or equal to "
-"1 may be used as marks."
+"Git directory name, where all characters except for alpha-numeric ones, `.`, "
+"and `-` are replaced with `_` (this should make it easier to use the "
+"directory name in a filename if wanted)"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:742
-msgid ""
-"New marks are created automatically.  Existing marks can be moved to another "
-"object simply by reusing the same `<idnum>` in another `mark` command."
+#. type: Labeled list
+#: en/git-cvsserver.txt:300
+#, no-wrap
+msgid "%m"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:747
-msgid ""
-"Creates an annotated tag referring to a specific commit.  To create "
-"lightweight (non-annotated) tags see the `reset` command below."
+#: en/git-cvsserver.txt:302
+msgid "CVS module/Git head name"
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:753
+#. type: Labeled list
+#: en/git-cvsserver.txt:302
 #, no-wrap
-msgid ""
-"\t'tag' SP <name> LF\n"
-"\t'from' SP <commit-ish> LF\n"
-"\t'tagger' (SP <name>)? SP LT <email> GT SP <when> LF\n"
-"\tdata\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-fast-import.txt:756
-msgid "where `<name>` is the name of the tag to create."
+msgid "%a"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:761
-msgid ""
-"Tag names are automatically prefixed with `refs/tags/` when stored in Git, "
-"so importing the CVS branch symbol `RELENG-1_0-FINAL` would use just "
-"`RELENG-1_0-FINAL` for `<name>`, and fast-import will write the "
-"corresponding ref as `refs/tags/RELENG-1_0-FINAL`."
+#: en/git-cvsserver.txt:304
+msgid "access method (one of \"ext\" or \"pserver\")"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:765
-msgid ""
-"The value of `<name>` must be a valid refname in Git and therefore may "
-"contain forward slashes.  As `LF` is not valid in a Git refname, no quoting "
-"or escaping syntax is supported here."
+#. type: Labeled list
+#: en/git-cvsserver.txt:304
+#, no-wrap
+msgid "%u"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:768
+#: en/git-cvsserver.txt:308
 msgid ""
-"The `from` command is the same as in the `commit` command; see above for "
-"details."
+"Name of the user running 'git-cvsserver'.  If no name can be determined, the "
+"numeric uid is used."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:771
+#: en/git-cvsserver.txt:314
 msgid ""
-"The `tagger` command uses the same format as `committer` within `commit`; "
-"again see above for details."
+"These variables obviate the need for command-line options in some "
+"circumstances, allowing easier restricted usage through git-shell."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:777
-msgid ""
-"The `data` command following `tagger` must supply the annotated tag message "
-"(see below for `data` command syntax).  To import an empty tag message use a "
-"0 length data.  Tag messages are free-form and are not interpreted by Git.  "
-"Currently they must be encoded in UTF-8, as fast-import does not permit "
-"other encodings to be specified."
+#: en/git-cvsserver.txt:316
+msgid "GIT_CVSSERVER_BASE_PATH takes the place of the argument to --base-path."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:785
+#: en/git-cvsserver.txt:320
 msgid ""
-"Signing annotated tags during import from within fast-import is not "
-"supported.  Trying to include your own PGP/GPG signature is not recommended, "
-"as the frontend does not (easily) have access to the complete set of bytes "
-"which normally goes into such a signature.  If signing is required, create "
-"lightweight tags from within fast-import with `reset`, then create the "
-"annotated versions of those tags offline with the standard 'git tag' "
-"process."
+"GIT_CVSSERVER_ROOT specifies a single-directory whitelist. The repository "
+"must still be configured to allow access through git-cvsserver, as described "
+"above."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:792
+#: en/git-cvsserver.txt:323
 msgid ""
-"Creates (or recreates) the named branch, optionally starting from a specific "
-"revision.  The reset command allows a frontend to issue a new `from` command "
-"for an existing branch, or to create a new branch from an existing commit "
-"without creating a new commit."
+"When these environment variables are set, the corresponding command-line "
+"arguments may not be used."
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:797
+#. type: Title -
+#: en/git-cvsserver.txt:325
 #, no-wrap
-msgid ""
-"\t'reset' SP <ref> LF\n"
-"\t('from' SP <commit-ish> LF)?\n"
-"\tLF?\n"
+msgid "ECLIPSE CVS CLIENT NOTES"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:801
-msgid ""
-"For a detailed description of `<ref>` and `<commit-ish>` see above under "
-"`commit` and `from`."
+#: en/git-cvsserver.txt:328
+msgid "To get a checkout with the Eclipse CVS client:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:806
-msgid ""
-"The `reset` command can also be used to create lightweight (non-annotated) "
-"tags.  For example:"
+#: en/git-cvsserver.txt:330
+msgid "Select \"Create a new project -> From CVS checkout\""
 msgstr ""
 
-#. type: delimited block =
-#: en/git-fast-import.txt:810
-#, no-wrap
+#. type: Plain text
+#: en/git-cvsserver.txt:332
 msgid ""
-"\treset refs/tags/938\n"
-"\tfrom :938\n"
+"Create a new location. See the notes below for details on how to choose the "
+"right protocol."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:814
+#: en/git-cvsserver.txt:335
 msgid ""
-"would create the lightweight tag `refs/tags/938` referring to whatever "
-"commit mark `:938` references."
+"Browse the 'modules' available. It will give you a list of the heads in the "
+"repository. You will not be able to browse the tree from there. Only the "
+"heads."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:821
+#: en/git-cvsserver.txt:337
 msgid ""
-"Requests writing one file revision to the packfile.  The revision is not "
-"connected to any commit; this connection must be formed in a subsequent "
-"`commit` command by referencing the blob through an assigned mark."
+"Pick `HEAD` when it asks what branch/tag to check out. Untick the \"launch "
+"commit wizard\" to avoid committing the .project file."
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:826
-#, no-wrap
+#. type: Plain text
+#: en/git-cvsserver.txt:343
 msgid ""
-"\t'blob' LF\n"
-"\tmark?\n"
-"\tdata\n"
+"Protocol notes: If you are using anonymous access via pserver, just select "
+"that.  Those using SSH access should choose the 'ext' protocol, and "
+"configure 'ext' access on the Preferences->Team->CVS->ExtConnection pane. "
+"Set CVS_SERVER to \"`git cvsserver`\". Note that password support is not "
+"good when using 'ext', you will definitely want to have SSH keys setup."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:832
+#: en/git-cvsserver.txt:348
 msgid ""
-"The mark command is optional here as some frontends have chosen to generate "
-"the Git SHA-1 for the blob on their own, and feed that directly to "
-"`commit`.  This is typically more work than it's worth however, as marks are "
-"inexpensive to store and easy to use."
+"Alternatively, you can just use the non-standard extssh protocol that "
+"Eclipse offer. In that case CVS_SERVER is ignored, and you will have to "
+"replace the cvs utility on the server with 'git-cvsserver' or manipulate "
+"your `.bashrc` so that calling 'cvs' effectively calls 'git-cvsserver'."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:834
+#. type: Title -
+#: en/git-cvsserver.txt:350
 #, no-wrap
-msgid "`data`"
+msgid "CLIENTS KNOWN TO WORK"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:841
-msgid ""
-"Supplies raw data (for use as blob/file content, commit messages, or "
-"annotated tag messages) to fast-import.  Data can be supplied using an exact "
-"byte count or delimited with a terminating line.  Real frontends intended "
-"for production-quality conversions should always use the exact byte count "
-"format, as it is more robust and performs better.  The delimited format is "
-"intended primarily for testing fast-import."
+#: en/git-cvsserver.txt:353
+msgid "CVS 1.12.9 on Debian"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:846
-msgid ""
-"Comment lines appearing within the `<raw>` part of `data` commands are "
-"always taken to be part of the body of the data and are therefore never "
-"ignored by fast-import.  This makes it safe to import any file/message "
-"content whose lines might start with `#`."
+#: en/git-cvsserver.txt:354
+msgid "CVS 1.11.17 on MacOSX (from Fink package)"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fast-import.txt:847
-#, no-wrap
-msgid "Exact byte count format"
+#. type: Plain text
+#: en/git-cvsserver.txt:355
+msgid "Eclipse 3.0, 3.1.2 on MacOSX (see Eclipse CVS Client Notes)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:849
-msgid "The frontend must specify the number of bytes of data."
+#: en/git-cvsserver.txt:356
+msgid "TortoiseCVS"
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:853
+#. type: Title -
+#: en/git-cvsserver.txt:358
 #, no-wrap
-msgid ""
-"\t'data' SP <count> LF\n"
-"\t<raw> LF?\n"
+msgid "OPERATIONS SUPPORTED"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:859
+#: en/git-cvsserver.txt:362
 msgid ""
-"where `<count>` is the exact number of bytes appearing within `<raw>`.  The "
-"value of `<count>` is expressed as an ASCII decimal integer.  The `LF` on "
-"either side of `<raw>` is not included in `<count>` and will not be included "
-"in the imported data."
+"All the operations required for normal use are supported, including "
+"checkout, diff, status, update, log, add, remove, commit."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:864
+#: en/git-cvsserver.txt:371
 msgid ""
-"The `LF` after `<raw>` is optional (it used to be required) but "
-"recommended.  Always including it makes debugging a fast-import stream "
-"easier as the next command always starts in column 0 of the next line, even "
-"if `<raw>` did not end with an `LF`."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-fast-import.txt:865
-#, no-wrap
-msgid "Delimited format"
+"Most CVS command arguments that read CVS tags or revision numbers (typically "
+"-r) work, and also support any git refspec (tag, branch, commit ID, etc).  "
+"However, CVS revision numbers for non-default branches are not well "
+"emulated, and cvs log does not show tags or branches at all.  (Non-main-"
+"branch CVS revision numbers superficially resemble CVS revision numbers, but "
+"they actually encode a git commit ID directly, rather than represent the "
+"number of revisions since the branch point.)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:870
+#: en/git-cvsserver.txt:385
 msgid ""
-"A delimiter string is used to mark the end of the data.  fast-import will "
-"compute the length by searching for the delimiter.  This format is primarily "
-"useful for testing and is not recommended for real data."
+"Note that there are two ways to checkout a particular branch.  As described "
+"elsewhere on this page, the \"module\" parameter of cvs checkout is "
+"interpreted as a branch name, and it becomes the main branch.  It remains "
+"the main branch for a given sandbox even if you temporarily make another "
+"branch sticky with cvs update -r.  Alternatively, the -r argument can "
+"indicate some other branch to actually checkout, even though the module is "
+"still the \"main\" branch.  Tradeoffs (as currently implemented): Each new "
+"\"module\" creates a new database on disk with a history for the given "
+"module, and after the database is created, operations against that main "
+"branch are fast.  Or alternatively, -r doesn't take any extra disk space, "
+"but may be significantly slower for many operations, like cvs update."
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:876
-#, no-wrap
+#. type: Plain text
+#: en/git-cvsserver.txt:398
 msgid ""
-"\t'data' SP '<<' <delim> LF\n"
-"\t<raw> LF\n"
-"\t<delim> LF\n"
-"\tLF?\n"
+"If you want to refer to a git refspec that has characters that are not "
+"allowed by CVS, you have two options.  First, it may just work to supply the "
+"git refspec directly to the appropriate CVS -r argument; some CVS clients "
+"don't seem to do much sanity checking of the argument.  Second, if that "
+"fails, you can use a special character escape mechanism that only uses "
+"characters that are valid in CVS tags.  A sequence of 4 or 5 characters of "
+"the form (underscore (`\"_\"`), dash (`\"-\"`), one or two characters, and "
+"dash (`\"-\"`)) can encode various characters based on the one or two "
+"letters: `\"s\"` for slash (`\"/\"`), `\"p\"` for period (`\".\"`), `\"u\"` "
+"for underscore (`\"_\"`), or two hexadecimal digits for any byte value at "
+"all (typically an ASCII number, or perhaps a part of a UTF-8 encoded "
+"character)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:884
+#: en/git-cvsserver.txt:401
 msgid ""
-"where `<delim>` is the chosen delimiter string.  The string `<delim>` must "
-"not appear on a line by itself within `<raw>`, as otherwise fast-import will "
-"think the data ends earlier than it really does.  The `LF` immediately "
-"trailing `<raw>` is part of `<raw>`.  This is one of the limitations of the "
-"delimited format, it is impossible to supply a data chunk which does not "
-"have an LF as its last byte."
+"Legacy monitoring operations are not supported (edit, watch and related).  "
+"Exports and tagging (tags and branches) are not supported at this stage."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:886
-msgid "The `LF` after `<delim> LF` is optional (it used to be required)."
+#. type: Title ~
+#: en/git-cvsserver.txt:403
+#, no-wrap
+msgid "CRLF Line Ending Conversions"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:891
+#: en/git-cvsserver.txt:408
 msgid ""
-"Forces fast-import to close the current packfile, start a new one, and to "
-"save out all current branch refs, tags and marks."
+"By default the server leaves the `-k` mode blank for all files, which causes "
+"the CVS client to treat them as a text files, subject to end-of-line "
+"conversion on some platforms."
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:895
-#, no-wrap
+#. type: Plain text
+#: en/git-cvsserver.txt:413
 msgid ""
-"\t'checkpoint' LF\n"
-"\tLF?\n"
+"You can make the server use the end-of-line conversion attributes to set the "
+"`-k` modes for files by setting the `gitcvs.usecrlfattr` config variable.  "
+"See linkgit:gitattributes[5] for more information about end-of-line "
+"conversion."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:901
+#: en/git-cvsserver.txt:422
 msgid ""
-"Note that fast-import automatically switches packfiles when the current "
-"packfile reaches --max-pack-size, or 4 GiB, whichever limit is smaller.  "
-"During an automatic packfile switch fast-import does not update the branch "
-"refs, tags or marks."
+"Alternatively, if `gitcvs.usecrlfattr` config is not enabled or the "
+"attributes do not allow automatic detection for a filename, then the server "
+"uses the `gitcvs.allBinary` config for the default setting.  If `gitcvs."
+"allBinary` is set, then file not otherwise specified will default to '-kb' "
+"mode. Otherwise the `-k` mode is left blank. But if `gitcvs.allBinary` is "
+"set to \"guess\", then the correct `-k` mode will be guessed based on the "
+"contents of the file."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:906
+#: en/git-cvsserver.txt:426
 msgid ""
-"As a `checkpoint` can require a significant amount of CPU time and disk IO "
-"(to compute the overall pack SHA-1 checksum, generate the corresponding "
-"index file, and update the refs) it can easily take several minutes for a "
-"single `checkpoint` command to complete."
+"For best consistency with 'cvs', it is probably best to override the "
+"defaults by setting `gitcvs.usecrlfattr` to true, and `gitcvs.allBinary` to "
+"\"guess\"."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:912
-msgid ""
-"Frontends may choose to issue checkpoints during extremely large and long "
-"running imports, or when they need to allow another Git process access to a "
-"branch.  However given that a 30 GiB Subversion repository can be loaded "
-"into Git through fast-import in about 3 hours, explicit checkpointing may "
-"not be necessary."
+#. type: Title -
+#: en/git-cvsserver.txt:428
+#, no-wrap
+msgid "DEPENDENCIES"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:921
-msgid ""
-"Causes fast-import to print the entire `progress` line unmodified to its "
-"standard output channel (file descriptor 1) when the command is processed "
-"from the input stream.  The command otherwise has no impact on the current "
-"import, or on any of fast-import's internal state."
+#: en/git-cvsserver.txt:430
+msgid "'git-cvsserver' depends on DBD::SQLite."
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:925
+#. type: Title =
+#: en/git-daemon.txt:2
 #, no-wrap
-msgid ""
-"\t'progress' SP <any> LF\n"
-"\tLF?\n"
+msgid "git-daemon(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:931
-msgid ""
-"The `<any>` part of the command may contain any sequence of bytes that does "
-"not contain `LF`.  The `LF` after the command is optional.  Callers may wish "
-"to process the output through a tool such as sed to remove the leading part "
-"of the line, for example:"
+#: en/git-daemon.txt:7
+msgid "git-daemon - A really simple server for Git repositories"
 msgstr ""
 
-#. type: delimited block =
-#: en/git-fast-import.txt:934
+#. type: Plain text
+#: en/git-daemon.txt:25
 #, no-wrap
-msgid "\tfrontend | git fast-import | sed 's/^progress //'\n"
+msgid ""
+"'git daemon' [--verbose] [--syslog] [--export-all]\n"
+"\t     [--timeout=<n>] [--init-timeout=<n>] [--max-connections=<n>]\n"
+"\t     [--strict-paths] [--base-path=<path>] [--base-path-relaxed]\n"
+"\t     [--user-path | --user-path=<path>]\n"
+"\t     [--interpolated-path=<pathtemplate>]\n"
+"\t     [--reuseaddr] [--detach] [--pid-file=<file>]\n"
+"\t     [--enable=<service>] [--disable=<service>]\n"
+"\t     [--allow-override=<service>] [--forbid-override=<service>]\n"
+"\t     [--access-hook=<path>] [--[no-]informative-errors]\n"
+"\t     [--inetd |\n"
+"\t      [--listen=<host_or_ipaddr>] [--port=<n>]\n"
+"\t      [--user=<user> [--group=<group>]]]\n"
+"\t     [--log-destination=(stderr|syslog|none)]\n"
+"\t     [<directory>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:939
+#: en/git-daemon.txt:31
 msgid ""
-"Placing a `progress` command immediately after a `checkpoint` will inform "
-"the reader when the `checkpoint` has been completed and it can safely access "
-"the refs that fast-import updated."
+"A really simple TCP Git daemon that normally listens on port "
+"\"DEFAULT_GIT_PORT\" aka 9418.  It waits for a connection asking for a "
+"service, and will serve that service if it is enabled."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:947
+#: en/git-daemon.txt:37
 msgid ""
-"Causes fast-import to print the SHA-1 corresponding to a mark to stdout or "
-"to the file descriptor previously arranged with the `--cat-blob-fd` "
-"argument. The command otherwise has no impact on the current import; its "
-"purpose is to retrieve SHA-1s that later commits might want to refer to in "
-"their commit messages."
+"It verifies that the directory has the magic file \"git-daemon-export-ok\", "
+"and it will refuse to export any Git directory that hasn't explicitly been "
+"marked for export this way (unless the `--export-all` parameter is "
+"specified). If you pass some directory paths as 'git daemon' arguments, you "
+"can further restrict the offers to a whitelist comprising of those."
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:950
-#, no-wrap
-msgid "\t'get-mark' SP ':' <idnum> LF\n"
+#. type: Plain text
+#: en/git-daemon.txt:41
+msgid ""
+"By default, only `upload-pack` service is enabled, which serves 'git fetch-"
+"pack' and 'git ls-remote' clients, which are invoked from 'git fetch', 'git "
+"pull', and 'git clone'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:955
+#: en/git-daemon.txt:44
 msgid ""
-"This command can be used anywhere in the stream that comments are accepted.  "
-"In particular, the `get-mark` command can be used in the middle of a commit "
-"but not in the middle of a `data` command."
+"This is ideally suited for read-only updates, i.e., pulling from Git "
+"repositories."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:958 en/git-fast-import.txt:988 en/git-fast-import.txt:1041
-msgid ""
-"See ``Responses To Commands'' below for details about how to read this "
-"output safely."
+#: en/git-daemon.txt:46
+msgid "An `upload-archive` also exists to serve 'git archive'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:966
+#: en/git-daemon.txt:54
 msgid ""
-"Causes fast-import to print a blob to a file descriptor previously arranged "
-"with the `--cat-blob-fd` argument.  The command otherwise has no impact on "
-"the current import; its main purpose is to retrieve blobs that may be in "
-"fast-import's memory but not accessible from the target repository."
+"Match paths exactly (i.e. don't allow \"/foo/repo\" when the real path is \"/"
+"foo/repo.git\" or \"/foo/repo/.git\") and don't do user-relative paths.  "
+"'git daemon' will refuse to start when this option is enabled and no "
+"whitelist is specified."
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:969
+#. type: Labeled list
+#: en/git-daemon.txt:55
 #, no-wrap
-msgid "\t'cat-blob' SP <dataref> LF\n"
+msgid "--base-path=<path>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:974
+#: en/git-daemon.txt:61
 msgid ""
-"The `<dataref>` can be either a mark reference (`:<idnum>`)  set previously "
-"or a full 40-byte SHA-1 of a Git blob, preexisting or ready to be written."
+"Remap all the path requests as relative to the given path.  This is sort of "
+"\"Git root\" - if you run 'git daemon' with '--base-path=/srv/git' on "
+"example.com, then if you later try to pull 'git://example.com/hello.git', "
+"'git daemon' will interpret the path as '/srv/git/hello.git'."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-daemon.txt:62
+#, no-wrap
+msgid "--base-path-relaxed"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:976
-msgid "Output uses the same format as `git cat-file --batch`:"
+#: en/git-daemon.txt:67
+msgid ""
+"If --base-path is enabled and repo lookup fails, with this option 'git "
+"daemon' will attempt to lookup without prefixing the base path.  This is "
+"useful for switching to --base-path usage, while still allowing the old "
+"paths."
 msgstr ""
 
-#. type: delimited block =
-#: en/git-fast-import.txt:980
+#. type: Labeled list
+#: en/git-daemon.txt:68
 #, no-wrap
-msgid ""
-"\t<sha1> SP 'blob' SP <size> LF\n"
-"\t<contents> LF\n"
+msgid "--interpolated-path=<pathtemplate>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:985
+#: en/git-daemon.txt:77
 msgid ""
-"This command can be used anywhere in the stream that comments are accepted.  "
-"In particular, the `cat-blob` command can be used in the middle of a commit "
-"but not in the middle of a `data` command."
+"To support virtual hosting, an interpolated path template can be used to "
+"dynamically construct alternate paths.  The template supports %H for the "
+"target hostname as supplied by the client but converted to all lowercase, "
+"%CH for the canonical hostname, %IP for the server's IP address, %P for the "
+"port number, and %D for the absolute path of the named repository.  After "
+"interpolation, the path is validated against the directory whitelist."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:996
+#: en/git-daemon.txt:82
 msgid ""
-"Prints information about the object at a path to a file descriptor "
-"previously arranged with the `--cat-blob-fd` argument.  This allows printing "
-"a blob from the active commit (with `cat-blob`) or copying a blob or tree "
-"from a previous commit for use in the current one (with `filemodify`)."
+"Allow pulling from all directories that look like Git repositories (have the "
+"'objects' and 'refs' subdirectories), even if they do not have the 'git-"
+"daemon-export-ok' file."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-daemon.txt:83
+#, no-wrap
+msgid "--inetd"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:999
+#: en/git-daemon.txt:88
 msgid ""
-"The `ls` command can be used anywhere in the stream that comments are "
-"accepted, including the middle of a commit."
+"Have the server run as an inetd service. Implies --syslog (may be overridden "
+"with `--log-destination=`).  Incompatible with --detach, --port, --listen, --"
+"user and --group options."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-import.txt:1000
+#: en/git-daemon.txt:89
 #, no-wrap
-msgid "Reading from the active commit"
+msgid "--listen=<host_or_ipaddr>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1004
+#: en/git-daemon.txt:96
 msgid ""
-"This form can only be used in the middle of a `commit`.  The path names a "
-"directory entry within fast-import's active commit.  The path must be quoted "
-"in this case."
+"Listen on a specific IP address or hostname.  IP addresses can be either an "
+"IPv4 address or an IPv6 address if supported.  If IPv6 is not supported, "
+"then --listen=hostname is also not supported and --listen must be given an "
+"IPv4 address.  Can be given more than once.  Incompatible with `--inetd` "
+"option."
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:1007
+#. type: Labeled list
+#: en/git-daemon.txt:97
 #, no-wrap
-msgid "\t'ls' SP <path> LF\n"
+msgid "--port=<n>"
+msgstr ""
+
+#. type: Plain text
+#: en/git-daemon.txt:99
+msgid "Listen on an alternative port.  Incompatible with `--inetd` option."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-import.txt:1009
+#: en/git-daemon.txt:100
 #, no-wrap
-msgid "Reading from a named tree"
+msgid "--init-timeout=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1015
+#: en/git-daemon.txt:104
 msgid ""
-"The `<dataref>` can be a mark reference (`:<idnum>`) or the full 40-byte "
-"SHA-1 of a Git tag, commit, or tree object, preexisting or waiting to be "
-"written.  The path is relative to the top level of the tree named by "
-"`<dataref>`."
+"Timeout (in seconds) between the moment the connection is established and "
+"the client request is received (typically a rather low value, since that "
+"should be basically immediate)."
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:1018
+#. type: Labeled list
+#: en/git-daemon.txt:105 en/git-upload-pack.txt:31
 #, no-wrap
-msgid "\t'ls' SP <dataref> SP <path> LF\n"
+msgid "--timeout=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1021
-msgid "See `filemodify` above for a detailed description of `<path>`."
+#: en/git-daemon.txt:109
+msgid ""
+"Timeout (in seconds) for specific client sub-requests. This includes the "
+"time it takes for the server to process the sub-request and the time spent "
+"waiting for the next client's request."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-daemon.txt:110
+#, no-wrap
+msgid "--max-connections=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1023
-msgid "Output uses the same format as `git ls-tree <tree> -- <path>`:"
+#: en/git-daemon.txt:113
+msgid ""
+"Maximum number of concurrent clients, defaults to 32.  Set it to zero for no "
+"limit."
 msgstr ""
 
-#. type: delimited block =
-#: en/git-fast-import.txt:1026
+#. type: Labeled list
+#: en/git-daemon.txt:114
 #, no-wrap
-msgid "\t<mode> SP ('blob' | 'tree' | 'commit') SP <dataref> HT <path> LF\n"
+msgid "--syslog"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1031
-msgid ""
-"The <dataref> represents the blob, tree, or commit object at <path> and can "
-"be used in later 'get-mark', 'cat-blob', 'filemodify', or 'ls' commands."
+#: en/git-daemon.txt:116
+msgid "Short for `--log-destination=syslog`."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-daemon.txt:117
+#, no-wrap
+msgid "--log-destination=<destination>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1034
+#: en/git-daemon.txt:122
 msgid ""
-"If there is no file or subtree at that path, 'git fast-import' will instead "
-"report"
+"Send log messages to the specified destination.  Note that this option does "
+"not imply --verbose, thus by default only error conditions will be logged.  "
+"The <destination> must be one of:"
 msgstr ""
 
-#. type: delimited block =
-#: en/git-fast-import.txt:1037
+#. type: Labeled list
+#: en/git-daemon.txt:124
 #, no-wrap
-msgid "\tmissing SP <path> LF\n"
+msgid "stderr"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1046
+#: en/git-daemon.txt:129
 msgid ""
-"Require that fast-import supports the specified feature, or abort if it does "
-"not."
+"Write to standard error.  Note that if `--detach` is specified, the process "
+"disconnects from the real standard error, making this destination "
+"effectively equivalent to `none`."
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:1049
+#. type: Labeled list
+#: en/git-daemon.txt:129
 #, no-wrap
-msgid "\t'feature' SP <feature> ('=' <argument>)? LF\n"
+msgid "syslog"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1052
-msgid "The <feature> part of the command may be any one of the following:"
+#: en/git-daemon.txt:131
+msgid "Write to syslog, using the `git-daemon` identifier."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1053 en/git-fast-import.txt:1120
-#, no-wrap
-msgid "date-format"
+#: en/git-daemon.txt:133
+msgid "Disable all logging."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1054 en/git-fast-import.txt:1122
-#, no-wrap
-msgid "export-marks"
+#: en/git-daemon.txt:137
+msgid ""
+"The default destination is `syslog` if `--inetd` or `--detach` is specified, "
+"otherwise `stderr`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-import.txt:1055
+#: en/git-daemon.txt:138
 #, no-wrap
-msgid "relative-marks"
+msgid "--user-path"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-import.txt:1056
-#, no-wrap
-msgid "no-relative-marks"
-msgstr ""
-
-#. type: Plain text
-#: en/git-fast-import.txt:1057 en/git-fast-import.txt:1124
+#: en/git-daemon.txt:139
 #, no-wrap
-msgid "force"
+msgid "--user-path=<path>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1061
+#: en/git-daemon.txt:147
 msgid ""
-"Act as though the corresponding command-line option with a leading `--` was "
-"passed on the command line (see OPTIONS, above)."
+"Allow {tilde}user notation to be used in requests.  When specified with no "
+"parameter, requests to git://host/{tilde}alice/foo is taken as a request to "
+"access 'foo' repository in the home directory of user `alice`.  If `--user-"
+"path=path` is specified, the same request is taken as a request to access "
+"`path/foo` repository in the home directory of user `alice`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1062 en/git-fast-import.txt:1121
-#, no-wrap
-msgid "import-marks"
+#: en/git-daemon.txt:150
+msgid "Log details about the incoming connections and requested files."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-import.txt:1063
+#: en/git-daemon.txt:151
 #, no-wrap
-msgid "import-marks-if-exists"
+msgid "--reuseaddr"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1071
+#: en/git-daemon.txt:155
 msgid ""
-"Like --import-marks except in two respects: first, only one \"feature "
-"import-marks\" or \"feature import-marks-if-exists\" command is allowed per "
-"stream; second, an --import-marks= or --import-marks-if-exists command-line "
-"option overrides any of these \"feature\" commands in the stream; third, "
-"\"feature import-marks-if-exists\" like a corresponding command-line option "
-"silently skips a nonexistent file."
+"Use SO_REUSEADDR when binding the listening socket.  This allows the server "
+"to restart without waiting for old connections to time out."
+msgstr ""
+
+#. type: Plain text
+#: en/git-daemon.txt:158
+msgid "Detach from the shell. Implies --syslog."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-import.txt:1072
+#: en/git-daemon.txt:159
 #, no-wrap
-msgid "get-mark"
+msgid "--pid-file=<file>"
+msgstr ""
+
+#. type: Plain text
+#: en/git-daemon.txt:162
+msgid ""
+"Save the process id in 'file'.  Ignored when the daemon is run under `--"
+"inetd`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-import.txt:1073
+#: en/git-daemon.txt:163
 #, no-wrap
-msgid "cat-blob"
+msgid "--user=<user>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-import.txt:1074
+#: en/git-daemon.txt:164
 #, no-wrap
-msgid "ls"
+msgid "--group=<group>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1082
+#: en/git-daemon.txt:170
 msgid ""
-"Require that the backend support the 'get-mark', 'cat-blob', or 'ls' command "
-"respectively.  Versions of fast-import not supporting the specified command "
-"will exit with a message indicating so.  This lets the import error out "
-"early with a clear message, rather than wasting time on the early part of an "
-"import before the unsupported command is detected."
+"Change daemon's uid and gid before entering the service loop.  When only `--"
+"user` is given without `--group`, the primary group ID for the user is "
+"used.  The values of the option are given to `getpwnam(3)` and `getgrnam(3)` "
+"and numeric IDs are not supported."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fast-import.txt:1083
-#, no-wrap
-msgid "notes"
+#. type: Plain text
+#: en/git-daemon.txt:174
+msgid ""
+"Giving these options is an error when used with `--inetd`; use the facility "
+"of inet daemon to achieve the same before spawning 'git daemon' if needed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1088
+#: en/git-daemon.txt:181
 msgid ""
-"Require that the backend support the 'notemodify' (N)  subcommand to the "
-"'commit' command.  Versions of fast-import not supporting notes will exit "
-"with a message indicating so."
+"Like many programs that switch user id, the daemon does not reset "
+"environment variables such as `$HOME` when it runs git programs, e.g. "
+"`upload-pack` and `receive-pack`. When using this option, you may also want "
+"to set and export `HOME` to point at the home directory of `<user>` before "
+"starting the daemon, and make sure any Git configuration files in that "
+"directory are readable by `<user>`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fast-import.txt:1089
+#: en/git-daemon.txt:182
 #, no-wrap
-msgid "done"
+msgid "--enable=<service>"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:1096
-msgid ""
-"Error out if the stream ends without a 'done' command.  Without this "
-"feature, errors causing the frontend to end abruptly at a convenient point "
-"in the stream can go undetected.  This may occur, for example, if an import "
-"front end dies in mid-operation without emitting SIGTERM or SIGKILL at its "
-"subordinate git fast-import instance."
+#. type: Labeled list
+#: en/git-daemon.txt:183
+#, no-wrap
+msgid "--disable=<service>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1103
+#: en/git-daemon.txt:189
 msgid ""
-"Processes the specified option so that git fast-import behaves in a way that "
-"suits the frontend's needs.  Note that options specified by the frontend are "
-"overridden by any options the user may specify to git fast-import itself."
+"Enable/disable the service site-wide per default.  Note that a service "
+"disabled site-wide can still be enabled per repository if it is marked "
+"overridable and the repository enables the service with a configuration item."
 msgstr ""
 
-#. type: delimited block .
-#: en/git-fast-import.txt:1106
+#. type: Labeled list
+#: en/git-daemon.txt:190
 #, no-wrap
-msgid "    'option' SP <option> LF\n"
+msgid "--allow-override=<service>"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:1111
-msgid ""
-"The `<option>` part of the command may contain any of the options listed in "
-"the OPTIONS section that do not change import semantics, without the leading "
-"`--` and is treated in the same way."
+#. type: Labeled list
+#: en/git-daemon.txt:191
+#, no-wrap
+msgid "--forbid-override=<service>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1115
+#: en/git-daemon.txt:195
 msgid ""
-"Option commands must be the first commands on the input (not counting "
-"feature commands), to give an option command after any non-option command is "
-"an error."
+"Allow/forbid overriding the site-wide default with per repository "
+"configuration.  By default, all the services may be overridden."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:1118
-msgid ""
-"The following command-line options change import semantics and may therefore "
-"not be passed as option:"
+#. type: Labeled list
+#: en/git-daemon.txt:196
+#, no-wrap
+msgid "--[no-]informative-errors"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1123
-msgid "cat-blob-fd"
+#: en/git-daemon.txt:204
+msgid ""
+"When informative errors are turned on, git-daemon will report more verbose "
+"errors to the client, differentiating conditions like \"no such repository\" "
+"from \"repository not exported\". This is more convenient for clients, but "
+"may leak information about the existence of unexported repositories.  When "
+"informative errors are not enabled, all errors report \"access denied\" to "
+"the client. The default is --no-informative-errors."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:1129
-msgid ""
-"If the `done` feature is not in use, treated as if EOF was read.  This can "
-"be used to tell fast-import to finish early."
+#. type: Labeled list
+#: en/git-daemon.txt:205
+#, no-wrap
+msgid "--access-hook=<path>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1133
+#: en/git-daemon.txt:215
 msgid ""
-"If the `--done` command-line option or `feature done` command is in use, the "
-"`done` command is mandatory and marks the end of the stream."
-msgstr ""
-
-#. type: Title -
-#: en/git-fast-import.txt:1135
-#, no-wrap
-msgid "Responses To Commands"
+"Every time a client connects, first run an external command specified by the "
+"<path> with service name (e.g. \"upload-pack\"), path to the repository, "
+"hostname (%H), canonical hostname (%CH), IP address (%IP), and TCP port (%P) "
+"as its command-line arguments. The external command can decide to decline "
+"the service by exiting with a non-zero status (or to allow it by exiting "
+"with a zero status).  It can also look at the $REMOTE_ADDR and `"
+"$REMOTE_PORT` environment variables to learn about the requestor when making "
+"this decision."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1142
+#: en/git-daemon.txt:219
 msgid ""
-"New objects written by fast-import are not available immediately.  Most "
-"fast-import commands have no visible effect until the next checkpoint (or "
-"completion).  The frontend can send commands to fill fast-import's input "
-"pipe without worrying about how quickly they will take effect, which "
-"improves performance by simplifying scheduling."
+"The external command can optionally write a single line to its standard "
+"output to be sent to the requestor as an error message when it declines the "
+"service."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1149
+#: en/git-daemon.txt:224
 msgid ""
-"For some frontends, though, it is useful to be able to read back data from "
-"the current repository as it is being updated (for example when the source "
-"material describes objects in terms of patches to be applied to previously "
-"imported objects).  This can be accomplished by connecting the frontend and "
-"fast-import via bidirectional pipes:"
+"A directory to add to the whitelist of allowed directories. Unless --strict-"
+"paths is specified this will also include subdirectories of each named "
+"directory."
 msgstr ""
 
-#. type: delimited block =
-#: en/git-fast-import.txt:1154
+#. type: Title -
+#: en/git-daemon.txt:226 en/git-http-backend.txt:33
 #, no-wrap
-msgid ""
-"\tmkfifo fast-import-output\n"
-"\tfrontend <fast-import-output |\n"
-"\tgit fast-import >fast-import-output\n"
+msgid "SERVICES"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1158
+#: en/git-daemon.txt:234
 msgid ""
-"A frontend set up this way can use `progress`, `get-mark`, `ls`, and "
-"`cat-blob` commands to read information from the import in progress."
+"These services can be globally enabled/disabled using the command-line "
+"options of this command.  If finer-grained control is desired (e.g. to allow "
+"'git archive' to be run against only in a few selected repositories the "
+"daemon serves), the per-repository configuration file can be used to enable "
+"or disable them."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-daemon.txt:235
+#, no-wrap
+msgid "upload-pack"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1162
+#: en/git-daemon.txt:240
 msgid ""
-"To avoid deadlock, such frontends must completely consume any pending output "
-"from `progress`, `ls`, `get-mark`, and `cat-blob` before performing writes "
-"to fast-import that might block."
+"This serves 'git fetch-pack' and 'git ls-remote' clients.  It is enabled by "
+"default, but a repository can disable it by setting `daemon.uploadpack` "
+"configuration item to `false`."
 msgstr ""
 
-#. type: Title -
-#: en/git-fast-import.txt:1164
+#. type: Labeled list
+#: en/git-daemon.txt:241
 #, no-wrap
-msgid "Crash Reports"
+msgid "upload-archive"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1170
+#: en/git-daemon.txt:245
 msgid ""
-"If fast-import is supplied invalid input it will terminate with a non-zero "
-"exit status and create a crash report in the top level of the Git repository "
-"it was importing into.  Crash reports contain a snapshot of the internal "
-"fast-import state as well as the most recent commands that lead up to the "
-"crash."
+"This serves 'git archive --remote'.  It is disabled by default, but a "
+"repository can enable it by setting `daemon.uploadarch` configuration item "
+"to `true`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:1177
-msgid ""
-"All recent commands (including stream comments, file changes and progress "
-"commands) are shown in the command history within the crash report, but raw "
-"file data and commit messages are excluded from the crash report.  This "
-"exclusion saves space within the report file and reduces the amount of "
-"buffering that fast-import must perform during execution."
+#. type: Labeled list
+#: en/git-daemon.txt:246
+#, no-wrap
+msgid "receive-pack"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1185
+#: en/git-daemon.txt:255
 msgid ""
-"After writing a crash report fast-import will close the current packfile and "
-"export the marks table.  This allows the frontend developer to inspect the "
-"repository state and resume the import from the point where it crashed.  The "
-"modified branches and tags are not updated during a crash, as the import did "
-"not complete successfully.  Branch and tag information can be found in the "
-"crash report and must be applied manually if the update is needed."
+"This serves 'git send-pack' clients, allowing anonymous push.  It is "
+"disabled by default, as there is _no_ authentication in the protocol (in "
+"other words, anybody can push anything into the repository, including "
+"removal of refs).  This is solely meant for a closed LAN setting where "
+"everybody is friendly.  This service can be enabled by setting `daemon."
+"receivepack` configuration item to `true`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:1187
-msgid "An example crash:"
+#. type: Labeled list
+#: en/git-daemon.txt:258
+#, no-wrap
+msgid "We assume the following in /etc/services"
 msgstr ""
 
-#. type: delimited block =
-#: en/git-fast-import.txt:1203
+#. type: delimited block -
+#: en/git-daemon.txt:263
 #, no-wrap
 msgid ""
-"\t$ cat >in <<END_OF_INPUT\n"
-"\t# my very first test commit\n"
-"\tcommit refs/heads/master\n"
-"\tcommitter Shawn O. Pearce <spearce> 19283 -0400\n"
-"\t# who is that guy anyway?\n"
-"\tdata <<EOF\n"
-"\tthis is my commit\n"
-"\tEOF\n"
-"\tM 644 inline .gitignore\n"
-"\tdata <<EOF\n"
-"\t.gitignore\n"
-"\tEOF\n"
-"\tM 777 inline bob\n"
-"\tEND_OF_INPUT\n"
+"$ grep 9418 /etc/services\n"
+"git\t\t9418/tcp\t\t# Git Version Control System\n"
 msgstr ""
 
-#. type: delimited block =
-#: en/git-fast-import.txt:1207
+#. type: Labeled list
+#: en/git-daemon.txt:265
 #, no-wrap
+msgid "'git daemon' as inetd server"
+msgstr ""
+
+#. type: Plain text
+#: en/git-daemon.txt:270
 msgid ""
-"\t$ git fast-import <in\n"
-"\tfatal: Corrupt mode: M 777 inline bob\n"
-"\tfast-import: dumping crash report to .git/fast_import_crash_8434\n"
+"To set up 'git daemon' as an inetd service that handles any repository under "
+"the whitelisted set of directories, /pub/foo and /pub/bar, place an entry "
+"like the following into /etc/inetd all on one line:"
 msgstr ""
 
-#. type: delimited block =
-#: en/git-fast-import.txt:1213
+#. type: delimited block -
+#: en/git-daemon.txt:275
 #, no-wrap
 msgid ""
-"\t$ cat .git/fast_import_crash_8434\n"
-"\tfast-import crash report:\n"
-"\t    fast-import process: 8434\n"
-"\t    parent process     : 1391\n"
-"\t    at Sat Sep 1 00:58:12 2007\n"
+"\tgit stream tcp nowait nobody  /usr/bin/git\n"
+"\t\tgit daemon --inetd --verbose --export-all\n"
+"\t\t/pub/foo /pub/bar\n"
 msgstr ""
 
-#. type: delimited block =
-#: en/git-fast-import.txt:1215
+#. type: Labeled list
+#: en/git-daemon.txt:278
 #, no-wrap
-msgid "\tfatal: Corrupt mode: M 777 inline bob\n"
+msgid "'git daemon' as inetd server for virtual hosts"
 msgstr ""
 
-#. type: delimited block =
-#: en/git-fast-import.txt:1225
-#, no-wrap
+#. type: Plain text
+#: en/git-daemon.txt:283
 msgid ""
-"\tMost Recent Commands Before Crash\n"
-"\t---------------------------------\n"
-"\t  # my very first test commit\n"
-"\t  commit refs/heads/master\n"
-"\t  committer Shawn O. Pearce <spearce> 19283 -0400\n"
-"\t  # who is that guy anyway?\n"
-"\t  data <<EOF\n"
-"\t  M 644 inline .gitignore\n"
-"\t  data <<EOF\n"
+"To set up 'git daemon' as an inetd service that handles repositories for "
+"different virtual hosts, `www.example.com` and `www.example.org`, place an "
+"entry like the following into `/etc/inetd` all on one line:"
 msgstr ""
 
-#. type: delimited block =
-#: en/git-fast-import.txt:1226
+#. type: delimited block -
+#: en/git-daemon.txt:291
 #, no-wrap
-msgid "M 777 inline bob\n"
+msgid ""
+"\tgit stream tcp nowait nobody /usr/bin/git\n"
+"\t\tgit daemon --inetd --verbose --export-all\n"
+"\t\t--interpolated-path=/pub/%H%D\n"
+"\t\t/pub/www.example.org/software\n"
+"\t\t/pub/www.example.com/software\n"
+"\t\t/software\n"
 msgstr ""
 
-#. type: delimited block =
-#: en/git-fast-import.txt:1229
-#, no-wrap
+#. type: Plain text
+#: en/git-daemon.txt:299
 msgid ""
-"Active Branch LRU\n"
-"-----------------\n"
+"In this example, the root-level directory `/pub` will contain a subdirectory "
+"for each virtual host name supported.  Further, both hosts advertise "
+"repositories simply as `git://www.example.com/software/repo.git`.  For "
+"pre-1.4.0 clients, a symlink from `/software` into the appropriate default "
+"repository could be made as well."
 msgstr ""
 
-#. type: delimited block =
-#: en/git-fast-import.txt:1230
+#. type: Labeled list
+#: en/git-daemon.txt:301
 #, no-wrap
-msgid "active_branches = 1 cur, 5 max\n"
+msgid "'git daemon' as regular daemon for virtual hosts"
 msgstr ""
 
-#. type: delimited block =
-#: en/git-fast-import.txt:1233
-msgid "pos clock name ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
+#. type: Plain text
+#: en/git-daemon.txt:305
+msgid ""
+"To set up 'git daemon' as a regular, non-inetd service that handles "
+"repositories for multiple virtual hosts based on their IP addresses, start "
+"the daemon like this:"
 msgstr ""
 
-#. type: delimited block =
-#: en/git-fast-import.txt:1234
-msgid "0 refs/heads/master"
+#. type: delimited block -
+#: en/git-daemon.txt:311
+#, no-wrap
+msgid ""
+"\tgit daemon --verbose --export-all\n"
+"\t\t--interpolated-path=/pub/%IP/%D\n"
+"\t\t/pub/192.168.1.200/software\n"
+"\t\t/pub/10.10.220.23/software\n"
 msgstr ""
 
-#. type: delimited block =
-#: en/git-fast-import.txt:1238
-#, no-wrap
+#. type: Plain text
+#: en/git-daemon.txt:317
 msgid ""
-"Inactive Branches\n"
-"-----------------\n"
-"refs/heads/master:\n"
+"In this example, the root-level directory `/pub` will contain a subdirectory "
+"for each virtual host IP address supported.  Repositories can still be "
+"accessed by hostname though, assuming they correspond to these IP addresses."
 msgstr ""
 
-#. type: delimited block =
-#: en/git-fast-import.txt:1244
+#. type: Labeled list
+#: en/git-daemon.txt:318
 #, no-wrap
-msgid ""
-"status      : active loaded dirty\n"
-"tip commit  : 0000000000000000000000000000000000000000\n"
-"old tree    : 0000000000000000000000000000000000000000\n"
-"cur tree    : 0000000000000000000000000000000000000000\n"
-"commit clock: 0\n"
-"last pack   :\n"
+msgid "selectively enable/disable services per repository"
 msgstr ""
 
-#. type: delimited block =
-#: en/git-fast-import.txt:1248
-msgid "------------------- END OF CRASH REPORT"
+#. type: Plain text
+#: en/git-daemon.txt:323
+msgid ""
+"To enable 'git archive --remote' and disable 'git fetch' against a "
+"repository, have the following in the configuration file in the repository "
+"(that is the file 'config' next to `HEAD`, 'refs' and 'objects')."
 msgstr ""
 
-#. type: Title -
-#: en/git-fast-import.txt:1251
+#. type: delimited block -
+#: en/git-daemon.txt:328
 #, no-wrap
-msgid "Tips and Tricks"
+msgid ""
+"\t[daemon]\n"
+"\t\tuploadpack = false\n"
+"\t\tuploadarch = true\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1254
+#: en/git-daemon.txt:337
 msgid ""
-"The following tips and tricks have been collected from various users of "
-"fast-import, and are offered here as suggestions."
+"'git daemon' will set REMOTE_ADDR to the IP address of the client that "
+"connected to it, if the IP address is available. REMOTE_ADDR will be "
+"available in the environment of hooks called when services are performed."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:1256
+#. type: Title =
+#: en/git-describe.txt:2
 #, no-wrap
-msgid "Use One Mark Per Commit"
+msgid "git-describe(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1264
+#: en/git-describe.txt:7
 msgid ""
-"When doing a repository conversion, use a unique mark per commit (`mark "
-":<n>`) and supply the --export-marks option on the command line.  "
-"fast-import will dump a file which lists every mark and the Git object SHA-1 "
-"that corresponds to it.  If the frontend can tie the marks back to the "
-"source repository, it is easy to verify the accuracy and completeness of the "
-"import by comparing each Git commit to the corresponding source revision."
+"git-describe - Give an object a human readable name based on an available ref"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1268
+#: en/git-describe.txt:14
+#, no-wrap
 msgid ""
-"Coming from a system such as Perforce or Subversion this should be quite "
-"simple, as the fast-import mark can also be the Perforce changeset number or "
-"the Subversion revision number."
+"'git describe' [--all] [--tags] [--contains] [--abbrev=<n>] [<commit-ish>...]\n"
+"'git describe' [--all] [--tags] [--contains] [--abbrev=<n>] --dirty[=<mark>]\n"
+"'git describe' <blob>\n"
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:1270
-#, no-wrap
-msgid "Freely Skip Around Branches"
+#. type: Plain text
+#: en/git-describe.txt:24
+msgid ""
+"The command finds the most recent tag that is reachable from a commit.  If "
+"the tag points to the commit, then only the tag is shown.  Otherwise, it "
+"suffixes the tag name with the number of additional commits on top of the "
+"tagged object and the abbreviated object name of the most recent commit. The "
+"result is a \"human-readable\" object name which can also be used to "
+"identify the commit to other git commands."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1275
+#: en/git-describe.txt:28
 msgid ""
-"Don't bother trying to optimize the frontend to stick to one branch at a "
-"time during an import.  Although doing so might be slightly faster for "
-"fast-import, it tends to increase the complexity of the frontend code "
-"considerably."
+"By default (without --all or --tags) `git describe` only shows annotated "
+"tags.  For more information about creating annotated tags see the -a and -s "
+"options to linkgit:git-tag[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1279
+#: en/git-describe.txt:34
 msgid ""
-"The branch LRU builtin to fast-import tends to behave very well, and the "
-"cost of activating an inactive branch is so low that bouncing around between "
-"branches has virtually no impact on import performance."
+"If the given object refers to a blob, it will be described as `<commit-ish>:"
+"<path>`, such that the blob can be found at `<path>` in the `<commit-ish>`, "
+"which itself describes the first commit in which this blob occurs in a "
+"reverse revision walk from HEAD."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:1281
+#. type: Labeled list
+#: en/git-describe.txt:37
 #, no-wrap
-msgid "Handling Renames"
+msgid "<commit-ish>..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1286
-msgid ""
-"When importing a renamed file or directory, simply delete the old name(s) "
-"and modify the new name(s) during the corresponding commit.  Git performs "
-"rename detection after-the-fact, rather than explicitly during a commit."
+#: en/git-describe.txt:39
+msgid "Commit-ish object names to describe.  Defaults to HEAD if omitted."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:1288
+#. type: Labeled list
+#: en/git-describe.txt:40
 #, no-wrap
-msgid "Use Tag Fixup Branches"
-msgstr ""
-
-#. type: Plain text
-#: en/git-fast-import.txt:1292
-msgid ""
-"Some other SCM systems let the user create a tag from multiple files which "
-"are not from the same commit/changeset.  Or to create tags which are a "
-"subset of the files available in the repository."
+msgid "--dirty[=<mark>]"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:1299
-msgid ""
-"Importing these tags as-is in Git is impossible without making at least one "
-"commit which ``fixes up'' the files to match the content of the tag.  Use "
-"fast-import's `reset` command to reset a dummy branch outside of your normal "
-"branch space to the base commit for the tag, then commit one or more file "
-"fixup commits, and finally tag the dummy branch."
+#. type: Labeled list
+#: en/git-describe.txt:41
+#, no-wrap
+msgid "--broken[=<mark>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1305
+#: en/git-describe.txt:49
 msgid ""
-"For example since all normal branches are stored under `refs/heads/` name "
-"the tag fixup branch `TAG_FIXUP`.  This way it is impossible for the fixup "
-"branch used by the importer to have namespace conflicts with real branches "
-"imported from the source (the name `TAG_FIXUP` is not "
-"`refs/heads/TAG_FIXUP`)."
+"Describe the state of the working tree.  When the working tree matches HEAD, "
+"the output is the same as \"git describe HEAD\".  If the working tree has "
+"local modification \"-dirty\" is appended to it.  If a repository is corrupt "
+"and Git cannot determine if there is local modification, Git will error out, "
+"unless `--broken' is given, which appends the suffix \"-broken\" instead."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1311
+#: en/git-describe.txt:54
 msgid ""
-"When committing fixups, consider using `merge` to connect the commit(s) "
-"which are supplying file revisions to the fixup branch.  Doing so will allow "
-"tools such as 'git blame' to track through the real commit history and "
-"properly annotate the source files."
+"Instead of using only the annotated tags, use any ref found in `refs/` "
+"namespace.  This option enables matching any known branch, remote-tracking "
+"branch, or lightweight tag."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1314
+#: en/git-describe.txt:59
 msgid ""
-"After fast-import terminates the frontend will need to do `rm "
-".git/TAG_FIXUP` to remove the dummy branch."
+"Instead of using only the annotated tags, use any tag found in `refs/tags` "
+"namespace.  This option enables matching a lightweight (non-annotated) tag."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:1316
+#. type: Labeled list
+#: en/git-describe.txt:60
 #, no-wrap
-msgid "Import Now, Repack Later"
-msgstr ""
-
-#. type: Plain text
-#: en/git-fast-import.txt:1320
-msgid ""
-"As soon as fast-import completes the Git repository is completely valid and "
-"ready for use.  Typically this takes only a very short time, even for "
-"considerably large projects (100,000+ commits)."
+msgid "--contains"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1327
+#: en/git-describe.txt:64
 msgid ""
-"However repacking the repository is necessary to improve data locality and "
-"access performance.  It can also take hours on extremely large projects "
-"(especially if -f and a large --window parameter is used).  Since repacking "
-"is safe to run alongside readers and writers, run the repack in the "
-"background and let it finish when it finishes.  There is no reason to wait "
-"to explore your new Git project!"
+"Instead of finding the tag that predates the commit, find the tag that comes "
+"after the commit, and thus contains it.  Automatically implies --tags."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1332
+#: en/git-describe.txt:70
 msgid ""
-"If you choose to wait for the repack, don't try to run benchmarks or "
-"performance tests until repacking is completed.  fast-import outputs "
-"suboptimal packfiles that are simply never seen in real use situations."
+"Instead of using the default 7 hexadecimal digits as the abbreviated object "
+"name, use <n> digits, or as many digits as needed to form a unique object "
+"name.  An <n> of 0 will suppress long format, only showing the closest tag."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:1334
+#. type: Labeled list
+#: en/git-describe.txt:71
 #, no-wrap
-msgid "Repacking Historical Data"
+msgid "--candidates=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1341
+#: en/git-describe.txt:77
 msgid ""
-"If you are repacking very old imported data (e.g. older than the last year), "
-"consider expending some extra CPU time and supplying --window=50 (or higher) "
-"when you run 'git repack'.  This will take longer, but will also produce a "
-"smaller packfile.  You only need to expend the effort once, and everyone "
-"using your project will benefit from the smaller repository."
+"Instead of considering only the 10 most recent tags as candidates to "
+"describe the input commit-ish consider up to <n> candidates.  Increasing <n> "
+"above 10 will take slightly longer but may produce a more accurate result.  "
+"An <n> of 0 will cause only exact matches to be output."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:1343
+#. type: Labeled list
+#: en/git-describe.txt:78
 #, no-wrap
-msgid "Include Some Progress Messages"
+msgid "--exact-match"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1350
+#: en/git-describe.txt:81
 msgid ""
-"Every once in a while have your frontend emit a `progress` message to "
-"fast-import.  The contents of the messages are entirely free-form, so one "
-"suggestion would be to output the current month and year each time the "
-"current commit date moves into the next month.  Your users will feel better "
-"knowing how much of the data stream has been processed."
+"Only output exact matches (a tag directly references the supplied commit).  "
+"This is a synonym for --candidates=0."
 msgstr ""
 
-#. type: Title -
-#: en/git-fast-import.txt:1353
+#. type: Labeled list
+#: en/git-describe.txt:82 en/git-ls-files.txt:157
 #, no-wrap
-msgid "Packfile Optimization"
+msgid "--debug"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1359
+#: en/git-describe.txt:86
 msgid ""
-"When packing a blob fast-import always attempts to deltify against the last "
-"blob written.  Unless specifically arranged for by the frontend, this will "
-"probably not be a prior version of the same file, so the generated delta "
-"will not be the smallest possible.  The resulting packfile will be "
-"compressed, but will not be optimal."
+"Verbosely display information about the searching strategy being employed to "
+"standard error.  The tag name will still be printed to standard out."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1367
+#: en/git-describe.txt:95
 msgid ""
-"Frontends which have efficient access to all revisions of a single file (for "
-"example reading an RCS/CVS ,v file) can choose to supply all revisions of "
-"that file as a sequence of consecutive `blob` commands.  This allows "
-"fast-import to deltify the different file revisions against each other, "
-"saving space in the final packfile.  Marks can be used to later identify "
-"individual file revisions during a sequence of `commit` commands."
+"Always output the long format (the tag, the number of commits and the "
+"abbreviated commit name) even when it matches a tag.  This is useful when "
+"you want to see parts of the commit object name in \"describe\" output, even "
+"when the commit in question happens to be a tagged version.  Instead of just "
+"emitting the tag name, it will describe such a commit as v1.2-0-gdeadbee "
+"(0th commit since tag v1.2 that points at object deadbee....)."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fast-import.txt:1374
-msgid ""
-"The packfile(s) created by fast-import do not encourage good disk access "
-"patterns.  This is caused by fast-import writing the data in the order it is "
-"received on standard input, while Git typically organizes data within "
-"packfiles to make the most recent (current tip) data appear before "
-"historical data.  Git also clusters commits together, speeding up revision "
-"traversal through better cache locality."
+#. type: Labeled list
+#: en/git-describe.txt:96
+#, no-wrap
+msgid "--match <pattern>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1381
+#: en/git-describe.txt:105
 msgid ""
-"For this reason it is strongly recommended that users repack the repository "
-"with `git repack -a -d` after fast-import completes, allowing Git to "
-"reorganize the packfiles for faster data access.  If blob deltas are "
-"suboptimal (see above) then also adding the `-f` option to force "
-"recomputation of all deltas can significantly reduce the final packfile size "
-"(30-50% smaller can be quite typical)."
+"Only consider tags matching the given `glob(7)` pattern, excluding the "
+"\"refs/tags/\" prefix. If used with `--all`, it also considers local "
+"branches and remote-tracking references matching the pattern, excluding "
+"respectively \"refs/heads/\" and \"refs/remotes/\" prefix; references of "
+"other types are never considered. If given multiple times, a list of "
+"patterns will be accumulated, and tags matching any of the patterns will be "
+"considered.  Use `--no-match` to clear and reset the list of patterns."
 msgstr ""
 
-#. type: Title -
-#: en/git-fast-import.txt:1384
+#. type: Labeled list
+#: en/git-describe.txt:106
 #, no-wrap
-msgid "Memory Utilization"
+msgid "--exclude <pattern>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1390
+#: en/git-describe.txt:117
 msgid ""
-"There are a number of factors which affect how much memory fast-import "
-"requires to perform an import.  Like critical sections of core Git, "
-"fast-import uses its own memory allocators to amortize any overheads "
-"associated with malloc.  In practice fast-import tends to amortize any "
-"malloc overheads to 0, due to its use of large block allocations."
+"Do not consider tags matching the given `glob(7)` pattern, excluding the "
+"\"refs/tags/\" prefix. If used with `--all`, it also does not consider local "
+"branches and remote-tracking references matching the pattern, excluding "
+"respectively \"refs/heads/\" and \"refs/remotes/\" prefix; references of "
+"other types are never considered. If given multiple times, a list of "
+"patterns will be accumulated and tags matching any of the patterns will be "
+"excluded. When combined with --match a tag will be considered when it "
+"matches at least one --match pattern and does not match any of the --exclude "
+"patterns. Use `--no-exclude` to clear and reset the list of patterns."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:1392
+#. type: Labeled list
+#: en/git-describe.txt:118 en/git-diff-tree.txt:108 en/git-name-rev.txt:61
 #, no-wrap
-msgid "per object"
-msgstr ""
-
-#. type: Plain text
-#: en/git-fast-import.txt:1399
-msgid ""
-"fast-import maintains an in-memory structure for every object written in "
-"this execution.  On a 32 bit system the structure is 32 bytes, on a 64 bit "
-"system the structure is 40 bytes (due to the larger pointer sizes).  Objects "
-"in the table are not deallocated until fast-import terminates.  Importing 2 "
-"million objects on a 32 bit system will require approximately 64 MiB of "
-"memory."
+msgid "--always"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1405
-msgid ""
-"The object table is actually a hashtable keyed on the object name (the "
-"unique SHA-1).  This storage configuration allows fast-import to reuse an "
-"existing or already written object and avoid writing duplicates to the "
-"output packfile.  Duplicate blobs are surprisingly common in an import, "
-"typically due to branch merges in the source."
+#: en/git-describe.txt:120 en/git-name-rev.txt:63
+msgid "Show uniquely abbreviated commit object as fallback."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:1407
+#. type: Labeled list
+#: en/git-describe.txt:121 en/rev-list-options.txt:124
 #, no-wrap
-msgid "per mark"
+msgid "--first-parent"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1413
+#: en/git-describe.txt:125
 msgid ""
-"Marks are stored in a sparse array, using 1 pointer (4 bytes or 8 bytes, "
-"depending on pointer size) per mark.  Although the array is sparse, "
-"frontends are still strongly encouraged to use marks between 1 and n, where "
-"n is the total number of marks required for this import."
+"Follow only the first parent commit upon seeing a merge commit.  This is "
+"useful when you wish to not match tags on branches merged in the history of "
+"the target commit."
 msgstr ""
 
-#. type: Title ~
-#: en/git-fast-import.txt:1415
-#, no-wrap
-msgid "per branch"
+#. type: Plain text
+#: en/git-describe.txt:130
+msgid "With something like git.git current tree, I get:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1418
+#: en/git-describe.txt:133
+#, no-wrap
 msgid ""
-"Branches are classified as active and inactive.  The memory usage of the two "
-"classes is significantly different."
+"\t[torvalds@g5 git]$ git describe parent\n"
+"\tv1.0.4-14-g2414721\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1424
+#: en/git-describe.txt:139
 msgid ""
-"Inactive branches are stored in a structure which uses 96 or 120 bytes (32 "
-"bit or 64 bit systems, respectively), plus the length of the branch name "
-"(typically under 200 bytes), per branch.  fast-import will easily handle as "
-"many as 10,000 inactive branches in under 2 MiB of memory."
+"i.e. the current head of my \"parent\" branch is based on v1.0.4, but since "
+"it has a few commits on top of that, describe has added the number of "
+"additional commits (\"14\") and an abbreviated object name for the commit "
+"itself (\"2414721\")  at the end."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1431
+#: en/git-describe.txt:147
 msgid ""
-"Active branches have the same overhead as inactive branches, but also "
-"contain copies of every tree that has been recently modified on that "
-"branch.  If subtree `include` has not been modified since the branch became "
-"active, its contents will not be loaded into memory, but if subtree `src` "
-"has been modified by a commit since the branch became active, then its "
-"contents will be loaded in memory."
+"The number of additional commits is the number of commits which would be "
+"displayed by \"git log v1.0.4..parent\".  The hash suffix is \"-g\" + 7-char "
+"abbreviation for the tip commit of parent (which was "
+"`2414721b194453f058079d897d13c4e377f92dc6`).  The \"g\" prefix stands for "
+"\"git\" and is used to allow describing the version of a software depending "
+"on the SCM the software is managed with. This is useful in an environment "
+"where people may use different SCMs."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1435
-msgid ""
-"As active branches store metadata about the files contained on that branch, "
-"their in-memory storage size can grow to a considerable size (see below)."
+#: en/git-describe.txt:149
+msgid "Doing a 'git describe' on a tag-name will just show the tag name:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1440
-msgid ""
-"fast-import automatically moves active branches to inactive status based on "
-"a simple least-recently-used algorithm.  The LRU chain is updated on each "
-"`commit` command.  The maximum number of active branches can be increased or "
-"decreased on the command line with --active-branches=."
-msgstr ""
-
-#. type: Title ~
-#: en/git-fast-import.txt:1442
+#: en/git-describe.txt:152
 #, no-wrap
-msgid "per active tree"
-msgstr ""
-
-#. type: Plain text
-#: en/git-fast-import.txt:1447
 msgid ""
-"Trees (aka directories) use just 12 bytes of memory on top of the memory "
-"required for their entries (see ``per active file'' below).  The cost of a "
-"tree is virtually 0, as its overhead amortizes out over the individual file "
-"entries."
-msgstr ""
-
-#. type: Title ~
-#: en/git-fast-import.txt:1449
-#, no-wrap
-msgid "per active file entry"
+"\t[torvalds@g5 git]$ git describe v1.0.4\n"
+"\tv1.0.4\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1455
+#: en/git-describe.txt:155
 msgid ""
-"Files (and pointers to subtrees) within active trees require 52 or 64 bytes "
-"(32/64 bit platforms) per entry.  To conserve space, file and tree names are "
-"pooled in a common string table, allowing the filename ``Makefile'' to use "
-"just 16 bytes (after including the string header overhead) no matter how "
-"many times it occurs within the project."
+"With --all, the command can use branch heads as references, so the output "
+"shows the reference path as well:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fast-import.txt:1460
-msgid ""
-"The active branch LRU, when coupled with the filename string pool and lazy "
-"loading of subtrees, allows fast-import to efficiently import projects with "
-"2,000+ branches and 45,114+ files in a very limited memory footprint (less "
-"than 2.7 MiB per active branch)."
-msgstr ""
-
-#. type: Title -
-#: en/git-fast-import.txt:1462
+#: en/git-describe.txt:158
 #, no-wrap
-msgid "Signals"
-msgstr ""
-
-#. type: Plain text
-#: en/git-fast-import.txt:1468
 msgid ""
-"Sending *SIGUSR1* to the 'git fast-import' process ends the current packfile "
-"early, simulating a `checkpoint` command.  The impatient operator can use "
-"this facility to peek at the objects and refs from an import in progress, at "
-"the cost of some added running time and worse compression."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-fast-import.txt:1472 en/cmds-ancillarymanipulators.txt:4
-#, no-wrap
-msgid "linkgit:git-fast-export[1]"
-msgstr ""
-
-#. type: Title =
-#: en/git-fetch-pack.txt:2
-#, no-wrap
-msgid "git-fetch-pack(1)"
-msgstr ""
-
-#. type: Plain text
-#: en/git-fetch-pack.txt:7
-msgid "git-fetch-pack - Receive missing objects from another repository"
+"\t[torvalds@g5 git]$ git describe --all --abbrev=4 v1.0.5^2\n"
+"\ttags/v1.0.0-21-g975b\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch-pack.txt:16
+#: en/git-describe.txt:161
 #, no-wrap
 msgid ""
-"'git fetch-pack' [--all] [--quiet|-q] [--keep|-k] [--thin] [--include-tag]\n"
-"\t[--upload-pack=<git-upload-pack>]\n"
-"\t[--depth=<n>] [--no-progress]\n"
-"\t[-v] <repository> [<refs>...]\n"
+"\t[torvalds@g5 git]$ git describe --all --abbrev=4 HEAD^\n"
+"\theads/lt/describe-7-g975b\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch-pack.txt:21
+#: en/git-describe.txt:164
 msgid ""
-"Usually you would want to use 'git fetch', which is a higher level wrapper "
-"of this command, instead."
+"With --abbrev set to 0, the command can be used to find the closest tagname "
+"without any suffix:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch-pack.txt:27
+#: en/git-describe.txt:167
+#, no-wrap
 msgid ""
-"Invokes 'git-upload-pack' on a possibly remote repository and asks it to "
-"send objects missing from this repository, to update the named heads.  The "
-"list of commits available locally is found out by scanning the local refs/ "
-"hierarchy and sent to 'git-upload-pack' running on the other end."
+"\t[torvalds@g5 git]$ git describe --abbrev=0 v1.0.5^2\n"
+"\ttags/v1.0.0\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch-pack.txt:31
+#: en/git-describe.txt:173
 msgid ""
-"This command degenerates to download everything to complete the asked refs "
-"from the remote side when the local side does not have a common ancestor "
-"commit."
+"Note that the suffix you get if you type these commands today may be longer "
+"than what Linus saw above when he ran these commands, as your Git repository "
+"may have new commits whose object names begin with 975b that did not exist "
+"back then, and \"-g975b\" suffix alone may not be sufficient to disambiguate "
+"these commits."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fetch-pack.txt:37
-msgid "Fetch all remote refs."
+#. type: Title -
+#: en/git-describe.txt:176
+#, no-wrap
+msgid "SEARCH STRATEGY"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch-pack.txt:43 en/git-send-pack.txt:46
+#: en/git-describe.txt:183
 msgid ""
-"Take the list of refs from stdin, one per line. If there are refs specified "
-"on the command line in addition to this option, then the refs from stdin are "
-"processed after those on the command line."
+"For each commit-ish supplied, 'git describe' will first look for a tag which "
+"tags exactly that commit.  Annotated tags will always be preferred over "
+"lightweight tags, and tags with newer dates will always be preferred over "
+"tags with older dates.  If an exact match is found, its name will be output "
+"and searching will stop."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch-pack.txt:47 en/git-send-pack.txt:50
+#: en/git-describe.txt:190
 msgid ""
-"If `--stateless-rpc` is specified together with this option then the list of "
-"refs must be in packet format (pkt-line). Each ref must be in a separate "
-"packet, and the list must end with a flush packet."
+"If an exact match was not found, 'git describe' will walk back through the "
+"commit history to locate an ancestor commit which has been tagged.  The "
+"ancestor's tag will be output along with an abbreviation of the input commit-"
+"ish's SHA-1. If `--first-parent` was specified then the walk will only "
+"consider the first parent of each commit."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch-pack.txt:52
+#: en/git-describe.txt:196
 msgid ""
-"Pass `-q` flag to 'git unpack-objects'; this makes the cloning process less "
-"verbose."
+"If multiple tags were found during the walk then the tag which has the "
+"fewest commits different from the input commit-ish will be selected and "
+"output.  Here fewest commits different is defined as the number of commits "
+"which would be shown by `git log tag..input` will be the smallest number of "
+"commits possible."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch-pack.txt:59
+#: en/git-describe.txt:204
 msgid ""
-"Do not invoke 'git unpack-objects' on received data, but create a single "
-"packfile out of it instead, and store it in the object database. If provided "
-"twice then the pack is locked against repacking."
+"Tree objects as well as tag objects not pointing at commits, cannot be "
+"described.  When describing blobs, the lightweight tags pointing at blobs "
+"are ignored, but the blob is still described as <committ-ish>:<path> despite "
+"the lightweight tag being favorable."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fetch-pack.txt:60 en/git-pack-objects.txt:184 en/git-send-pack.txt:64
+#. type: Title =
+#: en/git-diff-files.txt:2
 #, no-wrap
-msgid "--thin"
+msgid "git-diff-files(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch-pack.txt:63
-msgid ""
-"Fetch a \"thin\" pack, which records objects in deltified form based on "
-"objects not included in the pack to reduce network traffic."
+#: en/git-diff-files.txt:7
+msgid "git-diff-files - Compares files in the working tree and the index"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fetch-pack.txt:64 en/git-pack-objects.txt:81
+#. type: Plain text
+#: en/git-diff-files.txt:13
 #, no-wrap
-msgid "--include-tag"
+msgid "'git diff-files' [-q] [-0|-1|-2|-3|-c|--cc] [<common diff options>] [<path>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch-pack.txt:69
+#: en/git-diff-files.txt:20
 msgid ""
-"If the remote side supports it, annotated tags objects will be downloaded on "
-"the same connection as the other objects if the object the tag references is "
-"downloaded.  The caller must otherwise determine the tags this option made "
-"available."
+"Compares the files in the working tree and the index.  When paths are "
+"specified, compares only those named paths.  Otherwise all entries in the "
+"index are compared.  The output format is the same as for 'git diff-index' "
+"and 'git diff-tree'."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fetch-pack.txt:70
+#: en/git-diff-files.txt:25 en/git-diff.txt:100
 #, no-wrap
-msgid "--upload-pack=<git-upload-pack>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-fetch-pack.txt:81
-msgid ""
-"Use this to specify the path to 'git-upload-pack' on the remote side, if is "
-"not found on your $PATH.  Installations of sshd ignores the user's "
-"environment setup scripts for login shells (e.g. .bash_profile) and your "
-"privately installed git may not be found on the system default $PATH.  "
-"Another workaround suggested is to set up your $PATH in \".bashrc\", but "
-"this flag is for people who do not want to pay the overhead for "
-"non-interactive shells by having a lean .bashrc file (they set most of the "
-"things up in .bash_profile)."
+msgid "-1 --base"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fetch-pack.txt:82
+#: en/git-diff-files.txt:26 en/git-diff.txt:101
 #, no-wrap
-msgid "--exec=<git-upload-pack>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-fetch-pack.txt:84
-msgid "Same as --upload-pack=<git-upload-pack>."
+msgid "-2 --ours"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fetch-pack.txt:89
-msgid ""
-"Limit fetching to ancestor-chains not longer than n.  'git-upload-pack' "
-"treats the special depth 2147483647 as infinite even if there is an "
-"ancestor-chain that long."
+#. type: Labeled list
+#: en/git-diff-files.txt:27 en/git-diff.txt:102
+#, no-wrap
+msgid "-3 --theirs"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch-pack.txt:93
+#: en/git-diff-files.txt:32
 msgid ""
-"Deepen or shorten the history of a shallow'repository to include all "
-"reachable commits after <date>."
+"Diff against the \"base\" version, \"our branch\" or \"their branch\" "
+"respectively.  With these options, diffs for merged entries are not shown."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch-pack.txt:98 en/fetch-options.txt:30
+#: en/git-diff-files.txt:36
 msgid ""
-"Deepen or shorten the history of a shallow repository to exclude commits "
-"reachable from a specified remote branch or tag.  This option can be "
-"specified multiple times."
+"The default is to diff against our branch (-2) and the cleanly resolved "
+"paths.  The option -0 can be given to omit diff output for unmerged entries "
+"and just show \"Unmerged\"."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fetch-pack.txt:99
+#: en/git-diff-files.txt:38 en/git-diff-tree.txt:98 en/rev-list-options.txt:957
 #, no-wrap
-msgid "--deepen-relative"
+msgid "--cc"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch-pack.txt:103
+#: en/git-diff-files.txt:43
 msgid ""
-"Argument --depth specifies the number of commits from the current shallow "
-"boundary instead of from the tip of each remote branch history."
+"This compares stage 2 (our branch), stage 3 (their branch) and the working "
+"tree file and outputs a combined diff, similar to the way 'diff-tree' shows "
+"a merge commit with these flags."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fetch-pack.txt:104 en/merge-options.txt:113
+#. type: Plain text
+#: en/git-diff-files.txt:46
+msgid "Remain silent even on nonexistent files"
+msgstr ""
+
+#. type: Title =
+#: en/git-diff-index.txt:2
 #, no-wrap
-msgid "--no-progress"
+msgid "git-diff-index(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch-pack.txt:106
-msgid "Do not show the progress."
+#: en/git-diff-index.txt:7
+msgid "git-diff-index - Compare a tree to the working tree or index"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fetch-pack.txt:107 en/git-index-pack.txt:77
+#. type: Plain text
+#: en/git-diff-index.txt:13
 #, no-wrap
-msgid "--check-self-contained-and-connected"
+msgid "'git diff-index' [-m] [--cached] [<common diff options>] <tree-ish> [<path>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch-pack.txt:110
+#: en/git-diff-index.txt:21
 msgid ""
-"Output \"connectivity-ok\" if the received pack is self-contained and "
-"connected."
+"Compares the content and mode of the blobs found in a tree object with the "
+"corresponding tracked files in the working tree, or with the corresponding "
+"paths in the index.  When <path> arguments are present, compares only paths "
+"matching those patterns.  Otherwise all tracked files are compared."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch-pack.txt:113 en/git-push.txt:267 en/git-send-pack.txt:63
-msgid "Run verbosely."
+#: en/git-diff-index.txt:28
+msgid "The id of a tree object to diff against."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch-pack.txt:116
-msgid "The URL to the remote repository."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-fetch-pack.txt:117 en/git-ls-remote.txt:68
-#, no-wrap
-msgid "<refs>..."
+#: en/git-diff-index.txt:31
+msgid "do not consider the on-disk file at all"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch-pack.txt:121
+#: en/git-diff-index.txt:37
 msgid ""
-"The remote heads to update from. This is relative to $GIT_DIR "
-"(e.g. \"HEAD\", \"refs/heads/master\").  When unspecified, update from all "
-"heads the remote side has."
+"By default, files recorded in the index but not checked out are reported as "
+"deleted.  This flag makes 'git diff-index' say that all non-checked-out "
+"files are up to date."
+msgstr ""
+
+#. type: Title -
+#: en/git-diff-index.txt:41
+#, no-wrap
+msgid "OPERATING MODES"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch-pack.txt:125
+#: en/git-diff-index.txt:46
 msgid ""
-"If the remote has enabled the options `uploadpack.allowTipSHA1InWant`, "
-"`uploadpack.allowReachableSHA1InWant`, or `uploadpack.allowAnySHA1InWant`, "
-"they may alternatively be 40-hex sha1s present on the remote."
+"You can choose whether you want to trust the index file entirely (using the "
+"`--cached` flag) or ask the diff logic to show any files that don't match "
+"the stat state as being \"tentatively changed\".  Both of these operations "
+"are very useful indeed."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fetch-pack.txt:129 en/cmds-mainporcelain.txt:43
+#. type: Title -
+#: en/git-diff-index.txt:48
 #, no-wrap
-msgid "linkgit:git-fetch[1]"
+msgid "CACHED MODE"
 msgstr ""
 
-#. type: Title =
-#: en/git-fetch.txt:2
+#. type: Plain text
+#: en/git-diff-index.txt:50
+msgid "If `--cached` is specified, it allows you to ask:"
+msgstr ""
+
+#. type: Plain text
+#: en/git-diff-index.txt:53
 #, no-wrap
-msgid "git-fetch(1)"
+msgid ""
+"\tshow me the differences between HEAD and the current index\n"
+"\tcontents (the ones I'd write using 'git write-tree')\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:7
-msgid "git-fetch - Download objects and refs from another repository"
+#: en/git-diff-index.txt:58
+msgid ""
+"For example, let's say that you have worked on your working directory, "
+"updated some files in the index and are ready to commit. You want to see "
+"exactly *what* you are going to commit, without having to write a new tree "
+"object and compare it that way, and to do that, you just do"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:16
+#: en/git-diff-index.txt:60
 #, no-wrap
-msgid ""
-"'git fetch' [<options>] [<repository> [<refspec>...]]\n"
-"'git fetch' [<options>] <group>\n"
-"'git fetch' --multiple [<options>] [(<repository> | <group>)...]\n"
-"'git fetch' --all [<options>]\n"
+msgid "\tgit diff-index --cached HEAD\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:24
+#: en/git-diff-index.txt:65
 msgid ""
-"Fetch branches and/or tags (collectively, \"refs\") from one or more other "
-"repositories, along with the objects necessary to complete their histories.  "
-"Remote-tracking branches are updated (see the description of <refspec> below "
-"for ways to control this behavior)."
+"Example: let's say I had renamed `commit.c` to `git-commit.c`, and I had "
+"done an `update-index` to make that effective in the index file.  `git diff-"
+"files` wouldn't show anything at all, since the index file matches my "
+"working directory. But doing a 'git diff-index' does:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:32
+#: en/git-diff-index.txt:69
+#, no-wrap
 msgid ""
-"By default, any tag that points into the histories being fetched is also "
-"fetched; the effect is to fetch tags that point at branches that you are "
-"interested in.  This default behavior can be changed by using the --tags or "
-"--no-tags options or by configuring remote.<name>.tagOpt.  By using a "
-"refspec that fetches tags explicitly, you can fetch tags that do not point "
-"into branches you are interested in as well."
+"  torvalds@ppc970:~/git> git diff-index --cached HEAD\n"
+"  -100644 blob    4161aecc6700a2eb579e842af0b7f22b98443f74        commit.c\n"
+"  +100644 blob    4161aecc6700a2eb579e842af0b7f22b98443f74        git-commit.c\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:37
-msgid ""
-"'git fetch' can fetch from either a single named repository or URL, or from "
-"several repositories at once if <group> is given and there is a "
-"remotes.<group> entry in the configuration file.  (See "
-"linkgit:git-config[1])."
+#: en/git-diff-index.txt:71
+msgid "You can see easily that the above is a rename."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:40
+#: en/git-diff-index.txt:75
 msgid ""
-"When no remote is specified, by default the `origin` remote will be used, "
-"unless there's an upstream branch configured for the current branch."
+"In fact, `git diff-index --cached` *should* always be entirely equivalent to "
+"actually doing a 'git write-tree' and comparing that. Except this one is "
+"much nicer for the case where you just want to check where you are."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:44
+#: en/git-diff-index.txt:79
 msgid ""
-"The names of refs that are fetched, together with the object names they "
-"point at, are written to `.git/FETCH_HEAD`.  This information may be used by "
-"scripts or other git commands, such as linkgit:git-pull[1]."
+"So doing a `git diff-index --cached` is basically very useful when you are "
+"asking yourself \"what have I already marked for being committed, and what's "
+"the difference to a previous tree\"."
 msgstr ""
 
 #. type: Title -
-#: en/git-fetch.txt:55
+#: en/git-diff-index.txt:81
 #, no-wrap
-msgid "CONFIGURED REMOTE-TRACKING BRANCHES[[CRTB]]"
+msgid "NON-CACHED MODE"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:61
+#: en/git-diff-index.txt:86
 msgid ""
-"You often interact with the same remote repository by regularly and "
-"repeatedly fetching from it.  In order to keep track of the progress of such "
-"a remote repository, `git fetch` allows you to configure "
-"`remote.<repository>.fetch` configuration variables."
+"The \"non-cached\" mode takes a different approach, and is potentially the "
+"more useful of the two in that what it does can't be emulated with a 'git "
+"write-tree' + 'git diff-tree'. Thus that's the default mode.  The non-cached "
+"version asks the question:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:63
-msgid "Typically such a variable may look like this:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-fetch.txt:67
+#: en/git-diff-index.txt:89
 #, no-wrap
 msgid ""
-"[remote \"origin\"]\n"
-"\tfetch = +refs/heads/*:refs/remotes/origin/*\n"
+"  show me the differences between HEAD and the currently checked out\n"
+"  tree - index contents _and_ files that aren't up to date\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:70
-msgid "This configuration is used in two ways:"
+#: en/git-diff-index.txt:93
+msgid ""
+"which is obviously a very useful question too, since that tells you what you "
+"*could* commit. Again, the output matches the 'git diff-tree -r' output to a "
+"tee, but with a twist."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:80
+#: en/git-diff-index.txt:99
 msgid ""
-"When `git fetch` is run without specifying what branches and/or tags to "
-"fetch on the command line, e.g. `git fetch origin` or `git fetch`, "
-"`remote.<repository>.fetch` values are used as the refspecs--they specify "
-"which refs to fetch and which local refs to update.  The example above will "
-"fetch all branches that exist in the `origin` (i.e. any ref that matches the "
-"left-hand side of the value, `refs/heads/*`) and update the corresponding "
-"remote-tracking branches in the `refs/remotes/origin/*` hierarchy."
+"The twist is that if some file doesn't match the index, we don't have a "
+"backing store thing for it, and we use the magic \"all-zero\" sha1 to show "
+"that. So let's say that you have edited `kernel/sched.c`, but have not "
+"actually done a 'git update-index' on it yet - there is no \"object\" "
+"associated with the new state, and you get:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:97
+#: en/git-diff-index.txt:102
+#, no-wrap
 msgid ""
-"When `git fetch` is run with explicit branches and/or tags to fetch on the "
-"command line, e.g. `git fetch origin master`, the <refspec>s given on the "
-"command line determine what are to be fetched (e.g. `master` in the example, "
-"which is a short-hand for `master:`, which in turn means \"fetch the "
-"'master' branch but I do not explicitly say what remote-tracking branch to "
-"update with it from the command line\"), and the example command will fetch "
-"_only_ the 'master' branch.  The `remote.<repository>.fetch` values "
-"determine which remote-tracking branch, if any, is updated.  When used in "
-"this way, the `remote.<repository>.fetch` values do not have any effect in "
-"deciding _what_ gets fetched (i.e. the values are not used as refspecs when "
-"the command-line lists refspecs); they are only used to decide _where_ the "
-"refs that are fetched are stored by acting as a mapping."
+"  torvalds@ppc970:~/v2.6/linux> git diff-index --abbrev HEAD\n"
+"  :100644 100664 7476bb... 000000...      kernel/sched.c\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:101
+#: en/git-diff-index.txt:107
 msgid ""
-"The latter use of the `remote.<repository>.fetch` values can be overridden "
-"by giving the `--refmap=<refspec>` parameter(s) on the command line."
+"i.e., it shows that the tree has changed, and that `kernel/sched.c` is not "
+"up to date and may contain new stuff. The all-zero sha1 means that to get "
+"the real diff, you need to look at the object in the working directory "
+"directly rather than do an object-to-object diff."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:108
+#: en/git-diff-index.txt:113
 msgid ""
-"The output of \"git fetch\" depends on the transport method used; this "
-"section describes the output when fetching over the Git protocol (either "
-"locally or via ssh) and Smart HTTP protocol."
+"As with other commands of this type, 'git diff-index' does not actually look "
+"at the contents of the file at all. So maybe `kernel/sched.c` hasn't "
+"actually changed, and it's just that you touched it. In either case, it's a "
+"note that you need to 'git update-index' it to make the index be in sync."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:111
+#: en/git-diff-index.txt:119
 msgid ""
-"The status of the fetch is output in tabular form, with each line "
-"representing the status of a single ref. Each line is of the form:"
+"You can have a mixture of files show up as \"has been updated\" and \"is "
+"still dirty in the working directory\" together. You can always tell which "
+"file is in which state, since the \"has been updated\" ones show a valid "
+"sha1, and the \"not in sync with the index\" ones will always have the "
+"special all-zero sha1."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-fetch.txt:114
+#. type: Title =
+#: en/git-difftool.txt:2
 #, no-wrap
-msgid " <flag> <summary> <from> -> <to> [<reason>]\n"
+msgid "git-difftool(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:118
-msgid "The status of up-to-date refs is shown only if the --verbose option is used."
+#: en/git-difftool.txt:7
+msgid "git-difftool - Show changes using common diff tools"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:123
-msgid ""
-"In compact output mode, specified with configuration variable fetch.output, "
-"if either entire `<from>` or `<to>` is found in the other string, it will be "
-"substituted with `*` in the other string. For example, `master -> "
-"origin/master` becomes `master -> origin/*`."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-fetch.txt:124 en/git-push.txt:328
+#: en/git-difftool.txt:12
 #, no-wrap
-msgid "flag"
+msgid "'git difftool' [<options>] [<commit> [<commit>]] [--] [<path>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:126 en/git-push.txt:330
-msgid "A single character indicating the status of the ref:"
+#: en/git-difftool.txt:19
+msgid ""
+"'git difftool' is a Git command that allows you to compare and edit files "
+"between revisions using common diff tools.  'git difftool' is a frontend to "
+"'git diff' and accepts the same options and arguments. See linkgit:git-"
+"diff[1]."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fetch.txt:126 en/git-push.txt:330
+#: en/git-difftool.txt:23
 #, no-wrap
-msgid "(space)"
+msgid "--dir-diff"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:127
-msgid "for a successfully fetched fast-forward;"
+#: en/git-difftool.txt:27
+msgid ""
+"Copy the modified files to a temporary location and perform a directory diff "
+"on them. This mode never prompts before launching the diff tool."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fetch.txt:127 en/git-push.txt:331
+#: en/git-difftool.txt:28 en/git-mergetool.txt:70
 #, no-wrap
-msgid "`+`"
-msgstr ""
-
-#. type: Plain text
-#: en/git-fetch.txt:128 en/git-push.txt:332
-msgid "for a successful forced update;"
+msgid "-y"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fetch.txt:128 en/git-push.txt:332
+#: en/git-difftool.txt:29 en/git-mergetool.txt:71
 #, no-wrap
-msgid "`-`"
+msgid "--no-prompt"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:129
-msgid "for a successfully pruned ref;"
+#: en/git-difftool.txt:31
+msgid "Do not prompt before launching a diff tool."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fetch.txt:129
+#: en/git-difftool.txt:32 en/git-mergetool.txt:78
 #, no-wrap
-msgid "`t`"
+msgid "--prompt"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:130
-msgid "for a successful tag update;"
+#: en/git-difftool.txt:36
+msgid ""
+"Prompt before each invocation of the diff tool.  This is the default "
+"behaviour; the option is provided to override any configuration settings."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fetch.txt:130 en/git-push.txt:333
+#: en/git-difftool.txt:37 en/git-mergetool.txt:27
 #, no-wrap
-msgid "`*`"
-msgstr ""
-
-#. type: Plain text
-#: en/git-fetch.txt:131
-msgid "for a successfully fetched new ref;"
+msgid "-t <tool>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fetch.txt:131 en/git-push.txt:334
+#: en/git-difftool.txt:38 en/git-mergetool.txt:28
 #, no-wrap
-msgid "`!`"
+msgid "--tool=<tool>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:132
-msgid "for a ref that was rejected or failed to update; and"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-fetch.txt:132 en/git-push.txt:335
-#, no-wrap
-msgid "`=`"
+#: en/git-difftool.txt:42
+msgid ""
+"Use the diff tool specified by <tool>.  Valid values include emerge, "
+"kompare, meld, and vimdiff. Run `git difftool --tool-help` for the list of "
+"valid <tool> settings."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:133
-msgid "for a ref that was up to date and did not need fetching."
+#: en/git-difftool.txt:47
+msgid ""
+"If a diff tool is not specified, 'git difftool' will use the configuration "
+"variable `diff.tool`.  If the configuration variable `diff.tool` is not set, "
+"'git difftool' will pick a suitable default."
+msgstr ""
+
+#. type: Plain text
+#: en/git-difftool.txt:53
+msgid ""
+"You can explicitly provide a full path to the tool by setting the "
+"configuration variable `difftool.<tool>.path`. For example, you can "
+"configure the absolute path to kdiff3 by setting `difftool.kdiff3.path`. "
+"Otherwise, 'git difftool' assumes the tool is available in PATH."
+msgstr ""
+
+#. type: Plain text
+#: en/git-difftool.txt:58
+msgid ""
+"Instead of running one of the known diff tools, 'git difftool' can be "
+"customized to run an alternative program by specifying the command line to "
+"invoke in a configuration variable `difftool.<tool>.cmd`."
+msgstr ""
+
+#. type: Plain text
+#: en/git-difftool.txt:68
+msgid ""
+"When 'git difftool' is invoked with this tool (either through the `-t` or `--"
+"tool` option or the `diff.tool` configuration variable)  the configured "
+"command line will be invoked with the following variables available: `"
+"$LOCAL` is set to the name of the temporary file containing the contents of "
+"the diff pre-image and `$REMOTE` is set to the name of the temporary file "
+"containing the contents of the diff post-image.  `$MERGED` is the name of "
+"the file which is being compared. `$BASE` is provided for compatibility with "
+"custom merge tool commands and has the same value as `$MERGED`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fetch.txt:134 en/git-push.txt:337
+#: en/git-difftool.txt:69 en/git-mergetool.txt:67
 #, no-wrap
-msgid "summary"
+msgid "--tool-help"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:139
-msgid ""
-"For a successfully fetched ref, the summary shows the old and new values of "
-"the ref in a form suitable for using as an argument to `git log` (this is "
-"`<old>..<new>` in most cases, and `<old>...<new>` for forced "
-"non-fast-forward updates)."
+#: en/git-difftool.txt:71
+msgid "Print a list of diff tools that may be used with `--tool`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fetch.txt:140 en/git-push.txt:365
+#: en/git-difftool.txt:72
 #, no-wrap
-msgid "from"
+msgid "--[no-]symlinks"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:144
+#: en/git-difftool.txt:77
 msgid ""
-"The name of the remote ref being fetched from, minus its `refs/<type>/` "
-"prefix. In the case of deletion, the name of the remote ref is \"(none)\"."
+"'git difftool''s default behavior is create symlinks to the working tree "
+"when run in `--dir-diff` mode and the right-hand side of the comparison "
+"yields the same content as the file in the working tree."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:145 en/git-push.txt:370 en/git-rebase.txt:790
-#, no-wrap
-msgid "to"
+#: en/git-difftool.txt:80
+msgid ""
+"Specifying `--no-symlinks` instructs 'git difftool' to create copies "
+"instead.  `--no-symlinks` is the default on Windows."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fetch.txt:148
-msgid "The name of the local ref being updated, minus its `refs/<type>/` prefix."
+#. type: Labeled list
+#: en/git-difftool.txt:81
+#, no-wrap
+msgid "-x <command>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fetch.txt:149 en/git-push.txt:374
+#: en/git-difftool.txt:82
 #, no-wrap
-msgid "reason"
+msgid "--extcmd=<command>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:153
+#: en/git-difftool.txt:87
 msgid ""
-"A human-readable explanation. In the case of successfully fetched refs, no "
-"explanation is needed. For a failed ref, the reason for failure is "
-"described."
+"Specify a custom command for viewing diffs.  'git-difftool' ignores the "
+"configured defaults and runs `$command $LOCAL $REMOTE` when this option is "
+"specified.  Additionally, `$BASE` is set in the environment."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-difftool.txt:88 en/git-help.txt:59 en/git-mergetool.txt:82
+#: en/git-show-branch.txt:111 en/git-update-index.txt:122
+#: en/rev-list-options.txt:256
+#, no-wrap
+msgid "-g"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-difftool.txt:89
+#, no-wrap
+msgid "--[no-]gui"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:158
-msgid "Update the remote-tracking branches:"
+#: en/git-difftool.txt:94
+msgid ""
+"When 'git-difftool' is invoked with the `-g` or `--gui` option the default "
+"diff tool will be read from the configured `diff.guitool` variable instead "
+"of `diff.tool`. The `--no-gui` option can be used to override this setting."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-fetch.txt:161
+#. type: Labeled list
+#: en/git-difftool.txt:95
 #, no-wrap
-msgid "$ git fetch origin\n"
+msgid "--[no-]trust-exit-code"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:167
+#: en/git-difftool.txt:100
 msgid ""
-"The above command copies all branches from the remote refs/heads/ namespace "
-"and stores them to the local refs/remotes/origin/ namespace, unless the "
-"branch.<name>.fetch option is used to specify a non-default refspec."
+"'git-difftool' invokes a diff tool individually on each file.  Errors "
+"reported by the diff tool are ignored by default.  Use `--trust-exit-code` "
+"to make 'git-difftool' exit when an invoked diff tool returns a non-zero "
+"exit code."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:169
-msgid "Using refspecs explicitly:"
+#: en/git-difftool.txt:103
+msgid ""
+"'git-difftool' will forward the exit code of the invoked tool when `--trust-"
+"exit-code` is used."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-fetch.txt:172
+#. type: Plain text
+#: en/git-difftool.txt:105
+msgid "See linkgit:git-diff[1] for the full list of supported options."
+msgstr ""
+
+#. type: Title -
+#: en/git-difftool.txt:107
 #, no-wrap
-msgid "$ git fetch origin +pu:pu maint:tmp\n"
+msgid "CONFIG VARIABLES"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:177
+#: en/git-difftool.txt:110
 msgid ""
-"This updates (or creates, as necessary) branches `pu` and `tmp` in the local "
-"repository by fetching from the branches (respectively)  `pu` and `maint` "
-"from the remote repository."
+"'git difftool' falls back to 'git mergetool' config variables when the "
+"difftool equivalents have not been defined."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fetch.txt:180
-msgid ""
-"The `pu` branch will be updated even if it is does not fast-forward, because "
-"it is prefixed with a plus sign; `tmp` will not be."
+#. type: Labeled list
+#: en/git-difftool.txt:111
+#, no-wrap
+msgid "diff.tool"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:183
-msgid ""
-"Peek at a remote's branch, without configuring the remote in your local "
-"repository:"
+#: en/git-difftool.txt:113
+msgid "The default diff tool to use."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-fetch.txt:187
+#. type: Labeled list
+#: en/git-difftool.txt:114
 #, no-wrap
-msgid ""
-"$ git fetch git://git.kernel.org/pub/scm/git/git.git maint\n"
-"$ git log FETCH_HEAD\n"
+msgid "diff.guitool"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:194
-msgid ""
-"The first command fetches the `maint` branch from the repository at "
-"`git://git.kernel.org/pub/scm/git/git.git` and the second command uses "
-"`FETCH_HEAD` to examine the branch with linkgit:git-log[1].  The fetched "
-"objects will eventually be removed by git's built-in housekeeping (see "
-"linkgit:git-gc[1])."
+#: en/git-difftool.txt:116
+msgid "The default diff tool to use when `--gui` is specified."
 msgstr ""
 
-#. type: Title -
-#: en/git-fetch.txt:198 en/git-mv.txt:56 en/git-pack-refs.txt:64 en/git-pull.txt:243 en/git-rebase.txt:779 en/git-replace.txt:134 en/git-rm.txt:174 en/git-svn.txt:1026 en/git-worktree.txt:245
+#. type: Labeled list
+#: en/git-difftool.txt:117
 #, no-wrap
-msgid "BUGS"
+msgid "difftool.<tool>.path"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fetch.txt:205 en/git-pull.txt:250
+#: en/git-difftool.txt:120
 msgid ""
-"Using --recurse-submodules can only fetch new commits in already checked out "
-"submodules right now. When e.g. upstream added a new submodule in the just "
-"fetched commits of the superproject the submodule itself can not be fetched, "
-"making it impossible to check out that submodule later without having to do "
-"a fetch again. This is expected to be fixed in a future Git version."
+"Override the path for the given tool.  This is useful in case your tool is "
+"not in the PATH."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fetch.txt:209 en/cmds-mainporcelain.txt:73
+#: en/git-difftool.txt:121
 #, no-wrap
-msgid "linkgit:git-pull[1]"
+msgid "difftool.<tool>.cmd"
 msgstr ""
 
-#. type: Title =
-#: en/git-filter-branch.txt:2
-#, no-wrap
-msgid "git-filter-branch(1)"
+#. type: Plain text
+#: en/git-difftool.txt:123
+msgid "Specify the command to invoke the specified diff tool."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:7
-msgid "git-filter-branch - Rewrite branches"
+#: en/git-difftool.txt:125
+msgid "See the `--tool=<tool>` option above for more details."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-difftool.txt:126
+#, no-wrap
+msgid "difftool.prompt"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:18
+#: en/git-difftool.txt:128
+msgid "Prompt before each invocation of the diff tool."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-difftool.txt:129
 #, no-wrap
-msgid ""
-"'git filter-branch' [--env-filter <command>] [--tree-filter <command>]\n"
-"\t[--index-filter <command>] [--parent-filter <command>]\n"
-"\t[--msg-filter <command>] [--commit-filter <command>]\n"
-"\t[--tag-name-filter <command>] [--subdirectory-filter <directory>]\n"
-"\t[--prune-empty]\n"
-"\t[--original <namespace>] [-d <directory>] [-f | --force]\n"
-"\t[--] [<rev-list options>...]\n"
+msgid "difftool.trustExitCode"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:27
-msgid ""
-"Lets you rewrite Git revision history by rewriting the branches mentioned in "
-"the <rev-list options>, applying custom filters on each revision.  Those "
-"filters can modify each tree (e.g. removing a file or running a perl rewrite "
-"on all files) or information about each commit.  Otherwise, all information "
-"(including original commit times or merge information) will be preserved."
+#: en/git-difftool.txt:131
+msgid "Exit difftool if the invoked diff tool returns a non-zero exit status."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:34
-msgid ""
-"The command will only rewrite the _positive_ refs mentioned in the command "
-"line (e.g. if you pass 'a..b', only 'b' will be rewritten).  If you specify "
-"no filters, the commits will be recommitted without any changes, which would "
-"normally have no effect.  Nevertheless, this may be useful in the future for "
-"compensating for some Git bugs or such, therefore such a usage is permitted."
+#: en/git-difftool.txt:133
+msgid "See the `--trust-exit-code` option above for more details."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:39
-#, no-wrap
-msgid ""
-"*NOTE*: This command honors `.git/info/grafts` file and refs in\n"
-"the `refs/replace/` namespace.\n"
-"If you have any grafts or replacement refs defined, running this command\n"
-"will make them permanent.\n"
+#: en/git-difftool.txt:138
+msgid "Show changes between commits, commit and working tree, etc"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:48
+#: en/git-difftool.txt:141
+msgid "Run merge conflict resolution tools to resolve merge conflicts"
+msgstr ""
+
+#. type: Plain text
+#: en/git-difftool.txt:144
+msgid "Get and set repository or global options"
+msgstr ""
+
+#. type: Title =
+#: en/git-diff-tree.txt:2
 #, no-wrap
-msgid ""
-"*WARNING*! The rewritten history will have different object names for all\n"
-"the objects and will not converge with the original branch.  You will not\n"
-"be able to easily push and distribute the rewritten branch on top of the\n"
-"original branch.  Please do not use this command if you do not know the\n"
-"full implications, and avoid using it anyway, if a simple single commit\n"
-"would suffice to fix your problem.  (See the \"RECOVERING FROM UPSTREAM\n"
-"REBASE\" section in linkgit:git-rebase[1] for further information about\n"
-"rewriting published history.)\n"
+msgid "git-diff-tree(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:52
+#: en/git-diff-tree.txt:7
 msgid ""
-"Always verify that the rewritten version is correct: The original refs, if "
-"different from the rewritten ones, will be stored in the namespace "
-"'refs/original/'."
+"git-diff-tree - Compares the content and mode of blobs found via two tree "
+"objects"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:56
+#: en/git-diff-tree.txt:15
+#, no-wrap
 msgid ""
-"Note that since this operation is very I/O expensive, it might be a good "
-"idea to redirect the temporary directory off-disk with the `-d` option, "
-"e.g. on tmpfs.  Reportedly the speedup is very noticeable."
+"'git diff-tree' [--stdin] [-m] [-s] [-v] [--no-commit-id] [--pretty]\n"
+"\t      [-t] [-r] [-c | --cc] [--root] [<common diff options>]\n"
+"\t      <tree-ish> [<tree-ish>] [<path>...]\n"
 msgstr ""
 
-#. type: Title ~
-#: en/git-filter-branch.txt:59
-#, no-wrap
-msgid "Filters"
+#. type: Plain text
+#: en/git-diff-tree.txt:19
+msgid "Compares the content and mode of the blobs found via two tree objects."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:71
+#: en/git-diff-tree.txt:22
 msgid ""
-"The filters are applied in the order as listed below.  The <command> "
-"argument is always evaluated in the shell context using the 'eval' command "
-"(with the notable exception of the commit filter, for technical reasons).  "
-"Prior to that, the `$GIT_COMMIT` environment variable will be set to contain "
-"the id of the commit being rewritten.  Also, GIT_AUTHOR_NAME, "
-"GIT_AUTHOR_EMAIL, GIT_AUTHOR_DATE, GIT_COMMITTER_NAME, GIT_COMMITTER_EMAIL, "
-"and GIT_COMMITTER_DATE are taken from the current commit and exported to the "
-"environment, in order to affect the author and committer identities of the "
-"replacement commit created by linkgit:git-commit-tree[1] after the filters "
-"have run."
+"If there is only one <tree-ish> given, the commit is compared with its "
+"parents (see --stdin below)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:74
+#: en/git-diff-tree.txt:24
 msgid ""
-"If any evaluation of <command> returns a non-zero exit status, the whole "
-"operation will be aborted."
+"Note that 'git diff-tree' can use the tree encapsulated in a commit object."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:80
-msgid ""
-"A 'map' function is available that takes an \"original sha1 id\" argument "
-"and outputs a \"rewritten sha1 id\" if the commit has been already "
-"rewritten, and \"original sha1 id\" otherwise; the 'map' function can return "
-"several ids on separate lines if your commit filter emitted multiple "
-"commits."
+#: en/git-diff-tree.txt:31
+msgid "The id of a tree object."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-filter-branch.txt:85
+#: en/git-diff-tree.txt:32 en/git-diff.txt:114 en/git-submodule.txt:410
 #, no-wrap
-msgid "--env-filter <command>"
+msgid "<path>..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:91
+#: en/git-diff-tree.txt:35
 msgid ""
-"This filter may be used if you only need to modify the environment in which "
-"the commit will be performed.  Specifically, you might want to rewrite the "
-"author/committer name/email/time environment variables (see "
-"linkgit:git-commit-tree[1] for details).  Do not forget to re-export the "
-"variables."
+"If provided, the results are limited to a subset of files matching one of "
+"the provided pathspecs."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-filter-branch.txt:92
-#, no-wrap
-msgid "--tree-filter <command>"
+#. type: Plain text
+#: en/git-diff-tree.txt:38
+msgid "recurse into sub-trees"
+msgstr ""
+
+#. type: Plain text
+#: en/git-diff-tree.txt:41
+msgid "show tree entry itself as well as subtrees.  Implies -r."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:99
+#: en/git-diff-tree.txt:45
 msgid ""
-"This is the filter for rewriting the tree and its contents.  The argument is "
-"evaluated in shell with the working directory set to the root of the checked "
-"out tree.  The new tree is then used as-is (new files are auto-added, "
-"disappeared files are auto-removed - neither .gitignore files nor any other "
-"ignore rules *HAVE ANY EFFECT*!)."
+"When `--root` is specified the initial commit will be shown as a big "
+"creation event. This is equivalent to a diff against the NULL tree."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-filter-branch.txt:100
-#, no-wrap
-msgid "--index-filter <command>"
+#. type: Plain text
+#: en/git-diff-tree.txt:52
+msgid ""
+"When `--stdin` is specified, the command does not take <tree-ish> arguments "
+"from the command line.  Instead, it reads lines containing either two "
+"<tree>, one <commit>, or a list of <commit> from its standard input.  (Use a "
+"single space as separator.)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:106
+#: en/git-diff-tree.txt:57
 msgid ""
-"This is the filter for rewriting the index.  It is similar to the tree "
-"filter but does not check out the tree, which makes it much faster.  "
-"Frequently used with `git rm --cached --ignore-unmatch ...`, see EXAMPLES "
-"below.  For hairy cases, see linkgit:git-update-index[1]."
+"When two trees are given, it compares the first tree with the second.  When "
+"a single commit is given, it compares the commit with its parents.  The "
+"remaining commits, when given, are used as if they are parents of the first "
+"commit."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-filter-branch.txt:107
-#, no-wrap
-msgid "--parent-filter <command>"
+#. type: Plain text
+#: en/git-diff-tree.txt:62
+msgid ""
+"When comparing two trees, the ID of both trees (separated by a space and "
+"terminated by a newline) is printed before the difference.  When comparing "
+"commits, the ID of the first (or only) commit, followed by a newline, is "
+"printed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:114
+#: en/git-diff-tree.txt:65
 msgid ""
-"This is the filter for rewriting the commit's parent list.  It will receive "
-"the parent string on stdin and shall output the new parent string on "
-"stdout.  The parent string is in the format described in "
-"linkgit:git-commit-tree[1]: empty for the initial commit, \"-p parent\" for "
-"a normal commit and \"-p parent1 -p parent2 -p parent3 ...\" for a merge "
-"commit."
+"The following flags further affect the behavior when comparing commits (but "
+"not trees)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-filter-branch.txt:115
-#, no-wrap
-msgid "--msg-filter <command>"
+#. type: Plain text
+#: en/git-diff-tree.txt:71
+msgid ""
+"By default, 'git diff-tree --stdin' does not show differences for merge "
+"commits.  With this flag, it shows differences to that commit from all of "
+"its parents. See also `-c`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:120
+#: en/git-diff-tree.txt:77
 msgid ""
-"This is the filter for rewriting the commit messages.  The argument is "
-"evaluated in the shell with the original commit message on standard input; "
-"its standard output is used as the new commit message."
+"By default, 'git diff-tree --stdin' shows differences, either in machine-"
+"readable form (without `-p`) or in patch form (with `-p`).  This output can "
+"be suppressed.  It is only useful with `-v` flag."
+msgstr ""
+
+#. type: Plain text
+#: en/git-diff-tree.txt:81
+msgid ""
+"This flag causes 'git diff-tree --stdin' to also show the commit message "
+"before the differences."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-filter-branch.txt:121
+#: en/git-diff-tree.txt:84
 #, no-wrap
-msgid "--commit-filter <command>"
+msgid "--no-commit-id"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:127
+#: en/git-diff-tree.txt:87
 msgid ""
-"This is the filter for performing the commit.  If this filter is specified, "
-"it will be called instead of the 'git commit-tree' command, with arguments "
-"of the form \"<TREE_ID> [(-p <PARENT_COMMIT_ID>)...]\" and the log message "
-"on stdin.  The commit id is expected on stdout."
+"'git diff-tree' outputs a line with the commit ID when applicable.  This "
+"flag suppressed the commit ID output."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:131
+#: en/git-diff-tree.txt:97
 msgid ""
-"As a special extension, the commit filter may emit multiple commit ids; in "
-"that case, the rewritten children of the original commit will have all of "
-"them as parents."
+"This flag changes the way a merge commit is displayed (which means it is "
+"useful only when the command is given one <tree-ish>, or `--stdin`).  It "
+"shows the differences from each of the parents to the merge result "
+"simultaneously instead of showing pairwise diff between a parent and the "
+"result one at a time (which is what the `-m` option does).  Furthermore, it "
+"lists only files which were modified from all parents."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:136
+#: en/git-diff-tree.txt:107
 msgid ""
-"You can use the 'map' convenience function in this filter, and other "
-"convenience functions, too.  For example, calling 'skip_commit \"$@\"' will "
-"leave out the current commit (but not its changes! If you want that, use "
-"'git rebase' instead)."
+"This flag changes the way a merge commit patch is displayed, in a similar "
+"way to the `-c` option. It implies the `-c` and `-p` options and further "
+"compresses the patch output by omitting uninteresting hunks whose the "
+"contents in the parents have only two variants and the merge result picks "
+"one of them without modification.  When all hunks are uninteresting, the "
+"commit itself and the commit log message is not shown, just like in any "
+"other \"empty diff\" case."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:140
+#: en/git-diff-tree.txt:111
 msgid ""
-"You can also use the `git_commit_non_empty_tree \"$@\"` instead of `git "
-"commit-tree \"$@\"` if you don't wish to keep commits with a single parent "
-"and that makes no change to the tree."
+"Show the commit itself and the commit log message even if the diff itself is "
+"empty."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-filter-branch.txt:141
+#. type: Title =
+#: en/git-diff.txt:2
 #, no-wrap
-msgid "--tag-name-filter <command>"
+msgid "git-diff(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:147
-msgid ""
-"This is the filter for rewriting tag names. When passed, it will be called "
-"for every tag ref that points to a rewritten object (or to a tag object "
-"which points to a rewritten object).  The original tag name is passed via "
-"standard input, and the new tag name is expected on standard output."
+#: en/git-diff.txt:7
+msgid "git-diff - Show changes between commits, commit and working tree, etc"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:152
+#: en/git-diff.txt:17
+#, no-wrap
 msgid ""
-"The original tags are not deleted, but can be overwritten; use "
-"\"--tag-name-filter cat\" to simply update the tags.  In this case, be very "
-"careful and make sure you have the old tags backed up in case the conversion "
-"has run afoul."
+"'git diff' [<options>] [<commit>] [--] [<path>...]\n"
+"'git diff' [<options>] --cached [<commit>] [--] [<path>...]\n"
+"'git diff' [<options>] <commit> <commit> [--] [<path>...]\n"
+"'git diff' [<options>] <blob> <blob>\n"
+"'git diff' [<options>] --no-index [--] <path> <path>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:163
+#: en/git-diff.txt:23
 msgid ""
-"Nearly proper rewriting of tag objects is supported. If the tag has a "
-"message attached, a new tag object will be created with the same message, "
-"author, and timestamp. If the tag has a signature attached, the signature "
-"will be stripped. It is by definition impossible to preserve signatures. The "
-"reason this is \"nearly\" proper, is because ideally if the tag did not "
-"change (points to the same object, has the same name, etc.)  it should "
-"retain any signature. That is not the case, signatures will always be "
-"removed, buyer beware. There is also no support for changing the author or "
-"timestamp (or the tag message for that matter). Tags which point to other "
-"tags will be rewritten to point to the underlying commit."
+"Show changes between the working tree and the index or a tree, changes "
+"between the index and a tree, changes between two trees, changes between two "
+"blob objects, or changes between two files on disk."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-filter-branch.txt:164
+#: en/git-diff.txt:24
 #, no-wrap
-msgid "--subdirectory-filter <directory>"
+msgid "'git diff' [<options>] [--] [<path>...]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:168
+#: en/git-diff.txt:31
 msgid ""
-"Only look at the history which touches the given subdirectory.  The result "
-"will contain that directory (and only that) as its project root. Implies "
-"<<Remap_to_ancestor>>."
+"This form is to view the changes you made relative to the index (staging "
+"area for the next commit).  In other words, the differences are what you "
+"_could_ tell Git to further add to the index but you still haven't.  You can "
+"stage these changes by using linkgit:git-add[1]."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-filter-branch.txt:169
+#: en/git-diff.txt:32
 #, no-wrap
-msgid "--prune-empty"
+msgid "'git diff' [<options>] --no-index [--] <path> <path>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:176
+#: en/git-diff.txt:40
 msgid ""
-"Some filters will generate empty commits that leave the tree untouched.  "
-"This option instructs git-filter-branch to remove such commits if they have "
-"exactly one or zero non-pruned parents; merge commits will therefore remain "
-"intact.  This option cannot be used together with `--commit-filter`, though "
-"the same effect can be achieved by using the provided "
-"`git_commit_non_empty_tree` function in a commit filter."
+"This form is to compare the given two paths on the filesystem.  You can omit "
+"the `--no-index` option when running the command in a working tree "
+"controlled by Git and at least one of the paths points outside the working "
+"tree, or when running the command outside a working tree controlled by Git."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-filter-branch.txt:177
+#: en/git-diff.txt:41
 #, no-wrap
-msgid "--original <namespace>"
+msgid "'git diff' [<options>] --cached [<commit>] [--] [<path>...]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:180
+#: en/git-diff.txt:50
 msgid ""
-"Use this option to set the namespace where the original commits will be "
-"stored. The default value is 'refs/original'."
+"This form is to view the changes you staged for the next commit relative to "
+"the named <commit>.  Typically you would want comparison with the latest "
+"commit, so if you do not give <commit>, it defaults to HEAD.  If HEAD does "
+"not exist (e.g. unborn branches) and <commit> is not given, it shows all "
+"staged changes.  --staged is a synonym of --cached."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-filter-branch.txt:181
+#: en/git-diff.txt:51
 #, no-wrap
-msgid "-d <directory>"
+msgid "'git diff' [<options>] <commit> [--] [<path>...]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:188
+#: en/git-diff.txt:58
 msgid ""
-"Use this option to set the path to the temporary directory used for "
-"rewriting.  When applying a tree filter, the command needs to temporarily "
-"check out the tree to some directory, which may consume considerable space "
-"in case of large projects.  By default it does this in the '.git-rewrite/' "
-"directory but you can override that choice by this parameter."
+"This form is to view the changes you have in your working tree relative to "
+"the named <commit>.  You can use HEAD to compare it with the latest commit, "
+"or a branch name to compare with the tip of a different branch."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-diff.txt:59
+#, no-wrap
+msgid "'git diff' [<options>] <commit> <commit> [--] [<path>...]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:194
-msgid ""
-"'git filter-branch' refuses to start with an existing temporary directory or "
-"when there are already refs starting with 'refs/original/', unless forced."
+#: en/git-diff.txt:63
+msgid "This is to view the changes between two arbitrary <commit>."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-filter-branch.txt:195
+#: en/git-diff.txt:64
 #, no-wrap
-msgid "<rev-list options>..."
+msgid "'git diff' [<options>] <commit>..<commit> [--] [<path>...]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:200
+#: en/git-diff.txt:69
 msgid ""
-"Arguments for 'git rev-list'.  All positive refs included by these options "
-"are rewritten.  You may also specify options such as `--all`, but you must "
-"use `--` to separate them from the 'git filter-branch' options. Implies "
-"<<Remap_to_ancestor>>."
+"This is synonymous to the previous form.  If <commit> on one side is "
+"omitted, it will have the same effect as using HEAD instead."
 msgstr ""
 
-#. type: Title ~
-#: en/git-filter-branch.txt:204
+#. type: Labeled list
+#: en/git-diff.txt:70
 #, no-wrap
-msgid "Remap to ancestor"
+msgid "'git diff' [<options>] <commit>\\...<commit> [--] [<path>...]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:211
+#: en/git-diff.txt:77
 msgid ""
-"By using linkgit:git-rev-list[1] arguments, e.g., path limiters, you can "
-"limit the set of revisions which get rewritten. However, positive refs on "
-"the command line are distinguished: we don't let them be excluded by such "
-"limiters. For this purpose, they are instead rewritten to point at the "
-"nearest ancestor that was not excluded."
+"This form is to view the changes on the branch containing and up to the "
+"second <commit>, starting at a common ancestor of both <commit>.  \"git diff "
+"A\\...B\" is equivalent to \"git diff $(git merge-base A B) B\".  You can "
+"omit any one of <commit>, which has the same effect as using HEAD instead."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:218
+#: en/git-diff.txt:82
 msgid ""
-"Suppose you want to remove a file (containing confidential information or "
-"copyright violation) from all commits:"
+"Just in case you are doing something exotic, it should be noted that all of "
+"the <commit> in the above description, except in the last two forms that use "
+"\"..\" notations, can be any <tree>."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-filter-branch.txt:221
+#. type: Plain text
+#: en/git-diff.txt:89
+msgid ""
+"For a more complete list of ways to spell <commit>, see \"SPECIFYING "
+"REVISIONS\" section in linkgit:gitrevisions[7].  However, \"diff\" is about "
+"comparing two _endpoints_, not ranges, and the range notations (\"<commit>.."
+"<commit>\" and \"<commit>\\...<commit>\") do not mean a range as defined in "
+"the \"SPECIFYING RANGES\" section in linkgit:gitrevisions[7]."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-diff.txt:90
 #, no-wrap
-msgid "git filter-branch --tree-filter 'rm filename' HEAD\n"
+msgid "'git diff' [<options>] <blob> <blob>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:226
+#: en/git-diff.txt:94
 msgid ""
-"However, if the file is absent from the tree of some commit, a simple `rm "
-"filename` will fail for that tree and commit.  Thus you may instead want to "
-"use `rm -f filename` as the script."
+"This form is to view the differences between the raw contents of two blob "
+"objects."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:232
+#: en/git-diff.txt:108
 msgid ""
-"Using `--index-filter` with 'git rm' yields a significantly faster version.  "
-"Like with using `rm filename`, `git rm --cached filename` will fail if the "
-"file is absent from the tree of a commit.  If you want to \"completely "
-"forget\" a file, it does not matter when it entered history, so we also add "
-"`--ignore-unmatch`:"
+"Compare the working tree with the \"base\" version (stage #1), \"our branch"
+"\" (stage #2) or \"their branch\" (stage #3).  The index contains these "
+"stages only for unmerged entries i.e.  while resolving conflicts.  See "
+"linkgit:git-read-tree[1] section \"3-Way Merge\" for detailed information."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-filter-branch.txt:235
-#, no-wrap
+#. type: Plain text
+#: en/git-diff.txt:113
 msgid ""
-"git filter-branch --index-filter 'git rm --cached --ignore-unmatch filename' "
-"HEAD\n"
+"Omit diff output for unmerged entries and just show \"Unmerged\".  Can be "
+"used only when comparing the working tree with the index."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:238
-msgid "Now, you will get the rewritten history saved in HEAD."
+#: en/git-diff.txt:118
+msgid ""
+"The <paths> parameters, when given, are used to limit the diff to the named "
+"paths (you can give directory names and get diff for all files under them)."
 msgstr ""
 
-#. type: Plain text
-#: en/git-filter-branch.txt:241
-msgid ""
-"To rewrite the repository to look as if `foodir/` had been its project root, "
-"and discard all other history:"
+#. type: Labeled list
+#: en/git-diff.txt:125
+#, no-wrap
+msgid "Various ways to check your working tree"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-filter-branch.txt:244
+#: en/git-diff.txt:131
 #, no-wrap
-msgid "git filter-branch --subdirectory-filter foodir -- --all\n"
+msgid ""
+"$ git diff            <1>\n"
+"$ git diff --cached   <2>\n"
+"$ git diff HEAD       <3>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:249
-msgid ""
-"Thus you can, e.g., turn a library subdirectory into a repository of its "
-"own.  Note the `--` that separates 'filter-branch' options from revision "
-"options, and the `--all` to rewrite all branches and tags."
+#: en/git-diff.txt:134
+msgid "Changes in the working tree not yet staged for the next commit."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:253
+#: en/git-diff.txt:136
 msgid ""
-"To set a commit (which typically is at the tip of another history) to be the "
-"parent of the current initial commit, in order to paste the other history "
-"behind the current history:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-filter-branch.txt:256
-#, no-wrap
-msgid "git filter-branch --parent-filter 'sed \"s/^\\$/-p <graft-id>/\"' HEAD\n"
+"Changes between the index and your last commit; what you would be committing "
+"if you run \"git commit\" without \"-a\" option."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:262
+#: en/git-diff.txt:138
 msgid ""
-"(if the parent string is empty - which happens when we are dealing with the "
-"initial commit - add graftcommit as a parent).  Note that this assumes "
-"history with a single root (that is, no merge without common ancestors "
-"happened).  If this is not the case, use:"
+"Changes in the working tree since your last commit; what you would be "
+"committing if you run \"git commit -a\""
 msgstr ""
 
-#. type: delimited block -
-#: en/git-filter-branch.txt:266
+#. type: Labeled list
+#: en/git-diff.txt:139
 #, no-wrap
-msgid ""
-"git filter-branch --parent-filter \\\n"
-"\t'test $GIT_COMMIT = <commit-id> && echo \"-p <graft-id>\" || cat' HEAD\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-filter-branch.txt:269
-msgid "or even simpler:"
+msgid "Comparing with arbitrary commits"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-filter-branch.txt:273
+#: en/git-diff.txt:145
 #, no-wrap
 msgid ""
-"echo \"$commit-id $graft-id\" >> .git/info/grafts\n"
-"git filter-branch $graft-id..HEAD\n"
+"$ git diff test            <1>\n"
+"$ git diff HEAD -- ./test  <2>\n"
+"$ git diff HEAD^ HEAD      <3>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:276
-msgid "To remove commits authored by \"Darl McBribe\" from the history:"
+#: en/git-diff.txt:149
+msgid ""
+"Instead of using the tip of the current branch, compare with the tip of "
+"\"test\" branch."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-filter-branch.txt:285
-#, no-wrap
+#. type: Plain text
+#: en/git-diff.txt:152
 msgid ""
-"git filter-branch --commit-filter '\n"
-"\tif [ \"$GIT_AUTHOR_NAME\" = \"Darl McBribe\" ];\n"
-"\tthen\n"
-"\t\tskip_commit \"$@\";\n"
-"\telse\n"
-"\t\tgit commit-tree \"$@\";\n"
-"\tfi' HEAD\n"
+"Instead of comparing with the tip of \"test\" branch, compare with the tip "
+"of the current branch, but limit the comparison to the file \"test\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:288
-msgid "The function 'skip_commit' is defined as follows:"
+#: en/git-diff.txt:153
+msgid "Compare the version before the last commit and the last commit."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-diff.txt:154
+#, no-wrap
+msgid "Comparing branches"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-filter-branch.txt:300
+#: en/git-diff.txt:160
 #, no-wrap
 msgid ""
-"skip_commit()\n"
-"{\n"
-"\tshift;\n"
-"\twhile [ -n \"$1\" ];\n"
-"\tdo\n"
-"\t\tshift;\n"
-"\t\tmap \"$1\";\n"
-"\t\tshift;\n"
-"\tdone;\n"
-"}\n"
+"$ git diff topic master    <1>\n"
+"$ git diff topic..master   <2>\n"
+"$ git diff topic...master  <3>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:307
-msgid ""
-"The shift magic first throws away the tree id and then the -p parameters.  "
-"Note that this handles merges properly! In case Darl committed a merge "
-"between P1 and P2, it will be propagated properly and all children of the "
-"merge will become merge commits with P1,P2 as their parents instead of the "
-"merge commit."
+#: en/git-diff.txt:163
+msgid "Changes between the tips of the topic and the master branches."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:312
-#, no-wrap
-msgid ""
-"*NOTE* the changes introduced by the commits, and which are not reverted\n"
-"by subsequent commits, will still be in the rewritten branch. If you want\n"
-"to throw out _changes_ together with the commits, you should use the\n"
-"interactive mode of 'git rebase'.\n"
+#: en/git-diff.txt:164 en/git-remote-fd.txt:44 en/git-remote-fd.txt:52
+#: en/git-web--browse.txt:52
+msgid "Same as above."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:316
+#: en/git-diff.txt:166
 msgid ""
-"You can rewrite the commit log messages using `--msg-filter`.  For example, "
-"'git svn-id' strings in a repository created by 'git svn' can be removed "
-"this way:"
+"Changes that occurred on the master branch since when the topic branch was "
+"started off it."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-diff.txt:167
+#, no-wrap
+msgid "Limiting the diff output"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-filter-branch.txt:321
+#: en/git-diff.txt:173
 #, no-wrap
 msgid ""
-"git filter-branch --msg-filter '\n"
-"\tsed -e \"/^git-svn-id:/d\"\n"
-"'\n"
+"$ git diff --diff-filter=MRC            <1>\n"
+"$ git diff --name-status                <2>\n"
+"$ git diff arch/i386 include/asm-i386   <3>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:325
-msgid ""
-"If you need to add 'Acked-by' lines to, say, the last 10 commits (none of "
-"which is a merge), use this command:"
+#: en/git-diff.txt:177
+msgid "Show only modification, rename, and copy, but not addition or deletion."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-filter-branch.txt:331
-#, no-wrap
-msgid ""
-"git filter-branch --msg-filter '\n"
-"\tcat &&\n"
-"\techo \"Acked-by: Bugs Bunny <bunny@bugzilla.org>\"\n"
-"' HEAD~10..HEAD\n"
+#. type: Plain text
+#: en/git-diff.txt:179
+msgid "Show only names and the nature of change, but not actual diff output."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:337
-msgid ""
-"The `--env-filter` option can be used to modify committer and/or author "
-"identity.  For example, if you found out that your commits have the wrong "
-"identity due to a misconfigured user.email, you can make a correction, "
-"before publishing the project, like this:"
+#: en/git-diff.txt:180
+msgid "Limit diff output to named subtrees."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-diff.txt:181
+#, no-wrap
+msgid "Munging the diff output"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-filter-branch.txt:351
+#: en/git-diff.txt:186
 #, no-wrap
 msgid ""
-"git filter-branch --env-filter '\n"
-"\tif test \"$GIT_AUTHOR_EMAIL\" = \"root@localhost\"\n"
-"\tthen\n"
-"\t\tGIT_AUTHOR_EMAIL=john@example.com\n"
-"\t\texport GIT_AUTHOR_EMAIL\n"
-"\tfi\n"
-"\tif test \"$GIT_COMMITTER_EMAIL\" = \"root@localhost\"\n"
-"\tthen\n"
-"\t\tGIT_COMMITTER_EMAIL=john@example.com\n"
-"\t\texport GIT_COMMITTER_EMAIL\n"
-"\tfi\n"
-"' -- --all\n"
+"$ git diff --find-copies-harder -B -C  <1>\n"
+"$ git diff -R                          <2>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:357
+#: en/git-diff.txt:190
 msgid ""
-"To restrict rewriting to only part of the history, specify a revision range "
-"in addition to the new branch name.  The new branch name will point to the "
-"top-most revision that a 'git rev-list' of this range will print."
+"Spend extra cycles to find renames, copies and complete rewrites (very "
+"expensive)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:359
-msgid "Consider this history:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-filter-branch.txt:364
-#, no-wrap
-msgid ""
-"     D--E--F--G--H\n"
-"    /     /\n"
-"A--B-----C\n"
+#: en/git-diff.txt:191
+msgid "Output diff in reverse."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:367
-msgid "To rewrite only commits D,E,F,G,H, but leave A, B and C alone, use:"
+#: en/git-diff.txt:200
+msgid ""
+"diff(1), linkgit:git-difftool[1], linkgit:git-log[1], linkgit:"
+"gitdiffcore[7], linkgit:git-format-patch[1], linkgit:git-apply[1]"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-filter-branch.txt:370
+#. type: Title =
+#: en/git-fast-export.txt:2
 #, no-wrap
-msgid "git filter-branch ... C..H\n"
+msgid "git-fast-export(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:373
-msgid "To rewrite commits E,F,G,H, use one of these:"
+#: en/git-fast-export.txt:7
+msgid "git-fast-export - Git data exporter"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-filter-branch.txt:377
+#. type: Plain text
+#: en/git-fast-export.txt:13
 #, no-wrap
-msgid ""
-"git filter-branch ... C..H --not D\n"
-"git filter-branch ... D..H --not C\n"
+msgid "'git fast-export [<options>]' | 'git fast-import'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:380
-msgid "To move the whole tree into a subdirectory, or remove it from there:"
+#: en/git-fast-export.txt:18
+msgid ""
+"This program dumps the given revisions in a form suitable to be piped into "
+"'git fast-import'."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-filter-branch.txt:387
-#, no-wrap
+#. type: Plain text
+#: en/git-fast-export.txt:22
 msgid ""
-"git filter-branch --index-filter \\\n"
-"\t'git ls-files -s | sed \"s-\\t\\\"*-&newsubdir/-\" |\n"
-"\t\tGIT_INDEX_FILE=$GIT_INDEX_FILE.new \\\n"
-"\t\t\tgit update-index --index-info &&\n"
-"\t mv \"$GIT_INDEX_FILE.new\" \"$GIT_INDEX_FILE\"' HEAD\n"
+"You can use it as a human-readable bundle replacement (see linkgit:git-"
+"bundle[1]), or as a kind of an interactive 'git filter-branch'."
 msgstr ""
 
-#. type: Title -
-#: en/git-filter-branch.txt:392
+#. type: Labeled list
+#: en/git-fast-export.txt:26
 #, no-wrap
-msgid "Checklist for Shrinking a Repository"
+msgid "--progress=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:400
+#: en/git-fast-export.txt:29
 msgid ""
-"git-filter-branch can be used to get rid of a subset of files, usually with "
-"some combination of `--index-filter` and `--subdirectory-filter`.  People "
-"expect the resulting repository to be smaller than the original, but you "
-"need a few more steps to actually make it smaller, because Git tries hard "
-"not to lose your objects until you tell it to.  First make sure that:"
+"Insert 'progress' statements every <n> objects, to be shown by 'git fast-"
+"import' during import."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-fast-export.txt:30
+#, no-wrap
+msgid "--signed-tags=(verbatim|warn|warn-strip|strip|abort)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:404
+#: en/git-fast-export.txt:34
 msgid ""
-"You really removed all variants of a filename, if a blob was moved over its "
-"lifetime.  `git log --name-only --follow --all -- filename` can help you "
-"find renames."
+"Specify how to handle signed tags.  Since any transformation after the "
+"export can change the tag names (which can also happen when excluding "
+"revisions) the signatures will not match."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:407
+#: en/git-fast-export.txt:41
 msgid ""
-"You really filtered all refs: use `--tag-name-filter cat -- --all` when "
-"calling git-filter-branch."
+"When asking to 'abort' (which is the default), this program will die when "
+"encountering a signed tag.  With 'strip', the tags will silently be made "
+"unsigned, with 'warn-strip' they will be made unsigned but a warning will be "
+"displayed, with 'verbatim', they will be silently exported and with 'warn', "
+"they will be exported, but you will see a warning."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-fast-export.txt:42
+#, no-wrap
+msgid "--tag-of-filtered-object=(abort|drop|rewrite)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:410
+#: en/git-fast-export.txt:46
 msgid ""
-"Then there are two ways to get a smaller repository.  A safer way is to "
-"clone, that keeps your original intact."
+"Specify how to handle tags whose tagged object is filtered out.  Since "
+"revisions and files to export can be limited by path, tagged objects may be "
+"filtered completely."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:414
+#: en/git-fast-export.txt:52
 msgid ""
-"Clone it with `git clone file:///path/to/repo`.  The clone will not have the "
-"removed objects.  See linkgit:git-clone[1].  (Note that cloning with a plain "
-"path just hardlinks everything!)"
+"When asking to 'abort' (which is the default), this program will die when "
+"encountering such a tag.  With 'drop' it will omit such tags from the "
+"output.  With 'rewrite', if the tagged object is a commit, it will rewrite "
+"the tag to tag an ancestor commit (via parent rewriting; see linkgit:git-rev-"
+"list[1])"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:419
+#: en/git-fast-export.txt:58
 msgid ""
-"If you really don't want to clone it, for whatever reasons, check the "
-"following points instead (in this order).  This is a very destructive "
-"approach, so *make a backup* or go back to cloning it.  You have been "
-"warned."
+"Perform move and/or copy detection, as described in the linkgit:git-diff[1] "
+"manual page, and use it to generate rename and copy commands in the output "
+"dump."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:423
+#: en/git-fast-export.txt:61
 msgid ""
-"Remove the original refs backed up by git-filter-branch: say `git "
-"for-each-ref --format=\"%(refname)\" refs/original/ | xargs -n 1 git "
-"update-ref -d`."
+"Note that earlier versions of this command did not complain and produced "
+"incorrect results if you gave these options."
 msgstr ""
 
-#. type: Plain text
-#: en/git-filter-branch.txt:425
-msgid "Expire all reflogs with `git reflog expire --expire=now --all`."
+#. type: Labeled list
+#: en/git-fast-export.txt:62 en/git-fast-import.txt:78
+#, no-wrap
+msgid "--export-marks=<file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:429
+#: en/git-fast-export.txt:73
 msgid ""
-"Garbage collect all unreferenced objects with `git gc --prune=now` (or if "
-"your git-gc is not new enough to support arguments to `--prune`, use `git "
-"repack -ad; git prune` instead)."
+"Dumps the internal marks table to <file> when complete.  Marks are written "
+"one per line as `:markid SHA-1`. Only marks for revisions are dumped; marks "
+"for blobs are ignored.  Backends can use this file to validate imports after "
+"they have been completed, or to save the marks table across incremental "
+"runs.  As <file> is only opened and truncated at completion, the same path "
+"can also be safely given to --import-marks.  The file will not be written if "
+"no new object has been marked/exported."
 msgstr ""
 
-#. type: Plain text
-#: en/git-filter-branch.txt:441
-msgid ""
-"git-filter-branch allows you to make complex shell-scripted rewrites of your "
-"Git history, but you probably don't need this flexibility if you're simply "
-"_removing unwanted data_ like large files or passwords.  For those "
-"operations you may want to consider "
-"http://rtyley.github.io/bfg-repo-cleaner/[The BFG Repo-Cleaner], a JVM-based "
-"alternative to git-filter-branch, typically at least 10-50x faster for those "
-"use-cases, and with quite different characteristics:"
+#. type: Labeled list
+#: en/git-fast-export.txt:74 en/git-fast-import.txt:87
+#, no-wrap
+msgid "--import-marks=<file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:449
+#: en/git-fast-export.txt:78
 msgid ""
-"Any particular version of a file is cleaned exactly _once_. The BFG, unlike "
-"git-filter-branch, does not give you the opportunity to handle a file "
-"differently based on where or when it was committed within your "
-"history. This constraint gives the core performance benefit of The BFG, and "
-"is well-suited to the task of cleansing bad data - you don't care _where_ "
-"the bad data is, you just want it _gone_."
+"Before processing any input, load the marks specified in <file>.  The input "
+"file must exist, must be readable, and must use the same format as produced "
+"by --export-marks."
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:455
+#: en/git-fast-export.txt:83
 msgid ""
-"By default The BFG takes full advantage of multi-core machines, cleansing "
-"commit file-trees in parallel. git-filter-branch cleans commits sequentially "
-"(i.e. in a single-threaded manner), though it _is_ possible to write filters "
-"that include their own parallelism, in the scripts executed against each "
-"commit."
+"Any commits that have already been marked will not be exported again.  If "
+"the backend uses a similar --import-marks file, this allows for incremental "
+"bidirectional exporting of the repository by keeping the marks the same "
+"across runs."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-fast-export.txt:84
+#, no-wrap
+msgid "--fake-missing-tagger"
 msgstr ""
 
 #. type: Plain text
-#: en/git-filter-branch.txt:460
+#: en/git-fast-export.txt:89
 msgid ""
-"The http://rtyley.github.io/bfg-repo-cleaner/#examples[command options] are "
-"much more restrictive than git-filter branch, and dedicated just to the "
-"tasks of removing unwanted data- e.g: `--strip-blobs-bigger-than 1M`."
+"Some old repositories have tags without a tagger.  The fast-import protocol "
+"was pretty strict about that, and did not allow that.  So fake a tagger to "
+"be able to fast-import the output."
 msgstr ""
 
-#. type: Title =
-#: en/git-fmt-merge-msg.txt:2
+#. type: Labeled list
+#: en/git-fast-export.txt:90
 #, no-wrap
-msgid "git-fmt-merge-msg(1)"
+msgid "--use-done-feature"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fmt-merge-msg.txt:7
-msgid "git-fmt-merge-msg - Produce a merge commit message"
+#: en/git-fast-export.txt:93
+msgid ""
+"Start the stream with a 'feature done' stanza, and terminate it with a "
+"'done' command."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fmt-merge-msg.txt:14
+#. type: Labeled list
+#: en/git-fast-export.txt:94
 #, no-wrap
-msgid ""
-"'git fmt-merge-msg' [-m <message>] [--log[=<n>] | --no-log]\n"
-"'git fmt-merge-msg' [-m <message>] [--log[=<n>] | --no-log] -F <file>\n"
+msgid "--no-data"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fmt-merge-msg.txt:20
+#: en/git-fast-export.txt:101
 msgid ""
-"Takes the list of merged objects on stdin and produces a suitable commit "
-"message to be used for the merge commit, usually to be passed as the "
-"'<merge-message>' argument of 'git merge'."
+"Skip output of blob objects and instead refer to blobs via their original "
+"SHA-1 hash.  This is useful when rewriting the directory structure or "
+"history of a repository without touching the contents of individual files.  "
+"Note that the resulting stream can only be used by a repository which "
+"already contains the necessary objects."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-fast-export.txt:102 en/git-ls-tree.txt:72
+#, no-wrap
+msgid "--full-tree"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fmt-merge-msg.txt:23
+#: en/git-fast-export.txt:107
 msgid ""
-"This command is intended mostly for internal use by scripts automatically "
-"invoking 'git merge'."
+"This option will cause fast-export to issue a \"deleteall\" directive for "
+"each commit followed by a full list of all files in the commit (as opposed "
+"to just listing the files which are different from the commit's first "
+"parent)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fmt-merge-msg.txt:27 en/merge-options.txt:45
+#: en/git-fast-export.txt:108
 #, no-wrap
-msgid "--log[=<n>]"
+msgid "--anonymize"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fmt-merge-msg.txt:33
+#: en/git-fast-export.txt:112
 msgid ""
-"In addition to branch names, populate the log message with one-line "
-"descriptions from the actual commits that are being merged.  At most <n> "
-"commits from each merge parent will be used (20 if <n> is omitted).  This "
-"overrides the `merge.log` configuration variable."
+"Anonymize the contents of the repository while still retaining the shape of "
+"the history and stored tree.  See the section on `ANONYMIZING` below."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fmt-merge-msg.txt:34 en/merge-options.txt:46
+#: en/git-fast-export.txt:113
 #, no-wrap
-msgid "--no-log"
+msgid "--reference-excluded-parents"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fmt-merge-msg.txt:37
-msgid "Do not list one-line descriptions from the actual commits being merged."
+#: en/git-fast-export.txt:124
+msgid ""
+"By default, running a command such as `git fast-export master~5..master` "
+"will not include the commit master{tilde}5 and will make master{tilde}4 no "
+"longer have master{tilde}5 as a parent (though both the old master{tilde}4 "
+"and new master{tilde}4 will have all the same files).  Use --reference-"
+"excluded-parents to instead have the the stream refer to commits in the "
+"excluded range of history by their sha1sum.  Note that the resulting stream "
+"can only be used by a repository which already contains the necessary parent "
+"commits."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fmt-merge-msg.txt:38
+#: en/git-fast-export.txt:125
 #, no-wrap
-msgid "--[no-]summary"
+msgid "--show-original-ids"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fmt-merge-msg.txt:41
+#: en/git-fast-export.txt:131
 msgid ""
-"Synonyms to --log and --no-log; these are deprecated and will be removed in "
-"the future."
+"Add an extra directive to the output for commits and blobs, `original-oid "
+"<SHA1SUM>`.  While such directives will likely be ignored by importers such "
+"as git-fast-import, it may be useful for intermediary filters (e.g. for "
+"rewriting commit messages which refer to older commits, or for stripping "
+"blobs by id)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fmt-merge-msg.txt:43
+#: en/git-fast-export.txt:132
 #, no-wrap
-msgid "--message <message>"
+msgid "--refspec"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fmt-merge-msg.txt:46
+#: en/git-fast-export.txt:135
 msgid ""
-"Use <message> instead of the branch names for the first line of the log "
-"message.  For use with `--log`."
+"Apply the specified refspec to each ref exported. Multiple of them can be "
+"specified."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fmt-merge-msg.txt:48
+#: en/git-fast-export.txt:136
 #, no-wrap
-msgid "--file <file>"
+msgid "[<git-rev-list-args>...]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fmt-merge-msg.txt:51
-msgid "Take the list of merged objects from <file> instead of stdin."
+#: en/git-fast-export.txt:144
+msgid ""
+"A list of arguments, acceptable to 'git rev-parse' and 'git rev-list', that "
+"specifies the specific objects and references to export.  For example, "
+"`master~10..master` causes the current master reference to be exported along "
+"with all objects added since its 10th ancestor commit and (unless the --"
+"reference-excluded-parents option is specified) all files common to "
+"master{tilde}9 and master{tilde}10."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fmt-merge-msg.txt:56
+#. type: delimited block -
+#: en/git-fast-export.txt:150
 #, no-wrap
-msgid "merge.summary"
+msgid "$ git fast-export --all | (cd /empty/repository && git fast-import)\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fmt-merge-msg.txt:59
+#: en/git-fast-export.txt:155
 msgid ""
-"Synonym to `merge.log`; this is deprecated and will be removed in the "
-"future."
+"This will export the whole repository and import it into the existing empty "
+"repository.  Except for reencoding commits that are not in UTF-8, it would "
+"be a one-to-one mirror."
 msgstr ""
 
 #. type: delimited block -
-#: en/git-fmt-merge-msg.txt:66
+#: en/git-fast-export.txt:160
 #, no-wrap
 msgid ""
-"$ git fetch origin master\n"
-"$ git fmt-merge-msg --log <$GIT_DIR/FETCH_HEAD\n"
+"$ git fast-export master~5..master |\n"
+"\tsed \"s|refs/heads/master|refs/heads/other|\" |\n"
+"\tgit fast-import\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fmt-merge-msg.txt:70
+#: en/git-fast-export.txt:164
 msgid ""
-"Print a log message describing a merge of the \"master\" branch from the "
-"\"origin\" remote."
+"This makes a new branch called 'other' from 'master~5..master' (i.e. if "
+"'master' has linear history, it will take the last 5 commits)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fmt-merge-msg.txt:75 en/cmds-mainporcelain.txt:64
-#, no-wrap
-msgid "linkgit:git-merge[1]"
+#. type: Plain text
+#: en/git-fast-export.txt:168
+msgid ""
+"Note that this assumes that none of the blobs and commit messages referenced "
+"by that revision range contains the string 'refs/heads/master'."
 msgstr ""
 
-#. type: Title =
-#: en/git-for-each-ref.txt:2
+#. type: Title -
+#: en/git-fast-export.txt:171
 #, no-wrap
-msgid "git-for-each-ref(1)"
+msgid "ANONYMIZING"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:7
-msgid "git-for-each-ref - Output information on each ref"
+#: en/git-fast-export.txt:179
+msgid ""
+"If the `--anonymize` option is given, git will attempt to remove all "
+"identifying information from the repository while still retaining enough of "
+"the original tree and history patterns to reproduce some bugs. The goal is "
+"that a git bug which is found on a private repository will persist in the "
+"anonymized repository, and the latter can be shared with git developers to "
+"help solve the bug."
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:15
-#, no-wrap
+#: en/git-fast-export.txt:191
 msgid ""
-"'git for-each-ref' [--count=<count>] [--shell|--perl|--python|--tcl]\n"
-"\t\t   [(--sort=<key>)...] [--format=<format>] [<pattern>...]\n"
-"\t\t   [--points-at <object>] [(--merged | --no-merged) [<object>]]\n"
-"\t\t   [--contains [<object>]]\n"
+"With this option, git will replace all refnames, paths, blob contents, "
+"commit and tag messages, names, and email addresses in the output with "
+"anonymized data.  Two instances of the same string will be replaced "
+"equivalently (e.g., two commits with the same author will have the same "
+"anonymized author in the output, but bear no resemblance to the original "
+"author string). The relationship between commits, branches, and tags is "
+"retained, as well as the commit timestamps (but the commit messages and "
+"refnames bear no resemblance to the originals). The relative makeup of the "
+"tree is retained (e.g., if you have a root tree with 10 files and 3 trees, "
+"so will the output), but their names and the contents of the files will be "
+"replaced."
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:25
+#: en/git-fast-export.txt:194
 msgid ""
-"Iterate over all refs that match `<pattern>` and show them according to the "
-"given `<format>`, after sorting them according to the given set of `<key>`.  "
-"If `<count>` is given, stop after showing that many refs.  The interpolated "
-"values in `<format>` can optionally be quoted as string literals in the "
-"specified host language allowing their direct evaluation in that language."
+"If you think you have found a git bug, you can start by exporting an "
+"anonymized stream of the whole repository:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-for-each-ref.txt:28
+#. type: delimited block -
+#: en/git-fast-export.txt:197
 #, no-wrap
-msgid "<count>"
+msgid "$ git fast-export --anonymize --all >anon-stream\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:32
+#: en/git-fast-export.txt:202
 msgid ""
-"By default the command shows all refs that match `<pattern>`.  This option "
-"makes it stop after showing that many refs."
+"Then confirm that the bug persists in a repository created from that stream "
+"(many bugs will not, as they really do depend on the exact repository "
+"contents):"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-for-each-ref.txt:33
+#. type: delimited block -
+#: en/git-fast-export.txt:208
 #, no-wrap
-msgid "<key>"
+msgid ""
+"$ git init anon-repo\n"
+"$ cd anon-repo\n"
+"$ git fast-import <../anon-stream\n"
+"$ ... test your bug ...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:39
+#: en/git-fast-export.txt:215
 msgid ""
-"A field name to sort on.  Prefix `-` to sort in descending order of the "
-"value.  When unspecified, `refname` is used.  You may use the --sort=<key> "
-"option multiple times, in which case the last key becomes the primary key."
+"If the anonymized repository shows the bug, it may be worth sharing `anon-"
+"stream` along with a regular bug report. Note that the anonymized stream "
+"compresses very well, so gzipping it is encouraged. If you want to examine "
+"the stream to see that it does not contain any private data, you can peruse "
+"it directly before sending. You may also want to try:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-for-each-ref.txt:40 en/git-tag.txt:170
+#. type: delimited block -
+#: en/git-fast-export.txt:218
 #, no-wrap
-msgid "<format>"
+msgid "$ perl -pe 's/\\d+/X/g' <anon-stream | sort -u | less\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:51
+#: en/git-fast-export.txt:224
 msgid ""
-"A string that interpolates `%(fieldname)` from the object pointed at by a "
-"ref being shown.  If `fieldname` is prefixed with an asterisk (`*`) and the "
-"ref points at a tag object, the value for the field in the object tag refers "
-"is used.  When unspecified, defaults to `%(objectname) SPC %(objecttype) TAB "
-"%(refname)`.  It also interpolates `%%` to `%`, and `%xx` where `xx` are hex "
-"digits interpolates to character with hex code `xx`; for example `%00` "
-"interpolates to `\\0` (NUL), `%09` to `\\t` (TAB) and `%0a` to `\\n` (LF)."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-for-each-ref.txt:52 en/git-show-ref.txt:88
-#, no-wrap
-msgid "<pattern>..."
+"which shows all of the unique lines (with numbers converted to \"X\", to "
+"collapse \"User 0\", \"User 1\", etc into \"User X\"). This produces a much "
+"smaller output, and it is usually easy to quickly confirm that there is no "
+"private data in the stream."
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:57
+#: en/git-fast-export.txt:232
 msgid ""
-"If one or more patterns are given, only refs are shown that match against at "
-"least one pattern, either using fnmatch(3) or literally, in the latter case "
-"matching completely or from the beginning up to a slash."
+"Since 'git fast-import' cannot tag trees, you will not be able to export the "
+"linux.git repository completely, as it contains a tag referencing a tree "
+"instead of a commit."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-for-each-ref.txt:58
+#. type: Title =
+#: en/git-fast-import.txt:2
 #, no-wrap
-msgid "--shell"
+msgid "git-fast-import(1)"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-for-each-ref.txt:59
-#, no-wrap
-msgid "--perl"
+#. type: Plain text
+#: en/git-fast-import.txt:7
+msgid "git-fast-import - Backend for fast Git data importers"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-for-each-ref.txt:60
+#. type: Plain text
+#: en/git-fast-import.txt:13
 #, no-wrap
-msgid "--python"
+msgid "frontend | 'git fast-import' [<options>]\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-for-each-ref.txt:61
-#, no-wrap
-msgid "--tcl"
+#. type: Plain text
+#: en/git-fast-import.txt:20
+msgid ""
+"This program is usually not what the end user wants to run directly.  Most "
+"end users want to use one of the existing frontend programs, which parses a "
+"specific type of foreign source and feeds the contents stored there to 'git "
+"fast-import'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:66
+#: en/git-fast-import.txt:26
 msgid ""
-"If given, strings that substitute `%(fieldname)` placeholders are quoted as "
-"string literals suitable for the specified host language.  This is meant to "
-"produce a scriptlet that can directly be `eval`ed."
+"fast-import reads a mixed command/data stream from standard input and writes "
+"one or more packfiles directly into the current repository.  When EOF is "
+"received on standard input, fast import writes out updated branch and tag "
+"refs, fully updating the current repository with the newly imported data."
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:69
-msgid "Only list refs which points at the given object."
+#: en/git-fast-import.txt:32
+msgid ""
+"The fast-import backend itself can import into an empty repository (one that "
+"has already been initialized by 'git init') or incrementally update an "
+"existing populated repository.  Whether or not incremental imports are "
+"supported from a particular foreign source depends on the frontend program "
+"in use."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-for-each-ref.txt:70
-#, no-wrap
-msgid "--merged [<object>]"
+#. type: Plain text
+#: en/git-fast-import.txt:41
+msgid ""
+"Force updating modified existing branches, even if doing so would cause "
+"commits to be lost (as the new commit does not contain the old commit)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:73
+#: en/git-fast-import.txt:47
 msgid ""
-"Only list refs whose tips are reachable from the specified commit (HEAD if "
-"not specified)."
+"Disable the output shown by --stats, making fast-import usually be silent "
+"when it is successful.  However, if the import stream has directives "
+"intended to show user output (e.g. `progress` directives), the corresponding "
+"messages will still be shown."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-for-each-ref.txt:74
+#: en/git-fast-import.txt:48
 #, no-wrap
-msgid "--no-merged [<object>]"
+msgid "--stats"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:77
+#: en/git-fast-import.txt:53
 msgid ""
-"Only list refs whose tips are not reachable from the specified commit (HEAD "
-"if not specified)."
+"Display some basic statistics about the objects fast-import has created, the "
+"packfiles they were stored into, and the memory used by fast-import during "
+"this run.  Showing this output is currently the default, but can be disabled "
+"with --quiet."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-for-each-ref.txt:78
+#. type: Title ~
+#: en/git-fast-import.txt:55
 #, no-wrap
-msgid "--contains [<object>]"
+msgid "Options for Frontends"
 msgstr ""
 
-#. type: Plain text
-#: en/git-for-each-ref.txt:81
-msgid "Only list refs which contain the specified commit (HEAD if not specified)."
+#. type: Labeled list
+#: en/git-fast-import.txt:57
+#, no-wrap
+msgid "--cat-blob-fd=<fd>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:84
-msgid "Sorting and filtering refs are case insensitive."
+#: en/git-fast-import.txt:62
+msgid ""
+"Write responses to `get-mark`, `cat-blob`, and `ls` queries to the file "
+"descriptor <fd> instead of `stdout`.  Allows `progress` output intended for "
+"the end-user to be separated from other output."
 msgstr ""
 
-#. type: Title -
-#: en/git-for-each-ref.txt:86
+#. type: Labeled list
+#: en/git-fast-import.txt:63
 #, no-wrap
-msgid "FIELD NAMES"
+msgid "--date-format=<fmt>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:91
+#: en/git-fast-import.txt:68
 msgid ""
-"Various values from structured fields in referenced objects can be used to "
-"interpolate into the resulting output, or as sort keys."
-msgstr ""
-
-#. type: Plain text
-#: en/git-for-each-ref.txt:93
-msgid "For all objects, the following names can be used:"
+"Specify the type of dates the frontend will supply to fast-import within "
+"`author`, `committer` and `tagger` commands.  See ``Date Formats'' below for "
+"details about which formats are supported, and their syntax."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-for-each-ref.txt:94
+#: en/git-fast-import.txt:69
 #, no-wrap
-msgid "refname"
+msgid "--done"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:110
+#: en/git-fast-import.txt:74
 msgid ""
-"The name of the ref (the part after $GIT_DIR/).  For a non-ambiguous short "
-"name of the ref append `:short`.  The option core.warnAmbiguousRefs is used "
-"to select the strict abbreviation mode. If `lstrip=<N>` (`rstrip=<N>`) is "
-"appended, strips `<N>` slash-separated path components from the front (back) "
-"of the refname (e.g. `%(refname:lstrip=2)` turns `refs/tags/foo` into `foo` "
-"and `%(refname:rstrip=2)` turns `refs/tags/foo` into `refs`).  If `<N>` is a "
-"negative number, strip as many path components as necessary from the "
-"specified end to leave `-<N>` path components (e.g. `%(refname:lstrip=-2)` "
-"turns `refs/tags/foo` into `tags/foo` and `%(refname:rstrip=-1)` turns "
-"`refs/tags/foo` into `refs`). When the ref does not have enough components, "
-"the result becomes an empty string if stripping with positive <N>, or it "
-"becomes the full refname if stripping with negative <N>.  Neither is an "
-"error."
+"Terminate with error if there is no `done` command at the end of the "
+"stream.  This option might be useful for detecting errors that cause the "
+"frontend to terminate before it has started to write a stream."
 msgstr ""
 
-#. type: Plain text
-#: en/git-for-each-ref.txt:112
-msgid "`strip` can be used as a synomym to `lstrip`."
+#. type: Title ~
+#: en/git-fast-import.txt:76
+#, no-wrap
+msgid "Locations of Marks Files"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-for-each-ref.txt:113
-#, no-wrap
-msgid "objecttype"
+#. type: Plain text
+#: en/git-fast-import.txt:86
+msgid ""
+"Dumps the internal marks table to <file> when complete.  Marks are written "
+"one per line as `:markid SHA-1`.  Frontends can use this file to validate "
+"imports after they have been completed, or to save the marks table across "
+"incremental runs.  As <file> is only opened and truncated at checkpoint (or "
+"completion) the same path can also be safely given to --import-marks."
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:115
-msgid "The type of the object (`blob`, `tree`, `commit`, `tag`)."
+#: en/git-fast-import.txt:94
+msgid ""
+"Before processing any input, load the marks specified in <file>.  The input "
+"file must exist, must be readable, and must use the same format as produced "
+"by --export-marks.  Multiple options may be supplied to import more than one "
+"set of marks.  If a mark is defined to different values, the last file wins."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-for-each-ref.txt:116
+#: en/git-fast-import.txt:95
 #, no-wrap
-msgid "objectsize"
+msgid "--import-marks-if-exists=<file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:118
-msgid "The size of the object (the same as 'git cat-file -s' reports)."
+#: en/git-fast-import.txt:98
+msgid ""
+"Like --import-marks but instead of erroring out, silently skips the file if "
+"it does not exist."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-for-each-ref.txt:119
+#: en/git-fast-import.txt:99
 #, no-wrap
-msgid "objectname"
+msgid "--[no-]relative-marks"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:125
+#: en/git-fast-import.txt:106
 msgid ""
-"The object name (aka SHA-1).  For a non-ambiguous abbreviation of the object "
-"name append `:short`.  For an abbreviation of the object name with desired "
-"length append `:short=<length>`, where the minimum length is "
-"MINIMUM_ABBREV. The length may be exceeded to ensure unique object names."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-for-each-ref.txt:126
-#, no-wrap
-msgid "upstream"
+"After specifying --relative-marks the paths specified with --import-marks= "
+"and --export-marks= are relative to an internal directory in the current "
+"repository.  In git-fast-import this means that the paths are relative to "
+"the .git/info/fast-import directory. However, other importers may use a "
+"different location."
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:140
+#: en/git-fast-import.txt:109
 msgid ""
-"The name of a local ref which can be considered ``upstream'' from the "
-"displayed ref. Respects `:short`, `:lstrip` and `:rstrip` in the same way as "
-"`refname` above.  Additionally respects `:track` to show \"[ahead N, behind "
-"M]\" and `:trackshort` to show the terse version: \">\" (ahead), \"<\" "
-"(behind), \"<>\" (ahead and behind), or \"=\" (in sync). `:track` also "
-"prints \"[gone]\" whenever unknown upstream ref is encountered. Append "
-"`:track,nobracket` to show tracking information without brackets (i.e "
-"\"ahead N, behind M\").  Has no effect if the ref does not have tracking "
-"information associated with it.  All the options apart from `nobracket` are "
-"mutually exclusive, but if used together the last option is selected."
+"Relative and non-relative marks may be combined by interweaving --(no-)-"
+"relative-marks with the --(import|export)-marks= options."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-for-each-ref.txt:141
+#. type: Title ~
+#: en/git-fast-import.txt:111
 #, no-wrap
-msgid "push"
+msgid "Performance and Compression Tuning"
 msgstr ""
 
-#. type: Plain text
-#: en/git-for-each-ref.txt:147
-msgid ""
-"The name of a local ref which represents the `@{push}` location for the "
-"displayed ref. Respects `:short`, `:lstrip`, `:rstrip`, `:track`, and "
-"`:trackshort` options as `upstream` does. Produces an empty string if no "
-"`@{push}` ref is configured."
+#. type: Labeled list
+#: en/git-fast-import.txt:113
+#, no-wrap
+msgid "--active-branches=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:151
-msgid "'*' if HEAD matches current ref (the checked out branch), ' ' otherwise."
+#: en/git-fast-import.txt:116
+msgid ""
+"Maximum number of branches to maintain active at once.  See ``Memory "
+"Utilization'' below for details.  Default is 5."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-for-each-ref.txt:152 en/config.txt:214 en/diff-options.txt:241
+#: en/git-fast-import.txt:117
 #, no-wrap
-msgid "color"
+msgid "--big-file-threshold=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:155
+#: en/git-fast-import.txt:122
 msgid ""
-"Change output color.  Followed by `:<colorname>`, where names are described "
-"in `color.branch.*`."
+"Maximum size of a blob that fast-import will attempt to create a delta for, "
+"expressed in bytes.  The default is 512m (512 MiB).  Some importers may wish "
+"to lower this on systems with constrained memory."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-for-each-ref.txt:156
+#: en/git-fast-import.txt:123 en/git-fetch-pack.txt:85
+#: en/git-pack-objects.txt:89 en/git-repack.txt:90
 #, no-wrap
-msgid "align"
+msgid "--depth=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:170
-msgid ""
-"Left-, middle-, or right-align the content between %(align:...) and "
-"%(end). The \"align:\" is followed by `width=<width>` and "
-"`position=<position>` in any order separated by a comma, where the "
-"`<position>` is either left, right or middle, default being left and "
-"`<width>` is the total length of the content with alignment. For brevity, "
-"the \"width=\" and/or \"position=\" prefixes may be omitted, and bare "
-"<width> and <position> used instead.  For instance, "
-"`%(align:<width>,<position>)`. If the contents length is more than the width "
-"then no alignment is performed. If used with `--quote` everything in between "
-"%(align:...) and %(end) is quoted, but if nested then only the topmost level "
-"performs quoting."
+#: en/git-fast-import.txt:126
+msgid "Maximum delta depth, for blob and tree deltification.  Default is 50."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-for-each-ref.txt:171
+#: en/git-fast-import.txt:127
 #, no-wrap
-msgid "if"
+msgid "--export-pack-edges=<file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:183
+#: en/git-fast-import.txt:135
 msgid ""
-"Used as %(if)...%(then)...%(end) or %(if)...%(then)...%(else)...%(end).  If "
-"there is an atom with value or string literal after the %(if) then "
-"everything after the %(then) is printed, else if the %(else) atom is used, "
-"then everything after %(else) is printed. We ignore space when evaluating "
-"the string before %(then), this is useful when we use the %(HEAD) atom which "
-"prints either \"*\" or \" \" and we want to apply the 'if' condition only on "
-"the 'HEAD' ref.  Append \":equals=<string>\" or \":notequals=<string>\" to "
-"compare the value between the %(if:...) and %(then) atoms with the given "
-"string."
+"After creating a packfile, print a line of data to <file> listing the "
+"filename of the packfile and the last commit on each branch that was written "
+"to that packfile.  This information may be useful after importing projects "
+"whose total object set exceeds the 4 GiB packfile limit, as these commits "
+"can be used as edge points during calls to 'git pack-objects'."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-for-each-ref.txt:184
+#: en/git-fast-import.txt:136 en/git-pack-objects.txt:114 en/git-repack.txt:118
 #, no-wrap
-msgid "symref"
+msgid "--max-pack-size=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:189
-msgid ""
-"The ref which the given symbolic ref refers to. If not a symbolic ref, "
-"nothing is printed. Respects the `:short`, `:lstrip` and `:rstrip` options "
-"in the same way as `refname` above."
+#: en/git-fast-import.txt:139
+msgid "Maximum size of each output packfile.  The default is unlimited."
 msgstr ""
 
-#. type: Plain text
-#: en/git-for-each-ref.txt:193
-msgid ""
-"In addition to the above, for commit and tag objects, the header field names "
-"(`tree`, `parent`, `object`, `type`, and `tag`) can be used to specify the "
-"value in the header field."
+#. type: Labeled list
+#: en/git-fast-import.txt:140
+#, no-wrap
+msgid "fastimport.unpackLimit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:198
-msgid ""
-"For commit and tag objects, the special `creatordate` and `creator` fields "
-"will correspond to the appropriate date or name-email-date tuple from the "
-"`committer` or `tagger` fields depending on the object type.  These are "
-"intended for working on a mix of annotated and lightweight tags."
+#: en/git-fast-import.txt:142
+msgid "See linkgit:git-config[1]"
 msgstr ""
 
-#. type: Plain text
-#: en/git-for-each-ref.txt:202
-msgid ""
-"Fields that have name-email-date tuple as its value (`author`, `committer`, "
-"and `tagger`) can be suffixed with `name`, `email`, and `date` to extract "
-"the named component."
+#. type: Title -
+#: en/git-fast-import.txt:144 en/git-p4.txt:507
+#, no-wrap
+msgid "PERFORMANCE"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:211
+#: en/git-fast-import.txt:151
 msgid ""
-"The complete message in a commit and tag object is `contents`.  Its first "
-"line is `contents:subject`, where subject is the concatenation of all lines "
-"of the commit message up to the first blank line.  The next line is "
-"'contents:body', where body is all of the lines after the first blank line.  "
-"The optional GPG signature is `contents:signature`.  The first `N` lines of "
-"the message is obtained using `contents:lines=N`.  Additionally, the "
-"trailers as interpreted by linkgit:git-interpret-trailers[1] are obtained as "
-"'contents:trailers'."
+"The design of fast-import allows it to import large projects in a minimum "
+"amount of memory usage and processing time.  Assuming the frontend is able "
+"to keep up with fast-import and feed it a constant stream of data, import "
+"times for projects holding 10+ years of history and containing 100,000+ "
+"individual commits are generally completed in just 1-2 hours on quite modest "
+"(~$2,000 USD) hardware."
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:215
+#: en/git-fast-import.txt:157
 msgid ""
-"For sorting purposes, fields with numeric values sort in numeric order "
-"(`objectsize`, `authordate`, `committerdate`, `creatordate`, `taggerdate`).  "
-"All other fields are used to sort in their byte-value order."
+"Most bottlenecks appear to be in foreign source data access (the source just "
+"cannot extract revisions fast enough) or disk IO (fast-import writes as fast "
+"as the disk will take the data).  Imports will run faster if the source data "
+"is stored on a different drive than the destination Git repository (due to "
+"less IO contention)."
 msgstr ""
 
-#. type: Plain text
-#: en/git-for-each-ref.txt:218
-msgid ""
-"There is also an option to sort by versions, this can be done by using the "
-"fieldname `version:refname` or its alias `v:refname`."
+#. type: Title -
+#: en/git-fast-import.txt:160
+#, no-wrap
+msgid "DEVELOPMENT COST"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:222
+#: en/git-fast-import.txt:167
 msgid ""
-"In any case, a field name that refers to a field inapplicable to the object "
-"referred by the ref does not cause an error.  It returns an empty string "
-"instead."
+"A typical frontend for fast-import tends to weigh in at approximately 200 "
+"lines of Perl/Python/Ruby code.  Most developers have been able to create "
+"working importers in just a couple of hours, even though it is their first "
+"exposure to fast-import, and sometimes even to Git.  This is an ideal "
+"situation, given that most conversion tools are throw-away (use once, and "
+"never look back)."
 msgstr ""
 
-#. type: Plain text
-#: en/git-for-each-ref.txt:226
-msgid ""
-"As a special case for the date-type fields, you may specify a format for the "
-"date by adding `:` followed by date format name (see the values the `--date` "
-"option to linkgit:git-rev-list[1] takes)."
+#. type: Title -
+#: en/git-fast-import.txt:170
+#, no-wrap
+msgid "PARALLEL OPERATION"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:229
+#: en/git-fast-import.txt:175
 msgid ""
-"Some atoms like %(align) and %(if) always require a matching %(end).  We "
-"call them \"opening atoms\" and sometimes denote them as %($open)."
+"Like 'git push' or 'git fetch', imports handled by fast-import are safe to "
+"run alongside parallel `git repack -a -d` or `git gc` invocations, or any "
+"other Git operation (including 'git prune', as loose objects are never used "
+"by fast-import)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:234
+#: en/git-fast-import.txt:184
 msgid ""
-"When a scripting language specific quoting is in effect, everything between "
-"a top-level opening atom and its matching %(end) is evaluated according to "
-"the semantics of the opening atom and only its result from the top-level is "
-"quoted."
+"fast-import does not lock the branch or tag refs it is actively importing.  "
+"After the import, during its ref update phase, fast-import tests each "
+"existing branch ref to verify the update will be a fast-forward update (the "
+"commit stored in the ref is contained in the new history of the commit to be "
+"written).  If the update is not a fast-forward update, fast-import will skip "
+"updating that ref and instead prints a warning message.  fast-import will "
+"always attempt to update all branch refs, and does not stop on the first "
+"failure."
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:241
+#: en/git-fast-import.txt:188
 msgid ""
-"An example directly producing formatted text.  Show the most recent 3 tagged "
-"commits:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-for-each-ref.txt:244 en/git-for-each-ref.txt:260 en/git-for-each-ref.txt:274
-#, no-wrap
-msgid "#!/bin/sh\n"
+"Branch updates can be forced with --force, but it's recommended that this "
+"only be used on an otherwise quiet repository.  Using --force is not "
+"necessary for an initial import into an empty repository."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-for-each-ref.txt:250
+#. type: Title -
+#: en/git-fast-import.txt:191
 #, no-wrap
-msgid ""
-"git for-each-ref --count=3 --sort='-*authordate' \\\n"
-"--format='From: %(*authorname) %(*authoremail)\n"
-"Subject: %(*subject)\n"
-"Date: %(*authordate)\n"
-"Ref: %(*refname)\n"
+msgid "TECHNICAL DISCUSSION"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-for-each-ref.txt:253
-#, no-wrap
+#. type: Plain text
+#: en/git-fast-import.txt:198
 msgid ""
-"%(*body)\n"
-"' 'refs/tags'\n"
+"fast-import tracks a set of branches in memory.  Any branch can be created "
+"or modified at any point during the import process by sending a `commit` "
+"command on the input stream.  This design allows a frontend program to "
+"process an unlimited number of branches simultaneously, generating commits "
+"in the order they are available from the source data.  It also simplifies "
+"the frontend programs considerably."
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:258
+#: en/git-fast-import.txt:207
 msgid ""
-"A simple example showing the use of shell eval on the output, demonstrating "
-"the use of --shell.  List the prefixes of all heads:"
+"fast-import does not use or alter the current working directory, or any file "
+"within it.  (It does however update the current Git repository, as "
+"referenced by `GIT_DIR`.)  Therefore an import frontend may use the working "
+"directory for its own purposes, such as extracting file revisions from the "
+"foreign source.  This ignorance of the working directory also allows fast-"
+"import to run very quickly, as it does not need to perform any costly file "
+"update operations when switching between branches."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-for-each-ref.txt:267
+#. type: Title -
+#: en/git-fast-import.txt:209
 #, no-wrap
-msgid ""
-"git for-each-ref --shell --format=\"ref=%(refname)\" refs/heads | \\\n"
-"while read entry\n"
-"do\n"
-"\teval \"$entry\"\n"
-"\techo `dirname $ref`\n"
-"done\n"
+msgid "INPUT FORMAT"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:272
+#: en/git-fast-import.txt:215
 msgid ""
-"A bit more elaborate report on tags, demonstrating that the format may be an "
-"entire script:"
+"With the exception of raw file data (which Git does not interpret)  the fast-"
+"import input format is text (ASCII) based.  This text based format "
+"simplifies development and debugging of frontend programs, especially when a "
+"higher level language such as Perl, Python or Ruby is being used."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-for-each-ref.txt:279
-#, no-wrap
+#. type: Plain text
+#: en/git-fast-import.txt:223
 msgid ""
-"fmt='\n"
-"\tr=%(refname)\n"
-"\tt=%(*objecttype)\n"
-"\tT=${r#refs/tags/}\n"
+"fast-import is very strict about its input.  Where we say SP below we mean "
+"*exactly* one space.  Likewise LF means one (and only one) linefeed and HT "
+"one (and only one) horizontal tab.  Supplying additional whitespace "
+"characters will cause unexpected results, such as branch names or file names "
+"with leading or trailing spaces in their name, or early termination of fast-"
+"import when it encounters unexpected input."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-for-each-ref.txt:286
+#. type: Title ~
+#: en/git-fast-import.txt:225
 #, no-wrap
-msgid ""
-"\to=%(*objectname)\n"
-"\tn=%(*authorname)\n"
-"\te=%(*authoremail)\n"
-"\ts=%(*subject)\n"
-"\td=%(*authordate)\n"
-"\tb=%(*body)\n"
+msgid "Stream Comments"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-for-each-ref.txt:305
-#, no-wrap
+#. type: Plain text
+#: en/git-fast-import.txt:232
 msgid ""
-"\tkind=Tag\n"
-"\tif test \"z$t\" = z\n"
-"\tthen\n"
-"\t\t# could be a lightweight tag\n"
-"\t\tt=%(objecttype)\n"
-"\t\tkind=\"Lightweight tag\"\n"
-"\t\to=%(objectname)\n"
-"\t\tn=%(authorname)\n"
-"\t\te=%(authoremail)\n"
-"\t\ts=%(subject)\n"
-"\t\td=%(authordate)\n"
-"\t\tb=%(body)\n"
-"\tfi\n"
-"\techo \"$kind $T points at a $t object $o\"\n"
-"\tif test \"z$t\" = zcommit\n"
-"\tthen\n"
-"\t\techo \"The commit was authored by $n $e\n"
-"at $d, and titled\n"
+"To aid in debugging frontends fast-import ignores any line that begins with "
+"`#` (ASCII pound/hash) up to and including the line ending `LF`.  A comment "
+"line may contain any sequence of bytes that does not contain an LF and "
+"therefore may be used to include any detailed debugging information that "
+"might be specific to the frontend and useful when inspecting a fast-import "
+"data stream."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-for-each-ref.txt:307
+#. type: Title ~
+#: en/git-fast-import.txt:234
 #, no-wrap
-msgid "    $s\n"
+msgid "Date Formats"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-for-each-ref.txt:314
-#, no-wrap
+#. type: Plain text
+#: en/git-fast-import.txt:238
 msgid ""
-"Its message reads as:\n"
-"\"\n"
-"\t\techo \"$b\" | sed -e \"s/^/    /\"\n"
-"\t\techo\n"
-"\tfi\n"
-"'\n"
+"The following date formats are supported.  A frontend should select the "
+"format it will use for this import by passing the format name in the --date-"
+"format=<fmt> command-line option."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-for-each-ref.txt:320
+#. type: Labeled list
+#: en/git-fast-import.txt:239
 #, no-wrap
-msgid ""
-"eval=`git for-each-ref --shell --format=\"$fmt\" \\\n"
-"\t--sort='*objecttype' \\\n"
-"\t--sort=-taggerdate \\\n"
-"\trefs/tags`\n"
-"eval \"$eval\"\n"
+msgid "`raw`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:325
+#: en/git-fast-import.txt:243
 msgid ""
-"An example to show the usage of %(if)...%(then)...%(else)...%(end).  This "
-"prefixes the current branch with a star."
+"This is the Git native format and is `<time> SP <offutc>`.  It is also fast-"
+"import's default format, if --date-format was not specified."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-for-each-ref.txt:328
-#, no-wrap
+#. type: Plain text
+#: en/git-fast-import.txt:247
 msgid ""
-"git for-each-ref --format=\"%(if)%(HEAD)%(then)* %(else)  "
-"%(end)%(refname:short)\" refs/heads/\n"
+"The time of the event is specified by `<time>` as the number of seconds "
+"since the UNIX epoch (midnight, Jan 1, 1970, UTC) and is written as an ASCII "
+"decimal integer."
 msgstr ""
 
 #. type: Plain text
-#: en/git-for-each-ref.txt:333
+#: en/git-fast-import.txt:253
 msgid ""
-"An example to show the usage of %(if)...%(then)...%(end).  This prints the "
-"authorname, if present."
+"The local offset is specified by `<offutc>` as a positive or negative offset "
+"from UTC.  For example EST (which is 5 hours behind UTC)  would be expressed "
+"in `<tz>` by ``-0500'' while UTC is ``+0000''.  The local offset does not "
+"affect `<time>`; it is used only as an advisement to help formatting "
+"routines display the timestamp."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-for-each-ref.txt:336
-#, no-wrap
+#. type: Plain text
+#: en/git-fast-import.txt:259
 msgid ""
-"git for-each-ref --format=\"%(refname)%(if)%(authorname)%(then) Authored by: "
-"%(authorname)%(end)\"\n"
+"If the local offset is not available in the source material, use ``+0000'', "
+"or the most common local offset.  For example many organizations have a CVS "
+"repository which has only ever been accessed by users who are located in the "
+"same location and time zone.  In this case a reasonable offset from UTC "
+"could be assumed."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-for-each-ref.txt:341 en/cmds-plumbinginterrogators.txt:40
-#, no-wrap
-msgid "linkgit:git-show-ref[1]"
+#. type: Plain text
+#: en/git-fast-import.txt:262
+msgid ""
+"Unlike the `rfc2822` format, this format is very strict.  Any variation in "
+"formatting will cause fast-import to reject the value."
 msgstr ""
 
-#. type: Title =
-#: en/git-format-patch.txt:2
+#. type: Labeled list
+#: en/git-fast-import.txt:263
 #, no-wrap
-msgid "git-format-patch(1)"
+msgid "`rfc2822`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:7
-msgid "git-format-patch - Prepare patches for e-mail submission"
+#: en/git-fast-import.txt:265
+msgid "This is the standard email format as described by RFC 2822."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:28
-#, no-wrap
+#: en/git-fast-import.txt:270
 msgid ""
-"'git format-patch' [-k] [(-o|--output-directory) <dir> | --stdout]\n"
-"\t\t   [--no-thread | --thread[=<style>]]\n"
-"\t\t   [(--attach|--inline)[=<boundary>] | --no-attach]\n"
-"\t\t   [-s | --signoff]\n"
-"\t\t   [--signature=<signature> | --no-signature]\n"
-"\t\t   [--signature-file=<file>]\n"
-"\t\t   [-n | --numbered | -N | --no-numbered]\n"
-"\t\t   [--start-number <n>] [--numbered-files]\n"
-"\t\t   [--in-reply-to=Message-Id] [--suffix=.<sfx>]\n"
-"\t\t   [--ignore-if-in-upstream]\n"
-"\t\t   [--rfc] [--subject-prefix=Subject-Prefix]\n"
-"\t\t   [(--reroll-count|-v) <n>]\n"
-"\t\t   [--to=<email>] [--cc=<email>]\n"
-"\t\t   [--[no-]cover-letter] [--quiet] [--notes[=<ref>]]\n"
-"\t\t   [<common diff options>]\n"
-"\t\t   [ <since> | <revision range> ]\n"
+"An example value is ``Tue Feb 6 11:22:18 2007 -0500''.  The Git parser is "
+"accurate, but a little on the lenient side.  It is the same parser used by "
+"'git am' when applying patches received from email."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:36
+#: en/git-fast-import.txt:276
 msgid ""
-"Prepare each commit with its patch in one file per commit, formatted to "
-"resemble UNIX mailbox format.  The output of this command is convenient for "
-"e-mail submission or for use with 'git am'."
+"Some malformed strings may be accepted as valid dates.  In some of these "
+"cases Git will still be able to obtain the correct date from the malformed "
+"string.  There are also some types of malformed strings which Git will parse "
+"wrong, and yet consider valid.  Seriously malformed strings will be rejected."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:38
-msgid "There are two ways to specify which commits to operate on."
+#: en/git-fast-import.txt:281
+msgid ""
+"Unlike the `raw` format above, the time zone/UTC offset information "
+"contained in an RFC 2822 date string is used to adjust the date value to UTC "
+"prior to storage.  Therefore it is important that this information be as "
+"accurate as possible."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:42
+#: en/git-fast-import.txt:286
 msgid ""
-"A single commit, <since>, specifies that the commits leading to the tip of "
-"the current branch that are not in the history that leads to the <since> to "
-"be output."
+"If the source material uses RFC 2822 style dates, the frontend should let "
+"fast-import handle the parsing and conversion (rather than attempting to do "
+"it itself) as the Git parser has been well tested in the wild."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:46
+#: en/git-fast-import.txt:291
 msgid ""
-"Generic <revision range> expression (see \"SPECIFYING REVISIONS\" section in "
-"linkgit:gitrevisions[7]) means the commits in the specified range."
+"Frontends should prefer the `raw` format if the source material already uses "
+"UNIX-epoch format, can be coaxed to give dates in that format, or its format "
+"is easily convertible to it, as there is no ambiguity in parsing."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-fast-import.txt:292
+#, no-wrap
+msgid "`now`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:52
+#: en/git-fast-import.txt:295
 msgid ""
-"The first rule takes precedence in the case of a single <commit>.  To apply "
-"the second rule, i.e., format everything since the beginning of history up "
-"until <commit>, use the '\\--root' option: `git format-patch --root "
-"<commit>`.  If you want to format only <commit> itself, you can do this with "
-"`git format-patch -1 <commit>`."
+"Always use the current time and time zone.  The literal `now` must always be "
+"supplied for `<when>`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:59
+#: en/git-fast-import.txt:300
 msgid ""
-"By default, each output file is numbered sequentially from 1, and uses the "
-"first line of the commit message (massaged for pathname safety) as the "
-"filename. With the `--numbered-files` option, the output file names will "
-"only be numbers, without the first line of the commit appended.  The names "
-"of the output files are printed to standard output, unless the `--stdout` "
-"option is specified."
+"This is a toy format.  The current time and time zone of this system is "
+"always copied into the identity string at the time it is being created by "
+"fast-import.  There is no way to specify a different time or time zone."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:66
+#: en/git-fast-import.txt:305
 msgid ""
-"If `-o` is specified, output files are created in <dir>.  Otherwise they are "
-"created in the current working directory. The default path can be set with "
-"the `format.outputDirectory` configuration option.  The `-o` option takes "
-"precedence over `format.outputDirectory`.  To store patches in the current "
-"working directory even when `format.outputDirectory` points elsewhere, use "
-"`-o .`."
+"This particular format is supplied as it's short to implement and may be "
+"useful to a process that wants to create a new commit right now, without "
+"needing to use a working directory or 'git update-index'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:70
+#: en/git-fast-import.txt:312
 msgid ""
-"By default, the subject of a single patch is \"[PATCH] \" followed by the "
-"concatenation of lines from the commit message up to the first blank line "
-"(see the DISCUSSION section of linkgit:git-commit[1])."
+"If separate `author` and `committer` commands are used in a `commit` the "
+"timestamps may not match, as the system clock will be polled twice (once for "
+"each command).  The only way to ensure that both author and committer "
+"identity information has the same timestamp is to omit `author` (thus "
+"copying from `committer`) or to use a date format other than `now`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-format-patch.txt:74
-msgid ""
-"When multiple patches are output, the subject prefix will instead be "
-"\"[PATCH n/m] \".  To force 1/1 to be added for a single patch, use `-n`.  "
-"To omit patch numbers from the subject, use `-N`."
+#. type: Title ~
+#: en/git-fast-import.txt:314
+#, no-wrap
+msgid "Commands"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:79
+#: en/git-fast-import.txt:318
 msgid ""
-"If given `--thread`, `git-format-patch` will generate `In-Reply-To` and "
-"`References` headers to make the second and subsequent patch mails appear as "
-"replies to the first mail; this also generates a `Message-Id` header to "
-"reference."
+"fast-import accepts several commands to update the current repository and "
+"control the current import process.  More detailed discussion (with "
+"examples) of each command follows later."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:85
+#. type: Title ~
+#: en/git-fast-import.txt:319 en/git-fast-import.txt:381
 #, no-wrap
-msgid "-<n>"
+msgid "`commit`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:87
-msgid "Prepare patches from the topmost <n> commits."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-format-patch.txt:88
-#, no-wrap
-msgid "-o <dir>"
+#: en/git-fast-import.txt:323
+msgid ""
+"Creates a new branch or updates an existing branch by creating a new commit "
+"and updating the branch to point at the newly created commit."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:89
+#. type: Title ~
+#: en/git-fast-import.txt:324 en/git-fast-import.txt:759
 #, no-wrap
-msgid "--output-directory <dir>"
+msgid "`tag`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:92
+#: en/git-fast-import.txt:329
 msgid ""
-"Use <dir> to store the resulting files, instead of the current working "
-"directory."
+"Creates an annotated tag object from an existing commit or branch.  "
+"Lightweight tags are not supported by this command, as they are not "
+"recommended for recording meaningful points in time."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:94 en/git-shortlog.txt:30
+#. type: Title ~
+#: en/git-fast-import.txt:330 en/git-fast-import.txt:803
 #, no-wrap
-msgid "--numbered"
+msgid "`reset`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:96
-msgid "Name output in '[PATCH n/m]' format, even with a single patch."
+#: en/git-fast-import.txt:334
+msgid ""
+"Reset an existing branch (or a new branch) to a specific revision.  This "
+"command must be used to change a branch to a specific revision without "
+"making a commit on it."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:98
+#. type: Title ~
+#: en/git-fast-import.txt:335 en/git-fast-import.txt:832
 #, no-wrap
-msgid "--no-numbered"
+msgid "`blob`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:100
-msgid "Name output in '[PATCH]' format."
+#: en/git-fast-import.txt:339
+msgid ""
+"Convert raw file data into a blob, for future use in a `commit` command.  "
+"This command is optional and is not needed to perform an import."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:101
+#. type: Title ~
+#: en/git-fast-import.txt:340 en/git-fast-import.txt:905
 #, no-wrap
-msgid "--start-number <n>"
+msgid "`checkpoint`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:103
-msgid "Start numbering the patches at <n> instead of 1."
+#: en/git-fast-import.txt:345
+msgid ""
+"Forces fast-import to close the current packfile, generate its unique SHA-1 "
+"checksum and index, and start a new packfile.  This command is optional and "
+"is not needed to perform an import."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:104
+#. type: Title ~
+#: en/git-fast-import.txt:346 en/git-fast-import.txt:933
 #, no-wrap
-msgid "--numbered-files"
+msgid "`progress`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:107
+#: en/git-fast-import.txt:350
 msgid ""
-"Output file names will be a simple number sequence without the default first "
-"line of the commit appended."
+"Causes fast-import to echo the entire line to its own standard output.  This "
+"command is optional and is not needed to perform an import."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:109
+#. type: Title ~
+#: en/git-fast-import.txt:351 en/git-fast-import.txt:1143
 #, no-wrap
-msgid "--keep-subject"
+msgid "`done`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:112
-msgid "Do not strip/add '[PATCH]' from the first line of the commit log message."
+#: en/git-fast-import.txt:355
+msgid ""
+"Marks the end of the stream. This command is optional unless the `done` "
+"feature was requested using the `--done` command-line option or `feature "
+"done` command."
+msgstr ""
+
+#. type: Title ~
+#: en/git-fast-import.txt:356 en/git-fast-import.txt:958
+#, no-wrap
+msgid "`get-mark`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:118
+#: en/git-fast-import.txt:360
 msgid ""
-"Add `Signed-off-by:` line to the commit message, using the committer "
-"identity of yourself.  See the signoff option in linkgit:git-commit[1] for "
-"more information."
+"Causes fast-import to print the SHA-1 corresponding to a mark to the file "
+"descriptor set with `--cat-blob-fd`, or `stdout` if unspecified."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:119 en/git-pack-objects.txt:57
+#. type: Title ~
+#: en/git-fast-import.txt:361 en/git-fast-import.txt:977
 #, no-wrap
-msgid "--stdout"
+msgid "`cat-blob`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:122
+#: en/git-fast-import.txt:365
 msgid ""
-"Print all commits to the standard output in mbox format, instead of creating "
-"a file for each one."
+"Causes fast-import to print a blob in 'cat-file --batch' format to the file "
+"descriptor set with `--cat-blob-fd` or `stdout` if unspecified."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:123
+#. type: Title ~
+#: en/git-fast-import.txt:366 en/git-fast-import.txt:1007
 #, no-wrap
-msgid "--attach[=<boundary>]"
+msgid "`ls`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:127
+#: en/git-fast-import.txt:370
 msgid ""
-"Create multipart/mixed attachment, the first part of which is the commit "
-"message and the patch itself in the second part, with `Content-Disposition: "
-"attachment`."
+"Causes fast-import to print a line describing a directory entry in 'ls-tree' "
+"format to the file descriptor set with `--cat-blob-fd` or `stdout` if "
+"unspecified."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:128
+#. type: Title ~
+#: en/git-fast-import.txt:371 en/git-fast-import.txt:1060
 #, no-wrap
-msgid "--no-attach"
+msgid "`feature`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:131
-msgid "Disable the creation of an attachment, overriding the configuration setting."
+#: en/git-fast-import.txt:374
+msgid ""
+"Enable the specified feature. This requires that fast-import supports the "
+"specified feature, and aborts if it does not."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:132
+#. type: Title ~
+#: en/git-fast-import.txt:375 en/git-fast-import.txt:1115
 #, no-wrap
-msgid "--inline[=<boundary>]"
+msgid "`option`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:136
+#: en/git-fast-import.txt:379
 msgid ""
-"Create multipart/mixed attachment, the first part of which is the commit "
-"message and the patch itself in the second part, with `Content-Disposition: "
-"inline`."
+"Specify any of the options listed under OPTIONS that do not change stream "
+"semantic to suit the frontend's needs. This command is optional and is not "
+"needed to perform an import."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:137
-#, no-wrap
-msgid "--thread[=<style>]"
+#. type: Plain text
+#: en/git-fast-import.txt:384
+msgid ""
+"Create or update a branch with a new commit, recording one logical change to "
+"the project."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:138
+#. type: delimited block .
+#: en/git-fast-import.txt:396
 #, no-wrap
-msgid "--no-thread"
+msgid ""
+"\t'commit' SP <ref> LF\n"
+"\tmark?\n"
+"\toriginal-oid?\n"
+"\t('author' (SP <name>)? SP LT <email> GT SP <when> LF)?\n"
+"\t'committer' (SP <name>)? SP LT <email> GT SP <when> LF\n"
+"\tdata\n"
+"\t('from' SP <commit-ish> LF)?\n"
+"\t('merge' SP <commit-ish> LF)?\n"
+"\t(filemodify | filedelete | filecopy | filerename | filedeleteall | notemodify)*\n"
+"\tLF?\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:143
+#: en/git-fast-import.txt:404
 msgid ""
-"Controls addition of `In-Reply-To` and `References` headers to make the "
-"second and subsequent mails appear as replies to the first.  Also controls "
-"generation of the `Message-Id` header to reference."
+"where `<ref>` is the name of the branch to make the commit on.  Typically "
+"branch names are prefixed with `refs/heads/` in Git, so importing the CVS "
+"branch symbol `RELENG-1_0` would use `refs/heads/RELENG-1_0` for the value "
+"of `<ref>`.  The value of `<ref>` must be a valid refname in Git.  As `LF` "
+"is not valid in a Git refname, no quoting or escaping syntax is supported "
+"here."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:149
+#: en/git-fast-import.txt:410
 msgid ""
-"The optional <style> argument can be either `shallow` or `deep`.  'shallow' "
-"threading makes every mail a reply to the head of the series, where the head "
-"is chosen from the cover letter, the `--in-reply-to`, and the first patch "
-"mail, in this order.  'deep' threading makes every mail a reply to the "
-"previous one."
+"A `mark` command may optionally appear, requesting fast-import to save a "
+"reference to the newly created commit for future use by the frontend (see "
+"below for format).  It is very common for frontends to mark every commit "
+"they create, thereby allowing future branch creation from any imported "
+"commit."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:153
+#: en/git-fast-import.txt:416
 msgid ""
-"The default is `--no-thread`, unless the `format.thread` configuration is "
-"set.  If `--thread` is specified without a style, it defaults to the style "
-"specified by `format.thread` if any, or else `shallow`."
+"The `data` command following `committer` must supply the commit message (see "
+"below for `data` command syntax).  To import an empty commit message use a 0 "
+"length data.  Commit messages are free-form and are not interpreted by Git.  "
+"Currently they must be encoded in UTF-8, as fast-import does not permit "
+"other encodings to be specified."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:157
+#: en/git-fast-import.txt:424
 msgid ""
-"Beware that the default for 'git send-email' is to thread emails itself.  If "
-"you want `git format-patch` to take care of threading, you will want to "
-"ensure that threading is disabled for `git send-email`."
+"Zero or more `filemodify`, `filedelete`, `filecopy`, `filerename`, "
+"`filedeleteall` and `notemodify` commands may be included to update the "
+"contents of the branch prior to creating the commit.  These commands may be "
+"supplied in any order.  However it is recommended that a `filedeleteall` "
+"command precede all `filemodify`, `filecopy`, `filerename` and `notemodify` "
+"commands in the same commit, as `filedeleteall` wipes the branch clean (see "
+"below)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:158
+#. type: Plain text
+#: en/git-fast-import.txt:426 en/git-fast-import.txt:819
+#: en/git-fast-import.txt:931
+msgid "The `LF` after the command is optional (it used to be required)."
+msgstr ""
+
+#. type: Title ^
+#: en/git-fast-import.txt:428
 #, no-wrap
-msgid "--in-reply-to=Message-Id"
+msgid "`author`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:162
+#: en/git-fast-import.txt:434
 msgid ""
-"Make the first mail (or all the mails with `--no-thread`) appear as a reply "
-"to the given Message-Id, which avoids breaking threads to provide a new "
-"patch series."
+"An `author` command may optionally appear, if the author information might "
+"differ from the committer information.  If `author` is omitted then fast-"
+"import will automatically use the committer's information for the author "
+"portion of the commit.  See below for a description of the fields in "
+"`author`, as they are identical to `committer`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:163
+#. type: Title ^
+#: en/git-fast-import.txt:436
 #, no-wrap
-msgid "--ignore-if-in-upstream"
+msgid "`committer`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:169
+#: en/git-fast-import.txt:439
 msgid ""
-"Do not include a patch that matches a commit in <until>..<since>.  This will "
-"examine all patches reachable from <since> but not from <until> and compare "
-"them with the patches being generated, and any patch that matches is "
-"ignored."
+"The `committer` command indicates who made this commit, and when they made "
+"it."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:170
-#, no-wrap
-msgid "--subject-prefix=<Subject-Prefix>"
+#. type: Plain text
+#: en/git-fast-import.txt:447
+msgid ""
+"Here `<name>` is the person's display name (for example ``Com M Itter'') and "
+"`<email>` is the person's email address (``\\cm@example.com'').  `LT` and "
+"`GT` are the literal less-than (\\x3c)  and greater-than (\\x3e) symbols.  "
+"These are required to delimit the email address from the other fields in the "
+"line.  Note that `<name>` and `<email>` are free-form and may contain any "
+"sequence of bytes, except `LT`, `GT` and `LF`.  `<name>` is typically UTF-8 "
+"encoded."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:175
+#: en/git-fast-import.txt:452
 msgid ""
-"Instead of the standard '[PATCH]' prefix in the subject line, instead use "
-"'[<Subject-Prefix>]'. This allows for useful naming of a patch series, and "
-"can be combined with the `--numbered` option."
+"The time of the change is specified by `<when>` using the date format that "
+"was selected by the --date-format=<fmt> command-line option.  See ``Date "
+"Formats'' above for the set of supported formats, and their syntax."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:176
+#. type: Title ^
+#: en/git-fast-import.txt:454
 #, no-wrap
-msgid "--rfc"
+msgid "`from`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:180
+#: en/git-fast-import.txt:460
 msgid ""
-"Alias for `--subject-prefix=\"RFC PATCH\"`. RFC means \"Request For "
-"Comments\"; use this when sending an experimental patch for discussion "
-"rather than application."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-format-patch.txt:181
-#, no-wrap
-msgid "-v <n>"
+"The `from` command is used to specify the commit to initialize this branch "
+"from.  This revision will be the first ancestor of the new commit.  The "
+"state of the tree built at this commit will begin with the state at the "
+"`from` commit, and be altered by the content modifications in this commit."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:182
-#, no-wrap
-msgid "--reroll-count=<n>"
+#. type: Plain text
+#: en/git-fast-import.txt:470
+msgid ""
+"Omitting the `from` command in the first commit of a new branch will cause "
+"fast-import to create that commit with no ancestor. This tends to be desired "
+"only for the initial commit of a project.  If the frontend creates all files "
+"from scratch when making a new branch, a `merge` command may be used instead "
+"of `from` to start the commit with an empty tree.  Omitting the `from` "
+"command on existing branches is usually desired, as the current commit on "
+"that branch is automatically assumed to be the first ancestor of the new "
+"commit."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:189
+#: en/git-fast-import.txt:473
 msgid ""
-"Mark the series as the <n>-th iteration of the topic. The output filenames "
-"have `v<n>` prepended to them, and the subject prefix (\"PATCH\" by default, "
-"but configurable via the `--subject-prefix` option) has ` v<n>` appended to "
-"it.  E.g.  `--reroll-count=4` may produce `v4-0001-add-makefile.patch` file "
-"that has \"Subject: [PATCH v4 1/20] Add makefile\" in it."
+"As `LF` is not valid in a Git refname or SHA-1 expression, no quoting or "
+"escaping syntax is supported within `<commit-ish>`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:190
-#, no-wrap
-msgid "--to=<email>"
+#. type: Plain text
+#: en/git-fast-import.txt:475
+msgid "Here `<commit-ish>` is any of the following:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:195
+#: en/git-fast-import.txt:479
 msgid ""
-"Add a `To:` header to the email headers. This is in addition to any "
-"configured headers, and may be used multiple times.  The negated form "
-"`--no-to` discards all `To:` headers added so far (from config or command "
-"line)."
+"The name of an existing branch already in fast-import's internal branch "
+"table.  If fast-import doesn't know the name, it's treated as a SHA-1 "
+"expression."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:196
-#, no-wrap
-msgid "--cc=<email>"
+#. type: Plain text
+#: en/git-fast-import.txt:481
+msgid "A mark reference, `:<idnum>`, where `<idnum>` is the mark number."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:201
+#: en/git-fast-import.txt:487
 msgid ""
-"Add a `Cc:` header to the email headers. This is in addition to any "
-"configured headers, and may be used multiple times.  The negated form "
-"`--no-cc` discards all `Cc:` headers added so far (from config or command "
-"line)."
+"The reason fast-import uses `:` to denote a mark reference is this character "
+"is not legal in a Git branch name.  The leading `:` makes it easy to "
+"distinguish between the mark 42 (`:42`) and the branch 42 (`42` or `refs/"
+"heads/42`), or an abbreviated SHA-1 which happened to consist only of "
+"base-10 digits."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:202
-#, no-wrap
-msgid "--from"
+#. type: Plain text
+#: en/git-fast-import.txt:489
+msgid "Marks must be declared (via `mark`) before they can be used."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:203
-#, no-wrap
-msgid "--from=<ident>"
+#. type: Plain text
+#: en/git-fast-import.txt:491
+msgid "A complete 40 byte or abbreviated commit SHA-1 in hex."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:209
+#: en/git-fast-import.txt:494
 msgid ""
-"Use `ident` in the `From:` header of each commit email. If the author ident "
-"of the commit is not textually identical to the provided `ident`, place a "
-"`From:` header in the body of the message with the original author. If no "
-"`ident` is given, use the committer ident."
+"Any valid Git SHA-1 expression that resolves to a commit.  See ``SPECIFYING "
+"REVISIONS'' in linkgit:gitrevisions[7] for details."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:216
+#: en/git-fast-import.txt:497
 msgid ""
-"Note that this option is only useful if you are actually sending the emails "
-"and want to identify yourself as the sender, but retain the original author "
-"(and `git am` will correctly pick up the in-body header). Note also that "
-"`git send-email` already handles this transformation for you, and this "
-"option should not be used if you are feeding the result to `git send-email`."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-format-patch.txt:217
-#, no-wrap
-msgid "--add-header=<header>"
+"The special null SHA-1 (40 zeros) specifies that the branch is to be removed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:224
+#: en/git-fast-import.txt:500
 msgid ""
-"Add an arbitrary header to the email headers.  This is in addition to any "
-"configured headers, and may be used multiple times.  For example, "
-"`--add-header=\"Organization: git-foo\"`.  The negated form "
-"`--no-add-header` discards *all* (`To:`, `Cc:`, and custom) headers added so "
-"far from config or command line."
+"The special case of restarting an incremental import from the current branch "
+"value should be written as:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:225
+#. type: delimited block -
+#: en/git-fast-import.txt:502
 #, no-wrap
-msgid "--[no-]cover-letter"
+msgid "\tfrom refs/heads/branch^0\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:229
+#: en/git-fast-import.txt:509
 msgid ""
-"In addition to the patches, generate a cover letter file containing the "
-"branch description, shortlog and the overall diffstat.  You can fill in a "
-"description in the file before sending it out."
+"The `^0` suffix is necessary as fast-import does not permit a branch to "
+"start from itself, and the branch is created in memory before the `from` "
+"command is even read from the input.  Adding `^0` will force fast-import to "
+"resolve the commit through Git's revision parsing library, rather than its "
+"internal branch table, thereby loading in the existing value of the branch."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:230
+#. type: Title ^
+#: en/git-fast-import.txt:511
 #, no-wrap
-msgid "--notes[=<ref>]"
+msgid "`merge`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:233
+#: en/git-fast-import.txt:519
 msgid ""
-"Append the notes (see linkgit:git-notes[1]) for the commit after the "
-"three-dash line."
+"Includes one additional ancestor commit.  The additional ancestry link does "
+"not change the way the tree state is built at this commit.  If the `from` "
+"command is omitted when creating a new branch, the first `merge` commit will "
+"be the first ancestor of the current commit, and the branch will start out "
+"with no files.  An unlimited number of `merge` commands per commit are "
+"permitted by fast-import, thereby establishing an n-way merge."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:241
+#: en/git-fast-import.txt:522
 msgid ""
-"The expected use case of this is to write supporting explanation for the "
-"commit that does not belong to the commit log message proper, and include it "
-"with the patch submission. While one can simply write these explanations "
-"after `format-patch` has run but before sending, keeping them as Git notes "
-"allows them to be maintained between versions of the patch series (but see "
-"the discussion of the `notes.rewrite` configuration options in "
-"linkgit:git-notes[1] to use this workflow)."
+"Here `<commit-ish>` is any of the commit specification expressions also "
+"accepted by `from` (see above)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:242
+#. type: Title ^
+#: en/git-fast-import.txt:524
 #, no-wrap
-msgid "--[no-]signature=<signature>"
+msgid "`filemodify`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:247
+#: en/git-fast-import.txt:528
 msgid ""
-"Add a signature to each message produced. Per RFC 3676 the signature is "
-"separated from the body by a line with '-- ' on it. If the signature option "
-"is omitted the signature defaults to the Git version number."
+"Included in a `commit` command to add a new file or change the content of an "
+"existing file.  This command has two different means of specifying the "
+"content of the file."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-format-patch.txt:248
+#: en/git-fast-import.txt:529 en/git-fast-import.txt:696
 #, no-wrap
-msgid "--signature-file=<file>"
+msgid "External data format"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:250
-msgid "Works just like --signature except the signature is read from a file."
+#: en/git-fast-import.txt:532
+msgid ""
+"The data content for the file was already supplied by a prior `blob` "
+"command.  The frontend just needs to connect it."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:251
+#. type: delimited block .
+#: en/git-fast-import.txt:535
 #, no-wrap
-msgid "--suffix=.<sfx>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-format-patch.txt:256
-msgid ""
-"Instead of using `.patch` as the suffix for generated filenames, use "
-"specified suffix.  A common alternative is `--suffix=.txt`.  Leaving this "
-"empty will remove the `.patch` suffix."
+msgid "\t'M' SP <mode> SP <dataref> SP <path> LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:259
+#: en/git-fast-import.txt:542
 msgid ""
-"Note that the leading character does not have to be a dot; for example, you "
-"can use `--suffix=-patch` to get `0001-description-of-my-change-patch`."
-msgstr ""
-
-#. type: Plain text
-#: en/git-format-patch.txt:263
-msgid "Do not print the names of the generated files to standard output."
+"Here usually `<dataref>` must be either a mark reference (`:<idnum>`)  set "
+"by a prior `blob` command, or a full 40-byte SHA-1 of an existing Git blob "
+"object.  If `<mode>` is `040000`` then `<dataref>` must be the full 40-byte "
+"SHA-1 of an existing Git tree object or a mark reference set with `--import-"
+"marks`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-format-patch.txt:264
+#: en/git-fast-import.txt:543 en/git-fast-import.txt:709
 #, no-wrap
-msgid "--no-binary"
+msgid "Inline data format"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:269
+#: en/git-fast-import.txt:547
 msgid ""
-"Do not output contents of changes in binary files, instead display a notice "
-"that those files changed.  Patches generated using this option cannot be "
-"applied properly, but they are still useful for code review."
+"The data content for the file has not been supplied yet.  The frontend wants "
+"to supply it as part of this modify command."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:270
+#. type: delimited block .
+#: en/git-fast-import.txt:551
 #, no-wrap
-msgid "--zero-commit"
+msgid ""
+"\t'M' SP <mode> SP 'inline' SP <path> LF\n"
+"\tdata\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:273
-msgid ""
-"Output an all-zero hash in each patch's From header instead of the hash of "
-"the commit."
+#: en/git-fast-import.txt:554 en/git-fast-import.txt:720
+msgid "See below for a detailed description of the `data` command."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-format-patch.txt:274
-#, no-wrap
-msgid "--base=<commit>"
+#. type: Plain text
+#: en/git-fast-import.txt:557
+msgid ""
+"In both formats `<mode>` is the type of file entry, specified in octal.  Git "
+"only supports the following modes:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:278
+#: en/git-fast-import.txt:561
 msgid ""
-"Record the base tree information to identify the state the patch series "
-"applies to.  See the BASE TREE INFORMATION section below for details."
+"`100644` or `644`: A normal (not-executable) file.  The majority of files in "
+"most projects use this mode.  If in doubt, this is what you want."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:285
-msgid ""
-"Treat the revision argument as a <revision range>, even if it is just a "
-"single commit (that would normally be treated as a <since>).  Note that root "
-"commits included in the specified range are always formatted as creation "
-"patches, independently of this flag."
+#: en/git-fast-import.txt:562
+msgid "`100755` or `755`: A normal, but executable, file."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:292
-msgid ""
-"You can specify extra mail header lines to be added to each message, "
-"defaults for the subject prefix and file suffix, number patches when "
-"outputting more than one patch, add \"To\" or \"Cc:\" headers, configure "
-"attachments, and sign off patches with configuration variables."
+#: en/git-fast-import.txt:563
+msgid "`120000`: A symlink, the content of the file will be the link target."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-format-patch.txt:304
-#, no-wrap
+#. type: Plain text
+#: en/git-fast-import.txt:566
 msgid ""
-"[format]\n"
-"\theaders = \"Organization: git-foo\\n\"\n"
-"\tsubjectPrefix = CHANGE\n"
-"\tsuffix = .txt\n"
-"\tnumbered = auto\n"
-"\tto = <email>\n"
-"\tcc = <email>\n"
-"\tattach [ = mime-boundary-string ]\n"
-"\tsignOff = true\n"
-"\tcoverletter = auto\n"
+"`160000`: A gitlink, SHA-1 of the object refers to a commit in another "
+"repository. Git links can only be specified by SHA or through a commit mark. "
+"They are used to implement submodules."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:313
+#: en/git-fast-import.txt:568
 msgid ""
-"The patch produced by 'git format-patch' is in UNIX mailbox format, with a "
-"fixed \"magic\" time stamp to indicate that the file is output from "
-"format-patch rather than a real mailbox, like so:"
+"`040000`: A subdirectory.  Subdirectories can only be specified by SHA or "
+"through a tree mark set with `--import-marks`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-format-patch.txt:323
-#, no-wrap
+#. type: Plain text
+#: en/git-fast-import.txt:571
 msgid ""
-"From 8f72bad1baf19a53459661343e21d6491c3908d3 Mon Sep 17 00:00:00 2001\n"
-"From: Tony Luck <tony.luck@intel.com>\n"
-"Date: Tue, 13 Jul 2010 11:42:54 -0700\n"
-"Subject: [PATCH] "
-"=?UTF-8?q?[IA64]=20Put=20ia64=20config=20files=20on=20the=20?=\n"
-" =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig=20diet?=\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
+"In both formats `<path>` is the complete path of the file to be added (if "
+"not already existing) or modified (if already existing)."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-format-patch.txt:326
-#, no-wrap
+#. type: Plain text
+#: en/git-fast-import.txt:575
 msgid ""
-"arch/arm config files were slimmed down using a python script\n"
-"(See commit c2330e286f68f1c408b4aa6515ba49d57f05beae comment)\n"
+"A `<path>` string must use UNIX-style directory separators (forward slash `/"
+"`), may contain any byte other than `LF`, and must not start with double "
+"quote (`\"`)."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-format-patch.txt:329
-#, no-wrap
+#. type: Plain text
+#: en/git-fast-import.txt:582
 msgid ""
-"Do the same for ia64 so we can have sleek & trim looking\n"
-"...\n"
+"A path can use C-style string quoting; this is accepted in all cases and "
+"mandatory if the filename starts with double quote or contains `LF`. In C-"
+"style quoting, the complete name should be surrounded with double quotes, "
+"and any `LF`, backslash, or double quote characters must be escaped by "
+"preceding them with a backslash (e.g., `\"path/with\\n, \\\\ and \\\" in it"
+"\"`)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:337
-msgid ""
-"Typically it will be placed in a MUA's drafts folder, edited to add timely "
-"commentary that should not go in the changelog after the three dashes, and "
-"then sent as a message whose body, in our example, starts with \"arch/arm "
-"config files were...\".  On the receiving end, readers can save interesting "
-"patches in a UNIX mailbox and apply them with linkgit:git-am[1]."
+#: en/git-fast-import.txt:584
+msgid "The value of `<path>` must be in canonical form. That is it must not:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:343
-msgid ""
-"When a patch is part of an ongoing discussion, the patch generated by 'git "
-"format-patch' can be tweaked to take advantage of the 'git am --scissors' "
-"feature.  After your response to the discussion comes a line that consists "
-"solely of \"`-- >8 --`\" (scissors and perforation), followed by the patch "
-"with unnecessary header fields removed:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-format-patch.txt:347
-#, no-wrap
-msgid ""
-"...\n"
-"> So we should do such-and-such.\n"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-format-patch.txt:349
-#, no-wrap
-msgid "Makes sense to me.  How about this patch?\n"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-format-patch.txt:352
-#, no-wrap
-msgid ""
-"-- >8 --\n"
-"Subject: [IA64] Put ia64 config files on the Uwe Kleine-Kì² nig diet\n"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-format-patch.txt:355
-#, no-wrap
-msgid ""
-"arch/arm config files were slimmed down using a python script\n"
-"...\n"
+#: en/git-fast-import.txt:586
+msgid "contain an empty directory component (e.g. `foo//bar` is invalid),"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:363
-msgid ""
-"When sending a patch this way, most often you are sending your own patch, so "
-"in addition to the \"`From $SHA1 $magic_timestamp`\" marker you should omit "
-"`From:` and `Date:` lines from the patch file.  The patch title is likely to "
-"be different from the subject of the discussion the patch is in response to, "
-"so it is likely that you would want to keep the Subject: line, like the "
-"example above."
+#: en/git-fast-import.txt:587
+msgid "end with a directory separator (e.g. `foo/` is invalid),"
 msgstr ""
 
-#. type: Title ~
-#: en/git-format-patch.txt:365
-#, no-wrap
-msgid "Checking for patch corruption"
+#. type: Plain text
+#: en/git-fast-import.txt:588
+msgid "start with a directory separator (e.g. `/foo` is invalid),"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:368
+#: en/git-fast-import.txt:590
 msgid ""
-"Many mailers if not set up properly will corrupt whitespace.  Here are two "
-"common types of corruption:"
+"contain the special component `.` or `..` (e.g. `foo/./bar` and `foo/../bar` "
+"are invalid)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:370
-msgid "Empty context lines that do not have _any_ whitespace."
+#: en/git-fast-import.txt:592
+msgid "The root of the tree can be represented by an empty string as `<path>`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:373
-msgid "Non-empty context lines that have one extra whitespace at the beginning."
+#: en/git-fast-import.txt:594
+msgid "It is recommended that `<path>` always be encoded using UTF-8."
 msgstr ""
 
-#. type: Plain text
-#: en/git-format-patch.txt:375
-msgid "One way to test if your MUA is set up correctly is:"
+#. type: Title ^
+#: en/git-fast-import.txt:596
+#, no-wrap
+msgid "`filedelete`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:379
+#: en/git-fast-import.txt:602
 msgid ""
-"Send the patch to yourself, exactly the way you would, except with To: and "
-"Cc: lines that do not contain the list and maintainer address."
+"Included in a `commit` command to remove a file or recursively delete an "
+"entire directory from the branch.  If the file or directory removal makes "
+"its parent directory empty, the parent directory will be automatically "
+"removed too.  This cascades up the tree until the first non-empty directory "
+"or the root is reached."
 msgstr ""
 
-#. type: Plain text
-#: en/git-format-patch.txt:382
-msgid "Save that patch to a file in UNIX mailbox format.  Call it a.patch, say."
+#. type: delimited block .
+#: en/git-fast-import.txt:605
+#, no-wrap
+msgid "\t'D' SP <path> LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:384
-msgid "Apply it:"
+#: en/git-fast-import.txt:610
+msgid ""
+"here `<path>` is the complete path of the file or subdirectory to be removed "
+"from the branch.  See `filemodify` above for a detailed description of "
+"`<path>`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-format-patch.txt:389
+#. type: Title ^
+#: en/git-fast-import.txt:612
 #, no-wrap
-msgid ""
-"$ git fetch <project> master:test-apply\n"
-"$ git checkout test-apply\n"
-"$ git reset --hard\n"
-"$ git am a.patch\n"
+msgid "`filecopy`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:391
-msgid "If it does not apply correctly, there can be various reasons."
+#: en/git-fast-import.txt:617
+msgid ""
+"Recursively copies an existing file or subdirectory to a different location "
+"within the branch.  The existing file or directory must exist.  If the "
+"destination exists it will be completely replaced by the content copied from "
+"the source."
 msgstr ""
 
-#. type: Plain text
-#: en/git-format-patch.txt:396
-msgid ""
-"The patch itself does not apply cleanly.  That is _bad_ but does not have "
-"much to do with your MUA.  You might want to rebase the patch with "
-"linkgit:git-rebase[1] before regenerating it in this case."
+#. type: delimited block .
+#: en/git-fast-import.txt:620
+#, no-wrap
+msgid "\t'C' SP <path> SP <path> LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:401
+#: en/git-fast-import.txt:626 en/git-fast-import.txt:646
 msgid ""
-"The MUA corrupted your patch; \"am\" would complain that the patch does not "
-"apply.  Look in the .git/rebase-apply/ subdirectory and see what 'patch' "
-"file contains and check for the common corruption patterns mentioned above."
+"here the first `<path>` is the source location and the second `<path>` is "
+"the destination.  See `filemodify` above for a detailed description of what "
+"`<path>` may look like.  To use a source path that contains SP the path must "
+"be quoted."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:409
+#: en/git-fast-import.txt:631
 msgid ""
-"While at it, check the 'info' and 'final-commit' files as well.  If what is "
-"in 'final-commit' is not exactly what you would want to see in the commit "
-"log message, it is very likely that the receiver would end up hand editing "
-"the log message when applying your patch.  Things like \"Hi, this is my "
-"first patch.\\n\" in the patch e-mail should come after the three-dash line "
-"that signals the end of the commit message."
+"A `filecopy` command takes effect immediately.  Once the source location has "
+"been copied to the destination any future commands applied to the source "
+"location will not impact the destination of the copy."
 msgstr ""
 
-#. type: Title -
-#: en/git-format-patch.txt:411
+#. type: Title ^
+#: en/git-fast-import.txt:633
 #, no-wrap
-msgid "MUA-SPECIFIC HINTS"
+msgid "`filerename`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:414
+#: en/git-fast-import.txt:637
 msgid ""
-"Here are some hints on how to successfully submit patches inline using "
-"various mailers."
+"Renames an existing file or subdirectory to a different location within the "
+"branch.  The existing file or directory must exist. If the destination "
+"exists it will be replaced by the source directory."
 msgstr ""
 
-#. type: Title ~
-#: en/git-format-patch.txt:416
+#. type: delimited block .
+#: en/git-fast-import.txt:640
 #, no-wrap
-msgid "GMail"
+msgid "\t'R' SP <path> SP <path> LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:422
+#: en/git-fast-import.txt:651
 msgid ""
-"GMail does not have any way to turn off line wrapping in the web interface, "
-"so it will mangle any emails that you send.  You can however use \"git "
-"send-email\" and send your patches through the GMail SMTP server, or use any "
-"IMAP email client to connect to the google IMAP server and forward the "
-"emails through that."
+"A `filerename` command takes effect immediately.  Once the source location "
+"has been renamed to the destination any future commands applied to the "
+"source location will create new files there and not impact the destination "
+"of the rename."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:425
+#: en/git-fast-import.txt:660
 msgid ""
-"For hints on using 'git send-email' to send your patches through the GMail "
-"SMTP server, see the EXAMPLE section of linkgit:git-send-email[1]."
+"Note that a `filerename` is the same as a `filecopy` followed by a "
+"`filedelete` of the source location.  There is a slight performance "
+"advantage to using `filerename`, but the advantage is so small that it is "
+"never worth trying to convert a delete/add pair in source material into a "
+"rename for fast-import.  This `filerename` command is provided just to "
+"simplify frontends that already have rename information and don't want "
+"bother with decomposing it into a `filecopy` followed by a `filedelete`."
+msgstr ""
+
+#. type: Title ^
+#: en/git-fast-import.txt:662
+#, no-wrap
+msgid "`filedeleteall`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:428
+#: en/git-fast-import.txt:667
 msgid ""
-"For hints on submission using the IMAP interface, see the EXAMPLE section of "
-"linkgit:git-imap-send[1]."
+"Included in a `commit` command to remove all files (and also all "
+"directories) from the branch.  This command resets the internal branch "
+"structure to have no files in it, allowing the frontend to subsequently add "
+"all interesting files from scratch."
 msgstr ""
 
-#. type: Title ~
-#: en/git-format-patch.txt:430
+#. type: delimited block .
+#: en/git-fast-import.txt:670
 #, no-wrap
-msgid "Thunderbird"
+msgid "\t'deleteall' LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:434
+#: en/git-fast-import.txt:676
 msgid ""
-"By default, Thunderbird will both wrap emails as well as flag them as being "
-"'format=flowed', both of which will make the resulting email unusable by "
-"Git."
+"This command is extremely useful if the frontend does not know (or does not "
+"care to know) what files are currently on the branch, and therefore cannot "
+"generate the proper `filedelete` commands to update the content."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:438
+#: en/git-fast-import.txt:684
 msgid ""
-"There are three different approaches: use an add-on to turn off line wraps, "
-"configure Thunderbird to not mangle patches, or use an external editor to "
-"keep Thunderbird from mangling the patches."
+"Issuing a `filedeleteall` followed by the needed `filemodify` commands to "
+"set the correct content will produce the same results as sending only the "
+"needed `filemodify` and `filedelete` commands.  The `filedeleteall` approach "
+"may however require fast-import to use slightly more memory per active "
+"branch (less than 1 MiB for even most large projects); so frontends that can "
+"easily obtain only the affected paths for a commit are encouraged to do so."
 msgstr ""
 
 #. type: Title ^
-#: en/git-format-patch.txt:440
+#: en/git-fast-import.txt:686
 #, no-wrap
-msgid "Approach #1 (add-on)"
+msgid "`notemodify`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:448
+#: en/git-fast-import.txt:695
 msgid ""
-"Install the Toggle Word Wrap add-on that is available from "
-"https://addons.mozilla.org/thunderbird/addon/toggle-word-wrap/ It adds a "
-"menu entry \"Enable Word Wrap\" in the composer's \"Options\" menu that you "
-"can tick off. Now you can compose the message as you otherwise do (cut + "
-"paste, 'git format-patch' | 'git imap-send', etc), but you have to insert "
-"line breaks manually in any text that you type."
-msgstr ""
-
-#. type: Title ^
-#: en/git-format-patch.txt:450
-#, no-wrap
-msgid "Approach #2 (configuration)"
-msgstr ""
-
-#. type: Plain text
-#: en/git-format-patch.txt:452
-msgid "Three steps:"
+"Included in a `commit` `<notes_ref>` command to add a new note annotating a "
+"`<commit-ish>` or change this annotation contents.  Internally it is similar "
+"to filemodify 100644 on `<commit-ish>` path (maybe split into "
+"subdirectories). It's not advised to use any other commands to write to the "
+"`<notes_ref>` tree except `filedeleteall` to delete all existing notes in "
+"this tree.  This command has two different means of specifying the content "
+"of the note."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:456
+#: en/git-fast-import.txt:700
 msgid ""
-"Configure your mail server composition as plain text: Edit...Account "
-"Settings...Composition & Addressing, uncheck \"Compose Messages in HTML\"."
+"The data content for the note was already supplied by a prior `blob` "
+"command.  The frontend just needs to connect it to the commit that is to be "
+"annotated."
 msgstr ""
 
-#. type: Plain text
-#: en/git-format-patch.txt:458
-msgid "Configure your general composition window to not wrap."
+#. type: delimited block .
+#: en/git-fast-import.txt:703
+#, no-wrap
+msgid "\t'N' SP <dataref> SP <commit-ish> LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:461
+#: en/git-fast-import.txt:708
 msgid ""
-"In Thunderbird 2: Edit..Preferences..Composition, wrap plain text messages "
-"at 0"
+"Here `<dataref>` can be either a mark reference (`:<idnum>`)  set by a prior "
+"`blob` command, or a full 40-byte SHA-1 of an existing Git blob object."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:467
+#: en/git-fast-import.txt:713
 msgid ""
-"In Thunderbird 3: Edit..Preferences..Advanced..Config Editor.  Search for "
-"\"mail.wrap_long_lines\".  Toggle it to make sure it is set to "
-"`false`. Also, search for \"mailnews.wraplength\" and set the value to 0."
+"The data content for the note has not been supplied yet.  The frontend wants "
+"to supply it as part of this modify command."
 msgstr ""
 
-#. type: Plain text
-#: en/git-format-patch.txt:472
+#. type: delimited block .
+#: en/git-fast-import.txt:717
+#, no-wrap
 msgid ""
-"Disable the use of format=flowed: Edit..Preferences..Advanced..Config "
-"Editor.  Search for \"mailnews.send_plaintext_flowed\".  Toggle it to make "
-"sure it is set to `false`."
+"\t'N' SP 'inline' SP <commit-ish> LF\n"
+"\tdata\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:476
+#: en/git-fast-import.txt:723
 msgid ""
-"After that is done, you should be able to compose email as you otherwise "
-"would (cut + paste, 'git format-patch' | 'git imap-send', etc), and the "
-"patches will not be mangled."
+"In both formats `<commit-ish>` is any of the commit specification "
+"expressions also accepted by `from` (see above)."
 msgstr ""
 
-#. type: Title ^
-#: en/git-format-patch.txt:478
+#. type: Title ~
+#: en/git-fast-import.txt:725
 #, no-wrap
-msgid "Approach #3 (external editor)"
+msgid "`mark`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:483
+#: en/git-fast-import.txt:731
 msgid ""
-"The following Thunderbird extensions are needed: AboutConfig from "
-"http://aboutconfig.mozdev.org/ and External Editor from "
-"http://globs.org/articles.php?lng=en&pg=8"
+"Arranges for fast-import to save a reference to the current object, allowing "
+"the frontend to recall this object at a future point in time, without "
+"knowing its SHA-1.  Here the current object is the object creation command "
+"the `mark` command appears within.  This can be `commit`, `tag`, and `blob`, "
+"but `commit` is the most common usage."
 msgstr ""
 
-#. type: Plain text
-#: en/git-format-patch.txt:485
-msgid "Prepare the patch as a text file using your method of choice."
+#. type: delimited block .
+#: en/git-fast-import.txt:734
+#, no-wrap
+msgid "\t'mark' SP ':' <idnum> LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:490
+#: en/git-fast-import.txt:740
 msgid ""
-"Before opening a compose window, use Edit->Account Settings to uncheck the "
-"\"Compose messages in HTML format\" setting in the \"Composition & "
-"Addressing\" panel of the account to be used to send the patch."
+"where `<idnum>` is the number assigned by the frontend to this mark.  The "
+"value of `<idnum>` is expressed as an ASCII decimal integer.  The value 0 is "
+"reserved and cannot be used as a mark.  Only values greater than or equal to "
+"1 may be used as marks."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:494
+#: en/git-fast-import.txt:744
 msgid ""
-"In the main Thunderbird window, 'before' you open the compose window for the "
-"patch, use Tools->about:config to set the following to the indicated values:"
+"New marks are created automatically.  Existing marks can be moved to another "
+"object simply by reusing the same `<idnum>` in another `mark` command."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-format-patch.txt:498
+#. type: Title ~
+#: en/git-fast-import.txt:746
 #, no-wrap
-msgid ""
-"\tmailnews.send_plaintext_flowed  => false\n"
-"\tmailnews.wraplength             => 0\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-format-patch.txt:501
-msgid "Open a compose window and click the external editor icon."
+msgid "`original-oid`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:504
+#: en/git-fast-import.txt:751
 msgid ""
-"In the external editor window, read in the patch file and exit the editor "
-"normally."
+"Provides the name of the object in the original source control system.  fast-"
+"import will simply ignore this directive, but filter processes which operate "
+"on and modify the stream before feeding to fast-import may have uses for "
+"this information"
 msgstr ""
 
-#. type: Plain text
-#: en/git-format-patch.txt:507
-msgid ""
-"Side note: it may be possible to do step 2 with about:config and the "
-"following settings but no one's tried yet."
+#. type: delimited block .
+#: en/git-fast-import.txt:754
+#, no-wrap
+msgid "\t'original-oid' SP <object-identifier> LF\n"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-format-patch.txt:512
-#, no-wrap
-msgid ""
-"\tmail.html_compose                       => false\n"
-"\tmail.identity.default.compose_html      => false\n"
-"\tmail.identity.id?.compose_html          => false\n"
+#. type: Plain text
+#: en/git-fast-import.txt:757
+msgid "where `<object-identifer>` is any string not containing LF."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:517
+#: en/git-fast-import.txt:762
 msgid ""
-"There is a script in contrib/thunderbird-patch-inline which can help you "
-"include patches with Thunderbird in an easy way. To use it, do the steps "
-"above and then use the script as the external editor."
+"Creates an annotated tag referring to a specific commit.  To create "
+"lightweight (non-annotated) tags see the `reset` command below."
 msgstr ""
 
-#. type: Title ~
-#: en/git-format-patch.txt:519
+#. type: delimited block .
+#: en/git-fast-import.txt:769
 #, no-wrap
-msgid "KMail"
-msgstr ""
-
-#. type: Plain text
-#: en/git-format-patch.txt:521
-msgid "This should help you to submit patches inline using KMail."
+msgid ""
+"\t'tag' SP <name> LF\n"
+"\t'from' SP <commit-ish> LF\n"
+"\toriginal-oid?\n"
+"\t'tagger' (SP <name>)? SP LT <email> GT SP <when> LF\n"
+"\tdata\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:523
-msgid "Prepare the patch as a text file."
+#: en/git-fast-import.txt:772
+msgid "where `<name>` is the name of the tag to create."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:525
-msgid "Click on New Mail."
+#: en/git-fast-import.txt:777
+msgid ""
+"Tag names are automatically prefixed with `refs/tags/` when stored in Git, "
+"so importing the CVS branch symbol `RELENG-1_0-FINAL` would use just "
+"`RELENG-1_0-FINAL` for `<name>`, and fast-import will write the "
+"corresponding ref as `refs/tags/RELENG-1_0-FINAL`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:528
+#: en/git-fast-import.txt:781
 msgid ""
-"Go under \"Options\" in the Composer window and be sure that \"Word wrap\" "
-"is not set."
+"The value of `<name>` must be a valid refname in Git and therefore may "
+"contain forward slashes.  As `LF` is not valid in a Git refname, no quoting "
+"or escaping syntax is supported here."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:530
-msgid "Use Message -> Insert file... and insert the patch."
+#: en/git-fast-import.txt:784
+msgid ""
+"The `from` command is the same as in the `commit` command; see above for "
+"details."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:533
+#: en/git-fast-import.txt:787
 msgid ""
-"Back in the compose window: add whatever other text you wish to the message, "
-"complete the addressing and subject fields, and press send."
-msgstr ""
-
-#. type: Title -
-#: en/git-format-patch.txt:535
-#, no-wrap
-msgid "BASE TREE INFORMATION"
+"The `tagger` command uses the same format as `committer` within `commit`; "
+"again see above for details."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:544
+#: en/git-fast-import.txt:793
 msgid ""
-"The base tree information block is used for maintainers or third party "
-"testers to know the exact state the patch series applies to. It consists of "
-"the 'base commit', which is a well-known commit that is part of the stable "
-"part of the project history everybody else works off of, and zero or more "
-"'prerequisite patches', which are well-known patches in flight that is not "
-"yet part of the 'base commit' that need to be applied on top of 'base "
-"commit' in topological order before the patches can be applied."
+"The `data` command following `tagger` must supply the annotated tag message "
+"(see below for `data` command syntax).  To import an empty tag message use a "
+"0 length data.  Tag messages are free-form and are not interpreted by Git.  "
+"Currently they must be encoded in UTF-8, as fast-import does not permit "
+"other encodings to be specified."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:550
+#: en/git-fast-import.txt:801
 msgid ""
-"The 'base commit' is shown as \"base-commit: \" followed by the 40-hex of "
-"the commit object name.  A 'prerequisite patch' is shown as "
-"\"prerequisite-patch-id: \" followed by the 40-hex 'patch id', which can be "
-"obtained by passing the patch through the `git patch-id --stable` command."
+"Signing annotated tags during import from within fast-import is not "
+"supported.  Trying to include your own PGP/GPG signature is not recommended, "
+"as the frontend does not (easily) have access to the complete set of bytes "
+"which normally goes into such a signature.  If signing is required, create "
+"lightweight tags from within fast-import with `reset`, then create the "
+"annotated versions of those tags offline with the standard 'git tag' process."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:554
+#: en/git-fast-import.txt:808
 msgid ""
-"Imagine that on top of the public commit P, you applied well-known patches "
-"X, Y and Z from somebody else, and then built your three-patch series A, B, "
-"C, the history would be like:"
+"Creates (or recreates) the named branch, optionally starting from a specific "
+"revision.  The reset command allows a frontend to issue a new `from` command "
+"for an existing branch, or to create a new branch from an existing commit "
+"without creating a new commit."
 msgstr ""
 
 #. type: delimited block .
-#: en/git-format-patch.txt:557
+#: en/git-fast-import.txt:813
 #, no-wrap
-msgid "---P---X---Y---Z---A---B---C\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-format-patch.txt:564
 msgid ""
-"With `git format-patch --base=P -3 C` (or variants thereof, e.g. with "
-"`--cover-letter` of using `Z..C` instead of `-3 C` to specify the range), "
-"the base tree information block is shown at the end of the first message the "
-"command outputs (either the first patch, or the cover letter), like this:"
+"\t'reset' SP <ref> LF\n"
+"\t('from' SP <commit-ish> LF)?\n"
+"\tLF?\n"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-format-patch.txt:570
-#, no-wrap
+#. type: Plain text
+#: en/git-fast-import.txt:817
 msgid ""
-"base-commit: P\n"
-"prerequisite-patch-id: X\n"
-"prerequisite-patch-id: Y\n"
-"prerequisite-patch-id: Z\n"
+"For a detailed description of `<ref>` and `<commit-ish>` see above under "
+"`commit` and `from`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:573
-msgid "For non-linear topology, such as"
-msgstr ""
-
-#. type: delimited block .
-#: en/git-format-patch.txt:578
-#, no-wrap
+#: en/git-fast-import.txt:822
 msgid ""
-"---P---X---A---M---C\n"
-"    \\         /\n"
-"     Y---Z---B\n"
+"The `reset` command can also be used to create lightweight (non-annotated) "
+"tags.  For example:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-format-patch.txt:583
+#. type: delimited block =
+#: en/git-fast-import.txt:826
+#, no-wrap
 msgid ""
-"You can also use `git format-patch --base=P -3 C` to generate patches for A, "
-"B and C, and the identifiers for P, X, Y, Z are appended at the end of the "
-"first message."
+"\treset refs/tags/938\n"
+"\tfrom :938\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:589
+#: en/git-fast-import.txt:830
 msgid ""
-"If set `--base=auto` in cmdline, it will track base commit automatically, "
-"the base commit will be the merge base of tip commit of the remote-tracking "
-"branch and revision-range specified in cmdline.  For a local branch, you "
-"need to track a remote branch by `git branch --set-upstream-to` before using "
-"this option."
+"would create the lightweight tag `refs/tags/938` referring to whatever "
+"commit mark `:938` references."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:595
+#: en/git-fast-import.txt:837
 msgid ""
-"Extract commits between revisions R1 and R2, and apply them on top of the "
-"current branch using 'git am' to cherry-pick them:"
+"Requests writing one file revision to the packfile.  The revision is not "
+"connected to any commit; this connection must be formed in a subsequent "
+"`commit` command by referencing the blob through an assigned mark."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-format-patch.txt:598
+#. type: delimited block .
+#: en/git-fast-import.txt:843
 #, no-wrap
-msgid "$ git format-patch -k --stdout R1..R2 | git am -3 -k\n"
+msgid ""
+"\t'blob' LF\n"
+"\tmark?\n"
+"\toriginal-oid?\n"
+"\tdata\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:602
+#: en/git-fast-import.txt:849
 msgid ""
-"Extract all commits which are in the current branch but not in the origin "
-"branch:"
+"The mark command is optional here as some frontends have chosen to generate "
+"the Git SHA-1 for the blob on their own, and feed that directly to "
+"`commit`.  This is typically more work than it's worth however, as marks are "
+"inexpensive to store and easy to use."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-format-patch.txt:605
+#. type: Title ~
+#: en/git-fast-import.txt:851
 #, no-wrap
-msgid "$ git format-patch origin\n"
+msgid "`data`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:608
-msgid "For each commit a separate file is created in the current directory."
+#: en/git-fast-import.txt:858
+msgid ""
+"Supplies raw data (for use as blob/file content, commit messages, or "
+"annotated tag messages) to fast-import.  Data can be supplied using an exact "
+"byte count or delimited with a terminating line.  Real frontends intended "
+"for production-quality conversions should always use the exact byte count "
+"format, as it is more robust and performs better.  The delimited format is "
+"intended primarily for testing fast-import."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:611
+#: en/git-fast-import.txt:863
 msgid ""
-"Extract all commits that lead to 'origin' since the inception of the "
-"project:"
+"Comment lines appearing within the `<raw>` part of `data` commands are "
+"always taken to be part of the body of the data and are therefore never "
+"ignored by fast-import.  This makes it safe to import any file/message "
+"content whose lines might start with `#`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-format-patch.txt:614
+#. type: Labeled list
+#: en/git-fast-import.txt:864
 #, no-wrap
-msgid "$ git format-patch --root origin\n"
+msgid "Exact byte count format"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:617
-msgid "The same as the previous one:"
+#: en/git-fast-import.txt:866
+msgid "The frontend must specify the number of bytes of data."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-format-patch.txt:620
+#. type: delimited block .
+#: en/git-fast-import.txt:870
 #, no-wrap
-msgid "$ git format-patch -M -B origin\n"
+msgid ""
+"\t'data' SP <count> LF\n"
+"\t<raw> LF?\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:627
+#: en/git-fast-import.txt:876
 msgid ""
-"Additionally, it detects and handles renames and complete rewrites "
-"intelligently to produce a renaming patch.  A renaming patch reduces the "
-"amount of text output, and generally makes it easier to review.  Note that "
-"non-Git \"patch\" programs won't understand renaming patches, so use it only "
-"when you know the recipient uses Git to apply your patch."
+"where `<count>` is the exact number of bytes appearing within `<raw>`.  The "
+"value of `<count>` is expressed as an ASCII decimal integer.  The `LF` on "
+"either side of `<raw>` is not included in `<count>` and will not be included "
+"in the imported data."
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:630
+#: en/git-fast-import.txt:881
 msgid ""
-"Extract three topmost commits from the current branch and format them as "
-"e-mailable patches:"
+"The `LF` after `<raw>` is optional (it used to be required) but "
+"recommended.  Always including it makes debugging a fast-import stream "
+"easier as the next command always starts in column 0 of the next line, even "
+"if `<raw>` did not end with an `LF`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-format-patch.txt:633
+#. type: Labeled list
+#: en/git-fast-import.txt:882
 #, no-wrap
-msgid "$ git format-patch -3\n"
+msgid "Delimited format"
 msgstr ""
 
 #. type: Plain text
-#: en/git-format-patch.txt:638
-msgid "linkgit:git-am[1], linkgit:git-send-email[1]"
+#: en/git-fast-import.txt:887
+msgid ""
+"A delimiter string is used to mark the end of the data.  fast-import will "
+"compute the length by searching for the delimiter.  This format is primarily "
+"useful for testing and is not recommended for real data."
 msgstr ""
 
-#. type: Title =
-#: en/git-fsck-objects.txt:2
+#. type: delimited block .
+#: en/git-fast-import.txt:893
 #, no-wrap
-msgid "git-fsck-objects(1)"
+msgid ""
+"\t'data' SP '<<' <delim> LF\n"
+"\t<raw> LF\n"
+"\t<delim> LF\n"
+"\tLF?\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck-objects.txt:7
+#: en/git-fast-import.txt:901
 msgid ""
-"git-fsck-objects - Verifies the connectivity and validity of the objects in "
-"the database"
+"where `<delim>` is the chosen delimiter string.  The string `<delim>` must "
+"not appear on a line by itself within `<raw>`, as otherwise fast-import will "
+"think the data ends earlier than it really does.  The `LF` immediately "
+"trailing `<raw>` is part of `<raw>`.  This is one of the limitations of the "
+"delimited format, it is impossible to supply a data chunk which does not "
+"have an LF as its last byte."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck-objects.txt:13
-#, no-wrap
-msgid "'git fsck-objects' ...\n"
+#: en/git-fast-import.txt:903
+msgid "The `LF` after `<delim> LF` is optional (it used to be required)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck-objects.txt:19
+#: en/git-fast-import.txt:908
 msgid ""
-"This is a synonym for linkgit:git-fsck[1].  Please refer to the "
-"documentation of that command."
+"Forces fast-import to close the current packfile, start a new one, and to "
+"save out all current branch refs, tags and marks."
 msgstr ""
 
-#. type: Title =
-#: en/git-fsck.txt:2
+#. type: delimited block .
+#: en/git-fast-import.txt:912
 #, no-wrap
-msgid "git-fsck(1)"
+msgid ""
+"\t'checkpoint' LF\n"
+"\tLF?\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:7
+#: en/git-fast-import.txt:918
 msgid ""
-"git-fsck - Verifies the connectivity and validity of the objects in the "
-"database"
+"Note that fast-import automatically switches packfiles when the current "
+"packfile reaches --max-pack-size, or 4 GiB, whichever limit is smaller.  "
+"During an automatic packfile switch fast-import does not update the branch "
+"refs, tags or marks."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:16
-#, no-wrap
+#: en/git-fast-import.txt:923
 msgid ""
-"'git fsck' [--tags] [--root] [--unreachable] [--cache] [--no-reflogs]\n"
-"\t [--[no-]full] [--strict] [--verbose] [--lost-found]\n"
-"\t [--[no-]dangling] [--[no-]progress] [--connectivity-only]\n"
-"\t [--[no-]name-objects] [<object>*]\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-fsck.txt:20 en/cmds-ancillaryinterrogators.txt:18
-msgid "Verifies the connectivity and validity of the objects in the database."
+"As a `checkpoint` can require a significant amount of CPU time and disk IO "
+"(to compute the overall pack SHA-1 checksum, generate the corresponding "
+"index file, and update the refs) it can easily take several minutes for a "
+"single `checkpoint` command to complete."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:25
-msgid "An object to treat as the head of an unreachability trace."
+#: en/git-fast-import.txt:929
+msgid ""
+"Frontends may choose to issue checkpoints during extremely large and long "
+"running imports, or when they need to allow another Git process access to a "
+"branch.  However given that a 30 GiB Subversion repository can be loaded "
+"into Git through fast-import in about 3 hours, explicit checkpointing may "
+"not be necessary."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:29
+#: en/git-fast-import.txt:938
 msgid ""
-"If no objects are given, 'git fsck' defaults to using the index file, all "
-"SHA-1 references in `refs` namespace, and all reflogs (unless --no-reflogs "
-"is given) as heads."
+"Causes fast-import to print the entire `progress` line unmodified to its "
+"standard output channel (file descriptor 1) when the command is processed "
+"from the input stream.  The command otherwise has no impact on the current "
+"import, or on any of fast-import's internal state."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fsck.txt:30
+#. type: delimited block .
+#: en/git-fast-import.txt:942
 #, no-wrap
-msgid "--unreachable"
+msgid ""
+"\t'progress' SP <any> LF\n"
+"\tLF?\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:33
+#: en/git-fast-import.txt:948
 msgid ""
-"Print out objects that exist but that aren't reachable from any of the "
-"reference nodes."
+"The `<any>` part of the command may contain any sequence of bytes that does "
+"not contain `LF`.  The `LF` after the command is optional.  Callers may wish "
+"to process the output through a tool such as sed to remove the leading part "
+"of the line, for example:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fsck.txt:34
+#. type: delimited block =
+#: en/git-fast-import.txt:951
 #, no-wrap
-msgid "--[no-]dangling"
+msgid "\tfrontend | git fast-import | sed 's/^progress //'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:37
+#: en/git-fast-import.txt:956
 msgid ""
-"Print objects that exist but that are never 'directly' used (default).  "
-"`--no-dangling` can be used to omit this information from the output."
-msgstr ""
-
-#. type: Plain text
-#: en/git-fsck.txt:40
-msgid "Report root nodes."
-msgstr ""
-
-#. type: Plain text
-#: en/git-fsck.txt:43
-msgid "Report tags."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-fsck.txt:44
-#, no-wrap
-msgid "--cache"
+"Placing a `progress` command immediately after a `checkpoint` will inform "
+"the reader when the `checkpoint` has been completed and it can safely access "
+"the refs that fast-import updated."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:47
+#: en/git-fast-import.txt:964
 msgid ""
-"Consider any object recorded in the index also as a head node for an "
-"unreachability trace."
+"Causes fast-import to print the SHA-1 corresponding to a mark to stdout or "
+"to the file descriptor previously arranged with the `--cat-blob-fd` "
+"argument. The command otherwise has no impact on the current import; its "
+"purpose is to retrieve SHA-1s that later commits might want to refer to in "
+"their commit messages."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fsck.txt:48
+#. type: delimited block .
+#: en/git-fast-import.txt:967
 #, no-wrap
-msgid "--no-reflogs"
+msgid "\t'get-mark' SP ':' <idnum> LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:53
+#: en/git-fast-import.txt:972
 msgid ""
-"Do not consider commits that are referenced only by an entry in a reflog to "
-"be reachable.  This option is meant only to search for commits that used to "
-"be in a ref, but now aren't, but are still in that corresponding reflog."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-fsck.txt:54
-#, no-wrap
-msgid "--full"
+"This command can be used anywhere in the stream that comments are accepted.  "
+"In particular, the `get-mark` command can be used in the middle of a commit "
+"but not in the middle of a `data` command."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:63
+#: en/git-fast-import.txt:975 en/git-fast-import.txt:1005
+#: en/git-fast-import.txt:1058
 msgid ""
-"Check not just objects in GIT_OBJECT_DIRECTORY ($GIT_DIR/objects), but also "
-"the ones found in alternate object pools listed in "
-"GIT_ALTERNATE_OBJECT_DIRECTORIES or $GIT_DIR/objects/info/alternates, and in "
-"packed Git archives found in $GIT_DIR/objects/pack and corresponding pack "
-"subdirectories in alternate object pools.  This is now default; you can turn "
-"it off with --no-full."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-fsck.txt:64
-#, no-wrap
-msgid "--connectivity-only"
+"See ``Responses To Commands'' below for details about how to read this "
+"output safely."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:68
+#: en/git-fast-import.txt:983
 msgid ""
-"Check only the connectivity of tags, commits and tree objects. By avoiding "
-"to unpack blobs, this speeds up the operation, at the expense of missing "
-"corrupt objects or other problematic issues."
+"Causes fast-import to print a blob to a file descriptor previously arranged "
+"with the `--cat-blob-fd` argument.  The command otherwise has no impact on "
+"the current import; its main purpose is to retrieve blobs that may be in "
+"fast-import's memory but not accessible from the target repository."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fsck.txt:69 en/git-index-pack.txt:74 en/git-unpack-objects.txt:44
+#. type: delimited block .
+#: en/git-fast-import.txt:986
 #, no-wrap
-msgid "--strict"
+msgid "\t'cat-blob' SP <dataref> LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:76
+#: en/git-fast-import.txt:991
 msgid ""
-"Enable more strict checking, namely to catch a file mode recorded with g+w "
-"bit set, which was created by older versions of Git.  Existing repositories, "
-"including the Linux kernel, Git itself, and sparse repository have old "
-"objects that triggers this check, but it is recommended to check new "
-"projects with this flag."
+"The `<dataref>` can be either a mark reference (`:<idnum>`)  set previously "
+"or a full 40-byte SHA-1 of a Git blob, preexisting or ready to be written."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:79
-msgid "Be chatty."
+#: en/git-fast-import.txt:993
+msgid "Output uses the same format as `git cat-file --batch`:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fsck.txt:80
+#. type: delimited block =
+#: en/git-fast-import.txt:997
 #, no-wrap
-msgid "--lost-found"
+msgid ""
+"\t<sha1> SP 'blob' SP <size> LF\n"
+"\t<contents> LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:85
+#: en/git-fast-import.txt:1002
 msgid ""
-"Write dangling objects into .git/lost-found/commit/ or "
-".git/lost-found/other/, depending on type.  If the object is a blob, the "
-"contents are written into the file, rather than its object name."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-fsck.txt:86
-#, no-wrap
-msgid "--name-objects"
+"This command can be used anywhere in the stream that comments are accepted.  "
+"In particular, the `cat-blob` command can be used in the middle of a commit "
+"but not in the middle of a `data` command."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:91
+#: en/git-fast-import.txt:1013
 msgid ""
-"When displaying names of reachable objects, in addition to the SHA-1 also "
-"display a name that describes *how* they are reachable, compatible with "
-"linkgit:git-rev-parse[1], e.g.  `HEAD@{1234567890}~25^2:src/`."
+"Prints information about the object at a path to a file descriptor "
+"previously arranged with the `--cat-blob-fd` argument.  This allows printing "
+"a blob from the active commit (with `cat-blob`) or copying a blob or tree "
+"from a previous commit for use in the current one (with `filemodify`)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:98
+#: en/git-fast-import.txt:1016
 msgid ""
-"Progress status is reported on the standard error stream by default when it "
-"is attached to a terminal, unless --no-progress or --verbose is "
-"specified. --progress forces progress status even if the standard error "
-"stream is not directed to a terminal."
+"The `ls` command can be used anywhere in the stream that comments are "
+"accepted, including the middle of a commit."
 msgstr ""
 
-#. type: Plain text
-#: en/git-fsck.txt:108
-msgid ""
-"git-fsck tests SHA-1 and general object sanity, and it does full tracking of "
-"the resulting reachability and everything else. It prints out any corruption "
-"it finds (missing or bad objects), and if you use the `--unreachable` flag "
-"it will also print out objects that exist but that aren't reachable from any "
-"of the specified head nodes (or the default set, as mentioned above)."
+#. type: Labeled list
+#: en/git-fast-import.txt:1017
+#, no-wrap
+msgid "Reading from the active commit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:112
+#: en/git-fast-import.txt:1021
 msgid ""
-"Any corrupt objects you will have to find in backups or other archives "
-"(i.e., you can just remove them and do an 'rsync' with some other site in "
-"the hopes that somebody else has the object you have corrupted)."
+"This form can only be used in the middle of a `commit`.  The path names a "
+"directory entry within fast-import's active commit.  The path must be quoted "
+"in this case."
 msgstr ""
 
-#. type: Title -
-#: en/git-fsck.txt:114
+#. type: delimited block .
+#: en/git-fast-import.txt:1024
 #, no-wrap
-msgid "Extracted Diagnostics"
+msgid "\t'ls' SP <path> LF\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fsck.txt:116
+#: en/git-fast-import.txt:1026
 #, no-wrap
-msgid "expect dangling commits - potential heads - due to lack of head information"
+msgid "Reading from a named tree"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:120
+#: en/git-fast-import.txt:1032
 msgid ""
-"You haven't specified any nodes as heads so it won't be possible to "
-"differentiate between un-parented commits and root nodes."
+"The `<dataref>` can be a mark reference (`:<idnum>`) or the full 40-byte "
+"SHA-1 of a Git tag, commit, or tree object, preexisting or waiting to be "
+"written.  The path is relative to the top level of the tree named by "
+"`<dataref>`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fsck.txt:121
+#. type: delimited block .
+#: en/git-fast-import.txt:1035
 #, no-wrap
-msgid "missing sha1 directory '<dir>'"
+msgid "\t'ls' SP <dataref> SP <path> LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:123
-msgid "The directory holding the sha1 objects is missing."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-fsck.txt:124
-#, no-wrap
-msgid "unreachable <type> <object>"
+#: en/git-fast-import.txt:1038
+msgid "See `filemodify` above for a detailed description of `<path>`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:131
-msgid ""
-"The <type> object <object>, isn't actually referred to directly or "
-"indirectly in any of the trees or commits seen. This can mean that there's "
-"another root node that you're not specifying or that the tree is corrupt. If "
-"you haven't missed a root node then you might as well delete unreachable "
-"nodes since they can't be used."
+#: en/git-fast-import.txt:1040
+msgid "Output uses the same format as `git ls-tree <tree> -- <path>`:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fsck.txt:132
+#. type: delimited block =
+#: en/git-fast-import.txt:1043
 #, no-wrap
-msgid "missing <type> <object>"
+msgid "\t<mode> SP ('blob' | 'tree' | 'commit') SP <dataref> HT <path> LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:135
+#: en/git-fast-import.txt:1048
 msgid ""
-"The <type> object <object>, is referred to but isn't present in the "
-"database."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-fsck.txt:136
-#, no-wrap
-msgid "dangling <type> <object>"
+"The <dataref> represents the blob, tree, or commit object at <path> and can "
+"be used in later 'get-mark', 'cat-blob', 'filemodify', or 'ls' commands."
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:139
+#: en/git-fast-import.txt:1051
 msgid ""
-"The <type> object <object>, is present in the database but never 'directly' "
-"used. A dangling commit could be a root node."
+"If there is no file or subtree at that path, 'git fast-import' will instead "
+"report"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fsck.txt:140
+#. type: delimited block =
+#: en/git-fast-import.txt:1054
 #, no-wrap
-msgid "sha1 mismatch <object>"
+msgid "\tmissing SP <path> LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:144
+#: en/git-fast-import.txt:1063
 msgid ""
-"The database has an object who's sha1 doesn't match the database value.  "
-"This indicates a serious data integrity problem."
+"Require that fast-import supports the specified feature, or abort if it does "
+"not."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fsck.txt:148
+#. type: delimited block .
+#: en/git-fast-import.txt:1066
 #, no-wrap
-msgid "GIT_OBJECT_DIRECTORY"
+msgid "\t'feature' SP <feature> ('=' <argument>)? LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:150
-msgid "used to specify the object database root (usually $GIT_DIR/objects)"
+#: en/git-fast-import.txt:1069
+msgid "The <feature> part of the command may be any one of the following:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-fsck.txt:151
+#. type: Plain text
+#: en/git-fast-import.txt:1070 en/git-fast-import.txt:1137
 #, no-wrap
-msgid "GIT_INDEX_FILE"
+msgid "date-format"
 msgstr ""
 
 #. type: Plain text
-#: en/git-fsck.txt:153
-msgid "used to specify the index file of the index"
+#: en/git-fast-import.txt:1071 en/git-fast-import.txt:1139
+#, no-wrap
+msgid "export-marks"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-fsck.txt:154
+#: en/git-fast-import.txt:1072
 #, no-wrap
-msgid "GIT_ALTERNATE_OBJECT_DIRECTORIES"
+msgid "relative-marks"
 msgstr ""
 
-#. type: Plain text
-#: en/git-fsck.txt:156
-msgid "used to specify additional object database roots (usually unset)"
+#. type: Labeled list
+#: en/git-fast-import.txt:1073
+#, no-wrap
+msgid "no-relative-marks"
 msgstr ""
 
-#. type: Title =
-#: en/git-gc.txt:2
+#. type: Plain text
+#: en/git-fast-import.txt:1074 en/git-fast-import.txt:1141
 #, no-wrap
-msgid "git-gc(1)"
+msgid "force"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:7
-msgid "git-gc - Cleanup unnecessary files and optimize the local repository"
+#: en/git-fast-import.txt:1078
+msgid ""
+"Act as though the corresponding command-line option with a leading `--` was "
+"passed on the command line (see OPTIONS, above)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:13
+#: en/git-fast-import.txt:1079 en/git-fast-import.txt:1138
 #, no-wrap
-msgid ""
-"'git gc' [--aggressive] [--auto] [--quiet] [--prune=<date> | --no-prune] "
-"[--force]\n"
+msgid "import-marks"
 msgstr ""
 
-#. type: Plain text
-#: en/git-gc.txt:20
-msgid ""
-"Runs a number of housekeeping tasks within the current repository, such as "
-"compressing file revisions (to reduce disk space and increase performance) "
-"and removing unreachable objects which may have been created from prior "
-"invocations of 'git add'."
+#. type: Labeled list
+#: en/git-fast-import.txt:1080
+#, no-wrap
+msgid "import-marks-if-exists"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:24
+#: en/git-fast-import.txt:1088
 msgid ""
-"Users are encouraged to run this task on a regular basis within each "
-"repository to maintain good disk space utilization and good operating "
-"performance."
+"Like --import-marks except in two respects: first, only one \"feature import-"
+"marks\" or \"feature import-marks-if-exists\" command is allowed per stream; "
+"second, an --import-marks= or --import-marks-if-exists command-line option "
+"overrides any of these \"feature\" commands in the stream; third, \"feature "
+"import-marks-if-exists\" like a corresponding command-line option silently "
+"skips a nonexistent file."
 msgstr ""
 
-#. type: Plain text
-#: en/git-gc.txt:28
-msgid ""
-"Some git commands may automatically run 'git gc'; see the `--auto` flag "
-"below for details. If you know what you're doing and all you want is to "
-"disable this behavior permanently without further considerations, just do:"
+#. type: Labeled list
+#: en/git-fast-import.txt:1089
+#, no-wrap
+msgid "get-mark"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-gc.txt:31
+#. type: Labeled list
+#: en/git-fast-import.txt:1090
 #, no-wrap
-msgid "$ git config --global gc.auto 0\n"
+msgid "cat-blob"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-gc.txt:36 en/git-read-tree.txt:71
+#: en/git-fast-import.txt:1091
 #, no-wrap
-msgid "--aggressive"
+msgid "ls"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:43
+#: en/git-fast-import.txt:1099
 msgid ""
-"Usually 'git gc' runs very quickly while providing good disk space "
-"utilization and performance.  This option will cause 'git gc' to more "
-"aggressively optimize the repository at the expense of taking much more "
-"time.  The effects of this optimization are persistent, so this option only "
-"needs to be used occasionally; every few hundred changesets or so."
+"Require that the backend support the 'get-mark', 'cat-blob', or 'ls' command "
+"respectively.  Versions of fast-import not supporting the specified command "
+"will exit with a message indicating so.  This lets the import error out "
+"early with a clear message, rather than wasting time on the early part of an "
+"import before the unsupported command is detected."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-gc.txt:44
+#: en/git-fast-import.txt:1100
 #, no-wrap
-msgid "--auto"
+msgid "notes"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:49
+#: en/git-fast-import.txt:1105
 msgid ""
-"With this option, 'git gc' checks whether any housekeeping is required; if "
-"not, it exits without performing any work.  Some git commands run `git gc "
-"--auto` after performing operations that could create many loose objects."
+"Require that the backend support the 'notemodify' (N)  subcommand to the "
+"'commit' command.  Versions of fast-import not supporting notes will exit "
+"with a message indicating so."
 msgstr ""
 
-#. type: Plain text
-#: en/git-gc.txt:56
-msgid ""
-"Housekeeping is required if there are too many loose objects or too many "
-"packs in the repository. If the number of loose objects exceeds the value of "
-"the `gc.auto` configuration variable, then all loose objects are combined "
-"into a single pack using `git repack -d -l`.  Setting the value of `gc.auto` "
-"to 0 disables automatic packing of loose objects."
+#. type: Labeled list
+#: en/git-fast-import.txt:1106
+#, no-wrap
+msgid "done"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:62
+#: en/git-fast-import.txt:1113
 msgid ""
-"If the number of packs exceeds the value of `gc.autoPackLimit`, then "
-"existing packs (except those marked with a `.keep` file)  are consolidated "
-"into a single pack by using the `-A` option of 'git repack'. Setting "
-"`gc.autoPackLimit` to 0 disables automatic consolidation of packs."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-gc.txt:63
-#, no-wrap
-msgid "--prune=<date>"
+"Error out if the stream ends without a 'done' command.  Without this "
+"feature, errors causing the frontend to end abruptly at a convenient point "
+"in the stream can go undetected.  This may occur, for example, if an import "
+"front end dies in mid-operation without emitting SIGTERM or SIGKILL at its "
+"subordinate git fast-import instance."
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:70
+#: en/git-fast-import.txt:1120
 msgid ""
-"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 and increases the risk of corruption if another "
-"process is writing to the repository concurrently; see \"NOTES\" "
-"below. --prune is on by default."
+"Processes the specified option so that git fast-import behaves in a way that "
+"suits the frontend's needs.  Note that options specified by the frontend are "
+"overridden by any options the user may specify to git fast-import itself."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-gc.txt:71 en/git-pack-refs.txt:57
+#. type: delimited block .
+#: en/git-fast-import.txt:1123
 #, no-wrap
-msgid "--no-prune"
+msgid "    'option' SP <option> LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:73
-msgid "Do not prune any loose objects."
+#: en/git-fast-import.txt:1128
+msgid ""
+"The `<option>` part of the command may contain any of the options listed in "
+"the OPTIONS section that do not change import semantics, without the leading "
+"`--` and is treated in the same way."
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:76
-msgid "Suppress all progress reports."
+#: en/git-fast-import.txt:1132
+msgid ""
+"Option commands must be the first commands on the input (not counting "
+"feature commands), to give an option command after any non-option command is "
+"an error."
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:80
+#: en/git-fast-import.txt:1135
 msgid ""
-"Force `git gc` to run even if there may be another `git gc` instance running "
-"on this repository."
+"The following command-line options change import semantics and may therefore "
+"not be passed as option:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:89
-msgid ""
-"The optional configuration variable `gc.reflogExpire` can be set to indicate "
-"how long historical entries within each branch's reflog should remain "
-"available in this repository.  The setting is expressed as a length of time, "
-"for example '90 days' or '3 months'.  It defaults to '90 days'."
+#: en/git-fast-import.txt:1140
+msgid "cat-blob-fd"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:98
+#: en/git-fast-import.txt:1146
 msgid ""
-"The optional configuration variable `gc.reflogExpireUnreachable` can be set "
-"to indicate how long historical reflog entries which are not part of the "
-"current branch should remain available in this repository.  These types of "
-"entries are generally created as a result of using `git commit --amend` or "
-"`git rebase` and are the commits prior to the amend or rebase occurring.  "
-"Since these changes are not part of the current project most users will want "
-"to expire them sooner.  This option defaults to '30 days'."
+"If the `done` feature is not in use, treated as if EOF was read.  This can "
+"be used to tell fast-import to finish early."
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:102
+#: en/git-fast-import.txt:1150
 msgid ""
-"The above two configuration variables can be given to a pattern.  For "
-"example, this sets non-default expiry values only to remote-tracking "
-"branches:"
+"If the `--done` command-line option or `feature done` command is in use, the "
+"`done` command is mandatory and marks the end of the stream."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-gc.txt:107
+#. type: Title -
+#: en/git-fast-import.txt:1152
 #, no-wrap
-msgid ""
-"[gc \"refs/remotes/*\"]\n"
-"\treflogExpire = never\n"
-"\treflogExpireUnreachable = 3 days\n"
+msgid "RESPONSES TO COMMANDS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:112
+#: en/git-fast-import.txt:1159
 msgid ""
-"The optional configuration variable `gc.rerereResolved` indicates how long "
-"records of conflicted merge you resolved earlier are kept.  This defaults to "
-"60 days."
+"New objects written by fast-import are not available immediately.  Most fast-"
+"import commands have no visible effect until the next checkpoint (or "
+"completion).  The frontend can send commands to fill fast-import's input "
+"pipe without worrying about how quickly they will take effect, which "
+"improves performance by simplifying scheduling."
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:116
+#: en/git-fast-import.txt:1166
 msgid ""
-"The optional configuration variable `gc.rerereUnresolved` indicates how long "
-"records of conflicted merge you have not resolved are kept.  This defaults "
-"to 15 days."
+"For some frontends, though, it is useful to be able to read back data from "
+"the current repository as it is being updated (for example when the source "
+"material describes objects in terms of patches to be applied to previously "
+"imported objects).  This can be accomplished by connecting the frontend and "
+"fast-import via bidirectional pipes:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-gc.txt:121
+#. type: delimited block =
+#: en/git-fast-import.txt:1171
+#, no-wrap
 msgid ""
-"The optional configuration variable `gc.packRefs` determines if 'git gc' "
-"runs 'git pack-refs'. This can be set to \"notbare\" to enable it within all "
-"non-bare repos or it can be set to a boolean value.  This defaults to true."
+"\tmkfifo fast-import-output\n"
+"\tfrontend <fast-import-output |\n"
+"\tgit fast-import >fast-import-output\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:128
+#: en/git-fast-import.txt:1175
 msgid ""
-"The optional configuration variable `gc.aggressiveWindow` controls how much "
-"time is spent optimizing the delta compression of the objects in the "
-"repository when the --aggressive option is specified.  The larger the value, "
-"the more time is spent optimizing the delta compression.  See the "
-"documentation for the --window' option in linkgit:git-repack[1] for more "
-"details.  This defaults to 250."
+"A frontend set up this way can use `progress`, `get-mark`, `ls`, and `cat-"
+"blob` commands to read information from the import in progress."
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:131
+#: en/git-fast-import.txt:1179
 msgid ""
-"Similarly, the optional configuration variable `gc.aggressiveDepth` controls "
-"--depth option in linkgit:git-repack[1]. This defaults to 50."
+"To avoid deadlock, such frontends must completely consume any pending output "
+"from `progress`, `ls`, `get-mark`, and `cat-blob` before performing writes "
+"to fast-import that might block."
 msgstr ""
 
-#. type: Plain text
-#: en/git-gc.txt:135
-msgid ""
-"The optional configuration variable `gc.pruneExpire` controls how old the "
-"unreferenced loose objects have to be before they are pruned.  The default "
-"is \"2 weeks ago\"."
+#. type: Title -
+#: en/git-fast-import.txt:1181
+#, no-wrap
+msgid "CRASH REPORTS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:150
+#: en/git-fast-import.txt:1187
 msgid ""
-"'git gc' tries very hard not to delete objects that are referenced anywhere "
-"in your repository. In particular, it will keep not only objects referenced "
-"by your current set of branches and tags, but also objects referenced by the "
-"index, remote-tracking branches, refs saved by 'git filter-branch' in "
-"refs/original/, or reflogs (which may reference commits in branches that "
-"were later amended or rewound).  If you are expecting some objects to be "
-"deleted and they aren't, check all of those locations and decide whether it "
-"makes sense in your case to remove those references."
+"If fast-import is supplied invalid input it will terminate with a non-zero "
+"exit status and create a crash report in the top level of the Git repository "
+"it was importing into.  Crash reports contain a snapshot of the internal "
+"fast-import state as well as the most recent commands that lead up to the "
+"crash."
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:157
+#: en/git-fast-import.txt:1194
 msgid ""
-"On the other hand, when 'git gc' runs concurrently with another process, "
-"there is a risk of it deleting an object that the other process is using but "
-"hasn't created a reference to. This may just cause the other process to fail "
-"or may corrupt the repository if the other process later adds a reference to "
-"the deleted object. Git has two features that significantly mitigate this "
-"problem:"
+"All recent commands (including stream comments, file changes and progress "
+"commands) are shown in the command history within the crash report, but raw "
+"file data and commit messages are excluded from the crash report.  This "
+"exclusion saves space within the report file and reduces the amount of "
+"buffering that fast-import must perform during execution."
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:160
+#: en/git-fast-import.txt:1202
 msgid ""
-"Any object with modification time newer than the `--prune` date is kept, "
-"along with everything reachable from it."
+"After writing a crash report fast-import will close the current packfile and "
+"export the marks table.  This allows the frontend developer to inspect the "
+"repository state and resume the import from the point where it crashed.  The "
+"modified branches and tags are not updated during a crash, as the import did "
+"not complete successfully.  Branch and tag information can be found in the "
+"crash report and must be applied manually if the update is needed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-gc.txt:164
-msgid ""
-"Most operations that add an object to the database update the modification "
-"time of the object if it is already present so that #1 applies."
+#: en/git-fast-import.txt:1204
+msgid "An example crash:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-gc.txt:169
+#. type: delimited block =
+#: en/git-fast-import.txt:1220
+#, no-wrap
 msgid ""
-"However, these features fall short of a complete solution, so users who run "
-"commands concurrently have to live with some risk of corruption (which seems "
-"to be low in practice) unless they turn off automatic garbage collection "
-"with 'git config gc.auto 0'."
+"\t$ cat >in <<END_OF_INPUT\n"
+"\t# my very first test commit\n"
+"\tcommit refs/heads/master\n"
+"\tcommitter Shawn O. Pearce <spearce> 19283 -0400\n"
+"\t# who is that guy anyway?\n"
+"\tdata <<EOF\n"
+"\tthis is my commit\n"
+"\tEOF\n"
+"\tM 644 inline .gitignore\n"
+"\tdata <<EOF\n"
+"\t.gitignore\n"
+"\tEOF\n"
+"\tM 777 inline bob\n"
+"\tEND_OF_INPUT\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-gc.txt:175
+#. type: delimited block =
+#: en/git-fast-import.txt:1224
+#, no-wrap
 msgid ""
-"The 'git gc --auto' command will run the 'pre-auto-gc' hook.  See "
-"linkgit:githooks[5] for more information."
+"\t$ git fast-import <in\n"
+"\tfatal: Corrupt mode: M 777 inline bob\n"
+"\tfast-import: dumping crash report to .git/fast_import_crash_8434\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-gc.txt:183
+#. type: delimited block =
+#: en/git-fast-import.txt:1230
+#, no-wrap
 msgid ""
-"linkgit:git-prune[1] linkgit:git-reflog[1] linkgit:git-repack[1] "
-"linkgit:git-rerere[1]"
+"\t$ cat .git/fast_import_crash_8434\n"
+"\tfast-import crash report:\n"
+"\t    fast-import process: 8434\n"
+"\t    parent process     : 1391\n"
+"\t    at Sat Sep 1 00:58:12 2007\n"
 msgstr ""
 
-#. type: Title =
-#: en/git-get-tar-commit-id.txt:2
+#. type: delimited block =
+#: en/git-fast-import.txt:1232
 #, no-wrap
-msgid "git-get-tar-commit-id(1)"
+msgid "\tfatal: Corrupt mode: M 777 inline bob\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-get-tar-commit-id.txt:7
+#. type: delimited block =
+#: en/git-fast-import.txt:1242
+#, no-wrap
 msgid ""
-"git-get-tar-commit-id - Extract commit ID from an archive created using "
-"git-archive"
+"\tMost Recent Commands Before Crash\n"
+"\t---------------------------------\n"
+"\t  # my very first test commit\n"
+"\t  commit refs/heads/master\n"
+"\t  committer Shawn O. Pearce <spearce> 19283 -0400\n"
+"\t  # who is that guy anyway?\n"
+"\t  data <<EOF\n"
+"\t  M 644 inline .gitignore\n"
+"\t  data <<EOF\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-get-tar-commit-id.txt:13
+#. type: delimited block =
+#: en/git-fast-import.txt:1243
 #, no-wrap
-msgid "'git get-tar-commit-id'\n"
+msgid "M 777 inline bob\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-get-tar-commit-id.txt:22
+#. type: delimited block =
+#: en/git-fast-import.txt:1246
+#, no-wrap
 msgid ""
-"Read a tar archive created by 'git archive' from the standard input and "
-"extract the commit ID stored in it.  It reads only the first 1024 bytes of "
-"input, thus its runtime is not influenced by the size of the tar archive "
-"very much."
+"Active Branch LRU\n"
+"-----------------\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-get-tar-commit-id.txt:27
-msgid ""
-"If no commit ID is found, 'git get-tar-commit-id' quietly exists with a "
-"return code of 1.  This can happen if the archive had not been created using "
-"'git archive' or if the first parameter of 'git archive' had been a tree ID "
-"instead of a commit ID or tag."
+#. type: delimited block =
+#: en/git-fast-import.txt:1247
+#, no-wrap
+msgid "active_branches = 1 cur, 5 max\n"
 msgstr ""
 
-#. type: Title =
-#: en/git-grep.txt:2
-#, no-wrap
-msgid "git-grep(1)"
+#. type: delimited block =
+#: en/git-fast-import.txt:1250
+msgid "pos clock name ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
 msgstr ""
 
-#. type: Plain text
-#: en/git-grep.txt:7
-msgid "git-grep - Print lines matching a pattern"
+#. type: delimited block =
+#: en/git-fast-import.txt:1251
+msgid "0 refs/heads/master"
 msgstr ""
 
-#. type: Plain text
-#: en/git-grep.txt:32
+#. type: delimited block =
+#: en/git-fast-import.txt:1255
 #, no-wrap
 msgid ""
-"'git grep' [-a | --text] [-I] [--textconv] [-i | --ignore-case] [-w | "
-"--word-regexp]\n"
-"\t   [-v | --invert-match] [-h|-H] [--full-name]\n"
-"\t   [-E | --extended-regexp] [-G | --basic-regexp]\n"
-"\t   [-P | --perl-regexp]\n"
-"\t   [-F | --fixed-strings] [-n | --line-number]\n"
-"\t   [-l | --files-with-matches] [-L | --files-without-match]\n"
-"\t   [(-O | --open-files-in-pager) [<pager>]]\n"
-"\t   [-z | --null]\n"
-"\t   [-c | --count] [--all-match] [-q | --quiet]\n"
-"\t   [--max-depth <depth>]\n"
-"\t   [--color[=<when>] | --no-color]\n"
-"\t   [--break] [--heading] [-p | --show-function]\n"
-"\t   [-A <post-context>] [-B <pre-context>] [-C <context>]\n"
-"\t   [-W | --function-context]\n"
-"\t   [--threads <num>]\n"
-"\t   [-f <file>] [-e] <pattern>\n"
-"\t   [--and|--or|--not|(|)|-e <pattern>...]\n"
-"\t   [--recurse-submodules] [--parent-basename <basename>]\n"
-"\t   [ [--[no-]exclude-standard] [--cached | --no-index | --untracked] | "
-"<tree>...]\n"
-"\t   [--] [<pathspec>...]\n"
+"Inactive Branches\n"
+"-----------------\n"
+"refs/heads/master:\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-grep.txt:39
+#. type: delimited block =
+#: en/git-fast-import.txt:1261
+#, no-wrap
 msgid ""
-"Look for specified patterns in the tracked files in the work tree, blobs "
-"registered in the index file, or blobs in given tree objects.  Patterns are "
-"lists of one or more search expressions separated by newline characters.  An "
-"empty string as search expression matches all lines."
+"status      : active loaded dirty\n"
+"tip commit  : 0000000000000000000000000000000000000000\n"
+"old tree    : 0000000000000000000000000000000000000000\n"
+"cur tree    : 0000000000000000000000000000000000000000\n"
+"commit clock: 0\n"
+"last pack   :\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:44 en/config.txt:1619
+#. type: delimited block =
+#: en/git-fast-import.txt:1265
+msgid "------------------- END OF CRASH REPORT"
+msgstr ""
+
+#. type: Title -
+#: en/git-fast-import.txt:1268
 #, no-wrap
-msgid "grep.lineNumber"
+msgid "TIPS AND TRICKS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:46 en/config.txt:1621
-msgid "If set to true, enable `-n` option by default."
+#: en/git-fast-import.txt:1271
+msgid ""
+"The following tips and tricks have been collected from various users of fast-"
+"import, and are offered here as suggestions."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:47 en/config.txt:1622
+#. type: Title ~
+#: en/git-fast-import.txt:1273
 #, no-wrap
-msgid "grep.patternType"
+msgid "Use One Mark Per Commit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:52 en/config.txt:1627
+#: en/git-fast-import.txt:1281
 msgid ""
-"Set the default matching behavior. Using a value of 'basic', 'extended', "
-"'fixed', or 'perl' will enable the `--basic-regexp`, `--extended-regexp`, "
-"`--fixed-strings`, or `--perl-regexp` option accordingly, while the value "
-"'default' will return to the default matching behavior."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-grep.txt:53 en/config.txt:1628
-#, no-wrap
-msgid "grep.extendedRegexp"
+"When doing a repository conversion, use a unique mark per commit (`mark :"
+"<n>`) and supply the --export-marks option on the command line.  fast-import "
+"will dump a file which lists every mark and the Git object SHA-1 that "
+"corresponds to it.  If the frontend can tie the marks back to the source "
+"repository, it is easy to verify the accuracy and completeness of the import "
+"by comparing each Git commit to the corresponding source revision."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:57 en/config.txt:1632
+#: en/git-fast-import.txt:1285
 msgid ""
-"If set to true, enable `--extended-regexp` option by default. This option is "
-"ignored when the `grep.patternType` option is set to a value other than "
-"'default'."
+"Coming from a system such as Perforce or Subversion this should be quite "
+"simple, as the fast-import mark can also be the Perforce changeset number or "
+"the Subversion revision number."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:58 en/config.txt:1633
+#. type: Title ~
+#: en/git-fast-import.txt:1287
 #, no-wrap
-msgid "grep.threads"
+msgid "Freely Skip Around Branches"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:61
+#: en/git-fast-import.txt:1292
 msgid ""
-"Number of grep worker threads to use.  If unset (or set to 0), 8 threads are "
-"used by default (for now)."
+"Don't bother trying to optimize the frontend to stick to one branch at a "
+"time during an import.  Although doing so might be slightly faster for fast-"
+"import, it tends to increase the complexity of the frontend code "
+"considerably."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:62
+#. type: Plain text
+#: en/git-fast-import.txt:1296
+msgid ""
+"The branch LRU builtin to fast-import tends to behave very well, and the "
+"cost of activating an inactive branch is so low that bouncing around between "
+"branches has virtually no impact on import performance."
+msgstr ""
+
+#. type: Title ~
+#: en/git-fast-import.txt:1298
 #, no-wrap
-msgid "grep.fullName"
+msgid "Handling Renames"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:64
-msgid "If set to true, enable `--full-name` option by default."
+#: en/git-fast-import.txt:1303
+msgid ""
+"When importing a renamed file or directory, simply delete the old name(s) "
+"and modify the new name(s) during the corresponding commit.  Git performs "
+"rename detection after-the-fact, rather than explicitly during a commit."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:65 en/config.txt:1637
+#. type: Title ~
+#: en/git-fast-import.txt:1305
 #, no-wrap
-msgid "grep.fallbackToNoIndex"
+msgid "Use Tag Fixup Branches"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:68 en/config.txt:1640
+#: en/git-fast-import.txt:1309
 msgid ""
-"If set to true, fall back to git grep --no-index if git grep is executed "
-"outside of a git repository.  Defaults to false."
+"Some other SCM systems let the user create a tag from multiple files which "
+"are not from the same commit/changeset.  Or to create tags which are a "
+"subset of the files available in the repository."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:75
+#: en/git-fast-import.txt:1316
 msgid ""
-"Instead of searching tracked files in the working tree, search blobs "
-"registered in the index file."
+"Importing these tags as-is in Git is impossible without making at least one "
+"commit which ``fixes up'' the files to match the content of the tag.  Use "
+"fast-import's `reset` command to reset a dummy branch outside of your normal "
+"branch space to the base commit for the tag, then commit one or more file "
+"fixup commits, and finally tag the dummy branch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:78
-msgid "Search files in the current directory that is not managed by Git."
+#: en/git-fast-import.txt:1322
+msgid ""
+"For example since all normal branches are stored under `refs/heads/` name "
+"the tag fixup branch `TAG_FIXUP`.  This way it is impossible for the fixup "
+"branch used by the importer to have namespace conflicts with real branches "
+"imported from the source (the name `TAG_FIXUP` is not `refs/heads/"
+"TAG_FIXUP`)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:79
-#, no-wrap
-msgid "--untracked"
+#. type: Plain text
+#: en/git-fast-import.txt:1328
+msgid ""
+"When committing fixups, consider using `merge` to connect the commit(s) "
+"which are supplying file revisions to the fixup branch.  Doing so will allow "
+"tools such as 'git blame' to track through the real commit history and "
+"properly annotate the source files."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:82
+#: en/git-fast-import.txt:1331
 msgid ""
-"In addition to searching in the tracked files in the working tree, search "
-"also in untracked files."
+"After fast-import terminates the frontend will need to do `rm .git/"
+"TAG_FIXUP` to remove the dummy branch."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:83
+#. type: Title ~
+#: en/git-fast-import.txt:1333
 #, no-wrap
-msgid "--no-exclude-standard"
+msgid "Import Now, Repack Later"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:86
+#: en/git-fast-import.txt:1337
 msgid ""
-"Also search in ignored files by not honoring the `.gitignore` "
-"mechanism. Only useful with `--untracked`."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-grep.txt:87 en/git-ls-files.txt:97
-#, no-wrap
-msgid "--exclude-standard"
+"As soon as fast-import completes the Git repository is completely valid and "
+"ready for use.  Typically this takes only a very short time, even for "
+"considerably large projects (100,000+ commits)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:91
+#: en/git-fast-import.txt:1344
 msgid ""
-"Do not pay attention to ignored files specified via the\t`.gitignore` "
-"mechanism.  Only useful when searching files in the current directory with "
-"`--no-index`."
+"However repacking the repository is necessary to improve data locality and "
+"access performance.  It can also take hours on extremely large projects "
+"(especially if -f and a large --window parameter is used).  Since repacking "
+"is safe to run alongside readers and writers, run the repack in the "
+"background and let it finish when it finishes.  There is no reason to wait "
+"to explore your new Git project!"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:97
+#: en/git-fast-import.txt:1349
 msgid ""
-"Recursively search in each submodule that has been initialized and checked "
-"out in the repository.  When used in combination with the <tree> option the "
-"prefix of all submodule output will be the name of the parent project's "
-"<tree> object."
+"If you choose to wait for the repack, don't try to run benchmarks or "
+"performance tests until repacking is completed.  fast-import outputs "
+"suboptimal packfiles that are simply never seen in real use situations."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:98
+#. type: Title ~
+#: en/git-fast-import.txt:1351
 #, no-wrap
-msgid "--parent-basename <basename>"
+msgid "Repacking Historical Data"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:104
+#: en/git-fast-import.txt:1358
 msgid ""
-"For internal use only.  In order to produce uniform output with the "
-"--recurse-submodules option, this option can be used to provide the basename "
-"of a parent's <tree> object to a submodule so the submodule can prefix its "
-"output with the parent's name rather than the SHA1 of the submodule."
+"If you are repacking very old imported data (e.g. older than the last year), "
+"consider expending some extra CPU time and supplying --window=50 (or higher) "
+"when you run 'git repack'.  This will take longer, but will also produce a "
+"smaller packfile.  You only need to expend the effort once, and everyone "
+"using your project will benefit from the smaller repository."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:106 en/diff-options.txt:519
+#. type: Title ~
+#: en/git-fast-import.txt:1360
 #, no-wrap
-msgid "--text"
-msgstr ""
-
-#. type: Plain text
-#: en/git-grep.txt:108
-msgid "Process binary files as if they were text."
+msgid "Include Some Progress Messages"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:111
-msgid "Honor textconv filter settings."
+#: en/git-fast-import.txt:1367
+msgid ""
+"Every once in a while have your frontend emit a `progress` message to fast-"
+"import.  The contents of the messages are entirely free-form, so one "
+"suggestion would be to output the current month and year each time the "
+"current commit date moves into the next month.  Your users will feel better "
+"knowing how much of the data stream has been processed."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:112 en/diff-options.txt:571
+#. type: Title -
+#: en/git-fast-import.txt:1370
 #, no-wrap
-msgid "--no-textconv"
+msgid "PACKFILE OPTIMIZATION"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:115
-msgid "Do not honor textconv filter settings.  This is the default."
+#: en/git-fast-import.txt:1376
+msgid ""
+"When packing a blob fast-import always attempts to deltify against the last "
+"blob written.  Unless specifically arranged for by the frontend, this will "
+"probably not be a prior version of the same file, so the generated delta "
+"will not be the smallest possible.  The resulting packfile will be "
+"compressed, but will not be optimal."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:120
-msgid "Ignore case differences between the patterns and the files."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-grep.txt:121
-#, no-wrap
-msgid "-I"
+#: en/git-fast-import.txt:1384
+msgid ""
+"Frontends which have efficient access to all revisions of a single file (for "
+"example reading an RCS/CVS ,v file) can choose to supply all revisions of "
+"that file as a sequence of consecutive `blob` commands.  This allows fast-"
+"import to deltify the different file revisions against each other, saving "
+"space in the final packfile.  Marks can be used to later identify individual "
+"file revisions during a sequence of `commit` commands."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:123
-msgid "Don't match the pattern in binary files."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-grep.txt:124
-#, no-wrap
-msgid "--max-depth <depth>"
+#: en/git-fast-import.txt:1391
+msgid ""
+"The packfile(s) created by fast-import do not encourage good disk access "
+"patterns.  This is caused by fast-import writing the data in the order it is "
+"received on standard input, while Git typically organizes data within "
+"packfiles to make the most recent (current tip) data appear before "
+"historical data.  Git also clusters commits together, speeding up revision "
+"traversal through better cache locality."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:130
+#: en/git-fast-import.txt:1398
 msgid ""
-"For each <pathspec> given on command line, descend at most <depth> levels of "
-"directories. A negative value means no limit.  This option is ignored if "
-"<pathspec> contains active wildcards.  In other words if \"a*\" matches a "
-"directory named \"a*\", \"*\" is matched literally so --max-depth is still "
-"effective."
+"For this reason it is strongly recommended that users repack the repository "
+"with `git repack -a -d` after fast-import completes, allowing Git to "
+"reorganize the packfiles for faster data access.  If blob deltas are "
+"suboptimal (see above) then also adding the `-f` option to force "
+"recomputation of all deltas can significantly reduce the final packfile size "
+"(30-50% smaller can be quite typical)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:132
+#. type: Title -
+#: en/git-fast-import.txt:1401
 #, no-wrap
-msgid "--word-regexp"
+msgid "MEMORY UTILIZATION"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:136
+#: en/git-fast-import.txt:1407
 msgid ""
-"Match the pattern only at word boundary (either begin at the beginning of a "
-"line, or preceded by a non-word character; end at the end of a line or "
-"followed by a non-word character)."
+"There are a number of factors which affect how much memory fast-import "
+"requires to perform an import.  Like critical sections of core Git, fast-"
+"import uses its own memory allocators to amortize any overheads associated "
+"with malloc.  In practice fast-import tends to amortize any malloc overheads "
+"to 0, due to its use of large block allocations."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:138
+#. type: Title ~
+#: en/git-fast-import.txt:1409
 #, no-wrap
-msgid "--invert-match"
+msgid "per object"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:140
-msgid "Select non-matching lines."
+#: en/git-fast-import.txt:1416
+msgid ""
+"fast-import maintains an in-memory structure for every object written in "
+"this execution.  On a 32 bit system the structure is 32 bytes, on a 64 bit "
+"system the structure is 40 bytes (due to the larger pointer sizes).  Objects "
+"in the table are not deallocated until fast-import terminates.  Importing 2 "
+"million objects on a 32 bit system will require approximately 64 MiB of "
+"memory."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:148
+#: en/git-fast-import.txt:1422
 msgid ""
-"By default, the command shows the filename for each match.  `-h` option is "
-"used to suppress this output.  `-H` is there for completeness and does not "
-"do anything except it overrides `-h` given earlier on the command line."
+"The object table is actually a hashtable keyed on the object name (the "
+"unique SHA-1).  This storage configuration allows fast-import to reuse an "
+"existing or already written object and avoid writing duplicates to the "
+"output packfile.  Duplicate blobs are surprisingly common in an import, "
+"typically due to branch merges in the source."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:149 en/git-ls-files.txt:136 en/git-ls-tree.txt:68
+#. type: Title ~
+#: en/git-fast-import.txt:1424
 #, no-wrap
-msgid "--full-name"
+msgid "per mark"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:154 en/git-ls-files.txt:141
+#: en/git-fast-import.txt:1430
 msgid ""
-"When run from a subdirectory, the command usually outputs paths relative to "
-"the current directory.  This option forces paths to be output relative to "
-"the project top directory."
+"Marks are stored in a sparse array, using 1 pointer (4 bytes or 8 bytes, "
+"depending on pointer size) per mark.  Although the array is sparse, "
+"frontends are still strongly encouraged to use marks between 1 and n, where "
+"n is the total number of marks required for this import."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:155 en/rev-list-options.txt:84
+#. type: Title ~
+#: en/git-fast-import.txt:1432
 #, no-wrap
-msgid "-E"
+msgid "per branch"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:156 en/rev-list-options.txt:85
-#, no-wrap
-msgid "--extended-regexp"
+#. type: Plain text
+#: en/git-fast-import.txt:1435
+msgid ""
+"Branches are classified as active and inactive.  The memory usage of the two "
+"classes is significantly different."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:157
-#, no-wrap
-msgid "-G"
+#. type: Plain text
+#: en/git-fast-import.txt:1441
+msgid ""
+"Inactive branches are stored in a structure which uses 96 or 120 bytes (32 "
+"bit or 64 bit systems, respectively), plus the length of the branch name "
+"(typically under 200 bytes), per branch.  fast-import will easily handle as "
+"many as 10,000 inactive branches in under 2 MiB of memory."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:158 en/rev-list-options.txt:80
-#, no-wrap
-msgid "--basic-regexp"
+#. type: Plain text
+#: en/git-fast-import.txt:1448
+msgid ""
+"Active branches have the same overhead as inactive branches, but also "
+"contain copies of every tree that has been recently modified on that "
+"branch.  If subtree `include` has not been modified since the branch became "
+"active, its contents will not be loaded into memory, but if subtree `src` "
+"has been modified by a commit since the branch became active, then its "
+"contents will be loaded in memory."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:161
+#: en/git-fast-import.txt:1452
 msgid ""
-"Use POSIX extended/basic regexp for patterns.  Default is to use basic "
-"regexp."
+"As active branches store metadata about the files contained on that branch, "
+"their in-memory storage size can grow to a considerable size (see below)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:163 en/rev-list-options.txt:94
+#. type: Plain text
+#: en/git-fast-import.txt:1457
+msgid ""
+"fast-import automatically moves active branches to inactive status based on "
+"a simple least-recently-used algorithm.  The LRU chain is updated on each "
+"`commit` command.  The maximum number of active branches can be increased or "
+"decreased on the command line with --active-branches=."
+msgstr ""
+
+#. type: Title ~
+#: en/git-fast-import.txt:1459
 #, no-wrap
-msgid "--perl-regexp"
+msgid "per active tree"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:166
-msgid "Use Perl-compatible regexp for patterns. Requires libpcre to be compiled in."
+#: en/git-fast-import.txt:1464
+msgid ""
+"Trees (aka directories) use just 12 bytes of memory on top of the memory "
+"required for their entries (see ``per active file'' below).  The cost of a "
+"tree is virtually 0, as its overhead amortizes out over the individual file "
+"entries."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:167 en/git-repack.txt:69 en/rev-list-options.txt:89
+#. type: Title ~
+#: en/git-fast-import.txt:1466
 #, no-wrap
-msgid "-F"
+msgid "per active file entry"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:168 en/rev-list-options.txt:90
-#, no-wrap
-msgid "--fixed-strings"
+#. type: Plain text
+#: en/git-fast-import.txt:1472
+msgid ""
+"Files (and pointers to subtrees) within active trees require 52 or 64 bytes "
+"(32/64 bit platforms) per entry.  To conserve space, file and tree names are "
+"pooled in a common string table, allowing the filename ``Makefile'' to use "
+"just 16 bytes (after including the string header overhead) no matter how "
+"many times it occurs within the project."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:171
-msgid "Use fixed strings for patterns (don't interpret pattern as a regex)."
+#: en/git-fast-import.txt:1477
+msgid ""
+"The active branch LRU, when coupled with the filename string pool and lazy "
+"loading of subtrees, allows fast-import to efficiently import projects with "
+"2,000+ branches and 45,114+ files in a very limited memory footprint (less "
+"than 2.7 MiB per active branch)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:173
+#. type: Title -
+#: en/git-fast-import.txt:1479
 #, no-wrap
-msgid "--line-number"
+msgid "SIGNALS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:175
-msgid "Prefix the line number to matching lines."
+#: en/git-fast-import.txt:1485
+msgid ""
+"Sending *SIGUSR1* to the 'git fast-import' process ends the current packfile "
+"early, simulating a `checkpoint` command.  The impatient operator can use "
+"this facility to peek at the objects and refs from an import in progress, at "
+"the cost of some added running time and worse compression."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:177
+#. type: Title =
+#: en/git-fetch-pack.txt:2
 #, no-wrap
-msgid "--files-with-matches"
+msgid "git-fetch-pack(1)"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:179
-#, no-wrap
-msgid "-L"
+#. type: Plain text
+#: en/git-fetch-pack.txt:7
+msgid "git-fetch-pack - Receive missing objects from another repository"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:180
+#. type: Plain text
+#: en/git-fetch-pack.txt:16
 #, no-wrap
-msgid "--files-without-match"
+msgid ""
+"'git fetch-pack' [--all] [--quiet|-q] [--keep|-k] [--thin] [--include-tag]\n"
+"\t[--upload-pack=<git-upload-pack>]\n"
+"\t[--depth=<n>] [--no-progress]\n"
+"\t[-v] <repository> [<refs>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:185
+#: en/git-fetch-pack.txt:21
 msgid ""
-"Instead of showing every matched line, show only the names of files that "
-"contain (or do not contain) matches.  For better compatibility with 'git "
-"diff', `--name-only` is a synonym for `--files-with-matches`."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-grep.txt:186
-#, no-wrap
-msgid "-O[<pager>]"
+"Usually you would want to use 'git fetch', which is a higher level wrapper "
+"of this command, instead."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:187
-#, no-wrap
-msgid "--open-files-in-pager[=<pager>]"
+#. type: Plain text
+#: en/git-fetch-pack.txt:27
+msgid ""
+"Invokes 'git-upload-pack' on a possibly remote repository and asks it to "
+"send objects missing from this repository, to update the named heads.  The "
+"list of commits available locally is found out by scanning the local refs/ "
+"hierarchy and sent to 'git-upload-pack' running on the other end."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:195
+#: en/git-fetch-pack.txt:31
 msgid ""
-"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 "
-"`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])."
+"This command degenerates to download everything to complete the asked refs "
+"from the remote side when the local side does not have a common ancestor "
+"commit."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:200
-msgid "Output \\0 instead of the character that normally follows a file name."
+#: en/git-fetch-pack.txt:37
+msgid "Fetch all remote refs."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:202 en/rev-list-options.txt:848
-#, no-wrap
-msgid "--count"
+#. type: Plain text
+#: en/git-fetch-pack.txt:43 en/git-send-pack.txt:46
+msgid ""
+"Take the list of refs from stdin, one per line. If there are refs specified "
+"on the command line in addition to this option, then the refs from stdin are "
+"processed after those on the command line."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:205
-msgid "Instead of showing every matched line, show the number of lines that match."
+#: en/git-fetch-pack.txt:47 en/git-send-pack.txt:50
+msgid ""
+"If `--stateless-rpc` is specified together with this option then the list of "
+"refs must be in packet format (pkt-line). Each ref must be in a separate "
+"packet, and the list must end with a flush packet."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:209
+#: en/git-fetch-pack.txt:52
 msgid ""
-"Show colored matches.  The value must be always (the default), never, or "
-"auto."
+"Pass `-q` flag to 'git unpack-objects'; this makes the cloning process less "
+"verbose."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:214
+#: en/git-fetch-pack.txt:59
 msgid ""
-"Turn off match highlighting, even when the configuration file gives the "
-"default to color output.  Same as `--color=never`."
+"Do not invoke 'git unpack-objects' on received data, but create a single "
+"packfile out of it instead, and store it in the object database. If provided "
+"twice then the pack is locked against repacking."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-grep.txt:215
+#: en/git-fetch-pack.txt:60 en/git-pack-objects.txt:208 en/git-send-pack.txt:64
 #, no-wrap
-msgid "--break"
+msgid "--thin"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:217
-msgid "Print an empty line between matches from different files."
+#: en/git-fetch-pack.txt:63
+msgid ""
+"Fetch a \"thin\" pack, which records objects in deltified form based on "
+"objects not included in the pack to reduce network traffic."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-grep.txt:218
+#: en/git-fetch-pack.txt:64 en/git-pack-objects.txt:83
 #, no-wrap
-msgid "--heading"
+msgid "--include-tag"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:221
+#: en/git-fetch-pack.txt:69
 msgid ""
-"Show the filename above the matches in that file instead of at the start of "
-"each shown line."
+"If the remote side supports it, annotated tags objects will be downloaded on "
+"the same connection as the other objects if the object the tag references is "
+"downloaded.  The caller must otherwise determine the tags this option made "
+"available."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-grep.txt:223
+#: en/git-fetch-pack.txt:70
 #, no-wrap
-msgid "--show-function"
+msgid "--upload-pack=<git-upload-pack>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:229
+#: en/git-fetch-pack.txt:81
 msgid ""
-"Show the preceding line that contains the function name of the match, unless "
-"the matching line is a function name itself.  The name is determined in the "
-"same way as 'git diff' works out patch hunk headers (see 'Defining a custom "
-"hunk-header' in linkgit:gitattributes[5])."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-grep.txt:230
-#, no-wrap
-msgid "-<num>"
+"Use this to specify the path to 'git-upload-pack' on the remote side, if is "
+"not found on your $PATH.  Installations of sshd ignores the user's "
+"environment setup scripts for login shells (e.g. .bash_profile) and your "
+"privately installed git may not be found on the system default $PATH.  "
+"Another workaround suggested is to set up your $PATH in \".bashrc\", but "
+"this flag is for people who do not want to pay the overhead for non-"
+"interactive shells by having a lean .bashrc file (they set most of the "
+"things up in .bash_profile)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-grep.txt:231
+#: en/git-fetch-pack.txt:82
 #, no-wrap
-msgid "-C <num>"
+msgid "--exec=<git-upload-pack>"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:232
-#, no-wrap
-msgid "--context <num>"
+#. type: Plain text
+#: en/git-fetch-pack.txt:84
+msgid "Same as --upload-pack=<git-upload-pack>."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:235
+#: en/git-fetch-pack.txt:89
 msgid ""
-"Show <num> leading and trailing lines, and place a line containing `--` "
-"between contiguous groups of matches."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-grep.txt:236
-#, no-wrap
-msgid "-A <num>"
+"Limit fetching to ancestor-chains not longer than n.  'git-upload-pack' "
+"treats the special depth 2147483647 as infinite even if there is an ancestor-"
+"chain that long."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-grep.txt:237
+#: en/git-fetch-pack.txt:99
 #, no-wrap
-msgid "--after-context <num>"
+msgid "--deepen-relative"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:240
+#: en/git-fetch-pack.txt:103
 msgid ""
-"Show <num> trailing lines, and place a line containing `--` between "
-"contiguous groups of matches."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-grep.txt:241
-#, no-wrap
-msgid "-B <num>"
+"Argument --depth specifies the number of commits from the current shallow "
+"boundary instead of from the tip of each remote branch history."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-grep.txt:242
+#: en/git-fetch-pack.txt:104 en/merge-options.txt:130
 #, no-wrap
-msgid "--before-context <num>"
+msgid "--no-progress"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:245
-msgid ""
-"Show <num> leading lines, and place a line containing `--` between "
-"contiguous groups of matches."
+#: en/git-fetch-pack.txt:106
+msgid "Do not show the progress."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-grep.txt:247 en/diff-options.txt:547
+#: en/git-fetch-pack.txt:107 en/git-index-pack.txt:77
 #, no-wrap
-msgid "--function-context"
+msgid "--check-self-contained-and-connected"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:252
+#: en/git-fetch-pack.txt:110
 msgid ""
-"Show the surrounding text from the previous line containing a function name "
-"up to the one before the next function name, effectively showing the whole "
-"function in which the match was found."
+"Output \"connectivity-ok\" if the received pack is self-contained and "
+"connected."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:253
-#, no-wrap
-msgid "--threads <num>"
+#. type: Plain text
+#: en/git-fetch-pack.txt:113 en/git-push.txt:370 en/git-send-pack.txt:63
+msgid "Run verbosely."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:256
-msgid ""
-"Number of grep worker threads to use.  See `grep.threads` in 'CONFIGURATION' "
-"for more information."
+#: en/git-fetch-pack.txt:116
+msgid "The URL to the remote repository."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-grep.txt:257
+#: en/git-fetch-pack.txt:117 en/git-ls-remote.txt:86
 #, no-wrap
-msgid "-f <file>"
+msgid "<refs>..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:259
-msgid "Read patterns from <file>, one per line."
+#: en/git-fetch-pack.txt:121
+msgid ""
+"The remote heads to update from. This is relative to $GIT_DIR (e.g. \"HEAD"
+"\", \"refs/heads/master\").  When unspecified, update from all heads the "
+"remote side has."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:265
+#: en/git-fetch-pack.txt:125
 msgid ""
-"The next parameter is the pattern. This option has to be used for patterns "
-"starting with `-` and should be used in scripts passing user input to grep.  "
-"Multiple patterns are combined by 'or'."
+"If the remote has enabled the options `uploadpack.allowTipSHA1InWant`, "
+"`uploadpack.allowReachableSHA1InWant`, or `uploadpack.allowAnySHA1InWant`, "
+"they may alternatively be 40-hex sha1s present on the remote."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:266
+#. type: Title =
+#: en/git-fetch.txt:2
 #, no-wrap
-msgid "--and"
+msgid "git-fetch(1)"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:267
-#, no-wrap
-msgid "--or"
+#. type: Plain text
+#: en/git-fetch.txt:7
+msgid "git-fetch - Download objects and refs from another repository"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:268 en/git-rev-parse.txt:129 en/rev-list-options.txt:131
+#. type: Plain text
+#: en/git-fetch.txt:16
 #, no-wrap
-msgid "--not"
+msgid ""
+"'git fetch' [<options>] [<repository> [<refspec>...]]\n"
+"'git fetch' [<options>] <group>\n"
+"'git fetch' --multiple [<options>] [(<repository> | <group>)...]\n"
+"'git fetch' --all [<options>]\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:269
-#, no-wrap
-msgid "( ... )"
+#. type: Plain text
+#: en/git-fetch.txt:24
+msgid ""
+"Fetch branches and/or tags (collectively, \"refs\") from one or more other "
+"repositories, along with the objects necessary to complete their histories.  "
+"Remote-tracking branches are updated (see the description of <refspec> below "
+"for ways to control this behavior)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:274
+#: en/git-fetch.txt:32
 msgid ""
-"Specify how multiple patterns are combined using Boolean expressions.  "
-"`--or` is the default operator.  `--and` has higher precedence than `--or`.  "
-"`-e` has to be used for all patterns."
+"By default, any tag that points into the histories being fetched is also "
+"fetched; the effect is to fetch tags that point at branches that you are "
+"interested in.  This default behavior can be changed by using the --tags or "
+"--no-tags options or by configuring remote.<name>.tagOpt.  By using a "
+"refspec that fetches tags explicitly, you can fetch tags that do not point "
+"into branches you are interested in as well."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:275 en/rev-list-options.txt:67
-#, no-wrap
-msgid "--all-match"
+#. type: Plain text
+#: en/git-fetch.txt:37
+msgid ""
+"'git fetch' can fetch from either a single named repository or URL, or from "
+"several repositories at once if <group> is given and there is a remotes."
+"<group> entry in the configuration file.  (See linkgit:git-config[1])."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:279
+#: en/git-fetch.txt:40
 msgid ""
-"When giving multiple pattern expressions combined with `--or`, this flag is "
-"specified to limit the match to files that have lines to match all of them."
+"When no remote is specified, by default the `origin` remote will be used, "
+"unless there's an upstream branch configured for the current branch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:284
+#: en/git-fetch.txt:44
 msgid ""
-"Do not output matched lines; instead, exit with status 0 when there is a "
-"match and with non-zero status when there isn't."
+"The names of refs that are fetched, together with the object names they "
+"point at, are written to `.git/FETCH_HEAD`.  This information may be used by "
+"scripts or other git commands, such as linkgit:git-pull[1]."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:285
+#. type: Title -
+#: en/git-fetch.txt:55
 #, no-wrap
-msgid "<tree>..."
+msgid "CONFIGURED REMOTE-TRACKING BRANCHES[[CRTB]]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:288
+#: en/git-fetch.txt:61
 msgid ""
-"Instead of searching tracked files in the working tree, search blobs in the "
-"given trees."
+"You often interact with the same remote repository by regularly and "
+"repeatedly fetching from it.  In order to keep track of the progress of such "
+"a remote repository, `git fetch` allows you to configure `remote."
+"<repository>.fetch` configuration variables."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:292
+#: en/git-fetch.txt:63
+msgid "Typically such a variable may look like this:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-fetch.txt:67
+#, no-wrap
 msgid ""
-"Signals the end of options; the rest of the parameters are <pathspec> "
-"limiters."
+"[remote \"origin\"]\n"
+"\tfetch = +refs/heads/*:refs/remotes/origin/*\n"
+msgstr ""
+
+#. type: Plain text
+#: en/git-fetch.txt:70
+msgid "This configuration is used in two ways:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:296
+#: en/git-fetch.txt:80
 msgid ""
-"If given, limit the search to paths matching at least one pattern.  Both "
-"leading paths match and glob(7) patterns are supported."
+"When `git fetch` is run without specifying what branches and/or tags to "
+"fetch on the command line, e.g. `git fetch origin` or `git fetch`, `remote."
+"<repository>.fetch` values are used as the refspecs--they specify which refs "
+"to fetch and which local refs to update.  The example above will fetch all "
+"branches that exist in the `origin` (i.e. any ref that matches the left-hand "
+"side of the value, `refs/heads/*`) and update the corresponding remote-"
+"tracking branches in the `refs/remotes/origin/*` hierarchy."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:300
-#, no-wrap
-msgid "`git grep 'time_t' -- '*.[ch]'`"
+#. type: Plain text
+#: en/git-fetch.txt:97
+msgid ""
+"When `git fetch` is run with explicit branches and/or tags to fetch on the "
+"command line, e.g. `git fetch origin master`, the <refspec>s given on the "
+"command line determine what are to be fetched (e.g. `master` in the example, "
+"which is a short-hand for `master:`, which in turn means \"fetch the "
+"'master' branch but I do not explicitly say what remote-tracking branch to "
+"update with it from the command line\"), and the example command will fetch "
+"_only_ the 'master' branch.  The `remote.<repository>.fetch` values "
+"determine which remote-tracking branch, if any, is updated.  When used in "
+"this way, the `remote.<repository>.fetch` values do not have any effect in "
+"deciding _what_ gets fetched (i.e. the values are not used as refspecs when "
+"the command-line lists refspecs); they are only used to decide _where_ the "
+"refs that are fetched are stored by acting as a mapping."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:303
+#: en/git-fetch.txt:101
 msgid ""
-"Looks for `time_t` in all tracked .c and .h files in the working directory "
-"and its subdirectories."
+"The latter use of the `remote.<repository>.fetch` values can be overridden "
+"by giving the `--refmap=<refspec>` parameter(s) on the command line."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:304
+#. type: Title -
+#: en/git-fetch.txt:103
 #, no-wrap
-msgid "`git grep -e '#define' --and \\( -e MAX_PATH -e PATH_MAX \\)`"
+msgid "PRUNING"
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:307
-msgid "Looks for a line that has `#define` and either `MAX_PATH` or `PATH_MAX`."
+#: en/git-fetch.txt:108
+msgid ""
+"Git has a default disposition of keeping data unless it's explicitly thrown "
+"away; this extends to holding onto local references to branches on remotes "
+"that have themselves deleted those branches."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-grep.txt:308
-#, no-wrap
-msgid "`git grep --all-match -e NODE -e Unexpected`"
+#. type: Plain text
+#: en/git-fetch.txt:114
+msgid ""
+"If left to accumulate, these stale references might make performance worse "
+"on big and busy repos that have a lot of branch churn, and e.g. make the "
+"output of commands like `git branch -a --contains <commit>` needlessly "
+"verbose, as well as impacting anything else that'll work with the complete "
+"set of known references."
 msgstr ""
 
 #. type: Plain text
-#: en/git-grep.txt:311
+#: en/git-fetch.txt:117
 msgid ""
-"Looks for a line that has `NODE` or `Unexpected` in files that have lines "
-"that match both."
+"These remote-tracking references can be deleted as a one-off with either of:"
 msgstr ""
 
-#. type: Title =
-#: en/git-gui.txt:2
+#. type: delimited block -
+#: en/git-fetch.txt:121
 #, no-wrap
-msgid "git-gui(1)"
+msgid ""
+"# While fetching\n"
+"$ git fetch --prune <name>\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-gui.txt:7
-msgid "git-gui - A portable graphical interface to Git"
+#. type: delimited block -
+#: en/git-fetch.txt:124
+#, no-wrap
+msgid ""
+"# Only prune, don't fetch\n"
+"$ git remote prune <name>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gui.txt:12
-#, no-wrap
-msgid "'git gui' [<command>] [arguments]\n"
+#: en/git-fetch.txt:130
+msgid ""
+"To prune references as part of your normal workflow without needing to "
+"remember to run that, set `fetch.prune` globally, or `remote.<name>.prune` "
+"per-remote in the config. See linkgit:git-config[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-gui.txt:19
+#: en/git-fetch.txt:135
 msgid ""
-"A Tcl/Tk based graphical user interface to Git.  'git gui' focuses on "
-"allowing users to make changes to their repository by making new commits, "
-"amending existing ones, creating branches, performing local merges, and "
-"fetching/pushing to remote repositories."
+"Here's where things get tricky and more specific. The pruning feature "
+"doesn't actually care about branches, instead it'll prune local <-> remote-"
+"references as a function of the refspec of the remote (see `<refspec>` and "
+"<<CRTB,CONFIGURED REMOTE-TRACKING BRANCHES>> above)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-gui.txt:24
+#: en/git-fetch.txt:141
 msgid ""
-"Unlike 'gitk', 'git gui' focuses on commit generation and single file "
-"annotation and does not show project history.  It does however supply menu "
-"actions to start a 'gitk' session from within 'git gui'."
+"Therefore if the refspec for the remote includes e.g. `refs/tags/*:refs/tags/"
+"*`, or you manually run e.g. `git fetch --prune <name> \"refs/tags/*:refs/"
+"tags/*\"` it won't be stale remote tracking branches that are deleted, but "
+"any local tag that doesn't exist on the remote."
 msgstr ""
 
 #. type: Plain text
-#: en/git-gui.txt:29
+#: en/git-fetch.txt:146
 msgid ""
-"'git gui' is known to work on all popular UNIX systems, Mac OS X, and "
-"Windows (under both Cygwin and MSYS).  To the extent possible OS specific "
-"user interface guidelines are followed, making 'git gui' a fairly native "
-"interface for users."
+"This might not be what you expect, i.e. you want to prune remote `<name>`, "
+"but also explicitly fetch tags from it, so when you fetch from it you delete "
+"all your local tags, most of which may not have come from the `<name>` "
+"remote in the first place."
 msgstr ""
 
-#. type: Title -
-#: en/git-gui.txt:31 en/git-p4.txt:63 en/git-remote.txt:42 en/git-rerere.txt:32 en/git-shell.txt:25 en/git-submodule.txt:60 en/git-svn.txt:29 en/git-worktree.txt:47
-#, no-wrap
-msgid "COMMANDS"
+#. type: Plain text
+#: en/git-fetch.txt:150
+msgid ""
+"So be careful when using this with a refspec like `refs/tags/*:refs/tags/*`, "
+"or any other refspec which might map references from multiple remotes to the "
+"same local namespace."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-gui.txt:32
-#, no-wrap
-msgid "blame"
+#. type: Plain text
+#: en/git-fetch.txt:157
+msgid ""
+"Since keeping up-to-date with both branches and tags on the remote is a "
+"common use-case the `--prune-tags` option can be supplied along with `--"
+"prune` to prune local tags that don't exist on the remote, and force-update "
+"those tags that differ. Tag pruning can also be enabled with `fetch."
+"pruneTags` or `remote.<name>.pruneTags` in the config. See linkgit:git-"
+"config[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-gui.txt:35
+#: en/git-fetch.txt:161
 msgid ""
-"Start a blame viewer on the specified file on the given version (or working "
-"directory if not specified)."
+"The `--prune-tags` option is equivalent to having `refs/tags/*:refs/tags/*` "
+"declared in the refspecs of the remote. This can lead to some seemingly "
+"strange interactions:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-gui.txt:36
+#. type: delimited block -
+#: en/git-fetch.txt:166
 #, no-wrap
-msgid "browser"
+msgid ""
+"# These both fetch tags\n"
+"$ git fetch --no-tags origin 'refs/tags/*:refs/tags/*'\n"
+"$ git fetch --no-tags --prune-tags origin\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gui.txt:40
+#: en/git-fetch.txt:172
 msgid ""
-"Start a tree browser showing all files in the specified commit.  Files "
-"selected through the browser are opened in the blame viewer."
+"The reason it doesn't error out when provided without `--prune` or its "
+"config versions is for flexibility of the configured versions, and to "
+"maintain a 1=1 mapping between what the command line flags do, and what the "
+"configuration versions do."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-gui.txt:41
-#, no-wrap
-msgid "citool"
+#. type: Plain text
+#: en/git-fetch.txt:177
+msgid ""
+"It's reasonable to e.g. configure `fetch.pruneTags=true` in `~/.gitconfig` "
+"to have tags pruned whenever `git fetch --prune` is run, without making "
+"every invocation of `git fetch` without `--prune` an error."
 msgstr ""
 
 #. type: Plain text
-#: en/git-gui.txt:46
+#: en/git-fetch.txt:181
 msgid ""
-"Start 'git gui' and arrange to make exactly one commit before exiting and "
-"returning to the shell.  The interface is limited to only commit actions, "
-"slightly reducing the application's startup time and simplifying the "
-"menubar."
+"Pruning tags with `--prune-tags` also works when fetching a URL instead of a "
+"named remote. These will all prune tags not found on origin:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-gui.txt:47
+#. type: delimited block -
+#: en/git-fetch.txt:187
 #, no-wrap
-msgid "version"
+msgid ""
+"$ git fetch origin --prune --prune-tags\n"
+"$ git fetch origin --prune 'refs/tags/*:refs/tags/*'\n"
+"$ git fetch <url of origin> --prune --prune-tags\n"
+"$ git fetch <url of origin> --prune 'refs/tags/*:refs/tags/*'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gui.txt:49
-msgid "Display the currently running version of 'git gui'."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-gui.txt:53
-#, no-wrap
-msgid "`git gui blame Makefile`"
+#: en/git-fetch.txt:195
+msgid ""
+"The output of \"git fetch\" depends on the transport method used; this "
+"section describes the output when fetching over the Git protocol (either "
+"locally or via ssh) and Smart HTTP protocol."
 msgstr ""
 
 #. type: Plain text
-#: en/git-gui.txt:61
+#: en/git-fetch.txt:198
 msgid ""
-"Show the contents of the file 'Makefile' in the current working directory, "
-"and provide annotations for both the original author of each line, and who "
-"moved the line to its current location.  The uncommitted file is annotated, "
-"and uncommitted changes (if any) are explicitly attributed to 'Not Yet "
-"Committed'."
+"The status of the fetch is output in tabular form, with each line "
+"representing the status of a single ref. Each line is of the form:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-gui.txt:62
+#. type: delimited block -
+#: en/git-fetch.txt:201
 #, no-wrap
-msgid "`git gui blame v0.99.8 Makefile`"
+msgid " <flag> <summary> <from> -> <to> [<reason>]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gui.txt:68
+#: en/git-fetch.txt:205
 msgid ""
-"Show the contents of 'Makefile' in revision 'v0.99.8' and provide "
-"annotations for each line.  Unlike the above example the file is read from "
-"the object database and not the working directory."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-gui.txt:69
-#, no-wrap
-msgid "`git gui blame --line=100 Makefile`"
+"The status of up-to-date refs is shown only if the --verbose option is used."
 msgstr ""
 
 #. type: Plain text
-#: en/git-gui.txt:73
+#: en/git-fetch.txt:210
 msgid ""
-"Loads annotations as described above and automatically scrolls the view to "
-"center on line '100'."
+"In compact output mode, specified with configuration variable fetch.output, "
+"if either entire `<from>` or `<to>` is found in the other string, it will be "
+"substituted with `*` in the other string. For example, `master -> origin/"
+"master` becomes `master -> origin/*`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-gui.txt:74
+#: en/git-fetch.txt:211 en/git-push.txt:431
 #, no-wrap
-msgid "`git gui citool`"
+msgid "flag"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gui.txt:79
-msgid ""
-"Make one commit and return to the shell when it is complete.  This command "
-"returns a non-zero exit code if the window was closed in any way other than "
-"by making a commit."
+#: en/git-fetch.txt:213 en/git-push.txt:433
+msgid "A single character indicating the status of the ref:"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-gui.txt:80
+#: en/git-fetch.txt:213 en/git-push.txt:433
 #, no-wrap
-msgid "`git gui citool --amend`"
+msgid "(space)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gui.txt:84
-msgid "Automatically enter the 'Amend Last Commit' mode of the interface."
+#: en/git-fetch.txt:214
+msgid "for a successfully fetched fast-forward;"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-gui.txt:85
+#: en/git-fetch.txt:214 en/git-push.txt:434
 #, no-wrap
-msgid "`git gui citool --nocommit`"
+msgid "`+`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gui.txt:91
-msgid ""
-"Behave as normal citool, but instead of making a commit simply terminate "
-"with a zero exit code. It still checks that the index does not contain any "
-"unmerged entries, so you can use it as a GUI version of "
-"linkgit:git-mergetool[1]"
+#: en/git-fetch.txt:215 en/git-push.txt:435
+msgid "for a successful forced update;"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-gui.txt:92
+#: en/git-fetch.txt:215 en/git-push.txt:435
 #, no-wrap
-msgid "`git citool`"
+msgid "`-`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gui.txt:95
-msgid "Same as `git gui citool` (above)."
+#: en/git-fetch.txt:216
+msgid "for a successfully pruned ref;"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-gui.txt:96
+#: en/git-fetch.txt:216
 #, no-wrap
-msgid "`git gui browser maint`"
+msgid "`t`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gui.txt:101
-msgid ""
-"Show a browser for the tree of the 'maint' branch.  Files selected in the "
-"browser can be viewed with the internal blame viewer."
+#: en/git-fetch.txt:217
+msgid "for a successful tag update;"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-gui.txt:104 en/cmds-mainporcelain.txt:112
+#: en/git-fetch.txt:217 en/git-push.txt:436
 #, no-wrap
-msgid "linkgit:gitk[1]"
+msgid "`*`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gui.txt:108
-msgid ""
-"The Git repository browser.  Shows branches, commit history and file "
-"differences.  gitk is the utility started by 'git gui''s Repository "
-"Visualize actions."
+#: en/git-fetch.txt:218
+msgid "for a successfully fetched new ref;"
 msgstr ""
 
-#. type: Title -
-#: en/git-gui.txt:110
+#. type: Labeled list
+#: en/git-fetch.txt:218 en/git-push.txt:437
 #, no-wrap
-msgid "Other"
+msgid "`!`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gui.txt:114
-msgid ""
-"'git gui' is actually maintained as an independent project, but stable "
-"versions are distributed as part of the Git suite for the convenience of end "
-"users."
+#: en/git-fetch.txt:219
+msgid "for a ref that was rejected or failed to update; and"
 msgstr ""
 
-#. type: Plain text
-#: en/git-gui.txt:116
-msgid "A 'git gui' development repository can be obtained from:"
+#. type: Labeled list
+#: en/git-fetch.txt:219 en/git-push.txt:438
+#, no-wrap
+msgid "`=`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gui.txt:118
-#, no-wrap
-msgid "  git clone git://repo.or.cz/git-gui.git\n"
+#: en/git-fetch.txt:220
+msgid "for a ref that was up to date and did not need fetching."
 msgstr ""
 
-#. type: Plain text
-#: en/git-gui.txt:122
+#. type: Labeled list
+#: en/git-fetch.txt:221 en/git-push.txt:440
 #, no-wrap
-msgid "  git clone http://repo.or.cz/r/git-gui.git\n"
+msgid "summary"
 msgstr ""
 
 #. type: Plain text
-#: en/git-gui.txt:124
-msgid "or browsed online at http://repo.or.cz/w/git-gui.git/[]."
+#: en/git-fetch.txt:226
+msgid ""
+"For a successfully fetched ref, the summary shows the old and new values of "
+"the ref in a form suitable for using as an argument to `git log` (this is "
+"`<old>..<new>` in most cases, and `<old>...<new>` for forced non-fast-"
+"forward updates)."
 msgstr ""
 
-#. type: Title =
-#: en/git-hash-object.txt:2
+#. type: Labeled list
+#: en/git-fetch.txt:227 en/git-push.txt:468
 #, no-wrap
-msgid "git-hash-object(1)"
+msgid "from"
 msgstr ""
 
 #. type: Plain text
-#: en/git-hash-object.txt:7
+#: en/git-fetch.txt:231
 msgid ""
-"git-hash-object - Compute object ID and optionally creates a blob from a "
-"file"
+"The name of the remote ref being fetched from, minus its `refs/<type>/` "
+"prefix. In the case of deletion, the name of the remote ref is \"(none)\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-hash-object.txt:14
+#: en/git-fetch.txt:232 en/git-push.txt:473 en/git-rebase.txt:1037
 #, no-wrap
-msgid ""
-"'git hash-object' [-t <type>] [-w] [--path=<file>|--no-filters] [--stdin "
-"[--literally]] [--] <file>...\n"
-"'git hash-object' [-t <type>] [-w] --stdin-paths [--no-filters]\n"
+msgid "to"
 msgstr ""
 
 #. type: Plain text
-#: en/git-hash-object.txt:24
+#: en/git-fetch.txt:235
 msgid ""
-"Computes the object ID value for an object with specified type with the "
-"contents of the named file (which can be outside of the work tree), and "
-"optionally writes the resulting object into the object database.  Reports "
-"its object ID to its standard output.  This is used by 'git cvsimport' to "
-"update the index without modifying files in the work tree.  When <type> is "
-"not specified, it defaults to \"blob\"."
+"The name of the local ref being updated, minus its `refs/<type>/` prefix."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-hash-object.txt:28
+#: en/git-fetch.txt:236 en/git-push.txt:477
 #, no-wrap
-msgid "-t <type>"
+msgid "reason"
 msgstr ""
 
 #. type: Plain text
-#: en/git-hash-object.txt:30
-msgid "Specify the type (default: \"blob\")."
+#: en/git-fetch.txt:240
+msgid ""
+"A human-readable explanation. In the case of successfully fetched refs, no "
+"explanation is needed. For a failed ref, the reason for failure is described."
 msgstr ""
 
 #. type: Plain text
-#: en/git-hash-object.txt:33
-msgid "Actually write the object into the object database."
+#: en/git-fetch.txt:245
+msgid "Update the remote-tracking branches:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-fetch.txt:248
+#, no-wrap
+msgid "$ git fetch origin\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-hash-object.txt:36
-msgid "Read the object from standard input instead of from a file."
+#: en/git-fetch.txt:254
+msgid ""
+"The above command copies all branches from the remote refs/heads/ namespace "
+"and stores them to the local refs/remotes/origin/ namespace, unless the "
+"branch.<name>.fetch option is used to specify a non-default refspec."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-hash-object.txt:37
+#. type: Plain text
+#: en/git-fetch.txt:256
+msgid "Using refspecs explicitly:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-fetch.txt:259
 #, no-wrap
-msgid "--stdin-paths"
+msgid "$ git fetch origin +pu:pu maint:tmp\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-hash-object.txt:40
+#: en/git-fetch.txt:264
 msgid ""
-"Read file names from the standard input, one per line, instead of from the "
-"command-line."
+"This updates (or creates, as necessary) branches `pu` and `tmp` in the local "
+"repository by fetching from the branches (respectively)  `pu` and `maint` "
+"from the remote repository."
 msgstr ""
 
 #. type: Plain text
-#: en/git-hash-object.txt:50
+#: en/git-fetch.txt:267
 msgid ""
-"Hash object as it were located at the given path. The location of file does "
-"not directly influence on the hash value, but path is used to determine what "
-"Git filters should be applied to the object before it can be placed to the "
-"object database, and, as result of applying filters, the actual blob put "
-"into the object database may differ from the given file. This option is "
-"mainly useful for hashing temporary files located outside of the working "
-"directory or files read from stdin."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-hash-object.txt:51
-#, no-wrap
-msgid "--no-filters"
+"The `pu` branch will be updated even if it is does not fast-forward, because "
+"it is prefixed with a plus sign; `tmp` will not be."
 msgstr ""
 
 #. type: Plain text
-#: en/git-hash-object.txt:56
+#: en/git-fetch.txt:270
 msgid ""
-"Hash the contents as is, ignoring any input filter that would have been "
-"chosen by the attributes mechanism, including the end-of-line conversion. If "
-"the file is read from standard input then this is always implied, unless the "
-"`--path` option is given."
+"Peek at a remote's branch, without configuring the remote in your local "
+"repository:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-hash-object.txt:57
+#. type: delimited block -
+#: en/git-fetch.txt:274
 #, no-wrap
-msgid "--literally"
+msgid ""
+"$ git fetch git://git.kernel.org/pub/scm/git/git.git maint\n"
+"$ git log FETCH_HEAD\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-hash-object.txt:62
+#: en/git-fetch.txt:281
 msgid ""
-"Allow `--stdin` to hash any garbage into a loose object which might not "
-"otherwise pass standard object parsing or git-fsck checks. Useful for "
-"stress-testing Git itself or reproducing characteristics of corrupt or bogus "
-"objects encountered in the wild."
+"The first command fetches the `maint` branch from the repository at `git://"
+"git.kernel.org/pub/scm/git/git.git` and the second command uses `FETCH_HEAD` "
+"to examine the branch with linkgit:git-log[1].  The fetched objects will "
+"eventually be removed by git's built-in housekeeping (see linkgit:git-gc[1])."
+msgstr ""
+
+#. type: Plain text
+#: en/git-fetch.txt:292 en/git-pull.txt:255
+msgid ""
+"Using --recurse-submodules can only fetch new commits in already checked out "
+"submodules right now. When e.g. upstream added a new submodule in the just "
+"fetched commits of the superproject the submodule itself can not be fetched, "
+"making it impossible to check out that submodule later without having to do "
+"a fetch again. This is expected to be fixed in a future Git version."
 msgstr ""
 
 #. type: Title =
-#: en/git-help.txt:2
+#: en/git-filter-branch.txt:2
 #, no-wrap
-msgid "git-help(1)"
+msgid "git-filter-branch(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:7
-msgid "git-help - Display help information about Git"
+#: en/git-filter-branch.txt:7
+msgid "git-filter-branch - Rewrite branches"
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:13
+#: en/git-filter-branch.txt:18
 #, no-wrap
 msgid ""
-"'git help' [-a|--all] [-g|--guide]\n"
-"\t   [-i|--info|-m|--man|-w|--web] [COMMAND|GUIDE]\n"
+"'git filter-branch' [--setup <command>] [--subdirectory-filter <directory>]\n"
+"\t[--env-filter <command>] [--tree-filter <command>]\n"
+"\t[--index-filter <command>] [--parent-filter <command>]\n"
+"\t[--msg-filter <command>] [--commit-filter <command>]\n"
+"\t[--tag-name-filter <command>] [--prune-empty]\n"
+"\t[--original <namespace>] [-d <directory>] [-f | --force]\n"
+"\t[--state-branch <branch>] [--] [<rev-list options>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:20
+#: en/git-filter-branch.txt:27
 msgid ""
-"With no options and no COMMAND or GUIDE given, the synopsis of the 'git' "
-"command and a list of the most commonly used Git commands are printed on the "
-"standard output."
+"Lets you rewrite Git revision history by rewriting the branches mentioned in "
+"the <rev-list options>, applying custom filters on each revision.  Those "
+"filters can modify each tree (e.g. removing a file or running a perl rewrite "
+"on all files) or information about each commit.  Otherwise, all information "
+"(including original commit times or merge information) will be preserved."
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:23
+#: en/git-filter-branch.txt:34
 msgid ""
-"If the option `--all` or `-a` is given, all available commands are printed "
-"on the standard output."
+"The command will only rewrite the _positive_ refs mentioned in the command "
+"line (e.g. if you pass 'a..b', only 'b' will be rewritten).  If you specify "
+"no filters, the commits will be recommitted without any changes, which would "
+"normally have no effect.  Nevertheless, this may be useful in the future for "
+"compensating for some Git bugs or such, therefore such a usage is permitted."
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:26
+#: en/git-filter-branch.txt:39
+#, no-wrap
 msgid ""
-"If the option `--guide` or `-g` is given, a list of the useful Git guides is "
-"also printed on the standard output."
+"*NOTE*: This command honors `.git/info/grafts` file and refs in\n"
+"the `refs/replace/` namespace.\n"
+"If you have any grafts or replacement refs defined, running this command\n"
+"will make them permanent.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:31
+#: en/git-filter-branch.txt:48
+#, no-wrap
 msgid ""
-"If a command, or a guide, is given, a manual page for that command or guide "
-"is brought up. The 'man' program is used by default for this purpose, but "
-"this can be overridden by other options or configuration variables."
+"*WARNING*! The rewritten history will have different object names for all\n"
+"the objects and will not converge with the original branch.  You will not\n"
+"be able to easily push and distribute the rewritten branch on top of the\n"
+"original branch.  Please do not use this command if you do not know the\n"
+"full implications, and avoid using it anyway, if a simple single commit\n"
+"would suffice to fix your problem.  (See the \"RECOVERING FROM UPSTREAM\n"
+"REBASE\" section in linkgit:git-rebase[1] for further information about\n"
+"rewriting published history.)\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:34
+#: en/git-filter-branch.txt:52
 msgid ""
-"Note that `git --help ...` is identical to `git help ...` because the former "
-"is internally converted into the latter."
+"Always verify that the rewritten version is correct: The original refs, if "
+"different from the rewritten ones, will be stored in the namespace 'refs/"
+"original/'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:36
-msgid "To display the linkgit:git[1] man page, use `git help git`."
+#: en/git-filter-branch.txt:56
+msgid ""
+"Note that since this operation is very I/O expensive, it might be a good "
+"idea to redirect the temporary directory off-disk with the `-d` option, e.g. "
+"on tmpfs.  Reportedly the speedup is very noticeable."
 msgstr ""
 
-#. type: Plain text
-#: en/git-help.txt:38
-msgid "This page can be displayed with 'git help help' or `git help --help`"
+#. type: Title ~
+#: en/git-filter-branch.txt:59
+#, no-wrap
+msgid "Filters"
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:45
+#: en/git-filter-branch.txt:71
 msgid ""
-"Prints all the available commands on the standard output. This option "
-"overrides any given command or guide name."
+"The filters are applied in the order as listed below.  The <command> "
+"argument is always evaluated in the shell context using the 'eval' command "
+"(with the notable exception of the commit filter, for technical reasons).  "
+"Prior to that, the `$GIT_COMMIT` environment variable will be set to contain "
+"the id of the commit being rewritten.  Also, GIT_AUTHOR_NAME, "
+"GIT_AUTHOR_EMAIL, GIT_AUTHOR_DATE, GIT_COMMITTER_NAME, GIT_COMMITTER_EMAIL, "
+"and GIT_COMMITTER_DATE are taken from the current commit and exported to the "
+"environment, in order to affect the author and committer identities of the "
+"replacement commit created by linkgit:git-commit-tree[1] after the filters "
+"have run."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-help.txt:47
-#, no-wrap
-msgid "--guides"
+#. type: Plain text
+#: en/git-filter-branch.txt:74
+msgid ""
+"If any evaluation of <command> returns a non-zero exit status, the whole "
+"operation will be aborted."
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:50
+#: en/git-filter-branch.txt:80
 msgid ""
-"Prints a list of useful guides on the standard output. This option overrides "
-"any given command or guide name."
+"A 'map' function is available that takes an \"original sha1 id\" argument "
+"and outputs a \"rewritten sha1 id\" if the commit has been already "
+"rewritten, and \"original sha1 id\" otherwise; the 'map' function can return "
+"several ids on separate lines if your commit filter emitted multiple commits."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-help.txt:52
+#: en/git-filter-branch.txt:85
 #, no-wrap
-msgid "--info"
+msgid "--setup <command>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:55
+#: en/git-filter-branch.txt:91
 msgid ""
-"Display manual page for the command in the 'info' format. The 'info' program "
-"will be used for that purpose."
+"This is not a real filter executed for each commit but a one time setup just "
+"before the loop. Therefore no commit-specific variables are defined yet.  "
+"Functions or variables defined here can be used or modified in the following "
+"filter steps except the commit filter, for technical reasons."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-help.txt:57
+#: en/git-filter-branch.txt:92
 #, no-wrap
-msgid "--man"
-msgstr ""
-
-#. type: Plain text
-#: en/git-help.txt:61
-msgid ""
-"Display manual page for the command in the 'man' format. This option may be "
-"used to override a value set in the `help.format` configuration variable."
+msgid "--subdirectory-filter <directory>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:65
+#: en/git-filter-branch.txt:96
 msgid ""
-"By default the 'man' program will be used to display the manual page, but "
-"the `man.viewer` configuration variable may be used to choose other display "
-"programs (see below)."
+"Only look at the history which touches the given subdirectory.  The result "
+"will contain that directory (and only that) as its project root. Implies "
+"<<Remap_to_ancestor>>."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-help.txt:67
+#: en/git-filter-branch.txt:97
 #, no-wrap
-msgid "--web"
-msgstr ""
-
-#. type: Plain text
-#: en/git-help.txt:70
-msgid ""
-"Display manual page for the command in the 'web' (HTML)  format. A web "
-"browser will be used for that purpose."
+msgid "--env-filter <command>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:76
+#: en/git-filter-branch.txt:102
 msgid ""
-"The web browser can be specified using the configuration variable "
-"`help.browser`, or `web.browser` if the former is not set. If none of these "
-"config variables is set, the 'git web{litdd}browse' helper script (called by "
-"'git help') will pick a suitable default. See "
-"linkgit:git-web{litdd}browse[1] for more information about this."
-msgstr ""
-
-#. type: Title -
-#: en/git-help.txt:78 en/git-interpret-trailers.txt:84 en/git-p4.txt:450 en/git-web--browse.txt:59
-#, no-wrap
-msgid "CONFIGURATION VARIABLES"
+"This filter may be used if you only need to modify the environment in which "
+"the commit will be performed.  Specifically, you might want to rewrite the "
+"author/committer name/email/time environment variables (see linkgit:git-"
+"commit-tree[1] for details)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-help.txt:81 en/config.txt:1765
+#: en/git-filter-branch.txt:103
 #, no-wrap
-msgid "help.format"
+msgid "--tree-filter <command>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:87
+#: en/git-filter-branch.txt:110
 msgid ""
-"If no command-line option is passed, the `help.format` configuration "
-"variable will be checked. The following values are supported for this "
-"variable; they make 'git help' behave as their corresponding command- line "
-"option:"
-msgstr ""
-
-#. type: Plain text
-#: en/git-help.txt:89
-msgid "\"man\" corresponds to '-m|--man',"
+"This is the filter for rewriting the tree and its contents.  The argument is "
+"evaluated in shell with the working directory set to the root of the checked "
+"out tree.  The new tree is then used as-is (new files are auto-added, "
+"disappeared files are auto-removed - neither .gitignore files nor any other "
+"ignore rules *HAVE ANY EFFECT*!)."
 msgstr ""
 
-#. type: Plain text
-#: en/git-help.txt:90
-msgid "\"info\" corresponds to '-i|--info',"
+#. type: Labeled list
+#: en/git-filter-branch.txt:111
+#, no-wrap
+msgid "--index-filter <command>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:91
-msgid "\"web\" or \"html\" correspond to '-w|--web'."
+#: en/git-filter-branch.txt:117
+msgid ""
+"This is the filter for rewriting the index.  It is similar to the tree "
+"filter but does not check out the tree, which makes it much faster.  "
+"Frequently used with `git rm --cached --ignore-unmatch ...`, see EXAMPLES "
+"below.  For hairy cases, see linkgit:git-update-index[1]."
 msgstr ""
 
-#. type: Title ~
-#: en/git-help.txt:93
+#. type: Labeled list
+#: en/git-filter-branch.txt:118
 #, no-wrap
-msgid "help.browser, web.browser and browser.<tool>.path"
+msgid "--parent-filter <command>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:99
+#: en/git-filter-branch.txt:125
 msgid ""
-"The `help.browser`, `web.browser` and `browser.<tool>.path` will also be "
-"checked if the 'web' format is chosen (either by command-line option or "
-"configuration variable). See '-w|--web' in the OPTIONS section above and "
-"linkgit:git-web{litdd}browse[1]."
+"This is the filter for rewriting the commit's parent list.  It will receive "
+"the parent string on stdin and shall output the new parent string on "
+"stdout.  The parent string is in the format described in linkgit:git-commit-"
+"tree[1]: empty for the initial commit, \"-p parent\" for a normal commit and "
+"\"-p parent1 -p parent2 -p parent3 ...\" for a merge commit."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-help.txt:101 en/config.txt:2170
+#: en/git-filter-branch.txt:126
 #, no-wrap
-msgid "man.viewer"
+msgid "--msg-filter <command>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:105
+#: en/git-filter-branch.txt:131
 msgid ""
-"The `man.viewer` configuration variable will be checked if the 'man' format "
-"is chosen. The following values are currently supported:"
+"This is the filter for rewriting the commit messages.  The argument is "
+"evaluated in the shell with the original commit message on standard input; "
+"its standard output is used as the new commit message."
 msgstr ""
 
-#. type: Plain text
-#: en/git-help.txt:107
-msgid "\"man\": use the 'man' program as usual,"
+#. type: Labeled list
+#: en/git-filter-branch.txt:132
+#, no-wrap
+msgid "--commit-filter <command>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:109
+#: en/git-filter-branch.txt:138
 msgid ""
-"\"woman\": use 'emacsclient' to launch the \"woman\" mode in emacs (this "
-"only works starting with emacsclient versions 22),"
+"This is the filter for performing the commit.  If this filter is specified, "
+"it will be called instead of the 'git commit-tree' command, with arguments "
+"of the form \"<TREE_ID> [(-p <PARENT_COMMIT_ID>)...]\" and the log message "
+"on stdin.  The commit id is expected on stdout."
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:111
+#: en/git-filter-branch.txt:142
 msgid ""
-"\"konqueror\": use 'kfmclient' to open the man page in a new konqueror tab "
-"(see 'Note about konqueror' below)."
+"As a special extension, the commit filter may emit multiple commit ids; in "
+"that case, the rewritten children of the original commit will have all of "
+"them as parents."
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:114
+#: en/git-filter-branch.txt:147
 msgid ""
-"Values for other tools can be used if there is a corresponding "
-"`man.<tool>.cmd` configuration entry (see below)."
+"You can use the 'map' convenience function in this filter, and other "
+"convenience functions, too.  For example, calling 'skip_commit \"$@\"' will "
+"leave out the current commit (but not its changes! If you want that, use "
+"'git rebase' instead)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:118
+#: en/git-filter-branch.txt:151
 msgid ""
-"Multiple values may be given to the `man.viewer` configuration "
-"variable. Their corresponding programs will be tried in the order listed in "
-"the configuration file."
+"You can also use the `git_commit_non_empty_tree \"$@\"` instead of `git "
+"commit-tree \"$@\"` if you don't wish to keep commits with a single parent "
+"and that makes no change to the tree."
 msgstr ""
 
-#. type: Plain text
-#: en/git-help.txt:120
-msgid "For example, this configuration:"
+#. type: Labeled list
+#: en/git-filter-branch.txt:152
+#, no-wrap
+msgid "--tag-name-filter <command>"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-help.txt:125
-#, no-wrap
+#. type: Plain text
+#: en/git-filter-branch.txt:158
 msgid ""
-"\t[man]\n"
-"\t\tviewer = konqueror\n"
-"\t\tviewer = woman\n"
+"This is the filter for rewriting tag names. When passed, it will be called "
+"for every tag ref that points to a rewritten object (or to a tag object "
+"which points to a rewritten object).  The original tag name is passed via "
+"standard input, and the new tag name is expected on standard output."
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:129
+#: en/git-filter-branch.txt:163
 msgid ""
-"will try to use konqueror first. But this may fail (for example, if DISPLAY "
-"is not set) and in that case emacs' woman mode will be tried."
+"The original tags are not deleted, but can be overwritten; use \"--tag-name-"
+"filter cat\" to simply update the tags.  In this case, be very careful and "
+"make sure you have the old tags backed up in case the conversion has run "
+"afoul."
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:133
+#: en/git-filter-branch.txt:174
 msgid ""
-"If everything fails, or if no viewer is configured, the viewer specified in "
-"the `GIT_MAN_VIEWER` environment variable will be tried.  If that fails too, "
-"the 'man' program will be tried anyway."
+"Nearly proper rewriting of tag objects is supported. If the tag has a "
+"message attached, a new tag object will be created with the same message, "
+"author, and timestamp. If the tag has a signature attached, the signature "
+"will be stripped. It is by definition impossible to preserve signatures. The "
+"reason this is \"nearly\" proper, is because ideally if the tag did not "
+"change (points to the same object, has the same name, etc.)  it should "
+"retain any signature. That is not the case, signatures will always be "
+"removed, buyer beware. There is also no support for changing the author or "
+"timestamp (or the tag message for that matter). Tags which point to other "
+"tags will be rewritten to point to the underlying commit."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-help.txt:135 en/config.txt:2179
+#: en/git-filter-branch.txt:175
 #, no-wrap
-msgid "man.<tool>.path"
+msgid "--prune-empty"
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:142
+#: en/git-filter-branch.txt:182
 msgid ""
-"You can explicitly provide a full path to your preferred man viewer by "
-"setting the configuration variable `man.<tool>.path`. For example, you can "
-"configure the absolute path to konqueror by setting "
-"'man.konqueror.path'. Otherwise, 'git help' assumes the tool is available in "
-"PATH."
+"Some filters will generate empty commits that leave the tree untouched.  "
+"This option instructs git-filter-branch to remove such commits if they have "
+"exactly one or zero non-pruned parents; merge commits will therefore remain "
+"intact.  This option cannot be used together with `--commit-filter`, though "
+"the same effect can be achieved by using the provided "
+"`git_commit_non_empty_tree` function in a commit filter."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-help.txt:144 en/config.txt:2174
+#: en/git-filter-branch.txt:183
 #, no-wrap
-msgid "man.<tool>.cmd"
+msgid "--original <namespace>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:152
+#: en/git-filter-branch.txt:186
 msgid ""
-"When the man viewer, specified by the `man.viewer` configuration variables, "
-"is not among the supported ones, then the corresponding `man.<tool>.cmd` "
-"configuration variable will be looked up. If this variable exists then the "
-"specified tool will be treated as a custom command and a shell eval will be "
-"used to run the command with the man page passed as arguments."
+"Use this option to set the namespace where the original commits will be "
+"stored. The default value is 'refs/original'."
 msgstr ""
 
-#. type: Title -
-#: en/git-help.txt:154 en/git-web--browse.txt:88
+#. type: Labeled list
+#: en/git-filter-branch.txt:187
 #, no-wrap
-msgid "Note about konqueror"
+msgid "-d <directory>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:159
+#: en/git-filter-branch.txt:194
 msgid ""
-"When 'konqueror' is specified in the `man.viewer` configuration variable, we "
-"launch 'kfmclient' to try to open the man page on an already opened "
-"konqueror in a new tab if possible."
+"Use this option to set the path to the temporary directory used for "
+"rewriting.  When applying a tree filter, the command needs to temporarily "
+"check out the tree to some directory, which may consume considerable space "
+"in case of large projects.  By default it does this in the '.git-rewrite/' "
+"directory but you can override that choice by this parameter."
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:163
+#: en/git-filter-branch.txt:200
 msgid ""
-"For consistency, we also try such a trick if 'man.konqueror.path' is set to "
-"something like 'A_PATH_TO/konqueror'. That means we will try to launch "
-"'A_PATH_TO/kfmclient' instead."
+"'git filter-branch' refuses to start with an existing temporary directory or "
+"when there are already refs starting with 'refs/original/', unless forced."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-filter-branch.txt:201
+#, no-wrap
+msgid "--state-branch <branch>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:166 en/git-web--browse.txt:100
+#: en/git-filter-branch.txt:206
 msgid ""
-"If you really want to use 'konqueror', then you can use something like the "
-"following:"
+"This option will cause the mapping from old to new objects to be loaded from "
+"named branch upon startup and saved as a new commit to that branch upon "
+"exit, enabling incremental of large trees. If '<branch>' does not exist it "
+"will be created."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-help.txt:170
+#. type: Labeled list
+#: en/git-filter-branch.txt:207
 #, no-wrap
-msgid ""
-"\t[man]\n"
-"\t\tviewer = konq\n"
+msgid "<rev-list options>..."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-help.txt:173
-#, no-wrap
+#. type: Plain text
+#: en/git-filter-branch.txt:212
 msgid ""
-"\t[man \"konq\"]\n"
-"\t\tcmd = A_PATH_TO/konqueror\n"
+"Arguments for 'git rev-list'.  All positive refs included by these options "
+"are rewritten.  You may also specify options such as `--all`, but you must "
+"use `--` to separate them from the 'git filter-branch' options. Implies "
+"<<Remap_to_ancestor>>."
 msgstr ""
 
 #. type: Title ~
-#: en/git-help.txt:176
+#: en/git-filter-branch.txt:216
 #, no-wrap
-msgid "Note about git config --global"
+msgid "Remap to ancestor"
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:180
+#: en/git-filter-branch.txt:223
 msgid ""
-"Note that all these configuration variables should probably be set using the "
-"`--global` flag, for example like this:"
+"By using linkgit:git-rev-list[1] arguments, e.g., path limiters, you can "
+"limit the set of revisions which get rewritten. However, positive refs on "
+"the command line are distinguished: we don't let them be excluded by such "
+"limiters. For this purpose, they are instead rewritten to point at the "
+"nearest ancestor that was not excluded."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-help.txt:184
-#, no-wrap
+#. type: Plain text
+#: en/git-filter-branch.txt:231
 msgid ""
-"$ git config --global help.format web\n"
-"$ git config --global web.browser firefox\n"
+"On success, the exit status is `0`.  If the filter can't find any commits to "
+"rewrite, the exit status is `2`.  On any other error, the exit status may be "
+"any other non-zero value."
 msgstr ""
 
 #. type: Plain text
-#: en/git-help.txt:188 en/git-web--browse.txt:121
+#: en/git-filter-branch.txt:238
 msgid ""
-"as they are probably more user specific than repository specific.  See "
-"linkgit:git-config[1] for more information about this."
+"Suppose you want to remove a file (containing confidential information or "
+"copyright violation) from all commits:"
 msgstr ""
 
-#. type: Title =
-#: en/git-http-backend.txt:2
+#. type: delimited block -
+#: en/git-filter-branch.txt:241
 #, no-wrap
-msgid "git-http-backend(1)"
+msgid "git filter-branch --tree-filter 'rm filename' HEAD\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:7
-msgid "git-http-backend - Server side implementation of Git over HTTP"
+#: en/git-filter-branch.txt:246
+msgid ""
+"However, if the file is absent from the tree of some commit, a simple `rm "
+"filename` will fail for that tree and commit.  Thus you may instead want to "
+"use `rm -f filename` as the script."
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:12
+#: en/git-filter-branch.txt:252
+msgid ""
+"Using `--index-filter` with 'git rm' yields a significantly faster version.  "
+"Like with using `rm filename`, `git rm --cached filename` will fail if the "
+"file is absent from the tree of a commit.  If you want to \"completely forget"
+"\" a file, it does not matter when it entered history, so we also add `--"
+"ignore-unmatch`:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-filter-branch.txt:255
 #, no-wrap
-msgid "'git http-backend'\n"
+msgid "git filter-branch --index-filter 'git rm --cached --ignore-unmatch filename' HEAD\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:20
-msgid ""
-"A simple CGI program to serve the contents of a Git repository to Git "
-"clients accessing the repository over http:// and https:// protocols.  The "
-"program supports clients fetching using both the smart HTTP protocol and the "
-"backwards-compatible dumb HTTP protocol, as well as clients pushing using "
-"the smart HTTP protocol."
+#: en/git-filter-branch.txt:258
+msgid "Now, you will get the rewritten history saved in HEAD."
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:25
+#: en/git-filter-branch.txt:261
 msgid ""
-"It verifies that the directory has the magic file \"git-daemon-export-ok\", "
-"and it will refuse to export any Git directory that hasn't explicitly been "
-"marked for export this way (unless the `GIT_HTTP_EXPORT_ALL` environmental "
-"variable is set)."
+"To rewrite the repository to look as if `foodir/` had been its project root, "
+"and discard all other history:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-filter-branch.txt:264
+#, no-wrap
+msgid "git filter-branch --subdirectory-filter foodir -- --all\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:31
+#: en/git-filter-branch.txt:269
 msgid ""
-"By default, only the `upload-pack` service is enabled, which serves 'git "
-"fetch-pack' and 'git ls-remote' clients, which are invoked from 'git fetch', "
-"'git pull', and 'git clone'.  If the client is authenticated, the "
-"`receive-pack` service is enabled, which serves 'git send-pack' clients, "
-"which is invoked from 'git push'."
+"Thus you can, e.g., turn a library subdirectory into a repository of its "
+"own.  Note the `--` that separates 'filter-branch' options from revision "
+"options, and the `--all` to rewrite all branches and tags."
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:36
+#: en/git-filter-branch.txt:273
 msgid ""
-"These services can be enabled/disabled using the per-repository "
-"configuration file:"
+"To set a commit (which typically is at the tip of another history) to be the "
+"parent of the current initial commit, in order to paste the other history "
+"behind the current history:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-http-backend.txt:37
+#. type: delimited block -
+#: en/git-filter-branch.txt:276
 #, no-wrap
-msgid "http.getanyfile"
+msgid "git filter-branch --parent-filter 'sed \"s/^\\$/-p <graft-id>/\"' HEAD\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:44
+#: en/git-filter-branch.txt:282
 msgid ""
-"This serves Git clients older than version 1.6.6 that are unable to use the "
-"upload pack service.  When enabled, clients are able to read any file within "
-"the repository, including objects that are no longer reachable from a branch "
-"but are still present.  It is enabled by default, but a repository can "
-"disable it by setting this configuration item to `false`."
+"(if the parent string is empty - which happens when we are dealing with the "
+"initial commit - add graftcommit as a parent).  Note that this assumes "
+"history with a single root (that is, no merge without common ancestors "
+"happened).  If this is not the case, use:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-http-backend.txt:45
+#. type: delimited block -
+#: en/git-filter-branch.txt:286
 #, no-wrap
-msgid "http.uploadpack"
+msgid ""
+"git filter-branch --parent-filter \\\n"
+"\t'test $GIT_COMMIT = <commit-id> && echo \"-p <graft-id>\" || cat' HEAD\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:49
-msgid ""
-"This serves 'git fetch-pack' and 'git ls-remote' clients.  It is enabled by "
-"default, but a repository can disable it by setting this configuration item "
-"to `false`."
+#: en/git-filter-branch.txt:289
+msgid "or even simpler:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-http-backend.txt:50
+#. type: delimited block -
+#: en/git-filter-branch.txt:293
 #, no-wrap
-msgid "http.receivepack"
+msgid ""
+"git replace --graft $commit-id $graft-id\n"
+"git filter-branch $graft-id..HEAD\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:56
-msgid ""
-"This serves 'git send-pack' clients, allowing push.  It is disabled by "
-"default for anonymous users, and enabled by default for users authenticated "
-"by the web server.  It can be disabled by setting this item to `false`, or "
-"enabled for all users, including anonymous users, by setting it to `true`."
+#: en/git-filter-branch.txt:296
+msgid "To remove commits authored by \"Darl McBribe\" from the history:"
 msgstr ""
 
-#. type: Title -
-#: en/git-http-backend.txt:58
+#. type: delimited block -
+#: en/git-filter-branch.txt:305
 #, no-wrap
-msgid "URL TRANSLATION"
+msgid ""
+"git filter-branch --commit-filter '\n"
+"\tif [ \"$GIT_AUTHOR_NAME\" = \"Darl McBribe\" ];\n"
+"\tthen\n"
+"\t\tskip_commit \"$@\";\n"
+"\telse\n"
+"\t\tgit commit-tree \"$@\";\n"
+"\tfi' HEAD\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:65
+#: en/git-filter-branch.txt:308
+msgid "The function 'skip_commit' is defined as follows:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-filter-branch.txt:320
+#, no-wrap
 msgid ""
-"To determine the location of the repository on disk, 'git http-backend' "
-"concatenates the environment variables PATH_INFO, which is set automatically "
-"by the web server, and GIT_PROJECT_ROOT, which must be set manually in the "
-"web server configuration.  If GIT_PROJECT_ROOT is not set, 'git "
-"http-backend' reads PATH_TRANSLATED, which is also set automatically by the "
-"web server."
+"skip_commit()\n"
+"{\n"
+"\tshift;\n"
+"\twhile [ -n \"$1\" ];\n"
+"\tdo\n"
+"\t\tshift;\n"
+"\t\tmap \"$1\";\n"
+"\t\tshift;\n"
+"\tdone;\n"
+"}\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:70
+#: en/git-filter-branch.txt:327
 msgid ""
-"All of the following examples map `http://$hostname/git/foo/bar.git` to "
-"`/var/www/git/foo/bar.git`."
+"The shift magic first throws away the tree id and then the -p parameters.  "
+"Note that this handles merges properly! In case Darl committed a merge "
+"between P1 and P2, it will be propagated properly and all children of the "
+"merge will become merge commits with P1,P2 as their parents instead of the "
+"merge commit."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-http-backend.txt:71
+#. type: Plain text
+#: en/git-filter-branch.txt:332
 #, no-wrap
-msgid "Apache 2.x"
+msgid ""
+"*NOTE* the changes introduced by the commits, and which are not reverted\n"
+"by subsequent commits, will still be in the rewritten branch. If you want\n"
+"to throw out _changes_ together with the commits, you should use the\n"
+"interactive mode of 'git rebase'.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:75
+#: en/git-filter-branch.txt:336
 msgid ""
-"Ensure mod_cgi, mod_alias, and mod_env are enabled, set GIT_PROJECT_ROOT (or "
-"DocumentRoot) appropriately, and create a ScriptAlias to the CGI:"
+"You can rewrite the commit log messages using `--msg-filter`.  For example, "
+"'git svn-id' strings in a repository created by 'git svn' can be removed "
+"this way:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-http-backend.txt:80
+#: en/git-filter-branch.txt:341
 #, no-wrap
 msgid ""
-"SetEnv GIT_PROJECT_ROOT /var/www/git\n"
-"SetEnv GIT_HTTP_EXPORT_ALL\n"
-"ScriptAlias /git/ /usr/libexec/git-core/git-http-backend/\n"
+"git filter-branch --msg-filter '\n"
+"\tsed -e \"/^git-svn-id:/d\"\n"
+"'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:86
+#: en/git-filter-branch.txt:345
 msgid ""
-"To enable anonymous read access but authenticated write access, require "
-"authorization for both the initial ref advertisement (which we detect as a "
-"push via the service parameter in the query string), and the receive-pack "
-"invocation itself:"
+"If you need to add 'Acked-by' lines to, say, the last 10 commits (none of "
+"which is a merge), use this command:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-http-backend.txt:91
+#: en/git-filter-branch.txt:351
 #, no-wrap
 msgid ""
-"RewriteCond %{QUERY_STRING} service=git-receive-pack [OR]\n"
-"RewriteCond %{REQUEST_URI} /git-receive-pack$\n"
-"RewriteRule ^/git/ - [E=AUTHREQUIRED:yes]\n"
+"git filter-branch --msg-filter '\n"
+"\tcat &&\n"
+"\techo \"Acked-by: Bugs Bunny <bunny@bugzilla.org>\"\n"
+"' HEAD~10..HEAD\n"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-http-backend.txt:95
-#, no-wrap
+#. type: Plain text
+#: en/git-filter-branch.txt:357
 msgid ""
-"<LocationMatch \"^/git/\">\n"
-"\tOrder Deny,Allow\n"
-"\tDeny from env=AUTHREQUIRED\n"
+"The `--env-filter` option can be used to modify committer and/or author "
+"identity.  For example, if you found out that your commits have the wrong "
+"identity due to a misconfigured user.email, you can make a correction, "
+"before publishing the project, like this:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-http-backend.txt:102
+#: en/git-filter-branch.txt:369
 #, no-wrap
 msgid ""
-"\tAuthType Basic\n"
-"\tAuthName \"Git Access\"\n"
-"\tRequire group committers\n"
-"\tSatisfy Any\n"
-"\t...\n"
-"</LocationMatch>\n"
+"git filter-branch --env-filter '\n"
+"\tif test \"$GIT_AUTHOR_EMAIL\" = \"root@localhost\"\n"
+"\tthen\n"
+"\t\tGIT_AUTHOR_EMAIL=john@example.com\n"
+"\tfi\n"
+"\tif test \"$GIT_COMMITTER_EMAIL\" = \"root@localhost\"\n"
+"\tthen\n"
+"\t\tGIT_COMMITTER_EMAIL=john@example.com\n"
+"\tfi\n"
+"' -- --all\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:107
+#: en/git-filter-branch.txt:375
 msgid ""
-"If you do not have `mod_rewrite` available to match against the query "
-"string, it is sufficient to just protect `git-receive-pack` itself, like:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-http-backend.txt:115
-#, no-wrap
-msgid ""
-"<LocationMatch \"^/git/.*/git-receive-pack$\">\n"
-"\tAuthType Basic\n"
-"\tAuthName \"Git Access\"\n"
-"\tRequire group committers\n"
-"\t...\n"
-"</LocationMatch>\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-http-backend.txt:125
-msgid ""
-"In this mode, the server will not request authentication until the client "
-"actually starts the object negotiation phase of the push, rather than during "
-"the initial contact.  For this reason, you must also enable the "
-"`http.receivepack` config option in any repositories that should accept a "
-"push. The default behavior, if `http.receivepack` is not set, is to reject "
-"any pushes by unauthenticated users; the initial request will therefore "
-"report `403 Forbidden` to the client, without even giving an opportunity for "
-"authentication."
-msgstr ""
-
-#. type: Plain text
-#: en/git-http-backend.txt:128
-msgid ""
-"To require authentication for both reads and writes, use a Location "
-"directive around the repository, or one of its parent directories:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-http-backend.txt:136
-#, no-wrap
-msgid ""
-"<Location /git/private>\n"
-"\tAuthType Basic\n"
-"\tAuthName \"Private Git Access\"\n"
-"\tRequire group committers\n"
-"\t...\n"
-"</Location>\n"
+"To restrict rewriting to only part of the history, specify a revision range "
+"in addition to the new branch name.  The new branch name will point to the "
+"top-most revision that a 'git rev-list' of this range will print."
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:141
-msgid ""
-"To serve gitweb at the same url, use a ScriptAliasMatch to only those URLs "
-"that 'git http-backend' can handle, and forward the rest to gitweb:"
+#: en/git-filter-branch.txt:377
+msgid "Consider this history:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-http-backend.txt:151
+#: en/git-filter-branch.txt:382
 #, no-wrap
 msgid ""
-"ScriptAliasMatch \\\n"
-"\t\"(?x)^/git/(.*/(HEAD | \\\n"
-"\t\t\tinfo/refs | \\\n"
-"\t\t\tobjects/(info/[^/]+ | \\\n"
-"\t\t\t\t [0-9a-f]{2}/[0-9a-f]{38} | \\\n"
-"\t\t\t\t pack/pack-[0-9a-f]{40}\\.(pack|idx)) | \\\n"
-"\t\t\tgit-(upload|receive)-pack))$\" \\\n"
-"\t/usr/libexec/git-core/git-http-backend/$1\n"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-http-backend.txt:153
-#, no-wrap
-msgid "ScriptAlias /git/ /var/www/cgi-bin/gitweb.cgi/\n"
+"     D--E--F--G--H\n"
+"    /     /\n"
+"A--B-----C\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:157
-msgid ""
-"To serve multiple repositories from different linkgit:gitnamespaces[7] in a "
-"single repository:"
+#: en/git-filter-branch.txt:385
+msgid "To rewrite only commits D,E,F,G,H, but leave A, B and C alone, use:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-http-backend.txt:161
-#, no-wrap
-msgid ""
-"SetEnvIf Request_URI \"^/git/([^/]*)\" GIT_NAMESPACE=$1\n"
-"ScriptAliasMatch ^/git/[^/]*(.*) "
-"/usr/libexec/git-core/git-http-backend/storage.git$1\n"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-http-backend.txt:163
+#: en/git-filter-branch.txt:388
 #, no-wrap
-msgid "Accelerated static Apache 2.x"
+msgid "git filter-branch ... C..H\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:168
-msgid ""
-"Similar to the above, but Apache can be used to return static files that are "
-"stored on disk.\tOn many systems this may be more efficient as Apache can "
-"ask the kernel to copy the file contents from the file system directly to "
-"the network:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-http-backend.txt:171 en/git-http-backend.txt:181
-#, no-wrap
-msgid "SetEnv GIT_PROJECT_ROOT /var/www/git\n"
+#: en/git-filter-branch.txt:391
+msgid "To rewrite commits E,F,G,H, use one of these:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-http-backend.txt:175
+#: en/git-filter-branch.txt:395
 #, no-wrap
 msgid ""
-"AliasMatch ^/git/(.*/objects/[0-9a-f]{2}/[0-9a-f]{38})$          "
-"/var/www/git/$1\n"
-"AliasMatch ^/git/(.*/objects/pack/pack-[0-9a-f]{40}.(pack|idx))$ "
-"/var/www/git/$1\n"
-"ScriptAlias /git/ /usr/libexec/git-core/git-http-backend/\n"
+"git filter-branch ... C..H --not D\n"
+"git filter-branch ... D..H --not C\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:178
-msgid "This can be combined with the gitweb configuration:"
+#: en/git-filter-branch.txt:398
+msgid "To move the whole tree into a subdirectory, or remove it from there:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-http-backend.txt:191
+#: en/git-filter-branch.txt:405
 #, no-wrap
 msgid ""
-"AliasMatch ^/git/(.*/objects/[0-9a-f]{2}/[0-9a-f]{38})$          "
-"/var/www/git/$1\n"
-"AliasMatch ^/git/(.*/objects/pack/pack-[0-9a-f]{40}.(pack|idx))$ "
-"/var/www/git/$1\n"
-"ScriptAliasMatch \\\n"
-"\t\"(?x)^/git/(.*/(HEAD | \\\n"
-"\t\t\tinfo/refs | \\\n"
-"\t\t\tobjects/info/[^/]+ | \\\n"
-"\t\t\tgit-(upload|receive)-pack))$\" \\\n"
-"\t/usr/libexec/git-core/git-http-backend/$1\n"
-"ScriptAlias /git/ /var/www/cgi-bin/gitweb.cgi/\n"
+"git filter-branch --index-filter \\\n"
+"\t'git ls-files -s | sed \"s-\\t\\\"*-&newsubdir/-\" |\n"
+"\t\tGIT_INDEX_FILE=$GIT_INDEX_FILE.new \\\n"
+"\t\t\tgit update-index --index-info &&\n"
+"\t mv \"$GIT_INDEX_FILE.new\" \"$GIT_INDEX_FILE\"' HEAD\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-http-backend.txt:193
+#. type: Title -
+#: en/git-filter-branch.txt:410
 #, no-wrap
-msgid "Lighttpd"
+msgid "CHECKLIST FOR SHRINKING A REPOSITORY"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:197
-msgid ""
-"Ensure that `mod_cgi`, `mod_alias`, `mod_auth`, `mod_setenv` are loaded, "
-"then set `GIT_PROJECT_ROOT` appropriately and redirect all requests to the "
-"CGI:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-http-backend.txt:207
-#, no-wrap
+#: en/git-filter-branch.txt:418
 msgid ""
-"alias.url += ( \"/git\" => \"/usr/lib/git-core/git-http-backend\" )\n"
-"$HTTP[\"url\"] =~ \"^/git\" {\n"
-"\tcgi.assign = (\"\" => \"\")\n"
-"\tsetenv.add-environment = (\n"
-"\t\t\"GIT_PROJECT_ROOT\" => \"/var/www/git\",\n"
-"\t\t\"GIT_HTTP_EXPORT_ALL\" => \"\"\n"
-"\t)\n"
-"}\n"
+"git-filter-branch can be used to get rid of a subset of files, usually with "
+"some combination of `--index-filter` and `--subdirectory-filter`.  People "
+"expect the resulting repository to be smaller than the original, but you "
+"need a few more steps to actually make it smaller, because Git tries hard "
+"not to lose your objects until you tell it to.  First make sure that:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:210
-msgid "To enable anonymous read access but authenticated write access:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-http-backend.txt:218
-#, no-wrap
+#: en/git-filter-branch.txt:422
 msgid ""
-"$HTTP[\"querystring\"] =~ \"service=git-receive-pack\" {\n"
-"\tinclude \"git-auth.conf\"\n"
-"}\n"
-"$HTTP[\"url\"] =~ \"^/git/.*/git-receive-pack$\" {\n"
-"\tinclude \"git-auth.conf\"\n"
-"}\n"
+"You really removed all variants of a filename, if a blob was moved over its "
+"lifetime.  `git log --name-only --follow --all -- filename` can help you "
+"find renames."
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:221
-msgid "where `git-auth.conf` looks something like:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-http-backend.txt:231
-#, no-wrap
+#: en/git-filter-branch.txt:425
 msgid ""
-"auth.require = (\n"
-"\t\"/\" => (\n"
-"\t\t\"method\" => \"basic\",\n"
-"\t\t\"realm\" => \"Git Access\",\n"
-"\t\t\"require\" => \"valid-user\"\n"
-"\t       )\n"
-")\n"
-"# ...and set up auth.backend here\n"
+"You really filtered all refs: use `--tag-name-filter cat -- --all` when "
+"calling git-filter-branch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:234
-msgid "To require authentication for both reads and writes:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-http-backend.txt:239
-#, no-wrap
+#: en/git-filter-branch.txt:428
 msgid ""
-"$HTTP[\"url\"] =~ \"^/git/private\" {\n"
-"\tinclude \"git-auth.conf\"\n"
-"}\n"
+"Then there are two ways to get a smaller repository.  A safer way is to "
+"clone, that keeps your original intact."
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:246
+#: en/git-filter-branch.txt:432
 msgid ""
-"'git http-backend' relies upon the `CGI` environment variables set by the "
-"invoking web server, including:"
-msgstr ""
-
-#. type: Plain text
-#: en/git-http-backend.txt:248
-msgid "PATH_INFO (if GIT_PROJECT_ROOT is set, otherwise PATH_TRANSLATED)"
-msgstr ""
-
-#. type: Plain text
-#: en/git-http-backend.txt:249
-msgid "REMOTE_USER"
+"Clone it with `git clone file:///path/to/repo`.  The clone will not have the "
+"removed objects.  See linkgit:git-clone[1].  (Note that cloning with a plain "
+"path just hardlinks everything!)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:250
-msgid "REMOTE_ADDR"
+#: en/git-filter-branch.txt:437
+msgid ""
+"If you really don't want to clone it, for whatever reasons, check the "
+"following points instead (in this order).  This is a very destructive "
+"approach, so *make a backup* or go back to cloning it.  You have been warned."
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:251
-msgid "CONTENT_TYPE"
+#: en/git-filter-branch.txt:441
+msgid ""
+"Remove the original refs backed up by git-filter-branch: say `git for-each-"
+"ref --format=\"%(refname)\" refs/original/ | xargs -n 1 git update-ref -d`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:252
-msgid "QUERY_STRING"
+#: en/git-filter-branch.txt:443
+msgid "Expire all reflogs with `git reflog expire --expire=now --all`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:253
-msgid "REQUEST_METHOD"
+#: en/git-filter-branch.txt:447
+msgid ""
+"Garbage collect all unreferenced objects with `git gc --prune=now` (or if "
+"your git-gc is not new enough to support arguments to `--prune`, use `git "
+"repack -ad; git prune` instead)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:257
+#: en/git-filter-branch.txt:459
 msgid ""
-"The `GIT_HTTP_EXPORT_ALL` environmental variable may be passed to "
-"'git-http-backend' to bypass the check for the \"git-daemon-export-ok\" file "
-"in each repository before allowing export of that repository."
+"git-filter-branch allows you to make complex shell-scripted rewrites of your "
+"Git history, but you probably don't need this flexibility if you're simply "
+"_removing unwanted data_ like large files or passwords.  For those "
+"operations you may want to consider http://rtyley.github.io/bfg-repo-cleaner/"
+"[The BFG Repo-Cleaner], a JVM-based alternative to git-filter-branch, "
+"typically at least 10-50x faster for those use-cases, and with quite "
+"different characteristics:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:266
+#: en/git-filter-branch.txt:467
 msgid ""
-"The `GIT_HTTP_MAX_REQUEST_BUFFER` environment variable (or the "
-"`http.maxRequestBuffer` config variable) may be set to change the largest "
-"ref negotiation request that git will handle during a fetch; any fetch "
-"requiring a larger buffer will not succeed.  This value should not normally "
-"need to be changed, but may be helpful if you are fetching from a repository "
-"with an extremely large number of refs.  The value can be specified with a "
-"unit (e.g., `100M` for 100 megabytes). The default is 10 megabytes."
+"Any particular version of a file is cleaned exactly _once_. The BFG, unlike "
+"git-filter-branch, does not give you the opportunity to handle a file "
+"differently based on where or when it was committed within your history. "
+"This constraint gives the core performance benefit of The BFG, and is well-"
+"suited to the task of cleansing bad data - you don't care _where_ the bad "
+"data is, you just want it _gone_."
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:271
+#: en/git-filter-branch.txt:473
 msgid ""
-"The backend process sets GIT_COMMITTER_NAME to '$REMOTE_USER' and "
-"GIT_COMMITTER_EMAIL to '$\\{REMOTE_USER}@http.$\\{REMOTE_ADDR\\}', ensuring "
-"that any reflogs created by 'git-receive-pack' contain some identifying "
-"information of the remote user who performed the push."
+"By default The BFG takes full advantage of multi-core machines, cleansing "
+"commit file-trees in parallel. git-filter-branch cleans commits sequentially "
+"(i.e. in a single-threaded manner), though it _is_ possible to write filters "
+"that include their own parallelism, in the scripts executed against each "
+"commit."
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-backend.txt:274
+#: en/git-filter-branch.txt:478
 msgid ""
-"All `CGI` environment variables are available to each of the hooks invoked "
-"by the 'git-receive-pack'."
+"The http://rtyley.github.io/bfg-repo-cleaner/#examples[command options] are "
+"much more restrictive than git-filter branch, and dedicated just to the "
+"tasks of removing unwanted data- e.g: `--strip-blobs-bigger-than 1M`."
 msgstr ""
 
 #. type: Title =
-#: en/git-http-fetch.txt:2
+#: en/git-fmt-merge-msg.txt:2
 #, no-wrap
-msgid "git-http-fetch(1)"
+msgid "git-fmt-merge-msg(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-fetch.txt:7
-msgid "git-http-fetch - Download from a remote Git repository via HTTP"
+#: en/git-fmt-merge-msg.txt:7
+msgid "git-fmt-merge-msg - Produce a merge commit message"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-fetch.txt:13
+#: en/git-fmt-merge-msg.txt:14
 #, no-wrap
 msgid ""
-"'git http-fetch' [-c] [-t] [-a] [-d] [-v] [-w filename] [--recover] "
-"[--stdin] <commit> <url>\n"
+"'git fmt-merge-msg' [-m <message>] [--log[=<n>] | --no-log]\n"
+"'git fmt-merge-msg' [-m <message>] [--log[=<n>] | --no-log] -F <file>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-fetch.txt:17
-msgid "Downloads a remote Git repository via HTTP."
+#: en/git-fmt-merge-msg.txt:20
+msgid ""
+"Takes the list of merged objects on stdin and produces a suitable commit "
+"message to be used for the merge commit, usually to be passed as the '<merge-"
+"message>' argument of 'git merge'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-fetch.txt:20
-#, no-wrap
+#: en/git-fmt-merge-msg.txt:23
 msgid ""
-"*NOTE*: use of this command without -a is deprecated.  The -a\n"
-"behaviour will become the default in a future release.\n"
+"This command is intended mostly for internal use by scripts automatically "
+"invoking 'git merge'."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-http-fetch.txt:23
+#: en/git-fmt-merge-msg.txt:27 en/merge-options.txt:52
 #, no-wrap
-msgid "commit-id"
+msgid "--log[=<n>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-fetch.txt:26
-msgid "Either the hash or the filename under [URL]/refs/ to pull."
+#: en/git-fmt-merge-msg.txt:33
+msgid ""
+"In addition to branch names, populate the log message with one-line "
+"descriptions from the actual commits that are being merged.  At most <n> "
+"commits from each merge parent will be used (20 if <n> is omitted).  This "
+"overrides the `merge.log` configuration variable."
 msgstr ""
 
-#. type: Plain text
-#: en/git-http-fetch.txt:29
-msgid "Get the commit objects."
+#. type: Labeled list
+#: en/git-fmt-merge-msg.txt:34 en/merge-options.txt:53
+#, no-wrap
+msgid "--no-log"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-fetch.txt:31
-msgid "Get trees associated with the commit objects."
+#: en/git-fmt-merge-msg.txt:37
+msgid "Do not list one-line descriptions from the actual commits being merged."
 msgstr ""
 
-#. type: Plain text
-#: en/git-http-fetch.txt:33
-msgid "Get all the objects."
+#. type: Labeled list
+#: en/git-fmt-merge-msg.txt:38
+#, no-wrap
+msgid "--[no-]summary"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-fetch.txt:35
-msgid "Report what is downloaded."
+#: en/git-fmt-merge-msg.txt:41
+msgid ""
+"Synonyms to --log and --no-log; these are deprecated and will be removed in "
+"the future."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-http-fetch.txt:36
+#: en/git-fmt-merge-msg.txt:43
 #, no-wrap
-msgid "-w <filename>"
+msgid "--message <message>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-fetch.txt:39
+#: en/git-fmt-merge-msg.txt:46
 msgid ""
-"Writes the commit-id into the filename under $GIT_DIR/refs/<filename> on the "
-"local end after the transfer is complete."
+"Use <message> instead of the branch names for the first line of the log "
+"message.  For use with `--log`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-http-fetch.txt:43
-msgid ""
-"Instead of a commit id on the command line (which is not expected in this "
-"case), 'git http-fetch' expects lines on stdin in the format"
+#. type: Labeled list
+#: en/git-fmt-merge-msg.txt:48
+#, no-wrap
+msgid "--file <file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-fetch.txt:45
-#, no-wrap
-msgid "<commit-id>['\\t'<filename-as-in--w>]\n"
+#: en/git-fmt-merge-msg.txt:51
+msgid "Take the list of merged objects from <file> instead of stdin."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-http-fetch.txt:46
+#: en/git-fmt-merge-msg.txt:56
 #, no-wrap
-msgid "--recover"
+msgid "merge.summary"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-fetch.txt:49
+#: en/git-fmt-merge-msg.txt:59
 msgid ""
-"Verify that everything reachable from target is fetched.  Used after an "
-"earlier fetch is interrupted."
+"Synonym to `merge.log`; this is deprecated and will be removed in the future."
 msgstr ""
 
-#. type: Title =
-#: en/git-http-push.txt:2
+#. type: delimited block -
+#: en/git-fmt-merge-msg.txt:66
 #, no-wrap
-msgid "git-http-push(1)"
+msgid ""
+"$ git fetch origin master\n"
+"$ git fmt-merge-msg --log <$GIT_DIR/FETCH_HEAD\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-push.txt:7
-msgid "git-http-push - Push objects over HTTP/DAV to another repository"
+#: en/git-fmt-merge-msg.txt:70
+msgid ""
+"Print a log message describing a merge of the \"master\" branch from the "
+"\"origin\" remote."
 msgstr ""
 
-#. type: Plain text
-#: en/git-http-push.txt:13
+#. type: Title =
+#: en/git-for-each-ref.txt:2
 #, no-wrap
-msgid ""
-"'git http-push' [--all] [--dry-run] [--force] [--verbose] <url> <ref> "
-"[<ref>...]\n"
+msgid "git-for-each-ref(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-push.txt:18
-msgid "Sends missing objects to remote repository, and updates the remote branch."
+#: en/git-for-each-ref.txt:7
+msgid "git-for-each-ref - Output information on each ref"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-push.txt:22
+#: en/git-for-each-ref.txt:16
 #, no-wrap
 msgid ""
-"*NOTE*: This command is temporarily disabled if your libcurl\n"
-"is older than 7.16, as the combination has been reported\n"
-"not to work and sometimes corrupts repository.\n"
+"'git for-each-ref' [--count=<count>] [--shell|--perl|--python|--tcl]\n"
+"\t\t   [(--sort=<key>)...] [--format=<format>] [<pattern>...]\n"
+"\t\t   [--points-at=<object>]\n"
+"\t\t   (--merged[=<object>] | --no-merged[=<object>])\n"
+"\t\t   [--contains[=<object>]] [--no-contains[=<object>]]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-push.txt:29
+#: en/git-for-each-ref.txt:26
 msgid ""
-"Do not assume that the remote repository is complete in its current state, "
-"and verify all objects in the entire local ref's history exist in the remote "
-"repository."
+"Iterate over all refs that match `<pattern>` and show them according to the "
+"given `<format>`, after sorting them according to the given set of `<key>`.  "
+"If `<count>` is given, stop after showing that many refs.  The interpolated "
+"values in `<format>` can optionally be quoted as string literals in the "
+"specified host language allowing their direct evaluation in that language."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-for-each-ref.txt:29 en/git-show-ref.txt:88
+#, no-wrap
+msgid "<pattern>..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-push.txt:36 en/git-send-pack.txt:60
+#: en/git-for-each-ref.txt:34
 msgid ""
-"Usually, the command refuses to update a remote ref that is not an ancestor "
-"of the local ref used to overwrite it.  This flag disables the check.  What "
-"this means is that the remote repository can lose commits; use it with care."
+"If one or more patterns are given, only refs are shown that match against at "
+"least one pattern, either using fnmatch(3) or literally, in the latter case "
+"matching completely or from the beginning up to a slash."
 msgstr ""
 
-#. type: Plain text
-#: en/git-http-push.txt:39 en/git-push.txt:120 en/git-send-pack.txt:53
-msgid "Do everything except actually send the updates."
+#. type: Labeled list
+#: en/git-for-each-ref.txt:35
+#, no-wrap
+msgid "--count=<count>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-push.txt:43
+#: en/git-for-each-ref.txt:39
 msgid ""
-"Report the list of objects being walked locally and the list of objects "
-"successfully sent to the remote repository."
+"By default the command shows all refs that match `<pattern>`.  This option "
+"makes it stop after showing that many refs."
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-push.txt:49
+#: en/git-for-each-ref.txt:46
 msgid ""
-"Remove <ref> from remote repository.  The specified branch cannot be the "
-"remote HEAD.  If -d is specified the following other conditions must also be "
-"met:"
+"A field name to sort on.  Prefix `-` to sort in descending order of the "
+"value.  When unspecified, `refname` is used.  You may use the --sort=<key> "
+"option multiple times, in which case the last key becomes the primary key."
 msgstr ""
 
-#. type: Plain text
-#: en/git-http-push.txt:51
-msgid "Remote HEAD must resolve to an object that exists locally"
+#. type: Labeled list
+#: en/git-for-each-ref.txt:47 en/git-replace.txt:106 en/git-tag.txt:190
+#: en/pretty-options.txt:2
+#, no-wrap
+msgid "--format=<format>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-push.txt:52
-msgid "Specified branch resolves to an object that exists locally"
+#: en/git-for-each-ref.txt:59
+msgid ""
+"A string that interpolates `%(fieldname)` from a ref being shown and the "
+"object it points at.  If `fieldname` is prefixed with an asterisk (`*`) and "
+"the ref points at a tag object, use the value for the field in the object "
+"which the tag object refers to (instead of the field in the tag object).  "
+"When unspecified, `<format>` defaults to `%(objectname) SPC %(objecttype) "
+"TAB %(refname)`.  It also interpolates `%%` to `%`, and `%xx` where `xx` are "
+"hex digits interpolates to character with hex code `xx`; for example `%00` "
+"interpolates to `\\0` (NUL), `%09` to `\\t` (TAB) and `%0a` to `\\n` (LF)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-push.txt:53
-msgid "Specified branch is an ancestor of the remote HEAD"
+#: en/git-for-each-ref.txt:64 en/git-tag.txt:122
+msgid ""
+"Respect any colors specified in the `--format` option. The `<when>` field "
+"must be one of `always`, `never`, or `auto` (if `<when>` is absent, behave "
+"as if `always` was given)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-http-push.txt:54 en/git-send-pack.txt:92
+#: en/git-for-each-ref.txt:65
 #, no-wrap
-msgid "<ref>..."
+msgid "--shell"
 msgstr ""
 
-#. type: Plain text
-#: en/git-http-push.txt:56 en/git-send-pack.txt:94
-msgid "The remote refs to update."
+#. type: Labeled list
+#: en/git-for-each-ref.txt:66
+#, no-wrap
+msgid "--perl"
 msgstr ""
 
-#. type: Title -
-#: en/git-http-push.txt:59 en/git-send-pack.txt:97
+#. type: Labeled list
+#: en/git-for-each-ref.txt:67
 #, no-wrap
-msgid "Specifying the Refs"
+msgid "--python"
 msgstr ""
 
-#. type: Plain text
-#: en/git-http-push.txt:65
-msgid ""
-"A '<ref>' specification can be either a single pattern, or a pair of such "
-"patterns separated by a colon \":\" (this means that a ref name cannot have "
-"a colon in it).  A single pattern '<name>' is just a shorthand for "
-"'<name>:<name>'."
+#. type: Labeled list
+#: en/git-for-each-ref.txt:68
+#, no-wrap
+msgid "--tcl"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-push.txt:71
+#: en/git-for-each-ref.txt:73
 msgid ""
-"Each pattern pair consists of the source side (before the colon)  and the "
-"destination side (after the colon).  The ref to be pushed is determined by "
-"finding a match that matches the source side, and where it is pushed is "
-"determined by using the destination side."
+"If given, strings that substitute `%(fieldname)` placeholders are quoted as "
+"string literals suitable for the specified host language.  This is meant to "
+"produce a scriptlet that can directly be `eval`ed."
 msgstr ""
 
-#. type: Plain text
-#: en/git-http-push.txt:74 en/git-send-pack.txt:125
-msgid "It is an error if <src> does not match exactly one of the local refs."
+#. type: Labeled list
+#: en/git-for-each-ref.txt:74
+#, no-wrap
+msgid "--points-at=<object>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-push.txt:76 en/git-send-pack.txt:129
-msgid "If <dst> does not match any remote ref, either"
+#: en/git-for-each-ref.txt:76
+msgid "Only list refs which points at the given object."
 msgstr ""
 
-#. type: Plain text
-#: en/git-http-push.txt:79 en/git-send-pack.txt:132
-msgid ""
-"it has to start with \"refs/\"; <dst> is used as the destination literally "
-"in this case."
+#. type: Labeled list
+#: en/git-for-each-ref.txt:77
+#, no-wrap
+msgid "--merged[=<object>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-push.txt:83 en/git-send-pack.txt:136
+#: en/git-for-each-ref.txt:81
 msgid ""
-"<src> == <dst> and the ref that matched the <src> must not exist in the set "
-"of remote refs; the ref matched <src> locally is used as the name of the "
-"destination."
+"Only list refs whose tips are reachable from the specified commit (HEAD if "
+"not specified), incompatible with `--no-merged`."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-for-each-ref.txt:82
+#, no-wrap
+msgid "--no-merged[=<object>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-push.txt:89 en/git-send-pack.txt:142
+#: en/git-for-each-ref.txt:86
 msgid ""
-"Without `--force`, the <src> ref is stored at the remote only if <dst> does "
-"not exist, or <dst> is a proper subset (i.e. an ancestor) of <src>.  This "
-"check, known as \"fast-forward check\", is performed in order to avoid "
-"accidentally overwriting the remote ref and lose other peoples' commits from "
-"there."
+"Only list refs whose tips are not reachable from the specified commit (HEAD "
+"if not specified), incompatible with `--merged`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-http-push.txt:91 en/git-send-pack.txt:144
-msgid "With `--force`, the fast-forward check is disabled for all refs."
+#. type: Labeled list
+#: en/git-for-each-ref.txt:87
+#, no-wrap
+msgid "--contains[=<object>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-http-push.txt:94 en/git-send-pack.txt:147
+#: en/git-for-each-ref.txt:90
 msgid ""
-"Optionally, a <ref> parameter can be prefixed with a plus '+' sign to "
-"disable the fast-forward check only on that ref."
+"Only list refs which contain the specified commit (HEAD if not specified)."
 msgstr ""
 
-#. type: Title =
-#: en/git-imap-send.txt:2
+#. type: Labeled list
+#: en/git-for-each-ref.txt:91
 #, no-wrap
-msgid "git-imap-send(1)"
+msgid "--no-contains[=<object>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:7
-msgid "git-imap-send - Send a collection of patches from stdin to an IMAP folder"
+#: en/git-for-each-ref.txt:94
+msgid ""
+"Only list refs which don't contain the specified commit (HEAD if not "
+"specified)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:13
+#: en/git-for-each-ref.txt:97
+msgid "Sorting and filtering refs are case insensitive."
+msgstr ""
+
+#. type: Title -
+#: en/git-for-each-ref.txt:99
 #, no-wrap
-msgid "'git imap-send' [-v] [-q] [--[no-]curl]\n"
+msgid "FIELD NAMES"
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:23
+#: en/git-for-each-ref.txt:104
 msgid ""
-"This command uploads a mailbox generated with 'git format-patch' into an "
-"IMAP drafts folder.  This allows patches to be sent as other email is when "
-"using mail clients that cannot read mailbox files directly. The command also "
-"works with any general mailbox in which emails have the fields \"From\", "
-"\"Date\", and \"Subject\" in that order."
+"Various values from structured fields in referenced objects can be used to "
+"interpolate into the resulting output, or as sort keys."
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:25
-msgid "Typical usage is something like:"
+#: en/git-for-each-ref.txt:106
+msgid "For all objects, the following names can be used:"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-for-each-ref.txt:107
+#, no-wrap
+msgid "refname"
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:27
-msgid "git format-patch --signoff --stdout --attach origin | git imap-send"
+#: en/git-for-each-ref.txt:123
+msgid ""
+"The name of the ref (the part after $GIT_DIR/).  For a non-ambiguous short "
+"name of the ref append `:short`.  The option core.warnAmbiguousRefs is used "
+"to select the strict abbreviation mode. If `lstrip=<N>` (`rstrip=<N>`) is "
+"appended, strips `<N>` slash-separated path components from the front (back) "
+"of the refname (e.g. `%(refname:lstrip=2)` turns `refs/tags/foo` into `foo` "
+"and `%(refname:rstrip=2)` turns `refs/tags/foo` into `refs`).  If `<N>` is a "
+"negative number, strip as many path components as necessary from the "
+"specified end to leave `-<N>` path components (e.g. `%(refname:lstrip=-2)` "
+"turns `refs/tags/foo` into `tags/foo` and `%(refname:rstrip=-1)` turns `refs/"
+"tags/foo` into `refs`). When the ref does not have enough components, the "
+"result becomes an empty string if stripping with positive <N>, or it becomes "
+"the full refname if stripping with negative <N>.  Neither is an error."
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:39
-msgid "Be quiet."
+#: en/git-for-each-ref.txt:125
+msgid "`strip` can be used as a synonym to `lstrip`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-imap-send.txt:40
+#: en/git-for-each-ref.txt:126
 #, no-wrap
-msgid "--curl"
+msgid "objecttype"
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:44
-msgid ""
-"Use libcurl to communicate with the IMAP server, unless tunneling into it.  "
-"Ignored if Git was built without the USE_CURL_FOR_IMAP_SEND option set."
+#: en/git-for-each-ref.txt:128
+msgid "The type of the object (`blob`, `tree`, `commit`, `tag`)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-imap-send.txt:45
+#: en/git-for-each-ref.txt:129
 #, no-wrap
-msgid "--no-curl"
-msgstr ""
-
-#. type: Plain text
-#: en/git-imap-send.txt:49
-msgid ""
-"Talk to the IMAP server using git's own IMAP routines instead of using "
-"libcurl.  Ignored if Git was built with the NO_OPENSSL option set."
+msgid "objectsize"
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:56
+#: en/git-for-each-ref.txt:133
 msgid ""
-"To use the tool, imap.folder and either imap.tunnel or imap.host must be set "
-"to appropriate values."
-msgstr ""
-
-#. type: Title ~
-#: en/git-imap-send.txt:58 en/config.txt:256
-#, no-wrap
-msgid "Variables"
+"The size of the object (the same as 'git cat-file -s' reports).  Append `:"
+"disk` to get the size, in bytes, that the object takes up on disk. See the "
+"note about on-disk sizes in the `CAVEATS` section below."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-imap-send.txt:60
+#: en/git-for-each-ref.txt:133
 #, no-wrap
-msgid "imap.folder"
+msgid "objectname"
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:64
+#: en/git-for-each-ref.txt:139
 msgid ""
-"The folder to drop the mails into, which is typically the Drafts folder. For "
-"example: \"INBOX.Drafts\", \"INBOX/Drafts\" or \"[Gmail]/Drafts\". Required."
+"The object name (aka SHA-1).  For a non-ambiguous abbreviation of the object "
+"name append `:short`.  For an abbreviation of the object name with desired "
+"length append `:short=<length>`, where the minimum length is MINIMUM_ABBREV. "
+"The length may be exceeded to ensure unique object names."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-imap-send.txt:65
+#: en/git-for-each-ref.txt:139
 #, no-wrap
-msgid "imap.tunnel"
+msgid "deltabase"
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:69
+#: en/git-for-each-ref.txt:143
 msgid ""
-"Command used to setup a tunnel to the IMAP server through which commands "
-"will be piped instead of using a direct network connection to the "
-"server. Required when imap.host is not set."
+"This expands to the object name of the delta base for the given object, if "
+"it is stored as a delta.  Otherwise it expands to the null object name (all "
+"zeroes)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-imap-send.txt:70
+#: en/git-for-each-ref.txt:144
 #, no-wrap
-msgid "imap.host"
+msgid "upstream"
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:74
+#: en/git-for-each-ref.txt:154
 msgid ""
-"A URL identifying the server. Use a `imap://` prefix for non-secure "
-"connections and a `imaps://` prefix for secure connections.  Ignored when "
-"imap.tunnel is set, but required otherwise."
+"The name of a local ref which can be considered ``upstream'' from the "
+"displayed ref. Respects `:short`, `:lstrip` and `:rstrip` in the same way as "
+"`refname` above.  Additionally respects `:track` to show \"[ahead N, behind "
+"M]\" and `:trackshort` to show the terse version: \">\" (ahead), \"<"
+"\" (behind), \"<>\" (ahead and behind), or \"=\" (in sync). `:track` also "
+"prints \"[gone]\" whenever unknown upstream ref is encountered. Append `:"
+"track,nobracket` to show tracking information without brackets (i.e \"ahead "
+"N, behind M\")."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-imap-send.txt:75
-#, no-wrap
-msgid "imap.user"
+#. type: Plain text
+#: en/git-for-each-ref.txt:161
+msgid ""
+"For any remote-tracking branch `%(upstream)`, `%(upstream:remotename)` and `"
+"%(upstream:remoteref)` refer to the name of the remote and the name of the "
+"tracked remote ref, respectively. In other words, the remote-tracking branch "
+"can be updated explicitly and individually by using the refspec `%(upstream:"
+"remoteref):%(upstream)` to fetch from `%(upstream:remotename)`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:77
-msgid "The username to use when logging in to the server."
+#: en/git-for-each-ref.txt:165
+msgid ""
+"Has no effect if the ref does not have tracking information associated with "
+"it.  All the options apart from `nobracket` are mutually exclusive, but if "
+"used together the last option is selected."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-imap-send.txt:78
+#: en/git-for-each-ref.txt:166
 #, no-wrap
-msgid "imap.pass"
+msgid "push"
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:80
-msgid "The password to use when logging in to the server."
+#: en/git-for-each-ref.txt:172
+msgid ""
+"The name of a local ref which represents the `@{push}` location for the "
+"displayed ref. Respects `:short`, `:lstrip`, `:rstrip`, `:track`, `:"
+"trackshort`, `:remotename`, and `:remoteref` options as `upstream` does. "
+"Produces an empty string if no `@{push}` ref is configured."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-imap-send.txt:81
+#: en/git-for-each-ref.txt:173 en/git.txt:340
 #, no-wrap
-msgid "imap.port"
+msgid "HEAD"
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:85
+#: en/git-for-each-ref.txt:176
 msgid ""
-"An integer port number to connect to on the server.  Defaults to 143 for "
-"imap:// hosts and 993 for imaps:// hosts.  Ignored when imap.tunnel is set."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-imap-send.txt:86
-#, no-wrap
-msgid "imap.sslverify"
+"'*' if HEAD matches current ref (the checked out branch), ' ' otherwise."
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:90
+#: en/git-for-each-ref.txt:182
 msgid ""
-"A boolean to enable/disable verification of the server certificate used by "
-"the SSL/TLS connection. Default is `true`. Ignored when imap.tunnel is set."
+"Change output color. Followed by `:<colorname>`, where color names are "
+"described under Values in the \"CONFIGURATION FILE\" section of linkgit:git-"
+"config[1].  For example, `%(color:bold red)`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-imap-send.txt:91
+#: en/git-for-each-ref.txt:183
 #, no-wrap
-msgid "imap.preformattedHTML"
+msgid "align"
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:97
+#: en/git-for-each-ref.txt:197
 msgid ""
-"A boolean to enable/disable the use of html encoding when sending a patch.  "
-"An html encoded patch will be bracketed with <pre> and have a content type "
-"of text/html.  Ironically, enabling this option causes Thunderbird to send "
-"the patch as a plain/text, format=fixed email.  Default is `false`."
+"Left-, middle-, or right-align the content between %(align:...) and %(end). "
+"The \"align:\" is followed by `width=<width>` and `position=<position>` in "
+"any order separated by a comma, where the `<position>` is either left, right "
+"or middle, default being left and `<width>` is the total length of the "
+"content with alignment. For brevity, the \"width=\" and/or \"position=\" "
+"prefixes may be omitted, and bare <width> and <position> used instead.  For "
+"instance, `%(align:<width>,<position>)`. If the contents length is more than "
+"the width then no alignment is performed. If used with `--quote` everything "
+"in between %(align:...) and %(end) is quoted, but if nested then only the "
+"topmost level performs quoting."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-imap-send.txt:98
+#: en/git-for-each-ref.txt:198
 #, no-wrap
-msgid "imap.authMethod"
+msgid "if"
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:104
+#: en/git-for-each-ref.txt:210
 msgid ""
-"Specify authenticate method for authentication with IMAP server.  If Git was "
-"built with the NO_CURL option, or if your curl version is older than 7.34.0, "
-"or if you're running git-imap-send with the `--no-curl` option, the only "
-"supported method is 'CRAM-MD5'. If this is not set then 'git imap-send' uses "
-"the basic IMAP plaintext LOGIN command."
-msgstr ""
-
-#. type: Plain text
-#: en/git-imap-send.txt:109
-msgid "Using tunnel mode:"
+"Used as %(if)...%(then)...%(end) or %(if)...%(then)...%(else)...%(end).  If "
+"there is an atom with value or string literal after the %(if) then "
+"everything after the %(then) is printed, else if the %(else) atom is used, "
+"then everything after %(else) is printed. We ignore space when evaluating "
+"the string before %(then), this is useful when we use the %(HEAD) atom which "
+"prints either \"*\" or \" \" and we want to apply the 'if' condition only on "
+"the 'HEAD' ref.  Append \":equals=<string>\" or \":notequals=<string>\" to "
+"compare the value between the %(if:...) and %(then) atoms with the given "
+"string."
 msgstr ""
 
-#. type: delimited block .
-#: en/git-imap-send.txt:114
+#. type: Labeled list
+#: en/git-for-each-ref.txt:211
 #, no-wrap
-msgid ""
-"[imap]\n"
-"    folder = \"INBOX.Drafts\"\n"
-"    tunnel = \"ssh -q -C user@example.com /usr/bin/imapd ./Maildir 2> "
-"/dev/null\"\n"
+msgid "symref"
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:117
-msgid "Using direct mode:"
-msgstr ""
-
-#. type: delimited block .
-#: en/git-imap-send.txt:124
-#, no-wrap
+#: en/git-for-each-ref.txt:216
 msgid ""
-"[imap]\n"
-"    folder = \"INBOX.Drafts\"\n"
-"    host = imap://imap.example.com\n"
-"    user = bob\n"
-"    pass = p4ssw0rd\n"
+"The ref which the given symbolic ref refers to. If not a symbolic ref, "
+"nothing is printed. Respects the `:short`, `:lstrip` and `:rstrip` options "
+"in the same way as `refname` above."
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:127
-msgid "Using direct mode with SSL:"
-msgstr ""
-
-#. type: delimited block .
-#: en/git-imap-send.txt:136
-#, no-wrap
+#: en/git-for-each-ref.txt:220
 msgid ""
-"[imap]\n"
-"    folder = \"INBOX.Drafts\"\n"
-"    host = imaps://imap.example.com\n"
-"    user = bob\n"
-"    pass = p4ssw0rd\n"
-"    port = 123\n"
-"    sslverify = false\n"
+"In addition to the above, for commit and tag objects, the header field names "
+"(`tree`, `parent`, `object`, `type`, and `tag`) can be used to specify the "
+"value in the header field."
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:143
+#: en/git-for-each-ref.txt:225
 msgid ""
-"To submit patches using GMail's IMAP interface, first, edit your "
-"~/.gitconfig to specify your account settings:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-imap-send.txt:151
-#, no-wrap
-msgid ""
-"[imap]\n"
-"\tfolder = \"[Gmail]/Drafts\"\n"
-"\thost = imaps://imap.gmail.com\n"
-"\tuser = user@gmail.com\n"
-"\tport = 993\n"
-"\tsslverify = false\n"
+"For commit and tag objects, the special `creatordate` and `creator` fields "
+"will correspond to the appropriate date or name-email-date tuple from the "
+"`committer` or `tagger` fields depending on the object type.  These are "
+"intended for working on a mix of annotated and lightweight tags."
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:155
+#: en/git-for-each-ref.txt:229
 msgid ""
-"You might need to instead use: folder = \"[Google Mail]/Drafts\" if you get "
-"an error that the \"Folder doesn't exist\"."
-msgstr ""
-
-#. type: Plain text
-#: en/git-imap-send.txt:157
-msgid "Once the commits are ready to be sent, run the following command:"
+"Fields that have name-email-date tuple as its value (`author`, `committer`, "
+"and `tagger`) can be suffixed with `name`, `email`, and `date` to extract "
+"the named component."
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:159
-#, no-wrap
+#: en/git-for-each-ref.txt:242
 msgid ""
-"  $ git format-patch --cover-letter -M --stdout origin/master | git "
-"imap-send\n"
+"The complete message in a commit and tag object is `contents`.  Its first "
+"line is `contents:subject`, where subject is the concatenation of all lines "
+"of the commit message up to the first blank line.  The next line is "
+"`contents:body`, where body is all of the lines after the first blank line.  "
+"The optional GPG signature is `contents:signature`.  The first `N` lines of "
+"the message is obtained using `contents:lines=N`.  Additionally, the "
+"trailers as interpreted by linkgit:git-interpret-trailers[1] are obtained as "
+"`trailers` (or by using the historical alias `contents:trailers`).  Non-"
+"trailer lines from the trailer block can be omitted with `trailers:only`. "
+"Whitespace-continuations can be removed from trailers so that each trailer "
+"appears on a line by itself with its full content with `trailers:unfold`. "
+"Both can be used together as `trailers:unfold,only`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:163
+#: en/git-for-each-ref.txt:246
 msgid ""
-"Just make sure to disable line wrapping in the email client (GMail's web "
-"interface will wrap lines no matter what, so you need to use a real IMAP "
-"client)."
-msgstr ""
-
-#. type: Title -
-#: en/git-imap-send.txt:165
-#, no-wrap
-msgid "CAUTION"
+"For sorting purposes, fields with numeric values sort in numeric order "
+"(`objectsize`, `authordate`, `committerdate`, `creatordate`, `taggerdate`).  "
+"All other fields are used to sort in their byte-value order."
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:172
+#: en/git-for-each-ref.txt:249
 msgid ""
-"It is still your responsibility to make sure that the email message sent by "
-"your email program meets the standards of your project.  Many projects do "
-"not like patches to be attached.  Some mail agents will transform patches "
-"(e.g. wrap lines, send them as format=flowed) in ways that make them fail.  "
-"You will get angry flames ridiculing you if you don't check this."
+"There is also an option to sort by versions, this can be done by using the "
+"fieldname `version:refname` or its alias `v:refname`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:176
-#, no-wrap
+#: en/git-for-each-ref.txt:253
 msgid ""
-"Thunderbird in particular is known to be problematic.  Thunderbird\n"
-"users may wish to visit this web page for more information:\n"
-"  "
-"http://kb.mozillazine.org/Plain_text_e-mail_-_Thunderbird#Completely_plain_email\n"
+"In any case, a field name that refers to a field inapplicable to the object "
+"referred by the ref does not cause an error.  It returns an empty string "
+"instead."
 msgstr ""
 
 #. type: Plain text
-#: en/git-imap-send.txt:180
-msgid "linkgit:git-format-patch[1], linkgit:git-send-email[1], mbox(5)"
-msgstr ""
-
-#. type: Title =
-#: en/git-index-pack.txt:2
-#, no-wrap
-msgid "git-index-pack(1)"
+#: en/git-for-each-ref.txt:257
+msgid ""
+"As a special case for the date-type fields, you may specify a format for the "
+"date by adding `:` followed by date format name (see the values the `--date` "
+"option to linkgit:git-rev-list[1] takes)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-index-pack.txt:7
-msgid "git-index-pack - Build pack index file for an existing packed archive"
+#: en/git-for-each-ref.txt:260
+msgid ""
+"Some atoms like %(align) and %(if) always require a matching %(end).  We "
+"call them \"opening atoms\" and sometimes denote them as %($open)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-index-pack.txt:15
-#, no-wrap
+#: en/git-for-each-ref.txt:265
 msgid ""
-"'git index-pack' [-v] [-o <index-file>] <pack-file>\n"
-"'git index-pack' --stdin [--fix-thin] [--keep] [-v] [-o <index-file>]\n"
-"                 [<pack-file>]\n"
+"When a scripting language specific quoting is in effect, everything between "
+"a top-level opening atom and its matching %(end) is evaluated according to "
+"the semantics of the opening atom and only its result from the top-level is "
+"quoted."
 msgstr ""
 
 #. type: Plain text
-#: en/git-index-pack.txt:23
+#: en/git-for-each-ref.txt:272
 msgid ""
-"Reads a packed archive (.pack) from the specified file, and builds a pack "
-"index file (.idx) for it.  The packed archive together with the pack index "
-"can then be placed in the objects/pack/ directory of a Git repository."
+"An example directly producing formatted text.  Show the most recent 3 tagged "
+"commits:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-index-pack.txt:29
-msgid "Be verbose about what is going on, including progress status."
+#. type: delimited block -
+#: en/git-for-each-ref.txt:275 en/git-for-each-ref.txt:291
+#: en/git-for-each-ref.txt:305
+#, no-wrap
+msgid "#!/bin/sh\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-index-pack.txt:30
+#. type: delimited block -
+#: en/git-for-each-ref.txt:281
 #, no-wrap
-msgid "-o <index-file>"
+msgid ""
+"git for-each-ref --count=3 --sort='-*authordate' \\\n"
+"--format='From: %(*authorname) %(*authoremail)\n"
+"Subject: %(*subject)\n"
+"Date: %(*authordate)\n"
+"Ref: %(*refname)\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-index-pack.txt:37
+#. type: delimited block -
+#: en/git-for-each-ref.txt:284
+#, no-wrap
 msgid ""
-"Write the generated pack index into the specified file.  Without this option "
-"the name of pack index file is constructed from the name of packed archive "
-"file by replacing .pack with .idx (and the program fails if the name of "
-"packed archive does not end with .pack)."
+"%(*body)\n"
+"' 'refs/tags'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-index-pack.txt:47
+#: en/git-for-each-ref.txt:289
 msgid ""
-"When this flag is provided, the pack is read from stdin instead and a copy "
-"is then written to <pack-file>. If <pack-file> is not specified, the pack is "
-"written to objects/pack/ directory of the current Git repository with a "
-"default name determined from the pack content.  If <pack-file> is not "
-"specified consider using --keep to prevent a race condition between this "
-"process and 'git repack'."
+"A simple example showing the use of shell eval on the output, demonstrating "
+"the use of --shell.  List the prefixes of all heads:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-index-pack.txt:48
+#. type: delimited block -
+#: en/git-for-each-ref.txt:298
 #, no-wrap
-msgid "--fix-thin"
-msgstr ""
-
-#. type: Plain text
-#: en/git-index-pack.txt:53
 msgid ""
-"Fix a \"thin\" pack produced by `git pack-objects --thin` (see "
-"linkgit:git-pack-objects[1] for details) by adding the excluded objects the "
-"deltified objects are based on to the pack. This option only makes sense in "
-"conjunction with --stdin."
+"git for-each-ref --shell --format=\"ref=%(refname)\" refs/heads | \\\n"
+"while read entry\n"
+"do\n"
+"\teval \"$entry\"\n"
+"\techo `dirname $ref`\n"
+"done\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-index-pack.txt:61
+#: en/git-for-each-ref.txt:303
 msgid ""
-"Before moving the index into its final destination create an empty .keep "
-"file for the associated pack file.  This option is usually necessary with "
-"--stdin to prevent a simultaneous 'git repack' process from deleting the "
-"newly constructed pack and index before refs can be updated to use objects "
-"contained in the pack."
+"A bit more elaborate report on tags, demonstrating that the format may be an "
+"entire script:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-index-pack.txt:62
+#. type: delimited block -
+#: en/git-for-each-ref.txt:310
 #, no-wrap
-msgid "--keep=<msg>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-index-pack.txt:68
 msgid ""
-"Like --keep create a .keep file before moving the index into its final "
-"destination, but rather than creating an empty file place '<msg>' followed "
-"by an LF into the .keep file.  The '<msg>' message can later be searched for "
-"within all .keep files to locate any which have outlived their usefulness."
+"fmt='\n"
+"\tr=%(refname)\n"
+"\tt=%(*objecttype)\n"
+"\tT=${r#refs/tags/}\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-index-pack.txt:69 en/git-pack-objects.txt:225
+#. type: delimited block -
+#: en/git-for-each-ref.txt:317
 #, no-wrap
-msgid "--index-version=<version>[,<offset>]"
-msgstr ""
-
-#. type: Plain text
-#: en/git-index-pack.txt:73 en/git-pack-objects.txt:229
 msgid ""
-"This is intended to be used by the test suite only. It allows to force the "
-"version for the generated pack index, and to force 64-bit index entries on "
-"objects located above the given offset."
-msgstr ""
-
-#. type: Plain text
-#: en/git-index-pack.txt:76
-msgid "Die, if the pack contains broken objects or links."
+"\to=%(*objectname)\n"
+"\tn=%(*authorname)\n"
+"\te=%(*authoremail)\n"
+"\ts=%(*subject)\n"
+"\td=%(*authordate)\n"
+"\tb=%(*body)\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-index-pack.txt:79
-msgid "Die if the pack contains broken links. For internal use only."
+#. type: delimited block -
+#: en/git-for-each-ref.txt:336
+#, no-wrap
+msgid ""
+"\tkind=Tag\n"
+"\tif test \"z$t\" = z\n"
+"\tthen\n"
+"\t\t# could be a lightweight tag\n"
+"\t\tt=%(objecttype)\n"
+"\t\tkind=\"Lightweight tag\"\n"
+"\t\to=%(objectname)\n"
+"\t\tn=%(authorname)\n"
+"\t\te=%(authoremail)\n"
+"\t\ts=%(subject)\n"
+"\t\td=%(authordate)\n"
+"\t\tb=%(body)\n"
+"\tfi\n"
+"\techo \"$kind $T points at a $t object $o\"\n"
+"\tif test \"z$t\" = zcommit\n"
+"\tthen\n"
+"\t\techo \"The commit was authored by $n $e\n"
+"at $d, and titled\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-index-pack.txt:80 en/git-pack-objects.txt:215
+#. type: delimited block -
+#: en/git-for-each-ref.txt:338
 #, no-wrap
-msgid "--threads=<n>"
+msgid "    $s\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-index-pack.txt:89
+#. type: delimited block -
+#: en/git-for-each-ref.txt:345
+#, no-wrap
 msgid ""
-"Specifies the number of threads to spawn when resolving deltas. This "
-"requires that index-pack be compiled with pthreads otherwise this option is "
-"ignored with a warning.  This is meant to reduce packing time on "
-"multiprocessor machines. The required amount of memory for the delta search "
-"window is however multiplied by the number of threads.  Specifying 0 will "
-"cause Git to auto-detect the number of CPU's and use maximum 3 threads."
+"Its message reads as:\n"
+"\"\n"
+"\t\techo \"$b\" | sed -e \"s/^/    /\"\n"
+"\t\techo\n"
+"\tfi\n"
+"'\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-index-pack.txt:90 en/git-unpack-objects.txt:47
+#. type: delimited block -
+#: en/git-for-each-ref.txt:351
 #, no-wrap
-msgid "--max-input-size=<size>"
+msgid ""
+"eval=`git for-each-ref --shell --format=\"$fmt\" \\\n"
+"\t--sort='*objecttype' \\\n"
+"\t--sort=-taggerdate \\\n"
+"\trefs/tags`\n"
+"eval \"$eval\"\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-index-pack.txt:92 en/git-unpack-objects.txt:49
-msgid "Die, if the pack is larger than <size>."
+#: en/git-for-each-ref.txt:356
+msgid ""
+"An example to show the usage of %(if)...%(then)...%(else)...%(end).  This "
+"prefixes the current branch with a star."
 msgstr ""
 
-#. type: Title -
-#: en/git-index-pack.txt:94
+#. type: delimited block -
+#: en/git-for-each-ref.txt:359
 #, no-wrap
-msgid "Note"
+msgid "git for-each-ref --format=\"%(if)%(HEAD)%(then)* %(else)  %(end)%(refname:short)\" refs/heads/\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-index-pack.txt:100
+#: en/git-for-each-ref.txt:364
 msgid ""
-"Once the index has been created, the list of object names is sorted and the "
-"SHA-1 hash of that list is printed to stdout. If --stdin was also used then "
-"this is prefixed by either \"pack\\t\", or \"keep\\t\" if a new .keep file "
-"was successfully created. This is useful to remove a"
+"An example to show the usage of %(if)...%(then)...%(end).  This prints the "
+"authorname, if present."
 msgstr ""
 
-#. type: Block title
-#: en/git-index-pack.txt:100
+#. type: delimited block -
+#: en/git-for-each-ref.txt:367
 #, no-wrap
-msgid "keep file used as a lock to prevent the race with 'git repack'"
-msgstr ""
-
-#. type: Plain text
-#: en/git-index-pack.txt:102
-msgid "mentioned above."
+msgid "git for-each-ref --format=\"%(refname)%(if)%(authorname)%(then) Authored by: %(authorname)%(end)\"\n"
 msgstr ""
 
 #. type: Title =
-#: en/git-init-db.txt:2
+#: en/git-format-patch.txt:2
 #, no-wrap
-msgid "git-init-db(1)"
+msgid "git-format-patch(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-init-db.txt:7
-msgid "git-init-db - Creates an empty Git repository"
+#: en/git-format-patch.txt:7
+msgid "git-format-patch - Prepare patches for e-mail submission"
 msgstr ""
 
 #. type: Plain text
-#: en/git-init-db.txt:13
+#: en/git-format-patch.txt:31
 #, no-wrap
 msgid ""
-"'git init-db' [-q | --quiet] [--bare] [--template=<template_directory>] "
-"[--separate-git-dir <git dir>] [--shared[=<permissions>]]\n"
+"'git format-patch' [-k] [(-o|--output-directory) <dir> | --stdout]\n"
+"\t\t   [--no-thread | --thread[=<style>]]\n"
+"\t\t   [(--attach|--inline)[=<boundary>] | --no-attach]\n"
+"\t\t   [-s | --signoff]\n"
+"\t\t   [--signature=<signature> | --no-signature]\n"
+"\t\t   [--signature-file=<file>]\n"
+"\t\t   [-n | --numbered | -N | --no-numbered]\n"
+"\t\t   [--start-number <n>] [--numbered-files]\n"
+"\t\t   [--in-reply-to=Message-Id] [--suffix=.<sfx>]\n"
+"\t\t   [--ignore-if-in-upstream]\n"
+"\t\t   [--rfc] [--subject-prefix=Subject-Prefix]\n"
+"\t\t   [(--reroll-count|-v) <n>]\n"
+"\t\t   [--to=<email>] [--cc=<email>]\n"
+"\t\t   [--[no-]cover-letter] [--quiet] [--notes[=<ref>]]\n"
+"\t\t   [--interdiff=<previous>]\n"
+"\t\t   [--range-diff=<previous> [--creation-factor=<percent>]]\n"
+"\t\t   [--progress]\n"
+"\t\t   [<common diff options>]\n"
+"\t\t   [ <since> | <revision range> ]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-init-db.txt:20
+#: en/git-format-patch.txt:39
 msgid ""
-"This is a synonym for linkgit:git-init[1].  Please refer to the "
-"documentation of that command."
-msgstr ""
-
-#. type: Title =
-#: en/git-init.txt:2
-#, no-wrap
-msgid "git-init(1)"
+"Prepare each commit with its patch in one file per commit, formatted to "
+"resemble UNIX mailbox format.  The output of this command is convenient for "
+"e-mail submission or for use with 'git am'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:7
-msgid "git-init - Create an empty Git repository or reinitialize an existing one"
+#: en/git-format-patch.txt:41
+msgid "There are two ways to specify which commits to operate on."
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:15
-#, no-wrap
+#: en/git-format-patch.txt:45
 msgid ""
-"'git init' [-q | --quiet] [--bare] [--template=<template_directory>]\n"
-"\t  [--separate-git-dir <git dir>]\n"
-"\t  [--shared[=<permissions>]] [directory]\n"
+"A single commit, <since>, specifies that the commits leading to the tip of "
+"the current branch that are not in the history that leads to the <since> to "
+"be output."
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:24
+#: en/git-format-patch.txt:49
 msgid ""
-"This command creates an empty Git repository - basically a `.git` directory "
-"with subdirectories for `objects`, `refs/heads`, `refs/tags`, and template "
-"files.  An initial `HEAD` file that references the HEAD of the master branch "
-"is also created."
+"Generic <revision range> expression (see \"SPECIFYING REVISIONS\" section in "
+"linkgit:gitrevisions[7]) means the commits in the specified range."
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:27
+#: en/git-format-patch.txt:55
 msgid ""
-"If the `$GIT_DIR` environment variable is set then it specifies a path to "
-"use instead of `./.git` for the base of the repository."
+"The first rule takes precedence in the case of a single <commit>.  To apply "
+"the second rule, i.e., format everything since the beginning of history up "
+"until <commit>, use the `--root` option: `git format-patch --root "
+"<commit>`.  If you want to format only <commit> itself, you can do this with "
+"`git format-patch -1 <commit>`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:32
+#: en/git-format-patch.txt:62
 msgid ""
-"If the object storage directory is specified via the `$GIT_OBJECT_DIRECTORY` "
-"environment variable then the sha1 directories are created underneath - "
-"otherwise the default `$GIT_DIR/objects` directory is used."
+"By default, each output file is numbered sequentially from 1, and uses the "
+"first line of the commit message (massaged for pathname safety) as the "
+"filename. With the `--numbered-files` option, the output file names will "
+"only be numbers, without the first line of the commit appended.  The names "
+"of the output files are printed to standard output, unless the `--stdout` "
+"option is specified."
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:37
+#: en/git-format-patch.txt:69
 msgid ""
-"Running 'git init' in an existing repository is safe. It will not overwrite "
-"things that are already there. The primary reason for rerunning 'git init' "
-"is to pick up newly added templates (or to move the repository to another "
-"place if --separate-git-dir is given)."
+"If `-o` is specified, output files are created in <dir>.  Otherwise they are "
+"created in the current working directory. The default path can be set with "
+"the `format.outputDirectory` configuration option.  The `-o` option takes "
+"precedence over `format.outputDirectory`.  To store patches in the current "
+"working directory even when `format.outputDirectory` points elsewhere, use `-"
+"o .`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:47
-msgid "Only print error and warning messages; all other output will be suppressed."
+#: en/git-format-patch.txt:73
+msgid ""
+"By default, the subject of a single patch is \"[PATCH] \" followed by the "
+"concatenation of lines from the commit message up to the first blank line "
+"(see the DISCUSSION section of linkgit:git-commit[1])."
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:52
+#: en/git-format-patch.txt:77
 msgid ""
-"Create a bare repository. If `GIT_DIR` environment is not set, it is set to "
-"the current working directory."
+"When multiple patches are output, the subject prefix will instead be "
+"\"[PATCH n/m] \".  To force 1/1 to be added for a single patch, use `-n`.  "
+"To omit patch numbers from the subject, use `-N`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:57
+#: en/git-format-patch.txt:82
 msgid ""
-"Specify the directory from which templates will be used.  (See the "
-"\"TEMPLATE DIRECTORY\" section below.)"
+"If given `--thread`, `git-format-patch` will generate `In-Reply-To` and "
+"`References` headers to make the second and subsequent patch mails appear as "
+"replies to the first mail; this also generates a `Message-Id` header to "
+"reference."
 msgstr ""
 
-#. type: Plain text
-#: en/git-init.txt:64
-msgid ""
-"Instead of initializing the repository as a directory to either `$GIT_DIR` "
-"or `./.git/`, create a text file there containing the path to the actual "
-"repository.  This file acts as filesystem-agnostic Git symbolic link to the "
-"repository."
+#. type: Labeled list
+#: en/git-format-patch.txt:88
+#, no-wrap
+msgid "-<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:66
-msgid ""
-"If this is reinitialization, the repository will be moved to the specified "
-"path."
+#: en/git-format-patch.txt:90
+msgid "Prepare patches from the topmost <n> commits."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-init.txt:67
+#: en/git-format-patch.txt:91
 #, no-wrap
-msgid "--shared[=(false|true|umask|group|all|world|everybody|0xxx)]"
+msgid "-o <dir>"
 msgstr ""
 
-#. type: Plain text
-#: en/git-init.txt:75
-msgid ""
-"Specify that the Git repository is to be shared amongst several users.  This "
-"allows users belonging to the same group to push into that repository.  When "
-"specified, the config variable \"core.sharedRepository\" is set so that "
-"files and directories under `$GIT_DIR` are created with the requested "
-"permissions.  When not specified, Git will use permissions reported by "
-"umask(2)."
+#. type: Labeled list
+#: en/git-format-patch.txt:92
+#, no-wrap
+msgid "--output-directory <dir>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:78
+#: en/git-format-patch.txt:95
 msgid ""
-"The option can have the following values, defaulting to 'group' if no value "
-"is given:"
+"Use <dir> to store the resulting files, instead of the current working "
+"directory."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-init.txt:80
+#: en/git-format-patch.txt:97 en/git-shortlog.txt:30
 #, no-wrap
-msgid "'umask' (or 'false')"
+msgid "--numbered"
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:84
-msgid ""
-"Use permissions reported by umask(2). The default, when `--shared` is not "
-"specified."
+#: en/git-format-patch.txt:99
+msgid "Name output in '[PATCH n/m]' format, even with a single patch."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-init.txt:85
+#: en/git-format-patch.txt:101
 #, no-wrap
-msgid "'group' (or 'true')"
+msgid "--no-numbered"
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:93
-msgid ""
-"Make the repository group-writable, (and g+sx, since the git group may be "
-"not the primary group of all users). This is used to loosen the permissions "
-"of an otherwise safe umask(2) value. Note that the umask still applies to "
-"the other permission bits (e.g. if umask is '0022', using 'group' will not "
-"remove read privileges from other (non-group) users). See '0xxx' for how to "
-"exactly specify the repository permissions."
+#: en/git-format-patch.txt:103
+msgid "Name output in '[PATCH]' format."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-init.txt:94
+#: en/git-format-patch.txt:104
 #, no-wrap
-msgid "'all' (or 'world' or 'everybody')"
+msgid "--start-number <n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:97
-msgid "Same as 'group', but make the repository readable by all users."
+#: en/git-format-patch.txt:106
+msgid "Start numbering the patches at <n> instead of 1."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-init.txt:98
+#: en/git-format-patch.txt:107
 #, no-wrap
-msgid "'0xxx'"
+msgid "--numbered-files"
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:105
+#: en/git-format-patch.txt:110
 msgid ""
-"'0xxx' is an octal number and each file will have mode '0xxx'. '0xxx' will "
-"override users' umask(2) value (and not only loosen permissions as 'group' "
-"and 'all' does). '0640' will create a repository which is group-readable, "
-"but not group-writable or accessible to others. '0660' will create a repo "
-"that is readable and writable to the current user and group, but "
-"inaccessible to others."
+"Output file names will be a simple number sequence without the default first "
+"line of the commit appended."
 msgstr ""
 
-#. type: Plain text
-#: en/git-init.txt:110
-msgid ""
-"By default, the configuration flag `receive.denyNonFastForwards` is enabled "
-"in shared repositories, so that you cannot force a non fast-forwarding push "
-"into it."
+#. type: Labeled list
+#: en/git-format-patch.txt:112
+#, no-wrap
+msgid "--keep-subject"
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:113
+#: en/git-format-patch.txt:115
 msgid ""
-"If you provide a 'directory', the command is run inside it. If this "
-"directory does not exist, it will be created."
-msgstr ""
-
-#. type: Title -
-#: en/git-init.txt:117
-#, no-wrap
-msgid "TEMPLATE DIRECTORY"
+"Do not strip/add '[PATCH]' from the first line of the commit log message."
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:121
+#: en/git-format-patch.txt:121
 msgid ""
-"Files and directories in the template directory whose name do not start with "
-"a dot will be copied to the `$GIT_DIR` after it is created."
+"Add `Signed-off-by:` line to the commit message, using the committer "
+"identity of yourself.  See the signoff option in linkgit:git-commit[1] for "
+"more information."
 msgstr ""
 
-#. type: Plain text
-#: en/git-init.txt:123
-msgid "The template directory will be one of the following (in order):"
+#. type: Labeled list
+#: en/git-format-patch.txt:122 en/git-pack-objects.txt:59
+#, no-wrap
+msgid "--stdout"
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:125
-msgid "the argument given with the `--template` option;"
+#: en/git-format-patch.txt:125
+msgid ""
+"Print all commits to the standard output in mbox format, instead of creating "
+"a file for each one."
 msgstr ""
 
-#. type: Plain text
-#: en/git-init.txt:127
-msgid "the contents of the `$GIT_TEMPLATE_DIR` environment variable;"
+#. type: Labeled list
+#: en/git-format-patch.txt:126
+#, no-wrap
+msgid "--attach[=<boundary>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:129
-msgid "the `init.templateDir` configuration variable; or"
+#: en/git-format-patch.txt:130
+msgid ""
+"Create multipart/mixed attachment, the first part of which is the commit "
+"message and the patch itself in the second part, with `Content-Disposition: "
+"attachment`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-init.txt:131
-msgid "the default template directory: `/usr/share/git-core/templates`."
+#. type: Labeled list
+#: en/git-format-patch.txt:131
+#, no-wrap
+msgid "--no-attach"
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:134
+#: en/git-format-patch.txt:134
 msgid ""
-"The default template directory includes some directory structure, suggested "
-"\"exclude patterns\" (see linkgit:gitignore[5]), and sample hook files."
+"Disable the creation of an attachment, overriding the configuration setting."
 msgstr ""
 
-#. type: Plain text
-#: en/git-init.txt:137
-msgid ""
-"The sample hooks are all disabled by default, To enable one of the sample "
-"hooks rename it by removing its `.sample` suffix."
+#. type: Labeled list
+#: en/git-format-patch.txt:135
+#, no-wrap
+msgid "--inline[=<boundary>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:139
-msgid "See linkgit:githooks[5] for more general info on hook execution."
+#: en/git-format-patch.txt:139
+msgid ""
+"Create multipart/mixed attachment, the first part of which is the commit "
+"message and the patch itself in the second part, with `Content-Disposition: "
+"inline`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-init.txt:143
+#: en/git-format-patch.txt:140
 #, no-wrap
-msgid "Start a new Git repository for an existing code base"
+msgid "--thread[=<style>]"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-init.txt:150
+#. type: Labeled list
+#: en/git-format-patch.txt:141
 #, no-wrap
-msgid ""
-"$ cd /path/to/my/codebase\n"
-"$ git init      <1>\n"
-"$ git add .     <2>\n"
-"$ git commit    <3>\n"
+msgid "--no-thread"
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:153
-msgid "Create a /path/to/my/codebase/.git directory."
+#: en/git-format-patch.txt:146
+msgid ""
+"Controls addition of `In-Reply-To` and `References` headers to make the "
+"second and subsequent mails appear as replies to the first.  Also controls "
+"generation of the `Message-Id` header to reference."
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:154
-msgid "Add all existing files to the index."
+#: en/git-format-patch.txt:152
+msgid ""
+"The optional <style> argument can be either `shallow` or `deep`.  'shallow' "
+"threading makes every mail a reply to the head of the series, where the head "
+"is chosen from the cover letter, the `--in-reply-to`, and the first patch "
+"mail, in this order.  'deep' threading makes every mail a reply to the "
+"previous one."
 msgstr ""
 
 #. type: Plain text
-#: en/git-init.txt:155
-msgid "Record the pristine state as the first commit in the history."
-msgstr ""
-
-#. type: Title =
-#: en/git-instaweb.txt:2
-#, no-wrap
-msgid "git-instaweb(1)"
+#: en/git-format-patch.txt:156
+msgid ""
+"The default is `--no-thread`, unless the `format.thread` configuration is "
+"set.  If `--thread` is specified without a style, it defaults to the style "
+"specified by `format.thread` if any, or else `shallow`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-instaweb.txt:7
-msgid "git-instaweb - Instantly browse your working repository in gitweb"
+#: en/git-format-patch.txt:160
+msgid ""
+"Beware that the default for 'git send-email' is to thread emails itself.  If "
+"you want `git format-patch` to take care of threading, you will want to "
+"ensure that threading is disabled for `git send-email`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-instaweb.txt:14
+#. type: Labeled list
+#: en/git-format-patch.txt:161
 #, no-wrap
-msgid ""
-"'git instaweb' [--local] [--httpd=<httpd>] [--port=<port>]\n"
-"               [--browser=<browser>]\n"
-"'git instaweb' [--start] [--stop] [--restart]\n"
+msgid "--in-reply-to=Message-Id"
 msgstr ""
 
 #. type: Plain text
-#: en/git-instaweb.txt:19
+#: en/git-format-patch.txt:165
 msgid ""
-"A simple script to set up `gitweb` and a web server for browsing the local "
-"repository."
-msgstr ""
-
-#. type: Plain text
-#: en/git-instaweb.txt:26
-msgid "Only bind the web server to the local IP (127.0.0.1)."
+"Make the first mail (or all the mails with `--no-thread`) appear as a reply "
+"to the given Message-Id, which avoids breaking threads to provide a new "
+"patch series."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-instaweb.txt:28
+#: en/git-format-patch.txt:166
 #, no-wrap
-msgid "--httpd"
+msgid "--ignore-if-in-upstream"
 msgstr ""
 
 #. type: Plain text
-#: en/git-instaweb.txt:34
+#: en/git-format-patch.txt:172
 msgid ""
-"The HTTP daemon command-line that will be executed.  Command-line options "
-"may be specified here, and the configuration file will be added at the end "
-"of the command-line.  Currently apache2, lighttpd, mongoose, plackup and "
-"webrick are supported.  (Default: lighttpd)"
+"Do not include a patch that matches a commit in <until>..<since>.  This will "
+"examine all patches reachable from <since> but not from <until> and compare "
+"them with the patches being generated, and any patch that matches is ignored."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-instaweb.txt:36
+#: en/git-format-patch.txt:173
 #, no-wrap
-msgid "--module-path"
+msgid "--subject-prefix=<Subject-Prefix>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-instaweb.txt:39
+#: en/git-format-patch.txt:178
 msgid ""
-"The module path (only needed if httpd is Apache).  (Default: "
-"/usr/lib/apache2/modules)"
+"Instead of the standard '[PATCH]' prefix in the subject line, instead use "
+"'[<Subject-Prefix>]'. This allows for useful naming of a patch series, and "
+"can be combined with the `--numbered` option."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-instaweb.txt:41
+#: en/git-format-patch.txt:179
 #, no-wrap
-msgid "--port"
+msgid "--rfc"
 msgstr ""
 
 #. type: Plain text
-#: en/git-instaweb.txt:43
-msgid "The port number to bind the httpd to.  (Default: 1234)"
+#: en/git-format-patch.txt:183
+msgid ""
+"Alias for `--subject-prefix=\"RFC PATCH\"`. RFC means \"Request For Comments"
+"\"; use this when sending an experimental patch for discussion rather than "
+"application."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-instaweb.txt:44 en/git-mailinfo.txt:47 en/git-mailsplit.txt:35 en/git-repack.txt:116 en/git-status.txt:31 en/git-submodule.txt:279 en/blame-options.txt:1 en/diff-options.txt:525
+#: en/git-format-patch.txt:184
 #, no-wrap
-msgid "-b"
+msgid "-v <n>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-instaweb.txt:45
+#: en/git-format-patch.txt:185
 #, no-wrap
-msgid "--browser"
+msgid "--reroll-count=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-instaweb.txt:51
+#: en/git-format-patch.txt:192
 msgid ""
-"The web browser that should be used to view the gitweb page. This will be "
-"passed to the 'git web{litdd}browse' helper script along with the URL of the "
-"gitweb instance. See linkgit:git-web{litdd}browse[1] for more information "
-"about this. If the script fails, the URL will be printed to stdout."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-instaweb.txt:52
-#, no-wrap
-msgid "start"
+"Mark the series as the <n>-th iteration of the topic. The output filenames "
+"have `v<n>` prepended to them, and the subject prefix (\"PATCH\" by default, "
+"but configurable via the `--subject-prefix` option) has ` v<n>` appended to "
+"it.  E.g.  `--reroll-count=4` may produce `v4-0001-add-makefile.patch` file "
+"that has \"Subject: [PATCH v4 1/20] Add makefile\" in it."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-instaweb.txt:53
+#: en/git-format-patch.txt:193
 #, no-wrap
-msgid "--start"
+msgid "--to=<email>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-instaweb.txt:56
+#: en/git-format-patch.txt:198
 msgid ""
-"Start the httpd instance and exit.  Regenerate configuration files as "
-"necessary for spawning a new instance."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-instaweb.txt:57
-#, no-wrap
-msgid "stop"
+"Add a `To:` header to the email headers. This is in addition to any "
+"configured headers, and may be used multiple times.  The negated form `--no-"
+"to` discards all `To:` headers added so far (from config or command line)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-instaweb.txt:58
+#: en/git-format-patch.txt:199
 #, no-wrap
-msgid "--stop"
+msgid "--cc=<email>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-instaweb.txt:62
+#: en/git-format-patch.txt:204
 msgid ""
-"Stop the httpd instance and exit.  This does not generate any of the "
-"configuration files for spawning a new instance, nor does it close the "
-"browser."
+"Add a `Cc:` header to the email headers. This is in addition to any "
+"configured headers, and may be used multiple times.  The negated form `--no-"
+"cc` discards all `Cc:` headers added so far (from config or command line)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-instaweb.txt:63
+#: en/git-format-patch.txt:205
 #, no-wrap
-msgid "restart"
+msgid "--from"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-instaweb.txt:64
+#: en/git-format-patch.txt:206
 #, no-wrap
-msgid "--restart"
+msgid "--from=<ident>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-instaweb.txt:67
+#: en/git-format-patch.txt:212
 msgid ""
-"Restart the httpd instance and exit.  Regenerate configuration files as "
-"necessary for spawning a new instance."
+"Use `ident` in the `From:` header of each commit email. If the author ident "
+"of the commit is not textually identical to the provided `ident`, place a "
+"`From:` header in the body of the message with the original author. If no "
+"`ident` is given, use the committer ident."
 msgstr ""
 
 #. type: Plain text
-#: en/git-instaweb.txt:72
-msgid "You may specify configuration in your .git/config"
+#: en/git-format-patch.txt:219
+msgid ""
+"Note that this option is only useful if you are actually sending the emails "
+"and want to identify yourself as the sender, but retain the original author "
+"(and `git am` will correctly pick up the in-body header). Note also that "
+"`git send-email` already handles this transformation for you, and this "
+"option should not be used if you are feeding the result to `git send-email`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-instaweb.txt:80
+#. type: Labeled list
+#: en/git-format-patch.txt:220
 #, no-wrap
-msgid ""
-"[instaweb]\n"
-"\tlocal = true\n"
-"\thttpd = apache2 -f\n"
-"\tport = 4321\n"
-"\tbrowser = konqueror\n"
-"\tmodulePath = /usr/lib/apache2/modules\n"
+msgid "--add-header=<header>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-instaweb.txt:86
+#: en/git-format-patch.txt:227
 msgid ""
-"If the configuration variable `instaweb.browser` is not set, `web.browser` "
-"will be used instead if it is defined. See linkgit:git-web{litdd}browse[1] "
-"for more information about this."
+"Add an arbitrary header to the email headers.  This is in addition to any "
+"configured headers, and may be used multiple times.  For example, `--add-"
+"header=\"Organization: git-foo\"`.  The negated form `--no-add-header` "
+"discards *all* (`To:`, `Cc:`, and custom) headers added so far from config "
+"or command line."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-instaweb.txt:90 en/cmds-ancillaryinterrogators.txt:49
-#, no-wrap
-msgid "linkgit:gitweb[1]"
-msgstr ""
-
-#. type: Title =
-#: en/git-interpret-trailers.txt:2
+#: en/git-format-patch.txt:228
 #, no-wrap
-msgid "git-interpret-trailers(1)"
+msgid "--[no-]cover-letter"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:7
+#: en/git-format-patch.txt:232
 msgid ""
-"git-interpret-trailers - help add structured information into commit "
-"messages"
+"In addition to the patches, generate a cover letter file containing the "
+"branch description, shortlog and the overall diffstat.  You can fill in a "
+"description in the file before sending it out."
 msgstr ""
 
-#. type: Plain text
-#: en/git-interpret-trailers.txt:12
+#. type: Labeled list
+#: en/git-format-patch.txt:233
 #, no-wrap
-msgid ""
-"'git interpret-trailers' [--in-place] [--trim-empty] [(--trailer "
-"<token>[(=|:)<value>])...] [<file>...]\n"
+msgid "--interdiff=<previous>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:18
+#: en/git-format-patch.txt:241
 msgid ""
-"Help adding 'trailers' lines, that look similar to RFC 822 e-mail headers, "
-"at the end of the otherwise free-form part of a commit message."
+"As a reviewer aid, insert an interdiff into the cover letter, or as "
+"commentary of the lone patch of a 1-patch series, showing the differences "
+"between the previous version of the patch series and the series currently "
+"being formatted. `previous` is a single revision naming the tip of the "
+"previous series which shares a common base with the series being formatted "
+"(for example `git format-patch --cover-letter --interdiff=feature/v1 -3 "
+"feature/v2`)."
 msgstr ""
 
-#. type: Plain text
-#: en/git-interpret-trailers.txt:24
-msgid ""
-"This command reads some patches or commit messages from either the <file> "
-"arguments or the standard input if no <file> is specified. Then this command "
-"applies the arguments passed using the `--trailer` option, if any, to the "
-"commit message part of each input file. The result is emitted on the "
-"standard output."
+#. type: Labeled list
+#: en/git-format-patch.txt:242
+#, no-wrap
+msgid "--range-diff=<previous>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:29
+#: en/git-format-patch.txt:253
 msgid ""
-"Some configuration variables control the way the `--trailer` arguments are "
-"applied to each commit message and the way any existing trailer in the "
-"commit message is changed. They also make it possible to automatically add "
-"some trailers."
+"As a reviewer aid, insert a range-diff (see linkgit:git-range-diff[1])  into "
+"the cover letter, or as commentary of the lone patch of a 1-patch series, "
+"showing the differences between the previous version of the patch series and "
+"the series currently being formatted.  `previous` can be a single revision "
+"naming the tip of the previous series if it shares a common base with the "
+"series being formatted (for example `git format-patch --cover-letter --range-"
+"diff=feature/v1 -3 feature/v2`), or a revision range if the two versions of "
+"the series are disjoint (for example `git format-patch --cover-letter --"
+"range-diff=feature/v1~3..feature/v1 -3 feature/v2`)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:36
+#: en/git-format-patch.txt:258
 msgid ""
-"By default, a '<token>=<value>' or '<token>:<value>' argument given using "
-"`--trailer` will be appended after the existing trailers only if the last "
-"trailer has a different (<token>, <value>) pair (or if there is no existing "
-"trailer). The <token> and <value> parts will be trimmed to remove starting "
-"and trailing whitespace, and the resulting trimmed <token> and <value> will "
-"appear in the message like this:"
+"Note that diff options passed to the command affect how the primary product "
+"of `format-patch` is generated, and they are not passed to the underlying "
+"`range-diff` machinery used to generate the cover-letter material (this may "
+"change in the future)."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-interpret-trailers.txt:39
+#. type: Labeled list
+#: en/git-format-patch.txt:259
 #, no-wrap
-msgid "token: value\n"
+msgid "--creation-factor=<percent>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:43
+#: en/git-format-patch.txt:264
 msgid ""
-"This means that the trimmed <token> and <value> will be separated by `': '` "
-"(one colon followed by one space)."
+"Used with `--range-diff`, tweak the heuristic which matches up commits "
+"between the previous and current series of patches by adjusting the creation/"
+"deletion cost fudge factor. See linkgit:git-range-diff[1])  for details."
 msgstr ""
 
-#. type: Plain text
-#: en/git-interpret-trailers.txt:49
-msgid ""
-"By default the new trailer will appear at the end of all the existing "
-"trailers. If there is no existing trailer, the new trailer will appear after "
-"the commit message part of the output, and, if there is no line with only "
-"spaces at the end of the commit message part, one blank line will be added "
-"before the new trailer."
+#. type: Labeled list
+#: en/git-format-patch.txt:265
+#, no-wrap
+msgid "--notes[=<ref>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:58
+#: en/git-format-patch.txt:268
 msgid ""
-"Existing trailers are extracted from the input message by looking for a "
-"group of one or more lines that (i) are all trailers, or (ii) contains at "
-"least one Git-generated or user-configured trailer and consists of at least "
-"25% trailers.  The group must be preceded by one or more empty (or "
-"whitespace-only) lines.  The group must either be at the end of the message "
-"or be the last non-whitespace lines before a line that starts with "
-"'---'. Such three minus signs start the patch part of the message."
+"Append the notes (see linkgit:git-notes[1]) for the commit after the three-"
+"dash line."
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:63
+#: en/git-format-patch.txt:276
 msgid ""
-"When reading trailers, there can be whitespaces after the token, the "
-"separator and the value. There can also be whitespaces inside the token and "
-"the value. The value may be split over multiple lines with each subsequent "
-"line starting with whitespace, like the \"folding\" in RFC 822."
+"The expected use case of this is to write supporting explanation for the "
+"commit that does not belong to the commit log message proper, and include it "
+"with the patch submission. While one can simply write these explanations "
+"after `format-patch` has run but before sending, keeping them as Git notes "
+"allows them to be maintained between versions of the patch series (but see "
+"the discussion of the `notes.rewrite` configuration options in linkgit:git-"
+"notes[1] to use this workflow)."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-format-patch.txt:277
+#, no-wrap
+msgid "--[no-]signature=<signature>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:67
+#: en/git-format-patch.txt:282
 msgid ""
-"Note that 'trailers' do not follow and are not intended to follow many rules "
-"for RFC 822 headers. For example they do not follow the encoding rules and "
-"probably many other rules."
+"Add a signature to each message produced. Per RFC 3676 the signature is "
+"separated from the body by a line with '-- ' on it. If the signature option "
+"is omitted the signature defaults to the Git version number."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-interpret-trailers.txt:70
+#: en/git-format-patch.txt:283
 #, no-wrap
-msgid "--in-place"
+msgid "--signature-file=<file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:72
-msgid "Edit the files in place."
+#: en/git-format-patch.txt:285
+msgid "Works just like --signature except the signature is read from a file."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-interpret-trailers.txt:73
+#: en/git-format-patch.txt:286
 #, no-wrap
-msgid "--trim-empty"
+msgid "--suffix=.<sfx>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:77
+#: en/git-format-patch.txt:291
 msgid ""
-"If the <value> part of any trailer contains only whitespace, the whole "
-"trailer will be removed from the resulting message.  This applies to "
-"existing trailers as well as new trailers."
+"Instead of using `.patch` as the suffix for generated filenames, use "
+"specified suffix.  A common alternative is `--suffix=.txt`.  Leaving this "
+"empty will remove the `.patch` suffix."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-interpret-trailers.txt:78
-#, no-wrap
-msgid "--trailer <token>[(=|:)<value>]"
+#. type: Plain text
+#: en/git-format-patch.txt:294
+msgid ""
+"Note that the leading character does not have to be a dot; for example, you "
+"can use `--suffix=-patch` to get `0001-description-of-my-change-patch`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:82
-msgid ""
-"Specify a (<token>, <value>) pair that should be applied as a trailer to the "
-"input messages. See the description of this command."
+#: en/git-format-patch.txt:298
+msgid "Do not print the names of the generated files to standard output."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-interpret-trailers.txt:86
+#: en/git-format-patch.txt:299
 #, no-wrap
-msgid "trailer.separators"
+msgid "--no-binary"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:91
+#: en/git-format-patch.txt:304
 msgid ""
-"This option tells which characters are recognized as trailer separators. By "
-"default only ':' is recognized as a trailer separator, except that '=' is "
-"always accepted on the command line for compatibility with other git "
-"commands."
+"Do not output contents of changes in binary files, instead display a notice "
+"that those files changed.  Patches generated using this option cannot be "
+"applied properly, but they are still useful for code review."
 msgstr ""
 
-#. type: Plain text
-#: en/git-interpret-trailers.txt:95
-msgid ""
-"The first character given by this option will be the default character used "
-"when another separator is not specified in the config for this trailer."
+#. type: Labeled list
+#: en/git-format-patch.txt:305
+#, no-wrap
+msgid "--zero-commit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:102
+#: en/git-format-patch.txt:308
 msgid ""
-"For example, if the value for this option is \"%=$\", then only lines using "
-"the format '<token><sep><value>' with <sep> containing '%', '=' or '$' and "
-"then spaces will be considered trailers. And '%' will be the default "
-"separator used, so by default trailers will appear like: '<token>% <value>' "
-"(one percent sign and one space will appear between the token and the "
-"value)."
+"Output an all-zero hash in each patch's From header instead of the hash of "
+"the commit."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-interpret-trailers.txt:103
+#: en/git-format-patch.txt:309
 #, no-wrap
-msgid "trailer.where"
+msgid "--base=<commit>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:105
-msgid "This option tells where a new trailer will be added."
+#: en/git-format-patch.txt:313
+msgid ""
+"Record the base tree information to identify the state the patch series "
+"applies to.  See the BASE TREE INFORMATION section below for details."
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:107
-msgid "This can be `end`, which is the default, `start`, `after` or `before`."
+#: en/git-format-patch.txt:320
+msgid ""
+"Treat the revision argument as a <revision range>, even if it is just a "
+"single commit (that would normally be treated as a <since>).  Note that root "
+"commits included in the specified range are always formatted as creation "
+"patches, independently of this flag."
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:110
-msgid ""
-"If it is `end`, then each new trailer will appear at the end of the existing "
-"trailers."
+#: en/git-format-patch.txt:323
+msgid "Show progress reports on stderr as patches are generated."
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:113
+#: en/git-format-patch.txt:330
 msgid ""
-"If it is `start`, then each new trailer will appear at the start, instead of "
-"the end, of the existing trailers."
+"You can specify extra mail header lines to be added to each message, "
+"defaults for the subject prefix and file suffix, number patches when "
+"outputting more than one patch, add \"To\" or \"Cc:\" headers, configure "
+"attachments, and sign off patches with configuration variables."
 msgstr ""
 
-#. type: Plain text
-#: en/git-interpret-trailers.txt:116
+#. type: delimited block -
+#: en/git-format-patch.txt:342
+#, no-wrap
 msgid ""
-"If it is `after`, then each new trailer will appear just after the last "
-"trailer with the same <token>."
+"[format]\n"
+"\theaders = \"Organization: git-foo\\n\"\n"
+"\tsubjectPrefix = CHANGE\n"
+"\tsuffix = .txt\n"
+"\tnumbered = auto\n"
+"\tto = <email>\n"
+"\tcc = <email>\n"
+"\tattach [ = mime-boundary-string ]\n"
+"\tsignOff = true\n"
+"\tcoverletter = auto\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:119
+#: en/git-format-patch.txt:351
 msgid ""
-"If it is `before`, then each new trailer will appear just before the first "
-"trailer with the same <token>."
+"The patch produced by 'git format-patch' is in UNIX mailbox format, with a "
+"fixed \"magic\" time stamp to indicate that the file is output from format-"
+"patch rather than a real mailbox, like so:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-interpret-trailers.txt:120
+#. type: delimited block -
+#: en/git-format-patch.txt:361
 #, no-wrap
-msgid "trailer.ifexists"
+msgid ""
+"From 8f72bad1baf19a53459661343e21d6491c3908d3 Mon Sep 17 00:00:00 2001\n"
+"From: Tony Luck <tony.luck@intel.com>\n"
+"Date: Tue, 13 Jul 2010 11:42:54 -0700\n"
+"Subject: [PATCH] =?UTF-8?q?[IA64]=20Put=20ia64=20config=20files=20on=20the=20?=\n"
+" =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig=20diet?=\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-interpret-trailers.txt:124
+#. type: delimited block -
+#: en/git-format-patch.txt:364
+#, no-wrap
 msgid ""
-"This option makes it possible to choose what action will be performed when "
-"there is already at least one trailer with the same <token> in the message."
+"arch/arm config files were slimmed down using a python script\n"
+"(See commit c2330e286f68f1c408b4aa6515ba49d57f05beae comment)\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-interpret-trailers.txt:127
+#. type: delimited block -
+#: en/git-format-patch.txt:367
+#, no-wrap
 msgid ""
-"The valid values for this option are: `addIfDifferentNeighbor` (this is the "
-"default), `addIfDifferent`, `add`, `overwrite` or `doNothing`."
+"Do the same for ia64 so we can have sleek & trim looking\n"
+"...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:131
+#: en/git-format-patch.txt:375
 msgid ""
-"With `addIfDifferentNeighbor`, a new trailer will be added only if no "
-"trailer with the same (<token>, <value>) pair is above or below the line "
-"where the new trailer will be added."
+"Typically it will be placed in a MUA's drafts folder, edited to add timely "
+"commentary that should not go in the changelog after the three dashes, and "
+"then sent as a message whose body, in our example, starts with \"arch/arm "
+"config files were...\".  On the receiving end, readers can save interesting "
+"patches in a UNIX mailbox and apply them with linkgit:git-am[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:134
+#: en/git-format-patch.txt:381
 msgid ""
-"With `addIfDifferent`, a new trailer will be added only if no trailer with "
-"the same (<token>, <value>) pair is already in the message."
+"When a patch is part of an ongoing discussion, the patch generated by 'git "
+"format-patch' can be tweaked to take advantage of the 'git am --scissors' "
+"feature.  After your response to the discussion comes a line that consists "
+"solely of \"`-- >8 --`\" (scissors and perforation), followed by the patch "
+"with unnecessary header fields removed:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-interpret-trailers.txt:137
+#. type: delimited block -
+#: en/git-format-patch.txt:385
+#, no-wrap
 msgid ""
-"With `add`, a new trailer will be added, even if some trailers with the same "
-"(<token>, <value>) pair are already in the message."
+"...\n"
+"> So we should do such-and-such.\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-interpret-trailers.txt:142
-msgid ""
-"With `replace`, an existing trailer with the same <token> will be deleted "
-"and the new trailer will be added. The deleted trailer will be the closest "
-"one (with the same <token>) to the place where the new one will be added."
+#. type: delimited block -
+#: en/git-format-patch.txt:387
+#, no-wrap
+msgid "Makes sense to me.  How about this patch?\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-interpret-trailers.txt:145
+#. type: delimited block -
+#: en/git-format-patch.txt:390
+#, no-wrap
 msgid ""
-"With `doNothing`, nothing will be done; that is no new trailer will be added "
-"if there is already one with the same <token> in the message."
+"-- >8 --\n"
+"Subject: [IA64] Put ia64 config files on the Uwe Kleine-Kì² nig diet\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-interpret-trailers.txt:146
+#. type: delimited block -
+#: en/git-format-patch.txt:393
 #, no-wrap
-msgid "trailer.ifmissing"
+msgid ""
+"arch/arm config files were slimmed down using a python script\n"
+"...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:150
+#: en/git-format-patch.txt:401
 msgid ""
-"This option makes it possible to choose what action will be performed when "
-"there is not yet any trailer with the same <token> in the message."
+"When sending a patch this way, most often you are sending your own patch, so "
+"in addition to the \"`From $SHA1 $magic_timestamp`\" marker you should omit "
+"`From:` and `Date:` lines from the patch file.  The patch title is likely to "
+"be different from the subject of the discussion the patch is in response to, "
+"so it is likely that you would want to keep the Subject: line, like the "
+"example above."
+msgstr ""
+
+#. type: Title ~
+#: en/git-format-patch.txt:403
+#, no-wrap
+msgid "Checking for patch corruption"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:153
+#: en/git-format-patch.txt:406
 msgid ""
-"The valid values for this option are: `add` (this is the default) and "
-"`doNothing`."
+"Many mailers if not set up properly will corrupt whitespace.  Here are two "
+"common types of corruption:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:155
-msgid "With `add`, a new trailer will be added."
+#: en/git-format-patch.txt:408
+msgid "Empty context lines that do not have _any_ whitespace."
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:157
-msgid "With `doNothing`, nothing will be done."
+#: en/git-format-patch.txt:411
+msgid ""
+"Non-empty context lines that have one extra whitespace at the beginning."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-interpret-trailers.txt:158
-#, no-wrap
-msgid "trailer.<token>.key"
+#. type: Plain text
+#: en/git-format-patch.txt:413
+msgid "One way to test if your MUA is set up correctly is:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:164
+#: en/git-format-patch.txt:417
 msgid ""
-"This `key` will be used instead of <token> in the trailer. At the end of "
-"this key, a separator can appear and then some space characters. By default "
-"the only valid separator is ':', but this can be changed using the "
-"`trailer.separators` config variable."
+"Send the patch to yourself, exactly the way you would, except with To: and "
+"Cc: lines that do not contain the list and maintainer address."
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:167
+#: en/git-format-patch.txt:420
 msgid ""
-"If there is a separator, then the key will be used instead of both the "
-"<token> and the default separator when adding the trailer."
+"Save that patch to a file in UNIX mailbox format.  Call it a.patch, say."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-interpret-trailers.txt:168
-#, no-wrap
-msgid "trailer.<token>.where"
+#. type: Plain text
+#: en/git-format-patch.txt:422
+msgid "Apply it:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:172
+#: en/git-format-patch.txt:427
+#, no-wrap
 msgid ""
-"This option takes the same values as the 'trailer.where' configuration "
-"variable and it overrides what is specified by that option for trailers with "
-"the specified <token>."
+"$ git fetch <project> master:test-apply\n"
+"$ git checkout test-apply\n"
+"$ git reset --hard\n"
+"$ git am a.patch\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-interpret-trailers.txt:173
-#, no-wrap
-msgid "trailer.<token>.ifexist"
+#. type: Plain text
+#: en/git-format-patch.txt:429
+msgid "If it does not apply correctly, there can be various reasons."
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:177
+#: en/git-format-patch.txt:434
 msgid ""
-"This option takes the same values as the 'trailer.ifexist' configuration "
-"variable and it overrides what is specified by that option for trailers with "
-"the specified <token>."
+"The patch itself does not apply cleanly.  That is _bad_ but does not have "
+"much to do with your MUA.  You might want to rebase the patch with linkgit:"
+"git-rebase[1] before regenerating it in this case."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-interpret-trailers.txt:178
-#, no-wrap
-msgid "trailer.<token>.ifmissing"
+#. type: Plain text
+#: en/git-format-patch.txt:439
+msgid ""
+"The MUA corrupted your patch; \"am\" would complain that the patch does not "
+"apply.  Look in the .git/rebase-apply/ subdirectory and see what 'patch' "
+"file contains and check for the common corruption patterns mentioned above."
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:182
+#: en/git-format-patch.txt:447
 msgid ""
-"This option takes the same values as the 'trailer.ifmissing' configuration "
-"variable and it overrides what is specified by that option for trailers with "
-"the specified <token>."
+"While at it, check the 'info' and 'final-commit' files as well.  If what is "
+"in 'final-commit' is not exactly what you would want to see in the commit "
+"log message, it is very likely that the receiver would end up hand editing "
+"the log message when applying your patch.  Things like \"Hi, this is my "
+"first patch.\\n\" in the patch e-mail should come after the three-dash line "
+"that signals the end of the commit message."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-interpret-trailers.txt:183
+#. type: Title -
+#: en/git-format-patch.txt:449
 #, no-wrap
-msgid "trailer.<token>.command"
+msgid "MUA-SPECIFIC HINTS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:187
+#: en/git-format-patch.txt:452
 msgid ""
-"This option can be used to specify a shell command that will be called to "
-"automatically add or modify a trailer with the specified <token>."
+"Here are some hints on how to successfully submit patches inline using "
+"various mailers."
 msgstr ""
 
-#. type: Plain text
-#: en/git-interpret-trailers.txt:193
-msgid ""
-"When this option is specified, the behavior is as if a special "
-"'<token>=<value>' argument were added at the beginning of the command line, "
-"where <value> is taken to be the standard output of the specified command "
-"with any leading and trailing whitespace trimmed off."
+#. type: Title ~
+#: en/git-format-patch.txt:454
+#, no-wrap
+msgid "GMail"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:197
+#: en/git-format-patch.txt:460
 msgid ""
-"If the command contains the `$ARG` string, this string will be replaced with "
-"the <value> part of an existing trailer with the same <token>, if any, "
-"before the command is launched."
+"GMail does not have any way to turn off line wrapping in the web interface, "
+"so it will mangle any emails that you send.  You can however use \"git send-"
+"email\" and send your patches through the GMail SMTP server, or use any IMAP "
+"email client to connect to the google IMAP server and forward the emails "
+"through that."
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:203
+#: en/git-format-patch.txt:463
 msgid ""
-"If some '<token>=<value>' arguments are also passed on the command line, "
-"when a 'trailer.<token>.command' is configured, the command will also be "
-"executed for each of these arguments. And the <value> part of these "
-"arguments, if any, will be used to replace the `$ARG` string in the command."
+"For hints on using 'git send-email' to send your patches through the GMail "
+"SMTP server, see the EXAMPLE section of linkgit:git-send-email[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:209
+#: en/git-format-patch.txt:466
 msgid ""
-"Configure a 'sign' trailer with a 'Signed-off-by' key, and then add two of "
-"these trailers to a message:"
+"For hints on submission using the IMAP interface, see the EXAMPLE section of "
+"linkgit:git-imap-send[1]."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-interpret-trailers.txt:214
+#. type: Title ~
+#: en/git-format-patch.txt:468
 #, no-wrap
-msgid ""
-"$ git config trailer.sign.key \"Signed-off-by\"\n"
-"$ cat msg.txt\n"
-"subject\n"
+msgid "Thunderbird"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-interpret-trailers.txt:218
-#, no-wrap
+#. type: Plain text
+#: en/git-format-patch.txt:472
 msgid ""
-"message\n"
-"$ cat msg.txt | git interpret-trailers --trailer 'sign: Alice "
-"<alice@example.com>' --trailer 'sign: Bob <bob@example.com>'\n"
-"subject\n"
+"By default, Thunderbird will both wrap emails as well as flag them as being "
+"'format=flowed', both of which will make the resulting email unusable by Git."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-interpret-trailers.txt:220 en/git-interpret-trailers.txt:232 en/git-interpret-trailers.txt:239 en/git-interpret-trailers.txt:303
-#, no-wrap
-msgid "message\n"
+#. type: Plain text
+#: en/git-format-patch.txt:476
+msgid ""
+"There are three different approaches: use an add-on to turn off line wraps, "
+"configure Thunderbird to not mangle patches, or use an external editor to "
+"keep Thunderbird from mangling the patches."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-interpret-trailers.txt:223
+#. type: Title ^
+#: en/git-format-patch.txt:478
 #, no-wrap
-msgid ""
-"Signed-off-by: Alice <alice@example.com>\n"
-"Signed-off-by: Bob <bob@example.com>\n"
+msgid "Approach #1 (add-on)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:226
-msgid "Use the `--in-place` option to edit a message file in place:"
+#: en/git-format-patch.txt:486
+msgid ""
+"Install the Toggle Word Wrap add-on that is available from https://addons."
+"mozilla.org/thunderbird/addon/toggle-word-wrap/ It adds a menu entry "
+"\"Enable Word Wrap\" in the composer's \"Options\" menu that you can tick "
+"off. Now you can compose the message as you otherwise do (cut + paste, 'git "
+"format-patch' | 'git imap-send', etc), but you have to insert line breaks "
+"manually in any text that you type."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-interpret-trailers.txt:230
+#. type: Title ^
+#: en/git-format-patch.txt:488
 #, no-wrap
-msgid ""
-"$ cat msg.txt\n"
-"subject\n"
+msgid "Approach #2 (configuration)"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-interpret-trailers.txt:237
-#, no-wrap
-msgid ""
-"Signed-off-by: Bob <bob@example.com>\n"
-"$ git interpret-trailers --trailer 'Acked-by: Alice <alice@example.com>' "
-"--in-place msg.txt\n"
-"$ cat msg.txt\n"
-"subject\n"
+#. type: Plain text
+#: en/git-format-patch.txt:490
+msgid "Three steps:"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-interpret-trailers.txt:242
-#, no-wrap
+#. type: Plain text
+#: en/git-format-patch.txt:494
 msgid ""
-"Signed-off-by: Bob <bob@example.com>\n"
-"Acked-by: Alice <alice@example.com>\n"
+"Configure your mail server composition as plain text: Edit...Account "
+"Settings...Composition & Addressing, uncheck \"Compose Messages in HTML\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:246
-msgid ""
-"Extract the last commit as a patch, and add a 'Cc' and a 'Reviewed-by' "
-"trailer to it:"
+#: en/git-format-patch.txt:496
+msgid "Configure your general composition window to not wrap."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-interpret-trailers.txt:251
-#, no-wrap
+#. type: Plain text
+#: en/git-format-patch.txt:499
 msgid ""
-"$ git format-patch -1\n"
-"0001-foo.patch\n"
-"$ git interpret-trailers --trailer 'Cc: Alice <alice@example.com>' --trailer "
-"'Reviewed-by: Bob <bob@example.com>' 0001-foo.patch >0001-bar.patch\n"
+"In Thunderbird 2: Edit..Preferences..Composition, wrap plain text messages "
+"at 0"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:256
+#: en/git-format-patch.txt:505
 msgid ""
-"Configure a 'sign' trailer with a command to automatically add a "
-"'Signed-off-by: ' with the author information only if there is no "
-"'Signed-off-by: ' already, and show how it works:"
+"In Thunderbird 3: Edit..Preferences..Advanced..Config Editor.  Search for "
+"\"mail.wrap_long_lines\".  Toggle it to make sure it is set to `false`. "
+"Also, search for \"mailnews.wraplength\" and set the value to 0."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-interpret-trailers.txt:264
-#, no-wrap
+#. type: Plain text
+#: en/git-format-patch.txt:510
 msgid ""
-"$ git config trailer.sign.key \"Signed-off-by: \"\n"
-"$ git config trailer.sign.ifmissing add\n"
-"$ git config trailer.sign.ifexists doNothing\n"
-"$ git config trailer.sign.command 'echo \"$(git config user.name) <$(git "
-"config user.email)>\"'\n"
-"$ git interpret-trailers <<EOF\n"
-"> EOF\n"
+"Disable the use of format=flowed: Edit..Preferences..Advanced..Config "
+"Editor.  Search for \"mailnews.send_plaintext_flowed\".  Toggle it to make "
+"sure it is set to `false`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-interpret-trailers.txt:269
-#, no-wrap
+#. type: Plain text
+#: en/git-format-patch.txt:514
 msgid ""
-"Signed-off-by: Bob <bob@example.com>\n"
-"$ git interpret-trailers <<EOF\n"
-"> Signed-off-by: Alice <alice@example.com>\n"
-"> EOF\n"
+"After that is done, you should be able to compose email as you otherwise "
+"would (cut + paste, 'git format-patch' | 'git imap-send', etc), and the "
+"patches will not be mangled."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-interpret-trailers.txt:271
+#. type: Title ^
+#: en/git-format-patch.txt:516
 #, no-wrap
-msgid "Signed-off-by: Alice <alice@example.com>\n"
+msgid "Approach #3 (external editor)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:275
+#: en/git-format-patch.txt:521
 msgid ""
-"Configure a 'fix' trailer with a key that contains a '#' and no space after "
-"this character, and show how it works:"
+"The following Thunderbird extensions are needed: AboutConfig from http://"
+"aboutconfig.mozdev.org/ and External Editor from http://globs.org/articles."
+"php?lng=en&pg=8"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-interpret-trailers.txt:281
-#, no-wrap
-msgid ""
-"$ git config trailer.separators \":#\"\n"
-"$ git config trailer.fix.key \"Fix #\"\n"
-"$ echo \"subject\" | git interpret-trailers --trailer fix=42\n"
-"subject\n"
+#. type: Plain text
+#: en/git-format-patch.txt:523
+msgid "Prepare the patch as a text file using your method of choice."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-interpret-trailers.txt:283
-#, no-wrap
-msgid "Fix #42\n"
+#. type: Plain text
+#: en/git-format-patch.txt:528
+msgid ""
+"Before opening a compose window, use Edit->Account Settings to uncheck the "
+"\"Compose messages in HTML format\" setting in the \"Composition & Addressing"
+"\" panel of the account to be used to send the patch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:287
+#: en/git-format-patch.txt:532
 msgid ""
-"Configure a 'see' trailer with a command to show the subject of a commit "
-"that is related, and show how it works:"
+"In the main Thunderbird window, 'before' you open the compose window for the "
+"patch, use Tools->about:config to set the following to the indicated values:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-interpret-trailers.txt:301
+#: en/git-format-patch.txt:536
 #, no-wrap
 msgid ""
-"$ git config trailer.see.key \"See-also: \"\n"
-"$ git config trailer.see.ifExists \"replace\"\n"
-"$ git config trailer.see.ifMissing \"doNothing\"\n"
-"$ git config trailer.see.command \"git log -1 --oneline --format=\\\"%h "
-"(%s)\\\" --abbrev-commit --abbrev=14 \\$ARG\"\n"
-"$ git interpret-trailers <<EOF\n"
-"> subject\n"
-"> \n"
-"> message\n"
-"> \n"
-"> see: HEAD~2\n"
-"> EOF\n"
-"subject\n"
+"\tmailnews.send_plaintext_flowed  => false\n"
+"\tmailnews.wraplength             => 0\n"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-interpret-trailers.txt:305
-#, no-wrap
-msgid "See-also: fe3187489d69c4 (subject of related commit)\n"
+#. type: Plain text
+#: en/git-format-patch.txt:539
+msgid "Open a compose window and click the external editor icon."
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:312
+#: en/git-format-patch.txt:542
 msgid ""
-"Configure a commit template with some trailers with empty values (using sed "
-"to show and keep the trailing spaces at the end of the trailers), then "
-"configure a commit-msg hook that uses 'git interpret-trailers' to remove "
-"trailers with empty values and to add a 'git-version' trailer:"
+"In the external editor window, read in the patch file and exit the editor "
+"normally."
+msgstr ""
+
+#. type: Plain text
+#: en/git-format-patch.txt:545
+msgid ""
+"Side note: it may be possible to do step 2 with about:config and the "
+"following settings but no one's tried yet."
 msgstr ""
 
 #. type: delimited block -
-#: en/git-interpret-trailers.txt:331
+#: en/git-format-patch.txt:550
 #, no-wrap
 msgid ""
-"$ sed -e 's/ Z$/ /' >commit_template.txt <<EOF\n"
-"> ***subject***\n"
-"> \n"
-"> ***message***\n"
-"> \n"
-"> Fixes: Z\n"
-"> Cc: Z\n"
-"> Reviewed-by: Z\n"
-"> Signed-off-by: Z\n"
-"> EOF\n"
-"$ git config commit.template commit_template.txt\n"
-"$ cat >.git/hooks/commit-msg <<EOF\n"
-"> #!/bin/sh\n"
-"> git interpret-trailers --trim-empty --trailer \"git-version: \\$(git "
-"describe)\" \"\\$1\" > \"\\$1.new\"\n"
-"> mv \"\\$1.new\" \"\\$1\"\n"
-"> EOF\n"
-"$ chmod +x .git/hooks/commit-msg\n"
+"\tmail.html_compose                       => false\n"
+"\tmail.identity.default.compose_html      => false\n"
+"\tmail.identity.id?.compose_html          => false\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-interpret-trailers.txt:336
-msgid "linkgit:git-commit[1], linkgit:git-format-patch[1], linkgit:git-config[1]"
+#: en/git-format-patch.txt:555
+msgid ""
+"There is a script in contrib/thunderbird-patch-inline which can help you "
+"include patches with Thunderbird in an easy way. To use it, do the steps "
+"above and then use the script as the external editor."
 msgstr ""
 
-#. type: Title =
-#: en/git-log.txt:2
+#. type: Title ~
+#: en/git-format-patch.txt:557
 #, no-wrap
-msgid "git-log(1)"
+msgid "KMail"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:7
-msgid "git-log - Show commit logs"
+#: en/git-format-patch.txt:559
+msgid "This should help you to submit patches inline using KMail."
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:13
-#, no-wrap
-msgid "'git log' [<options>] [<revision range>] [[\\--] <path>...]\n"
+#: en/git-format-patch.txt:561
+msgid "Prepare the patch as a text file."
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:17
-msgid "Shows the commit logs."
+#: en/git-format-patch.txt:563
+msgid "Click on New Mail."
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:22
+#: en/git-format-patch.txt:566
 msgid ""
-"The command takes options applicable to the `git rev-list` command to "
-"control what is shown and how, and options applicable to the `git diff-*` "
-"commands to control how the changes each commit introduces are shown."
+"Go under \"Options\" in the Composer window and be sure that \"Word wrap\" "
+"is not set."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-log.txt:27
-#, no-wrap
-msgid "--follow"
+#. type: Plain text
+#: en/git-format-patch.txt:568
+msgid "Use Message -> Insert file... and insert the patch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:30
+#: en/git-format-patch.txt:571
 msgid ""
-"Continue listing the history of a file beyond renames (works only for a "
-"single file)."
+"Back in the compose window: add whatever other text you wish to the message, "
+"complete the addressing and subject fields, and press send."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-log.txt:31
+#. type: Title -
+#: en/git-format-patch.txt:573
 #, no-wrap
-msgid "--no-decorate"
+msgid "BASE TREE INFORMATION"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-log.txt:32
-#, no-wrap
-msgid "--decorate[=short|full|auto|no]"
+#. type: Plain text
+#: en/git-format-patch.txt:582
+msgid ""
+"The base tree information block is used for maintainers or third party "
+"testers to know the exact state the patch series applies to. It consists of "
+"the 'base commit', which is a well-known commit that is part of the stable "
+"part of the project history everybody else works off of, and zero or more "
+"'prerequisite patches', which are well-known patches in flight that is not "
+"yet part of the 'base commit' that need to be applied on top of 'base "
+"commit' in topological order before the patches can be applied."
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:40
+#: en/git-format-patch.txt:588
 msgid ""
-"Print out the ref names of any commits that are shown. If 'short' is "
-"specified, the ref name prefixes 'refs/heads/', 'refs/tags/' and "
-"'refs/remotes/' will not be printed. If 'full' is specified, the full ref "
-"name (including prefix) will be printed. If 'auto' is specified, then if the "
-"output is going to a terminal, the ref names are shown as if 'short' were "
-"given, otherwise no ref names are shown. The default option is 'short'."
+"The 'base commit' is shown as \"base-commit: \" followed by the 40-hex of "
+"the commit object name.  A 'prerequisite patch' is shown as \"prerequisite-"
+"patch-id: \" followed by the 40-hex 'patch id', which can be obtained by "
+"passing the patch through the `git patch-id --stable` command."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-log.txt:41
+#. type: Plain text
+#: en/git-format-patch.txt:592
+msgid ""
+"Imagine that on top of the public commit P, you applied well-known patches "
+"X, Y and Z from somebody else, and then built your three-patch series A, B, "
+"C, the history would be like:"
+msgstr ""
+
+#. type: delimited block .
+#: en/git-format-patch.txt:595
 #, no-wrap
-msgid "--source"
+msgid "---P---X---Y---Z---A---B---C\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:44
+#: en/git-format-patch.txt:602
 msgid ""
-"Print out the ref name given on the command line by which each commit was "
-"reached."
+"With `git format-patch --base=P -3 C` (or variants thereof, e.g. with `--"
+"cover-letter` or using `Z..C` instead of `-3 C` to specify the range), the "
+"base tree information block is shown at the end of the first message the "
+"command outputs (either the first patch, or the cover letter), like this:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-log.txt:45
+#. type: delimited block -
+#: en/git-format-patch.txt:608
 #, no-wrap
-msgid "--use-mailmap"
+msgid ""
+"base-commit: P\n"
+"prerequisite-patch-id: X\n"
+"prerequisite-patch-id: Y\n"
+"prerequisite-patch-id: Z\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:49
-msgid ""
-"Use mailmap file to map author and committer names and email addresses to "
-"canonical real names and email addresses. See linkgit:git-shortlog[1]."
+#: en/git-format-patch.txt:611
+msgid "For non-linear topology, such as"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-log.txt:50
+#. type: delimited block .
+#: en/git-format-patch.txt:616
 #, no-wrap
-msgid "--full-diff"
+msgid ""
+"---P---X---A---M---C\n"
+"    \\         /\n"
+"     Y---Z---B\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:56
+#: en/git-format-patch.txt:621
 msgid ""
-"Without this flag, `git log -p <path>...` shows commits that touch the "
-"specified paths, and diffs about the same specified paths.  With this, the "
-"full diff is shown for commits that touch the specified paths; this means "
-"that \"<path>...\" limits only commits, and doesn't limit diff for those "
-"commits."
+"You can also use `git format-patch --base=P -3 C` to generate patches for A, "
+"B and C, and the identifiers for P, X, Y, Z are appended at the end of the "
+"first message."
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:59
+#: en/git-format-patch.txt:627
 msgid ""
-"Note that this affects all diff-based output types, e.g. those produced by "
-"`--stat`, etc."
+"If set `--base=auto` in cmdline, it will track base commit automatically, "
+"the base commit will be the merge base of tip commit of the remote-tracking "
+"branch and revision-range specified in cmdline.  For a local branch, you "
+"need to track a remote branch by `git branch --set-upstream-to` before using "
+"this option."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-log.txt:60
+#. type: Plain text
+#: en/git-format-patch.txt:633
+msgid ""
+"Extract commits between revisions R1 and R2, and apply them on top of the "
+"current branch using 'git am' to cherry-pick them:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-format-patch.txt:636
 #, no-wrap
-msgid "--log-size"
+msgid "$ git format-patch -k --stdout R1..R2 | git am -3 -k\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:65
+#: en/git-format-patch.txt:640
 msgid ""
-"Include a line ``log size <number>'' in the output for each commit, where "
-"<number> is the length of that commit's message in bytes.  Intended to speed "
-"up tools that read log messages from `git log` output by allowing them to "
-"allocate space in advance."
+"Extract all commits which are in the current branch but not in the origin "
+"branch:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-log.txt:66
+#. type: delimited block -
+#: en/git-format-patch.txt:643
 #, no-wrap
-msgid "-L <start>,<end>:<file>"
+msgid "$ git format-patch origin\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-log.txt:67
-#, no-wrap
-msgid "-L :<funcname>:<file>"
+#. type: Plain text
+#: en/git-format-patch.txt:646
+msgid "For each commit a separate file is created in the current directory."
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:74
+#: en/git-format-patch.txt:649
 msgid ""
-"Trace the evolution of the line range given by \"<start>,<end>\" (or the "
-"function name regex <funcname>) within the <file>.  You may not give any "
-"pathspec limiters.  This is currently limited to a walk starting from a "
-"single revision, i.e., you may only give zero or one positive revision "
-"arguments.  You can specify this option more than once."
+"Extract all commits that lead to 'origin' since the inception of the project:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-log.txt:77 en/git-shortlog.txt:63
+#. type: delimited block -
+#: en/git-format-patch.txt:652
 #, no-wrap
-msgid "<revision range>"
+msgid "$ git format-patch --root origin\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:85
-msgid ""
-"Show only commits in the specified revision range.  When no <revision range> "
-"is specified, it defaults to `HEAD` (i.e. the whole history leading to the "
-"current commit).  `origin..HEAD` specifies all the commits reachable from "
-"the current commit (i.e. `HEAD`), but not from `origin`. For a complete list "
-"of ways to spell <revision range>, see the 'Specifying Ranges' section of "
-"linkgit:gitrevisions[7]."
+#: en/git-format-patch.txt:655
+msgid "The same as the previous one:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-log.txt:91
+#. type: delimited block -
+#: en/git-format-patch.txt:658
 #, no-wrap
-msgid ""
-"[\\--] <path>...::\n"
-"\tShow only commits that are enough to explain how the files\n"
-"\tthat match the specified paths came to be.  See 'History\n"
-"\tSimplification' below for details and other simplification\n"
-"\tmodes.\n"
+msgid "$ git format-patch -M -B origin\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:94
+#: en/git-format-patch.txt:665
 msgid ""
-"Paths may need to be prefixed with ``\\-- '' to separate them from options "
-"or the revision range, when confusion arises."
+"Additionally, it detects and handles renames and complete rewrites "
+"intelligently to produce a renaming patch.  A renaming patch reduces the "
+"amount of text output, and generally makes it easier to review.  Note that "
+"non-Git \"patch\" programs won't understand renaming patches, so use it only "
+"when you know the recipient uses Git to apply your patch."
 msgstr ""
 
-#. type: Title -
-#: en/git-log.txt:100 en/git-show.txt:49
-#, no-wrap
-msgid "COMMON DIFF OPTIONS"
+#. type: Plain text
+#: en/git-format-patch.txt:668
+msgid ""
+"Extract three topmost commits from the current branch and format them as e-"
+"mailable patches:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-log.txt:109
+#. type: delimited block -
+#: en/git-format-patch.txt:671
 #, no-wrap
-msgid "`git log --no-merges`"
+msgid "$ git format-patch -3\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:112
-msgid "Show the whole commit history, but skip any merges"
+#: en/git-format-patch.txt:676
+msgid "linkgit:git-am[1], linkgit:git-send-email[1]"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-log.txt:113
+#. type: Title =
+#: en/git-fsck-objects.txt:2
 #, no-wrap
-msgid "`git log v2.6.12.. include/scsi drivers/scsi`"
+msgid "git-fsck-objects(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:117
+#: en/git-fsck-objects.txt:7
 msgid ""
-"Show all commits since version 'v2.6.12' that changed any file in the "
-"`include/scsi` or `drivers/scsi` subdirectories"
+"git-fsck-objects - Verifies the connectivity and validity of the objects in "
+"the database"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-log.txt:118
+#. type: Plain text
+#: en/git-fsck-objects.txt:13
 #, no-wrap
-msgid "`git log --since=\"2 weeks ago\" -- gitk`"
+msgid "'git fsck-objects' ...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:123
+#: en/git-fsck-objects.txt:19
 msgid ""
-"Show the changes during the last two weeks to the file 'gitk'.  The ``--'' "
-"is necessary to avoid confusion with the *branch* named 'gitk'"
+"This is a synonym for linkgit:git-fsck[1].  Please refer to the "
+"documentation of that command."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-log.txt:124
+#. type: Title =
+#: en/git-fsck.txt:2
 #, no-wrap
-msgid "`git log --name-status release..test`"
+msgid "git-fsck(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:129
+#: en/git-fsck.txt:7
 msgid ""
-"Show the commits that are in the \"test\" branch but not yet in the "
-"\"release\" branch, along with the list of paths each commit modifies."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-log.txt:130
-#, no-wrap
-msgid "`git log --follow builtin/rev-list.c`"
+"git-fsck - Verifies the connectivity and validity of the objects in the "
+"database"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:135
+#: en/git-fsck.txt:16
+#, no-wrap
 msgid ""
-"Shows the commits that changed `builtin/rev-list.c`, including those commits "
-"that occurred before the file was given its present name."
+"'git fsck' [--tags] [--root] [--unreachable] [--cache] [--no-reflogs]\n"
+"\t [--[no-]full] [--strict] [--verbose] [--lost-found]\n"
+"\t [--[no-]dangling] [--[no-]progress] [--connectivity-only]\n"
+"\t [--[no-]name-objects] [<object>*]\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-log.txt:136
-#, no-wrap
-msgid "`git log --branches --not --remotes=origin`"
+#. type: Plain text
+#: en/git-fsck.txt:25
+msgid "An object to treat as the head of an unreachability trace."
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:141
+#: en/git-fsck.txt:29
 msgid ""
-"Shows all commits that are in any of local branches but not in any of "
-"remote-tracking branches for 'origin' (what you have that origin doesn't)."
+"If no objects are given, 'git fsck' defaults to using the index file, all "
+"SHA-1 references in `refs` namespace, and all reflogs (unless --no-reflogs "
+"is given) as heads."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-log.txt:142
+#: en/git-fsck.txt:30
 #, no-wrap
-msgid "`git log master --not --remotes=*/master`"
+msgid "--unreachable"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:146
+#: en/git-fsck.txt:33
 msgid ""
-"Shows all commits that are in local master but not in any remote repository "
-"master branches."
+"Print out objects that exist but that aren't reachable from any of the "
+"reference nodes."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-log.txt:147
+#: en/git-fsck.txt:34
 #, no-wrap
-msgid "`git log -p -m --first-parent`"
+msgid "--[no-]dangling"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:154
+#: en/git-fsck.txt:37
 msgid ""
-"Shows the history including change diffs, but only from the ``main branch'' "
-"perspective, skipping commits that come from merged branches, and showing "
-"full diffs of changes introduced by the merges.  This makes sense only when "
-"following a strict policy of merging all topic branches when staying on a "
-"single integration branch."
+"Print objects that exist but that are never 'directly' used (default).  `--"
+"no-dangling` can be used to omit this information from the output."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-log.txt:155
-#, no-wrap
-msgid "`git log -L '/int main/',/^}/:main.c`"
+#. type: Plain text
+#: en/git-fsck.txt:40
+msgid "Report root nodes."
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:159
-msgid "Shows how the function `main()` in the file `main.c` evolved over time."
+#: en/git-fsck.txt:43
+msgid "Report tags."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-log.txt:160
+#: en/git-fsck.txt:44
 #, no-wrap
-msgid "`git log -3`"
-msgstr ""
-
-#. type: Plain text
-#: en/git-log.txt:163
-msgid "Limits the number of commits to show to 3."
+msgid "--cache"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:174
+#: en/git-fsck.txt:47
 msgid ""
-"See linkgit:git-config[1] for core variables and linkgit:git-diff[1] for "
-"settings related to diff generation."
+"Consider any object recorded in the index also as a head node for an "
+"unreachability trace."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-log.txt:175 en/config.txt:1383
+#: en/git-fsck.txt:48
 #, no-wrap
-msgid "format.pretty"
+msgid "--no-reflogs"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:178
+#: en/git-fsck.txt:53
 msgid ""
-"Default for the `--format` option.  (See 'Pretty Formats' above.)  Defaults "
-"to `medium`."
+"Do not consider commits that are referenced only by an entry in a reflog to "
+"be reachable.  This option is meant only to search for commits that used to "
+"be in a ref, but now aren't, but are still in that corresponding reflog."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-log.txt:179 en/config.txt:2053
+#: en/git-fsck.txt:54
 #, no-wrap
-msgid "i18n.logOutputEncoding"
+msgid "--full"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:183
+#: en/git-fsck.txt:63
 msgid ""
-"Encoding to use when displaying logs.  (See 'Discussion' above.)  Defaults "
-"to the value of `i18n.commitEncoding` if set, and UTF-8 otherwise."
+"Check not just objects in GIT_OBJECT_DIRECTORY ($GIT_DIR/objects), but also "
+"the ones found in alternate object pools listed in "
+"GIT_ALTERNATE_OBJECT_DIRECTORIES or $GIT_DIR/objects/info/alternates, and in "
+"packed Git archives found in $GIT_DIR/objects/pack and corresponding pack "
+"subdirectories in alternate object pools.  This is now default; you can turn "
+"it off with --no-full."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-log.txt:184 en/config.txt:2112
+#: en/git-fsck.txt:64
 #, no-wrap
-msgid "log.date"
+msgid "--connectivity-only"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:188
+#: en/git-fsck.txt:68
 msgid ""
-"Default format for human-readable dates.  (Compare the `--date` option.)  "
-"Defaults to \"default\", which means to write dates like `Sat May 8 19:35:34 "
-"2010 -0500`."
+"Check only the connectivity of tags, commits and tree objects. By avoiding "
+"to unpack blobs, this speeds up the operation, at the expense of missing "
+"corrupt objects or other problematic issues."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-log.txt:189 en/config.txt:2127
+#: en/git-fsck.txt:69 en/git-index-pack.txt:74 en/git-unpack-objects.txt:44
 #, no-wrap
-msgid "log.follow"
+msgid "--strict"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:194 en/config.txt:2132
+#: en/git-fsck.txt:76
 msgid ""
-"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."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-log.txt:195 en/config.txt:2137
-#, no-wrap
-msgid "log.showRoot"
+"Enable more strict checking, namely to catch a file mode recorded with g+w "
+"bit set, which was created by older versions of Git.  Existing repositories, "
+"including the Linux kernel, Git itself, and sparse repository have old "
+"objects that triggers this check, but it is recommended to check new "
+"projects with this flag."
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:200
-msgid ""
-"If `false`, `git log` and related commands will not treat the initial commit "
-"as a big creation event.  Any root commits in `git log -p` output would be "
-"shown without a diff attached.  The default is `true`."
+#: en/git-fsck.txt:79
+msgid "Be chatty."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-log.txt:201
+#: en/git-fsck.txt:80
 #, no-wrap
-msgid "log.showSignature"
+msgid "--lost-found"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:204
+#: en/git-fsck.txt:85
 msgid ""
-"If `true`, `git log` and related commands will act as if the "
-"`--show-signature` option was passed to them."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-log.txt:205
-#, no-wrap
-msgid "mailmap.*"
-msgstr ""
-
-#. type: Plain text
-#: en/git-log.txt:207
-msgid "See linkgit:git-shortlog[1]."
+"Write dangling objects into .git/lost-found/commit/ or .git/lost-found/"
+"other/, depending on type.  If the object is a blob, the contents are "
+"written into the file, rather than its object name."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-log.txt:208 en/git-notes.txt:333 en/config.txt:2251
+#: en/git-fsck.txt:86
 #, no-wrap
-msgid "notes.displayRef"
-msgstr ""
-
-#. type: Plain text
-#: en/git-log.txt:213
-msgid ""
-"Which refs, in addition to the default set by `core.notesRef` or "
-"`GIT_NOTES_REF`, to read notes from when showing commit messages with the "
-"`log` family of commands.  See linkgit:git-notes[1]."
+msgid "--name-objects"
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:217
+#: en/git-fsck.txt:91
 msgid ""
-"May be an unabbreviated ref name or a glob and may be specified multiple "
-"times.  A warning will be issued for refs that do not exist, but a glob that "
-"does not match any refs is silently ignored."
+"When displaying names of reachable objects, in addition to the SHA-1 also "
+"display a name that describes *how* they are reachable, compatible with "
+"linkgit:git-rev-parse[1], e.g.  `HEAD@{1234567890}~25^2:src/`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-log.txt:221
+#: en/git-fsck.txt:98
 msgid ""
-"This setting can be disabled by the `--no-notes` option, overridden by the "
-"`GIT_NOTES_DISPLAY_REF` environment variable, and overridden by the "
-"`--notes=<ref>` option."
-msgstr ""
-
-#. type: Title =
-#: en/git-ls-files.txt:2
-#, no-wrap
-msgid "git-ls-files(1)"
+"Progress status is reported on the standard error stream by default when it "
+"is attached to a terminal, unless --no-progress or --verbose is specified. --"
+"progress forces progress status even if the standard error stream is not "
+"directed to a terminal."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:7
+#: en/git-fsck.txt:108
 msgid ""
-"git-ls-files - Show information about files in the index and the working "
-"tree"
+"git-fsck tests SHA-1 and general object sanity, and it does full tracking of "
+"the resulting reachability and everything else. It prints out any corruption "
+"it finds (missing or bad objects), and if you use the `--unreachable` flag "
+"it will also print out objects that exist but that aren't reachable from any "
+"of the specified head nodes (or the default set, as mentioned above)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:23
-#, no-wrap
+#: en/git-fsck.txt:112
 msgid ""
-"'git ls-files' [-z] [-t] [-v]\n"
-"\t\t(--[cached|deleted|others|ignored|stage|unmerged|killed|modified])*\n"
-"\t\t(-[c|d|o|i|s|u|k|m])*\n"
-"\t\t[--eol]\n"
-"\t\t[-x <pattern>|--exclude=<pattern>]\n"
-"\t\t[-X <file>|--exclude-from=<file>]\n"
-"\t\t[--exclude-per-directory=<file>]\n"
-"\t\t[--exclude-standard]\n"
-"\t\t[--error-unmatch] [--with-tree=<tree-ish>]\n"
-"\t\t[--full-name] [--recurse-submodules]\n"
-"\t\t[--abbrev] [--] [<file>...]\n"
+"Any corrupt objects you will have to find in backups or other archives (i."
+"e., you can just remove them and do an 'rsync' with some other site in the "
+"hopes that somebody else has the object you have corrupted)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:29
+#: en/git-fsck.txt:115
 msgid ""
-"This merges the file listing in the directory cache index with the actual "
-"working directory list, and shows different combinations of the two."
+"If core.commitGraph is true, the commit-graph file will also be inspected "
+"using 'git commit-graph verify'. See linkgit:git-commit-graph[1]."
 msgstr ""
 
-#. type: Plain text
-#: en/git-ls-files.txt:32
-msgid "One or more of the options below may be used to determine the files shown:"
-msgstr ""
-
-#. type: Plain text
-#: en/git-ls-files.txt:38
-msgid "Show cached files in the output (default)"
+#. type: Title -
+#: en/git-fsck.txt:117
+#, no-wrap
+msgid "Extracted Diagnostics"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-files.txt:40
+#: en/git-fsck.txt:119
 #, no-wrap
-msgid "--deleted"
+msgid "expect dangling commits - potential heads - due to lack of head information"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:42
-msgid "Show deleted files in the output"
+#: en/git-fsck.txt:123
+msgid ""
+"You haven't specified any nodes as heads so it won't be possible to "
+"differentiate between un-parented commits and root nodes."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-files.txt:44
+#: en/git-fsck.txt:124
 #, no-wrap
-msgid "--modified"
+msgid "missing sha1 directory '<dir>'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:46
-msgid "Show modified files in the output"
+#: en/git-fsck.txt:126
+msgid "The directory holding the sha1 objects is missing."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-files.txt:48
+#: en/git-fsck.txt:127
 #, no-wrap
-msgid "--others"
+msgid "unreachable <type> <object>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:50
-msgid "Show other (i.e. untracked) files in the output"
+#: en/git-fsck.txt:134
+msgid ""
+"The <type> object <object>, isn't actually referred to directly or "
+"indirectly in any of the trees or commits seen. This can mean that there's "
+"another root node that you're not specifying or that the tree is corrupt. If "
+"you haven't missed a root node then you might as well delete unreachable "
+"nodes since they can't be used."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-files.txt:52 en/git-status.txt:97
+#: en/git-fsck.txt:135
 #, no-wrap
-msgid "--ignored"
+msgid "missing <type> <object>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:57
+#: en/git-fsck.txt:138
 msgid ""
-"Show only ignored files in the output. When showing files in the index, "
-"print only those matched by an exclude pattern. When showing \"other\" "
-"files, show only those matched by an exclude pattern."
+"The <type> object <object>, is referred to but isn't present in the database."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-files.txt:59
+#: en/git-fsck.txt:139
 #, no-wrap
-msgid "--stage"
+msgid "dangling <type> <object>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:61
-msgid "Show staged contents' object name, mode bits and stage number in the output."
+#: en/git-fsck.txt:142
+msgid ""
+"The <type> object <object>, is present in the database but never 'directly' "
+"used. A dangling commit could be a root node."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-files.txt:62
+#: en/git-fsck.txt:143
 #, no-wrap
-msgid "--directory"
+msgid "hash mismatch <object>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:65
+#: en/git-fsck.txt:147
 msgid ""
-"If a whole directory is classified as \"other\", show just its name (with a "
-"trailing slash) and not its whole contents."
+"The database has an object whose hash doesn't match the object database "
+"value.  This indicates a serious data integrity problem."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-ls-files.txt:66
+#. type: Title -
+#: en/git-fsck.txt:149 en/git.txt:372
 #, no-wrap
-msgid "--no-empty-directory"
-msgstr ""
-
-#. type: Plain text
-#: en/git-ls-files.txt:68
-msgid "Do not list empty directories. Has no effect without --directory."
+msgid "Environment Variables"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-files.txt:70 en/git-update-index.txt:65
+#: en/git-fsck.txt:151
 #, no-wrap
-msgid "--unmerged"
+msgid "GIT_OBJECT_DIRECTORY"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:72
-msgid "Show unmerged files in the output (forces --stage)"
+#: en/git-fsck.txt:153
+msgid "used to specify the object database root (usually $GIT_DIR/objects)"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-files.txt:74
+#: en/git-fsck.txt:154
 #, no-wrap
-msgid "--killed"
-msgstr ""
-
-#. type: Plain text
-#: en/git-ls-files.txt:78
-msgid ""
-"Show files on the filesystem that need to be removed due to file/directory "
-"conflicts for checkout-index to succeed."
+msgid "GIT_INDEX_FILE"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:82
-msgid ""
-"\\0 line termination on output and do not quote filenames.  See OUTPUT below "
-"for more information."
+#: en/git-fsck.txt:156
+msgid "used to specify the index file of the index"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-files.txt:83
+#: en/git-fsck.txt:157
 #, no-wrap
-msgid "-x <pattern>"
+msgid "GIT_ALTERNATE_OBJECT_DIRECTORIES"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:88
-msgid ""
-"Skip untracked files matching pattern.  Note that pattern is a shell "
-"wildcard pattern. See EXCLUDE PATTERNS below for more information."
+#: en/git-fsck.txt:159
+msgid "used to specify additional object database roots (usually unset)"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-ls-files.txt:89
+#. type: Title =
+#: en/git-gc.txt:2
 #, no-wrap
-msgid "-X <file>"
+msgid "git-gc(1)"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-ls-files.txt:90
-#, no-wrap
-msgid "--exclude-from=<file>"
+#. type: Plain text
+#: en/git-gc.txt:7
+msgid "git-gc - Cleanup unnecessary files and optimize the local repository"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:92
-msgid "Read exclude patterns from <file>; 1 per line."
+#: en/git-gc.txt:13
+#, no-wrap
+msgid "'git gc' [--aggressive] [--auto] [--quiet] [--prune=<date> | --no-prune] [--force] [--keep-largest-pack]\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-ls-files.txt:93
-#, no-wrap
-msgid "--exclude-per-directory=<file>"
+#. type: Plain text
+#: en/git-gc.txt:22
+msgid ""
+"Runs a number of housekeeping tasks within the current repository, such as "
+"compressing file revisions (to reduce disk space and increase performance), "
+"removing unreachable objects which may have been created from prior "
+"invocations of 'git add', packing refs, pruning reflog, rerere metadata or "
+"stale working trees. May also update ancillary indexes such as the commit-"
+"graph."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:96
+#: en/git-gc.txt:26
 msgid ""
-"Read additional exclude patterns that apply only to the directory and its "
-"subdirectories in <file>."
+"Users are encouraged to run this task on a regular basis within each "
+"repository to maintain good disk space utilization and good operating "
+"performance."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:100
+#: en/git-gc.txt:30
 msgid ""
-"Add the standard Git exclusions: .git/info/exclude, .gitignore in each "
-"directory, and the user's global exclusion file."
+"Some git commands may automatically run 'git gc'; see the `--auto` flag "
+"below for details. If you know what you're doing and all you want is to "
+"disable this behavior permanently without further considerations, just do:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-gc.txt:33
+#, no-wrap
+msgid "$ git config --global gc.auto 0\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-files.txt:101
+#: en/git-gc.txt:38 en/git-read-tree.txt:71
 #, no-wrap
-msgid "--error-unmatch"
+msgid "--aggressive"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:104
+#: en/git-gc.txt:45
 msgid ""
-"If any <file> does not appear in the index, treat this as an error (return "
-"1)."
+"Usually 'git gc' runs very quickly while providing good disk space "
+"utilization and performance.  This option will cause 'git gc' to more "
+"aggressively optimize the repository at the expense of taking much more "
+"time.  The effects of this optimization are persistent, so this option only "
+"needs to be used occasionally; every few hundred changesets or so."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-files.txt:105
+#: en/git-gc.txt:46
 #, no-wrap
-msgid "--with-tree=<tree-ish>"
+msgid "--auto"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:111
+#: en/git-gc.txt:53
 msgid ""
-"When using --error-unmatch to expand the user supplied <file> (i.e. path "
-"pattern) arguments to paths, pretend that paths which were removed in the "
-"index since the named <tree-ish> are still present.  Using this option with "
-"`-s` or `-u` options does not make any sense."
+"With this option, 'git gc' checks whether any housekeeping is required; if "
+"not, it exits without performing any work.  Some git commands run `git gc --"
+"auto` after performing operations that could create many loose objects. "
+"Housekeeping is required if there are too many loose objects or too many "
+"packs in the repository."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:119
+#: en/git-gc.txt:58
 msgid ""
-"This feature is semi-deprecated. For scripting purpose, "
-"linkgit:git-status[1] `--porcelain` and linkgit:git-diff-files[1] "
-"`--name-status` are almost always superior alternatives, and users should "
-"look at linkgit:git-status[1] `--short` or linkgit:git-diff[1] "
-"`--name-status` for more user-friendly alternatives."
+"If the number of loose objects exceeds the value of the `gc.auto` "
+"configuration variable, then all loose objects are combined into a single "
+"pack using `git repack -d -l`.  Setting the value of `gc.auto` to 0 disables "
+"automatic packing of loose objects."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:122
+#: en/git-gc.txt:70
 msgid ""
-"This option identifies the file status with the following tags (followed by "
-"a space) at the start of each line:"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-ls-files.txt:123
-#, no-wrap
-msgid "H"
+"If the number of packs exceeds the value of `gc.autoPackLimit`, then "
+"existing packs (except those marked with a `.keep` file or over `gc."
+"bigPackThreshold` limit)  are consolidated into a single pack by using the `-"
+"A` option of 'git repack'.  If the amount of memory is estimated not enough "
+"for `git repack` to run smoothly and `gc.bigPackThreshold` is not set, the "
+"largest pack will also be excluded (this is the equivalent of running `git "
+"gc` with `--keep-base-pack`).  Setting `gc.autoPackLimit` to 0 disables "
+"automatic consolidation of packs."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:124
-msgid "cached"
+#: en/git-gc.txt:74
+msgid ""
+"If houskeeping is required due to many loose objects or packs, all other "
+"housekeeping tasks (e.g. rerere, working trees, reflog...) will be performed "
+"as well."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-files.txt:124
+#: en/git-gc.txt:76
 #, no-wrap
-msgid "S"
+msgid "--prune=<date>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:125
-msgid "skip-worktree"
+#: en/git-gc.txt:83
+msgid ""
+"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 and increases the risk of corruption if another "
+"process is writing to the repository concurrently; see \"NOTES\" below. --"
+"prune is on by default."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-files.txt:125
+#: en/git-gc.txt:84 en/git-pack-refs.txt:57
 #, no-wrap
-msgid "M"
+msgid "--no-prune"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:126
-msgid "unmerged"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-ls-files.txt:126
-#, no-wrap
-msgid "R"
+#: en/git-gc.txt:86
+msgid "Do not prune any loose objects."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:127
-msgid "removed/deleted"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-ls-files.txt:127
-#, no-wrap
-msgid "C"
+#: en/git-gc.txt:89
+msgid "Suppress all progress reports."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:128
-msgid "modified/changed"
+#: en/git-gc.txt:93
+msgid ""
+"Force `git gc` to run even if there may be another `git gc` instance running "
+"on this repository."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-files.txt:128
+#: en/git-gc.txt:94
 #, no-wrap
-msgid "K"
+msgid "--keep-largest-pack"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:129
-msgid "to be killed"
+#: en/git-gc.txt:98
+msgid ""
+"All packs except the largest pack and those marked with a `.keep` files are "
+"consolidated into a single pack. When this option is used, `gc."
+"bigPackThreshold` is ignored."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-ls-files.txt:129
-#, no-wrap
-msgid "?"
+#. type: Plain text
+#: en/git-gc.txt:107
+msgid ""
+"The optional configuration variable `gc.reflogExpire` can be set to indicate "
+"how long historical entries within each branch's reflog should remain "
+"available in this repository.  The setting is expressed as a length of time, "
+"for example '90 days' or '3 months'.  It defaults to '90 days'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:135
+#: en/git-gc.txt:116
 msgid ""
-"Similar to `-t`, but use lowercase letters for files that are marked as "
-"'assume unchanged' (see linkgit:git-update-index[1])."
+"The optional configuration variable `gc.reflogExpireUnreachable` can be set "
+"to indicate how long historical reflog entries which are not part of the "
+"current branch should remain available in this repository.  These types of "
+"entries are generally created as a result of using `git commit --amend` or "
+"`git rebase` and are the commits prior to the amend or rebase occurring.  "
+"Since these changes are not part of the current project most users will want "
+"to expire them sooner.  This option defaults to '30 days'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:145
+#: en/git-gc.txt:120
 msgid ""
-"Recursively calls ls-files on each submodule in the repository.  Currently "
-"there is only support for the --cached mode."
+"The above two configuration variables can be given to a pattern.  For "
+"example, this sets non-default expiry values only to remote-tracking "
+"branches:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-ls-files.txt:146 en/git-ls-tree.txt:63 en/git-show-ref.txt:65 en/diff-options.txt:324
+#. type: delimited block -
+#: en/git-gc.txt:125
 #, no-wrap
-msgid "--abbrev[=<n>]"
+msgid ""
+"[gc \"refs/remotes/*\"]\n"
+"\treflogExpire = never\n"
+"\treflogExpireUnreachable = 3 days\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:150 en/git-ls-tree.txt:67
+#: en/git-gc.txt:130
 msgid ""
-"Instead of showing the full 40-byte hexadecimal object lines, show only a "
-"partial prefix.  Non default number of digits can be specified with "
-"--abbrev=<n>."
+"The optional configuration variable `gc.rerereResolved` indicates how long "
+"records of conflicted merge you resolved earlier are kept.  This defaults to "
+"60 days."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:156
+#: en/git-gc.txt:134
 msgid ""
-"After each line that describes a file, add more data about its cache entry.  "
-"This is intended to show as much information as possible for manual "
-"inspection; the exact format may change at any time."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-ls-files.txt:157
-#, no-wrap
-msgid "--eol"
+"The optional configuration variable `gc.rerereUnresolved` indicates how long "
+"records of conflicted merge you have not resolved are kept.  This defaults "
+"to 15 days."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:162
+#: en/git-gc.txt:139
 msgid ""
-"Show <eolinfo> and <eolattr> of files.  <eolinfo> is the file content "
-"identification used by Git when the \"text\" attribute is \"auto\" (or not "
-"set and core.autocrlf is not false).  <eolinfo> is either \"-text\", "
-"\"none\", \"lf\", \"crlf\", \"mixed\" or \"\"."
+"The optional configuration variable `gc.packRefs` determines if 'git gc' "
+"runs 'git pack-refs'. This can be set to \"notbare\" to enable it within all "
+"non-bare repos or it can be set to a boolean value.  This defaults to true."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:165
+#: en/git-gc.txt:143
 msgid ""
-"\"\" means the file is not a regular file, it is not in the index or not "
-"accessible in the working tree."
+"The optional configuration variable `gc.writeCommitGraph` determines if 'git "
+"gc' should run 'git commit-graph write'. This can be set to a boolean value. "
+"This defaults to false."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:169
+#: en/git-gc.txt:150
 msgid ""
-"<eolattr> is the attribute that is used when checking out or committing, it "
-"is either \"\", \"-text\", \"text\", \"text=auto\", \"text eol=lf\", \"text "
-"eol=crlf\".  Since Git 2.10 \"text=auto eol=lf\" and \"text=auto eol=crlf\" "
-"are supported."
+"The optional configuration variable `gc.aggressiveWindow` controls how much "
+"time is spent optimizing the delta compression of the objects in the "
+"repository when the --aggressive option is specified.  The larger the value, "
+"the more time is spent optimizing the delta compression.  See the "
+"documentation for the --window option in linkgit:git-repack[1] for more "
+"details.  This defaults to 250."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:173
+#: en/git-gc.txt:153
 msgid ""
-"Both the <eolinfo> in the index (\"i/<eolinfo>\")  and in the working tree "
-"(\"w/<eolinfo>\") are shown for regular files, followed by the "
-"(\"attr/<eolattr>\")."
+"Similarly, the optional configuration variable `gc.aggressiveDepth` controls "
+"--depth option in linkgit:git-repack[1]. This defaults to 50."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:180
+#: en/git-gc.txt:157
 msgid ""
-"Files to show. If no files are given all files which match the other "
-"specified criteria are shown."
-msgstr ""
-
-#. type: Title -
-#: en/git-ls-files.txt:182
-#, no-wrap
-msgid "Output"
+"The optional configuration variable `gc.pruneExpire` controls how old the "
+"unreferenced loose objects have to be before they are pruned.  The default "
+"is \"2 weeks ago\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:185
+#: en/git-gc.txt:161
 msgid ""
-"'git ls-files' just outputs the filenames unless `--stage` is specified in "
-"which case it outputs:"
+"Optional configuration variable `gc.worktreePruneExpire` controls how old a "
+"stale working tree should be before `git worktree prune` deletes it. Default "
+"is \"3 months ago\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:187
-#, no-wrap
-msgid "        [<tag> ]<mode> <object> <stage> <file>\n"
+#: en/git-gc.txt:176
+msgid ""
+"'git gc' tries very hard not to delete objects that are referenced anywhere "
+"in your repository. In particular, it will keep not only objects referenced "
+"by your current set of branches and tags, but also objects referenced by the "
+"index, remote-tracking branches, refs saved by 'git filter-branch' in refs/"
+"original/, or reflogs (which may reference commits in branches that were "
+"later amended or rewound).  If you are expecting some objects to be deleted "
+"and they aren't, check all of those locations and decide whether it makes "
+"sense in your case to remove those references."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:190
-#, no-wrap
+#: en/git-gc.txt:183
 msgid ""
-"'git ls-files --eol' will show\n"
-"\ti/<eolinfo><SPACES>w/<eolinfo><SPACES>attr/<eolattr><SPACE*><TAB><file>\n"
+"On the other hand, when 'git gc' runs concurrently with another process, "
+"there is a risk of it deleting an object that the other process is using but "
+"hasn't created a reference to. This may just cause the other process to fail "
+"or may corrupt the repository if the other process later adds a reference to "
+"the deleted object. Git has two features that significantly mitigate this "
+"problem:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:193
+#: en/git-gc.txt:186
 msgid ""
-"'git ls-files --unmerged' and 'git ls-files --stage' can be used to examine "
-"detailed information on unmerged paths."
+"Any object with modification time newer than the `--prune` date is kept, "
+"along with everything reachable from it."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:199
+#: en/git-gc.txt:190
 msgid ""
-"For an unmerged path, instead of recording a single mode/SHA-1 pair, the "
-"index records up to three such pairs; one from tree O in stage 1, A in stage "
-"2, and B in stage 3.  This information can be used by the user (or the "
-"porcelain) to see what should eventually be recorded at the path. (see "
-"linkgit:git-read-tree[1] for more information on state)"
+"Most operations that add an object to the database update the modification "
+"time of the object if it is already present so that #1 applies."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:204 en/git-ls-tree.txt:101 en/diff-format.txt:85
+#: en/git-gc.txt:195
 msgid ""
-"Without the `-z` option, pathnames with \"unusual\" characters are quoted as "
-"explained for the configuration variable `core.quotePath` (see "
-"linkgit:git-config[1]).  Using `-z` the filename is output verbatim and the "
-"line is terminated by a NUL byte."
-msgstr ""
-
-#. type: Title -
-#: en/git-ls-files.txt:207
-#, no-wrap
-msgid "Exclude Patterns"
+"However, these features fall short of a complete solution, so users who run "
+"commands concurrently have to live with some risk of corruption (which seems "
+"to be low in practice) unless they turn off automatic garbage collection "
+"with 'git config gc.auto 0'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:213
+#: en/git-gc.txt:201
 msgid ""
-"'git ls-files' can use a list of \"exclude patterns\" when traversing the "
-"directory tree and finding files to show when the flags --others or "
-"--ignored are specified.  linkgit:gitignore[5] specifies the format of "
-"exclude patterns."
+"The 'git gc --auto' command will run the 'pre-auto-gc' hook.  See linkgit:"
+"githooks[5] for more information."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:215
-msgid "These exclude patterns come from these places, in order:"
+#: en/git-gc.txt:209
+msgid ""
+"linkgit:git-prune[1] linkgit:git-reflog[1] linkgit:git-repack[1] linkgit:git-"
+"rerere[1]"
 msgstr ""
 
-#. type: Plain text
-#: en/git-ls-files.txt:219
-msgid ""
-"The command-line flag --exclude=<pattern> specifies a single pattern.  "
-"Patterns are ordered in the same order they appear in the command line."
+#. type: Title =
+#: en/git-get-tar-commit-id.txt:2
+#, no-wrap
+msgid "git-get-tar-commit-id(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:223
+#: en/git-get-tar-commit-id.txt:7
 msgid ""
-"The command-line flag --exclude-from=<file> specifies a file containing a "
-"list of patterns.  Patterns are ordered in the same order they appear in the "
-"file."
+"git-get-tar-commit-id - Extract commit ID from an archive created using git-"
+"archive"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:229
-msgid ""
-"The command-line flag --exclude-per-directory=<name> specifies a name of the "
-"file in each directory 'git ls-files' examines, normally `.gitignore`.  "
-"Files in deeper directories take precedence.  Patterns are ordered in the "
-"same order they appear in the files."
+#: en/git-get-tar-commit-id.txt:13
+#, no-wrap
+msgid "'git get-tar-commit-id'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:235
+#: en/git-get-tar-commit-id.txt:22
 msgid ""
-"A pattern specified on the command line with --exclude or read from the file "
-"specified with --exclude-from is relative to the top of the directory tree.  "
-"A pattern read from a file specified by --exclude-per-directory is relative "
-"to the directory that the pattern file appears in."
+"Read a tar archive created by 'git archive' from the standard input and "
+"extract the commit ID stored in it.  It reads only the first 1024 bytes of "
+"input, thus its runtime is not influenced by the size of the tar archive "
+"very much."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-files.txt:239
-msgid "linkgit:git-read-tree[1], linkgit:gitignore[5]"
+#: en/git-get-tar-commit-id.txt:27
+msgid ""
+"If no commit ID is found, 'git get-tar-commit-id' quietly exists with a "
+"return code of 1.  This can happen if the archive had not been created using "
+"'git archive' or if the first parameter of 'git archive' had been a tree ID "
+"instead of a commit ID or tag."
 msgstr ""
 
 #. type: Title =
-#: en/git-ls-remote.txt:2
+#: en/git-grep.txt:2
 #, no-wrap
-msgid "git-ls-remote(1)"
+msgid "git-grep(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-remote.txt:7
-msgid "git-ls-remote - List references in a remote repository"
+#: en/git-grep.txt:7
+msgid "git-grep - Print lines matching a pattern"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-remote.txt:15
+#: en/git-grep.txt:32
 #, no-wrap
 msgid ""
-"'git ls-remote' [--heads] [--tags] [--refs] [--upload-pack=<exec>]\n"
-"\t      [-q | --quiet] [--exit-code] [--get-url]\n"
-"\t      [--symref] [<repository> [<refs>...]]\n"
+"'git grep' [-a | --text] [-I] [--textconv] [-i | --ignore-case] [-w | --word-regexp]\n"
+"\t   [-v | --invert-match] [-h|-H] [--full-name]\n"
+"\t   [-E | --extended-regexp] [-G | --basic-regexp]\n"
+"\t   [-P | --perl-regexp]\n"
+"\t   [-F | --fixed-strings] [-n | --line-number] [--column]\n"
+"\t   [-l | --files-with-matches] [-L | --files-without-match]\n"
+"\t   [(-O | --open-files-in-pager) [<pager>]]\n"
+"\t   [-z | --null]\n"
+"\t   [ -o | --only-matching ] [-c | --count] [--all-match] [-q | --quiet]\n"
+"\t   [--max-depth <depth>] [--[no-]recursive]\n"
+"\t   [--color[=<when>] | --no-color]\n"
+"\t   [--break] [--heading] [-p | --show-function]\n"
+"\t   [-A <post-context>] [-B <pre-context>] [-C <context>]\n"
+"\t   [-W | --function-context]\n"
+"\t   [--threads <num>]\n"
+"\t   [-f <file>] [-e] <pattern>\n"
+"\t   [--and|--or|--not|(|)|-e <pattern>...]\n"
+"\t   [--recurse-submodules] [--parent-basename <basename>]\n"
+"\t   [ [--[no-]exclude-standard] [--cached | --no-index | --untracked] | <tree>...]\n"
+"\t   [--] [<pathspec>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-remote.txt:20
+#: en/git-grep.txt:39
 msgid ""
-"Displays references available in a remote repository along with the "
-"associated commit IDs."
+"Look for specified patterns in the tracked files in the work tree, blobs "
+"registered in the index file, or blobs in given tree objects.  Patterns are "
+"lists of one or more search expressions separated by newline characters.  An "
+"empty string as search expression matches all lines."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-remote.txt:25 en/git-show-ref.txt:41
+#: en/git-grep.txt:44
 #, no-wrap
-msgid "--heads"
+msgid "grep.lineNumber"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-remote.txt:32
-msgid ""
-"Limit to only refs/heads and refs/tags, respectively.  These options are "
-"_not_ mutually exclusive; when given both, references stored in refs/heads "
-"and refs/tags are displayed."
+#: en/git-grep.txt:46
+msgid "If set to true, enable `-n` option by default."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-remote.txt:33
+#: en/git-grep.txt:47
 #, no-wrap
-msgid "--refs"
+msgid "grep.column"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-remote.txt:35
-msgid "Do not show peeled tags or pseudorefs like HEAD\tin the output."
-msgstr ""
-
-#. type: Plain text
-#: en/git-ls-remote.txt:39
-msgid "Do not print remote URL to stderr."
+#: en/git-grep.txt:49
+msgid "If set to true, enable the `--column` option by default."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-remote.txt:40
+#: en/git-grep.txt:50
 #, no-wrap
-msgid "--upload-pack=<exec>"
+msgid "grep.patternType"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-remote.txt:45
+#: en/git-grep.txt:55
 msgid ""
-"Specify the full path of 'git-upload-pack' on the remote host. This allows "
-"listing references from repositories accessed via SSH and where the SSH "
-"daemon does not use the PATH configured by the user."
+"Set the default matching behavior. Using a value of 'basic', 'extended', "
+"'fixed', or 'perl' will enable the `--basic-regexp`, `--extended-regexp`, `--"
+"fixed-strings`, or `--perl-regexp` option accordingly, while the value "
+"'default' will return to the default matching behavior."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-remote.txt:46 en/diff-options.txt:552
+#: en/git-grep.txt:56
 #, no-wrap
-msgid "--exit-code"
+msgid "grep.extendedRegexp"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-remote.txt:51
+#: en/git-grep.txt:60
 msgid ""
-"Exit with status \"2\" when no matching refs are found in the remote "
-"repository. Usually the command exits with status \"0\" to indicate it "
-"successfully talked with the remote repository, whether it found any "
-"matching refs."
+"If set to true, enable `--extended-regexp` option by default. This option is "
+"ignored when the `grep.patternType` option is set to a value other than "
+"'default'."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-remote.txt:52
+#: en/git-grep.txt:61
 #, no-wrap
-msgid "--get-url"
+msgid "grep.threads"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-remote.txt:56
+#: en/git-grep.txt:64
 msgid ""
-"Expand the URL of the given remote repository taking into account any "
-"\"url.<base>.insteadOf\" config setting (See linkgit:git-config[1]) and exit "
-"without talking to the remote."
+"Number of grep worker threads to use.  If unset (or set to 0), 8 threads are "
+"used by default (for now)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-remote.txt:57
+#: en/git-grep.txt:65
 #, no-wrap
-msgid "--symref"
+msgid "grep.fullName"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-remote.txt:62
-msgid ""
-"In addition to the object pointed by it, show the underlying ref pointed by "
-"it when showing a symbolic ref.  Currently, upload-pack only shows the "
-"symref HEAD, so it will be the only one shown by ls-remote."
+#: en/git-grep.txt:67
+msgid "If set to true, enable `--full-name` option by default."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-grep.txt:68
+#, no-wrap
+msgid "grep.fallbackToNoIndex"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-remote.txt:67
+#: en/git-grep.txt:71
 msgid ""
-"The \"remote\" repository to query.  This parameter can be either a URL or "
-"the name of a remote (see the GIT URLS and REMOTES sections of "
-"linkgit:git-fetch[1])."
+"If set to true, fall back to git grep --no-index if git grep is executed "
+"outside of a git repository.  Defaults to false."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-remote.txt:73
+#: en/git-grep.txt:78
 msgid ""
-"When unspecified, all references, after filtering done with --heads and "
-"--tags, are shown.  When <refs>... are specified, only references matching "
-"the given patterns are displayed."
+"Instead of searching tracked files in the working tree, search blobs "
+"registered in the index file."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-remote.txt:92
-#, no-wrap
-msgid ""
-"\t$ git ls-remote --tags ./.\n"
-"\td6602ec5194c87b0fc87103ca4d67251c76f233a\trefs/tags/v0.99\n"
-"\tf25a265a342aed6041ab0cc484224d9ca54b6f41\trefs/tags/v0.99.1\n"
-"\t7ceca275d047c90c0c7d5afb13ab97efdf51bd6e\trefs/tags/v0.99.3\n"
-"\tc5db5456ae3b0873fc659c19fafdde22313cc441\trefs/tags/v0.99.2\n"
-"\t0918385dbd9656cab0d1d81ba7453d49bbc16250\trefs/tags/junio-gpg-pub\n"
-"\t$ git ls-remote http://www.kernel.org/pub/scm/git/git.git master pu rc\n"
-"\t5fe978a5381f1fbad26a80e682ddd2a401966740\trefs/heads/master\n"
-"\tc781a84b5204fb294c9ccc79f8b3baceeb32c061\trefs/heads/pu\n"
-"\t$ git remote add korg http://www.kernel.org/pub/scm/git/git.git\n"
-"\t$ git ls-remote --tags korg v\\*\n"
-"\td6602ec5194c87b0fc87103ca4d67251c76f233a\trefs/tags/v0.99\n"
-"\tf25a265a342aed6041ab0cc484224d9ca54b6f41\trefs/tags/v0.99.1\n"
-"\tc5db5456ae3b0873fc659c19fafdde22313cc441\trefs/tags/v0.99.2\n"
-"\t7ceca275d047c90c0c7d5afb13ab97efdf51bd6e\trefs/tags/v0.99.3\n"
+#: en/git-grep.txt:81
+msgid "Search files in the current directory that is not managed by Git."
 msgstr ""
 
-#. type: Title =
-#: en/git-ls-tree.txt:2
+#. type: Labeled list
+#: en/git-grep.txt:82
 #, no-wrap
-msgid "git-ls-tree(1)"
+msgid "--untracked"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-tree.txt:7
-msgid "git-ls-tree - List the contents of a tree object"
+#: en/git-grep.txt:85
+msgid ""
+"In addition to searching in the tracked files in the working tree, search "
+"also in untracked files."
 msgstr ""
 
-#. type: Plain text
-#: en/git-ls-tree.txt:15
+#. type: Labeled list
+#: en/git-grep.txt:86
 #, no-wrap
-msgid ""
-"'git ls-tree' [-d] [-r] [-t] [-l] [-z]\n"
-"\t    [--name-only] [--name-status] [--full-name] [--full-tree] "
-"[--abbrev[=<n>]]\n"
-"\t    <tree-ish> [<path>...]\n"
+msgid "--no-exclude-standard"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-tree.txt:20
+#: en/git-grep.txt:89
 msgid ""
-"Lists the contents of a given tree object, like what \"/bin/ls -a\" does in "
-"the current working directory.  Note that:"
+"Also search in ignored files by not honoring the `.gitignore` mechanism. "
+"Only useful with `--untracked`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-ls-tree.txt:25
-msgid ""
-"the behaviour is slightly different from that of \"/bin/ls\" in that the "
-"'<path>' denotes just a list of patterns to match, e.g. so specifying "
-"directory name (without `-r`) will behave differently, and order of the "
-"arguments does not matter."
+#. type: Labeled list
+#: en/git-grep.txt:90 en/git-ls-files.txt:98
+#, no-wrap
+msgid "--exclude-standard"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-tree.txt:35
+#: en/git-grep.txt:94
 msgid ""
-"the behaviour is similar to that of \"/bin/ls\" in that the '<path>' is "
-"taken as relative to the current working directory.  E.g. when you are in a "
-"directory 'sub' that has a directory 'dir', you can run 'git ls-tree -r HEAD "
-"dir' to list the contents of the tree (that is 'sub/dir' in `HEAD`).  You "
-"don't want to give a tree that is not at the root level (e.g. `git ls-tree "
-"-r HEAD:sub dir`) in this case, as that would result in asking for "
-"'sub/sub/dir' in the `HEAD` commit.  However, the current working directory "
-"can be ignored by passing --full-tree option."
+"Do not pay attention to ignored files specified via the\t`.gitignore` "
+"mechanism.  Only useful when searching files in the current directory with "
+"`--no-index`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-ls-tree.txt:40
-msgid "Id of a tree-ish."
+#. type: Labeled list
+#: en/git-grep.txt:95 en/git-ls-files.txt:148
+#, no-wrap
+msgid "--recurse-submodules"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-tree.txt:43
-msgid "Show only the named tree entry itself, not its children."
+#: en/git-grep.txt:100
+msgid ""
+"Recursively search in each submodule that has been initialized and checked "
+"out in the repository.  When used in combination with the <tree> option the "
+"prefix of all submodule output will be the name of the parent project's "
+"<tree> object."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-tree.txt:46
-msgid "Recurse into sub-trees."
+#: en/git-grep.txt:104
+msgid "Process binary files as if they were text."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-tree.txt:50
-msgid ""
-"Show tree entries even when going to recurse them. Has no effect if `-r` was "
-"not passed. `-d` implies `-t`."
+#: en/git-grep.txt:107
+msgid "Honor textconv filter settings."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-tree.txt:54
-msgid "Show object size of blob (file) entries."
+#: en/git-grep.txt:111
+msgid "Do not honor textconv filter settings.  This is the default."
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-tree.txt:58
-msgid ""
-"\\0 line termination on output and do not quote filenames.  See OUTPUT "
-"FORMAT below for more information."
+#: en/git-grep.txt:116
+msgid "Ignore case differences between the patterns and the files."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-ls-tree.txt:60 en/diff-options.txt:202
+#: en/git-grep.txt:117
 #, no-wrap
-msgid "--name-status"
-msgstr ""
-
-#. type: Plain text
-#: en/git-ls-tree.txt:62
-msgid "List only filenames (instead of the \"long\" output), one per line."
+msgid "-I"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-tree.txt:71
-msgid ""
-"Instead of showing the path names relative to the current working directory, "
-"show the full path names."
+#: en/git-grep.txt:119
+msgid "Don't match the pattern in binary files."
 msgstr ""
 
-#. type: Plain text
-#: en/git-ls-tree.txt:75
-msgid ""
-"Do not limit the listing to the current working directory.  Implies "
-"--full-name."
+#. type: Labeled list
+#: en/git-grep.txt:120
+#, no-wrap
+msgid "--max-depth <depth>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-tree.txt:80
-#, no-wrap
+#: en/git-grep.txt:126
 msgid ""
-"[<path>...]::\n"
-"\tWhen paths are given, show them (note that this isn't really raw\n"
-"\tpathnames, but rather a list of patterns to match).  Otherwise\n"
-"\timplicitly uses the root level of the tree as the sole path argument.\n"
+"For each <pathspec> given on command line, descend at most <depth> levels of "
+"directories. A value of -1 means no limit.  This option is ignored if "
+"<pathspec> contains active wildcards.  In other words if \"a*\" matches a "
+"directory named \"a*\", \"*\" is matched literally so --max-depth is still "
+"effective."
 msgstr ""
 
-#. type: Title -
-#: en/git-ls-tree.txt:83
+#. type: Labeled list
+#: en/git-grep.txt:128 en/git-submodule.txt:387
 #, no-wrap
-msgid "Output Format"
+msgid "--recursive"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-tree.txt:85
-#, no-wrap
-msgid "        <mode> SP <type> SP <object> TAB <file>\n"
+#: en/git-grep.txt:130
+msgid "Same as `--max-depth=-1`; this is the default."
 msgstr ""
 
-#. type: Plain text
-#: en/git-ls-tree.txt:88
-msgid ""
-"This output format is compatible with what `--index-info --stdin` of 'git "
-"update-index' expects."
+#. type: Labeled list
+#: en/git-grep.txt:131
+#, no-wrap
+msgid "--no-recursive"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-tree.txt:90
-msgid "When the `-l` option is used, format changes to"
+#: en/git-grep.txt:133
+msgid "Same as `--max-depth=0`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-ls-tree.txt:92
+#. type: Labeled list
+#: en/git-grep.txt:135
 #, no-wrap
-msgid "        <mode> SP <type> SP <object> SP <object size> TAB <file>\n"
+msgid "--word-regexp"
 msgstr ""
 
 #. type: Plain text
-#: en/git-ls-tree.txt:96
+#: en/git-grep.txt:139
 msgid ""
-"Object size identified by <object> is given in bytes, and right-justified "
-"with minimum width of 7 characters.  Object size is given only for blobs "
-"(file) entries; for other entries `-` character is used in place of size."
+"Match the pattern only at word boundary (either begin at the beginning of a "
+"line, or preceded by a non-word character; end at the end of a line or "
+"followed by a non-word character)."
 msgstr ""
 
-#. type: Title =
-#: en/git-mailinfo.txt:2
+#. type: Labeled list
+#: en/git-grep.txt:141
 #, no-wrap
-msgid "git-mailinfo(1)"
+msgid "--invert-match"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mailinfo.txt:7
-msgid "git-mailinfo - Extracts patch and authorship from a single e-mail message"
+#: en/git-grep.txt:143
+msgid "Select non-matching lines."
 msgstr ""
 
 #. type: Plain text
-#: en/git-mailinfo.txt:13
-#, no-wrap
+#: en/git-grep.txt:151
 msgid ""
-"'git mailinfo' [-k|-b] [-u | --encoding=<encoding> | -n] [--[no-]scissors] "
-"<msg> <patch>\n"
+"By default, the command shows the filename for each match.  `-h` option is "
+"used to suppress this output.  `-H` is there for completeness and does not "
+"do anything except it overrides `-h` given earlier on the command line."
 msgstr ""
 
-#. type: Plain text
-#: en/git-mailinfo.txt:23
-msgid ""
-"Reads a single e-mail message from the standard input, and writes the commit "
-"log message in <msg> file, and the patches in <patch> file.  The author "
-"name, e-mail and e-mail subject are written out to the standard output to be "
-"used by 'git am' to create a commit.  It is usually not necessary to use "
-"this command directly.  See linkgit:git-am[1] instead."
+#. type: Labeled list
+#: en/git-grep.txt:152 en/git-ls-files.txt:142 en/git-ls-tree.txt:68
+#, no-wrap
+msgid "--full-name"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mailinfo.txt:32
+#: en/git-grep.txt:157 en/git-ls-files.txt:147
 msgid ""
-"Usually the program removes email cruft from the Subject: header line to "
-"extract the title line for the commit log message.  This option prevents "
-"this munging, and is most useful when used to read back 'git format-patch "
-"-k' output."
+"When run from a subdirectory, the command usually outputs paths relative to "
+"the current directory.  This option forces paths to be output relative to "
+"the project top directory."
 msgstr ""
 
-#. type: Plain text
-#: en/git-mailinfo.txt:34
-msgid "Specifically, the following are removed until none of them remain:"
+#. type: Labeled list
+#: en/git-grep.txt:158 en/rev-list-options.txt:82
+#, no-wrap
+msgid "-E"
 msgstr ""
 
-#. type: Plain text
-#: en/git-mailinfo.txt:37
-msgid "Leading and trailing whitespace."
+#. type: Labeled list
+#: en/git-grep.txt:159 en/rev-list-options.txt:83
+#, no-wrap
+msgid "--extended-regexp"
 msgstr ""
 
-#. type: Plain text
-#: en/git-mailinfo.txt:39
-msgid "Leading `Re:`, `re:`, and `:`."
+#. type: Labeled list
+#: en/git-grep.txt:160
+#, no-wrap
+msgid "-G"
 msgstr ""
 
-#. type: Plain text
-#: en/git-mailinfo.txt:41
-msgid "Leading bracketed strings (between `[` and `]`, usually"
+#. type: Labeled list
+#: en/git-grep.txt:161 en/rev-list-options.txt:78
+#, no-wrap
+msgid "--basic-regexp"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mailinfo.txt:42
-msgid "`[PATCH]`)."
+#: en/git-grep.txt:164
+msgid ""
+"Use POSIX extended/basic regexp for patterns.  Default is to use basic "
+"regexp."
 msgstr ""
 
-#. type: Plain text
-#: en/git-mailinfo.txt:46
-msgid ""
-"Finally, runs of whitespace are normalized to a single ASCII space "
-"character."
+#. type: Labeled list
+#: en/git-grep.txt:166 en/rev-list-options.txt:93
+#, no-wrap
+msgid "--perl-regexp"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mailinfo.txt:51
-msgid ""
-"When -k is not in effect, all leading strings bracketed with '[' and ']' "
-"pairs are stripped.  This option limits the stripping to only the pairs "
-"whose bracketed string contains the word \"PATCH\"."
+#: en/git-grep.txt:168
+msgid "Use Perl-compatible regular expressions for patterns."
 msgstr ""
 
 #. type: Plain text
-#: en/git-mailinfo.txt:58
+#: en/git-grep.txt:172 en/rev-list-options.txt:100
 msgid ""
-"The commit log message, author name and author email are taken from the "
-"e-mail, and after minimally decoding MIME transfer encoding, re-coded in the "
-"charset specified by i18n.commitencoding (defaulting to UTF-8) by "
-"transliterating them.  This used to be optional but now it is the default."
+"Support for these types of regular expressions is an optional compile-time "
+"dependency. If Git wasn't compiled with support for them providing this "
+"option will cause it to die."
 msgstr ""
 
-#. type: Plain text
-#: en/git-mailinfo.txt:61
-msgid ""
-"Note that the patch is always used as-is without charset conversion, even "
-"with this flag."
+#. type: Labeled list
+#: en/git-grep.txt:173 en/git-repack.txt:74 en/rev-list-options.txt:87
+#, no-wrap
+msgid "-F"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-mailinfo.txt:62 en/blame-options.txt:52 en/pretty-options.txt:35
+#: en/git-grep.txt:174 en/rev-list-options.txt:88
 #, no-wrap
-msgid "--encoding=<encoding>"
+msgid "--fixed-strings"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mailinfo.txt:65
-msgid ""
-"Similar to -u.  But when re-coding, the charset specified here is used "
-"instead of the one specified by i18n.commitencoding or UTF-8."
+#: en/git-grep.txt:177
+msgid "Use fixed strings for patterns (don't interpret pattern as a regex)."
 msgstr ""
 
-#. type: Plain text
-#: en/git-mailinfo.txt:68
-msgid "Disable all charset re-coding of the metadata."
+#. type: Labeled list
+#: en/git-grep.txt:179
+#, no-wrap
+msgid "--line-number"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mailinfo.txt:73
-msgid ""
-"Copy the Message-ID header at the end of the commit message.  This is useful "
-"in order to associate commits with mailing list discussions."
+#: en/git-grep.txt:181
+msgid "Prefix the line number to matching lines."
 msgstr ""
 
-#. type: Plain text
-#: en/git-mailinfo.txt:82
-msgid ""
-"Remove everything in body before a scissors line.  A line that mainly "
-"consists of scissors (either \">8\" or \"8<\") and perforation (dash \"-\") "
-"marks is called a scissors line, and is used to request the reader to cut "
-"the message at that line.  If such a line appears in the body of the message "
-"before the patch, everything before it (including the scissors line itself) "
-"is ignored when this option is used."
+#. type: Labeled list
+#: en/git-grep.txt:182
+#, no-wrap
+msgid "--column"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mailinfo.txt:87
+#: en/git-grep.txt:185
 msgid ""
-"This is useful if you want to begin your message in a discussion thread with "
-"comments and suggestions on the message you are responding to, and to "
-"conclude it with a patch submission, separating the discussion and the "
-"beginning of the proposed commit log message with a scissors line."
+"Prefix the 1-indexed byte-offset of the first match from the start of the "
+"matching line."
 msgstr ""
 
-#. type: Plain text
-#: en/git-mailinfo.txt:89
-msgid ""
-"This can be enabled by default with the configuration option "
-"mailinfo.scissors."
+#. type: Labeled list
+#: en/git-grep.txt:187
+#, no-wrap
+msgid "--files-with-matches"
 msgstr ""
 
-#. type: Plain text
-#: en/git-mailinfo.txt:92
-msgid "Ignore scissors lines. Useful for overriding mailinfo.scissors settings."
+#. type: Labeled list
+#: en/git-grep.txt:189
+#, no-wrap
+msgid "-L"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-mailinfo.txt:93
+#: en/git-grep.txt:190
 #, no-wrap
-msgid "<msg>"
+msgid "--files-without-match"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mailinfo.txt:96
+#: en/git-grep.txt:195
 msgid ""
-"The commit log message extracted from e-mail, usually except the title line "
-"which comes from e-mail Subject."
+"Instead of showing every matched line, show only the names of files that "
+"contain (or do not contain) matches.  For better compatibility with 'git "
+"diff', `--name-only` is a synonym for `--files-with-matches`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-mailinfo.txt:97 en/git-patch-id.txt:59
+#: en/git-grep.txt:196
 #, no-wrap
-msgid "<patch>"
+msgid "-O[<pager>]"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-grep.txt:197
+#, no-wrap
+msgid "--open-files-in-pager[=<pager>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mailinfo.txt:99
-msgid "The patch extracted from e-mail."
+#: en/git-grep.txt:205
+msgid ""
+"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 "
+"`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])."
 msgstr ""
 
-#. type: Title =
-#: en/git-mailsplit.txt:2
+#. type: Plain text
+#: en/git-grep.txt:210
+msgid "Output \\0 instead of the character that normally follows a file name."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-grep.txt:212
 #, no-wrap
-msgid "git-mailsplit(1)"
+msgid "--only-matching"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mailsplit.txt:7
-msgid "git-mailsplit - Simple UNIX mbox splitter program"
+#: en/git-grep.txt:215
+msgid ""
+"Print only the matched (non-empty) parts of a matching line, with each such "
+"part on a separate output line."
 msgstr ""
 
-#. type: Plain text
-#: en/git-mailsplit.txt:13
+#. type: Labeled list
+#: en/git-grep.txt:217 en/rev-list-options.txt:932
 #, no-wrap
+msgid "--count"
+msgstr ""
+
+#. type: Plain text
+#: en/git-grep.txt:220
 msgid ""
-"'git mailsplit' [-b] [-f<nn>] [-d<prec>] [--keep-cr] [--mboxrd]\n"
-"\t\t-o<directory> [--] [(<mbox>|<Maildir>)...]\n"
+"Instead of showing every matched line, show the number of lines that match."
 msgstr ""
 
 #. type: Plain text
-#: en/git-mailsplit.txt:18
+#: en/git-grep.txt:224
 msgid ""
-"Splits a mbox file or a Maildir into a list of files: \"0001\" \"0002\" ..  "
-"in the specified directory so you can process them further from there."
+"Show colored matches.  The value must be always (the default), never, or "
+"auto."
 msgstr ""
 
 #. type: Plain text
-#: en/git-mailsplit.txt:21
+#: en/git-grep.txt:229
 msgid ""
-"Maildir splitting relies upon filenames being sorted to output patches in "
-"the correct order."
+"Turn off match highlighting, even when the configuration file gives the "
+"default to color output.  Same as `--color=never`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-mailsplit.txt:24
+#: en/git-grep.txt:230
 #, no-wrap
-msgid "<mbox>"
+msgid "--break"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mailsplit.txt:27
-msgid "Mbox file to split.  If not given, the mbox is read from the standard input."
+#: en/git-grep.txt:232
+msgid "Print an empty line between matches from different files."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-mailsplit.txt:28
+#: en/git-grep.txt:233
 #, no-wrap
-msgid "<Maildir>"
+msgid "--heading"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mailsplit.txt:31
+#: en/git-grep.txt:236
 msgid ""
-"Root of the Maildir to split. This directory should contain the cur, tmp and "
-"new subdirectories."
+"Show the filename above the matches in that file instead of at the start of "
+"each shown line."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-mailsplit.txt:32
+#: en/git-grep.txt:238
 #, no-wrap
-msgid "-o<directory>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-mailsplit.txt:34
-msgid "Directory in which to place the individual messages."
+msgid "--show-function"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mailsplit.txt:38
+#: en/git-grep.txt:244
 msgid ""
-"If any file doesn't begin with a From line, assume it is a single mail "
-"message instead of signaling error."
+"Show the preceding line that contains the function name of the match, unless "
+"the matching line is a function name itself.  The name is determined in the "
+"same way as 'git diff' works out patch hunk headers (see 'Defining a custom "
+"hunk-header' in linkgit:gitattributes[5])."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-mailsplit.txt:39
+#: en/git-grep.txt:245
 #, no-wrap
-msgid "-d<prec>"
+msgid "-<num>"
 msgstr ""
 
-#. type: Plain text
-#: en/git-mailsplit.txt:43
-msgid ""
-"Instead of the default 4 digits with leading zeros, different precision can "
-"be specified for the generated filenames."
+#. type: Labeled list
+#: en/git-grep.txt:246
+#, no-wrap
+msgid "-C <num>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-mailsplit.txt:44
+#: en/git-grep.txt:247
 #, no-wrap
-msgid "-f<nn>"
+msgid "--context <num>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mailsplit.txt:47
+#: en/git-grep.txt:250
 msgid ""
-"Skip the first <nn> numbers, for example if -f3 is specified, start the "
-"numbering with 0004."
+"Show <num> leading and trailing lines, and place a line containing `--` "
+"between contiguous groups of matches."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-mailsplit.txt:48
+#: en/git-grep.txt:251
 #, no-wrap
-msgid "--keep-cr"
-msgstr ""
-
-#. type: Plain text
-#: en/git-mailsplit.txt:50
-msgid "Do not remove `\\r` from lines ending with `\\r\\n`."
+msgid "-A <num>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-mailsplit.txt:51
+#: en/git-grep.txt:252
 #, no-wrap
-msgid "--mboxrd"
+msgid "--after-context <num>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mailsplit.txt:54
+#: en/git-grep.txt:255
 msgid ""
-"Input is of the \"mboxrd\" format and \"^>+From \" line escaping is "
-"reversed."
+"Show <num> trailing lines, and place a line containing `--` between "
+"contiguous groups of matches."
 msgstr ""
 
-#. type: Title =
-#: en/git-merge-base.txt:2
+#. type: Labeled list
+#: en/git-grep.txt:256
 #, no-wrap
-msgid "git-merge-base(1)"
+msgid "-B <num>"
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge-base.txt:7
-msgid "git-merge-base - Find as good common ancestors as possible for a merge"
+#. type: Labeled list
+#: en/git-grep.txt:257
+#, no-wrap
+msgid "--before-context <num>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:17
-#, no-wrap
+#: en/git-grep.txt:260
 msgid ""
-"'git merge-base' [-a|--all] <commit> <commit>...\n"
-"'git merge-base' [-a|--all] --octopus <commit>...\n"
-"'git merge-base' --is-ancestor <commit> <commit>\n"
-"'git merge-base' --independent <commit>...\n"
-"'git merge-base' --fork-point <ref> [<commit>]\n"
+"Show <num> leading lines, and place a line containing `--` between "
+"contiguous groups of matches."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:27
+#: en/git-grep.txt:267
 msgid ""
-"'git merge-base' finds best common ancestor(s) between two commits to use in "
-"a three-way merge.  One common ancestor is 'better' than another common "
-"ancestor if the latter is an ancestor of the former.  A common ancestor that "
-"does not have any better common ancestor is a 'best common ancestor', i.e. a "
-"'merge base'.  Note that there can be more than one merge base for a pair of "
-"commits."
+"Show the surrounding text from the previous line containing a function name "
+"up to the one before the next function name, effectively showing the whole "
+"function in which the match was found."
 msgstr ""
 
-#. type: Title -
-#: en/git-merge-base.txt:29
+#. type: Labeled list
+#: en/git-grep.txt:268
 #, no-wrap
-msgid "OPERATION MODES"
+msgid "--threads <num>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:33
+#: en/git-grep.txt:271
 msgid ""
-"As the most common special case, specifying only two commits on the command "
-"line means computing the merge base between the given two commits."
+"Number of grep worker threads to use.  See `grep.threads` in 'CONFIGURATION' "
+"for more information."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-grep.txt:272
+#, no-wrap
+msgid "-f <file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:38
-msgid ""
-"More generally, among the two commits to compute the merge base from, one is "
-"specified by the first commit argument on the command line; the other commit "
-"is a (possibly hypothetical) commit that is a merge across all the remaining "
-"commits on the command line."
+#: en/git-grep.txt:274
+msgid "Read patterns from <file>, one per line."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:42
+#: en/git-grep.txt:280
 msgid ""
-"As a consequence, the 'merge base' is not necessarily contained in each of "
-"the commit arguments if more than two commits are specified. This is "
-"different from linkgit:git-show-branch[1] when used with the `--merge-base` "
-"option."
+"The next parameter is the pattern. This option has to be used for patterns "
+"starting with `-` and should be used in scripts passing user input to grep.  "
+"Multiple patterns are combined by 'or'."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-merge-base.txt:43
+#: en/git-grep.txt:281
 #, no-wrap
-msgid "--octopus"
-msgstr ""
-
-#. type: Plain text
-#: en/git-merge-base.txt:47
-msgid ""
-"Compute the best common ancestors of all supplied commits, in preparation "
-"for an n-way merge.  This mimics the behavior of 'git show-branch "
-"--merge-base'."
+msgid "--and"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-merge-base.txt:48 en/git-show-branch.txt:90
+#: en/git-grep.txt:282
 #, no-wrap
-msgid "--independent"
+msgid "--or"
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge-base.txt:54
-msgid ""
-"Instead of printing merge bases, print a minimal subset of the supplied "
-"commits with the same ancestors.  In other words, among the commits given, "
-"list those which cannot be reached from any other.  This mimics the behavior "
-"of 'git show-branch --independent'."
+#. type: Labeled list
+#: en/git-grep.txt:283 en/git-rev-parse.txt:135 en/rev-list-options.txt:134
+#, no-wrap
+msgid "--not"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-merge-base.txt:55
+#: en/git-grep.txt:284
 #, no-wrap
-msgid "--is-ancestor"
+msgid "( ... )"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:59
+#: en/git-grep.txt:289
 msgid ""
-"Check if the first <commit> is an ancestor of the second <commit>, and exit "
-"with status 0 if true, or with status 1 if not.  Errors are signaled by a "
-"non-zero status that is not 1."
+"Specify how multiple patterns are combined using Boolean expressions.  `--"
+"or` is the default operator.  `--and` has higher precedence than `--or`.  `-"
+"e` has to be used for all patterns."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-merge-base.txt:60 en/git-rebase.txt:346
+#: en/git-grep.txt:290 en/rev-list-options.txt:65
 #, no-wrap
-msgid "--fork-point"
+msgid "--all-match"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:68
+#: en/git-grep.txt:294
 msgid ""
-"Find the point at which a branch (or any history that leads to <commit>) "
-"forked from another branch (or any reference)  <ref>. This does not just "
-"look for the common ancestor of the two commits, but also takes into account "
-"the reflog of <ref> to see if the history leading to <commit> forked from an "
-"earlier incarnation of the branch <ref> (see discussion on this mode below)."
-msgstr ""
-
-#. type: Plain text
-#: en/git-merge-base.txt:74
-msgid "Output all merge bases for the commits, instead of just one."
+"When giving multiple pattern expressions combined with `--or`, this flag is "
+"specified to limit the match to files that have lines to match all of them."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:80
+#: en/git-grep.txt:299
 msgid ""
-"Given two commits 'A' and 'B', `git merge-base A B` will output a commit "
-"which is reachable from both 'A' and 'B' through the parent relationship."
+"Do not output matched lines; instead, exit with status 0 when there is a "
+"match and with non-zero status when there isn't."
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge-base.txt:82
-msgid "For example, with this topology:"
+#. type: Labeled list
+#: en/git-grep.txt:300
+#, no-wrap
+msgid "<tree>..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:86
-#, no-wrap
+#: en/git-grep.txt:303
 msgid ""
-"\t         o---o---o---B\n"
-"\t        /\n"
-"\t---o---1---o---o---o---A\n"
+"Instead of searching tracked files in the working tree, search blobs in the "
+"given trees."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:88
-msgid "the merge base between 'A' and 'B' is '1'."
+#: en/git-grep.txt:307
+msgid ""
+"Signals the end of options; the rest of the parameters are <pathspec> "
+"limiters."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:92
+#: en/git-grep.txt:311
 msgid ""
-"Given three commits 'A', 'B' and 'C', `git merge-base A B C` will compute "
-"the merge base between 'A' and a hypothetical commit 'M', which is a merge "
-"between 'B' and 'C'.  For example, with this topology:"
+"If given, limit the search to paths matching at least one pattern.  Both "
+"leading paths match and glob(7) patterns are supported."
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge-base.txt:98
+#. type: Labeled list
+#: en/git-grep.txt:318
 #, no-wrap
-msgid ""
-"\t       o---o---o---o---C\n"
-"\t      /\n"
-"\t     /   o---o---o---B\n"
-"\t    /   /\n"
-"\t---2---1---o---o---o---A\n"
+msgid "`git grep 'time_t' -- '*.[ch]'`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:101
+#: en/git-grep.txt:321
 msgid ""
-"the result of `git merge-base A B C` is '1'.  This is because the equivalent "
-"topology with a merge commit 'M' between 'B' and 'C' is:"
+"Looks for `time_t` in all tracked .c and .h files in the working directory "
+"and its subdirectories."
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge-base.txt:108
+#. type: Labeled list
+#: en/git-grep.txt:322
 #, no-wrap
-msgid ""
-"\t       o---o---o---o---o\n"
-"\t      /                 \\\n"
-"\t     /   o---o---o---o---M\n"
-"\t    /   /\n"
-"\t---2---1---o---o---o---A\n"
+msgid "`git grep -e '#define' --and \\( -e MAX_PATH -e PATH_MAX \\)`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:112
+#: en/git-grep.txt:325
 msgid ""
-"and the result of `git merge-base A M` is '1'.  Commit '2' is also a common "
-"ancestor between 'A' and 'M', but '1' is a better common ancestor, because "
-"'2' is an ancestor of '1'.  Hence, '2' is not a merge base."
+"Looks for a line that has `#define` and either `MAX_PATH` or `PATH_MAX`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge-base.txt:115
-msgid ""
-"The result of `git merge-base --octopus A B C` is '2', because '2' is the "
-"best common ancestor of all commits."
+#. type: Labeled list
+#: en/git-grep.txt:326
+#, no-wrap
+msgid "`git grep --all-match -e NODE -e Unexpected`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:118
+#: en/git-grep.txt:329
 msgid ""
-"When the history involves criss-cross merges, there can be more than one "
-"'best' common ancestor for two commits.  For example, with this topology:"
+"Looks for a line that has `NODE` or `Unexpected` in files that have lines "
+"that match both."
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge-base.txt:124
+#. type: Labeled list
+#: en/git-grep.txt:330
 #, no-wrap
-msgid ""
-"\t---1---o---A\n"
-"\t    \\ /\n"
-"\t     X\n"
-"\t    / \\\n"
-"\t---2---o---o---B\n"
+msgid "`git grep solution -- :^Documentation`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:128
-msgid ""
-"both '1' and '2' are merge-bases of A and B.  Neither one is better than the "
-"other (both are 'best' merge bases).  When the `--all` option is not given, "
-"it is unspecified which best one is output."
+#: en/git-grep.txt:332
+msgid "Looks for `solution`, excluding files in `Documentation`."
+msgstr ""
+
+#. type: Title =
+#: en/git-gui.txt:2
+#, no-wrap
+msgid "git-gui(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:133
-msgid ""
-"A common idiom to check \"fast-forward-ness\" between two commits A and B is "
-"(or at least used to be) to compute the merge base between A and B, and "
-"check if it is the same as A, in which case, A is an ancestor of B.  You "
-"will see this idiom used often in older scripts."
+#: en/git-gui.txt:7
+msgid "git-gui - A portable graphical interface to Git"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:139
+#: en/git-gui.txt:12
 #, no-wrap
-msgid ""
-"\tA=$(git rev-parse --verify A)\n"
-"\tif test \"$A\" = \"$(git merge-base A B)\"\n"
-"\tthen\n"
-"\t\t... A is an ancestor of B ...\n"
-"\tfi\n"
+msgid "'git gui' [<command>] [arguments]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:141
-msgid "In modern git, you can say this in a more direct way:"
+#: en/git-gui.txt:19
+msgid ""
+"A Tcl/Tk based graphical user interface to Git.  'git gui' focuses on "
+"allowing users to make changes to their repository by making new commits, "
+"amending existing ones, creating branches, performing local merges, and "
+"fetching/pushing to remote repositories."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:146
-#, no-wrap
+#: en/git-gui.txt:24
 msgid ""
-"\tif git merge-base --is-ancestor A B\n"
-"\tthen\n"
-"\t\t... A is an ancestor of B ...\n"
-"\tfi\n"
+"Unlike 'gitk', 'git gui' focuses on commit generation and single file "
+"annotation and does not show project history.  It does however supply menu "
+"actions to start a 'gitk' session from within 'git gui'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:148
-msgid "instead."
+#: en/git-gui.txt:29
+msgid ""
+"'git gui' is known to work on all popular UNIX systems, Mac OS X, and "
+"Windows (under both Cygwin and MSYS).  To the extent possible OS specific "
+"user interface guidelines are followed, making 'git gui' a fairly native "
+"interface for users."
 msgstr ""
 
 #. type: Title -
-#: en/git-merge-base.txt:150
+#: en/git-gui.txt:31 en/git-p4.txt:63 en/git-remote.txt:42 en/git-rerere.txt:32
+#: en/git-shell.txt:25 en/git-submodule.txt:30 en/git-svn.txt:29
+#: en/git-worktree.txt:46
 #, no-wrap
-msgid "Discussion on fork-point mode"
+msgid "COMMANDS"
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge-base.txt:156
-msgid ""
-"After working on the `topic` branch created with `git checkout -b topic "
-"origin/master`, the history of remote-tracking branch `origin/master` may "
-"have been rewound and rebuilt, leading to a history of this shape:"
+#. type: Labeled list
+#: en/git-gui.txt:32
+#, no-wrap
+msgid "blame"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:164
-#, no-wrap
+#: en/git-gui.txt:35
 msgid ""
-"\t                 o---B1\n"
-"\t                /\n"
-"\t---o---o---B2--o---o---o---B (origin/master)\n"
-"\t        \\\n"
-"\t         B3\n"
-"\t          \\\n"
-"\t           Derived (topic)\n"
+"Start a blame viewer on the specified file on the given version (or working "
+"directory if not specified)."
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge-base.txt:170
-msgid ""
-"where `origin/master` used to point at commits B3, B2, B1 and now it points "
-"at B, and your `topic` branch was started on top of it back when "
-"`origin/master` was at B3. This mode uses the reflog of `origin/master` to "
-"find B3 as the fork point, so that the `topic` can be rebased on top of the "
-"updated `origin/master` by:"
+#. type: Labeled list
+#: en/git-gui.txt:36
+#, no-wrap
+msgid "browser"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:173
-#, no-wrap
+#: en/git-gui.txt:40
 msgid ""
-"    $ fork_point=$(git merge-base --fork-point origin/master topic)\n"
-"    $ git rebase --onto origin/master $fork_point topic\n"
+"Start a tree browser showing all files in the specified commit.  Files "
+"selected through the browser are opened in the blame viewer."
 msgstr ""
 
-#. type: Title -
-#: en/git-merge-base.txt:176
+#. type: Labeled list
+#: en/git-gui.txt:41
 #, no-wrap
-msgid "See also"
+msgid "citool"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-base.txt:180
-msgid "linkgit:git-rev-list[1], linkgit:git-show-branch[1], linkgit:git-merge[1]"
+#: en/git-gui.txt:46
+msgid ""
+"Start 'git gui' and arrange to make exactly one commit before exiting and "
+"returning to the shell.  The interface is limited to only commit actions, "
+"slightly reducing the application's startup time and simplifying the menubar."
 msgstr ""
 
-#. type: Title =
-#: en/git-merge-file.txt:2
+#. type: Labeled list
+#: en/git-gui.txt:47
 #, no-wrap
-msgid "git-merge-file(1)"
+msgid "version"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-file.txt:7
-msgid "git-merge-file - Run a three-way file merge"
+#: en/git-gui.txt:49
+msgid "Display the currently running version of 'git gui'."
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge-file.txt:15
+#. type: Title -
+#: en/git-gui.txt:52 en/git-imap-send.txt:63 en/git-whatchanged.txt:29
 #, no-wrap
-msgid ""
-"'git merge-file' [-L <current-name> [-L <base-name> [-L <other-name>]]]\n"
-"\t[--ours|--theirs|--union] [-p|--stdout] [-q|--quiet] [--marker-size=<n>]\n"
-"\t[--[no-]diff3] <current-file> <base-file> <other-file>\n"
+msgid "Examples"
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge-file.txt:25
-msgid ""
-"'git merge-file' incorporates all changes that lead from the `<base-file>` "
-"to `<other-file>` into `<current-file>`. The result ordinarily goes into "
-"`<current-file>`. 'git merge-file' is useful for combining separate changes "
-"to an original. Suppose `<base-file>` is the original, and both "
-"`<current-file>` and `<other-file>` are modifications of `<base-file>`, then "
-"'git merge-file' combines both changes."
+#. type: Labeled list
+#: en/git-gui.txt:53
+#, no-wrap
+msgid "`git gui blame Makefile`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-file.txt:30
+#: en/git-gui.txt:61
 msgid ""
-"A conflict occurs if both `<current-file>` and `<other-file>` have changes "
-"in a common segment of lines. If a conflict is found, 'git merge-file' "
-"normally outputs a warning and brackets the conflict with lines containing "
-"<<<<<<< and >>>>>>> markers. A typical conflict will look like this:"
+"Show the contents of the file 'Makefile' in the current working directory, "
+"and provide annotations for both the original author of each line, and who "
+"moved the line to its current location.  The uncommitted file is annotated, "
+"and uncommitted changes (if any) are explicitly attributed to 'Not Yet "
+"Committed'."
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge-file.txt:36
+#. type: Labeled list
+#: en/git-gui.txt:62
 #, no-wrap
-msgid ""
-"\t<<<<<<< A\n"
-"\tlines in file A\n"
-"\t=======\n"
-"\tlines in file B\n"
-"\t>>>>>>> B\n"
+msgid "`git gui blame v0.99.8 Makefile`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-file.txt:42
+#: en/git-gui.txt:68
 msgid ""
-"If there are conflicts, the user should edit the result and delete one of "
-"the alternatives.  When `--ours`, `--theirs`, or `--union` option is in "
-"effect, however, these conflicts are resolved favouring lines from "
-"`<current-file>`, lines from `<other-file>`, or lines from both "
-"respectively.  The length of the conflict markers can be given with the "
-"`--marker-size` option."
+"Show the contents of 'Makefile' in revision 'v0.99.8' and provide "
+"annotations for each line.  Unlike the above example the file is read from "
+"the object database and not the working directory."
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge-file.txt:46
-msgid ""
-"The exit value of this program is negative on error, and the number of "
-"conflicts otherwise (truncated to 127 if there are more than that many "
-"conflicts). If the merge was clean, the exit value is 0."
+#. type: Labeled list
+#: en/git-gui.txt:69
+#, no-wrap
+msgid "`git gui blame --line=100 Makefile`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-file.txt:50
+#: en/git-gui.txt:73
 msgid ""
-"'git merge-file' is designed to be a minimal clone of RCS 'merge'; that is, "
-"it implements all of RCS 'merge''s functionality which is needed by "
-"linkgit:git[1]."
+"Loads annotations as described above and automatically scrolls the view to "
+"center on line '100'."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-merge-file.txt:55
+#: en/git-gui.txt:74
 #, no-wrap
-msgid "-L <label>"
+msgid "`git gui citool`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-file.txt:62
+#: en/git-gui.txt:79
 msgid ""
-"This option may be given up to three times, and specifies labels to be used "
-"in place of the corresponding file names in conflict reports. That is, `git "
-"merge-file -L x -L y -L z a b c` generates output that looks like it came "
-"from files x, y and z instead of from files a, b and c."
+"Make one commit and return to the shell when it is complete.  This command "
+"returns a non-zero exit code if the window was closed in any way other than "
+"by making a commit."
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge-file.txt:66
-msgid "Send results to standard output instead of overwriting `<current-file>`."
+#. type: Labeled list
+#: en/git-gui.txt:80
+#, no-wrap
+msgid "`git gui citool --amend`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-file.txt:69
-msgid "Quiet; do not warn about conflicts."
+#: en/git-gui.txt:84
+msgid "Automatically enter the 'Amend Last Commit' mode of the interface."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-merge-file.txt:70
+#: en/git-gui.txt:85
 #, no-wrap
-msgid "--diff3"
+msgid "`git gui citool --nocommit`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-file.txt:72
-msgid "Show conflicts in \"diff3\" style."
+#: en/git-gui.txt:91
+msgid ""
+"Behave as normal citool, but instead of making a commit simply terminate "
+"with a zero exit code. It still checks that the index does not contain any "
+"unmerged entries, so you can use it as a GUI version of linkgit:git-"
+"mergetool[1]"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-merge-file.txt:75
+#: en/git-gui.txt:92
 #, no-wrap
-msgid "--union"
+msgid "`git citool`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-file.txt:78
-msgid ""
-"Instead of leaving conflicts in the file, resolve conflicts favouring our "
-"(or their or both) side of the lines."
+#: en/git-gui.txt:95
+msgid "Same as `git gui citool` (above)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-merge-file.txt:83
+#: en/git-gui.txt:96
 #, no-wrap
-msgid "`git merge-file README.my README README.upstream`"
+msgid "`git gui browser maint`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-file.txt:87
+#: en/git-gui.txt:101
 msgid ""
-"combines the changes of README.my and README.upstream since README, tries to "
-"merge them and writes the result into README.my."
+"Show a browser for the tree of the 'maint' branch.  Files selected in the "
+"browser can be viewed with the internal blame viewer."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-merge-file.txt:88
+#. type: Plain text
+#: en/git-gui.txt:108
+msgid ""
+"The Git repository browser.  Shows branches, commit history and file "
+"differences.  gitk is the utility started by 'git gui''s Repository "
+"Visualize actions."
+msgstr ""
+
+#. type: Title -
+#: en/git-gui.txt:110
 #, no-wrap
-msgid "`git merge-file -L a -L b -L c tmp/a123 tmp/b234 tmp/c345`"
+msgid "Other"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-file.txt:92
+#: en/git-gui.txt:114
 msgid ""
-"merges tmp/a123 and tmp/c345 with the base tmp/b234, but uses labels `a` and "
-"`c` instead of `tmp/a123` and `tmp/c345`."
+"'git gui' is actually maintained as an independent project, but stable "
+"versions are distributed as part of the Git suite for the convenience of end "
+"users."
 msgstr ""
 
-#. type: Title =
-#: en/git-merge-index.txt:2
-#, no-wrap
-msgid "git-merge-index(1)"
+#. type: Plain text
+#: en/git-gui.txt:116
+msgid "A 'git gui' development repository can be obtained from:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-index.txt:7
-msgid "git-merge-index - Run a merge for files needing merging"
+#: en/git-gui.txt:118
+#, no-wrap
+msgid "  git clone git://repo.or.cz/git-gui.git\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-index.txt:13
+#: en/git-gui.txt:122
 #, no-wrap
-msgid "'git merge-index' [-o] [-q] <merge-program> (-a | [--] <file>*)\n"
+msgid "  git clone http://repo.or.cz/r/git-gui.git\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-index.txt:20
-msgid ""
-"This looks up the <file>(s) in the index and, if there are any merge "
-"entries, passes the SHA-1 hash for those files as arguments 1, 2, 3 (empty "
-"argument if no file), and <file> as argument 4.  File modes for the three "
-"files are passed as arguments 5, 6 and 7."
+#: en/git-gui.txt:124
+msgid "or browsed online at http://repo.or.cz/w/git-gui.git/[]."
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge-index.txt:28
-msgid "Run merge against all files in the index that need merging."
+#. type: Title =
+#: en/git-hash-object.txt:2
+#, no-wrap
+msgid "git-hash-object(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-index.txt:34
+#: en/git-hash-object.txt:7
 msgid ""
-"Instead of stopping at the first failed merge, do all of them in one shot - "
-"continue with merging even when previous merges returned errors, and only "
-"return the error code after all the merges."
+"git-hash-object - Compute object ID and optionally creates a blob from a file"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-index.txt:39
+#: en/git-hash-object.txt:14
+#, no-wrap
 msgid ""
-"Do not complain about a failed merge program (a merge program failure "
-"usually indicates conflicts during the merge). This is for porcelains which "
-"might want to emit custom messages."
+"'git hash-object' [-t <type>] [-w] [--path=<file>|--no-filters] [--stdin [--literally]] [--] <file>...\n"
+"'git hash-object' [-t <type>] [-w] --stdin-paths [--no-filters]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-index.txt:43
+#: en/git-hash-object.txt:24
 msgid ""
-"If 'git merge-index' is called with multiple <file>s (or -a) then it "
-"processes them in turn only stopping if merge returns a non-zero exit code."
+"Computes the object ID value for an object with specified type with the "
+"contents of the named file (which can be outside of the work tree), and "
+"optionally writes the resulting object into the object database.  Reports "
+"its object ID to its standard output.  This is used by 'git cvsimport' to "
+"update the index without modifying files in the work tree.  When <type> is "
+"not specified, it defaults to \"blob\"."
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge-index.txt:46
-msgid ""
-"Typically this is run with a script calling Git's imitation of the 'merge' "
-"command from the RCS package."
+#. type: Labeled list
+#: en/git-hash-object.txt:28
+#, no-wrap
+msgid "-t <type>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-index.txt:49
-msgid "A sample script called 'git merge-one-file' is included in the distribution."
+#: en/git-hash-object.txt:30
+msgid "Specify the type (default: \"blob\")."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-index.txt:54
-msgid ""
-"ALERT ALERT ALERT! The Git \"merge object order\" is different from the RCS "
-"'merge' program merge object order. In the above ordering, the original is "
-"first. But the argument order to the 3-way merge program 'merge' is to have "
-"the original in the middle. Don't ask me why."
+#: en/git-hash-object.txt:33
+msgid "Actually write the object into the object database."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-index.txt:56 en/git-svn.txt:155
-msgid "Examples:"
+#: en/git-hash-object.txt:36
+msgid "Read the object from standard input instead of from a file."
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge-index.txt:62
+#. type: Labeled list
+#: en/git-hash-object.txt:37
 #, no-wrap
-msgid ""
-"  torvalds@ppc970:~/merge-test> git merge-index cat MM\n"
-"  This is MM from the original tree.\t\t\t# original\n"
-"  This is modified MM in the branch A.\t\t\t# merge1\n"
-"  This is modified MM in the branch B.\t\t\t# merge2\n"
-"  This is modified MM in the branch B.\t\t\t# current contents\n"
+msgid "--stdin-paths"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-index.txt:71
-#, no-wrap
+#: en/git-hash-object.txt:40
 msgid ""
-"  torvalds@ppc970:~/merge-test> git merge-index cat AA MM\n"
-"  cat: : No such file or directory\n"
-"  This is added AA in the branch A.\n"
-"  This is added AA in the branch B.\n"
-"  This is added AA in the branch B.\n"
-"  fatal: merge program failed\n"
+"Read file names from the standard input, one per line, instead of from the "
+"command-line."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-index.txt:76
+#: en/git-hash-object.txt:50
 msgid ""
-"where the latter example shows how 'git merge-index' will stop trying to "
-"merge once anything has returned an error (i.e., `cat` returned an error for "
-"the AA file, because it didn't exist in the original, and thus 'git "
-"merge-index' didn't even try to merge the MM thing)."
+"Hash object as it were located at the given path. The location of file does "
+"not directly influence on the hash value, but path is used to determine what "
+"Git filters should be applied to the object before it can be placed to the "
+"object database, and, as result of applying filters, the actual blob put "
+"into the object database may differ from the given file. This option is "
+"mainly useful for hashing temporary files located outside of the working "
+"directory or files read from stdin."
 msgstr ""
 
-#. type: Title =
-#: en/git-merge-one-file.txt:2
+#. type: Labeled list
+#: en/git-hash-object.txt:51
 #, no-wrap
-msgid "git-merge-one-file(1)"
+msgid "--no-filters"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-one-file.txt:7
-msgid "git-merge-one-file - The standard helper program to use with git-merge-index"
+#: en/git-hash-object.txt:56
+msgid ""
+"Hash the contents as is, ignoring any input filter that would have been "
+"chosen by the attributes mechanism, including the end-of-line conversion. If "
+"the file is read from standard input then this is always implied, unless the "
+"`--path` option is given."
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge-one-file.txt:13
+#. type: Labeled list
+#: en/git-hash-object.txt:57
 #, no-wrap
-msgid "'git merge-one-file'\n"
+msgid "--literally"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-one-file.txt:18
+#: en/git-hash-object.txt:62
 msgid ""
-"This is the standard helper program to use with 'git merge-index' to resolve "
-"a merge after the trivial merge done with 'git read-tree -m'."
+"Allow `--stdin` to hash any garbage into a loose object which might not "
+"otherwise pass standard object parsing or git-fsck checks. Useful for stress-"
+"testing Git itself or reproducing characteristics of corrupt or bogus "
+"objects encountered in the wild."
 msgstr ""
 
 #. type: Title =
-#: en/git-mergetool--lib.txt:2
+#: en/git-help.txt:2
 #, no-wrap
-msgid "git-mergetool{litdd}lib(1)"
+msgid "git-help(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool--lib.txt:7
-msgid "git-mergetool--lib - Common Git merge tool shell scriptlets"
+#: en/git-help.txt:7
+msgid "git-help - Display help information about Git"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool--lib.txt:12
+#: en/git-help.txt:13
 #, no-wrap
-msgid "'TOOL_MODE=(diff|merge) . \"$(git --exec-path)/git-mergetool{litdd}lib\"'\n"
+msgid ""
+"'git help' [-a|--all [--[no-]verbose]] [-g|--guide]\n"
+"\t   [-i|--info|-m|--man|-w|--web] [COMMAND|GUIDE]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool--lib.txt:19 en/git-sh-i18n.txt:19 en/git-sh-setup.txt:19
+#: en/git-help.txt:20
 msgid ""
-"This is not a command the end user would want to run.  Ever.  This "
-"documentation is meant for people who are studying the Porcelain-ish scripts "
-"and/or are writing new ones."
+"With no options and no COMMAND or GUIDE given, the synopsis of the 'git' "
+"command and a list of the most commonly used Git commands are printed on the "
+"standard output."
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool--lib.txt:23
+#: en/git-help.txt:23
 msgid ""
-"The 'git-mergetool{litdd}lib' scriptlet is designed to be sourced (using "
-"`.`) by other shell scripts to set up functions for working with Git merge "
-"tools."
+"If the option `--all` or `-a` is given, all available commands are printed "
+"on the standard output."
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool--lib.txt:27
+#: en/git-help.txt:26
 msgid ""
-"Before sourcing 'git-mergetool{litdd}lib', your script must set `TOOL_MODE` "
-"to define the operation mode for the functions listed below.  'diff' and "
-"'merge' are valid values."
+"If the option `--guide` or `-g` is given, a list of the useful Git guides is "
+"also printed on the standard output."
 msgstr ""
 
-#. type: Title -
-#: en/git-mergetool--lib.txt:29 en/git-sh-i18n.txt:28 en/git-sh-setup.txt:34
-#, no-wrap
-msgid "FUNCTIONS"
+#. type: Plain text
+#: en/git-help.txt:31
+msgid ""
+"If a command, or a guide, is given, a manual page for that command or guide "
+"is brought up. The 'man' program is used by default for this purpose, but "
+"this can be overridden by other options or configuration variables."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-mergetool--lib.txt:30
-#, no-wrap
-msgid "get_merge_tool"
+#. type: Plain text
+#: en/git-help.txt:35
+msgid ""
+"If an alias is given, git shows the definition of the alias on standard "
+"output. To get the manual page for the aliased command, use `git COMMAND --"
+"help`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool--lib.txt:32
-msgid "returns a merge tool."
+#: en/git-help.txt:38
+msgid ""
+"Note that `git --help ...` is identical to `git help ...` because the former "
+"is internally converted into the latter."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-mergetool--lib.txt:33
-#, no-wrap
-msgid "get_merge_tool_cmd"
+#. type: Plain text
+#: en/git-help.txt:40
+msgid "To display the linkgit:git[1] man page, use `git help git`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool--lib.txt:35
-msgid "returns the custom command for a merge tool."
+#: en/git-help.txt:42
+msgid "This page can be displayed with 'git help help' or `git help --help`"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-mergetool--lib.txt:36
-#, no-wrap
-msgid "get_merge_tool_path"
+#. type: Plain text
+#: en/git-help.txt:49
+msgid ""
+"Prints all the available commands on the standard output. This option "
+"overrides any given command or guide name."
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool--lib.txt:38
-msgid "returns the custom path for a merge tool."
+#: en/git-help.txt:53
+msgid ""
+"When used with `--all` print description for all recognized commands. This "
+"is the default."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-mergetool--lib.txt:39
+#: en/git-help.txt:55
 #, no-wrap
-msgid "run_merge_tool"
+msgid "--config"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool--lib.txt:44
+#: en/git-help.txt:58
 msgid ""
-"launches a merge tool given the tool name and a true/false flag to indicate "
-"whether a merge base is present.  '$MERGED', '$LOCAL', '$REMOTE', and "
-"'$BASE' must be defined for use by the merge tool."
+"List all available configuration variables. This is a short summary of the "
+"list in linkgit:git-config[1]."
 msgstr ""
 
-#. type: Title =
-#: en/git-mergetool.txt:2
+#. type: Labeled list
+#: en/git-help.txt:60
 #, no-wrap
-msgid "git-mergetool(1)"
+msgid "--guides"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool.txt:7
+#: en/git-help.txt:63
 msgid ""
-"git-mergetool - Run merge conflict resolution tools to resolve merge "
-"conflicts"
+"Prints a list of useful guides on the standard output. This option overrides "
+"any given command or guide name."
 msgstr ""
 
-#. type: Plain text
-#: en/git-mergetool.txt:12
+#. type: Labeled list
+#: en/git-help.txt:65
 #, no-wrap
-msgid "'git mergetool' [--tool=<tool>] [-y | --[no-]prompt] [<file>...]\n"
+msgid "--info"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool.txt:18
+#: en/git-help.txt:68
 msgid ""
-"Use `git mergetool` to run one of several merge utilities to resolve merge "
-"conflicts.  It is typically run after 'git merge'."
+"Display manual page for the command in the 'info' format. The 'info' program "
+"will be used for that purpose."
 msgstr ""
 
-#. type: Plain text
-#: en/git-mergetool.txt:24
-msgid ""
-"If one or more <file> parameters are given, the merge tool program will be "
-"run to resolve differences on each file (skipping those without conflicts).  "
-"Specifying a directory will include all unresolved files in that path.  If "
-"no <file> names are specified, 'git mergetool' will run the merge tool "
-"program on every file with merge conflicts."
+#. type: Labeled list
+#: en/git-help.txt:70
+#, no-wrap
+msgid "--man"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool.txt:33
+#: en/git-help.txt:74
 msgid ""
-"Use the merge resolution program specified by <tool>.  Valid values include "
-"emerge, gvimdiff, kdiff3, meld, vimdiff, and tortoisemerge. Run `git "
-"mergetool --tool-help` for the list of valid <tool> settings."
+"Display manual page for the command in the 'man' format. This option may be "
+"used to override a value set in the `help.format` configuration variable."
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool.txt:38
+#: en/git-help.txt:78
 msgid ""
-"If a merge resolution program is not specified, 'git mergetool' will use the "
-"configuration variable `merge.tool`.  If the configuration variable "
-"`merge.tool` is not set, 'git mergetool' will pick a suitable default."
+"By default the 'man' program will be used to display the manual page, but "
+"the `man.viewer` configuration variable may be used to choose other display "
+"programs (see below)."
 msgstr ""
 
-#. type: Plain text
-#: en/git-mergetool.txt:44
-msgid ""
-"You can explicitly provide a full path to the tool by setting the "
-"configuration variable `mergetool.<tool>.path`. For example, you can "
-"configure the absolute path to kdiff3 by setting "
-"`mergetool.kdiff3.path`. Otherwise, 'git mergetool' assumes the tool is "
-"available in PATH."
+#. type: Labeled list
+#: en/git-help.txt:80
+#, no-wrap
+msgid "--web"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool.txt:49
+#: en/git-help.txt:83
 msgid ""
-"Instead of running one of the known merge tool programs, 'git mergetool' can "
-"be customized to run an alternative program by specifying the command line "
-"to invoke in a configuration variable `mergetool.<tool>.cmd`."
+"Display manual page for the command in the 'web' (HTML)  format. A web "
+"browser will be used for that purpose."
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool.txt:60
+#: en/git-help.txt:89
 msgid ""
-"When 'git mergetool' is invoked with this tool (either through the `-t` or "
-"`--tool` option or the `merge.tool` configuration variable) the configured "
-"command line will be invoked with `$BASE` set to the name of a temporary "
-"file containing the common base for the merge, if available; `$LOCAL` set to "
-"the name of a temporary file containing the contents of the file on the "
-"current branch; `$REMOTE` set to the name of a temporary file containing the "
-"contents of the file to be merged, and `$MERGED` set to the name of the file "
-"to which the merge tool should write the result of the merge resolution."
+"The web browser can be specified using the configuration variable `help."
+"browser`, or `web.browser` if the former is not set. If none of these config "
+"variables is set, the 'git web{litdd}browse' helper script (called by 'git "
+"help') will pick a suitable default. See linkgit:git-web{litdd}browse[1] for "
+"more information about this."
+msgstr ""
+
+#. type: Title -
+#: en/git-help.txt:91 en/git-interpret-trailers.txt:135 en/git-p4.txt:515
+#: en/git-web--browse.txt:59
+#, no-wrap
+msgid "CONFIGURATION VARIABLES"
+msgstr ""
+
+#. type: Title ~
+#: en/git-help.txt:94
+#, no-wrap
+msgid "help.format"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool.txt:66
+#: en/git-help.txt:100
 msgid ""
-"If the custom merge tool correctly indicates the success of a merge "
-"resolution with its exit code, then the configuration variable "
-"`mergetool.<tool>.trustExitCode` can be set to `true`.  Otherwise, 'git "
-"mergetool' will prompt the user to indicate the success of the resolution "
-"after the custom tool has exited."
+"If no command-line option is passed, the `help.format` configuration "
+"variable will be checked. The following values are supported for this "
+"variable; they make 'git help' behave as their corresponding command- line "
+"option:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool.txt:69
-msgid "Print a list of merge tools that may be used with `--tool`."
+#: en/git-help.txt:102
+msgid "\"man\" corresponds to '-m|--man',"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool.txt:77
-msgid ""
-"Don't prompt before each invocation of the merge resolution program.  This "
-"is the default if the merge resolution program is explicitly specified with "
-"the `--tool` option or with the `merge.tool` configuration variable."
+#: en/git-help.txt:103
+msgid "\"info\" corresponds to '-i|--info',"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool.txt:81
-msgid ""
-"Prompt before each invocation of the merge resolution program to give the "
-"user a chance to skip the path."
+#: en/git-help.txt:104
+msgid "\"web\" or \"html\" correspond to '-w|--web'."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-mergetool.txt:82 en/diff-options.txt:467
+#. type: Title ~
+#: en/git-help.txt:106
 #, no-wrap
-msgid "-O<orderfile>"
+msgid "help.browser, web.browser and browser.<tool>.path"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool.txt:88
+#: en/git-help.txt:112
 msgid ""
-"Process files in the order specified in the <orderfile>, which has one shell "
-"glob pattern per line.  This overrides the `diff.orderFile` configuration "
-"variable (see linkgit:git-config[1]).  To cancel `diff.orderFile`, use "
-"`-O/dev/null`."
+"The `help.browser`, `web.browser` and `browser.<tool>.path` will also be "
+"checked if the 'web' format is chosen (either by command-line option or "
+"configuration variable). See '-w|--web' in the OPTIONS section above and "
+"linkgit:git-web{litdd}browse[1]."
 msgstr ""
 
-#. type: Title -
-#: en/git-mergetool.txt:90
+#. type: Title ~
+#: en/git-help.txt:114
 #, no-wrap
-msgid "TEMPORARY FILES"
+msgid "man.viewer"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool.txt:94
+#: en/git-help.txt:118
 msgid ""
-"`git mergetool` creates `*.orig` backup files while resolving merges.  These "
-"are safe to remove once a file has been merged and its `git mergetool` "
-"session has completed."
+"The `man.viewer` configuration variable will be checked if the 'man' format "
+"is chosen. The following values are currently supported:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mergetool.txt:98
-msgid ""
-"Setting the `mergetool.keepBackup` configuration variable to `false` causes "
-"`git mergetool` to automatically remove the backup as files are successfully "
-"merged."
-msgstr ""
-
-#. type: Title =
-#: en/git-merge-tree.txt:2
-#, no-wrap
-msgid "git-merge-tree(1)"
+#: en/git-help.txt:120
+msgid "\"man\": use the 'man' program as usual,"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-tree.txt:7
-msgid "git-merge-tree - Show three-way merge without touching index"
+#: en/git-help.txt:122
+msgid ""
+"\"woman\": use 'emacsclient' to launch the \"woman\" mode in emacs (this "
+"only works starting with emacsclient versions 22),"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-tree.txt:13
-#, no-wrap
-msgid "'git merge-tree' <base-tree> <branch1> <branch2>\n"
+#: en/git-help.txt:124
+msgid ""
+"\"konqueror\": use 'kfmclient' to open the man page in a new konqueror tab "
+"(see 'Note about konqueror' below)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-tree.txt:21
+#: en/git-help.txt:127
 msgid ""
-"Reads three tree-ish, and output trivial merge results and conflicting "
-"stages to the standard output.  This is similar to what three-way 'git "
-"read-tree -m' does, but instead of storing the results in the index, the "
-"command outputs the entries to the standard output."
+"Values for other tools can be used if there is a corresponding `man.<tool>."
+"cmd` configuration entry (see below)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge-tree.txt:26
+#: en/git-help.txt:131
 msgid ""
-"This is meant to be used by higher level scripts to compute merge results "
-"outside of the index, and stuff the results back into the index.  For this "
-"reason, the output from the command omits entries that match the <branch1> "
-"tree."
-msgstr ""
-
-#. type: Title =
-#: en/git-merge.txt:2
-#, no-wrap
-msgid "git-merge(1)"
+"Multiple values may be given to the `man.viewer` configuration variable. "
+"Their corresponding programs will be tried in the order listed in the "
+"configuration file."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:7
-msgid "git-merge - Join two or more development histories together"
+#: en/git-help.txt:133
+msgid "For example, this configuration:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge.txt:19
+#. type: delimited block -
+#: en/git-help.txt:138
 #, no-wrap
 msgid ""
-"'git merge' [-n] [--stat] [--no-commit] [--squash] [--[no-]edit]\n"
-"\t[-s <strategy>] [-X <strategy-option>] [-S[<keyid>]]\n"
-"\t[--[no-]allow-unrelated-histories]\n"
-"\t[--[no-]rerere-autoupdate] [-m <msg>] [<commit>...]\n"
-"'git merge' <msg> HEAD <commit>...\n"
-"'git merge' --abort\n"
-"'git merge' --continue\n"
+"\t[man]\n"
+"\t\tviewer = konqueror\n"
+"\t\tviewer = woman\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:27
+#: en/git-help.txt:142
 msgid ""
-"Incorporates changes from the named commits (since the time their histories "
-"diverged from the current branch) into the current branch.  This command is "
-"used by 'git pull' to incorporate changes from another repository and can be "
-"used by hand to merge changes from one branch into another."
+"will try to use konqueror first. But this may fail (for example, if DISPLAY "
+"is not set) and in that case emacs' woman mode will be tried."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:30 en/git-pull.txt:40
-msgid "Assume the following history exists and the current branch is \"`master`\":"
+#: en/git-help.txt:146
+msgid ""
+"If everything fails, or if no viewer is configured, the viewer specified in "
+"the `GIT_MAN_VIEWER` environment variable will be tried.  If that fails too, "
+"the 'man' program will be tried anyway."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-merge.txt:35
+#. type: Title ~
+#: en/git-help.txt:148
 #, no-wrap
-msgid ""
-"\t  A---B---C topic\n"
-"\t /\n"
-"    D---E---F---G master\n"
+msgid "man.<tool>.path"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:42
+#: en/git-help.txt:155
 msgid ""
-"Then \"`git merge topic`\" will replay the changes made on the `topic` "
-"branch since it diverged from `master` (i.e., `E`) until its current commit "
-"(`C`) on top of `master`, and record the result in a new commit along with "
-"the names of the two parent commits and a log message from the user "
-"describing the changes."
+"You can explicitly provide a full path to your preferred man viewer by "
+"setting the configuration variable `man.<tool>.path`. For example, you can "
+"configure the absolute path to konqueror by setting 'man.konqueror.path'. "
+"Otherwise, 'git help' assumes the tool is available in PATH."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-merge.txt:47
+#. type: Title ~
+#: en/git-help.txt:157
 #, no-wrap
-msgid ""
-"\t  A---B---C topic\n"
-"\t /         \\\n"
-"    D---E---F---G---H master\n"
+msgid "man.<tool>.cmd"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:52
+#: en/git-help.txt:165
 msgid ""
-"The second syntax (<msg> `HEAD` <commit>...) is supported for historical "
-"reasons.  Do not use it from the command line or in new scripts.  It is the "
-"same as `git merge -m <msg> <commit>...`."
+"When the man viewer, specified by the `man.viewer` configuration variables, "
+"is not among the supported ones, then the corresponding `man.<tool>.cmd` "
+"configuration variable will be looked up. If this variable exists then the "
+"specified tool will be treated as a custom command and a shell eval will be "
+"used to run the command with the man page passed as arguments."
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge.txt:60
-msgid ""
-"The third syntax (\"`git merge --abort`\") can only be run after the merge "
-"has resulted in conflicts. 'git merge --abort' will abort the merge process "
-"and try to reconstruct the pre-merge state. However, if there were "
-"uncommitted changes when the merge started (and especially if those changes "
-"were further modified after the merge was started), 'git merge --abort' will "
-"in some cases be unable to reconstruct the original (pre-merge) "
-"changes. Therefore:"
+#. type: Title ~
+#: en/git-help.txt:167
+#, no-wrap
+msgid "Note about konqueror"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:64
-#, no-wrap
+#: en/git-help.txt:172
 msgid ""
-"*Warning*: Running 'git merge' with non-trivial uncommitted changes is\n"
-"discouraged: while possible, it may leave you in a state that is hard to\n"
-"back out of in the case of a conflict.\n"
+"When 'konqueror' is specified in the `man.viewer` configuration variable, we "
+"launch 'kfmclient' to try to open the man page on an already opened "
+"konqueror in a new tab if possible."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:67
+#: en/git-help.txt:176
 msgid ""
-"The fourth syntax (\"`git merge --continue`\") can only be run after the "
-"merge has resulted in conflicts."
+"For consistency, we also try such a trick if 'man.konqueror.path' is set to "
+"something like 'A_PATH_TO/konqueror'. That means we will try to launch "
+"'A_PATH_TO/kfmclient' instead."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:77
+#: en/git-help.txt:179 en/git-web--browse.txt:100
 msgid ""
-"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."
+"If you really want to use 'konqueror', then you can use something like the "
+"following:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge.txt:81
+#. type: delimited block -
+#: en/git-help.txt:183
+#, no-wrap
 msgid ""
-"Set the commit message to be used for the merge commit (in case one is "
-"created)."
+"\t[man]\n"
+"\t\tviewer = konq\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge.txt:84
+#. type: delimited block -
+#: en/git-help.txt:186
+#, no-wrap
 msgid ""
-"If `--log` is specified, a shortlog of the commits being merged will be "
-"appended to the specified message."
+"\t[man \"konq\"]\n"
+"\t\tcmd = A_PATH_TO/konqueror\n"
+msgstr ""
+
+#. type: Title ~
+#: en/git-help.txt:189
+#, no-wrap
+msgid "Note about git config --global"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:88
+#: en/git-help.txt:193
 msgid ""
-"The 'git fmt-merge-msg' command can be used to give a good default for "
-"automated 'git merge' invocations. The automated message can include the "
-"branch description."
+"Note that all these configuration variables should probably be set using the "
+"`--global` flag, for example like this:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-merge.txt:89
+#. type: delimited block -
+#: en/git-help.txt:197
 #, no-wrap
-msgid "--[no-]rerere-autoupdate"
+msgid ""
+"$ git config --global help.format web\n"
+"$ git config --global web.browser firefox\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:92
+#: en/git-help.txt:201 en/git-web--browse.txt:121
 msgid ""
-"Allow the rerere mechanism to update the index with the result of "
-"auto-conflict resolution if possible."
+"as they are probably more user specific than repository specific.  See "
+"linkgit:git-config[1] for more information about this."
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge.txt:96
-msgid ""
-"Abort the current conflict resolution process, and try to reconstruct the "
-"pre-merge state."
+#. type: Title =
+#: en/git-http-backend.txt:2
+#, no-wrap
+msgid "git-http-backend(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:101
-msgid ""
-"If there were uncommitted worktree changes present when the merge started, "
-"'git merge --abort' will in some cases be unable to reconstruct these "
-"changes. It is therefore recommended to always commit or stash your changes "
-"before running 'git merge'."
+#: en/git-http-backend.txt:7
+msgid "git-http-backend - Server side implementation of Git over HTTP"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:104
-msgid ""
-"'git merge --abort' is equivalent to 'git reset --merge' when `MERGE_HEAD` "
-"is present."
+#: en/git-http-backend.txt:12
+#, no-wrap
+msgid "'git http-backend'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:109
+#: en/git-http-backend.txt:20
 msgid ""
-"After a 'git merge' stops due to conflicts you can conclude the merge by "
-"running 'git merge --continue' (see \"HOW TO RESOLVE CONFLICTS\" section "
-"below)."
+"A simple CGI program to serve the contents of a Git repository to Git "
+"clients accessing the repository over http:// and https:// protocols.  The "
+"program supports clients fetching using both the smart HTTP protocol and the "
+"backwards-compatible dumb HTTP protocol, as well as clients pushing using "
+"the smart HTTP protocol."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:114
+#: en/git-http-backend.txt:25
 msgid ""
-"Commits, usually other branch heads, to merge into our branch.  Specifying "
-"more than one commit will create a merge with more than two parents "
-"(affectionately called an Octopus merge)."
+"It verifies that the directory has the magic file \"git-daemon-export-ok\", "
+"and it will refuse to export any Git directory that hasn't explicitly been "
+"marked for export this way (unless the `GIT_HTTP_EXPORT_ALL` environmental "
+"variable is set)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:118
+#: en/git-http-backend.txt:31
 msgid ""
-"If no commit is given from the command line, merge the remote-tracking "
-"branches that the current branch is configured to use as its upstream.  See "
-"also the configuration section of this manual page."
+"By default, only the `upload-pack` service is enabled, which serves 'git "
+"fetch-pack' and 'git ls-remote' clients, which are invoked from 'git fetch', "
+"'git pull', and 'git clone'.  If the client is authenticated, the `receive-"
+"pack` service is enabled, which serves 'git send-pack' clients, which is "
+"invoked from 'git push'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:122
+#: en/git-http-backend.txt:36
 msgid ""
-"When `FETCH_HEAD` (and no other commit) is specified, the branches recorded "
-"in the `.git/FETCH_HEAD` file by the previous invocation of `git fetch` for "
-"merging are merged to the current branch."
+"These services can be enabled/disabled using the per-repository "
+"configuration file:"
 msgstr ""
 
-#. type: Title -
-#: en/git-merge.txt:125
+#. type: Labeled list
+#: en/git-http-backend.txt:37
 #, no-wrap
-msgid "PRE-MERGE CHECKS"
+msgid "http.getanyfile"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:133
+#: en/git-http-backend.txt:44
 msgid ""
-"Before applying outside changes, you should get your own work in good shape "
-"and committed locally, so it will not be clobbered if there are conflicts.  "
-"See also linkgit:git-stash[1].  'git pull' and 'git merge' will stop without "
-"doing anything when local uncommitted changes overlap with files that 'git "
-"pull'/'git merge' may need to update."
+"This serves Git clients older than version 1.6.6 that are unable to use the "
+"upload pack service.  When enabled, clients are able to read any file within "
+"the repository, including objects that are no longer reachable from a branch "
+"but are still present.  It is enabled by default, but a repository can "
+"disable it by setting this configuration item to `false`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge.txt:139
-msgid ""
-"To avoid recording unrelated changes in the merge commit, 'git pull' and "
-"'git merge' will also abort if there are any changes registered in the index "
-"relative to the `HEAD` commit.  (One exception is when the changed index "
-"entries are in the state that would result from the merge already.)"
+#. type: Labeled list
+#: en/git-http-backend.txt:45
+#, no-wrap
+msgid "http.uploadpack"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:142
+#: en/git-http-backend.txt:49
 msgid ""
-"If all named commits are already ancestors of `HEAD`, 'git merge' will exit "
-"early with the message \"Already up-to-date.\""
+"This serves 'git fetch-pack' and 'git ls-remote' clients.  It is enabled by "
+"default, but a repository can disable it by setting this configuration item "
+"to `false`."
 msgstr ""
 
-#. type: Title -
-#: en/git-merge.txt:144
+#. type: Labeled list
+#: en/git-http-backend.txt:50
 #, no-wrap
-msgid "FAST-FORWARD MERGE"
+msgid "http.receivepack"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:154
+#: en/git-http-backend.txt:56
 msgid ""
-"Often the current branch head is an ancestor of the named commit.  This is "
-"the most common case especially when invoked from 'git pull': you are "
-"tracking an upstream repository, you have committed no local changes, and "
-"now you want to update to a newer upstream revision.  In this case, a new "
-"commit is not needed to store the combined history; instead, the `HEAD` "
-"(along with the index) is updated to point at the named commit, without "
-"creating an extra merge commit."
-msgstr ""
-
-#. type: Plain text
-#: en/git-merge.txt:156
-msgid "This behavior can be suppressed with the `--no-ff` option."
+"This serves 'git send-pack' clients, allowing push.  It is disabled by "
+"default for anonymous users, and enabled by default for users authenticated "
+"by the web server.  It can be disabled by setting this item to `false`, or "
+"enabled for all users, including anonymous users, by setting it to `true`."
 msgstr ""
 
 #. type: Title -
-#: en/git-merge.txt:158
+#: en/git-http-backend.txt:58
 #, no-wrap
-msgid "TRUE MERGE"
+msgid "URL TRANSLATION"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:163
+#: en/git-http-backend.txt:65
 msgid ""
-"Except in a fast-forward merge (see above), the branches to be merged must "
-"be tied together by a merge commit that has both of them as its parents."
+"To determine the location of the repository on disk, 'git http-backend' "
+"concatenates the environment variables PATH_INFO, which is set automatically "
+"by the web server, and GIT_PROJECT_ROOT, which must be set manually in the "
+"web server configuration.  If GIT_PROJECT_ROOT is not set, 'git http-"
+"backend' reads PATH_TRANSLATED, which is also set automatically by the web "
+"server."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:168
+#: en/git-http-backend.txt:70
 msgid ""
-"A merged version reconciling the changes from all branches to be merged is "
-"committed, and your `HEAD`, index, and working tree are updated to it.  It "
-"is possible to have modifications in the working tree as long as they do not "
-"overlap; the update will preserve them."
-msgstr ""
-
-#. type: Plain text
-#: en/git-merge.txt:171
-msgid "When it is not obvious how to reconcile the changes, the following happens:"
+"All of the following examples map `http://$hostname/git/foo/bar.git` to `/"
+"var/www/git/foo/bar.git`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge.txt:173
-msgid "The `HEAD` pointer stays the same."
+#. type: Labeled list
+#: en/git-http-backend.txt:71
+#, no-wrap
+msgid "Apache 2.x"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:174
-msgid "The `MERGE_HEAD` ref is set to point to the other branch head."
+#: en/git-http-backend.txt:75
+msgid ""
+"Ensure mod_cgi, mod_alias, and mod_env are enabled, set GIT_PROJECT_ROOT (or "
+"DocumentRoot) appropriately, and create a ScriptAlias to the CGI:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge.txt:176
+#. type: delimited block -
+#: en/git-http-backend.txt:80
+#, no-wrap
 msgid ""
-"Paths that merged cleanly are updated both in the index file and in your "
-"working tree."
+"SetEnv GIT_PROJECT_ROOT /var/www/git\n"
+"SetEnv GIT_HTTP_EXPORT_ALL\n"
+"ScriptAlias /git/ /usr/libexec/git-core/git-http-backend/\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:182
+#: en/git-http-backend.txt:86
 msgid ""
-"For conflicting paths, the index file records up to three versions: stage 1 "
-"stores the version from the common ancestor, stage 2 from `HEAD`, and stage "
-"3 from `MERGE_HEAD` (you can inspect the stages with `git ls-files -u`).  "
-"The working tree files contain the result of the \"merge\" program; "
-"i.e. 3-way merge results with familiar conflict markers `<<<` `===` `>>>`."
+"To enable anonymous read access but authenticated write access, require "
+"authorization for both the initial ref advertisement (which we detect as a "
+"push via the service parameter in the query string), and the receive-pack "
+"invocation itself:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge.txt:186
+#. type: delimited block -
+#: en/git-http-backend.txt:91
+#, no-wrap
 msgid ""
-"No other changes are made.  In particular, the local modifications you had "
-"before you started merge will stay the same and the index entries for them "
-"stay as they were, i.e. matching `HEAD`."
+"RewriteCond %{QUERY_STRING} service=git-receive-pack [OR]\n"
+"RewriteCond %{REQUEST_URI} /git-receive-pack$\n"
+"RewriteRule ^/git/ - [E=AUTHREQUIRED:yes]\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge.txt:189
+#. type: delimited block -
+#: en/git-http-backend.txt:95
+#, no-wrap
 msgid ""
-"If you tried a merge which resulted in complex conflicts and want to start "
-"over, you can recover with `git merge --abort`."
+"<LocationMatch \"^/git/\">\n"
+"\tOrder Deny,Allow\n"
+"\tDeny from env=AUTHREQUIRED\n"
 msgstr ""
 
-#. type: Title -
-#: en/git-merge.txt:191
+#. type: delimited block -
+#: en/git-http-backend.txt:102
 #, no-wrap
-msgid "MERGING TAG"
+msgid ""
+"\tAuthType Basic\n"
+"\tAuthName \"Git Access\"\n"
+"\tRequire group committers\n"
+"\tSatisfy Any\n"
+"\t...\n"
+"</LocationMatch>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:198
+#: en/git-http-backend.txt:107
 msgid ""
-"When merging an annotated (and possibly signed) tag, Git always creates a "
-"merge commit even if a fast-forward merge is possible, and the commit "
-"message template is prepared with the tag message.  Additionally, if the tag "
-"is signed, the signature check is reported as a comment in the message "
-"template. See also linkgit:git-tag[1]."
+"If you do not have `mod_rewrite` available to match against the query "
+"string, it is sufficient to just protect `git-receive-pack` itself, like:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge.txt:202
+#. type: delimited block -
+#: en/git-http-backend.txt:115
+#, no-wrap
 msgid ""
-"When you want to just integrate with the work leading to the commit that "
-"happens to be tagged, e.g. synchronizing with an upstream release point, you "
-"may not want to make an unnecessary merge commit."
+"<LocationMatch \"^/git/.*/git-receive-pack$\">\n"
+"\tAuthType Basic\n"
+"\tAuthName \"Git Access\"\n"
+"\tRequire group committers\n"
+"\t...\n"
+"</LocationMatch>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:206
+#: en/git-http-backend.txt:125
 msgid ""
-"In such a case, you can \"unwrap\" the tag yourself before feeding it to "
-"`git merge`, or pass `--ff-only` when you do not have any work on your "
-"own. e.g."
+"In this mode, the server will not request authentication until the client "
+"actually starts the object negotiation phase of the push, rather than during "
+"the initial contact.  For this reason, you must also enable the `http."
+"receivepack` config option in any repositories that should accept a push. "
+"The default behavior, if `http.receivepack` is not set, is to reject any "
+"pushes by unauthenticated users; the initial request will therefore report "
+"`403 Forbidden` to the client, without even giving an opportunity for "
+"authentication."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-merge.txt:211
-#, no-wrap
+#. type: Plain text
+#: en/git-http-backend.txt:128
 msgid ""
-"git fetch origin\n"
-"git merge v1.2.3^0\n"
-"git merge --ff-only v1.2.3\n"
+"To require authentication for both reads and writes, use a Location "
+"directive around the repository, or one of its parent directories:"
 msgstr ""
 
-#. type: Title -
-#: en/git-merge.txt:215
+#. type: delimited block -
+#: en/git-http-backend.txt:136
 #, no-wrap
-msgid "HOW CONFLICTS ARE PRESENTED"
+msgid ""
+"<Location /git/private>\n"
+"\tAuthType Basic\n"
+"\tAuthName \"Private Git Access\"\n"
+"\tRequire group committers\n"
+"\t...\n"
+"</Location>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:224
+#: en/git-http-backend.txt:141
 msgid ""
-"During a merge, the working tree files are updated to reflect the result of "
-"the merge.  Among the changes made to the common ancestor's version, "
-"non-overlapping ones (that is, you changed an area of the file while the "
-"other side left that area intact, or vice versa) are incorporated in the "
-"final result verbatim.  When both sides made changes to the same area, "
-"however, Git cannot randomly pick one side over the other, and asks you to "
-"resolve it by leaving what both sides did to that area."
+"To serve gitweb at the same url, use a ScriptAliasMatch to only those URLs "
+"that 'git http-backend' can handle, and forward the rest to gitweb:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge.txt:227
+#. type: delimited block -
+#: en/git-http-backend.txt:151
+#, no-wrap
 msgid ""
-"By default, Git uses the same style as the one used by the \"merge\" program "
-"from the RCS suite to present such a conflicted hunk, like this:"
+"ScriptAliasMatch \\\n"
+"\t\"(?x)^/git/(.*/(HEAD | \\\n"
+"\t\t\tinfo/refs | \\\n"
+"\t\t\tobjects/(info/[^/]+ | \\\n"
+"\t\t\t\t [0-9a-f]{2}/[0-9a-f]{38} | \\\n"
+"\t\t\t\t pack/pack-[0-9a-f]{40}\\.(pack|idx)) | \\\n"
+"\t\t\tgit-(upload|receive)-pack))$\" \\\n"
+"\t/usr/libexec/git-core/git-http-backend/$1\n"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-merge.txt:238
+#: en/git-http-backend.txt:153
 #, no-wrap
-msgid ""
-"Here are lines that are either unchanged from the common\n"
-"ancestor, or cleanly resolved because only one side changed.\n"
-"<<<<<<< yours:sample.txt\n"
-"Conflict resolution is hard;\n"
-"let's go shopping.\n"
-"=======\n"
-"Git makes conflict resolution easy.\n"
-">>>>>>> theirs:sample.txt\n"
-"And here is another line that is cleanly resolved or unmodified.\n"
+msgid "ScriptAlias /git/ /var/www/cgi-bin/gitweb.cgi/\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:243
+#: en/git-http-backend.txt:157
 msgid ""
-"The area where a pair of conflicting changes happened is marked with markers "
-"`<<<<<<<`, `=======`, and `>>>>>>>`.  The part before the `=======` is "
-"typically your side, and the part afterwards is typically their side."
+"To serve multiple repositories from different linkgit:gitnamespaces[7] in a "
+"single repository:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge.txt:249
+#. type: delimited block -
+#: en/git-http-backend.txt:161
+#, no-wrap
 msgid ""
-"The default format does not show what the original said in the conflicting "
-"area.  You cannot tell how many lines are deleted and replaced with Barbie's "
-"remark on your side.  The only thing you can tell is that your side wants to "
-"say it is hard and you'd prefer to go shopping, while the other side wants "
-"to claim it is easy."
+"SetEnvIf Request_URI \"^/git/([^/]*)\" GIT_NAMESPACE=$1\n"
+"ScriptAliasMatch ^/git/[^/]*(.*) /usr/libexec/git-core/git-http-backend/storage.git$1\n"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-http-backend.txt:163
+#, no-wrap
+msgid "Accelerated static Apache 2.x"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:253
+#: en/git-http-backend.txt:168
 msgid ""
-"An alternative style can be used by setting the \"merge.conflictStyle\" "
-"configuration variable to \"diff3\".  In \"diff3\" style, the above conflict "
-"may look like this:"
+"Similar to the above, but Apache can be used to return static files that are "
+"stored on disk.\tOn many systems this may be more efficient as Apache can "
+"ask the kernel to copy the file contents from the file system directly to "
+"the network:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-http-backend.txt:171 en/git-http-backend.txt:181
+#, no-wrap
+msgid "SetEnv GIT_PROJECT_ROOT /var/www/git\n"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-merge.txt:266
+#: en/git-http-backend.txt:175
 #, no-wrap
 msgid ""
-"Here are lines that are either unchanged from the common\n"
-"ancestor, or cleanly resolved because only one side changed.\n"
-"<<<<<<< yours:sample.txt\n"
-"Conflict resolution is hard;\n"
-"let's go shopping.\n"
-"|||||||\n"
-"Conflict resolution is hard.\n"
-"=======\n"
-"Git makes conflict resolution easy.\n"
-">>>>>>> theirs:sample.txt\n"
-"And here is another line that is cleanly resolved or unmodified.\n"
+"AliasMatch ^/git/(.*/objects/[0-9a-f]{2}/[0-9a-f]{38})$          /var/www/git/$1\n"
+"AliasMatch ^/git/(.*/objects/pack/pack-[0-9a-f]{40}.(pack|idx))$ /var/www/git/$1\n"
+"ScriptAlias /git/ /usr/libexec/git-core/git-http-backend/\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:274
-msgid ""
-"In addition to the `<<<<<<<`, `=======`, and `>>>>>>>` markers, it uses "
-"another `|||||||` marker that is followed by the original text.  You can "
-"tell that the original just stated a fact, and your side simply gave in to "
-"that statement and gave up, while the other side tried to have a more "
-"positive attitude.  You can sometimes come up with a better resolution by "
-"viewing the original."
+#: en/git-http-backend.txt:178
+msgid "This can be combined with the gitweb configuration:"
 msgstr ""
 
-#. type: Title -
-#: en/git-merge.txt:277
+#. type: delimited block -
+#: en/git-http-backend.txt:191
 #, no-wrap
-msgid "HOW TO RESOLVE CONFLICTS"
+msgid ""
+"AliasMatch ^/git/(.*/objects/[0-9a-f]{2}/[0-9a-f]{38})$          /var/www/git/$1\n"
+"AliasMatch ^/git/(.*/objects/pack/pack-[0-9a-f]{40}.(pack|idx))$ /var/www/git/$1\n"
+"ScriptAliasMatch \\\n"
+"\t\"(?x)^/git/(.*/(HEAD | \\\n"
+"\t\t\tinfo/refs | \\\n"
+"\t\t\tobjects/info/[^/]+ | \\\n"
+"\t\t\tgit-(upload|receive)-pack))$\" \\\n"
+"\t/usr/libexec/git-core/git-http-backend/$1\n"
+"ScriptAlias /git/ /var/www/cgi-bin/gitweb.cgi/\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge.txt:280
-msgid "After seeing a conflict, you can do two things:"
+#. type: Labeled list
+#: en/git-http-backend.txt:193
+#, no-wrap
+msgid "Lighttpd"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:285
+#: en/git-http-backend.txt:197
 msgid ""
-"Decide not to merge.  The only clean-ups you need are to reset the index "
-"file to the `HEAD` commit to reverse 2. and to clean up working tree changes "
-"made by 2. and 3.; `git merge --abort` can be used for this."
+"Ensure that `mod_cgi`, `mod_alias`, `mod_auth`, `mod_setenv` are loaded, "
+"then set `GIT_PROJECT_ROOT` appropriately and redirect all requests to the "
+"CGI:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge.txt:289
+#. type: delimited block -
+#: en/git-http-backend.txt:207
+#, no-wrap
 msgid ""
-"Resolve the conflicts.  Git will mark the conflicts in the working tree.  "
-"Edit the files into shape and 'git add' them to the index.  Use 'git commit' "
-"to seal the deal."
+"alias.url += ( \"/git\" => \"/usr/lib/git-core/git-http-backend\" )\n"
+"$HTTP[\"url\"] =~ \"^/git\" {\n"
+"\tcgi.assign = (\"\" => \"\")\n"
+"\tsetenv.add-environment = (\n"
+"\t\t\"GIT_PROJECT_ROOT\" => \"/var/www/git\",\n"
+"\t\t\"GIT_HTTP_EXPORT_ALL\" => \"\"\n"
+"\t)\n"
+"}\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:291
-msgid "You can work through the conflict with a number of tools:"
+#: en/git-http-backend.txt:210
+msgid "To enable anonymous read access but authenticated write access:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge.txt:294
+#. type: delimited block -
+#: en/git-http-backend.txt:218
+#, no-wrap
 msgid ""
-"Use a mergetool.  `git mergetool` to launch a graphical mergetool which will "
-"work you through the merge."
+"$HTTP[\"querystring\"] =~ \"service=git-receive-pack\" {\n"
+"\tinclude \"git-auth.conf\"\n"
+"}\n"
+"$HTTP[\"url\"] =~ \"^/git/.*/git-receive-pack$\" {\n"
+"\tinclude \"git-auth.conf\"\n"
+"}\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:298
-msgid ""
-"Look at the diffs.  `git diff` will show a three-way diff, highlighting "
-"changes from both the `HEAD` and `MERGE_HEAD` versions."
+#: en/git-http-backend.txt:221
+msgid "where `git-auth.conf` looks something like:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-merge.txt:302
+#. type: delimited block -
+#: en/git-http-backend.txt:231
+#, no-wrap
 msgid ""
-"Look at the diffs from each branch. `git log --merge -p <path>` will show "
-"diffs first for the `HEAD` version and then the `MERGE_HEAD` version."
+"auth.require = (\n"
+"\t\"/\" => (\n"
+"\t\t\"method\" => \"basic\",\n"
+"\t\t\"realm\" => \"Git Access\",\n"
+"\t\t\"require\" => \"valid-user\"\n"
+"\t       )\n"
+")\n"
+"# ...and set up auth.backend here\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:307
+#: en/git-http-backend.txt:234
+msgid "To require authentication for both reads and writes:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-http-backend.txt:239
+#, no-wrap
 msgid ""
-"Look at the originals.  `git show :1:filename` shows the common ancestor, "
-"`git show :2:filename` shows the `HEAD` version, and `git show :3:filename` "
-"shows the `MERGE_HEAD` version."
+"$HTTP[\"url\"] =~ \"^/git/private\" {\n"
+"\tinclude \"git-auth.conf\"\n"
+"}\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:314
+#: en/git-http-backend.txt:246
 msgid ""
-"Merge branches `fixes` and `enhancements` on top of the current branch, "
-"making an octopus merge:"
+"'git http-backend' relies upon the `CGI` environment variables set by the "
+"invoking web server, including:"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-merge.txt:317
-#, no-wrap
-msgid "$ git merge fixes enhancements\n"
+#. type: Plain text
+#: en/git-http-backend.txt:248
+msgid "PATH_INFO (if GIT_PROJECT_ROOT is set, otherwise PATH_TRANSLATED)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:321
-msgid ""
-"Merge branch `obsolete` into the current branch, using `ours` merge "
-"strategy:"
+#: en/git-http-backend.txt:249
+msgid "REMOTE_USER"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-merge.txt:324
-#, no-wrap
-msgid "$ git merge -s ours obsolete\n"
+#. type: Plain text
+#: en/git-http-backend.txt:250
+msgid "REMOTE_ADDR"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:328
-msgid ""
-"Merge branch `maint` into the current branch, but do not make a new commit "
-"automatically:"
+#: en/git-http-backend.txt:251
+msgid "CONTENT_TYPE"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-merge.txt:331
-#, no-wrap
-msgid "$ git merge --no-commit maint\n"
+#. type: Plain text
+#: en/git-http-backend.txt:252
+msgid "QUERY_STRING"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:335
-msgid ""
-"This can be used when you want to include further changes to the merge, or "
-"want to write your own merge commit message."
+#: en/git-http-backend.txt:253
+msgid "REQUEST_METHOD"
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:339
+#: en/git-http-backend.txt:257
 msgid ""
-"You should refrain from abusing this option to sneak substantial changes "
-"into a merge commit.  Small fixups like bumping release/version name would "
-"be acceptable."
+"The `GIT_HTTP_EXPORT_ALL` environmental variable may be passed to 'git-http-"
+"backend' to bypass the check for the \"git-daemon-export-ok\" file in each "
+"repository before allowing export of that repository."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-merge.txt:347 en/config.txt:985
-#, no-wrap
-msgid "branch.<name>.mergeOptions"
+#. type: Plain text
+#: en/git-http-backend.txt:266
+msgid ""
+"The `GIT_HTTP_MAX_REQUEST_BUFFER` environment variable (or the `http."
+"maxRequestBuffer` config variable) may be set to change the largest ref "
+"negotiation request that git will handle during a fetch; any fetch requiring "
+"a larger buffer will not succeed.  This value should not normally need to be "
+"changed, but may be helpful if you are fetching from a repository with an "
+"extremely large number of refs.  The value can be specified with a unit (e."
+"g., `100M` for 100 megabytes). The default is 10 megabytes."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:351
+#: en/git-http-backend.txt:271
 msgid ""
-"Sets default options for merging into branch <name>. The syntax and "
-"supported options are the same as those of 'git merge', but option values "
-"containing whitespace characters are currently not supported."
+"The backend process sets GIT_COMMITTER_NAME to '$REMOTE_USER' and "
+"GIT_COMMITTER_EMAIL to '$\\{REMOTE_USER}@http.$\\{REMOTE_ADDR\\}', ensuring "
+"that any reflogs created by 'git-receive-pack' contain some identifying "
+"information of the remote user who performed the push."
 msgstr ""
 
 #. type: Plain text
-#: en/git-merge.txt:360
+#: en/git-http-backend.txt:274
 msgid ""
-"linkgit:git-fmt-merge-msg[1], linkgit:git-pull[1], linkgit:gitattributes[5], "
-"linkgit:git-reset[1], linkgit:git-diff[1], linkgit:git-ls-files[1], "
-"linkgit:git-add[1], linkgit:git-rm[1], linkgit:git-mergetool[1]"
+"All `CGI` environment variables are available to each of the hooks invoked "
+"by the 'git-receive-pack'."
 msgstr ""
 
 #. type: Title =
-#: en/git-mktag.txt:2
+#: en/git-http-fetch.txt:2
 #, no-wrap
-msgid "git-mktag(1)"
+msgid "git-http-fetch(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mktag.txt:7
-msgid "git-mktag - Creates a tag object"
+#: en/git-http-fetch.txt:7
+msgid "git-http-fetch - Download from a remote Git repository via HTTP"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mktag.txt:13
+#: en/git-http-fetch.txt:13
 #, no-wrap
-msgid "'git mktag'\n"
+msgid "'git http-fetch' [-c] [-t] [-a] [-d] [-v] [-w filename] [--recover] [--stdin] <commit> <url>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mktag.txt:18
-msgid ""
-"Reads a tag contents on standard input and creates a tag object that can "
-"also be used to sign other objects."
+#: en/git-http-fetch.txt:17
+msgid "Downloads a remote Git repository via HTTP."
 msgstr ""
 
 #. type: Plain text
-#: en/git-mktag.txt:20
-msgid "The output is the new tag's <object> identifier."
+#: en/git-http-fetch.txt:21
+msgid ""
+"This command always gets all objects. Historically, there were three options "
+"`-a`, `-c` and `-t` for choosing which objects to download. They are now "
+"silently ignored."
 msgstr ""
 
-#. type: Title -
-#: en/git-mktag.txt:22
+#. type: Labeled list
+#: en/git-http-fetch.txt:24
 #, no-wrap
-msgid "Tag Format"
+msgid "commit-id"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mktag.txt:25
-msgid ""
-"A tag signature file, to be fed to this command's standard input, has a very "
-"simple fixed format: four lines of"
+#: en/git-http-fetch.txt:27
+msgid "Either the hash or the filename under [URL]/refs/ to pull."
 msgstr ""
 
-#. type: Plain text
-#: en/git-mktag.txt:30
+#. type: Labeled list
+#: en/git-http-fetch.txt:28
 #, no-wrap
-msgid ""
-"  object <sha1>\n"
-"  type <typename>\n"
-"  tag <tagname>\n"
-"  tagger <tagger>\n"
+msgid "-a, -c, -t"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mktag.txt:36
-msgid ""
-"followed by some 'optional' free-form message (some tags created by older "
-"Git may not have `tagger` line).  The message, when exists, is separated by "
-"a blank line from the header.  The message part may contain a signature that "
-"Git itself doesn't care about, but that can be verified with gpg."
-msgstr ""
-
-#. type: Title =
-#: en/git-mktree.txt:2
-#, no-wrap
-msgid "git-mktree(1)"
+#: en/git-http-fetch.txt:30
+msgid "These options are ignored for historical reasons."
 msgstr ""
 
 #. type: Plain text
-#: en/git-mktree.txt:7
-msgid "git-mktree - Build a tree-object from ls-tree formatted text"
+#: en/git-http-fetch.txt:32
+msgid "Report what is downloaded."
 msgstr ""
 
-#. type: Plain text
-#: en/git-mktree.txt:13
+#. type: Labeled list
+#: en/git-http-fetch.txt:33
 #, no-wrap
-msgid "'git mktree' [-z] [--missing] [--batch]\n"
+msgid "-w <filename>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mktree.txt:20
+#: en/git-http-fetch.txt:36
 msgid ""
-"Reads standard input in non-recursive `ls-tree` output format, and creates a "
-"tree object.  The order of the tree entries is normalised by mktree so "
-"pre-sorting the input is not required.  The object name of the tree object "
-"built is written to the standard output."
+"Writes the commit-id into the filename under $GIT_DIR/refs/<filename> on the "
+"local end after the transfer is complete."
 msgstr ""
 
 #. type: Plain text
-#: en/git-mktree.txt:25
-msgid "Read the NUL-terminated `ls-tree -z` output instead."
+#: en/git-http-fetch.txt:40
+msgid ""
+"Instead of a commit id on the command line (which is not expected in this "
+"case), 'git http-fetch' expects lines on stdin in the format"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-mktree.txt:26
+#. type: Plain text
+#: en/git-http-fetch.txt:42
 #, no-wrap
-msgid "--missing"
+msgid "<commit-id>['\\t'<filename-as-in--w>]\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-mktree.txt:31
-msgid ""
-"Allow missing objects.  The default behaviour (without this option)  is to "
-"verify that each tree entry's sha1 identifies an existing object.  This "
-"option has no effect on the treatment of gitlink entries (aka "
-"\"submodules\") which are always allowed to be missing."
+#. type: Labeled list
+#: en/git-http-fetch.txt:43
+#, no-wrap
+msgid "--recover"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mktree.txt:37
+#: en/git-http-fetch.txt:46
 msgid ""
-"Allow building of more than one tree object before exiting.  Each tree is "
-"separated by as single blank line. The final new-line is optional.  Note - "
-"if the `-z` option is used, lines are terminated with NUL."
+"Verify that everything reachable from target is fetched.  Used after an "
+"earlier fetch is interrupted."
 msgstr ""
 
 #. type: Title =
-#: en/git-mv.txt:2
+#: en/git-http-push.txt:2
 #, no-wrap
-msgid "git-mv(1)"
+msgid "git-http-push(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mv.txt:7
-msgid "git-mv - Move or rename a file, a directory, or a symlink"
+#: en/git-http-push.txt:7
+msgid "git-http-push - Push objects over HTTP/DAV to another repository"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mv.txt:13
+#: en/git-http-push.txt:13
 #, no-wrap
-msgid "'git mv' <options>... <args>...\n"
+msgid "'git http-push' [--all] [--dry-run] [--force] [--verbose] <url> <ref> [<ref>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mv.txt:17
-msgid "Move or rename a file, directory or symlink."
+#: en/git-http-push.txt:18
+msgid ""
+"Sends missing objects to remote repository, and updates the remote branch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-mv.txt:20
+#: en/git-http-push.txt:22
 #, no-wrap
 msgid ""
-" git mv [-v] [-f] [-n] [-k] <source> <destination>\n"
-" git mv [-v] [-f] [-n] [-k] <source> ... <destination directory>\n"
+"*NOTE*: This command is temporarily disabled if your libcurl\n"
+"is older than 7.16, as the combination has been reported\n"
+"not to work and sometimes corrupts repository.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mv.txt:25
+#: en/git-http-push.txt:29
 msgid ""
-"In the first form, it renames <source>, which must exist and be either a "
-"file, symlink or directory, to <destination>.  In the second form, the last "
-"argument has to be an existing directory; the given sources will be moved "
-"into this directory."
+"Do not assume that the remote repository is complete in its current state, "
+"and verify all objects in the entire local ref's history exist in the remote "
+"repository."
 msgstr ""
 
 #. type: Plain text
-#: en/git-mv.txt:28
+#: en/git-http-push.txt:36 en/git-send-pack.txt:60
 msgid ""
-"The index is updated after successful completion, but the change must still "
-"be committed."
+"Usually, the command refuses to update a remote ref that is not an ancestor "
+"of the local ref used to overwrite it.  This flag disables the check.  What "
+"this means is that the remote repository can lose commits; use it with care."
 msgstr ""
 
 #. type: Plain text
-#: en/git-mv.txt:34
-msgid "Force renaming or moving of a file even if the target exists"
+#: en/git-http-push.txt:39 en/git-push.txt:175 en/git-send-pack.txt:53
+msgid "Do everything except actually send the updates."
 msgstr ""
 
 #. type: Plain text
-#: en/git-mv.txt:39
+#: en/git-http-push.txt:43
 msgid ""
-"Skip move or rename actions which would lead to an error condition. An error "
-"happens when a source is neither existing nor controlled by Git, or when it "
-"would overwrite an existing file unless `-f` is given."
+"Report the list of objects being walked locally and the list of objects "
+"successfully sent to the remote repository."
 msgstr ""
 
 #. type: Plain text
-#: en/git-mv.txt:42
-msgid "Do nothing; only show what would happen"
+#: en/git-http-push.txt:49
+msgid ""
+"Remove <ref> from remote repository.  The specified branch cannot be the "
+"remote HEAD.  If -d is specified the following other conditions must also be "
+"met:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mv.txt:46
-msgid "Report the names of files as they are moved."
-msgstr ""
-
-#. type: Title -
-#: en/git-mv.txt:48 en/git-rm.txt:138
-#, no-wrap
-msgid "SUBMODULES"
+#: en/git-http-push.txt:51
+msgid "Remote HEAD must resolve to an object that exists locally"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mv.txt:54
-msgid ""
-"Moving a submodule using a gitfile (which means they were cloned with a Git "
-"version 1.7.8 or newer) will update the gitfile and core.worktree setting to "
-"make the submodule work in the new location.  It also will attempt to update "
-"the submodule.<name>.path setting in the linkgit:gitmodules[5] file and "
-"stage that file (unless -n is used)."
+#: en/git-http-push.txt:52
+msgid "Specified branch resolves to an object that exists locally"
 msgstr ""
 
 #. type: Plain text
-#: en/git-mv.txt:66
-msgid ""
-"Each time a superproject update moves a populated submodule (e.g. when "
-"switching between commits before and after the move) a stale submodule "
-"checkout will remain in the old location and an empty directory will appear "
-"in the new location. To populate the submodule again in the new location the "
-"user will have to run \"git submodule update\" afterwards. Removing the old "
-"directory is only safe when it uses a gitfile, as otherwise the history of "
-"the submodule will be deleted too. Both steps will be obsolete when "
-"recursive submodule update has been implemented."
+#: en/git-http-push.txt:53
+msgid "Specified branch is an ancestor of the remote HEAD"
 msgstr ""
 
-#. type: Title =
-#: en/git-name-rev.txt:2
+#. type: Labeled list
+#: en/git-http-push.txt:54 en/git-send-pack.txt:98
 #, no-wrap
-msgid "git-name-rev(1)"
+msgid "<ref>..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-name-rev.txt:7
-msgid "git-name-rev - Find symbolic names for given revs"
+#: en/git-http-push.txt:56 en/git-send-pack.txt:100
+msgid "The remote refs to update."
 msgstr ""
 
-#. type: Plain text
-#: en/git-name-rev.txt:14
+#. type: Title -
+#: en/git-http-push.txt:59 en/git-send-pack.txt:103
 #, no-wrap
-msgid ""
-"'git name-rev' [--tags] [--refs=<pattern>]\n"
-"\t       ( --all | --stdin | <commit-ish>... )\n"
+msgid "SPECIFYING THE REFS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-name-rev.txt:19
+#: en/git-http-push.txt:65
 msgid ""
-"Finds symbolic names suitable for human digestion for revisions given in any "
-"format parsable by 'git rev-parse'."
+"A '<ref>' specification can be either a single pattern, or a pair of such "
+"patterns separated by a colon \":\" (this means that a ref name cannot have "
+"a colon in it).  A single pattern '<name>' is just a shorthand for '<name>:"
+"<name>'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-name-rev.txt:26
-msgid "Do not use branch names, but only tags to name the commits"
+#: en/git-http-push.txt:71
+msgid ""
+"Each pattern pair consists of the source side (before the colon)  and the "
+"destination side (after the colon).  The ref to be pushed is determined by "
+"finding a match that matches the source side, and where it is pushed is "
+"determined by using the destination side."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-name-rev.txt:27
-#, no-wrap
-msgid "--refs=<pattern>"
+#. type: Plain text
+#: en/git-http-push.txt:74 en/git-send-pack.txt:131
+msgid "It is an error if <src> does not match exactly one of the local refs."
 msgstr ""
 
 #. type: Plain text
-#: en/git-name-rev.txt:32
-msgid ""
-"Only use refs whose names match a given shell pattern.  The pattern can be "
-"one of branch name, tag name or fully qualified ref name. If given multiple "
-"times, use refs whose names match any of the given shell patterns. Use "
-"`--no-refs` to clear any previous ref patterns given."
+#: en/git-http-push.txt:76 en/git-send-pack.txt:135
+msgid "If <dst> does not match any remote ref, either"
 msgstr ""
 
 #. type: Plain text
-#: en/git-name-rev.txt:41
+#: en/git-http-push.txt:79 en/git-send-pack.txt:138
 msgid ""
-"Do not use any ref whose name matches a given shell pattern. The pattern can "
-"be one of branch name, tag name or fully qualified ref name. If given "
-"multiple times, a ref will be excluded when it matches any of the given "
-"patterns. When used together with --refs, a ref will be used as a match only "
-"when it matches at least one --refs pattern and does not match any --exclude "
-"patterns. Use `--no-exclude` to clear the list of exclude patterns."
+"it has to start with \"refs/\"; <dst> is used as the destination literally "
+"in this case."
 msgstr ""
 
 #. type: Plain text
-#: en/git-name-rev.txt:44
-msgid "List all commits reachable from all refs"
+#: en/git-http-push.txt:83 en/git-send-pack.txt:142
+msgid ""
+"<src> == <dst> and the ref that matched the <src> must not exist in the set "
+"of remote refs; the ref matched <src> locally is used as the name of the "
+"destination."
 msgstr ""
 
 #. type: Plain text
-#: en/git-name-rev.txt:50
+#: en/git-http-push.txt:89 en/git-send-pack.txt:148
 msgid ""
-"Transform stdin by substituting all the 40-character SHA-1 hexes (say $hex) "
-"with \"$hex ($rev_name)\".  When used with --name-only, substitute with "
-"\"$rev_name\", omitting $hex altogether.  Intended for the scripter's use."
+"Without `--force`, the <src> ref is stored at the remote only if <dst> does "
+"not exist, or <dst> is a proper subset (i.e. an ancestor) of <src>.  This "
+"check, known as \"fast-forward check\", is performed in order to avoid "
+"accidentally overwriting the remote ref and lose other peoples' commits from "
+"there."
 msgstr ""
 
 #. type: Plain text
-#: en/git-name-rev.txt:56
+#: en/git-http-push.txt:91 en/git-send-pack.txt:150
+msgid "With `--force`, the fast-forward check is disabled for all refs."
+msgstr ""
+
+#. type: Plain text
+#: en/git-http-push.txt:94 en/git-send-pack.txt:153
 msgid ""
-"Instead of printing both the SHA-1 and the name, print only the name.  If "
-"given with --tags the usual tag prefix of \"tags/\" is also omitted from the "
-"name, matching the output of `git-describe` more closely."
+"Optionally, a <ref> parameter can be prefixed with a plus '+' sign to "
+"disable the fast-forward check only on that ref."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-name-rev.txt:57
+#. type: Title =
+#: en/git-imap-send.txt:2
 #, no-wrap
-msgid "--no-undefined"
+msgid "git-imap-send(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-name-rev.txt:60
+#: en/git-imap-send.txt:7
 msgid ""
-"Die with error code != 0 when a reference is undefined, instead of printing "
-"`undefined`."
+"git-imap-send - Send a collection of patches from stdin to an IMAP folder"
 msgstr ""
 
 #. type: Plain text
-#: en/git-name-rev.txt:71
-msgid ""
-"Given a commit, find out where it is relative to the local refs. Say "
-"somebody wrote you about that fantastic commit "
-"33db5f4d9027a10e477ccf054b2c1ab94f74c85a.  Of course, you look into the "
-"commit, but that only tells you what happened, but not the context."
+#: en/git-imap-send.txt:13
+#, no-wrap
+msgid "'git imap-send' [-v] [-q] [--[no-]curl]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-name-rev.txt:73
-msgid "Enter 'git name-rev':"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-name-rev.txt:77
-#, no-wrap
+#: en/git-imap-send.txt:23
 msgid ""
-"% git name-rev 33db5f4d9027a10e477ccf054b2c1ab94f74c85a\n"
-"33db5f4d9027a10e477ccf054b2c1ab94f74c85a tags/v0.99~940\n"
+"This command uploads a mailbox generated with 'git format-patch' into an "
+"IMAP drafts folder.  This allows patches to be sent as other email is when "
+"using mail clients that cannot read mailbox files directly. The command also "
+"works with any general mailbox in which emails have the fields \"From\", "
+"\"Date\", and \"Subject\" in that order."
 msgstr ""
 
 #. type: Plain text
-#: en/git-name-rev.txt:80
-msgid ""
-"Now you are wiser, because you know that it happened 940 revisions before "
-"v0.99."
+#: en/git-imap-send.txt:25
+msgid "Typical usage is something like:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-name-rev.txt:82
-msgid "Another nice thing you can do is:"
+#: en/git-imap-send.txt:27
+msgid "git format-patch --signoff --stdout --attach origin | git imap-send"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-name-rev.txt:85
-#, no-wrap
-msgid "% git log | git name-rev --stdin\n"
+#. type: Plain text
+#: en/git-imap-send.txt:39
+msgid "Be quiet."
 msgstr ""
 
-#. type: Title =
-#: en/git-notes.txt:2
+#. type: Labeled list
+#: en/git-imap-send.txt:40
 #, no-wrap
-msgid "git-notes(1)"
+msgid "--curl"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:7
-msgid "git-notes - Add or inspect object notes"
+#: en/git-imap-send.txt:44
+msgid ""
+"Use libcurl to communicate with the IMAP server, unless tunneling into it.  "
+"Ignored if Git was built without the USE_CURL_FOR_IMAP_SEND option set."
 msgstr ""
 
-#. type: Plain text
-#: en/git-notes.txt:23
+#. type: Labeled list
+#: en/git-imap-send.txt:45
 #, no-wrap
-msgid ""
-"'git notes' [list [<object>]]\n"
-"'git notes' add [-f] [--allow-empty] [-F <file> | -m <msg> | (-c | -C) "
-"<object>] [<object>]\n"
-"'git notes' copy [-f] ( --stdin | <from-object> <to-object> )\n"
-"'git notes' append [--allow-empty] [-F <file> | -m <msg> | (-c | -C) "
-"<object>] [<object>]\n"
-"'git notes' edit [--allow-empty] [<object>]\n"
-"'git notes' show [<object>]\n"
-"'git notes' merge [-v | -q] [-s <strategy> ] <notes-ref>\n"
-"'git notes' merge --commit [-v | -q]\n"
-"'git notes' merge --abort [-v | -q]\n"
-"'git notes' remove [--ignore-missing] [--stdin] [<object>...]\n"
-"'git notes' prune [-n | -v]\n"
-"'git notes' get-ref\n"
+msgid "--no-curl"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:29
+#: en/git-imap-send.txt:49
 msgid ""
-"Adds, removes, or reads notes attached to objects, without touching the "
-"objects themselves."
+"Talk to the IMAP server using git's own IMAP routines instead of using "
+"libcurl.  Ignored if Git was built with the NO_OPENSSL option set."
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:34
+#: en/git-imap-send.txt:56
 msgid ""
-"By default, notes are saved to and read from `refs/notes/commits`, but this "
-"default can be overridden.  See the OPTIONS, CONFIGURATION, and ENVIRONMENT "
-"sections below.  If this ref does not exist, it will be quietly created when "
-"it is first needed to store a note."
+"To use the tool, imap.folder and either imap.tunnel or imap.host must be set "
+"to appropriate values."
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:41
-msgid ""
-"A typical use of notes is to supplement a commit message without changing "
-"the commit itself. Notes can be shown by 'git log' along with the original "
-"commit message. To distinguish these notes from the message stored in the "
-"commit object, the notes are indented like the message, after an unindented "
-"line saying \"Notes (<refname>):\" (or \"Notes:\" for `refs/notes/commits`)."
+#: en/git-imap-send.txt:66
+msgid "Using tunnel mode:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-notes.txt:45
+#. type: delimited block .
+#: en/git-imap-send.txt:71
+#, no-wrap
 msgid ""
-"Notes can also be added to patches prepared with `git format-patch` by using "
-"the `--notes` option. Such notes are added as a patch commentary after a "
-"three dash separator line."
+"[imap]\n"
+"    folder = \"INBOX.Drafts\"\n"
+"    tunnel = \"ssh -q -C user@example.com /usr/bin/imapd ./Maildir 2> /dev/null\"\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:48
-msgid ""
-"To change which notes are shown by 'git log', see the \"notes.displayRef\" "
-"configuration in linkgit:git-log[1]."
+#: en/git-imap-send.txt:74
+msgid "Using direct mode:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-notes.txt:51
+#. type: delimited block .
+#: en/git-imap-send.txt:81
+#, no-wrap
 msgid ""
-"See the \"notes.rewrite.<command>\" configuration for a way to carry notes "
-"across commands that rewrite commits."
+"[imap]\n"
+"    folder = \"INBOX.Drafts\"\n"
+"    host = imap://imap.example.com\n"
+"    user = bob\n"
+"    pass = p4ssw0rd\n"
 msgstr ""
 
-#. type: Title -
-#: en/git-notes.txt:54
-#, no-wrap
-msgid "SUBCOMMANDS"
+#. type: Plain text
+#: en/git-imap-send.txt:84
+msgid "Using direct mode with SSL:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-notes.txt:56 en/git-worktree.txt:59
+#. type: delimited block .
+#: en/git-imap-send.txt:93
 #, no-wrap
-msgid "list"
+msgid ""
+"[imap]\n"
+"    folder = \"INBOX.Drafts\"\n"
+"    host = imaps://imap.example.com\n"
+"    user = bob\n"
+"    pass = p4ssw0rd\n"
+"    port = 123\n"
+"    sslverify = false\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:61
+#: en/git-imap-send.txt:100
 msgid ""
-"List the notes object for a given object. If no object is given, show a list "
-"of all note objects and the objects they annotate (in the format \"<note "
-"object> <annotated object>\").  This is the default subcommand if no "
-"subcommand is given."
+"To submit patches using GMail's IMAP interface, first, edit your ~/."
+"gitconfig to specify your account settings:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-notes.txt:62
+#. type: delimited block -
+#: en/git-imap-send.txt:108
 #, no-wrap
-msgid "add"
+msgid ""
+"[imap]\n"
+"\tfolder = \"[Gmail]/Drafts\"\n"
+"\thost = imaps://imap.gmail.com\n"
+"\tuser = user@gmail.com\n"
+"\tport = 993\n"
+"\tsslverify = false\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:69
+#: en/git-imap-send.txt:112
 msgid ""
-"Add notes for a given object (defaults to HEAD). Abort if the object already "
-"has notes (use `-f` to overwrite existing notes).  However, if you're using "
-"`add` interactively (using an editor to supply the notes contents), then - "
-"instead of aborting - the existing notes will be opened in the editor (like "
-"the `edit` subcommand)."
+"You might need to instead use: folder = \"[Google Mail]/Drafts\" if you get "
+"an error that the \"Folder doesn't exist\"."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-notes.txt:70
-#, no-wrap
-msgid "copy"
+#. type: Plain text
+#: en/git-imap-send.txt:114
+msgid "Once the commits are ready to be sent, run the following command:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:76
-msgid ""
-"Copy the notes for the first object onto the second object.  Abort if the "
-"second object already has notes, or if the first object has none (use -f to "
-"overwrite existing notes to the second object). This subcommand is "
-"equivalent to: `git notes add [-f] -C $(git notes list <from-object>) "
-"<to-object>`"
+#: en/git-imap-send.txt:116
+#, no-wrap
+msgid "  $ git format-patch --cover-letter -M --stdout origin/master | git imap-send\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:78
-msgid "In `--stdin` mode, take lines in the format"
+#: en/git-imap-send.txt:120
+msgid ""
+"Just make sure to disable line wrapping in the email client (GMail's web "
+"interface will wrap lines no matter what, so you need to use a real IMAP "
+"client)."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-notes.txt:81
+#. type: Title -
+#: en/git-imap-send.txt:122
 #, no-wrap
-msgid "<from-object> SP <to-object> [ SP <rest> ] LF\n"
+msgid "CAUTION"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:86
+#: en/git-imap-send.txt:129
 msgid ""
-"on standard input, and copy the notes from each <from-object> to its "
-"corresponding <to-object>.  (The optional `<rest>` is ignored so that the "
-"command can read the input given to the `post-rewrite` hook.)"
+"It is still your responsibility to make sure that the email message sent by "
+"your email program meets the standards of your project.  Many projects do "
+"not like patches to be attached.  Some mail agents will transform patches (e."
+"g. wrap lines, send them as format=flowed) in ways that make them fail.  You "
+"will get angry flames ridiculing you if you don't check this."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-notes.txt:87
+#. type: Plain text
+#: en/git-imap-send.txt:133
 #, no-wrap
-msgid "append"
+msgid ""
+"Thunderbird in particular is known to be problematic.  Thunderbird\n"
+"users may wish to visit this web page for more information:\n"
+"  http://kb.mozillazine.org/Plain_text_e-mail_-_Thunderbird#Completely_plain_email\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:90
-msgid ""
-"Append to the notes of an existing object (defaults to HEAD).  Creates a new "
-"notes object if needed."
+#: en/git-imap-send.txt:137
+msgid "linkgit:git-format-patch[1], linkgit:git-send-email[1], mbox(5)"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-notes.txt:91
+#. type: Title =
+#: en/git-index-pack.txt:2
 #, no-wrap
-msgid "edit"
+msgid "git-index-pack(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:93
-msgid "Edit the notes for a given object (defaults to HEAD)."
+#: en/git-index-pack.txt:7
+msgid "git-index-pack - Build pack index file for an existing packed archive"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-notes.txt:94
+#. type: Plain text
+#: en/git-index-pack.txt:15
 #, no-wrap
-msgid "show"
+msgid ""
+"'git index-pack' [-v] [-o <index-file>] <pack-file>\n"
+"'git index-pack' --stdin [--fix-thin] [--keep] [-v] [-o <index-file>]\n"
+"                 [<pack-file>]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:96
-msgid "Show the notes for a given object (defaults to HEAD)."
+#: en/git-index-pack.txt:23
+msgid ""
+"Reads a packed archive (.pack) from the specified file, and builds a pack "
+"index file (.idx) for it.  The packed archive together with the pack index "
+"can then be placed in the objects/pack/ directory of a Git repository."
+msgstr ""
+
+#. type: Plain text
+#: en/git-index-pack.txt:29
+msgid "Be verbose about what is going on, including progress status."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-notes.txt:97 en/git-submodule.txt:183
+#: en/git-index-pack.txt:30
 #, no-wrap
-msgid "merge"
+msgid "-o <index-file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:102
+#: en/git-index-pack.txt:37
 msgid ""
-"Merge the given notes ref into the current notes ref.  This will try to "
-"merge the changes made by the given notes ref (called \"remote\") since the "
-"merge-base (if any) into the current notes ref (called \"local\")."
+"Write the generated pack index into the specified file.  Without this option "
+"the name of pack index file is constructed from the name of packed archive "
+"file by replacing .pack with .idx (and the program fails if the name of "
+"packed archive does not end with .pack)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:111
+#: en/git-index-pack.txt:47
 msgid ""
-"If conflicts arise and a strategy for automatically resolving conflicting "
-"notes (see the \"NOTES MERGE STRATEGIES\" section) is not given, the "
-"\"manual\" resolver is used. This resolver checks out the conflicting notes "
-"in a special worktree (`.git/NOTES_MERGE_WORKTREE`), and instructs the user "
-"to manually resolve the conflicts there.  When done, the user can either "
-"finalize the merge with 'git notes merge --commit', or abort the merge with "
-"'git notes merge --abort'."
+"When this flag is provided, the pack is read from stdin instead and a copy "
+"is then written to <pack-file>. If <pack-file> is not specified, the pack is "
+"written to objects/pack/ directory of the current Git repository with a "
+"default name determined from the pack content.  If <pack-file> is not "
+"specified consider using --keep to prevent a race condition between this "
+"process and 'git repack'."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-notes.txt:112
+#: en/git-index-pack.txt:48
 #, no-wrap
-msgid "remove"
+msgid "--fix-thin"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:117
+#: en/git-index-pack.txt:53
 msgid ""
-"Remove the notes for given objects (defaults to HEAD). When giving zero or "
-"one object from the command line, this is equivalent to specifying an empty "
-"note message to the `edit` subcommand."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-notes.txt:118 en/git-worktree.txt:74
-#, no-wrap
-msgid "prune"
+"Fix a \"thin\" pack produced by `git pack-objects --thin` (see linkgit:git-"
+"pack-objects[1] for details) by adding the excluded objects the deltified "
+"objects are based on to the pack. This option only makes sense in "
+"conjunction with --stdin."
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:120
-msgid "Remove all notes for non-existing/unreachable objects."
+#: en/git-index-pack.txt:61
+msgid ""
+"Before moving the index into its final destination create an empty .keep "
+"file for the associated pack file.  This option is usually necessary with --"
+"stdin to prevent a simultaneous 'git repack' process from deleting the newly "
+"constructed pack and index before refs can be updated to use objects "
+"contained in the pack."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-notes.txt:121
+#: en/git-index-pack.txt:62
 #, no-wrap
-msgid "get-ref"
+msgid "--keep=<msg>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:124
+#: en/git-index-pack.txt:68
 msgid ""
-"Print the current notes ref. This provides an easy way to retrieve the "
-"current notes ref (e.g. from scripts)."
+"Like --keep create a .keep file before moving the index into its final "
+"destination, but rather than creating an empty file place '<msg>' followed "
+"by an LF into the .keep file.  The '<msg>' message can later be searched for "
+"within all .keep files to locate any which have outlived their usefulness."
 msgstr ""
 
-#. type: Plain text
-#: en/git-notes.txt:131
-msgid ""
-"When adding notes to an object that already has notes, overwrite the "
-"existing notes (instead of aborting)."
+#. type: Labeled list
+#: en/git-index-pack.txt:69 en/git-pack-objects.txt:249
+#, no-wrap
+msgid "--index-version=<version>[,<offset>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:139
+#: en/git-index-pack.txt:73 en/git-pack-objects.txt:253
 msgid ""
-"Use the given note message (instead of prompting).  If multiple `-m` options "
-"are given, their values are concatenated as separate paragraphs.  Lines "
-"starting with `#` and empty lines other than a single line between "
-"paragraphs will be stripped out."
+"This is intended to be used by the test suite only. It allows to force the "
+"version for the generated pack index, and to force 64-bit index entries on "
+"objects located above the given offset."
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:146
-msgid ""
-"Take the note message from the given file.  Use '-' to read the note message "
-"from the standard input.  Lines starting with `#` and empty lines other than "
-"a single line between paragraphs will be stripped out."
+#: en/git-index-pack.txt:76
+msgid "Die, if the pack contains broken objects or links."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-notes.txt:147
-#, no-wrap
-msgid "-C <object>"
+#. type: Plain text
+#: en/git-index-pack.txt:79
+msgid "Die if the pack contains broken links. For internal use only."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-notes.txt:148
+#: en/git-index-pack.txt:80
 #, no-wrap
-msgid "--reuse-message=<object>"
+msgid "--fsck-objects"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:152
-msgid ""
-"Take the given blob object (for\texample, another note) as the note "
-"message. (Use `git notes copy <object>` instead to copy notes between "
-"objects.)"
+#: en/git-index-pack.txt:82
+msgid "Die if the pack contains broken objects. For internal use only."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-notes.txt:153
+#: en/git-index-pack.txt:83 en/git-pack-objects.txt:239 en/git-repack.txt:102
 #, no-wrap
-msgid "-c <object>"
+msgid "--threads=<n>"
+msgstr ""
+
+#. type: Plain text
+#: en/git-index-pack.txt:92
+msgid ""
+"Specifies the number of threads to spawn when resolving deltas. This "
+"requires that index-pack be compiled with pthreads otherwise this option is "
+"ignored with a warning.  This is meant to reduce packing time on "
+"multiprocessor machines. The required amount of memory for the delta search "
+"window is however multiplied by the number of threads.  Specifying 0 will "
+"cause Git to auto-detect the number of CPU's and use maximum 3 threads."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-notes.txt:154
+#: en/git-index-pack.txt:93 en/git-unpack-objects.txt:47
 #, no-wrap
-msgid "--reedit-message=<object>"
+msgid "--max-input-size=<size>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:157
-msgid ""
-"Like '-C', but with `-c` the editor is invoked, so that the user can further "
-"edit the note message."
+#: en/git-index-pack.txt:95 en/git-unpack-objects.txt:49
+msgid "Die, if the pack is larger than <size>."
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:161
+#: en/git-index-pack.txt:103
 msgid ""
-"Allow an empty note object to be stored. The default behavior is to "
-"automatically remove empty notes."
+"Once the index has been created, the list of object names is sorted and the "
+"SHA-1 hash of that list is printed to stdout. If --stdin was also used then "
+"this is prefixed by either \"pack\\t\", or \"keep\\t\" if a new .keep file "
+"was successfully created. This is useful to remove a"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-notes.txt:162
+#. type: Block title
+#: en/git-index-pack.txt:103
 #, no-wrap
-msgid "--ref <ref>"
+msgid "keep file used as a lock to prevent the race with 'git repack'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:168
-msgid ""
-"Manipulate the notes tree in <ref>.  This overrides `GIT_NOTES_REF` and the "
-"\"core.notesRef\" configuration.  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."
+#: en/git-index-pack.txt:105
+msgid "mentioned above."
+msgstr ""
+
+#. type: Title =
+#: en/git-init-db.txt:2
+#, no-wrap
+msgid "git-init-db(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:172
-msgid ""
-"Do not consider it an error to request removing notes from an object that "
-"does not have notes attached to it."
+#: en/git-init-db.txt:7
+msgid "git-init-db - Creates an empty Git repository"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:177
-msgid ""
-"Also read the object names to remove notes from from the standard input "
-"(there is no reason you cannot combine this with object names from the "
-"command line)."
+#: en/git-init-db.txt:13
+#, no-wrap
+msgid "'git init-db' [-q | --quiet] [--bare] [--template=<template_directory>] [--separate-git-dir <git dir>] [--shared[=<permissions>]]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:182
+#: en/git-init-db.txt:20
 msgid ""
-"Do not remove anything; just report the object names whose notes would be "
-"removed."
+"This is a synonym for linkgit:git-init[1].  Please refer to the "
+"documentation of that command."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-notes.txt:183 en/git-rebase.txt:282 en/merge-options.txt:77
+#. type: Title =
+#: en/git-init.txt:2
 #, no-wrap
-msgid "-s <strategy>"
+msgid "git-init(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:191
+#: en/git-init.txt:7
 msgid ""
-"When merging notes, resolve notes conflicts using the given strategy. The "
-"following strategies are recognized: \"manual\" (default), \"ours\", "
-"\"theirs\", \"union\" and \"cat_sort_uniq\".  This option overrides the "
-"\"notes.mergeStrategy\" configuration setting.  See the \"NOTES MERGE "
-"STRATEGIES\" section below for more information on each notes merge "
-"strategy."
+"git-init - Create an empty Git repository or reinitialize an existing one"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-notes.txt:192 en/merge-options.txt:1
+#. type: Plain text
+#: en/git-init.txt:15
 #, no-wrap
-msgid "--commit"
+msgid ""
+"'git init' [-q | --quiet] [--bare] [--template=<template_directory>]\n"
+"\t  [--separate-git-dir <git dir>]\n"
+"\t  [--shared[=<permissions>]] [directory]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:200
+#: en/git-init.txt:24
 msgid ""
-"Finalize an in-progress 'git notes merge'. Use this option when you have "
-"resolved the conflicts that 'git notes merge' stored in "
-".git/NOTES_MERGE_WORKTREE. This amends the partial merge commit created by "
-"'git notes merge' (stored in .git/NOTES_MERGE_PARTIAL) by adding the notes "
-"in .git/NOTES_MERGE_WORKTREE. The notes ref stored in the "
-".git/NOTES_MERGE_REF symref is updated to the resulting commit."
+"This command creates an empty Git repository - basically a `.git` directory "
+"with subdirectories for `objects`, `refs/heads`, `refs/tags`, and template "
+"files.  An initial `HEAD` file that references the HEAD of the master branch "
+"is also created."
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:205
+#: en/git-init.txt:27
 msgid ""
-"Abort/reset a in-progress 'git notes merge', i.e. a notes merge with "
-"conflicts. This simply removes all files related to the notes merge."
+"If the `$GIT_DIR` environment variable is set then it specifies a path to "
+"use instead of `./.git` for the base of the repository."
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:209
-msgid "When merging notes, operate quietly."
+#: en/git-init.txt:32
+msgid ""
+"If the object storage directory is specified via the `$GIT_OBJECT_DIRECTORY` "
+"environment variable then the sha1 directories are created underneath - "
+"otherwise the default `$GIT_DIR/objects` directory is used."
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:215
+#: en/git-init.txt:37
 msgid ""
-"When merging notes, be more verbose.  When pruning notes, report all object "
-"names whose notes are removed."
+"Running 'git init' in an existing repository is safe. It will not overwrite "
+"things that are already there. The primary reason for rerunning 'git init' "
+"is to pick up newly added templates (or to move the repository to another "
+"place if --separate-git-dir is given)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:229
+#: en/git-init.txt:45
 msgid ""
-"Commit notes are blobs containing extra information about an object (usually "
-"information to supplement a commit's message).  These blobs are taken from "
-"notes refs.  A notes ref is usually a branch which contains \"files\" whose "
-"paths are the object names for the objects they describe, with some "
-"directory separators included for performance reasons footnote:[Permitted "
-"pathnames have the form 'ab'`/`'cd'`/`'ef'`/`'...'`/`'abcdef...': a sequence "
-"of directory names of two hexadecimal digits each followed by a filename "
-"with the rest of the object ID.]."
+"Only print error and warning messages; all other output will be suppressed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:236
+#: en/git-init.txt:50
 msgid ""
-"Every notes change creates a new commit at the specified notes ref.  You can "
-"therefore inspect the history of the notes by invoking, e.g., `git log -p "
-"notes/commits`.  Currently the commit message only records which operation "
-"triggered the update, and the commit authorship is determined according to "
-"the usual rules (see linkgit:git-commit[1]).  These details may change in "
-"the future."
+"Create a bare repository. If `GIT_DIR` environment is not set, it is set to "
+"the current working directory."
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:240
+#: en/git-init.txt:55
 msgid ""
-"It is also permitted for a notes ref to point directly to a tree object, in "
-"which case the history of the notes can be read with `git log -p -g "
-"<refname>`."
-msgstr ""
-
-#. type: Title -
-#: en/git-notes.txt:243
-#, no-wrap
-msgid "NOTES MERGE STRATEGIES"
+"Specify the directory from which templates will be used.  (See the "
+"\"TEMPLATE DIRECTORY\" section below.)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:252
+#: en/git-init.txt:62
 msgid ""
-"The default notes merge strategy is \"manual\", which checks out conflicting "
-"notes in a special work tree for resolving notes conflicts "
-"(`.git/NOTES_MERGE_WORKTREE`), and instructs the user to resolve the "
-"conflicts in that work tree.  When done, the user can either finalize the "
-"merge with 'git notes merge --commit', or abort the merge with 'git notes "
-"merge --abort'."
+"Instead of initializing the repository as a directory to either `$GIT_DIR` "
+"or `./.git/`, create a text file there containing the path to the actual "
+"repository.  This file acts as filesystem-agnostic Git symbolic link to the "
+"repository."
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:255
+#: en/git-init.txt:64
 msgid ""
-"Users may select an automated merge strategy from among the following using "
-"either -s/--strategy option or configuring notes.mergeStrategy accordingly:"
+"If this is reinitialization, the repository will be moved to the specified "
+"path."
 msgstr ""
 
-#. type: Plain text
-#: en/git-notes.txt:258
-msgid ""
-"\"ours\" automatically resolves conflicting notes in favor of the local "
-"version (i.e. the current notes ref)."
+#. type: Labeled list
+#: en/git-init.txt:65
+#, no-wrap
+msgid "--shared[=(false|true|umask|group|all|world|everybody|0xxx)]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:262
+#: en/git-init.txt:73
 msgid ""
-"\"theirs\" automatically resolves notes conflicts in favor of the remote "
-"version (i.e. the given notes ref being merged into the current notes ref)."
+"Specify that the Git repository is to be shared amongst several users.  This "
+"allows users belonging to the same group to push into that repository.  When "
+"specified, the config variable \"core.sharedRepository\" is set so that "
+"files and directories under `$GIT_DIR` are created with the requested "
+"permissions.  When not specified, Git will use permissions reported by "
+"umask(2)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:265
+#: en/git-init.txt:76
 msgid ""
-"\"union\" automatically resolves notes conflicts by concatenating the local "
-"and remote versions."
+"The option can have the following values, defaulting to 'group' if no value "
+"is given:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-notes.txt:275
-msgid ""
-"\"cat_sort_uniq\" is similar to \"union\", but in addition to concatenating "
-"the local and remote versions, this strategy also sorts the resulting lines, "
-"and removes duplicate lines from the result. This is equivalent to applying "
-"the \"cat | sort | uniq\" shell pipeline to the local and remote "
-"versions. This strategy is useful if the notes follow a line-based format "
-"where one wants to avoid duplicated lines in the merge result.  Note that if "
-"either the local or remote version contain duplicate lines prior to the "
-"merge, these will also be removed by this notes merge strategy."
+#. type: Labeled list
+#: en/git-init.txt:78
+#, no-wrap
+msgid "'umask' (or 'false')"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:282
+#: en/git-init.txt:82
 msgid ""
-"You can use notes to add annotations with information that was not available "
-"at the time a commit was written."
+"Use permissions reported by umask(2). The default, when `--shared` is not "
+"specified."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-notes.txt:288
+#. type: Labeled list
+#: en/git-init.txt:83
 #, no-wrap
+msgid "'group' (or 'true')"
+msgstr ""
+
+#. type: Plain text
+#: en/git-init.txt:91
 msgid ""
-"$ git notes add -m 'Tested-by: Johannes Sixt <j6t@kdbg.org>' 72a144e2\n"
-"$ git show -s 72a144e\n"
-"[...]\n"
-"    Signed-off-by: Junio C Hamano <gitster@pobox.com>\n"
+"Make the repository group-writable, (and g+sx, since the git group may be "
+"not the primary group of all users). This is used to loosen the permissions "
+"of an otherwise safe umask(2) value. Note that the umask still applies to "
+"the other permission bits (e.g. if umask is '0022', using 'group' will not "
+"remove read privileges from other (non-group) users). See '0xxx' for how to "
+"exactly specify the repository permissions."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-notes.txt:291
+#. type: Labeled list
+#: en/git-init.txt:92
 #, no-wrap
-msgid ""
-"Notes:\n"
-"    Tested-by: Johannes Sixt <j6t@kdbg.org>\n"
+msgid "'all' (or 'world' or 'everybody')"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:296
-msgid ""
-"In principle, a note is a regular Git blob, and any kind of (non-)format is "
-"accepted.  You can binary-safely create notes from arbitrary files using "
-"'git hash-object':"
+#: en/git-init.txt:95
+msgid "Same as 'group', but make the repository readable by all users."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-notes.txt:301
+#. type: Labeled list
+#: en/git-init.txt:96
 #, no-wrap
-msgid ""
-"$ cc *.c\n"
-"$ blob=$(git hash-object -w a.out)\n"
-"$ git notes --ref=built add --allow-empty -C \"$blob\" HEAD\n"
+msgid "'0xxx'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:308
+#: en/git-init.txt:103
 msgid ""
-"(You cannot simply use `git notes --ref=built add -F a.out HEAD` because "
-"that is not binary-safe.)  Of course, it doesn't make much sense to display "
-"non-text-format notes with 'git log', so if you use such notes, you'll "
-"probably need to write some special-purpose tools to do something useful "
-"with them."
+"'0xxx' is an octal number and each file will have mode '0xxx'. '0xxx' will "
+"override users' umask(2) value (and not only loosen permissions as 'group' "
+"and 'all' does). '0640' will create a repository which is group-readable, "
+"but not group-writable or accessible to others. '0660' will create a repo "
+"that is readable and writable to the current user and group, but "
+"inaccessible to others."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-notes.txt:313 en/config.txt:846
-#, no-wrap
-msgid "core.notesRef"
+#. type: Plain text
+#: en/git-init.txt:108
+msgid ""
+"By default, the configuration flag `receive.denyNonFastForwards` is enabled "
+"in shared repositories, so that you cannot force a non fast-forwarding push "
+"into it."
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:318
+#: en/git-init.txt:111
 msgid ""
-"Notes ref to read and manipulate instead of `refs/notes/commits`.  Must be "
-"an unabbreviated ref name.  This setting can be overridden through the "
-"environment and command line."
+"If you provide a 'directory', the command is run inside it. If this "
+"directory does not exist, it will be created."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-notes.txt:319 en/config.txt:2239
+#. type: Title -
+#: en/git-init.txt:113
 #, no-wrap
-msgid "notes.mergeStrategy"
+msgid "TEMPLATE DIRECTORY"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:324
+#: en/git-init.txt:117
 msgid ""
-"Which merge strategy to choose by default when resolving notes conflicts.  "
-"Must be one of `manual`, `ours`, `theirs`, `union`, or `cat_sort_uniq`.  "
-"Defaults to `manual`.  See \"NOTES MERGE STRATEGIES\" section above for more "
-"information on each strategy."
+"Files and directories in the template directory whose name do not start with "
+"a dot will be copied to the `$GIT_DIR` after it is created."
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:326
-msgid "This setting can be overridden by passing the `--strategy` option."
+#: en/git-init.txt:119
+msgid "The template directory will be one of the following (in order):"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-notes.txt:327 en/config.txt:2245
-#, no-wrap
-msgid "notes.<name>.mergeStrategy"
+#. type: Plain text
+#: en/git-init.txt:121
+msgid "the argument given with the `--template` option;"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:332
-msgid ""
-"Which merge strategy to choose when doing a notes merge into "
-"refs/notes/<name>.  This overrides the more general "
-"\"notes.mergeStrategy\".  See the \"NOTES MERGE STRATEGIES\" section above "
-"for more information on each available strategy."
+#: en/git-init.txt:123
+msgid "the contents of the `$GIT_TEMPLATE_DIR` environment variable;"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:341
-msgid ""
-"Which ref (or refs, if a glob or specified more than once), in addition to "
-"the default set by `core.notesRef` or `GIT_NOTES_REF`, to read notes from "
-"when showing commit messages with the 'git log' family of commands.  This "
-"setting can be overridden on the command line or by the "
-"`GIT_NOTES_DISPLAY_REF` environment variable.  See linkgit:git-log[1]."
+#: en/git-init.txt:125
+msgid "the `init.templateDir` configuration variable; or"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-notes.txt:342 en/config.txt:2268
-#, no-wrap
-msgid "notes.rewrite.<command>"
+#. type: Plain text
+#: en/git-init.txt:127
+msgid "the default template directory: `/usr/share/git-core/templates`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:347
+#: en/git-init.txt:130
 msgid ""
-"When rewriting commits with <command> (currently `amend` or `rebase`), if "
-"this variable is `false`, git will not copy notes from the original to the "
-"rewritten commit.  Defaults to `true`.  See also \"`notes.rewriteRef`\" "
-"below."
+"The default template directory includes some directory structure, suggested "
+"\"exclude patterns\" (see linkgit:gitignore[5]), and sample hook files."
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:350
+#: en/git-init.txt:133
 msgid ""
-"This setting can be overridden by the `GIT_NOTES_REWRITE_REF` environment "
-"variable."
+"The sample hooks are all disabled by default. To enable one of the sample "
+"hooks rename it by removing its `.sample` suffix."
+msgstr ""
+
+#. type: Plain text
+#: en/git-init.txt:135
+msgid "See linkgit:githooks[5] for more general info on hook execution."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-notes.txt:351 en/config.txt:2275
+#: en/git-init.txt:139
 #, no-wrap
-msgid "notes.rewriteMode"
+msgid "Start a new Git repository for an existing code base"
 msgstr ""
 
-#. type: Plain text
-#: en/git-notes.txt:356
+#. type: delimited block -
+#: en/git-init.txt:146
+#, no-wrap
 msgid ""
-"When copying notes during a rewrite, what to do if the target commit already "
-"has a note.  Must be one of `overwrite`, `concatenate`, `cat_sort_uniq`, or "
-"`ignore`.  Defaults to `concatenate`."
+"$ cd /path/to/my/codebase\n"
+"$ git init      <1>\n"
+"$ git add .     <2>\n"
+"$ git commit    <3>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:359 en/config.txt:2284
-msgid ""
-"This setting can be overridden with the `GIT_NOTES_REWRITE_MODE` environment "
-"variable."
+#: en/git-init.txt:149
+msgid "Create a /path/to/my/codebase/.git directory."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-notes.txt:360 en/config.txt:2285
+#. type: Plain text
+#: en/git-init.txt:150
+msgid "Add all existing files to the index."
+msgstr ""
+
+#. type: Plain text
+#: en/git-init.txt:151
+msgid "Record the pristine state as the first commit in the history."
+msgstr ""
+
+#. type: Title =
+#: en/git-instaweb.txt:2
 #, no-wrap
-msgid "notes.rewriteRef"
+msgid "git-instaweb(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:365
+#: en/git-instaweb.txt:7
+msgid "git-instaweb - Instantly browse your working repository in gitweb"
+msgstr ""
+
+#. type: Plain text
+#: en/git-instaweb.txt:14
+#, no-wrap
 msgid ""
-"When copying notes during a rewrite, specifies the (fully qualified) ref "
-"whose notes should be copied.  May be a glob, in which case notes in all "
-"matching refs will be copied.  You may also specify this configuration "
-"several times."
+"'git instaweb' [--local] [--httpd=<httpd>] [--port=<port>]\n"
+"               [--browser=<browser>]\n"
+"'git instaweb' [--start] [--stop] [--restart]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:368
+#: en/git-instaweb.txt:19
 msgid ""
-"Does not have a default value; you must configure this variable to enable "
-"note rewriting."
+"A simple script to set up `gitweb` and a web server for browsing the local "
+"repository."
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:370
-msgid "Can be overridden with the `GIT_NOTES_REWRITE_REF` environment variable."
+#: en/git-instaweb.txt:26
+msgid "Only bind the web server to the local IP (127.0.0.1)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-notes.txt:375
+#: en/git-instaweb.txt:28
 #, no-wrap
-msgid "`GIT_NOTES_REF`"
+msgid "--httpd"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:378
+#: en/git-instaweb.txt:35
 msgid ""
-"Which ref to manipulate notes from, instead of `refs/notes/commits`.  This "
-"overrides the `core.notesRef` setting."
+"The HTTP daemon command-line that will be executed.  Command-line options "
+"may be specified here, and the configuration file will be added at the end "
+"of the command-line.  Currently apache2, lighttpd, mongoose, plackup, python "
+"and webrick are supported.  (Default: lighttpd)"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-notes.txt:379
+#: en/git-instaweb.txt:37
 #, no-wrap
-msgid "`GIT_NOTES_DISPLAY_REF`"
-msgstr ""
-
-#. type: Plain text
-#: en/git-notes.txt:385
-msgid ""
-"Colon-delimited list of refs or globs indicating which refs, in addition to "
-"the default from `core.notesRef` or `GIT_NOTES_REF`, to read notes from when "
-"showing commit messages.  This overrides the `notes.displayRef` setting."
+msgid "--module-path"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:388
+#: en/git-instaweb.txt:40
 msgid ""
-"A warning will be issued for refs that do not exist, but a glob that does "
-"not match any refs is silently ignored."
+"The module path (only needed if httpd is Apache).  (Default: /usr/lib/"
+"apache2/modules)"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-notes.txt:389
+#: en/git-instaweb.txt:42
 #, no-wrap
-msgid "`GIT_NOTES_REWRITE_MODE`"
+msgid "--port"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:394
-msgid ""
-"When copying notes during a rewrite, what to do if the target commit already "
-"has a note.  Must be one of `overwrite`, `concatenate`, `cat_sort_uniq`, or "
-"`ignore`.  This overrides the `core.rewriteMode` setting."
+#: en/git-instaweb.txt:44
+msgid "The port number to bind the httpd to.  (Default: 1234)"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-notes.txt:395
+#: en/git-instaweb.txt:46
 #, no-wrap
-msgid "`GIT_NOTES_REWRITE_REF`"
+msgid "--browser"
 msgstr ""
 
 #. type: Plain text
-#: en/git-notes.txt:399
+#: en/git-instaweb.txt:52
 msgid ""
-"When rewriting commits, which notes to copy from the original to the "
-"rewritten commit.  Must be a colon-delimited list of refs or globs."
+"The web browser that should be used to view the gitweb page. This will be "
+"passed to the 'git web{litdd}browse' helper script along with the URL of the "
+"gitweb instance. See linkgit:git-web{litdd}browse[1] for more information "
+"about this. If the script fails, the URL will be printed to stdout."
 msgstr ""
 
-#. type: Plain text
-#: en/git-notes.txt:402
-msgid ""
-"If not set in the environment, the list of notes to copy depends on the "
-"`notes.rewrite.<command>` and `notes.rewriteRef` settings."
+#. type: Labeled list
+#: en/git-instaweb.txt:53
+#, no-wrap
+msgid "start"
 msgstr ""
 
-#. type: Title =
-#: en/git-p4.txt:2
+#. type: Labeled list
+#: en/git-instaweb.txt:54
 #, no-wrap
-msgid "git-p4(1)"
+msgid "--start"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:7
-msgid "git-p4 - Import from and submit to Perforce repositories"
+#: en/git-instaweb.txt:57
+msgid ""
+"Start the httpd instance and exit.  Regenerate configuration files as "
+"necessary for spawning a new instance."
 msgstr ""
 
-#. type: Plain text
-#: en/git-p4.txt:16
+#. type: Labeled list
+#: en/git-instaweb.txt:58
 #, no-wrap
-msgid ""
-"'git p4 clone' [<sync options>] [<clone options>] <p4 depot path>...\n"
-"'git p4 sync' [<sync options>] [<p4 depot path>...]\n"
-"'git p4 rebase'\n"
-"'git p4 submit' [<submit options>] [<master branch name>]\n"
+msgid "stop"
 msgstr ""
 
-#. type: Plain text
-#: en/git-p4.txt:22
-msgid "This command provides a way to interact with p4 repositories using Git."
+#. type: Labeled list
+#: en/git-instaweb.txt:59
+#, no-wrap
+msgid "--stop"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:30
+#: en/git-instaweb.txt:63
 msgid ""
-"Create a new Git repository from an existing p4 repository using 'git p4 "
-"clone', giving it one or more p4 depot paths.  Incorporate new commits from "
-"p4 changes with 'git p4 sync'.  The 'sync' command is also used to include "
-"new branches from other p4 depot paths.  Submit Git changes back to p4 using "
-"'git p4 submit'.  The command 'git p4 rebase' does a sync plus rebases the "
-"current branch onto the updated p4 remote branch."
+"Stop the httpd instance and exit.  This does not generate any of the "
+"configuration files for spawning a new instance, nor does it close the "
+"browser."
 msgstr ""
 
-#. type: Plain text
-#: en/git-p4.txt:35
-msgid "Clone a repository:"
+#. type: Labeled list
+#: en/git-instaweb.txt:64
+#, no-wrap
+msgid "restart"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-p4.txt:38 en/git-p4.txt:71
+#. type: Labeled list
+#: en/git-instaweb.txt:65
 #, no-wrap
-msgid "$ git p4 clone //depot/path/project\n"
+msgid "--restart"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:41
-msgid "Do some work in the newly created Git repository:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-p4.txt:46
-#, no-wrap
+#: en/git-instaweb.txt:68
 msgid ""
-"$ cd project\n"
-"$ vi foo.h\n"
-"$ git commit -a -m \"edited foo.h\"\n"
+"Restart the httpd instance and exit.  Regenerate configuration files as "
+"necessary for spawning a new instance."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:50
-msgid ""
-"Update the Git repository with recent changes from p4, rebasing your work on "
-"top:"
+#: en/git-instaweb.txt:73
+msgid "You may specify configuration in your .git/config"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-p4.txt:53 en/git-p4.txt:130
+#: en/git-instaweb.txt:81
 #, no-wrap
-msgid "$ git p4 rebase\n"
+msgid ""
+"[instaweb]\n"
+"\tlocal = true\n"
+"\thttpd = apache2 -f\n"
+"\tport = 4321\n"
+"\tbrowser = konqueror\n"
+"\tmodulePath = /usr/lib/apache2/modules\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:56
-msgid "Submit your commits back to p4:"
+#: en/git-instaweb.txt:87
+msgid ""
+"If the configuration variable `instaweb.browser` is not set, `web.browser` "
+"will be used instead if it is defined. See linkgit:git-web{litdd}browse[1] "
+"for more information about this."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-p4.txt:59 en/git-p4.txt:145
+#. type: Title =
+#: en/git-interpret-trailers.txt:2
 #, no-wrap
-msgid "$ git p4 submit\n"
+msgid "git-interpret-trailers(1)"
 msgstr ""
 
-#. type: Title ~
-#: en/git-p4.txt:66
-#, no-wrap
-msgid "Clone"
+#. type: Plain text
+#: en/git-interpret-trailers.txt:7
+msgid ""
+"git-interpret-trailers - add or parse structured information in commit "
+"messages"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:69
+#: en/git-interpret-trailers.txt:13
+#, no-wrap
 msgid ""
-"Generally, 'git p4 clone' is used to create a new Git directory from an "
-"existing p4 repository:"
+"'git interpret-trailers' [<options>] [(--trailer <token>[(=|:)<value>])...] [<file>...]\n"
+"'git interpret-trailers' [<options>] [--parse] [<file>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:73
-msgid "This:"
+#: en/git-interpret-trailers.txt:19
+msgid ""
+"Help parsing or adding 'trailers' lines, that look similar to RFC 822 e-mail "
+"headers, at the end of the otherwise free-form part of a commit message."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:75
-msgid "Creates an empty Git repository in a subdirectory called 'project'."
+#: en/git-interpret-trailers.txt:23
+msgid ""
+"This command reads some patches or commit messages from either the <file> "
+"arguments or the standard input if no <file> is specified. If `--parse` is "
+"specified, the output consists of the parsed trailers."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:78
+#: en/git-interpret-trailers.txt:27
 msgid ""
-"Imports the full contents of the head revision from the given p4 depot path "
-"into a single commit in the Git branch 'refs/remotes/p4/master'."
+"Otherwise, this command applies the arguments passed using the `--trailer` "
+"option, if any, to the commit message part of each input file. The result is "
+"emitted on the standard output."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:80
-msgid "Creates a local branch, 'master' from this remote and checks it out."
+#: en/git-interpret-trailers.txt:32
+msgid ""
+"Some configuration variables control the way the `--trailer` arguments are "
+"applied to each commit message and the way any existing trailer in the "
+"commit message is changed. They also make it possible to automatically add "
+"some trailers."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:83
+#: en/git-interpret-trailers.txt:39
 msgid ""
-"To reproduce the entire p4 history in Git, use the '@all' modifier on the "
-"depot path:"
+"By default, a '<token>=<value>' or '<token>:<value>' argument given using `--"
+"trailer` will be appended after the existing trailers only if the last "
+"trailer has a different (<token>, <value>) pair (or if there is no existing "
+"trailer). The <token> and <value> parts will be trimmed to remove starting "
+"and trailing whitespace, and the resulting trimmed <token> and <value> will "
+"appear in the message like this:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-p4.txt:85
+#: en/git-interpret-trailers.txt:42
 #, no-wrap
-msgid "$ git p4 clone //depot/path/project@all\n"
+msgid "token: value\n"
 msgstr ""
 
-#. type: Title ~
-#: en/git-p4.txt:89
-#, no-wrap
-msgid "Sync"
+#. type: Plain text
+#: en/git-interpret-trailers.txt:46
+msgid ""
+"This means that the trimmed <token> and <value> will be separated by `': '` "
+"(one colon followed by one space)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:92
+#: en/git-interpret-trailers.txt:52
 msgid ""
-"As development continues in the p4 repository, those changes can be included "
-"in the Git repository using:"
+"By default the new trailer will appear at the end of all the existing "
+"trailers. If there is no existing trailer, the new trailer will appear after "
+"the commit message part of the output, and, if there is no line with only "
+"spaces at the end of the commit message part, one blank line will be added "
+"before the new trailer."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-p4.txt:94
-#, no-wrap
-msgid "$ git p4 sync\n"
+#. type: Plain text
+#: en/git-interpret-trailers.txt:62
+msgid ""
+"Existing trailers are extracted from the input message by looking for a "
+"group of one or more lines that (i) is all trailers, or (ii) contains at "
+"least one Git-generated or user-configured trailer and consists of at least "
+"25% trailers.  The group must be preceded by one or more empty (or "
+"whitespace-only) lines.  The group must either be at the end of the message "
+"or be the last non-whitespace lines before a line that starts with "
+"'---' (followed by a space or the end of the line). Such three minus signs "
+"start the patch part of the message. See also `--no-divider` below."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:96
-msgid "This command finds new changes in p4 and imports them as Git commits."
+#: en/git-interpret-trailers.txt:67
+msgid ""
+"When reading trailers, there can be whitespaces after the token, the "
+"separator and the value. There can also be whitespaces inside the token and "
+"the value. The value may be split over multiple lines with each subsequent "
+"line starting with whitespace, like the \"folding\" in RFC 822."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:99
+#: en/git-interpret-trailers.txt:71
 msgid ""
-"P4 repositories can be added to an existing Git repository using 'git p4 "
-"sync' too:"
+"Note that 'trailers' do not follow and are not intended to follow many rules "
+"for RFC 822 headers. For example they do not follow the encoding rules and "
+"probably many other rules."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-p4.txt:104
+#. type: Labeled list
+#: en/git-interpret-trailers.txt:74
 #, no-wrap
-msgid ""
-"$ mkdir repo-git\n"
-"$ cd repo-git\n"
-"$ git init\n"
-"$ git p4 sync //path/in/your/perforce/depot\n"
+msgid "--in-place"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:109
-msgid ""
-"This imports the specified depot into 'refs/remotes/p4/master' in an "
-"existing Git repository.  The `--branch` option can be used to specify a "
-"different branch to be used for the p4 content."
+#: en/git-interpret-trailers.txt:76
+msgid "Edit the files in place."
 msgstr ""
 
-#. type: Plain text
-#: en/git-p4.txt:114
-msgid ""
-"If a Git repository includes branches 'refs/remotes/origin/p4', these will "
-"be fetched and consulted first during a 'git p4 sync'.  Since importing "
-"directly from p4 is considerably slower than pulling changes from a Git "
-"remote, this can be useful in a multi-developer environment."
+#. type: Labeled list
+#: en/git-interpret-trailers.txt:77
+#, no-wrap
+msgid "--trim-empty"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:119
+#: en/git-interpret-trailers.txt:81
 msgid ""
-"If there are multiple branches, doing 'git p4 sync' will automatically use "
-"the \"BRANCH DETECTION\" algorithm to try to partition new changes into the "
-"right branch.  This can be overridden with the `--branch` option to specify "
-"just a single branch to update."
+"If the <value> part of any trailer contains only whitespace, the whole "
+"trailer will be removed from the resulting message.  This applies to "
+"existing trailers as well as new trailers."
 msgstr ""
 
-#. type: Title ~
-#: en/git-p4.txt:122
+#. type: Labeled list
+#: en/git-interpret-trailers.txt:82
 #, no-wrap
-msgid "Rebase"
+msgid "--trailer <token>[(=|:)<value>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:128
+#: en/git-interpret-trailers.txt:86
 msgid ""
-"A common working pattern is to fetch the latest changes from the p4 depot "
-"and merge them with local uncommitted changes.  Often, the p4 repository is "
-"the ultimate location for all code, thus a rebase workflow makes sense.  "
-"This command does 'git p4 sync' followed by 'git rebase' to move local "
-"commits on top of updated p4 changes."
+"Specify a (<token>, <value>) pair that should be applied as a trailer to the "
+"input messages. See the description of this command."
 msgstr ""
 
-#. type: Title ~
-#: en/git-p4.txt:134
+#. type: Labeled list
+#: en/git-interpret-trailers.txt:87
 #, no-wrap
-msgid "Submit"
+msgid "--where <placement>"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-interpret-trailers.txt:88
+#, no-wrap
+msgid "--no-where"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:140
+#: en/git-interpret-trailers.txt:94
 msgid ""
-"Submitting changes from a Git repository back to the p4 repository requires "
-"a separate p4 client workspace.  This should be specified using the "
-"`P4CLIENT` environment variable or the Git configuration variable "
-"'git-p4.client'.  The p4 client must exist, but the client root will be "
-"created and populated if it does not already exist."
-msgstr ""
-
-#. type: Plain text
-#: en/git-p4.txt:143
-msgid ""
-"To submit all changes that are in the current Git branch but not in the "
-"'p4/master' branch, use:"
-msgstr ""
-
-#. type: Plain text
-#: en/git-p4.txt:148
-msgid "To specify a branch other than the current one, use:"
+"Specify where all new trailers will be added.  A setting provided with '--"
+"where' overrides all configuration variables and applies to all '--trailer' "
+"options until the next occurrence of '--where' or '--no-where'. Possible "
+"values are `after`, `before`, `end` or `start`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-p4.txt:150
+#. type: Labeled list
+#: en/git-interpret-trailers.txt:95
 #, no-wrap
-msgid "$ git p4 submit topicbranch\n"
+msgid "--if-exists <action>"
 msgstr ""
 
-#. type: Plain text
-#: en/git-p4.txt:154
-msgid ""
-"The upstream reference is generally 'refs/remotes/p4/master', but can be "
-"overridden using the `--origin=` command-line option."
-msgstr ""
-
-#. type: Plain text
-#: en/git-p4.txt:159
-msgid ""
-"The p4 changes will be created as the user invoking 'git p4 submit'. The "
-"`--preserve-user` option will cause ownership to be modified according to "
-"the author of the Git commit.  This option requires admin privileges in p4, "
-"which can be granted using 'p4 protect'."
-msgstr ""
-
-#. type: Title ~
-#: en/git-p4.txt:165
+#. type: Labeled list
+#: en/git-interpret-trailers.txt:96
 #, no-wrap
-msgid "General options"
+msgid "--no-if-exists"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:167
-msgid "All commands except clone accept these options."
+#: en/git-interpret-trailers.txt:103
+msgid ""
+"Specify what action will be performed when there is already at least one "
+"trailer with the same <token> in the message.  A setting provided with '--if-"
+"exists' overrides all configuration variables and applies to all '--trailer' "
+"options until the next occurrence of '--if-exists' or '--no-if-exists'. "
+"Possible actions are `addIfDifferent`, `addIfDifferentNeighbor`, `add`, "
+"`replace` and `doNothing`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:168
+#: en/git-interpret-trailers.txt:104
 #, no-wrap
-msgid "--git-dir <dir>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-p4.txt:170
-msgid "Set the `GIT_DIR` environment variable.  See linkgit:git[1]."
+msgid "--if-missing <action>"
 msgstr ""
 
-#. type: Plain text
-#: en/git-p4.txt:174
-msgid "Provide more progress information."
-msgstr ""
-
-#. type: Title ~
-#: en/git-p4.txt:176
+#. type: Labeled list
+#: en/git-interpret-trailers.txt:105
 #, no-wrap
-msgid "Sync options"
+msgid "--no-if-missing"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:179
+#: en/git-interpret-trailers.txt:112
 msgid ""
-"These options can be used in the initial 'clone' as well as in subsequent "
-"'sync' operations."
+"Specify what action will be performed when there is no other trailer with "
+"the same <token> in the message.  A setting provided with '--if-missing' "
+"overrides all configuration variables and applies to all '--trailer' options "
+"until the next occurrence of '--if-missing' or '--no-if-missing'. Possible "
+"actions are `doNothing` or `add`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:180
+#: en/git-interpret-trailers.txt:113
 #, no-wrap
-msgid "--branch <ref>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-p4.txt:184
-msgid ""
-"Import changes into <ref> instead of refs/remotes/p4/master.  If <ref> "
-"starts with refs/, it is used as is.  Otherwise, if it does not start with "
-"p4/, that prefix is added."
-msgstr ""
-
-#. type: Plain text
-#: en/git-p4.txt:188
-msgid ""
-"By default a <ref> not starting with refs/ is treated as the name of a "
-"remote-tracking branch (under refs/remotes/).  This behavior can be modified "
-"using the --import-local option."
-msgstr ""
-
-#. type: Plain text
-#: en/git-p4.txt:190
-msgid "The default <ref> is \"master\"."
+msgid "--only-trailers"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:193
-msgid ""
-"This example imports a new remote \"p4/proj2\" into an existing Git "
-"repository:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-p4.txt:197
-#, no-wrap
-msgid ""
-"    $ git init\n"
-"    $ git p4 sync --branch=refs/remotes/p4/proj2 //depot/proj2\n"
+#: en/git-interpret-trailers.txt:115
+msgid "Output only the trailers, not any other parts of the input."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:199
+#: en/git-interpret-trailers.txt:116
 #, no-wrap
-msgid "--detect-branches"
+msgid "--only-input"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:202
+#: en/git-interpret-trailers.txt:120
 msgid ""
-"Use the branch detection algorithm to find new paths in p4.  It is "
-"documented below in \"BRANCH DETECTION\"."
+"Output only trailers that exist in the input; do not add any from the "
+"command-line or by following configured `trailer.*` rules."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:203
+#: en/git-interpret-trailers.txt:121
 #, no-wrap
-msgid "--changesfile <file>"
+msgid "--unfold"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:207
+#: en/git-interpret-trailers.txt:124
 msgid ""
-"Import exactly the p4 change numbers listed in 'file', one per line.  "
-"Normally, 'git p4' inspects the current p4 repository state and detects the "
-"changes it should import."
+"Remove any whitespace-continuation in trailers, so that each trailer appears "
+"on a line by itself with its full content."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:208
+#: en/git-interpret-trailers.txt:125
 #, no-wrap
-msgid "--silent"
+msgid "--parse"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:210
-msgid "Do not print any progress information."
+#: en/git-interpret-trailers.txt:128
+msgid "A convenience alias for `--only-trailers --only-input --unfold`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:211
+#: en/git-interpret-trailers.txt:129
 #, no-wrap
-msgid "--detect-labels"
+msgid "--no-divider"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:215
+#: en/git-interpret-trailers.txt:133
 msgid ""
-"Query p4 for labels associated with the depot paths, and add them as tags in "
-"Git. Limited usefulness as only imports labels associated with new "
-"changelists. Deprecated."
+"Do not treat `---` as the end of the commit message. Use this when you know "
+"your input contains just the commit message itself (and not an email or the "
+"output of `git format-patch`)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:216 en/git-p4.txt:331
+#: en/git-interpret-trailers.txt:137
 #, no-wrap
-msgid "--import-labels"
+msgid "trailer.separators"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:218
-msgid "Import labels from p4 into Git."
+#: en/git-interpret-trailers.txt:142
+msgid ""
+"This option tells which characters are recognized as trailer separators. By "
+"default only ':' is recognized as a trailer separator, except that '=' is "
+"always accepted on the command line for compatibility with other git "
+"commands."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-p4.txt:219
-#, no-wrap
-msgid "--import-local"
+#. type: Plain text
+#: en/git-interpret-trailers.txt:146
+msgid ""
+"The first character given by this option will be the default character used "
+"when another separator is not specified in the config for this trailer."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:226
+#: en/git-interpret-trailers.txt:153
 msgid ""
-"By default, p4 branches are stored in 'refs/remotes/p4/', where they will be "
-"treated as remote-tracking branches by linkgit:git-branch[1] and other "
-"commands.  This option instead puts p4 branches in 'refs/heads/p4/'.  Note "
-"that future sync operations must specify `--import-local` as well so that "
-"they can find the p4 branches in refs/heads."
+"For example, if the value for this option is \"%=$\", then only lines using "
+"the format '<token><sep><value>' with <sep> containing '%', '=' or '$' and "
+"then spaces will be considered trailers. And '%' will be the default "
+"separator used, so by default trailers will appear like: '<token>% "
+"<value>' (one percent sign and one space will appear between the token and "
+"the value)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:227
+#: en/git-interpret-trailers.txt:154
 #, no-wrap
-msgid "--max-changes <n>"
+msgid "trailer.where"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:233
-msgid ""
-"Import at most 'n' changes, rather than the entire range of changes included "
-"in the given revision specifier. A typical usage would be use '@all' as the "
-"revision specifier, but then to use '--max-changes 1000' to import only the "
-"last 1000 revisions rather than the entire revision history."
+#: en/git-interpret-trailers.txt:156
+msgid "This option tells where a new trailer will be added."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-p4.txt:234
-#, no-wrap
-msgid "--changes-block-size <n>"
+#. type: Plain text
+#: en/git-interpret-trailers.txt:158
+msgid "This can be `end`, which is the default, `start`, `after` or `before`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:242
+#: en/git-interpret-trailers.txt:161
 msgid ""
-"The internal block size to use when converting a revision specifier such as "
-"'@all' into a list of specific change numbers. Instead of using a single "
-"call to 'p4 changes' to find the full list of changes for the conversion, "
-"there are a sequence of calls to 'p4 changes -m', each of which requests one "
-"block of changes of the given size. The default block size is 500, which "
-"should usually be suitable."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-p4.txt:243
-#, no-wrap
-msgid "--keep-path"
+"If it is `end`, then each new trailer will appear at the end of the existing "
+"trailers."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:250
+#: en/git-interpret-trailers.txt:164
 msgid ""
-"The mapping of file names from the p4 depot path to Git, by default, "
-"involves removing the entire depot path.  With this option, the full p4 "
-"depot path is retained in Git.  For example, path '//depot/main/foo/bar.c', "
-"when imported from '//depot/main/', becomes 'foo/bar.c'.  With "
-"`--keep-path`, the Git path is instead 'depot/main/foo/bar.c'."
+"If it is `start`, then each new trailer will appear at the start, instead of "
+"the end, of the existing trailers."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-p4.txt:251
-#, no-wrap
-msgid "--use-client-spec"
+#. type: Plain text
+#: en/git-interpret-trailers.txt:167
+msgid ""
+"If it is `after`, then each new trailer will appear just after the last "
+"trailer with the same <token>."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:254
+#: en/git-interpret-trailers.txt:170
 msgid ""
-"Use a client spec to find the list of interesting files in p4.  See the "
-"\"CLIENT SPEC\" section below."
+"If it is `before`, then each new trailer will appear just before the first "
+"trailer with the same <token>."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:255
+#: en/git-interpret-trailers.txt:171
 #, no-wrap
-msgid "-/ <path>"
+msgid "trailer.ifexists"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:257
-msgid "Exclude selected depot paths when cloning or syncing."
-msgstr ""
-
-#. type: Title ~
-#: en/git-p4.txt:259
-#, no-wrap
-msgid "Clone options"
+#: en/git-interpret-trailers.txt:175
+msgid ""
+"This option makes it possible to choose what action will be performed when "
+"there is already at least one trailer with the same <token> in the message."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:262
+#: en/git-interpret-trailers.txt:178
 msgid ""
-"These options can be used in an initial 'clone', along with the 'sync' "
-"options described above."
+"The valid values for this option are: `addIfDifferentNeighbor` (this is the "
+"default), `addIfDifferent`, `add`, `replace` or `doNothing`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-p4.txt:263
-#, no-wrap
-msgid "--destination <directory>"
+#. type: Plain text
+#: en/git-interpret-trailers.txt:182
+msgid ""
+"With `addIfDifferentNeighbor`, a new trailer will be added only if no "
+"trailer with the same (<token>, <value>) pair is above or below the line "
+"where the new trailer will be added."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:267
+#: en/git-interpret-trailers.txt:185
 msgid ""
-"Where to create the Git repository.  If not provided, the last component in "
-"the p4 depot path is used to create a new directory."
+"With `addIfDifferent`, a new trailer will be added only if no trailer with "
+"the same (<token>, <value>) pair is already in the message."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:270
-msgid "Perform a bare clone.  See linkgit:git-clone[1]."
+#: en/git-interpret-trailers.txt:188
+msgid ""
+"With `add`, a new trailer will be added, even if some trailers with the same "
+"(<token>, <value>) pair are already in the message."
 msgstr ""
 
-#. type: Title ~
-#: en/git-p4.txt:272
-#, no-wrap
-msgid "Submit options"
+#. type: Plain text
+#: en/git-interpret-trailers.txt:193
+msgid ""
+"With `replace`, an existing trailer with the same <token> will be deleted "
+"and the new trailer will be added. The deleted trailer will be the closest "
+"one (with the same <token>) to the place where the new one will be added."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:274
-msgid "These options can be used to modify 'git p4 submit' behavior."
+#: en/git-interpret-trailers.txt:196
+msgid ""
+"With `doNothing`, nothing will be done; that is no new trailer will be added "
+"if there is already one with the same <token> in the message."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:275
+#: en/git-interpret-trailers.txt:197
 #, no-wrap
-msgid "--origin <commit>"
+msgid "trailer.ifmissing"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:279
+#: en/git-interpret-trailers.txt:201
 msgid ""
-"Upstream location from which commits are identified to submit to p4.  By "
-"default, this is the most recent p4 commit reachable from `HEAD`."
+"This option makes it possible to choose what action will be performed when "
+"there is not yet any trailer with the same <token> in the message."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:285
+#: en/git-interpret-trailers.txt:204
 msgid ""
-"Detect renames.  See linkgit:git-diff[1].  Renames will be represented in p4 "
-"using explicit 'move' operations.  There is no corresponding option to "
-"detect copies, but there are variables for both moves and copies."
+"The valid values for this option are: `add` (this is the default) and "
+"`doNothing`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-p4.txt:286
-#, no-wrap
-msgid "--preserve-user"
+#. type: Plain text
+#: en/git-interpret-trailers.txt:206
+msgid "With `add`, a new trailer will be added."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:289
-msgid ""
-"Re-author p4 changes before submitting to p4.  This option requires p4 admin "
-"privileges."
+#: en/git-interpret-trailers.txt:208
+msgid "With `doNothing`, nothing will be done."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:290
+#: en/git-interpret-trailers.txt:209
 #, no-wrap
-msgid "--export-labels"
+msgid "trailer.<token>.key"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:293
+#: en/git-interpret-trailers.txt:215
 msgid ""
-"Export tags from Git as p4 labels. Tags found in Git are applied to the "
-"perforce working directory."
+"This `key` will be used instead of <token> in the trailer. At the end of "
+"this key, a separator can appear and then some space characters. By default "
+"the only valid separator is ':', but this can be changed using the `trailer."
+"separators` config variable."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:298
+#: en/git-interpret-trailers.txt:218
 msgid ""
-"Show just what commits would be submitted to p4; do not change state in Git "
-"or p4."
+"If there is a separator, then the key will be used instead of both the "
+"<token> and the default separator when adding the trailer."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:299
+#: en/git-interpret-trailers.txt:219
 #, no-wrap
-msgid "--prepare-p4-only"
+msgid "trailer.<token>.where"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:305
+#: en/git-interpret-trailers.txt:223
 msgid ""
-"Apply a commit to the p4 workspace, opening, adding and deleting files in p4 "
-"as for a normal submit operation.  Do not issue the final \"p4 submit\", but "
-"instead print a message about how to submit manually or revert.  This option "
-"always stops after the first (oldest) commit.  Git tags are not exported to "
-"p4."
+"This option takes the same values as the 'trailer.where' configuration "
+"variable and it overrides what is specified by that option for trailers with "
+"the specified <token>."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:306
+#: en/git-interpret-trailers.txt:224
 #, no-wrap
-msgid "--shelve"
+msgid "trailer.<token>.ifexists"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:310
+#: en/git-interpret-trailers.txt:228
 msgid ""
-"Instead of submitting create a series of shelved changelists.  After "
-"creating each shelve, the relevant files are reverted/deleted.  If you have "
-"multiple commits pending multiple shelves will be created."
+"This option takes the same values as the 'trailer.ifexists' configuration "
+"variable and it overrides what is specified by that option for trailers with "
+"the specified <token>."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:311
+#: en/git-interpret-trailers.txt:229
 #, no-wrap
-msgid "--update-shelve CHANGELIST"
+msgid "trailer.<token>.ifmissing"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:314
-msgid "Update an existing shelved changelist with this commit. Implies --shelve."
+#: en/git-interpret-trailers.txt:233
+msgid ""
+"This option takes the same values as the 'trailer.ifmissing' configuration "
+"variable and it overrides what is specified by that option for trailers with "
+"the specified <token>."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:315
+#: en/git-interpret-trailers.txt:234
 #, no-wrap
-msgid "--conflict=(ask|skip|quit)"
+msgid "trailer.<token>.command"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:321
+#: en/git-interpret-trailers.txt:238
 msgid ""
-"Conflicts can occur when applying a commit to p4.  When this happens, the "
-"default behavior (\"ask\") is to prompt whether to skip this commit and "
-"continue, or quit.  This option can be used to bypass the prompt, causing "
-"conflicting commits to be automatically skipped, or to quit trying to apply "
-"commits, without prompting."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-p4.txt:322
-#, no-wrap
-msgid "--branch <branch>"
+"This option can be used to specify a shell command that will be called to "
+"automatically add or modify a trailer with the specified <token>."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:326
+#: en/git-interpret-trailers.txt:244
 msgid ""
-"After submitting, sync this named branch instead of the default p4/master.  "
-"See the \"Sync options\" section above for more information."
-msgstr ""
-
-#. type: Title ~
-#: en/git-p4.txt:328
-#, no-wrap
-msgid "Rebase options"
+"When this option is specified, the behavior is as if a special "
+"'<token>=<value>' argument were added at the beginning of the command line, "
+"where <value> is taken to be the standard output of the specified command "
+"with any leading and trailing whitespace trimmed off."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:330
-msgid "These options can be used to modify 'git p4 rebase' behavior."
+#: en/git-interpret-trailers.txt:248
+msgid ""
+"If the command contains the `$ARG` string, this string will be replaced with "
+"the <value> part of an existing trailer with the same <token>, if any, "
+"before the command is launched."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:333
-msgid "Import p4 labels."
-msgstr ""
-
-#. type: Title -
-#: en/git-p4.txt:335
-#, no-wrap
-msgid "DEPOT PATH SYNTAX"
+#: en/git-interpret-trailers.txt:254
+msgid ""
+"If some '<token>=<value>' arguments are also passed on the command line, "
+"when a 'trailer.<token>.command' is configured, the command will also be "
+"executed for each of these arguments. And the <value> part of these "
+"arguments, if any, will be used to replace the `$ARG` string in the command."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:339
+#: en/git-interpret-trailers.txt:260
 msgid ""
-"The p4 depot path argument to 'git p4 sync' and 'git p4 clone' can be one or "
-"more space-separated p4 depot paths, with an optional p4 revision specifier "
-"on the end:"
+"Configure a 'sign' trailer with a 'Signed-off-by' key, and then add two of "
+"these trailers to a message:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-p4.txt:340
+#. type: delimited block -
+#: en/git-interpret-trailers.txt:265
 #, no-wrap
-msgid "\"//depot/my/project\""
-msgstr ""
-
-#. type: Plain text
-#: en/git-p4.txt:342
-msgid "Import one commit with all files in the '#head' change under that tree."
+msgid ""
+"$ git config trailer.sign.key \"Signed-off-by\"\n"
+"$ cat msg.txt\n"
+"subject\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-p4.txt:343
+#. type: delimited block -
+#: en/git-interpret-trailers.txt:269
 #, no-wrap
-msgid "\"//depot/my/project@all\""
-msgstr ""
-
-#. type: Plain text
-#: en/git-p4.txt:345
-msgid "Import one commit for each change in the history of that depot path."
+msgid ""
+"message\n"
+"$ cat msg.txt | git interpret-trailers --trailer 'sign: Alice <alice@example.com>' --trailer 'sign: Bob <bob@example.com>'\n"
+"subject\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-p4.txt:346
+#. type: delimited block -
+#: en/git-interpret-trailers.txt:271 en/git-interpret-trailers.txt:283
+#: en/git-interpret-trailers.txt:290 en/git-interpret-trailers.txt:354
 #, no-wrap
-msgid "\"//depot/my/project@1,6\""
-msgstr ""
-
-#. type: Plain text
-#: en/git-p4.txt:348
-msgid "Import only changes 1 through 6."
+msgid "message\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-p4.txt:349
+#. type: delimited block -
+#: en/git-interpret-trailers.txt:274
 #, no-wrap
-msgid "\"//depot/proj1@all //depot/proj2@all\""
-msgstr ""
-
-#. type: Plain text
-#: en/git-p4.txt:358
 msgid ""
-"Import all changes from both named depot paths into a single repository.  "
-"Only files below these directories are included.  There is not a "
-"subdirectory in Git for each \"proj1\" and \"proj2\".  You must use the "
-"`--destination` option when specifying more than one depot path.  The "
-"revision specifier must be specified identically on each depot path.  If "
-"there are files in the depot paths with the same name, the path with the "
-"most recently updated version of the file is the one that appears in Git."
+"Signed-off-by: Alice <alice@example.com>\n"
+"Signed-off-by: Bob <bob@example.com>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:360
-msgid "See 'p4 help revisions' for the full syntax of p4 revision specifiers."
+#: en/git-interpret-trailers.txt:277
+msgid "Use the `--in-place` option to edit a message file in place:"
 msgstr ""
 
-#. type: Title -
-#: en/git-p4.txt:363
+#. type: delimited block -
+#: en/git-interpret-trailers.txt:281
 #, no-wrap
-msgid "CLIENT SPEC"
-msgstr ""
-
-#. type: Plain text
-#: en/git-p4.txt:373
 msgid ""
-"The p4 client specification is maintained with the 'p4 client' command and "
-"contains among other fields, a View that specifies how the depot is mapped "
-"into the client repository.  The 'clone' and 'sync' commands can consult the "
-"client spec when given the `--use-client-spec` option or when the "
-"useClientSpec variable is true.  After 'git p4 clone', the useClientSpec "
-"variable is automatically set in the repository configuration file.  This "
-"allows future 'git p4 submit' commands to work properly; the submit command "
-"looks only at the variable and does not have a command-line option."
+"$ cat msg.txt\n"
+"subject\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-p4.txt:380
+#. type: delimited block -
+#: en/git-interpret-trailers.txt:288
+#, no-wrap
 msgid ""
-"The full syntax for a p4 view is documented in 'p4 help views'.  'git p4' "
-"knows only a subset of the view syntax.  It understands multi-line mappings, "
-"overlays with '+', exclusions with '-' and double-quotes around whitespace.  "
-"Of the possible wildcards, 'git p4' only handles '...', and only when it is "
-"at the end of the path.  'git p4' will complain if it encounters an "
-"unhandled wildcard."
+"Signed-off-by: Bob <bob@example.com>\n"
+"$ git interpret-trailers --trailer 'Acked-by: Alice <alice@example.com>' --in-place msg.txt\n"
+"$ cat msg.txt\n"
+"subject\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-p4.txt:385
+#. type: delimited block -
+#: en/git-interpret-trailers.txt:293
+#, no-wrap
 msgid ""
-"Bugs in the implementation of overlap mappings exist.  If multiple depot "
-"paths map through overlays to the same location in the repository, 'git p4' "
-"can choose the wrong one.  This is hard to solve without dedicating a client "
-"spec just for 'git p4'."
+"Signed-off-by: Bob <bob@example.com>\n"
+"Acked-by: Alice <alice@example.com>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:390
+#: en/git-interpret-trailers.txt:297
 msgid ""
-"The name of the client can be given to 'git p4' in multiple ways.  The "
-"variable 'git-p4.client' takes precedence if it exists.  Otherwise, normal "
-"p4 mechanisms of determining the client are used: environment variable "
-"P4CLIENT, a file referenced by P4CONFIG, or the local host name."
+"Extract the last commit as a patch, and add a 'Cc' and a 'Reviewed-by' "
+"trailer to it:"
 msgstr ""
 
-#. type: Title -
-#: en/git-p4.txt:393
+#. type: delimited block -
+#: en/git-interpret-trailers.txt:302
 #, no-wrap
-msgid "BRANCH DETECTION"
-msgstr ""
-
-#. type: Plain text
-#: en/git-p4.txt:400
 msgid ""
-"P4 does not have the same concept of a branch as Git.  Instead, p4 organizes "
-"its content as a directory tree, where by convention different logical "
-"branches are in different locations in the tree.  The 'p4 branch' command is "
-"used to maintain mappings between different areas in the tree, and indicate "
-"related content.  'git p4' can use these mappings to determine branch "
-"relationships."
+"$ git format-patch -1\n"
+"0001-foo.patch\n"
+"$ git interpret-trailers --trailer 'Cc: Alice <alice@example.com>' --trailer 'Reviewed-by: Bob <bob@example.com>' 0001-foo.patch >0001-bar.patch\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:405
+#: en/git-interpret-trailers.txt:307
 msgid ""
-"If you have a repository where all the branches of interest exist as "
-"subdirectories of a single depot path, you can use `--detect-branches` when "
-"cloning or syncing to have 'git p4' automatically find subdirectories in p4, "
-"and to generate these as branches in Git."
-msgstr ""
-
-#. type: Plain text
-#: en/git-p4.txt:407
-msgid "For example, if the P4 repository structure is:"
+"Configure a 'sign' trailer with a command to automatically add a 'Signed-off-"
+"by: ' with the author information only if there is no 'Signed-off-by: ' "
+"already, and show how it works:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-p4.txt:410
+#: en/git-interpret-trailers.txt:315
 #, no-wrap
 msgid ""
-"//depot/main/...\n"
-"//depot/branch1/...\n"
+"$ git config trailer.sign.key \"Signed-off-by: \"\n"
+"$ git config trailer.sign.ifmissing add\n"
+"$ git config trailer.sign.ifexists doNothing\n"
+"$ git config trailer.sign.command 'echo \"$(git config user.name) <$(git config user.email)>\"'\n"
+"$ git interpret-trailers <<EOF\n"
+"> EOF\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-p4.txt:413
-msgid "And \"p4 branch -o branch1\" shows a View line that looks like:"
+#. type: delimited block -
+#: en/git-interpret-trailers.txt:320
+#, no-wrap
+msgid ""
+"Signed-off-by: Bob <bob@example.com>\n"
+"$ git interpret-trailers <<EOF\n"
+"> Signed-off-by: Alice <alice@example.com>\n"
+"> EOF\n"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-p4.txt:415
+#: en/git-interpret-trailers.txt:322
 #, no-wrap
-msgid "//depot/main/... //depot/branch1/...\n"
+msgid "Signed-off-by: Alice <alice@example.com>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:418
-msgid "Then this 'git p4 clone' command:"
+#: en/git-interpret-trailers.txt:326
+msgid ""
+"Configure a 'fix' trailer with a key that contains a '#' and no space after "
+"this character, and show how it works:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-p4.txt:420
+#: en/git-interpret-trailers.txt:332
 #, no-wrap
-msgid "git p4 clone --detect-branches //depot@all\n"
+msgid ""
+"$ git config trailer.separators \":#\"\n"
+"$ git config trailer.fix.key \"Fix #\"\n"
+"$ echo \"subject\" | git interpret-trailers --trailer fix=42\n"
+"subject\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-p4.txt:423
-msgid ""
-"produces a separate branch in 'refs/remotes/p4/' for //depot/main, called "
-"'master', and one for //depot/branch1 called 'depot/branch1'."
+#. type: delimited block -
+#: en/git-interpret-trailers.txt:334
+#, no-wrap
+msgid "Fix #42\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:433
+#: en/git-interpret-trailers.txt:338
 msgid ""
-"However, it is not necessary to create branches in p4 to be able to use them "
-"like branches.  Because it is difficult to infer branch relationships "
-"automatically, a Git configuration setting 'git-p4.branchList' can be used "
-"to explicitly identify branch relationships.  It is a list of "
-"\"source:destination\" pairs, like a simple p4 branch specification, where "
-"the \"source\" and \"destination\" are the path elements in the p4 "
-"repository.  The example above relied on the presence of the p4 branch.  "
-"Without p4 branches, the same result will occur with:"
+"Configure a 'see' trailer with a command to show the subject of a commit "
+"that is related, and show how it works:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-p4.txt:438
+#: en/git-interpret-trailers.txt:352
 #, no-wrap
 msgid ""
-"git init depot\n"
-"cd depot\n"
-"git config git-p4.branchList main:branch1\n"
-"git p4 clone --detect-branches //depot@all .\n"
+"$ git config trailer.see.key \"See-also: \"\n"
+"$ git config trailer.see.ifExists \"replace\"\n"
+"$ git config trailer.see.ifMissing \"doNothing\"\n"
+"$ git config trailer.see.command \"git log -1 --oneline --format=\\\"%h (%s)\\\" --abbrev-commit --abbrev=14 \\$ARG\"\n"
+"$ git interpret-trailers <<EOF\n"
+"> subject\n"
+"> \n"
+"> message\n"
+"> \n"
+"> see: HEAD~2\n"
+"> EOF\n"
+"subject\n"
 msgstr ""
 
-#. type: Title -
-#: en/git-p4.txt:442
+#. type: delimited block -
+#: en/git-interpret-trailers.txt:356
 #, no-wrap
-msgid "PERFORMANCE"
+msgid "See-also: fe3187489d69c4 (subject of related commit)\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:447
+#: en/git-interpret-trailers.txt:363
 msgid ""
-"The fast-import mechanism used by 'git p4' creates one pack file for each "
-"invocation of 'git p4 sync'.  Normally, Git garbage compression "
-"(linkgit:git-gc[1]) automatically compresses these to fewer pack files, but "
-"explicit invocation of 'git repack -adf' may improve performance."
-msgstr ""
-
-#. type: Plain text
-#: en/git-p4.txt:453
-msgid ""
-"The following config settings can be used to modify 'git p4' behavior.  They "
-"all are in the 'git-p4' section."
-msgstr ""
-
-#. type: Title ~
-#: en/git-p4.txt:455
-#, no-wrap
-msgid "General variables"
+"Configure a commit template with some trailers with empty values (using sed "
+"to show and keep the trailing spaces at the end of the trailers), then "
+"configure a commit-msg hook that uses 'git interpret-trailers' to remove "
+"trailers with empty values and to add a 'git-version' trailer:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-p4.txt:456
+#. type: delimited block -
+#: en/git-interpret-trailers.txt:382
 #, no-wrap
-msgid "git-p4.user"
+msgid ""
+"$ sed -e 's/ Z$/ /' >commit_template.txt <<EOF\n"
+"> ***subject***\n"
+"> \n"
+"> ***message***\n"
+"> \n"
+"> Fixes: Z\n"
+"> Cc: Z\n"
+"> Reviewed-by: Z\n"
+"> Signed-off-by: Z\n"
+"> EOF\n"
+"$ git config commit.template commit_template.txt\n"
+"$ cat >.git/hooks/commit-msg <<EOF\n"
+"> #!/bin/sh\n"
+"> git interpret-trailers --trim-empty --trailer \"git-version: \\$(git describe)\" \"\\$1\" > \"\\$1.new\"\n"
+"> mv \"\\$1.new\" \"\\$1\"\n"
+"> EOF\n"
+"$ chmod +x .git/hooks/commit-msg\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:459
+#: en/git-interpret-trailers.txt:387
 msgid ""
-"User specified as an option to all p4 commands, with '-u <user>'.  The "
-"environment variable 'P4USER' can be used instead."
+"linkgit:git-commit[1], linkgit:git-format-patch[1], linkgit:git-config[1]"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-p4.txt:460
+#. type: Title =
+#: en/git-log.txt:2
 #, no-wrap
-msgid "git-p4.password"
+msgid "git-log(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:464
-msgid ""
-"Password specified as an option to all p4 commands, with '-P <password>'.  "
-"The environment variable 'P4PASS' can be used instead."
+#: en/git-log.txt:7
+msgid "git-log - Show commit logs"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-p4.txt:465
+#. type: Plain text
+#: en/git-log.txt:13
 #, no-wrap
-msgid "git-p4.port"
+msgid "'git log' [<options>] [<revision range>] [[--] <path>...]\n"
+msgstr ""
+
+#. type: Plain text
+#: en/git-log.txt:17
+msgid "Shows the commit logs."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:469
+#: en/git-log.txt:22
 msgid ""
-"Port specified as an option to all p4 commands, with '-p <port>'.  The "
-"environment variable 'P4PORT' can be used instead."
+"The command takes options applicable to the `git rev-list` command to "
+"control what is shown and how, and options applicable to the `git diff-*` "
+"commands to control how the changes each commit introduces are shown."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:470
+#: en/git-log.txt:27
 #, no-wrap
-msgid "git-p4.host"
+msgid "--follow"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:474
+#: en/git-log.txt:30
 msgid ""
-"Host specified as an option to all p4 commands, with '-h <host>'.  The "
-"environment variable 'P4HOST' can be used instead."
+"Continue listing the history of a file beyond renames (works only for a "
+"single file)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:475
+#: en/git-log.txt:31
 #, no-wrap
-msgid "git-p4.client"
-msgstr ""
-
-#. type: Plain text
-#: en/git-p4.txt:478
-msgid ""
-"Client specified as an option to all p4 commands, with '-c <client>', "
-"including the client spec."
+msgid "--no-decorate"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:479
+#: en/git-log.txt:32
 #, no-wrap
-msgid "git-p4.retries"
+msgid "--decorate[=short|full|auto|no]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:484
+#: en/git-log.txt:40
 msgid ""
-"Specifies the number of times to retry a p4 command (notably, 'p4 sync') if "
-"the network times out. The default value is 3.  Set the value to 0 to "
-"disable retries or if your p4 version does not support retries (pre 2012.2)."
+"Print out the ref names of any commits that are shown. If 'short' is "
+"specified, the ref name prefixes 'refs/heads/', 'refs/tags/' and 'refs/"
+"remotes/' will not be printed. If 'full' is specified, the full ref name "
+"(including prefix) will be printed. If 'auto' is specified, then if the "
+"output is going to a terminal, the ref names are shown as if 'short' were "
+"given, otherwise no ref names are shown. The default option is 'short'."
 msgstr ""
 
-#. type: Title ~
-#: en/git-p4.txt:486
+#. type: Labeled list
+#: en/git-log.txt:41
 #, no-wrap
-msgid "Clone and sync variables"
+msgid "--decorate-refs=<pattern>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:487
+#: en/git-log.txt:42
 #, no-wrap
-msgid "git-p4.syncFromOrigin"
+msgid "--decorate-refs-exclude=<pattern>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:493
+#: en/git-log.txt:47
 msgid ""
-"Because importing commits from other Git repositories is much faster than "
-"importing them from p4, a mechanism exists to find p4 changes first in Git "
-"remotes.  If branches exist under 'refs/remote/origin/p4', those will be "
-"fetched and used when syncing from p4.  This variable can be set to 'false' "
-"to disable this behavior."
+"If no `--decorate-refs` is given, pretend as if all refs were included.  For "
+"each candidate, do not use it for decoration if it matches any patterns "
+"given to `--decorate-refs-exclude` or if it doesn't match any of the "
+"patterns given to `--decorate-refs`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:494
+#: en/git-log.txt:48
 #, no-wrap
-msgid "git-p4.branchUser"
+msgid "--source"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:499
+#: en/git-log.txt:51
 msgid ""
-"One phase in branch detection involves looking at p4 branches to find new "
-"ones to import.  By default, all branches are inspected.  This option limits "
-"the search to just those owned by the single user named in the variable."
+"Print out the ref name given on the command line by which each commit was "
+"reached."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:500
+#: en/git-log.txt:52
 #, no-wrap
-msgid "git-p4.branchList"
+msgid "--use-mailmap"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:505
+#: en/git-log.txt:56
 msgid ""
-"List of branches to be imported when branch detection is enabled.  Each "
-"entry should be a pair of branch names separated by a colon (:).  This "
-"example declares that both branchA and branchB were created from main:"
+"Use mailmap file to map author and committer names and email addresses to "
+"canonical real names and email addresses. See linkgit:git-shortlog[1]."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-p4.txt:509
+#. type: Labeled list
+#: en/git-log.txt:57
 #, no-wrap
-msgid ""
-"git config       git-p4.branchList main:branchA\n"
-"git config --add git-p4.branchList main:branchB\n"
+msgid "--full-diff"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-p4.txt:511
-#, no-wrap
-msgid "git-p4.ignoredP4Labels"
+#. type: Plain text
+#: en/git-log.txt:63
+msgid ""
+"Without this flag, `git log -p <path>...` shows commits that touch the "
+"specified paths, and diffs about the same specified paths.  With this, the "
+"full diff is shown for commits that touch the specified paths; this means "
+"that \"<path>...\" limits only commits, and doesn't limit diff for those "
+"commits."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:514
+#: en/git-log.txt:66
 msgid ""
-"List of p4 labels to ignore. This is built automatically as unimportable "
-"labels are discovered."
+"Note that this affects all diff-based output types, e.g. those produced by "
+"`--stat`, etc."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:515
+#: en/git-log.txt:67
 #, no-wrap
-msgid "git-p4.importLabels"
+msgid "--log-size"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:517
-msgid "Import p4 labels into git, as per --import-labels."
+#: en/git-log.txt:72
+msgid ""
+"Include a line ``log size <number>'' in the output for each commit, where "
+"<number> is the length of that commit's message in bytes.  Intended to speed "
+"up tools that read log messages from `git log` output by allowing them to "
+"allocate space in advance."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:518
+#: en/git-log.txt:73
 #, no-wrap
-msgid "git-p4.labelImportRegexp"
-msgstr ""
-
-#. type: Plain text
-#: en/git-p4.txt:521
-msgid ""
-"Only p4 labels matching this regular expression will be imported. The "
-"default value is '[a-zA-Z0-9_\\-.]+$'."
+msgid "-L <start>,<end>:<file>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:522
+#: en/git-log.txt:74
 #, no-wrap
-msgid "git-p4.useClientSpec"
+msgid "-L :<funcname>:<file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:527
+#: en/git-log.txt:81
 msgid ""
-"Specify that the p4 client spec should be used to identify p4 depot paths of "
-"interest.  This is equivalent to specifying the option `--use-client-spec`.  "
-"See the \"CLIENT SPEC\" section above.  This variable is a boolean, not the "
-"name of a p4 client."
+"Trace the evolution of the line range given by \"<start>,<end>\" (or the "
+"function name regex <funcname>) within the <file>.  You may not give any "
+"pathspec limiters.  This is currently limited to a walk starting from a "
+"single revision, i.e., you may only give zero or one positive revision "
+"arguments.  You can specify this option more than once."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:528
+#: en/git-log.txt:84 en/git-shortlog.txt:63
 #, no-wrap
-msgid "git-p4.pathEncoding"
+msgid "<revision range>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:534
+#: en/git-log.txt:92
 msgid ""
-"Perforce keeps the encoding of a path as given by the originating OS.  Git "
-"expects paths encoded as UTF-8. Use this config to tell git-p4 what encoding "
-"Perforce had used for the paths. This encoding is used to transcode the "
-"paths to UTF-8. As an example, Perforce on Windows often uses \"cp1252\" to "
-"encode path names."
+"Show only commits in the specified revision range.  When no <revision range> "
+"is specified, it defaults to `HEAD` (i.e. the whole history leading to the "
+"current commit).  `origin..HEAD` specifies all the commits reachable from "
+"the current commit (i.e. `HEAD`), but not from `origin`. For a complete list "
+"of ways to spell <revision range>, see the 'Specifying Ranges' section of "
+"linkgit:gitrevisions[7]."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:535
+#: en/git-log.txt:93 en/git-shortlog.txt:72
 #, no-wrap
-msgid "git-p4.largeFileSystem"
+msgid "[--] <path>..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:541
+#: en/git-log.txt:98
 msgid ""
-"Specify the system that is used for large (binary) files. Please note that "
-"large file systems do not support the 'git p4 submit' command.  Only Git LFS "
-"is implemented right now (see https://git-lfs.github.com/ for more "
-"information). Download and install the Git LFS command line extension to use "
-"this option and configure it like this:"
+"Show only commits that are enough to explain how the files that match the "
+"specified paths came to be.  See 'History Simplification' below for details "
+"and other simplification modes."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-p4.txt:544
-#, no-wrap
-msgid "git config       git-p4.largeFileSystem GitLFS\n"
+#. type: Plain text
+#: en/git-log.txt:101 en/git-shortlog.txt:78
+msgid ""
+"Paths may need to be prefixed with `--` to separate them from options or the "
+"revision range, when confusion arises."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-p4.txt:546
+#. type: Title -
+#: en/git-log.txt:107 en/git-show.txt:49
 #, no-wrap
-msgid "git-p4.largeFileExtensions"
-msgstr ""
-
-#. type: Plain text
-#: en/git-p4.txt:549
-msgid ""
-"All files matching a file extension in the list will be processed by the "
-"large file system. Do not prefix the extensions with '.'."
+msgid "COMMON DIFF OPTIONS"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:550
+#: en/git-log.txt:116
 #, no-wrap
-msgid "git-p4.largeFileThreshold"
+msgid "`git log --no-merges`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:554
-msgid ""
-"All files with an uncompressed size exceeding the threshold will be "
-"processed by the large file system. By default the threshold is defined in "
-"bytes. Add the suffix k, m, or g to change the unit."
+#: en/git-log.txt:119
+msgid "Show the whole commit history, but skip any merges"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:555
+#: en/git-log.txt:120
 #, no-wrap
-msgid "git-p4.largeFileCompressedThreshold"
+msgid "`git log v2.6.12.. include/scsi drivers/scsi`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:560
+#: en/git-log.txt:124
 msgid ""
-"All files with a compressed size exceeding the threshold will be processed "
-"by the large file system. This option might slow down your clone/sync "
-"process. By default the threshold is defined in bytes. Add the suffix k, m, "
-"or g to change the unit."
+"Show all commits since version 'v2.6.12' that changed any file in the "
+"`include/scsi` or `drivers/scsi` subdirectories"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:561
+#: en/git-log.txt:125
 #, no-wrap
-msgid "git-p4.largeFilePush"
+msgid "`git log --since=\"2 weeks ago\" -- gitk`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:564
+#: en/git-log.txt:130
 msgid ""
-"Boolean variable which defines if large files are automatically pushed to a "
-"server."
+"Show the changes during the last two weeks to the file 'gitk'.  The `--` is "
+"necessary to avoid confusion with the *branch* named 'gitk'"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:565
+#: en/git-log.txt:131
 #, no-wrap
-msgid "git-p4.keepEmptyCommits"
+msgid "`git log --name-status release..test`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:568
+#: en/git-log.txt:136
 msgid ""
-"A changelist that contains only excluded files will be imported as an empty "
-"commit if this boolean option is set to true."
+"Show the commits that are in the \"test\" branch but not yet in the \"release"
+"\" branch, along with the list of paths each commit modifies."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:569
+#: en/git-log.txt:137
 #, no-wrap
-msgid "git-p4.mapUser"
+msgid "`git log --follow builtin/rev-list.c`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:572
+#: en/git-log.txt:142
 msgid ""
-"Map a P4 user to a name and email address in Git. Use a string with the "
-"following format to create a mapping:"
+"Shows the commits that changed `builtin/rev-list.c`, including those commits "
+"that occurred before the file was given its present name."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-p4.txt:575
+#. type: Labeled list
+#: en/git-log.txt:143
 #, no-wrap
-msgid "git config --add git-p4.mapUser \"p4user = First Last <mail@address.com>\"\n"
+msgid "`git log --branches --not --remotes=origin`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:579
+#: en/git-log.txt:148
 msgid ""
-"A mapping will override any user information from P4. Mappings for multiple "
-"P4 user can be defined."
-msgstr ""
-
-#. type: Title ~
-#: en/git-p4.txt:581
-#, no-wrap
-msgid "Submit variables"
+"Shows all commits that are in any of local branches but not in any of remote-"
+"tracking branches for 'origin' (what you have that origin doesn't)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:582
+#: en/git-log.txt:149
 #, no-wrap
-msgid "git-p4.detectRenames"
+msgid "`git log master --not --remotes=*/master`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:585
+#: en/git-log.txt:153
 msgid ""
-"Detect renames.  See linkgit:git-diff[1].  This can be true, false, or a "
-"score as expected by 'git diff -M'."
+"Shows all commits that are in local master but not in any remote repository "
+"master branches."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:586
+#: en/git-log.txt:154
 #, no-wrap
-msgid "git-p4.detectCopies"
+msgid "`git log -p -m --first-parent`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:589
+#: en/git-log.txt:161
 msgid ""
-"Detect copies.  See linkgit:git-diff[1].  This can be true, false, or a "
-"score as expected by 'git diff -C'."
+"Shows the history including change diffs, but only from the ``main branch'' "
+"perspective, skipping commits that come from merged branches, and showing "
+"full diffs of changes introduced by the merges.  This makes sense only when "
+"following a strict policy of merging all topic branches when staying on a "
+"single integration branch."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:590
+#: en/git-log.txt:162
 #, no-wrap
-msgid "git-p4.detectCopiesHarder"
+msgid "`git log -L '/int main/',/^}/:main.c`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:592
-msgid "Detect copies harder.  See linkgit:git-diff[1].  A boolean."
+#: en/git-log.txt:166
+msgid "Shows how the function `main()` in the file `main.c` evolved over time."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:593
+#: en/git-log.txt:167
 #, no-wrap
-msgid "git-p4.preserveUser"
+msgid "`git log -3`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:596
-msgid ""
-"On submit, re-author changes to reflect the Git author, regardless of who "
-"invokes 'git p4 submit'."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-p4.txt:597
-#, no-wrap
-msgid "git-p4.allowMissingP4Users"
+#: en/git-log.txt:170
+msgid "Limits the number of commits to show to 3."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:601
+#: en/git-log.txt:181
 msgid ""
-"When 'preserveUser' is true, 'git p4' normally dies if it cannot find an "
-"author in the p4 user map.  This setting submits the change regardless."
+"See linkgit:git-config[1] for core variables and linkgit:git-diff[1] for "
+"settings related to diff generation."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:602
+#: en/git-log.txt:182
 #, no-wrap
-msgid "git-p4.skipSubmitEdit"
+msgid "format.pretty"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:606
+#: en/git-log.txt:185
 msgid ""
-"The submit process invokes the editor before each p4 change is submitted.  "
-"If this setting is true, though, the editing step is skipped."
+"Default for the `--format` option.  (See 'Pretty Formats' above.)  Defaults "
+"to `medium`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:607
+#: en/git-log.txt:186
 #, no-wrap
-msgid "git-p4.skipSubmitEditCheck"
+msgid "i18n.logOutputEncoding"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:611
+#: en/git-log.txt:190
 msgid ""
-"After editing the p4 change message, 'git p4' makes sure that the "
-"description really was changed by looking at the file modification time.  "
-"This option disables that test."
+"Encoding to use when displaying logs.  (See 'Discussion' above.)  Defaults "
+"to the value of `i18n.commitEncoding` if set, and UTF-8 otherwise."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:612
+#: en/git-log.txt:191
 #, no-wrap
-msgid "git-p4.allowSubmit"
+msgid "log.date"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:618
+#: en/git-log.txt:195
 msgid ""
-"By default, any branch can be used as the source for a 'git p4 submit' "
-"operation.  This configuration variable, if set, permits only the named "
-"branches to be used as submit sources.  Branch names must be the short names "
-"(no \"refs/heads/\"), and should be separated by commas (\",\"), with no "
-"spaces."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-p4.txt:619
-#, no-wrap
-msgid "git-p4.skipUserNameCheck"
+"Default format for human-readable dates.  (Compare the `--date` option.)  "
+"Defaults to \"default\", which means to write dates like `Sat May 8 19:35:34 "
+"2010 -0500`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:623
+#: en/git-log.txt:199
 msgid ""
-"If the user running 'git p4 submit' does not exist in the p4 user map, 'git "
-"p4' exits.  This option can be used to force submission regardless."
+"If the format is set to \"auto:foo\" and the pager is in use, format \"foo\" "
+"will be the used for the date format. Otherwise \"default\" will be used."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:624
+#: en/git-log.txt:200
 #, no-wrap
-msgid "git-p4.attemptRCSCleanup"
+msgid "log.follow"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:629
+#: en/git-log.txt:205
 msgid ""
-"If enabled, 'git p4 submit' will attempt to cleanup RCS keywords ($Header$, "
-"etc). These would otherwise cause merge conflicts and prevent the submit "
-"going ahead. This option should be considered experimental at present."
+"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."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:630
+#: en/git-log.txt:206
 #, no-wrap
-msgid "git-p4.exportLabels"
+msgid "log.showRoot"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:632
-msgid "Export Git tags to p4 labels, as per --export-labels."
+#: en/git-log.txt:211
+msgid ""
+"If `false`, `git log` and related commands will not treat the initial commit "
+"as a big creation event.  Any root commits in `git log -p` output would be "
+"shown without a diff attached.  The default is `true`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:633
+#: en/git-log.txt:212
 #, no-wrap
-msgid "git-p4.labelExportRegexp"
+msgid "log.showSignature"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:636
+#: en/git-log.txt:215
 msgid ""
-"Only p4 labels matching this regular expression will be exported. The "
-"default value is '[a-zA-Z0-9_\\-.]+$'."
+"If `true`, `git log` and related commands will act as if the `--show-"
+"signature` option was passed to them."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-p4.txt:637
+#: en/git-log.txt:216
 #, no-wrap
-msgid "git-p4.conflict"
+msgid "mailmap.*"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:640
-msgid ""
-"Specify submit behavior when a conflict with p4 is found, as per "
-"--conflict.  The default behavior is 'ask'."
+#: en/git-log.txt:218
+msgid "See linkgit:git-shortlog[1]."
 msgstr ""
 
-#. type: Title -
-#: en/git-p4.txt:642
+#. type: Labeled list
+#: en/git-log.txt:219 en/git-notes.txt:333
 #, no-wrap
-msgid "IMPLEMENTATION DETAILS"
-msgstr ""
-
-#. type: Plain text
-#: en/git-p4.txt:644
-msgid "Changesets from p4 are imported using Git fast-import."
+msgid "notes.displayRef"
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:646
+#: en/git-log.txt:224
 msgid ""
-"Cloning or syncing does not require a p4 client; file contents are collected "
-"using 'p4 print'."
+"Which refs, in addition to the default set by `core.notesRef` or "
+"`GIT_NOTES_REF`, to read notes from when showing commit messages with the "
+"`log` family of commands.  See linkgit:git-notes[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:649
+#: en/git-log.txt:228
 msgid ""
-"Submitting requires a p4 client, which is not in the same location as the "
-"Git repository.  Patches are applied, one at a time, to this p4 client and "
-"submitted from there."
+"May be an unabbreviated ref name or a glob and may be specified multiple "
+"times.  A warning will be issued for refs that do not exist, but a glob that "
+"does not match any refs is silently ignored."
 msgstr ""
 
 #. type: Plain text
-#: en/git-p4.txt:652
+#: en/git-log.txt:232
 msgid ""
-"Each commit imported by 'git p4' has a line at the end of the log message "
-"indicating the p4 depot location and change number.  This line is used by "
-"later 'git p4 sync' operations to know which p4 changes are new."
+"This setting can be disabled by the `--no-notes` option, overridden by the "
+"`GIT_NOTES_DISPLAY_REF` environment variable, and overridden by the `--"
+"notes=<ref>` option."
 msgstr ""
 
 #. type: Title =
-#: en/git-pack-objects.txt:2
+#: en/git-ls-files.txt:2
 #, no-wrap
-msgid "git-pack-objects(1)"
+msgid "git-ls-files(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:7
-msgid "git-pack-objects - Create a packed archive of objects"
+#: en/git-ls-files.txt:7
+msgid ""
+"git-ls-files - Show information about files in the index and the working tree"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:17
+#: en/git-ls-files.txt:23
 #, no-wrap
 msgid ""
-"'git pack-objects' [-q | --progress | --all-progress] "
-"[--all-progress-implied]\n"
-"\t[--no-reuse-delta] [--delta-base-offset] [--non-empty]\n"
-"\t[--local] [--incremental] [--window=<n>] [--depth=<n>]\n"
-"\t[--revs [--unpacked | --all]] [--stdout | base-name]\n"
-"\t[--shallow] [--keep-true-parents] < object-list\n"
+"'git ls-files' [-z] [-t] [-v] [-f]\n"
+"\t\t(--[cached|deleted|others|ignored|stage|unmerged|killed|modified])*\n"
+"\t\t(-[c|d|o|i|s|u|k|m])*\n"
+"\t\t[--eol]\n"
+"\t\t[-x <pattern>|--exclude=<pattern>]\n"
+"\t\t[-X <file>|--exclude-from=<file>]\n"
+"\t\t[--exclude-per-directory=<file>]\n"
+"\t\t[--exclude-standard]\n"
+"\t\t[--error-unmatch] [--with-tree=<tree-ish>]\n"
+"\t\t[--full-name] [--recurse-submodules]\n"
+"\t\t[--abbrev] [--] [<file>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:23
+#: en/git-ls-files.txt:29
 msgid ""
-"Reads list of objects from the standard input, and writes a packed archive "
-"with specified base-name, or to the standard output."
+"This merges the file listing in the directory cache index with the actual "
+"working directory list, and shows different combinations of the two."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:29
+#: en/git-ls-files.txt:32
 msgid ""
-"A packed archive is an efficient way to transfer a set of objects between "
-"two repositories as well as an access efficient archival format.  In a "
-"packed archive, an object is either stored as a compressed whole or as a "
-"difference from some other object.  The latter is often called a delta."
+"One or more of the options below may be used to determine the files shown:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:33
-msgid ""
-"The packed archive format (.pack) is designed to be self-contained so that "
-"it can be unpacked without any further information. Therefore, each object "
-"that a delta depends upon must be present within the pack."
+#: en/git-ls-files.txt:38
+msgid "Show cached files in the output (default)"
 msgstr ""
 
-#. type: Plain text
-#: en/git-pack-objects.txt:39
-msgid ""
-"A pack index file (.idx) is generated for fast, random access to the objects "
-"in the pack. Placing both the index file (.idx) and the packed archive "
-"(.pack) in the pack/ subdirectory of $GIT_OBJECT_DIRECTORY (or any of the "
-"directories on $GIT_ALTERNATE_OBJECT_DIRECTORIES)  enables Git to read from "
-"the pack archive."
+#. type: Labeled list
+#: en/git-ls-files.txt:40
+#, no-wrap
+msgid "--deleted"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:45
-msgid ""
-"The 'git unpack-objects' command can read the packed archive and expand the "
-"objects contained in the pack into \"one-file one-object\" format; this is "
-"typically done by the smart-pull commands when a pack is created on-the-fly "
-"for efficient network transport by their peers."
+#: en/git-ls-files.txt:42
+msgid "Show deleted files in the output"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-pack-objects.txt:49
+#: en/git-ls-files.txt:44
 #, no-wrap
-msgid "base-name"
-msgstr ""
-
-#. type: Plain text
-#: en/git-pack-objects.txt:56
-msgid ""
-"Write into a pair of files (.pack and .idx), using <base-name> to determine "
-"the name of the created file.  When this option is used, the two files are "
-"written in <base-name>-<SHA-1>.{pack,idx} files.  <SHA-1> is a hash based on "
-"the pack content and is written to the standard output of the command."
+msgid "--modified"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:60
-msgid ""
-"Write the pack contents (what would have been written to .pack file) out to "
-"the standard output."
+#: en/git-ls-files.txt:46
+msgid "Show modified files in the output"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-pack-objects.txt:61
+#: en/git-ls-files.txt:48
 #, no-wrap
-msgid "--revs"
+msgid "--others"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:69
-msgid ""
-"Read the revision arguments from the standard input, instead of individual "
-"object names.  The revision arguments are processed the same way as 'git "
-"rev-list' with the `--objects` flag uses its `commit` arguments to build the "
-"list of objects it outputs.  The objects on the resulting list are packed.  "
-"Besides revisions, `--not` or `--shallow <SHA-1>` lines are also accepted."
+#: en/git-ls-files.txt:50
+msgid "Show other (i.e. untracked) files in the output"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-pack-objects.txt:70 en/rev-list-options.txt:693
+#: en/git-ls-files.txt:52
 #, no-wrap
-msgid "--unpacked"
+msgid "--ignored"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:74
+#: en/git-ls-files.txt:58
 msgid ""
-"This implies `--revs`.  When processing the list of revision arguments read "
-"from the standard input, limit the objects packed to those that are not "
-"already packed."
+"Show only ignored files in the output. When showing files in the index, "
+"print only those matched by an exclude pattern. When showing \"other\" "
+"files, show only those matched by an exclude pattern. Standard ignore rules "
+"are not automatically activated, therefore at least one of the `--exclude*` "
+"options is required."
 msgstr ""
 
-#. type: Plain text
-#: en/git-pack-objects.txt:80
-msgid ""
-"This implies `--revs`.  In addition to the list of revision arguments read "
-"from the standard input, pretend as if all refs under `refs/` are specified "
-"to be included."
+#. type: Labeled list
+#: en/git-ls-files.txt:60
+#, no-wrap
+msgid "--stage"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:85
+#: en/git-ls-files.txt:62
 msgid ""
-"Include unasked-for annotated tags if the object they reference was included "
-"in the resulting packfile.  This can be useful to send new tags to native "
-"Git clients."
+"Show staged contents' mode bits, object name and stage number in the output."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-pack-objects.txt:86 en/git-repack.txt:84
+#: en/git-ls-files.txt:63
 #, no-wrap
-msgid "--window=<n>"
+msgid "--directory"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:98
+#: en/git-ls-files.txt:66
 msgid ""
-"These two options affect how the objects contained in the pack are stored "
-"using delta compression.  The objects are first internally sorted by type, "
-"size and optionally names and compared against the other objects within "
-"--window to see if using delta compression saves space.  --depth limits the "
-"maximum delta depth; making it too deep affects the performance on the "
-"unpacker side, because delta data needs to be applied that many times to get "
-"to the necessary object.  The default value for --window is 10 and --depth "
-"is 50."
+"If a whole directory is classified as \"other\", show just its name (with a "
+"trailing slash) and not its whole contents."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-pack-objects.txt:99 en/git-repack.txt:95
+#: en/git-ls-files.txt:67
 #, no-wrap
-msgid "--window-memory=<n>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-pack-objects.txt:109
-msgid ""
-"This option provides an additional limit on top of `--window`; the window "
-"size will dynamically scale down so as to not take up more than '<n>' bytes "
-"in memory.  This is useful in repositories with a mix of large and small "
-"objects to not run out of memory with a large window, but still be able to "
-"take advantage of the large window for the smaller objects.  The size can be "
-"suffixed with \"k\", \"m\", or \"g\".  `--window-memory=0` makes memory "
-"usage unlimited.  The default is taken from the `pack.windowMemory` "
-"configuration variable."
+msgid "--no-empty-directory"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:117 en/git-repack.txt:115
-msgid ""
-"Maximum size of each output pack file. The size can be suffixed with \"k\", "
-"\"m\", or \"g\". The minimum size allowed is limited to 1 MiB.  If "
-"specified, multiple packfiles may be created, which also prevents the "
-"creation of a bitmap index.  The default is unlimited, unless the config "
-"variable `pack.packSizeLimit` is set."
+#: en/git-ls-files.txt:69
+msgid "Do not list empty directories. Has no effect without --directory."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-pack-objects.txt:118
+#: en/git-ls-files.txt:71 en/git-update-index.txt:67
 #, no-wrap
-msgid "--honor-pack-keep"
+msgid "--unmerged"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:122
-msgid ""
-"This flag causes an object already in a local pack that has a .keep file to "
-"be ignored, even if it would have otherwise been packed."
+#: en/git-ls-files.txt:73
+msgid "Show unmerged files in the output (forces --stage)"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-pack-objects.txt:123 en/git-svn.txt:357 en/blame-options.txt:48
+#: en/git-ls-files.txt:75
 #, no-wrap
-msgid "--incremental"
+msgid "--killed"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:126
+#: en/git-ls-files.txt:79
 msgid ""
-"This flag causes an object already in a pack to be ignored even if it would "
-"have otherwise been packed."
+"Show files on the filesystem that need to be removed due to file/directory "
+"conflicts for checkout-index to succeed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:131
+#: en/git-ls-files.txt:83
 msgid ""
-"This flag causes an object that is borrowed from an alternate object store "
-"to be ignored even if it would have otherwise been packed."
+"\\0 line termination on output and do not quote filenames.  See OUTPUT below "
+"for more information."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-pack-objects.txt:132
+#: en/git-ls-files.txt:84
 #, no-wrap
-msgid "--non-empty"
+msgid "-x <pattern>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:135
-msgid "Only create a packed archive if it would contain at least one object."
+#: en/git-ls-files.txt:89
+msgid ""
+"Skip untracked files matching pattern.  Note that pattern is a shell "
+"wildcard pattern. See EXCLUDE PATTERNS below for more information."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-pack-objects.txt:142
+#: en/git-ls-files.txt:90
 #, no-wrap
-msgid "--all-progress"
+msgid "-X <file>"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-ls-files.txt:91
+#, no-wrap
+msgid "--exclude-from=<file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:152
-msgid ""
-"When --stdout is specified then progress report is displayed during the "
-"object count and compression phases but inhibited during the write-out "
-"phase. The reason is that in some cases the output stream is directly linked "
-"to another command which may wish to display progress status of its own as "
-"it processes incoming pack data.  This flag is like --progress except that "
-"it forces progress report for the write-out phase as well even if --stdout "
-"is used."
+#: en/git-ls-files.txt:93
+msgid "Read exclude patterns from <file>; 1 per line."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-pack-objects.txt:153
+#: en/git-ls-files.txt:94
 #, no-wrap
-msgid "--all-progress-implied"
+msgid "--exclude-per-directory=<file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:157
+#: en/git-ls-files.txt:97
 msgid ""
-"This is used to imply --all-progress whenever progress display is "
-"activated.  Unlike --all-progress this flag doesn't actually force any "
-"progress display by itself."
+"Read additional exclude patterns that apply only to the directory and its "
+"subdirectories in <file>."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:161
+#: en/git-ls-files.txt:101
 msgid ""
-"This flag makes the command not to report its progress on the standard error "
-"stream."
+"Add the standard Git exclusions: .git/info/exclude, .gitignore in each "
+"directory, and the user's global exclusion file."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-pack-objects.txt:162
+#: en/git-ls-files.txt:102
 #, no-wrap
-msgid "--no-reuse-delta"
+msgid "--error-unmatch"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:168
+#: en/git-ls-files.txt:105
 msgid ""
-"When creating a packed archive in a repository that has existing packs, the "
-"command reuses existing deltas.  This sometimes results in a slightly "
-"suboptimal pack.  This flag tells the command not to reuse existing deltas "
-"but compute them from scratch."
+"If any <file> does not appear in the index, treat this as an error (return "
+"1)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-pack-objects.txt:169
+#: en/git-ls-files.txt:106
 #, no-wrap
-msgid "--no-reuse-object"
+msgid "--with-tree=<tree-ish>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:175
+#: en/git-ls-files.txt:112
 msgid ""
-"This flag tells the command not to reuse existing object data at all, "
-"including non deltified object, forcing recompression of everything.  This "
-"implies --no-reuse-delta. Useful only in the obscure case where wholesale "
-"enforcement of a different compression level on the packed data is desired."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-pack-objects.txt:176
-#, no-wrap
-msgid "--compression=<n>"
+"When using --error-unmatch to expand the user supplied <file> (i.e. path "
+"pattern) arguments to paths, pretend that paths which were removed in the "
+"index since the named <tree-ish> are still present.  Using this option with "
+"`-s` or `-u` options does not make any sense."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:183
+#: en/git-ls-files.txt:120
 msgid ""
-"Specifies compression level for newly-compressed data in the generated "
-"pack.  If not specified, pack compression level is determined first by "
-"pack.compression, then by core.compression, and defaults to -1, the zlib "
-"default, if neither is set.  Add --no-reuse-object if you want to force a "
-"uniform compression level on all data no matter the source."
+"This feature is semi-deprecated. For scripting purpose, linkgit:git-"
+"status[1] `--porcelain` and linkgit:git-diff-files[1] `--name-status` are "
+"almost always superior alternatives, and users should look at linkgit:git-"
+"status[1] `--short` or linkgit:git-diff[1] `--name-status` for more user-"
+"friendly alternatives."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:188
+#: en/git-ls-files.txt:123
 msgid ""
-"Create a \"thin\" pack by omitting the common objects between a sender and a "
-"receiver in order to reduce network transfer. This option only makes sense "
-"in conjunction with --stdout."
+"This option identifies the file status with the following tags (followed by "
+"a space) at the start of each line:"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-ls-files.txt:124
+#, no-wrap
+msgid "H"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:193
-msgid ""
-"Note: A thin pack violates the packed archive format by omitting required "
-"objects and is thus unusable by Git without making it self-contained. Use "
-"`git index-pack --fix-thin` (see linkgit:git-index-pack[1]) to restore the "
-"self-contained property."
+#: en/git-ls-files.txt:125
+msgid "cached"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-pack-objects.txt:194
+#: en/git-ls-files.txt:125
 #, no-wrap
-msgid "--shallow"
+msgid "S"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:198
-msgid ""
-"Optimize a pack that will be provided to a client with a shallow "
-"repository.  This option, combined with --thin, can result in a smaller pack "
-"at the cost of speed."
+#: en/git-ls-files.txt:126
+msgid "skip-worktree"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-pack-objects.txt:199
+#: en/git-ls-files.txt:126
 #, no-wrap
-msgid "--delta-base-offset"
+msgid "M"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:209
-msgid ""
-"A packed archive can express the base object of a delta as either a 20-byte "
-"object name or as an offset in the stream, but ancient versions of Git don't "
-"understand the latter.  By default, 'git pack-objects' only uses the former "
-"format for better compatibility.  This option allows the command to use the "
-"latter format for compactness.  Depending on the average delta chain length, "
-"this option typically shrinks the resulting packfile by 3-5 per-cent."
+#: en/git-ls-files.txt:127
+msgid "unmerged"
 msgstr ""
 
-#. type: Plain text
-#: en/git-pack-objects.txt:214
-msgid ""
-"Note: Porcelain commands such as `git gc` (see linkgit:git-gc[1]), `git "
-"repack` (see linkgit:git-repack[1]) pass this option by default in modern "
-"Git when they put objects in your repository into pack files.  So does `git "
-"bundle` (see linkgit:git-bundle[1]) when it creates a bundle."
+#. type: Labeled list
+#: en/git-ls-files.txt:127
+#, no-wrap
+msgid "R"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:224
-msgid ""
-"Specifies the number of threads to spawn when searching for best delta "
-"matches.  This requires that pack-objects be compiled with pthreads "
-"otherwise this option is ignored with a warning.  This is meant to reduce "
-"packing time on multiprocessor machines.  The required amount of memory for "
-"the delta search window is however multiplied by the number of threads.  "
-"Specifying 0 will cause Git to auto-detect the number of CPU's and set the "
-"number of threads accordingly."
+#: en/git-ls-files.txt:128
+msgid "removed/deleted"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-pack-objects.txt:230
+#: en/git-ls-files.txt:128
 #, no-wrap
-msgid "--keep-true-parents"
+msgid "C"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:233
-msgid "With this option, parents that are hidden by grafts are packed nevertheless."
+#: en/git-ls-files.txt:129
+msgid "modified/changed"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-ls-files.txt:129
+#, no-wrap
+msgid "K"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-objects.txt:239
-msgid "linkgit:git-rev-list[1] linkgit:git-repack[1] linkgit:git-prune-packed[1]"
+#: en/git-ls-files.txt:130
+msgid "to be killed"
 msgstr ""
 
-#. type: Title =
-#: en/git-pack-redundant.txt:2
+#. type: Labeled list
+#: en/git-ls-files.txt:130
 #, no-wrap
-msgid "git-pack-redundant(1)"
+msgid "?"
 msgstr ""
 
-#. type: Plain text
-#: en/git-pack-redundant.txt:7
-msgid "git-pack-redundant - Find redundant pack files"
+#. type: Title ~
+#: en/git-ls-files.txt:131 en/git.txt:513
+#, no-wrap
+msgid "other"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-redundant.txt:13
-#, no-wrap
+#: en/git-ls-files.txt:136
 msgid ""
-"'git pack-redundant' [ --verbose ] [ --alt-odb ] < --all | .pack filename "
-"... >\n"
+"Similar to `-t`, but use lowercase letters for files that are marked as "
+"'assume unchanged' (see linkgit:git-update-index[1])."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-redundant.txt:19
+#: en/git-ls-files.txt:141
 msgid ""
-"This program computes which packs in your repository are redundant. The "
-"output is suitable for piping to `xargs rm` if you are in the root of the "
-"repository."
+"Similar to `-t`, but use lowercase letters for files that are marked as "
+"'fsmonitor valid' (see linkgit:git-update-index[1])."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-redundant.txt:24
+#: en/git-ls-files.txt:151
 msgid ""
-"'git pack-redundant' accepts a list of objects on standard input. Any "
-"objects given will be ignored when checking which packs are required. This "
-"makes the following command useful when wanting to remove packs which "
-"contain unreachable objects."
+"Recursively calls ls-files on each submodule in the repository.  Currently "
+"there is only support for the --cached mode."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-redundant.txt:27
+#: en/git-ls-files.txt:156 en/git-ls-tree.txt:67
 msgid ""
-"git fsck --full --unreachable | cut -d ' ' -f3 | \\ git pack-redundant --all "
-"| xargs rm"
+"Instead of showing the full 40-byte hexadecimal object lines, show only a "
+"partial prefix.  Non default number of digits can be specified with --"
+"abbrev=<n>."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-redundant.txt:34
-msgid "Processes all packs. Any filenames on the command line are ignored."
+#: en/git-ls-files.txt:162
+msgid ""
+"After each line that describes a file, add more data about its cache entry.  "
+"This is intended to show as much information as possible for manual "
+"inspection; the exact format may change at any time."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-pack-redundant.txt:35
+#: en/git-ls-files.txt:163
 #, no-wrap
-msgid "--alt-odb"
+msgid "--eol"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-redundant.txt:38
+#: en/git-ls-files.txt:168
 msgid ""
-"Don't require objects present in packs from alternate object directories to "
-"be present in local packs."
+"Show <eolinfo> and <eolattr> of files.  <eolinfo> is the file content "
+"identification used by Git when the \"text\" attribute is \"auto\" (or not "
+"set and core.autocrlf is not false).  <eolinfo> is either \"-text\", \"none"
+"\", \"lf\", \"crlf\", \"mixed\" or \"\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-redundant.txt:41
-msgid "Outputs some statistics to stderr. Has a small performance penalty."
+#: en/git-ls-files.txt:171
+msgid ""
+"\"\" means the file is not a regular file, it is not in the index or not "
+"accessible in the working tree."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-redundant.txt:47
+#: en/git-ls-files.txt:175
 msgid ""
-"linkgit:git-pack-objects[1] linkgit:git-repack[1] "
-"linkgit:git-prune-packed[1]"
-msgstr ""
-
-#. type: Title =
-#: en/git-pack-refs.txt:2
-#, no-wrap
-msgid "git-pack-refs(1)"
+"<eolattr> is the attribute that is used when checking out or committing, it "
+"is either \"\", \"-text\", \"text\", \"text=auto\", \"text eol=lf\", \"text "
+"eol=crlf\".  Since Git 2.10 \"text=auto eol=lf\" and \"text=auto eol=crlf\" "
+"are supported."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-refs.txt:7
-msgid "git-pack-refs - Pack heads and tags for efficient repository access"
+#: en/git-ls-files.txt:179
+msgid ""
+"Both the <eolinfo> in the index (\"i/<eolinfo>\")  and in the working tree "
+"(\"w/<eolinfo>\") are shown for regular files, followed by the (\"attr/"
+"<eolattr>\")."
 msgstr ""
 
-#. type: Plain text
-#: en/git-pack-refs.txt:12
+#. type: Labeled list
+#: en/git-ls-files.txt:183 en/git.txt:331 en/git-update-index.txt:224
 #, no-wrap
-msgid "'git pack-refs' [--all] [--no-prune]\n"
+msgid "<file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-refs.txt:24
+#: en/git-ls-files.txt:186
 msgid ""
-"Traditionally, tips of branches and tags (collectively known as 'refs') were "
-"stored one file per ref in a (sub)directory under `$GIT_DIR/refs` "
-"directory.  While many branch tips tend to be updated often, most tags and "
-"some branch tips are never updated.  When a repository has hundreds or "
-"thousands of tags, this one-file-per-ref format both wastes storage and "
-"hurts performance."
+"Files to show. If no files are given all files which match the other "
+"specified criteria are shown."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-refs.txt:31
+#: en/git-ls-files.txt:191
 msgid ""
-"This command is used to solve the storage and performance problem by storing "
-"the refs in a single file, `$GIT_DIR/packed-refs`.  When a ref is missing "
-"from the traditional `$GIT_DIR/refs` directory hierarchy, it is looked up in "
-"this file and used if found."
+"'git ls-files' just outputs the filenames unless `--stage` is specified in "
+"which case it outputs:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-refs.txt:34
-msgid ""
-"Subsequent updates to branches always create new files under `$GIT_DIR/refs` "
-"directory hierarchy."
+#: en/git-ls-files.txt:193
+#, no-wrap
+msgid "        [<tag> ]<mode> <object> <stage> <file>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-refs.txt:43
+#: en/git-ls-files.txt:196
+#, no-wrap
 msgid ""
-"A recommended practice to deal with a repository with too many refs is to "
-"pack its refs with `--all` once, and occasionally run `git pack-refs`.  Tags "
-"are by definition stationary and are not expected to change.  Branch heads "
-"will be packed with the initial `pack-refs --all`, but only the currently "
-"active branch heads will become unpacked, and the next `pack-refs` (without "
-"`--all`) will leave them unpacked."
+"'git ls-files --eol' will show\n"
+"\ti/<eolinfo><SPACES>w/<eolinfo><SPACES>attr/<eolattr><SPACE*><TAB><file>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-refs.txt:56
+#: en/git-ls-files.txt:199
 msgid ""
-"The command by default packs all tags and refs that are already packed, and "
-"leaves other refs alone.  This is because branches are expected to be "
-"actively developed and packing their tips does not help performance.  This "
-"option causes branch tips to be packed as well.  Useful for a repository "
-"with many branches of historical interests."
+"'git ls-files --unmerged' and 'git ls-files --stage' can be used to examine "
+"detailed information on unmerged paths."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-refs.txt:61
+#: en/git-ls-files.txt:205
 msgid ""
-"The command usually removes loose refs under `$GIT_DIR/refs` hierarchy after "
-"packing them.  This option tells it not to."
+"For an unmerged path, instead of recording a single mode/SHA-1 pair, the "
+"index records up to three such pairs; one from tree O in stage 1, A in stage "
+"2, and B in stage 3.  This information can be used by the user (or the "
+"porcelain) to see what should eventually be recorded at the path. (see "
+"linkgit:git-read-tree[1] for more information on state)"
+msgstr ""
+
+#. type: Title -
+#: en/git-ls-files.txt:213
+#, no-wrap
+msgid "EXCLUDE PATTERNS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pack-refs.txt:69
+#: en/git-ls-files.txt:219
 msgid ""
-"Older documentation written before the packed-refs mechanism was introduced "
-"may still say things like \".git/refs/heads/<branch> file exists\" when it "
-"means \"branch <branch> exists\"."
+"'git ls-files' can use a list of \"exclude patterns\" when traversing the "
+"directory tree and finding files to show when the flags --others or --"
+"ignored are specified.  linkgit:gitignore[5] specifies the format of exclude "
+"patterns."
 msgstr ""
 
-#. type: Title =
-#: en/git-parse-remote.txt:2
-#, no-wrap
-msgid "git-parse-remote(1)"
+#. type: Plain text
+#: en/git-ls-files.txt:221
+msgid "These exclude patterns come from these places, in order:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-parse-remote.txt:7
+#: en/git-ls-files.txt:225
 msgid ""
-"git-parse-remote - Routines to help parsing remote repository access "
-"parameters"
+"The command-line flag --exclude=<pattern> specifies a single pattern.  "
+"Patterns are ordered in the same order they appear in the command line."
 msgstr ""
 
 #. type: Plain text
-#: en/git-parse-remote.txt:13
-#, no-wrap
-msgid "'. \"$(git --exec-path)/git-parse-remote\"'\n"
+#: en/git-ls-files.txt:229
+msgid ""
+"The command-line flag --exclude-from=<file> specifies a file containing a "
+"list of patterns.  Patterns are ordered in the same order they appear in the "
+"file."
 msgstr ""
 
 #. type: Plain text
-#: en/git-parse-remote.txt:20
+#: en/git-ls-files.txt:235
 msgid ""
-"This script is included in various scripts to supply routines to parse files "
-"under $GIT_DIR/remotes/ and $GIT_DIR/branches/ and configuration variables "
-"that are related to fetching, pulling and pushing."
+"The command-line flag --exclude-per-directory=<name> specifies a name of the "
+"file in each directory 'git ls-files' examines, normally `.gitignore`.  "
+"Files in deeper directories take precedence.  Patterns are ordered in the "
+"same order they appear in the files."
 msgstr ""
 
-#. type: Title =
-#: en/git-patch-id.txt:2
-#, no-wrap
-msgid "git-patch-id(1)"
+#. type: Plain text
+#: en/git-ls-files.txt:241
+msgid ""
+"A pattern specified on the command line with --exclude or read from the file "
+"specified with --exclude-from is relative to the top of the directory tree.  "
+"A pattern read from a file specified by --exclude-per-directory is relative "
+"to the directory that the pattern file appears in."
 msgstr ""
 
 #. type: Plain text
-#: en/git-patch-id.txt:7
-msgid "git-patch-id - Compute unique ID for a patch"
+#: en/git-ls-files.txt:245
+msgid "linkgit:git-read-tree[1], linkgit:gitignore[5]"
 msgstr ""
 
-#. type: Plain text
-#: en/git-patch-id.txt:12
+#. type: Title =
+#: en/git-ls-remote.txt:2
 #, no-wrap
-msgid "'git patch-id' [--stable | --unstable]\n"
+msgid "git-ls-remote(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-patch-id.txt:16
-msgid "Read a patch from the standard input and compute the patch ID for it."
+#: en/git-ls-remote.txt:7
+msgid "git-ls-remote - List references in a remote repository"
 msgstr ""
 
 #. type: Plain text
-#: en/git-patch-id.txt:21
+#: en/git-ls-remote.txt:15
+#, no-wrap
 msgid ""
-"A \"patch ID\" is nothing but a sum of SHA-1 of the file diffs associated "
-"with a patch, with whitespace and line numbers ignored.  As such, it's "
-"\"reasonably stable\", but at the same time also reasonably unique, i.e., "
-"two patches that have the same \"patch ID\" are almost guaranteed to be the "
-"same thing."
-msgstr ""
-
-#. type: Plain text
-#: en/git-patch-id.txt:23
-msgid "IOW, you can use this thing to look for likely duplicate commits."
+"'git ls-remote' [--heads] [--tags] [--refs] [--upload-pack=<exec>]\n"
+"\t      [-q | --quiet] [--exit-code] [--get-url] [--sort=<key>]\n"
+"\t      [--symref] [<repository> [<refs>...]]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-patch-id.txt:29
+#: en/git-ls-remote.txt:20
 msgid ""
-"When dealing with 'git diff-tree' output, it takes advantage of the fact "
-"that the patch is prefixed with the object name of the commit, and outputs "
-"two 40-byte hexadecimal strings.  The first string is the patch ID, and the "
-"second string is the commit ID.  This can be used to make a mapping from "
-"patch ID to commit ID."
+"Displays references available in a remote repository along with the "
+"associated commit IDs."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-patch-id.txt:33
+#: en/git-ls-remote.txt:25 en/git-show-ref.txt:40
 #, no-wrap
-msgid "--stable"
+msgid "--heads"
 msgstr ""
 
 #. type: Plain text
-#: en/git-patch-id.txt:35
-msgid "Use a \"stable\" sum of hashes as the patch ID. With this option:"
+#: en/git-ls-remote.txt:32
+msgid ""
+"Limit to only refs/heads and refs/tags, respectively.  These options are "
+"_not_ mutually exclusive; when given both, references stored in refs/heads "
+"and refs/tags are displayed."
 msgstr ""
 
-#. type: Plain text
-#: en/git-patch-id.txt:41
-msgid ""
-"Reordering file diffs that make up a patch does not affect the ID.  In "
-"particular, two patches produced by comparing the same two trees with two "
-"different settings for \"-O<orderfile>\" result in the same patch ID "
-"signature, thereby allowing the computed result to be used as a key to index "
-"some meta-information about the change between the two trees;"
+#. type: Labeled list
+#: en/git-ls-remote.txt:33
+#, no-wrap
+msgid "--refs"
 msgstr ""
 
 #. type: Plain text
-#: en/git-patch-id.txt:47
-msgid ""
-"Result is different from the value produced by git 1.9 and older or produced "
-"when an \"unstable\" hash (see --unstable below) is configured - even when "
-"used on a diff output taken without any use of \"-O<orderfile>\", thereby "
-"making existing databases storing such \"unstable\" or historical patch-ids "
-"unusable."
+#: en/git-ls-remote.txt:35
+msgid "Do not show peeled tags or pseudorefs like HEAD\tin the output."
 msgstr ""
 
 #. type: Plain text
-#: en/git-patch-id.txt:49
-#, no-wrap
-msgid "This is the default if patchid.stable is set to true.\n"
+#: en/git-ls-remote.txt:39
+msgid "Do not print remote URL to stderr."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-patch-id.txt:50
+#: en/git-ls-remote.txt:40
 #, no-wrap
-msgid "--unstable"
+msgid "--upload-pack=<exec>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-patch-id.txt:56
+#: en/git-ls-remote.txt:45
 msgid ""
-"Use an \"unstable\" hash as the patch ID. With this option, the result "
-"produced is compatible with the patch-id value produced by git 1.9 and "
-"older.  Users with pre-existing databases storing patch-ids produced by git "
-"1.9 and older (who do not deal with reordered patches) may want to use this "
-"option."
-msgstr ""
-
-#. type: Plain text
-#: en/git-patch-id.txt:58
-msgid "This is the default."
+"Specify the full path of 'git-upload-pack' on the remote host. This allows "
+"listing references from repositories accessed via SSH and where the SSH "
+"daemon does not use the PATH configured by the user."
 msgstr ""
 
 #. type: Plain text
-#: en/git-patch-id.txt:61
-msgid "The diff to create the ID of."
+#: en/git-ls-remote.txt:51
+msgid ""
+"Exit with status \"2\" when no matching refs are found in the remote "
+"repository. Usually the command exits with status \"0\" to indicate it "
+"successfully talked with the remote repository, whether it found any "
+"matching refs."
 msgstr ""
 
-#. type: Title =
-#: en/git-prune-packed.txt:2
+#. type: Labeled list
+#: en/git-ls-remote.txt:52
 #, no-wrap
-msgid "git-prune-packed(1)"
+msgid "--get-url"
 msgstr ""
 
 #. type: Plain text
-#: en/git-prune-packed.txt:7
-msgid "git-prune-packed - Remove extra objects that are already in pack files"
+#: en/git-ls-remote.txt:56
+msgid ""
+"Expand the URL of the given remote repository taking into account any \"url."
+"<base>.insteadOf\" config setting (See linkgit:git-config[1]) and exit "
+"without talking to the remote."
 msgstr ""
 
-#. type: Plain text
-#: en/git-prune-packed.txt:13
+#. type: Labeled list
+#: en/git-ls-remote.txt:57
 #, no-wrap
-msgid "'git prune-packed' [-n|--dry-run] [-q|--quiet]\n"
+msgid "--symref"
 msgstr ""
 
 #. type: Plain text
-#: en/git-prune-packed.txt:19
+#: en/git-ls-remote.txt:62
 msgid ""
-"This program searches the `$GIT_OBJECT_DIRECTORY` for all objects that "
-"currently exist in a pack file as well as the independent object "
-"directories."
-msgstr ""
-
-#. type: Plain text
-#: en/git-prune-packed.txt:21
-msgid "All such extra objects are removed."
+"In addition to the object pointed by it, show the underlying ref pointed by "
+"it when showing a symbolic ref.  Currently, upload-pack only shows the "
+"symref HEAD, so it will be the only one shown by ls-remote."
 msgstr ""
 
 #. type: Plain text
-#: en/git-prune-packed.txt:24 en/git-repack.txt:24
+#: en/git-ls-remote.txt:72
 msgid ""
-"A pack is a collection of objects, individually compressed, with delta "
-"compression applied, stored in a single file, with an associated index file."
+"Sort based on the key given. Prefix `-` to sort in descending order of the "
+"value. Supports \"version:refname\" or \"v:refname\" (tag names are treated "
+"as versions). The \"version:refname\" sort order can also be affected by the "
+"\"versionsort.suffix\" configuration variable.  See linkgit:git-for-each-"
+"ref[1] for more sort options, but be aware keys like `committerdate` that "
+"require access to the objects themselves will not work for refs whose "
+"objects have not yet been fetched from the remote, and will give a `missing "
+"object` error."
 msgstr ""
 
 #. type: Plain text
-#: en/git-prune-packed.txt:27 en/git-repack.txt:27
+#: en/git-ls-remote.txt:85
 msgid ""
-"Packs are used to reduce the load on mirror systems, backup engines, disk "
-"storage, etc."
+"The \"remote\" repository to query.  This parameter can be either a URL or "
+"the name of a remote (see the GIT URLS and REMOTES sections of linkgit:git-"
+"fetch[1])."
 msgstr ""
 
 #. type: Plain text
-#: en/git-prune-packed.txt:35
+#: en/git-ls-remote.txt:91
 msgid ""
-"Don't actually remove any objects, only show those that would have been "
-"removed."
+"When unspecified, all references, after filtering done with --heads and --"
+"tags, are shown.  When <refs>... are specified, only references matching the "
+"given patterns are displayed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-prune-packed.txt:39
-msgid "Squelch the progress indicator."
+#: en/git-ls-remote.txt:110
+#, no-wrap
+msgid ""
+"\t$ git ls-remote --tags ./.\n"
+"\td6602ec5194c87b0fc87103ca4d67251c76f233a\trefs/tags/v0.99\n"
+"\tf25a265a342aed6041ab0cc484224d9ca54b6f41\trefs/tags/v0.99.1\n"
+"\t7ceca275d047c90c0c7d5afb13ab97efdf51bd6e\trefs/tags/v0.99.3\n"
+"\tc5db5456ae3b0873fc659c19fafdde22313cc441\trefs/tags/v0.99.2\n"
+"\t0918385dbd9656cab0d1d81ba7453d49bbc16250\trefs/tags/junio-gpg-pub\n"
+"\t$ git ls-remote http://www.kernel.org/pub/scm/git/git.git master pu rc\n"
+"\t5fe978a5381f1fbad26a80e682ddd2a401966740\trefs/heads/master\n"
+"\tc781a84b5204fb294c9ccc79f8b3baceeb32c061\trefs/heads/pu\n"
+"\t$ git remote add korg http://www.kernel.org/pub/scm/git/git.git\n"
+"\t$ git ls-remote --tags korg v\\*\n"
+"\td6602ec5194c87b0fc87103ca4d67251c76f233a\trefs/tags/v0.99\n"
+"\tf25a265a342aed6041ab0cc484224d9ca54b6f41\trefs/tags/v0.99.1\n"
+"\tc5db5456ae3b0873fc659c19fafdde22313cc441\trefs/tags/v0.99.2\n"
+"\t7ceca275d047c90c0c7d5afb13ab97efdf51bd6e\trefs/tags/v0.99.3\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-prune-packed.txt:44
-msgid "linkgit:git-pack-objects[1] linkgit:git-repack[1]"
+#: en/git-ls-remote.txt:114
+msgid "linkgit:git-check-ref-format[1]."
 msgstr ""
 
 #. type: Title =
-#: en/git-prune.txt:2
+#: en/git-ls-tree.txt:2
 #, no-wrap
-msgid "git-prune(1)"
+msgid "git-ls-tree(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-prune.txt:7
-msgid "git-prune - Prune all unreachable objects from the object database"
+#: en/git-ls-tree.txt:7
+msgid "git-ls-tree - List the contents of a tree object"
 msgstr ""
 
 #. type: Plain text
-#: en/git-prune.txt:13
+#: en/git-ls-tree.txt:15
 #, no-wrap
-msgid "'git prune' [-n] [-v] [--expire <expire>] [--] [<head>...]\n"
+msgid ""
+"'git ls-tree' [-d] [-r] [-t] [-l] [-z]\n"
+"\t    [--name-only] [--name-status] [--full-name] [--full-tree] [--abbrev[=<n>]]\n"
+"\t    <tree-ish> [<path>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-prune.txt:19
+#: en/git-ls-tree.txt:20
 msgid ""
-"In most cases, users should run 'git gc', which calls 'git prune'. See the "
-"section \"NOTES\", below."
+"Lists the contents of a given tree object, like what \"/bin/ls -a\" does in "
+"the current working directory.  Note that:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-prune.txt:29
+#: en/git-ls-tree.txt:25
 msgid ""
-"This runs 'git fsck --unreachable' using all the refs available in `refs/`, "
-"optionally with additional set of objects specified on the command line, and "
-"prunes all unpacked objects unreachable from any of these head objects from "
-"the object database.  In addition, it prunes the unpacked objects that are "
-"also found in packs by running 'git prune-packed'.  It also removes entries "
-"from .git/shallow that are not reachable by any ref."
+"the behaviour is slightly different from that of \"/bin/ls\" in that the "
+"'<path>' denotes just a list of patterns to match, e.g. so specifying "
+"directory name (without `-r`) will behave differently, and order of the "
+"arguments does not matter."
 msgstr ""
 
 #. type: Plain text
-#: en/git-prune.txt:32
+#: en/git-ls-tree.txt:35
 msgid ""
-"Note that unreachable, packed objects will remain.  If this is not desired, "
-"see linkgit:git-repack[1]."
+"the behaviour is similar to that of \"/bin/ls\" in that the '<path>' is "
+"taken as relative to the current working directory.  E.g. when you are in a "
+"directory 'sub' that has a directory 'dir', you can run 'git ls-tree -r HEAD "
+"dir' to list the contents of the tree (that is 'sub/dir' in `HEAD`).  You "
+"don't want to give a tree that is not at the root level (e.g. `git ls-tree -"
+"r HEAD:sub dir`) in this case, as that would result in asking for 'sub/sub/"
+"dir' in the `HEAD` commit.  However, the current working directory can be "
+"ignored by passing --full-tree option."
 msgstr ""
 
 #. type: Plain text
-#: en/git-prune.txt:40
-msgid "Do not remove anything; just report what it would remove."
+#: en/git-ls-tree.txt:40
+msgid "Id of a tree-ish."
 msgstr ""
 
 #. type: Plain text
-#: en/git-prune.txt:44
-msgid "Report all removed objects."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-prune.txt:48 en/git-worktree.txt:124
-#, no-wrap
-msgid "--expire <time>"
+#: en/git-ls-tree.txt:43
+msgid "Show only the named tree entry itself, not its children."
 msgstr ""
 
 #. type: Plain text
-#: en/git-prune.txt:50
-msgid "Only expire loose objects older than <time>."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-prune.txt:51
-#, no-wrap
-msgid "<head>..."
+#: en/git-ls-tree.txt:46
+msgid "Recurse into sub-trees."
 msgstr ""
 
 #. type: Plain text
-#: en/git-prune.txt:55
+#: en/git-ls-tree.txt:50
 msgid ""
-"In addition to objects reachable from any of our references, keep objects "
-"reachable from listed <head>s."
+"Show tree entries even when going to recurse them. Has no effect if `-r` was "
+"not passed. `-d` implies `-t`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-prune.txt:62
-msgid ""
-"To prune objects not used by your repository or another that borrows from "
-"your repository via its `.git/objects/info/alternates`:"
+#: en/git-ls-tree.txt:54
+msgid "Show object size of blob (file) entries."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-prune.txt:65
-#, no-wrap
-msgid "$ git prune $(cd ../another && git rev-parse --all)\n"
+#. type: Plain text
+#: en/git-ls-tree.txt:58
+msgid ""
+"\\0 line termination on output and do not quote filenames.  See OUTPUT "
+"FORMAT below for more information."
 msgstr ""
 
 #. type: Plain text
-#: en/git-prune.txt:73
-msgid ""
-"In most cases, users will not need to call 'git prune' directly, but should "
-"instead call 'git gc', which handles pruning along with many other "
-"housekeeping tasks."
+#: en/git-ls-tree.txt:62
+msgid "List only filenames (instead of the \"long\" output), one per line."
 msgstr ""
 
 #. type: Plain text
-#: en/git-prune.txt:76
+#: en/git-ls-tree.txt:71
 msgid ""
-"For a description of which objects are considered for pruning, see 'git "
-"fsck''s --unreachable option."
+"Instead of showing the path names relative to the current working directory, "
+"show the full path names."
 msgstr ""
 
 #. type: Plain text
-#: en/git-prune.txt:83
-msgid "linkgit:git-fsck[1], linkgit:git-gc[1], linkgit:git-reflog[1]"
+#: en/git-ls-tree.txt:75
+msgid ""
+"Do not limit the listing to the current working directory.  Implies --full-"
+"name."
 msgstr ""
 
-#. type: Title =
-#: en/git-pull.txt:2
+#. type: Labeled list
+#: en/git-ls-tree.txt:76
 #, no-wrap
-msgid "git-pull(1)"
+msgid "[<path>...]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:7
+#: en/git-ls-tree.txt:80
 msgid ""
-"git-pull - Fetch from and integrate with another repository or a local "
-"branch"
+"When paths are given, show them (note that this isn't really raw pathnames, "
+"but rather a list of patterns to match).  Otherwise implicitly uses the root "
+"level of the tree as the sole path argument."
+msgstr ""
+
+#. type: Title -
+#: en/git-ls-tree.txt:83
+#, no-wrap
+msgid "Output Format"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:13
+#: en/git-ls-tree.txt:85
 #, no-wrap
-msgid "'git pull' [options] [<repository> [<refspec>...]]\n"
+msgid "        <mode> SP <type> SP <object> TAB <file>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:21
+#: en/git-ls-tree.txt:88
 msgid ""
-"Incorporates changes from a remote repository into the current branch.  In "
-"its default mode, `git pull` is shorthand for `git fetch` followed by `git "
-"merge FETCH_HEAD`."
+"This output format is compatible with what `--index-info --stdin` of 'git "
+"update-index' expects."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:26
-msgid ""
-"More precisely, 'git pull' runs 'git fetch' with the given parameters and "
-"calls 'git merge' to merge the retrieved branch heads into the current "
-"branch.  With `--rebase`, it runs 'git rebase' instead of 'git merge'."
+#: en/git-ls-tree.txt:90
+msgid "When the `-l` option is used, format changes to"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:33
-msgid ""
-"<repository> should be the name of a remote repository as passed to "
-"linkgit:git-fetch[1].  <refspec> can name an arbitrary remote ref (for "
-"example, the name of a tag) or even a collection of refs with corresponding "
-"remote-tracking branches (e.g., "
-"refs/heads/{asterisk}:refs/remotes/origin/{asterisk}), but usually it is the "
-"name of a branch in the remote repository."
+#: en/git-ls-tree.txt:92
+#, no-wrap
+msgid "        <mode> SP <type> SP <object> SP <object size> TAB <file>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:37
+#: en/git-ls-tree.txt:96
 msgid ""
-"Default values for <repository> and <branch> are read from the \"remote\" "
-"and \"merge\" configuration for the current branch as set by "
-"linkgit:git-branch[1] `--track`."
+"Object size identified by <object> is given in bytes, and right-justified "
+"with minimum width of 7 characters.  Object size is given only for blobs "
+"(file) entries; for other entries `-` character is used in place of size."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-pull.txt:47
+#. type: Title =
+#: en/git-mailinfo.txt:2
 #, no-wrap
-msgid ""
-"\t  A---B---C master on origin\n"
-"\t /\n"
-"    D---E---F---G master\n"
-"\t^\n"
-"\torigin/master in your repository\n"
+msgid "git-mailinfo(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:54
+#: en/git-mailinfo.txt:7
 msgid ""
-"Then \"`git pull`\" will fetch and replay the changes from the remote "
-"`master` branch since it diverged from the local `master` (i.e., `E`)  until "
-"its current commit (`C`) on top of `master` and record the result in a new "
-"commit along with the names of the two parent commits and a log message from "
-"the user describing the changes."
+"git-mailinfo - Extracts patch and authorship from a single e-mail message"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-pull.txt:59
+#. type: Plain text
+#: en/git-mailinfo.txt:13
 #, no-wrap
-msgid ""
-"\t  A---B---C origin/master\n"
-"\t /         \\\n"
-"    D---E---F---G---H master\n"
+msgid "'git mailinfo' [-k|-b] [-u | --encoding=<encoding> | -n] [--[no-]scissors] <msg> <patch>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:63
+#: en/git-mailinfo.txt:23
 msgid ""
-"See linkgit:git-merge[1] for details, including how conflicts are presented "
-"and handled."
+"Reads a single e-mail message from the standard input, and writes the commit "
+"log message in <msg> file, and the patches in <patch> file.  The author "
+"name, e-mail and e-mail subject are written out to the standard output to be "
+"used by 'git am' to create a commit.  It is usually not necessary to use "
+"this command directly.  See linkgit:git-am[1] instead."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:68
+#: en/git-mailinfo.txt:32
 msgid ""
-"In Git 1.7.0 or later, to cancel a conflicting merge, use `git reset "
-"--merge`.  *Warning*: In older versions of Git, running 'git pull' with "
-"uncommitted changes is discouraged: while possible, it leaves you in a state "
-"that may be hard to back out of in the case of a conflict."
+"Usually the program removes email cruft from the Subject: header line to "
+"extract the title line for the commit log message.  This option prevents "
+"this munging, and is most useful when used to read back 'git format-patch -"
+"k' output."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:73
-msgid ""
-"If any of the remote changes overlap with local uncommitted changes, the "
-"merge will be automatically cancelled and the work tree untouched.  It is "
-"generally best to get any local changes in working order before pulling or "
-"stash them away with linkgit:git-stash[1]."
+#: en/git-mailinfo.txt:34
+msgid "Specifically, the following are removed until none of them remain:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:82
-msgid ""
-"This is passed to both underlying git-fetch to squelch reporting of during "
-"transfer, and underlying git-merge to squelch output during merging."
+#: en/git-mailinfo.txt:37
+msgid "Leading and trailing whitespace."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:86
-msgid "Pass --verbose to git-fetch and git-merge."
+#: en/git-mailinfo.txt:39
+msgid "Leading `Re:`, `re:`, and `:`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-pull.txt:87
-#, no-wrap
-msgid "--[no-]recurse-submodules[=yes|on-demand|no]"
+#. type: Plain text
+#: en/git-mailinfo.txt:41
+msgid "Leading bracketed strings (between `[` and `]`, usually"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:95
-msgid ""
-"This option controls if new commits of all populated submodules should be "
-"fetched too (see linkgit:git-config[1] and linkgit:gitmodules[5]).  That "
-"might be necessary to get the data needed for merging submodule commits, a "
-"feature Git learned in 1.7.3. Notice that the result of a merge will not be "
-"checked out in the submodule, \"git submodule update\" has to be called "
-"afterwards to bring the work tree up to date with the merge result."
+#: en/git-mailinfo.txt:42
+msgid "`[PATCH]`)."
 msgstr ""
 
-#. type: Title ~
-#: en/git-pull.txt:97
-#, no-wrap
-msgid "Options related to merging"
+#. type: Plain text
+#: en/git-mailinfo.txt:46
+msgid ""
+"Finally, runs of whitespace are normalized to a single ASCII space character."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-pull.txt:104
-#, no-wrap
-msgid "--rebase[=false|true|preserve|interactive]"
+#. type: Plain text
+#: en/git-mailinfo.txt:51
+msgid ""
+"When -k is not in effect, all leading strings bracketed with '[' and ']' "
+"pairs are stripped.  This option limits the stripping to only the pairs "
+"whose bracketed string contains the word \"PATCH\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:110
+#: en/git-mailinfo.txt:58
 msgid ""
-"When true, rebase the current branch on top of the upstream branch after "
-"fetching. If there is a remote-tracking branch corresponding to the upstream "
-"branch and the upstream branch was rebased since last fetched, the rebase "
-"uses that information to avoid rebasing non-local changes."
+"The commit log message, author name and author email are taken from the e-"
+"mail, and after minimally decoding MIME transfer encoding, re-coded in the "
+"charset specified by i18n.commitencoding (defaulting to UTF-8) by "
+"transliterating them.  This used to be optional but now it is the default."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:113
+#: en/git-mailinfo.txt:61
 msgid ""
-"When set to preserve, rebase with the `--preserve-merges` option passed to "
-"`git rebase` so that locally created merge commits will not be flattened."
+"Note that the patch is always used as-is without charset conversion, even "
+"with this flag."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:115
-msgid "When false, merge the current branch into the upstream branch."
+#: en/git-mailinfo.txt:65
+msgid ""
+"Similar to -u.  But when re-coding, the charset specified here is used "
+"instead of the one specified by i18n.commitencoding or UTF-8."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:117
-msgid "When `interactive`, enable the interactive mode of rebase."
+#: en/git-mailinfo.txt:68
+msgid "Disable all charset re-coding of the metadata."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:121
+#: en/git-mailinfo.txt:73
 msgid ""
-"See `pull.rebase`, `branch.<name>.rebase` and `branch.autoSetupRebase` in "
-"linkgit:git-config[1] if you want to make `git pull` always use `--rebase` "
-"instead of merging."
+"Copy the Message-ID header at the end of the commit message.  This is useful "
+"in order to associate commits with mailing list discussions."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:127
+#: en/git-mailinfo.txt:82
 msgid ""
-"This is a potentially _dangerous_ mode of operation.  It rewrites history, "
-"which does not bode well when you published that history already.  Do *not* "
-"use this option unless you have read linkgit:git-rebase[1] carefully."
+"Remove everything in body before a scissors line.  A line that mainly "
+"consists of scissors (either \">8\" or \"8<\") and perforation (dash \"-\") "
+"marks is called a scissors line, and is used to request the reader to cut "
+"the message at that line.  If such a line appears in the body of the message "
+"before the patch, everything before it (including the scissors line itself) "
+"is ignored when this option is used."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-pull.txt:128 en/git-svn.txt:245
-#, no-wrap
-msgid "--no-rebase"
+#. type: Plain text
+#: en/git-mailinfo.txt:87
+msgid ""
+"This is useful if you want to begin your message in a discussion thread with "
+"comments and suggestions on the message you are responding to, and to "
+"conclude it with a patch submission, separating the discussion and the "
+"beginning of the proposed commit log message with a scissors line."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:130
-msgid "Override earlier --rebase."
+#: en/git-mailinfo.txt:89
+msgid ""
+"This can be enabled by default with the configuration option mailinfo."
+"scissors."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-pull.txt:131 en/git-rebase.txt:442
-#, no-wrap
-msgid "--autostash"
+#. type: Plain text
+#: en/git-mailinfo.txt:92
+msgid ""
+"Ignore scissors lines. Useful for overriding mailinfo.scissors settings."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-pull.txt:132 en/git-rebase.txt:443
+#: en/git-mailinfo.txt:93
 #, no-wrap
-msgid "--no-autostash"
+msgid "<msg>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:137
+#: en/git-mailinfo.txt:96
 msgid ""
-"Before starting rebase, stash local modifications away (see "
-"linkgit:git-stash[1]) if needed, and apply the stash when "
-"done. `--no-autostash` is useful to override the `rebase.autoStash` "
-"configuration variable (see linkgit:git-config[1])."
+"The commit log message extracted from e-mail, usually except the title line "
+"which comes from e-mail Subject."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-mailinfo.txt:97
+#, no-wrap
+msgid "<patch>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:139
-msgid "This option is only valid when \"--rebase\" is used."
+#: en/git-mailinfo.txt:99
+msgid "The patch extracted from e-mail."
 msgstr ""
 
-#. type: Title ~
-#: en/git-pull.txt:141
+#. type: Title =
+#: en/git-mailsplit.txt:2
 #, no-wrap
-msgid "Options related to fetching"
+msgid "git-mailsplit(1)"
 msgstr ""
 
-#. type: Title -
-#: en/git-pull.txt:152
-#, no-wrap
-msgid "DEFAULT BEHAVIOUR"
+#. type: Plain text
+#: en/git-mailsplit.txt:7
+msgid "git-mailsplit - Simple UNIX mbox splitter program"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:159
+#: en/git-mailsplit.txt:13
+#, no-wrap
 msgid ""
-"Often people use `git pull` without giving any parameter.  Traditionally, "
-"this has been equivalent to saying `git pull origin`.  However, when "
-"configuration `branch.<name>.remote` is present while on branch `<name>`, "
-"that value is used instead of `origin`."
+"'git mailsplit' [-b] [-f<nn>] [-d<prec>] [--keep-cr] [--mboxrd]\n"
+"\t\t-o<directory> [--] [(<mbox>|<Maildir>)...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:164
+#: en/git-mailsplit.txt:18
 msgid ""
-"In order to determine what URL to use to fetch from, the value of the "
-"configuration `remote.<origin>.url` is consulted and if there is not any "
-"such variable, the value on `URL: ` line in `$GIT_DIR/remotes/<origin>` file "
-"is used."
+"Splits a mbox file or a Maildir into a list of files: \"0001\" \"0002\" ..  "
+"in the specified directory so you can process them further from there."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:173
+#: en/git-mailsplit.txt:21
 msgid ""
-"In order to determine what remote branches to fetch (and optionally store in "
-"the remote-tracking branches) when the command is run without any refspec "
-"parameters on the command line, values of the configuration variable "
-"`remote.<origin>.fetch` are consulted, and if there aren't any, "
-"`$GIT_DIR/remotes/<origin>` file is consulted and its `Pull: ` lines are "
-"used.  In addition to the refspec formats described in the OPTIONS section, "
-"you can have a globbing refspec that looks like this:"
+"Maildir splitting relies upon filenames being sorted to output patches in "
+"the correct order."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-pull.txt:176
+#. type: Labeled list
+#: en/git-mailsplit.txt:24
 #, no-wrap
-msgid "refs/heads/*:refs/remotes/origin/*\n"
+msgid "<mbox>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:183
+#: en/git-mailsplit.txt:27
 msgid ""
-"A globbing refspec must have a non-empty RHS (i.e. must store what were "
-"fetched in remote-tracking branches), and its LHS and RHS must end with "
-"`/*`.  The above specifies that all remote branches are tracked using "
-"remote-tracking branches in `refs/remotes/origin/` hierarchy under the same "
-"name."
+"Mbox file to split.  If not given, the mbox is read from the standard input."
 msgstr ""
 
-#. type: Plain text
-#: en/git-pull.txt:187
-msgid ""
-"The rule to determine which remote branch to merge after fetching is a bit "
-"involved, in order not to break backward compatibility."
+#. type: Labeled list
+#: en/git-mailsplit.txt:28
+#, no-wrap
+msgid "<Maildir>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:190
+#: en/git-mailsplit.txt:31
 msgid ""
-"If explicit refspecs were given on the command line of `git pull`, they are "
-"all merged."
+"Root of the Maildir to split. This directory should contain the cur, tmp and "
+"new subdirectories."
 msgstr ""
 
-#. type: Plain text
-#: en/git-pull.txt:195
-msgid ""
-"When no refspec was given on the command line, then `git pull` uses the "
-"refspec from the configuration or `$GIT_DIR/remotes/<origin>`.  In such "
-"cases, the following rules apply:"
+#. type: Labeled list
+#: en/git-mailsplit.txt:32
+#, no-wrap
+msgid "-o<directory>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:199
-msgid ""
-"If `branch.<name>.merge` configuration for the current branch `<name>` "
-"exists, that is the name of the branch at the remote site that is merged."
+#: en/git-mailsplit.txt:34
+msgid "Directory in which to place the individual messages."
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:201
-msgid "If the refspec is a globbing one, nothing is merged."
+#: en/git-mailsplit.txt:38
+msgid ""
+"If any file doesn't begin with a From line, assume it is a single mail "
+"message instead of signaling error."
 msgstr ""
 
-#. type: Plain text
-#: en/git-pull.txt:203
-msgid "Otherwise the remote branch of the first refspec is merged."
+#. type: Labeled list
+#: en/git-mailsplit.txt:39
+#, no-wrap
+msgid "-d<prec>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:211
+#: en/git-mailsplit.txt:43
 msgid ""
-"Update the remote-tracking branches for the repository you cloned from, then "
-"merge one of them into your current branch:"
+"Instead of the default 4 digits with leading zeros, different precision can "
+"be specified for the generated filenames."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-pull.txt:214
+#. type: Labeled list
+#: en/git-mailsplit.txt:44
 #, no-wrap
-msgid "$ git pull, git pull origin\n"
+msgid "-f<nn>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:219
+#: en/git-mailsplit.txt:47
 msgid ""
-"Normally the branch merged in is the HEAD of the remote repository, but the "
-"choice is determined by the branch.<name>.remote and branch.<name>.merge "
-"options; see linkgit:git-config[1] for details."
-msgstr ""
-
-#. type: Plain text
-#: en/git-pull.txt:221
-msgid "Merge into the current branch the remote branch `next`:"
+"Skip the first <nn> numbers, for example if -f3 is specified, start the "
+"numbering with 0004."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-pull.txt:224
+#. type: Labeled list
+#: en/git-mailsplit.txt:48
 #, no-wrap
-msgid "$ git pull origin next\n"
+msgid "--keep-cr"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:229
-msgid ""
-"This leaves a copy of `next` temporarily in FETCH_HEAD, but does not update "
-"any remote-tracking branches. Using remote-tracking branches, the same can "
-"be done by invoking fetch and merge:"
+#: en/git-mailsplit.txt:50
+msgid "Do not remove `\\r` from lines ending with `\\r\\n`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-pull.txt:233
+#. type: Labeled list
+#: en/git-mailsplit.txt:51
 #, no-wrap
-msgid ""
-"$ git fetch origin\n"
-"$ git merge origin/next\n"
+msgid "--mboxrd"
 msgstr ""
 
 #. type: Plain text
-#: en/git-pull.txt:238
+#: en/git-mailsplit.txt:54
 msgid ""
-"If you tried a pull which resulted in complex conflicts and would want to "
-"start over, you can recover with 'git reset'."
-msgstr ""
-
-#. type: Plain text
-#: en/git-pull.txt:254
-msgid "linkgit:git-fetch[1], linkgit:git-merge[1], linkgit:git-config[1]"
+"Input is of the \"mboxrd\" format and \"^>+From \" line escaping is reversed."
 msgstr ""
 
 #. type: Title =
-#: en/git-push.txt:2
+#: en/git-merge-base.txt:2
 #, no-wrap
-msgid "git-push(1)"
+msgid "git-merge-base(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:7
-msgid "git-push - Update remote refs along with associated objects"
+#: en/git-merge-base.txt:7
+msgid "git-merge-base - Find as good common ancestors as possible for a merge"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:18
+#: en/git-merge-base.txt:17
 #, no-wrap
 msgid ""
-"'git push' [--all | --mirror | --tags] [--follow-tags] [--atomic] [-n | "
-"--dry-run] [--receive-pack=<git-receive-pack>]\n"
-"\t   [--repo=<repository>] [-f | --force] [-d | --delete] [--prune] [-v | "
-"--verbose]\n"
-"\t   [-u | --set-upstream] [--push-option=<string>]\n"
-"\t   [--[no-]signed|--sign=(true|false|if-asked)]\n"
-"\t   [--force-with-lease[=<refname>[:<expect>]]]\n"
-"\t   [--no-verify] [<repository> [<refspec>...]]\n"
+"'git merge-base' [-a|--all] <commit> <commit>...\n"
+"'git merge-base' [-a|--all] --octopus <commit>...\n"
+"'git merge-base' --is-ancestor <commit> <commit>\n"
+"'git merge-base' --independent <commit>...\n"
+"'git merge-base' --fork-point <ref> [<commit>]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:24
+#: en/git-merge-base.txt:27
 msgid ""
-"Updates remote refs using local refs, while sending objects necessary to "
-"complete the given refs."
+"'git merge-base' finds best common ancestor(s) between two commits to use in "
+"a three-way merge.  One common ancestor is 'better' than another common "
+"ancestor if the latter is an ancestor of the former.  A common ancestor that "
+"does not have any better common ancestor is a 'best common ancestor', i.e. a "
+"'merge base'.  Note that there can be more than one merge base for a pair of "
+"commits."
 msgstr ""
 
-#. type: Plain text
-#: en/git-push.txt:28
-msgid ""
-"You can make interesting things happen to a repository every time you push "
-"into it, by setting up 'hooks' there.  See documentation for "
-"linkgit:git-receive-pack[1]."
+#. type: Title -
+#: en/git-merge-base.txt:29
+#, no-wrap
+msgid "OPERATION MODES"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:33
+#: en/git-merge-base.txt:33
 msgid ""
-"When the command line does not specify where to push with the `<repository>` "
-"argument, `branch.*.remote` configuration for the current branch is "
-"consulted to determine where to push.  If the configuration is missing, it "
-"defaults to 'origin'."
+"As the most common special case, specifying only two commits on the command "
+"line means computing the merge base between the given two commits."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:39
+#: en/git-merge-base.txt:38
 msgid ""
-"When the command line does not specify what to push with `<refspec>...` "
-"arguments or `--all`, `--mirror`, `--tags` options, the command finds the "
-"default `<refspec>` by consulting `remote.*.push` configuration, and if it "
-"is not found, honors `push.default` configuration to decide what to push "
-"(See linkgit:git-config[1] for the meaning of `push.default`)."
+"More generally, among the two commits to compute the merge base from, one is "
+"specified by the first commit argument on the command line; the other commit "
+"is a (possibly hypothetical) commit that is a merge across all the remaining "
+"commits on the command line."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:46
+#: en/git-merge-base.txt:42
 msgid ""
-"When neither the command-line nor the configuration specify what to push, "
-"the default behavior is used, which corresponds to the `simple` value for "
-"`push.default`: the current branch is pushed to the corresponding upstream "
-"branch, but as a safety measure, the push is aborted if the upstream branch "
-"does not have the same name as the local one."
+"As a consequence, the 'merge base' is not necessarily contained in each of "
+"the commit arguments if more than two commits are specified. This is "
+"different from linkgit:git-show-branch[1] when used with the `--merge-base` "
+"option."
 msgstr ""
 
-#. type: Title -
-#: en/git-push.txt:49
+#. type: Labeled list
+#: en/git-merge-base.txt:43
 #, no-wrap
-msgid "OPTIONS[[OPTIONS]]"
+msgid "--octopus"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:55
+#: en/git-merge-base.txt:47
 msgid ""
-"The \"remote\" repository that is destination of a push operation.  This "
-"parameter can be either a URL (see the section <<URLS,GIT URLS>> below) or "
-"the name of a remote (see the section <<REMOTES,REMOTES>> below)."
+"Compute the best common ancestors of all supplied commits, in preparation "
+"for an n-way merge.  This mimics the behavior of 'git show-branch --merge-"
+"base'."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-push.txt:56
+#: en/git-merge-base.txt:48 en/git-show-branch.txt:90
 #, no-wrap
-msgid "<refspec>..."
+msgid "--independent"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:61
+#: en/git-merge-base.txt:54
 msgid ""
-"Specify what destination ref to update with what source object.  The format "
-"of a <refspec> parameter is an optional plus `+`, followed by the source "
-"object <src>, followed by a colon `:`, followed by the destination ref "
-"<dst>."
+"Instead of printing merge bases, print a minimal subset of the supplied "
+"commits with the same ancestors.  In other words, among the commits given, "
+"list those which cannot be reached from any other.  This mimics the behavior "
+"of 'git show-branch --independent'."
 msgstr ""
 
-#. type: Plain text
-#: en/git-push.txt:65
-msgid ""
-"The <src> is often the name of the branch you would want to push, but it can "
-"be any arbitrary \"SHA-1 expression\", such as `master~4` or `HEAD` (see "
-"linkgit:gitrevisions[7])."
+#. type: Labeled list
+#: en/git-merge-base.txt:55
+#, no-wrap
+msgid "--is-ancestor"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:75
+#: en/git-merge-base.txt:59
 msgid ""
-"The <dst> tells which ref on the remote side is updated with this "
-"push. Arbitrary expressions cannot be used here, an actual ref must be "
-"named.  If `git push [<repository>]` without any `<refspec>` argument is set "
-"to update some ref at the destination with `<src>` with "
-"`remote.<repository>.push` configuration variable, `:<dst>` part can be "
-"omitted--such a push will update a ref that `<src>` normally updates without "
-"any `<refspec>` on the command line.  Otherwise, missing `:<dst>` means to "
-"update the same ref as the `<src>`."
+"Check if the first <commit> is an ancestor of the second <commit>, and exit "
+"with status 0 if true, or with status 1 if not.  Errors are signaled by a "
+"non-zero status that is not 1."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-merge-base.txt:60 en/git-rebase.txt:353
+#, no-wrap
+msgid "--fork-point"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:83
+#: en/git-merge-base.txt:68
 msgid ""
-"The object referenced by <src> is used to update the <dst> reference on the "
-"remote side.  By default this is only allowed if <dst> is not a tag "
-"(annotated or lightweight), and then only if it can fast-forward <dst>.  By "
-"having the optional leading `+`, you can tell Git to update the <dst> ref "
-"even if it is not allowed by default (e.g., it is not a fast-forward.)  This "
-"does *not* attempt to merge <src> into <dst>.  See EXAMPLES below for "
-"details."
+"Find the point at which a branch (or any history that leads to <commit>) "
+"forked from another branch (or any reference)  <ref>. This does not just "
+"look for the common ancestor of the two commits, but also takes into account "
+"the reflog of <ref> to see if the history leading to <commit> forked from an "
+"earlier incarnation of the branch <ref> (see discussion on this mode below)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:85
-msgid "`tag <tag>` means the same as `refs/tags/<tag>:refs/tags/<tag>`."
+#: en/git-merge-base.txt:74
+msgid "Output all merge bases for the commits, instead of just one."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:88
+#: en/git-merge-base.txt:80
 msgid ""
-"Pushing an empty <src> allows you to delete the <dst> ref from the remote "
-"repository."
+"Given two commits 'A' and 'B', `git merge-base A B` will output a commit "
+"which is reachable from both 'A' and 'B' through the parent relationship."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:93
-msgid ""
-"The special refspec `:` (or `+:` to allow non-fast-forward updates)  directs "
-"Git to push \"matching\" branches: for every branch that exists on the local "
-"side, the remote side is updated if a branch of the same name already exists "
-"on the remote side."
+#: en/git-merge-base.txt:82
+msgid "For example, with this topology:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:97
+#: en/git-merge-base.txt:86
+#, no-wrap
 msgid ""
-"Push all branches (i.e. refs under `refs/heads/`); cannot be used with other "
-"<refspec>."
+"\t         o---o---o---B\n"
+"\t        /\n"
+"\t---o---1---o---o---o---A\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:98 en/fetch-options.txt:68
-#, no-wrap
-msgid "--prune"
+#. type: Plain text
+#: en/git-merge-base.txt:88
+msgid "the merge base between 'A' and 'B' is '1'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:105
+#: en/git-merge-base.txt:92
 msgid ""
-"Remove remote branches that don't have a local counterpart. For example a "
-"remote branch `tmp` will be removed if a local branch with the same name "
-"doesn't exist any more. This also respects refspecs, e.g.  `git push --prune "
-"remote refs/heads/*:refs/tmp/*` would make sure that remote `refs/tmp/foo` "
-"will be removed if `refs/heads/foo` doesn't exist."
+"Given three commits 'A', 'B' and 'C', `git merge-base A B C` will compute "
+"the merge base between 'A' and a hypothetical commit 'M', which is a merge "
+"between 'B' and 'C'.  For example, with this topology:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:116
+#: en/git-merge-base.txt:98
+#, no-wrap
 msgid ""
-"Instead of naming each ref to push, specifies that all refs under `refs/` "
-"(which includes but is not limited to `refs/heads/`, `refs/remotes/`, and "
-"`refs/tags/`)  be mirrored to the remote repository.  Newly created local "
-"refs will be pushed to the remote end, locally updated refs will be force "
-"updated on the remote end, and deleted refs will be removed from the remote "
-"end.  This is the default if the configuration option "
-"`remote.<remote>.mirror` is set."
+"\t       o---o---o---o---C\n"
+"\t      /\n"
+"\t     /   o---o---o---B\n"
+"\t    /   /\n"
+"\t---2---1---o---o---o---A\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:125
+#: en/git-merge-base.txt:101
 msgid ""
-"Produce machine-readable output.  The output status line for each ref will "
-"be tab-separated and sent to stdout instead of stderr.  The full symbolic "
-"names of the refs will be given."
+"the result of `git merge-base A B C` is '1'.  This is because the equivalent "
+"topology with a merge commit 'M' between 'B' and 'C' is:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:129
+#: en/git-merge-base.txt:108
+#, no-wrap
 msgid ""
-"All listed refs are deleted from the remote repository. This is the same as "
-"prefixing all refs with a colon."
+"\t       o---o---o---o---o\n"
+"\t      /                 \\\n"
+"\t     /   o---o---o---o---M\n"
+"\t    /   /\n"
+"\t---2---1---o---o---o---A\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:134
+#: en/git-merge-base.txt:112
 msgid ""
-"All refs under `refs/tags` are pushed, in addition to refspecs explicitly "
-"listed on the command line."
+"and the result of `git merge-base A M` is '1'.  Commit '2' is also a common "
+"ancestor between 'A' and 'M', but '1' is a better common ancestor, because "
+"'2' is an ancestor of '1'.  Hence, '2' is not a merge base."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:135
-#, no-wrap
-msgid "--follow-tags"
+#. type: Plain text
+#: en/git-merge-base.txt:115
+msgid ""
+"The result of `git merge-base --octopus A B C` is '2', because '2' is the "
+"best common ancestor of all commits."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:142
+#: en/git-merge-base.txt:118
 msgid ""
-"Push all the refs that would be pushed without this option, and also push "
-"annotated tags in `refs/tags` that are missing from the remote but are "
-"pointing at commit-ish that are reachable from the refs being pushed.  This "
-"can also be specified with configuration variable `push.followTags`.  For "
-"more information, see `push.followTags` in linkgit:git-config[1]."
+"When the history involves criss-cross merges, there can be more than one "
+"'best' common ancestor for two commits.  For example, with this topology:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:143 en/git-send-pack.txt:73
+#. type: Plain text
+#: en/git-merge-base.txt:124
 #, no-wrap
-msgid "--[no-]signed"
+msgid ""
+"\t---1---o---A\n"
+"\t    \\ /\n"
+"\t     X\n"
+"\t    / \\\n"
+"\t---2---o---o---B\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:144 en/git-send-pack.txt:74
-#, no-wrap
-msgid "--sign=(true|false|if-asked)"
+#. type: Plain text
+#: en/git-merge-base.txt:128
+msgid ""
+"both '1' and '2' are merge-bases of A and B.  Neither one is better than the "
+"other (both are 'best' merge bases).  When the `--all` option is not given, "
+"it is unspecified which best one is output."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:153 en/git-send-pack.txt:83
+#: en/git-merge-base.txt:133
 msgid ""
-"GPG-sign the push request to update refs on the receiving side, to allow it "
-"to be checked by the hooks and/or be logged.  If `false` or `--no-signed`, "
-"no signing will be attempted.  If `true` or `--signed`, the push will fail "
-"if the server does not support signed pushes.  If set to `if-asked`, sign if "
-"and only if the server supports signed pushes.  The push will also fail if "
-"the actual call to `gpg --sign` fails.  See linkgit:git-receive-pack[1] for "
-"the details on the receiving end."
+"A common idiom to check \"fast-forward-ness\" between two commits A and B is "
+"(or at least used to be) to compute the merge base between A and B, and "
+"check if it is the same as A, in which case, A is an ancestor of B.  You "
+"will see this idiom used often in older scripts."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:154
+#. type: Plain text
+#: en/git-merge-base.txt:139
 #, no-wrap
-msgid "--[no-]atomic"
+msgid ""
+"\tA=$(git rev-parse --verify A)\n"
+"\tif test \"$A\" = \"$(git merge-base A B)\"\n"
+"\tthen\n"
+"\t\t... A is an ancestor of B ...\n"
+"\tfi\n"
+msgstr ""
+
+#. type: Plain text
+#: en/git-merge-base.txt:141
+msgid "In modern git, you can say this in a more direct way:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:158
+#: en/git-merge-base.txt:146
+#, no-wrap
 msgid ""
-"Use an atomic transaction on the remote side if available.  Either all refs "
-"are updated, or on error, no refs are updated.  If the server does not "
-"support atomic pushes the push will fail."
+"\tif git merge-base --is-ancestor A B\n"
+"\tthen\n"
+"\t\t... A is an ancestor of B ...\n"
+"\tfi\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:160
+#. type: Plain text
+#: en/git-merge-base.txt:148
+msgid "instead."
+msgstr ""
+
+#. type: Title -
+#: en/git-merge-base.txt:150
 #, no-wrap
-msgid "--push-option"
+msgid "Discussion on fork-point mode"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:164
+#: en/git-merge-base.txt:156
 msgid ""
-"Transmit the given string to the server, which passes them to the "
-"pre-receive as well as the post-receive hook. The given string must not "
-"contain a NUL or LF character."
+"After working on the `topic` branch created with `git checkout -b topic "
+"origin/master`, the history of remote-tracking branch `origin/master` may "
+"have been rewound and rebuilt, leading to a history of this shape:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:165 en/git-send-pack.txt:28
+#. type: Plain text
+#: en/git-merge-base.txt:164
 #, no-wrap
-msgid "--receive-pack=<git-receive-pack>"
+msgid ""
+"\t                 o---B2\n"
+"\t                /\n"
+"\t---o---o---B1--o---o---o---B (origin/master)\n"
+"\t        \\\n"
+"\t         B0\n"
+"\t          \\\n"
+"\t           D0---D1---D (topic)\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:166 en/git-send-pack.txt:34
-#, no-wrap
-msgid "--exec=<git-receive-pack>"
+#. type: Plain text
+#: en/git-merge-base.txt:170
+msgid ""
+"where `origin/master` used to point at commits B0, B1, B2 and now it points "
+"at B, and your `topic` branch was started on top of it back when `origin/"
+"master` was at B0, and you built three commits, D0, D1, and D, on top of "
+"it.  Imagine that you now want to rebase the work you did on the topic on "
+"top of the updated origin/master."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:171 en/git-send-pack.txt:33
+#: en/git-merge-base.txt:176
 msgid ""
-"Path to the 'git-receive-pack' program on the remote end.  Sometimes useful "
-"when pushing to a remote repository over ssh, and you do not have the "
-"program in a directory on the default $PATH."
+"In such a case, `git merge-base origin/master topic` would return the parent "
+"of B0 in the above picture, but B0^..D is *not* the range of commits you "
+"would want to replay on top of B (it includes B0, which is not what you "
+"wrote; it is a commit the other side discarded when it moved its tip from B0 "
+"to B1)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:172
-#, no-wrap
-msgid "--[no-]force-with-lease"
+#. type: Plain text
+#: en/git-merge-base.txt:184
+msgid ""
+"`git merge-base --fork-point origin/master topic` is designed to help in "
+"such a case.  It takes not only B but also B0, B1, and B2 (i.e. old tips of "
+"the remote-tracking branches your repository's reflog knows about) into "
+"account to see on which commit your topic branch was built and finds B0, "
+"allowing you to replay only the commits on your topic, excluding the commits "
+"the other side later discarded."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:173
-#, no-wrap
-msgid "--force-with-lease=<refname>"
+#. type: Plain text
+#: en/git-merge-base.txt:186
+msgid "Hence"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:174
+#. type: Plain text
+#: en/git-merge-base.txt:188
 #, no-wrap
-msgid "--force-with-lease=<refname>:<expect>"
+msgid "    $ fork_point=$(git merge-base --fork-point origin/master topic)\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:177
-msgid ""
-"Usually, \"git push\" refuses to update a remote ref that is not an ancestor "
-"of the local ref used to overwrite it."
+#: en/git-merge-base.txt:190
+msgid "will find B0, and"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:180
-msgid ""
-"This option overrides this restriction if the current value of the remote "
-"ref is the expected value.  \"git push\" fails otherwise."
+#: en/git-merge-base.txt:192
+#, no-wrap
+msgid "    $ git rebase --onto origin/master $fork_point topic\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:187
+#: en/git-merge-base.txt:195
 msgid ""
-"Imagine that you have to rebase what you have already published.  You will "
-"have to bypass the \"must fast-forward\" rule in order to replace the "
-"history you originally published with the rebased history.  If somebody else "
-"built on top of your original history while you are rebasing, the tip of the "
-"branch at the remote may advance with her commit, and blindly pushing with "
-"`--force` will lose her work."
+"will replay D0, D1 and D on top of B to create a new history of this shape:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:194
+#: en/git-merge-base.txt:203
+#, no-wrap
 msgid ""
-"This option allows you to say that you expect the history you are updating "
-"is what you rebased and want to replace. If the remote ref still points at "
-"the commit you specified, you can be sure that no other people did anything "
-"to the ref. It is like taking a \"lease\" on the ref without explicitly "
-"locking it, and the remote ref is updated only if the \"lease\" is still "
-"valid."
+"\t\t\t o---B2\n"
+"\t\t\t/\n"
+"\t---o---o---B1--o---o---o---B (origin/master)\n"
+"\t\t\\                   \\\n"
+"\t\t B0                  D0'--D1'--D' (topic - updated)\n"
+"\t\t  \\\n"
+"\t\t   D0---D1---D (topic - old)\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:199
+#: en/git-merge-base.txt:210
 msgid ""
-"`--force-with-lease` alone, without specifying the details, will protect all "
-"remote refs that are going to be updated by requiring their current value to "
-"be the same as the remote-tracking branch we have for them."
+"A caveat is that older reflog entries in your repository may be expired by "
+"`git gc`.  If B0 no longer appears in the reflog of the remote-tracking "
+"branch `origin/master`, the `--fork-point` mode obviously cannot find it and "
+"fails, avoiding to give a random and useless result (such as the parent of "
+"B0, like the same command without the `--fork-point` option gives)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:204
+#: en/git-merge-base.txt:221
 msgid ""
-"`--force-with-lease=<refname>`, without specifying the expected value, will "
-"protect the named ref (alone), if it is going to be updated, by requiring "
-"its current value to be the same as the remote-tracking branch we have for "
-"it."
+"Also, the remote-tracking branch you use the `--fork-point` mode with must "
+"be the one your topic forked from its tip.  If you forked from an older "
+"commit than the tip, this mode would not find the fork point (imagine in the "
+"above sample history B0 did not exist, origin/master started at B1, moved to "
+"B2 and then B, and you forked your topic at origin/master^ when origin/"
+"master was B1; the shape of the history would be the same as above, without "
+"B0, and the parent of B1 is what `git merge-base origin/master topic` "
+"correctly finds, but the `--fork-point` mode will not, because it is not one "
+"of the commits that used to be at the tip of origin/master)."
+msgstr ""
+
+#. type: Title -
+#: en/git-merge-base.txt:224
+#, no-wrap
+msgid "See also"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:212
+#: en/git-merge-base.txt:228
 msgid ""
-"`--force-with-lease=<refname>:<expect>` will protect the named ref (alone), "
-"if it is going to be updated, by requiring its current value to be the same "
-"as the specified value `<expect>` (which is allowed to be different from the "
-"remote-tracking branch we have for the refname, or we do not even have to "
-"have such a remote-tracking branch when this form is used).  If `<expect>` "
-"is the empty string, then the named ref must not already exist."
+"linkgit:git-rev-list[1], linkgit:git-show-branch[1], linkgit:git-merge[1]"
+msgstr ""
+
+#. type: Title =
+#: en/git-merge-file.txt:2
+#, no-wrap
+msgid "git-merge-file(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:217
-msgid ""
-"Note that all forms other than `--force-with-lease=<refname>:<expect>` that "
-"specifies the expected current value of the ref explicitly are still "
-"experimental and their semantics may change as we gain experience with this "
-"feature."
+#: en/git-merge-file.txt:7
+msgid "git-merge-file - Run a three-way file merge"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:220
+#: en/git-merge-file.txt:15
+#, no-wrap
 msgid ""
-"\"--no-force-with-lease\" will cancel all the previous --force-with-lease on "
-"the command line."
+"'git merge-file' [-L <current-name> [-L <base-name> [-L <other-name>]]]\n"
+"\t[--ours|--theirs|--union] [-p|--stdout] [-q|--quiet] [--marker-size=<n>]\n"
+"\t[--[no-]diff3] <current-file> <base-file> <other-file>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:228
+#: en/git-merge-file.txt:25
 msgid ""
-"Usually, the command refuses to update a remote ref that is not an ancestor "
-"of the local ref used to overwrite it.  Also, when `--force-with-lease` "
-"option is used, the command refuses to update a remote ref whose current "
-"value does not match what is expected."
+"'git merge-file' incorporates all changes that lead from the `<base-file>` "
+"to `<other-file>` into `<current-file>`. The result ordinarily goes into "
+"`<current-file>`. 'git merge-file' is useful for combining separate changes "
+"to an original. Suppose `<base-file>` is the original, and both `<current-"
+"file>` and `<other-file>` are modifications of `<base-file>`, then 'git "
+"merge-file' combines both changes."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:231
+#: en/git-merge-file.txt:30
 msgid ""
-"This flag disables these checks, and can cause the remote repository to lose "
-"commits; use it with care."
+"A conflict occurs if both `<current-file>` and `<other-file>` have changes "
+"in a common segment of lines. If a conflict is found, 'git merge-file' "
+"normally outputs a warning and brackets the conflict with lines containing "
+"<<<<<<< and >>>>>>> markers. A typical conflict will look like this:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:240
+#: en/git-merge-file.txt:36
+#, no-wrap
 msgid ""
-"Note that `--force` applies to all the refs that are pushed, hence using it "
-"with `push.default` set to `matching` or with multiple push destinations "
-"configured with `remote.*.push` may overwrite refs other than the current "
-"branch (including local refs that are strictly behind their remote "
-"counterpart).  To force a push to only one branch, use a `+` in front of the "
-"refspec to push (e.g `git push origin +master` to force a push to the "
-"`master` branch). See the `<refspec>...` section above for details."
+"\t<<<<<<< A\n"
+"\tlines in file A\n"
+"\t=======\n"
+"\tlines in file B\n"
+"\t>>>>>>> B\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:241
-#, no-wrap
-msgid "--repo=<repository>"
+#. type: Plain text
+#: en/git-merge-file.txt:42
+msgid ""
+"If there are conflicts, the user should edit the result and delete one of "
+"the alternatives.  When `--ours`, `--theirs`, or `--union` option is in "
+"effect, however, these conflicts are resolved favouring lines from `<current-"
+"file>`, lines from `<other-file>`, or lines from both respectively.  The "
+"length of the conflict markers can be given with the `--marker-size` option."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:244
+#: en/git-merge-file.txt:46
 msgid ""
-"This option is equivalent to the <repository> argument. If both are "
-"specified, the command-line argument takes precedence."
+"The exit value of this program is negative on error, and the number of "
+"conflicts otherwise (truncated to 127 if there are more than that many "
+"conflicts). If the merge was clean, the exit value is 0."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:251
+#: en/git-merge-file.txt:50
 msgid ""
-"For every branch that is up to date or successfully pushed, add upstream "
-"(tracking) reference, used by argument-less linkgit:git-pull[1] and other "
-"commands. For more information, see `branch.<name>.merge` in "
-"linkgit:git-config[1]."
+"'git merge-file' is designed to be a minimal clone of RCS 'merge'; that is, "
+"it implements all of RCS 'merge''s functionality which is needed by linkgit:"
+"git[1]."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-push.txt:252
+#: en/git-merge-file.txt:55
 #, no-wrap
-msgid "--[no-]thin"
+msgid "-L <label>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:257
+#: en/git-merge-file.txt:62
 msgid ""
-"These options are passed to linkgit:git-send-pack[1]. A thin transfer "
-"significantly reduces the amount of sent data when the sender and receiver "
-"share many of the same objects in common. The default is \\--thin."
+"This option may be given up to three times, and specifies labels to be used "
+"in place of the corresponding file names in conflict reports. That is, `git "
+"merge-file -L x -L y -L z a b c` generates output that looks like it came "
+"from files x, y and z instead of from files a, b and c."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:263
+#: en/git-merge-file.txt:66
 msgid ""
-"Suppress all output, including the listing of updated refs, unless an error "
-"occurs. Progress is not reported to the standard error stream."
+"Send results to standard output instead of overwriting `<current-file>`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:274 en/fetch-options.txt:125
-#, no-wrap
-msgid "--no-recurse-submodules"
+#. type: Plain text
+#: en/git-merge-file.txt:69
+msgid "Quiet; do not warn about conflicts."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-push.txt:275
+#: en/git-merge-file.txt:70
 #, no-wrap
-msgid "--recurse-submodules=check|on-demand|only|no"
+msgid "--diff3"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:289
-msgid ""
-"May be used to make sure all submodule commits used by the revisions to be "
-"pushed are available on a remote-tracking branch.  If 'check' is used Git "
-"will verify that all submodule commits that changed in the revisions to be "
-"pushed are available on at least one remote of the submodule. If any commits "
-"are missing the push will be aborted and exit with non-zero status. If "
-"'on-demand' is used all submodules that changed in the revisions to be "
-"pushed will be pushed. If on-demand was not able to push all necessary "
-"revisions it will also be aborted and exit with non-zero status. If 'only' "
-"is used all submodules will be recursively pushed while the superproject is "
-"left unpushed. A value of 'no' or using `--no-recurse-submodules` can be "
-"used to override the push.recurseSubmodules configuration variable when no "
-"submodule recursion is required."
+#: en/git-merge-file.txt:72
+msgid "Show conflicts in \"diff3\" style."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-push.txt:290
+#: en/git-merge-file.txt:75
 #, no-wrap
-msgid "--[no-]verify"
+msgid "--union"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:294
+#: en/git-merge-file.txt:78
 msgid ""
-"Toggle the pre-push hook (see linkgit:githooks[5]).  The default is "
-"--verify, giving the hook a chance to prevent the push.  With --no-verify, "
-"the hook is bypassed completely."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-push.txt:295 en/fetch-options.txt:176
-#, no-wrap
-msgid "-4"
+"Instead of leaving conflicts in the file, resolve conflicts favouring our "
+"(or their or both) side of the lines."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-push.txt:296 en/fetch-options.txt:177
+#: en/git-merge-file.txt:83
 #, no-wrap
-msgid "--ipv4"
+msgid "`git merge-file README.my README README.upstream`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:298 en/fetch-options.txt:179
-msgid "Use IPv4 addresses only, ignoring IPv6 addresses."
+#: en/git-merge-file.txt:87
+msgid ""
+"combines the changes of README.my and README.upstream since README, tries to "
+"merge them and writes the result into README.my."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-push.txt:299 en/fetch-options.txt:180
+#: en/git-merge-file.txt:88
 #, no-wrap
-msgid "-6"
+msgid "`git merge-file -L a -L b -L c tmp/a123 tmp/b234 tmp/c345`"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:300 en/fetch-options.txt:181
+#. type: Plain text
+#: en/git-merge-file.txt:92
+msgid ""
+"merges tmp/a123 and tmp/c345 with the base tmp/b234, but uses labels `a` and "
+"`c` instead of `tmp/a123` and `tmp/c345`."
+msgstr ""
+
+#. type: Title =
+#: en/git-merge-index.txt:2
 #, no-wrap
-msgid "--ipv6"
+msgid "git-merge-index(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:302 en/fetch-options.txt:182
-msgid "Use IPv6 addresses only, ignoring IPv4 addresses."
+#: en/git-merge-index.txt:7
+msgid "git-merge-index - Run a merge for files needing merging"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:311
-msgid ""
-"The output of \"git push\" depends on the transport method used; this "
-"section describes the output when pushing over the Git protocol (either "
-"locally or via ssh)."
+#: en/git-merge-index.txt:13
+#, no-wrap
+msgid "'git merge-index' [-o] [-q] <merge-program> (-a | [--] <file>*)\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:314
+#: en/git-merge-index.txt:20
 msgid ""
-"The status of the push is output in tabular form, with each line "
-"representing the status of a single ref. Each line is of the form:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-push.txt:317
-#, no-wrap
-msgid " <flag> <summary> <from> -> <to> (<reason>)\n"
+"This looks up the <file>(s) in the index and, if there are any merge "
+"entries, passes the SHA-1 hash for those files as arguments 1, 2, 3 (empty "
+"argument if no file), and <file> as argument 4.  File modes for the three "
+"files are passed as arguments 5, 6 and 7."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:320
-msgid "If --porcelain is used, then each line of the output is of the form:"
+#: en/git-merge-index.txt:28
+msgid "Run merge against all files in the index that need merging."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-push.txt:323
-#, no-wrap
-msgid " <flag> \\t <from>:<to> \\t <summary> (<reason>)\n"
+#. type: Plain text
+#: en/git-merge-index.txt:34
+msgid ""
+"Instead of stopping at the first failed merge, do all of them in one shot - "
+"continue with merging even when previous merges returned errors, and only "
+"return the error code after all the merges."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:327
+#: en/git-merge-index.txt:39
 msgid ""
-"The status of up-to-date refs is shown only if --porcelain or --verbose "
-"option is used."
+"Do not complain about a failed merge program (a merge program failure "
+"usually indicates conflicts during the merge). This is for porcelains which "
+"might want to emit custom messages."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:331
-msgid "for a successfully pushed fast-forward;"
+#: en/git-merge-index.txt:43
+msgid ""
+"If 'git merge-index' is called with multiple <file>s (or -a) then it "
+"processes them in turn only stopping if merge returns a non-zero exit code."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:333
-msgid "for a successfully deleted ref;"
+#: en/git-merge-index.txt:46
+msgid ""
+"Typically this is run with a script calling Git's imitation of the 'merge' "
+"command from the RCS package."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:334
-msgid "for a successfully pushed new ref;"
+#: en/git-merge-index.txt:49
+msgid ""
+"A sample script called 'git merge-one-file' is included in the distribution."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:335
-msgid "for a ref that was rejected or failed to push; and"
+#: en/git-merge-index.txt:54
+msgid ""
+"ALERT ALERT ALERT! The Git \"merge object order\" is different from the RCS "
+"'merge' program merge object order. In the above ordering, the original is "
+"first. But the argument order to the 3-way merge program 'merge' is to have "
+"the original in the middle. Don't ask me why."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:336
-msgid "for a ref that was up to date and did not need pushing."
+#: en/git-merge-index.txt:56 en/git-svn.txt:171
+msgid "Examples:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:342
+#: en/git-merge-index.txt:62
+#, no-wrap
 msgid ""
-"For a successfully pushed ref, the summary shows the old and new values of "
-"the ref in a form suitable for using as an argument to `git log` (this is "
-"`<old>..<new>` in most cases, and `<old>...<new>` for forced "
-"non-fast-forward updates)."
+"  torvalds@ppc970:~/merge-test> git merge-index cat MM\n"
+"  This is MM from the original tree.\t\t\t# original\n"
+"  This is modified MM in the branch A.\t\t\t# merge1\n"
+"  This is modified MM in the branch B.\t\t\t# merge2\n"
+"  This is modified MM in the branch B.\t\t\t# current contents\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:344
-msgid "For a failed update, more details are given:"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-push.txt:346
+#: en/git-merge-index.txt:71
 #, no-wrap
-msgid "rejected"
+msgid ""
+"  torvalds@ppc970:~/merge-test> git merge-index cat AA MM\n"
+"  cat: : No such file or directory\n"
+"  This is added AA in the branch A.\n"
+"  This is added AA in the branch B.\n"
+"  This is added AA in the branch B.\n"
+"  fatal: merge program failed\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:349
+#: en/git-merge-index.txt:76
 msgid ""
-"Git did not try to send the ref at all, typically because it is not a "
-"fast-forward and you did not force the update."
+"where the latter example shows how 'git merge-index' will stop trying to "
+"merge once anything has returned an error (i.e., `cat` returned an error for "
+"the AA file, because it didn't exist in the original, and thus 'git merge-"
+"index' didn't even try to merge the MM thing)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:350
+#. type: Title =
+#: en/git-merge-one-file.txt:2
 #, no-wrap
-msgid "remote rejected"
+msgid "git-merge-one-file(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:358
+#: en/git-merge-one-file.txt:7
 msgid ""
-"The remote end refused the update.  Usually caused by a hook on the remote "
-"side, or because the remote repository has one of the following safety "
-"options in effect: `receive.denyCurrentBranch` (for pushes to the checked "
-"out branch), `receive.denyNonFastForwards` (for forced non-fast-forward "
-"updates), `receive.denyDeletes` or `receive.denyDeleteCurrent`.  See "
-"linkgit:git-config[1]."
+"git-merge-one-file - The standard helper program to use with git-merge-index"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:359
+#. type: Plain text
+#: en/git-merge-one-file.txt:13
 #, no-wrap
-msgid "remote failure"
+msgid "'git merge-one-file'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:363
+#: en/git-merge-one-file.txt:18
 msgid ""
-"The remote end did not report the successful update of the ref, perhaps "
-"because of a temporary error on the remote side, a break in the network "
-"connection, or other transient error."
+"This is the standard helper program to use with 'git merge-index' to resolve "
+"a merge after the trivial merge done with 'git read-tree -m'."
 msgstr ""
 
-#. type: Plain text
-#: en/git-push.txt:369
-msgid ""
-"The name of the local ref being pushed, minus its `refs/<type>/` prefix. In "
-"the case of deletion, the name of the local ref is omitted."
+#. type: Title =
+#: en/git-mergetool--lib.txt:2
+#, no-wrap
+msgid "git-mergetool{litdd}lib(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:373
-msgid "The name of the remote ref being updated, minus its `refs/<type>/` prefix."
+#: en/git-mergetool--lib.txt:7
+msgid "git-mergetool--lib - Common Git merge tool shell scriptlets"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:378
-msgid ""
-"A human-readable explanation. In the case of successfully pushed refs, no "
-"explanation is needed. For a failed ref, the reason for failure is "
-"described."
-msgstr ""
-
-#. type: Title -
-#: en/git-push.txt:380
+#: en/git-mergetool--lib.txt:12
 #, no-wrap
-msgid "Note about fast-forwards"
+msgid "'TOOL_MODE=(diff|merge) . \"$(git --exec-path)/git-mergetool{litdd}lib\"'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:385
+#: en/git-mergetool--lib.txt:19 en/git-sh-i18n.txt:19 en/git-sh-setup.txt:19
 msgid ""
-"When an update changes a branch (or more in general, a ref) that used to "
-"point at commit A to point at another commit B, it is called a fast-forward "
-"update if and only if B is a descendant of A."
+"This is not a command the end user would want to run.  Ever.  This "
+"documentation is meant for people who are studying the Porcelain-ish scripts "
+"and/or are writing new ones."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:389
+#: en/git-mergetool--lib.txt:23
 msgid ""
-"In a fast-forward update from A to B, the set of commits that the original "
-"commit A built on top of is a subset of the commits the new commit B builds "
-"on top of.  Hence, it does not lose any history."
+"The 'git-mergetool{litdd}lib' scriptlet is designed to be sourced (using `."
+"`) by other shell scripts to set up functions for working with Git merge "
+"tools."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:394
+#: en/git-mergetool--lib.txt:27
 msgid ""
-"In contrast, a non-fast-forward update will lose history.  For example, "
-"suppose you and somebody else started at the same commit X, and you built a "
-"history leading to commit B while the other person built a history leading "
-"to commit A.  The history looks like this:"
+"Before sourcing 'git-mergetool{litdd}lib', your script must set `TOOL_MODE` "
+"to define the operation mode for the functions listed below.  'diff' and "
+"'merge' are valid values."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-push.txt:400
+#. type: Title -
+#: en/git-mergetool--lib.txt:29 en/git-sh-i18n.txt:28 en/git-sh-setup.txt:34
 #, no-wrap
-msgid ""
-"      B\n"
-"     /\n"
-" ---X---A\n"
+msgid "FUNCTIONS"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-mergetool--lib.txt:30
+#, no-wrap
+msgid "get_merge_tool"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:406
-msgid ""
-"Further suppose that the other person already pushed changes leading to A "
-"back to the original repository from which you two obtained the original "
-"commit X."
+#: en/git-mergetool--lib.txt:32
+msgid "returns a merge tool."
 msgstr ""
 
-#. type: Plain text
-#: en/git-push.txt:409
-msgid ""
-"The push done by the other person updated the branch that used to point at "
-"commit X to point at commit A.  It is a fast-forward."
+#. type: Labeled list
+#: en/git-mergetool--lib.txt:33
+#, no-wrap
+msgid "get_merge_tool_cmd"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:414
-msgid ""
-"But if you try to push, you will attempt to update the branch (that now "
-"points at A) with commit B.  This does _not_ fast-forward.  If you did so, "
-"the changes introduced by commit A will be lost, because everybody will now "
-"start building on top of B."
+#: en/git-mergetool--lib.txt:35
+msgid "returns the custom command for a merge tool."
 msgstr ""
 
-#. type: Plain text
-#: en/git-push.txt:417
-msgid ""
-"The command by default does not allow an update that is not a fast-forward "
-"to prevent such loss of history."
+#. type: Labeled list
+#: en/git-mergetool--lib.txt:36
+#, no-wrap
+msgid "get_merge_tool_path"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:422
-msgid ""
-"If you do not want to lose your work (history from X to B) or the work by "
-"the other person (history from X to A), you would need to first fetch the "
-"history from the repository, create a history that contains changes done by "
-"both parties, and push the result back."
+#: en/git-mergetool--lib.txt:38
+msgid "returns the custom path for a merge tool."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-mergetool--lib.txt:39
+#, no-wrap
+msgid "run_merge_tool"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:426
+#: en/git-mergetool--lib.txt:44
 msgid ""
-"You can perform \"git pull\", resolve potential conflicts, and \"git push\" "
-"the result.  A \"git pull\" will create a merge commit C between commits A "
-"and B."
+"launches a merge tool given the tool name and a true/false flag to indicate "
+"whether a merge base is present.  '$MERGED', '$LOCAL', '$REMOTE', and "
+"'$BASE' must be defined for use by the merge tool."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-push.txt:432
+#. type: Title =
+#: en/git-mergetool.txt:2
 #, no-wrap
-msgid ""
-"      B---C\n"
-"     /   /\n"
-" ---X---A\n"
+msgid "git-mergetool(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:437
+#: en/git-mergetool.txt:7
 msgid ""
-"Updating A with the resulting merge commit will fast-forward and your push "
-"will be accepted."
+"git-mergetool - Run merge conflict resolution tools to resolve merge "
+"conflicts"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:442
-msgid ""
-"Alternatively, you can rebase your change between X and B on top of A, with "
-"\"git pull --rebase\", and push the result back.  The rebase will create a "
-"new commit D that builds the change between X and B on top of A."
+#: en/git-mergetool.txt:12
+#, no-wrap
+msgid "'git mergetool' [--tool=<tool>] [-y | --[no-]prompt] [<file>...]\n"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-push.txt:448
-#, no-wrap
+#. type: Plain text
+#: en/git-mergetool.txt:18
 msgid ""
-"      B   D\n"
-"     /   /\n"
-" ---X---A\n"
+"Use `git mergetool` to run one of several merge utilities to resolve merge "
+"conflicts.  It is typically run after 'git merge'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:453
+#: en/git-mergetool.txt:24
 msgid ""
-"Again, updating A with this commit will fast-forward and your push will be "
-"accepted."
+"If one or more <file> parameters are given, the merge tool program will be "
+"run to resolve differences on each file (skipping those without conflicts).  "
+"Specifying a directory will include all unresolved files in that path.  If "
+"no <file> names are specified, 'git mergetool' will run the merge tool "
+"program on every file with merge conflicts."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:464
+#: en/git-mergetool.txt:33
 msgid ""
-"There is another common situation where you may encounter non-fast-forward "
-"rejection when you try to push, and it is possible even when you are pushing "
-"into a repository nobody else pushes into. After you push commit A yourself "
-"(in the first picture in this section), replace it with \"git commit "
-"--amend\" to produce commit B, and you try to push it out, because forgot "
-"that you have pushed A out already. In such a case, and only if you are "
-"certain that nobody in the meantime fetched your earlier commit A (and "
-"started building on top of it), you can run \"git push --force\" to "
-"overwrite it. In other words, \"git push --force\" is a method reserved for "
-"a case where you do mean to lose history."
+"Use the merge resolution program specified by <tool>.  Valid values include "
+"emerge, gvimdiff, kdiff3, meld, vimdiff, and tortoisemerge. Run `git "
+"mergetool --tool-help` for the list of valid <tool> settings."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:469
-#, no-wrap
-msgid "`git push`"
+#. type: Plain text
+#: en/git-mergetool.txt:38
+msgid ""
+"If a merge resolution program is not specified, 'git mergetool' will use the "
+"configuration variable `merge.tool`.  If the configuration variable `merge."
+"tool` is not set, 'git mergetool' will pick a suitable default."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:473
+#: en/git-mergetool.txt:44
 msgid ""
-"Works like `git push <remote>`, where <remote> is the current branch's "
-"remote (or `origin`, if no remote is configured for the current branch)."
+"You can explicitly provide a full path to the tool by setting the "
+"configuration variable `mergetool.<tool>.path`. For example, you can "
+"configure the absolute path to kdiff3 by setting `mergetool.kdiff3.path`. "
+"Otherwise, 'git mergetool' assumes the tool is available in PATH."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:474
-#, no-wrap
-msgid "`git push origin`"
+#. type: Plain text
+#: en/git-mergetool.txt:49
+msgid ""
+"Instead of running one of the known merge tool programs, 'git mergetool' can "
+"be customized to run an alternative program by specifying the command line "
+"to invoke in a configuration variable `mergetool.<tool>.cmd`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:479
+#: en/git-mergetool.txt:60
 msgid ""
-"Without additional configuration, pushes the current branch to the "
-"configured upstream (`remote.origin.merge` configuration variable) if it has "
-"the same name as the current branch, and errors out without pushing "
-"otherwise."
+"When 'git mergetool' is invoked with this tool (either through the `-t` or "
+"`--tool` option or the `merge.tool` configuration variable) the configured "
+"command line will be invoked with `$BASE` set to the name of a temporary "
+"file containing the common base for the merge, if available; `$LOCAL` set to "
+"the name of a temporary file containing the contents of the file on the "
+"current branch; `$REMOTE` set to the name of a temporary file containing the "
+"contents of the file to be merged, and `$MERGED` set to the name of the file "
+"to which the merge tool should write the result of the merge resolution."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:483
+#: en/git-mergetool.txt:66
 msgid ""
-"The default behavior of this command when no <refspec> is given can be "
-"configured by setting the `push` option of the remote, or the `push.default` "
-"configuration variable."
+"If the custom merge tool correctly indicates the success of a merge "
+"resolution with its exit code, then the configuration variable `mergetool."
+"<tool>.trustExitCode` can be set to `true`.  Otherwise, 'git mergetool' will "
+"prompt the user to indicate the success of the resolution after the custom "
+"tool has exited."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:488
-msgid ""
-"For example, to default to pushing only the current branch to `origin` use "
-"`git config remote.origin.push HEAD`.  Any valid <refspec> (like the ones in "
-"the examples below) can be configured as the default for `git push origin`."
+#: en/git-mergetool.txt:69
+msgid "Print a list of merge tools that may be used with `--tool`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:489
-#, no-wrap
-msgid "`git push origin :`"
+#. type: Plain text
+#: en/git-mergetool.txt:77
+msgid ""
+"Don't prompt before each invocation of the merge resolution program.  This "
+"is the default if the merge resolution program is explicitly specified with "
+"the `--tool` option or with the `merge.tool` configuration variable."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:493
+#: en/git-mergetool.txt:81
 msgid ""
-"Push \"matching\" branches to `origin`. See <refspec> in the "
-"<<OPTIONS,OPTIONS>> section above for a description of \"matching\" "
-"branches."
+"Prompt before each invocation of the merge resolution program to give the "
+"user a chance to skip the path."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-push.txt:494
+#: en/git-mergetool.txt:83
 #, no-wrap
-msgid "`git push origin master`"
+msgid "--gui"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:500
+#: en/git-mergetool.txt:87
 msgid ""
-"Find a ref that matches `master` in the source repository (most likely, it "
-"would find `refs/heads/master`), and update the same ref "
-"(e.g. `refs/heads/master`) in `origin` repository with it.  If `master` did "
-"not exist remotely, it would be created."
+"When 'git-mergetool' is invoked with the `-g` or `--gui` option the default "
+"merge tool will be read from the configured `merge.guitool` variable instead "
+"of `merge.tool`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-push.txt:501
+#: en/git-mergetool.txt:88
 #, no-wrap
-msgid "`git push origin HEAD`"
+msgid "--no-gui"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:504
-msgid "A handy way to push the current branch to the same name on the remote."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-push.txt:505
-#, no-wrap
-msgid "`git push mothership master:satellite/master dev:satellite/dev`"
+#: en/git-mergetool.txt:92
+msgid ""
+"This overrides a previous `-g` or `--gui` setting and reads the default "
+"merge tool will be read from the configured `merge.tool` variable."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:510
+#: en/git-mergetool.txt:99
 msgid ""
-"Use the source ref that matches `master` (e.g. `refs/heads/master`)  to "
-"update the ref that matches `satellite/master` (most probably "
-"`refs/remotes/satellite/master`) in the `mothership` repository; do the same "
-"for `dev` and `satellite/dev`."
+"Process files in the order specified in the <orderfile>, which has one shell "
+"glob pattern per line.  This overrides the `diff.orderFile` configuration "
+"variable (see linkgit:git-config[1]).  To cancel `diff.orderFile`, use `-O/"
+"dev/null`."
+msgstr ""
+
+#. type: Title -
+#: en/git-mergetool.txt:101
+#, no-wrap
+msgid "TEMPORARY FILES"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:517
+#: en/git-mergetool.txt:105
 msgid ""
-"This is to emulate `git fetch` run on the `mothership` using `git push` that "
-"is run in the opposite direction in order to integrate the work done on "
-"`satellite`, and is often necessary when you can only make connection in one "
-"way (i.e. satellite can ssh into mothership but mothership cannot initiate "
-"connection to satellite because the latter is behind a firewall or does not "
-"run sshd)."
+"`git mergetool` creates `*.orig` backup files while resolving merges.  These "
+"are safe to remove once a file has been merged and its `git mergetool` "
+"session has completed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:522
+#: en/git-mergetool.txt:109
 msgid ""
-"After running this `git push` on the `satellite` machine, you would ssh into "
-"the `mothership` and run `git merge` there to complete the emulation of `git "
-"pull` that were run on `mothership` to pull changes made on `satellite`."
+"Setting the `mergetool.keepBackup` configuration variable to `false` causes "
+"`git mergetool` to automatically remove the backup as files are successfully "
+"merged."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:523
+#. type: Title =
+#: en/git-merge-tree.txt:2
 #, no-wrap
-msgid "`git push origin HEAD:master`"
+msgid "git-merge-tree(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:527
-msgid ""
-"Push the current branch to the remote ref matching `master` in the `origin` "
-"repository. This form is convenient to push the current branch without "
-"thinking about its local name."
+#: en/git-merge-tree.txt:7
+msgid "git-merge-tree - Show three-way merge without touching index"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:528
+#. type: Plain text
+#: en/git-merge-tree.txt:13
 #, no-wrap
-msgid "`git push origin master:refs/heads/experimental`"
+msgid "'git merge-tree' <base-tree> <branch1> <branch2>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:534
+#: en/git-merge-tree.txt:21
 msgid ""
-"Create the branch `experimental` in the `origin` repository by copying the "
-"current `master` branch.  This form is only needed to create a new branch or "
-"tag in the remote repository when the local name and the remote name are "
-"different; otherwise, the ref name on its own will work."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-push.txt:535
-#, no-wrap
-msgid "`git push origin :experimental`"
+"Reads three tree-ish, and output trivial merge results and conflicting "
+"stages to the standard output.  This is similar to what three-way 'git read-"
+"tree -m' does, but instead of storing the results in the index, the command "
+"outputs the entries to the standard output."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:538
+#: en/git-merge-tree.txt:26
 msgid ""
-"Find a ref that matches `experimental` in the `origin` repository "
-"(e.g. `refs/heads/experimental`), and delete it."
+"This is meant to be used by higher level scripts to compute merge results "
+"outside of the index, and stuff the results back into the index.  For this "
+"reason, the output from the command omits entries that match the <branch1> "
+"tree."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-push.txt:539
+#. type: Title =
+#: en/git-merge.txt:2
 #, no-wrap
-msgid "`git push origin +dev:master`"
+msgid "git-merge(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:544
-msgid ""
-"Update the origin repository's master branch with the dev branch, allowing "
-"non-fast-forward updates.  *This can leave unreferenced commits dangling in "
-"the origin repository.* Consider the following situation, where a "
-"fast-forward is not possible:"
+#: en/git-merge.txt:7
+msgid "git-merge - Join two or more development histories together"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-push.txt:549
+#. type: Plain text
+#: en/git-merge.txt:18
 #, no-wrap
 msgid ""
-"\t    o---o---o---A---B  origin/master\n"
-"\t\t     \\\n"
-"\t\t      X---Y---Z  dev\n"
+"'git merge' [-n] [--stat] [--no-commit] [--squash] [--[no-]edit]\n"
+"\t[-s <strategy>] [-X <strategy-option>] [-S[<keyid>]]\n"
+"\t[--[no-]allow-unrelated-histories]\n"
+"\t[--[no-]rerere-autoupdate] [-m <msg>] [-F <file>] [<commit>...]\n"
+"'git merge' --abort\n"
+"'git merge' --continue\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:552
-msgid "The above command would change the origin repository to"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-push.txt:557
-#, no-wrap
+#: en/git-merge.txt:26
 msgid ""
-"\t\t      A---B  (unnamed branch)\n"
-"\t\t     /\n"
-"\t    o---o---o---X---Y---Z  master\n"
+"Incorporates changes from the named commits (since the time their histories "
+"diverged from the current branch) into the current branch.  This command is "
+"used by 'git pull' to incorporate changes from another repository and can be "
+"used by hand to merge changes from one branch into another."
 msgstr ""
 
 #. type: Plain text
-#: en/git-push.txt:562
+#: en/git-merge.txt:29 en/git-pull.txt:40
 msgid ""
-"Commits A and B would no longer belong to a branch with a symbolic name, and "
-"so would be unreachable.  As such, these commits would be removed by a `git "
-"gc` command on the origin repository."
+"Assume the following history exists and the current branch is \"`master`\":"
 msgstr ""
 
-#. type: Title =
-#: en/git-quiltimport.txt:2
+#. type: delimited block -
+#: en/git-merge.txt:34
 #, no-wrap
-msgid "git-quiltimport(1)"
+msgid ""
+"\t  A---B---C topic\n"
+"\t /\n"
+"    D---E---F---G master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-quiltimport.txt:7
-msgid "git-quiltimport - Applies a quilt patchset onto the current branch"
+#: en/git-merge.txt:41
+msgid ""
+"Then \"`git merge topic`\" will replay the changes made on the `topic` "
+"branch since it diverged from `master` (i.e., `E`) until its current commit "
+"(`C`) on top of `master`, and record the result in a new commit along with "
+"the names of the two parent commits and a log message from the user "
+"describing the changes."
 msgstr ""
 
-#. type: Plain text
-#: en/git-quiltimport.txt:14
+#. type: delimited block -
+#: en/git-merge.txt:46
 #, no-wrap
 msgid ""
-"'git quiltimport' [--dry-run | -n] [--author <author>] [--patches <dir>]\n"
-"\t\t[--series <file>]\n"
+"\t  A---B---C topic\n"
+"\t /         \\\n"
+"    D---E---F---G---H master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-quiltimport.txt:21
+#: en/git-merge.txt:55
 msgid ""
-"Applies a quilt patchset onto the current Git branch, preserving the patch "
-"boundaries, patch order, and patch descriptions present in the quilt "
-"patchset."
+"The second syntax (\"`git merge --abort`\") can only be run after the merge "
+"has resulted in conflicts. 'git merge --abort' will abort the merge process "
+"and try to reconstruct the pre-merge state. However, if there were "
+"uncommitted changes when the merge started (and especially if those changes "
+"were further modified after the merge was started), 'git merge --abort' will "
+"in some cases be unable to reconstruct the original (pre-merge) changes. "
+"Therefore:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-quiltimport.txt:27
+#: en/git-merge.txt:59
+#, no-wrap
 msgid ""
-"For each patch the code attempts to extract the author from the patch "
-"description.  If that fails it falls back to the author specified with "
-"--author.  If the --author flag was not given the patch description is "
-"displayed and the user is asked to interactively enter the author of the "
-"patch."
+"*Warning*: Running 'git merge' with non-trivial uncommitted changes is\n"
+"discouraged: while possible, it may leave you in a state that is hard to\n"
+"back out of in the case of a conflict.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-quiltimport.txt:30
+#: en/git-merge.txt:62
 msgid ""
-"If a subject is not found in the patch description the patch name is "
-"preserved as the 1 line subject in the Git description."
+"The third syntax (\"`git merge --continue`\") can only be run after the "
+"merge has resulted in conflicts."
 msgstr ""
 
 #. type: Plain text
-#: en/git-quiltimport.txt:40
+#: en/git-merge.txt:70
 msgid ""
-"Walk through the patches in the series and warn if we cannot find all of the "
-"necessary information to commit a patch.  At the time of this writing only "
-"missing author information is warned about."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-quiltimport.txt:41
-#, no-wrap
-msgid "--author Author Name <Author Email>"
+"Set the commit message to be used for the merge commit (in case one is "
+"created)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-quiltimport.txt:44
+#: en/git-merge.txt:73 en/git-merge.txt:85
 msgid ""
-"The author name and email address to use when no author information can be "
-"found in the patch description."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-quiltimport.txt:45
-#, no-wrap
-msgid "--patches <dir>"
+"If `--log` is specified, a shortlog of the commits being merged will be "
+"appended to the specified message."
 msgstr ""
 
 #. type: Plain text
-#: en/git-quiltimport.txt:47
-msgid "The directory to find the quilt patches."
+#: en/git-merge.txt:77
+msgid ""
+"The 'git fmt-merge-msg' command can be used to give a good default for "
+"automated 'git merge' invocations. The automated message can include the "
+"branch description."
 msgstr ""
 
 #. type: Plain text
-#: en/git-quiltimport.txt:51
+#: en/git-merge.txt:82
 msgid ""
-"The default for the patch directory is patches or the value of the "
-"`$QUILT_PATCHES` environment variable."
+"Read the commit message to be used for the merge commit (in case one is "
+"created)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-quiltimport.txt:52
+#: en/git-merge.txt:86
 #, no-wrap
-msgid "--series <file>"
+msgid "--[no-]rerere-autoupdate"
 msgstr ""
 
 #. type: Plain text
-#: en/git-quiltimport.txt:54
-msgid "The quilt series file."
+#: en/git-merge.txt:89
+msgid ""
+"Allow the rerere mechanism to update the index with the result of auto-"
+"conflict resolution if possible."
 msgstr ""
 
 #. type: Plain text
-#: en/git-quiltimport.txt:58
+#: en/git-merge.txt:93
 msgid ""
-"The default for the series file is <patches>/series or the value of the "
-"`$QUILT_SERIES` environment variable."
-msgstr ""
-
-#. type: Title =
-#: en/git-read-tree.txt:2
-#, no-wrap
-msgid "git-read-tree(1)"
+"Abort the current conflict resolution process, and try to reconstruct the "
+"pre-merge state."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:7
-msgid "git-read-tree - Reads tree information into the index"
+#: en/git-merge.txt:98
+msgid ""
+"If there were uncommitted worktree changes present when the merge started, "
+"'git merge --abort' will in some cases be unable to reconstruct these "
+"changes. It is therefore recommended to always commit or stash your changes "
+"before running 'git merge'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:16
-#, no-wrap
+#: en/git-merge.txt:101
 msgid ""
-"'git read-tree' [[-m [--trivial] [--aggressive] | --reset | "
-"--prefix=<prefix>]\n"
-"\t\t[-u [--exclude-per-directory=<gitignore>] | -i]]\n"
-"\t\t[--index-output=<file>] [--no-sparse-checkout]\n"
-"\t\t(--empty | <tree-ish1> [<tree-ish2> [<tree-ish3>]])\n"
+"'git merge --abort' is equivalent to 'git reset --merge' when `MERGE_HEAD` "
+"is present."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:23
+#: en/git-merge.txt:106
 msgid ""
-"Reads the tree information given by <tree-ish> into the index, but does not "
-"actually *update* any of the files it \"caches\". (see: "
-"linkgit:git-checkout-index[1])"
+"After a 'git merge' stops due to conflicts you can conclude the merge by "
+"running 'git merge --continue' (see \"HOW TO RESOLVE CONFLICTS\" section "
+"below)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:28
+#: en/git-merge.txt:111
 msgid ""
-"Optionally, it can merge a tree into the index, perform a fast-forward "
-"(i.e. 2-way) merge, or a 3-way merge, with the `-m` flag.  When used with "
-"`-m`, the `-u` flag causes it to also update the files in the work tree with "
-"the result of the merge."
+"Commits, usually other branch heads, to merge into our branch.  Specifying "
+"more than one commit will create a merge with more than two parents "
+"(affectionately called an Octopus merge)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:31
+#: en/git-merge.txt:115
 msgid ""
-"Trivial merges are done by 'git read-tree' itself.  Only conflicting paths "
-"will be in unmerged state when 'git read-tree' returns."
+"If no commit is given from the command line, merge the remote-tracking "
+"branches that the current branch is configured to use as its upstream.  See "
+"also the configuration section of this manual page."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:39
+#: en/git-merge.txt:119
 msgid ""
-"Perform a merge, not just a read.  The command will refuse to run if your "
-"index file has unmerged entries, indicating that you have not finished "
-"previous merge you started."
+"When `FETCH_HEAD` (and no other commit) is specified, the branches recorded "
+"in the `.git/FETCH_HEAD` file by the previous invocation of `git fetch` for "
+"merging are merged to the current branch."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-read-tree.txt:40
+#. type: Title -
+#: en/git-merge.txt:122
 #, no-wrap
-msgid "--reset"
+msgid "PRE-MERGE CHECKS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:43
-msgid "Same as -m, except that unmerged entries are discarded instead of failing."
+#: en/git-merge.txt:130
+msgid ""
+"Before applying outside changes, you should get your own work in good shape "
+"and committed locally, so it will not be clobbered if there are conflicts.  "
+"See also linkgit:git-stash[1].  'git pull' and 'git merge' will stop without "
+"doing anything when local uncommitted changes overlap with files that 'git "
+"pull'/'git merge' may need to update."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:47
+#: en/git-merge.txt:136
 msgid ""
-"After a successful merge, update the files in the work tree with the result "
-"of the merge."
+"To avoid recording unrelated changes in the merge commit, 'git pull' and "
+"'git merge' will also abort if there are any changes registered in the index "
+"relative to the `HEAD` commit.  (Special narrow exceptions to this rule may "
+"exist depending on which merge strategy is in use, but generally, the index "
+"must match HEAD.)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:56
+#: en/git-merge.txt:139
 msgid ""
-"Usually a merge requires the index file as well as the files in the working "
-"tree to be up to date with the current head commit, in order not to lose "
-"local changes.  This flag disables the check with the working tree and is "
-"meant to be used when creating a merge of trees that are not directly "
-"related to the current working tree status into a temporary index file."
+"If all named commits are already ancestors of `HEAD`, 'git merge' will exit "
+"early with the message \"Already up to date.\""
+msgstr ""
+
+#. type: Title -
+#: en/git-merge.txt:141
+#, no-wrap
+msgid "FAST-FORWARD MERGE"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:61
+#: en/git-merge.txt:151
 msgid ""
-"Check if the command would error out, without updating the index or the "
-"files in the working tree for real."
+"Often the current branch head is an ancestor of the named commit.  This is "
+"the most common case especially when invoked from 'git pull': you are "
+"tracking an upstream repository, you have committed no local changes, and "
+"now you want to update to a newer upstream revision.  In this case, a new "
+"commit is not needed to store the combined history; instead, the `HEAD` "
+"(along with the index) is updated to point at the named commit, without "
+"creating an extra merge commit."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:64
-msgid "Show the progress of checking files out."
+#: en/git-merge.txt:153
+msgid "This behavior can be suppressed with the `--no-ff` option."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-read-tree.txt:65
+#. type: Title -
+#: en/git-merge.txt:155
 #, no-wrap
-msgid "--trivial"
+msgid "TRUE MERGE"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:70
+#: en/git-merge.txt:160
 msgid ""
-"Restrict three-way merge by 'git read-tree' to happen only if there is no "
-"file-level merging required, instead of resolving merge for trivial cases "
-"and leaving conflicting files unresolved in the index."
+"Except in a fast-forward merge (see above), the branches to be merged must "
+"be tied together by a merge commit that has both of them as its parents."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:77
+#: en/git-merge.txt:165
 msgid ""
-"Usually a three-way merge by 'git read-tree' resolves the merge for really "
-"trivial cases and leaves other cases unresolved in the index, so that "
-"porcelains can implement different merge policies.  This flag makes the "
-"command resolve a few more cases internally:"
+"A merged version reconciling the changes from all branches to be merged is "
+"committed, and your `HEAD`, index, and working tree are updated to it.  It "
+"is possible to have modifications in the working tree as long as they do not "
+"overlap; the update will preserve them."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:80
+#: en/git-merge.txt:168
 msgid ""
-"when one side removes a path and the other side leaves the path unmodified.  "
-"The resolution is to remove that path."
+"When it is not obvious how to reconcile the changes, the following happens:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:81
-msgid "when both sides remove a path.  The resolution is to remove that path."
+#: en/git-merge.txt:170
+msgid "The `HEAD` pointer stays the same."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:83
-msgid "when both sides add a path identically.  The resolution is to add that path."
+#: en/git-merge.txt:171
+msgid "The `MERGE_HEAD` ref is set to point to the other branch head."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:90
+#: en/git-merge.txt:173
 msgid ""
-"Keep the current index contents, and read the contents of the named tree-ish "
-"under the directory at `<prefix>`.  The command will refuse to overwrite "
-"entries that already existed in the original index file. Note that the "
-"`<prefix>/` value must end with a slash."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-read-tree.txt:91
-#, no-wrap
-msgid "--exclude-per-directory=<gitignore>"
+"Paths that merged cleanly are updated both in the index file and in your "
+"working tree."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:105
+#: en/git-merge.txt:179
 msgid ""
-"When running the command with `-u` and `-m` options, the merge result may "
-"need to overwrite paths that are not tracked in the current branch.  The "
-"command usually refuses to proceed with the merge to avoid losing such a "
-"path.  However this safety valve sometimes gets in the way.  For example, it "
-"often happens that the other branch added a file that used to be a generated "
-"file in your branch, and the safety valve triggers when you try to switch to "
-"that branch after you ran `make` but before running `make clean` to remove "
-"the generated file.  This option tells the command to read per-directory "
-"exclude file (usually '.gitignore') and allows such an untracked but "
-"explicitly ignored file to be overwritten."
+"For conflicting paths, the index file records up to three versions: stage 1 "
+"stores the version from the common ancestor, stage 2 from `HEAD`, and stage "
+"3 from `MERGE_HEAD` (you can inspect the stages with `git ls-files -u`).  "
+"The working tree files contain the result of the \"merge\" program; i.e. 3-"
+"way merge results with familiar conflict markers `<<<` `===` `>>>`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-read-tree.txt:106
-#, no-wrap
-msgid "--index-output=<file>"
+#. type: Plain text
+#: en/git-merge.txt:183
+msgid ""
+"No other changes are made.  In particular, the local modifications you had "
+"before you started merge will stay the same and the index entries for them "
+"stay as they were, i.e. matching `HEAD`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:117
+#: en/git-merge.txt:186
 msgid ""
-"Instead of writing the results out to `$GIT_INDEX_FILE`, write the resulting "
-"index in the named file.  While the command is operating, the original index "
-"file is locked with the same mechanism as usual.  The file must allow to be "
-"rename(2)ed into from a temporary file that is created next to the usual "
-"index file; typically this means it needs to be on the same filesystem as "
-"the index file itself, and you need write permission to the directories the "
-"index file and index output file are located in."
+"If you tried a merge which resulted in complex conflicts and want to start "
+"over, you can recover with `git merge --abort`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-read-tree.txt:118
+#. type: Title -
+#: en/git-merge.txt:188
 #, no-wrap
-msgid "--no-sparse-checkout"
+msgid "MERGING TAG"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:121
-msgid "Disable sparse checkout support even if `core.sparseCheckout` is true."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-read-tree.txt:122
-#, no-wrap
-msgid "--empty"
+#: en/git-merge.txt:195
+msgid ""
+"When merging an annotated (and possibly signed) tag, Git always creates a "
+"merge commit even if a fast-forward merge is possible, and the commit "
+"message template is prepared with the tag message.  Additionally, if the tag "
+"is signed, the signature check is reported as a comment in the message "
+"template. See also linkgit:git-tag[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:125
-msgid "Instead of reading tree object(s) into the index, just empty it."
+#: en/git-merge.txt:199
+msgid ""
+"When you want to just integrate with the work leading to the commit that "
+"happens to be tagged, e.g. synchronizing with an upstream release point, you "
+"may not want to make an unnecessary merge commit."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-read-tree.txt:126
-#, no-wrap
-msgid "<tree-ish#>"
+#. type: Plain text
+#: en/git-merge.txt:203
+msgid ""
+"In such a case, you can \"unwrap\" the tag yourself before feeding it to "
+"`git merge`, or pass `--ff-only` when you do not have any work on your own. "
+"e.g."
 msgstr ""
 
-#. type: Plain text
-#: en/git-read-tree.txt:128
-msgid "The id of the tree object(s) to be read/merged."
+#. type: delimited block -
+#: en/git-merge.txt:208
+#, no-wrap
+msgid ""
+"git fetch origin\n"
+"git merge v1.2.3^0\n"
+"git merge --ff-only v1.2.3\n"
 msgstr ""
 
 #. type: Title -
-#: en/git-read-tree.txt:131
+#: en/git-merge.txt:212
 #, no-wrap
-msgid "Merging"
+msgid "HOW CONFLICTS ARE PRESENTED"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:136
+#: en/git-merge.txt:221
 msgid ""
-"If `-m` is specified, 'git read-tree' can perform 3 kinds of merge, a single "
-"tree merge if only 1 tree is given, a fast-forward merge with 2 trees, or a "
-"3-way merge if 3 trees are provided."
+"During a merge, the working tree files are updated to reflect the result of "
+"the merge.  Among the changes made to the common ancestor's version, non-"
+"overlapping ones (that is, you changed an area of the file while the other "
+"side left that area intact, or vice versa) are incorporated in the final "
+"result verbatim.  When both sides made changes to the same area, however, "
+"Git cannot randomly pick one side over the other, and asks you to resolve it "
+"by leaving what both sides did to that area."
 msgstr ""
 
-#. type: Title ~
-#: en/git-read-tree.txt:139
+#. type: Plain text
+#: en/git-merge.txt:224
+msgid ""
+"By default, Git uses the same style as the one used by the \"merge\" program "
+"from the RCS suite to present such a conflicted hunk, like this:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-merge.txt:235
 #, no-wrap
-msgid "Single Tree Merge"
+msgid ""
+"Here are lines that are either unchanged from the common\n"
+"ancestor, or cleanly resolved because only one side changed.\n"
+"<<<<<<< yours:sample.txt\n"
+"Conflict resolution is hard;\n"
+"let's go shopping.\n"
+"=======\n"
+"Git makes conflict resolution easy.\n"
+">>>>>>> theirs:sample.txt\n"
+"And here is another line that is cleanly resolved or unmodified.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:145
+#: en/git-merge.txt:240
 msgid ""
-"If only 1 tree is specified, 'git read-tree' operates as if the user did not "
-"specify `-m`, except that if the original index has an entry for a given "
-"pathname, and the contents of the path match with the tree being read, the "
-"stat info from the index is used. (In other words, the index's stat()s take "
-"precedence over the merged tree's)."
+"The area where a pair of conflicting changes happened is marked with markers "
+"`<<<<<<<`, `=======`, and `>>>>>>>`.  The part before the `=======` is "
+"typically your side, and the part afterwards is typically their side."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:149
+#: en/git-merge.txt:246
 msgid ""
-"That means that if you do a `git read-tree -m <newtree>` followed by a `git "
-"checkout-index -f -u -a`, the 'git checkout-index' only checks out the stuff "
-"that really changed."
+"The default format does not show what the original said in the conflicting "
+"area.  You cannot tell how many lines are deleted and replaced with Barbie's "
+"remark on your side.  The only thing you can tell is that your side wants to "
+"say it is hard and you'd prefer to go shopping, while the other side wants "
+"to claim it is easy."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:152
+#: en/git-merge.txt:250
 msgid ""
-"This is used to avoid unnecessary false hits when 'git diff-files' is run "
-"after 'git read-tree'."
+"An alternative style can be used by setting the \"merge.conflictStyle\" "
+"configuration variable to \"diff3\".  In \"diff3\" style, the above conflict "
+"may look like this:"
 msgstr ""
 
-#. type: Title ~
-#: en/git-read-tree.txt:155
+#. type: delimited block -
+#: en/git-merge.txt:263
 #, no-wrap
-msgid "Two Tree Merge"
+msgid ""
+"Here are lines that are either unchanged from the common\n"
+"ancestor, or cleanly resolved because only one side changed.\n"
+"<<<<<<< yours:sample.txt\n"
+"Conflict resolution is hard;\n"
+"let's go shopping.\n"
+"|||||||\n"
+"Conflict resolution is hard.\n"
+"=======\n"
+"Git makes conflict resolution easy.\n"
+">>>>>>> theirs:sample.txt\n"
+"And here is another line that is cleanly resolved or unmodified.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:161
+#: en/git-merge.txt:271
 msgid ""
-"Typically, this is invoked as `git read-tree -m $H $M`, where $H is the head "
-"commit of the current repository, and $M is the head of a foreign tree, "
-"which is simply ahead of $H (i.e. we are in a fast-forward situation)."
+"In addition to the `<<<<<<<`, `=======`, and `>>>>>>>` markers, it uses "
+"another `|||||||` marker that is followed by the original text.  You can "
+"tell that the original just stated a fact, and your side simply gave in to "
+"that statement and gave up, while the other side tried to have a more "
+"positive attitude.  You can sometimes come up with a better resolution by "
+"viewing the original."
 msgstr ""
 
-#. type: Plain text
-#: en/git-read-tree.txt:164
-msgid ""
-"When two trees are specified, the user is telling 'git read-tree' the "
-"following:"
+#. type: Title -
+#: en/git-merge.txt:274
+#, no-wrap
+msgid "HOW TO RESOLVE CONFLICTS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:166
-msgid "The current index and work tree is derived from $H, but"
+#: en/git-merge.txt:277
+msgid "After seeing a conflict, you can do two things:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:167
-msgid "the user may have local changes in them since $H."
+#: en/git-merge.txt:282
+msgid ""
+"Decide not to merge.  The only clean-ups you need are to reset the index "
+"file to the `HEAD` commit to reverse 2. and to clean up working tree changes "
+"made by 2. and 3.; `git merge --abort` can be used for this."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:169
-msgid "The user wants to fast-forward to $M."
+#: en/git-merge.txt:289
+msgid ""
+"Resolve the conflicts.  Git will mark the conflicts in the working tree.  "
+"Edit the files into shape and 'git add' them to the index.  Use 'git commit' "
+"or 'git merge --continue' to seal the deal. The latter command checks "
+"whether there is a (interrupted) merge in progress before calling 'git "
+"commit'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:175
-msgid ""
-"In this case, the `git read-tree -m $H $M` command makes sure that no local "
-"change is lost as the result of this \"merge\".  Here are the \"carry "
-"forward\" rules, where \"I\" denotes the index, \"clean\" means that index "
-"and work tree coincide, and \"exists\"/\"nothing\" refer to the presence of "
-"a path in the specified commit:"
+#: en/git-merge.txt:291
+msgid "You can work through the conflict with a number of tools:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:185
-#, no-wrap
+#: en/git-merge.txt:294
 msgid ""
-"\tI                   H        M        Result\n"
-"       -------------------------------------------------------\n"
-"     0  nothing             nothing  nothing  (does not happen)\n"
-"     1  nothing             nothing  exists   use M\n"
-"     2  nothing             exists   nothing  remove path from index\n"
-"     3  nothing             exists   exists,  use M if \"initial "
-"checkout\",\n"
-"\t\t\t\t     H == M   keep index otherwise\n"
-"\t\t\t\t     exists,  fail\n"
-"\t\t\t\t     H != M\n"
+"Use a mergetool.  `git mergetool` to launch a graphical mergetool which will "
+"work you through the merge."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:190
-#, no-wrap
+#: en/git-merge.txt:298
 msgid ""
-"        clean I==H  I==M\n"
-"       ------------------\n"
-"     4  yes   N/A   N/A     nothing  nothing  keep index\n"
-"     5  no    N/A   N/A     nothing  nothing  keep index\n"
+"Look at the diffs.  `git diff` will show a three-way diff, highlighting "
+"changes from both the `HEAD` and `MERGE_HEAD` versions."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:195
-#, no-wrap
+#: en/git-merge.txt:302
 msgid ""
-"     6  yes   N/A   yes     nothing  exists   keep index\n"
-"     7  no    N/A   yes     nothing  exists   keep index\n"
-"     8  yes   N/A   no      nothing  exists   fail\n"
-"     9  no    N/A   no      nothing  exists   fail\n"
+"Look at the diffs from each branch. `git log --merge -p <path>` will show "
+"diffs first for the `HEAD` version and then the `MERGE_HEAD` version."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:200
-#, no-wrap
+#: en/git-merge.txt:307
 msgid ""
-"     10 yes   yes   N/A     exists   nothing  remove path from index\n"
-"     11 no    yes   N/A     exists   nothing  fail\n"
-"     12 yes   no    N/A     exists   nothing  fail\n"
-"     13 no    no    N/A     exists   nothing  fail\n"
+"Look at the originals.  `git show :1:filename` shows the common ancestor, "
+"`git show :2:filename` shows the `HEAD` version, and `git show :3:filename` "
+"shows the `MERGE_HEAD` version."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:205
-#, no-wrap
+#: en/git-merge.txt:314
 msgid ""
-"\tclean (H==M)\n"
-"       ------\n"
-"     14 yes                 exists   exists   keep index\n"
-"     15 no                  exists   exists   keep index\n"
+"Merge branches `fixes` and `enhancements` on top of the current branch, "
+"making an octopus merge:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-read-tree.txt:214
+#. type: delimited block -
+#: en/git-merge.txt:317
 #, no-wrap
-msgid ""
-"        clean I==H  I==M (H!=M)\n"
-"       ------------------\n"
-"     16 yes   no    no      exists   exists   fail\n"
-"     17 no    no    no      exists   exists   fail\n"
-"     18 yes   no    yes     exists   exists   keep index\n"
-"     19 no    no    yes     exists   exists   keep index\n"
-"     20 yes   yes   no      exists   exists   use M\n"
-"     21 no    yes   no      exists   exists   fail\n"
+msgid "$ git merge fixes enhancements\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:219
+#: en/git-merge.txt:321
 msgid ""
-"In all \"keep index\" cases, the index entry stays as in the original index "
-"file.  If the entry is not up to date, 'git read-tree' keeps the copy in the "
-"work tree intact when operating under the -u flag."
+"Merge branch `obsolete` into the current branch, using `ours` merge strategy:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-read-tree.txt:230
-msgid ""
-"When this form of 'git read-tree' returns successfully, you can see which of "
-"the \"local changes\" that you made were carried forward by running `git "
-"diff-index --cached $M`.  Note that this does not necessarily match what "
-"`git diff-index --cached $H` would have produced before such a two tree "
-"merge.  This is because of cases 18 and 19 --- if you already had the "
-"changes in $M (e.g. maybe you picked it up via e-mail in a patch form), `git "
-"diff-index --cached $H` would have told you about the change before this "
-"merge, but it would not show in `git diff-index --cached $M` output after "
-"the two-tree merge."
+#. type: delimited block -
+#: en/git-merge.txt:324
+#, no-wrap
+msgid "$ git merge -s ours obsolete\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:237
+#: en/git-merge.txt:328
 msgid ""
-"Case 3 is slightly tricky and needs explanation.  The result from this rule "
-"logically should be to remove the path if the user staged the removal of the "
-"path and then switching to a new branch.  That however will prevent the "
-"initial checkout from happening, so the rule is modified to use M (new tree) "
-"only when the content of the index is empty.  Otherwise the removal of the "
-"path is kept as long as $H and $M are the same."
+"Merge branch `maint` into the current branch, but do not make a new commit "
+"automatically:"
 msgstr ""
 
-#. type: Title ~
-#: en/git-read-tree.txt:239
+#. type: delimited block -
+#: en/git-merge.txt:331
 #, no-wrap
-msgid "3-Way Merge"
+msgid "$ git merge --no-commit maint\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:242
+#: en/git-merge.txt:335
 msgid ""
-"Each \"index\" entry has two bits worth of \"stage\" state. stage 0 is the "
-"normal one, and is the only one you'd see in any kind of normal use."
+"This can be used when you want to include further changes to the merge, or "
+"want to write your own merge commit message."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:245
+#: en/git-merge.txt:339
 msgid ""
-"However, when you do 'git read-tree' with three trees, the \"stage\" starts "
-"out at 1."
-msgstr ""
-
-#. type: Plain text
-#: en/git-read-tree.txt:247
-msgid "This means that you can do"
+"You should refrain from abusing this option to sneak substantial changes "
+"into a merge commit.  Small fixups like bumping release/version name would "
+"be acceptable."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-read-tree.txt:250
+#. type: Labeled list
+#: en/git-merge.txt:347
 #, no-wrap
-msgid "$ git read-tree -m <tree1> <tree2> <tree3>\n"
+msgid "branch.<name>.mergeOptions"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:258
+#: en/git-merge.txt:351
 msgid ""
-"and you will end up with an index with all of the <tree1> entries in "
-"\"stage1\", all of the <tree2> entries in \"stage2\" and all of the <tree3> "
-"entries in \"stage3\".  When performing a merge of another branch into the "
-"current branch, we use the common ancestor tree as <tree1>, the current "
-"branch head as <tree2>, and the other branch head as <tree3>."
+"Sets default options for merging into branch <name>. The syntax and "
+"supported options are the same as those of 'git merge', but option values "
+"containing whitespace characters are currently not supported."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:262
+#: en/git-merge.txt:360
 msgid ""
-"Furthermore, 'git read-tree' has special-case logic that says: if you see a "
-"file that matches in all respects in the following states, it \"collapses\" "
-"back to \"stage0\":"
+"linkgit:git-fmt-merge-msg[1], linkgit:git-pull[1], linkgit:gitattributes[5], "
+"linkgit:git-reset[1], linkgit:git-diff[1], linkgit:git-ls-files[1], linkgit:"
+"git-add[1], linkgit:git-rm[1], linkgit:git-mergetool[1]"
 msgstr ""
 
-#. type: Plain text
-#: en/git-read-tree.txt:266
-msgid ""
-"stage 2 and 3 are the same; take one or the other (it makes no difference - "
-"the same work has been done on our branch in stage 2 and their branch in "
-"stage 3)"
+#. type: Title =
+#: en/git-mktag.txt:2
+#, no-wrap
+msgid "git-mktag(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:271
-msgid ""
-"stage 1 and stage 2 are the same and stage 3 is different; take stage 3 (our "
-"branch in stage 2 did not do anything since the ancestor in stage 1 while "
-"their branch in stage 3 worked on it)"
+#: en/git-mktag.txt:7
+msgid "git-mktag - Creates a tag object"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:274
-msgid ""
-"stage 1 and stage 3 are the same and stage 2 is different take stage 2 (we "
-"did something while they did nothing)"
+#: en/git-mktag.txt:13
+#, no-wrap
+msgid "'git mktag'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:278
+#: en/git-mktag.txt:18
 msgid ""
-"The 'git write-tree' command refuses to write a nonsensical tree, and it "
-"will complain about unmerged entries if it sees a single entry that is not "
-"stage 0."
+"Reads a tag contents on standard input and creates a tag object that can "
+"also be used to sign other objects."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:284
-msgid ""
-"OK, this all sounds like a collection of totally nonsensical rules, but it's "
-"actually exactly what you want in order to do a fast merge. The different "
-"stages represent the \"result tree\" (stage 0, aka \"merged\"), the original "
-"tree (stage 1, aka \"orig\"), and the two trees you are trying to merge "
-"(stage 2 and 3 respectively)."
+#: en/git-mktag.txt:20
+msgid "The output is the new tag's <object> identifier."
 msgstr ""
 
-#. type: Plain text
-#: en/git-read-tree.txt:289
-msgid ""
-"The order of stages 1, 2 and 3 (hence the order of three <tree-ish> "
-"command-line arguments) are significant when you start a 3-way merge with an "
-"index file that is already populated.  Here is an outline of how the "
-"algorithm works:"
+#. type: Title -
+#: en/git-mktag.txt:22
+#, no-wrap
+msgid "Tag Format"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:292
+#: en/git-mktag.txt:25
 msgid ""
-"if a file exists in identical format in all three trees, it will "
-"automatically collapse to \"merged\" state by 'git read-tree'."
+"A tag signature file, to be fed to this command's standard input, has a very "
+"simple fixed format: four lines of"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:297
+#: en/git-mktag.txt:30
+#, no-wrap
 msgid ""
-"a file that has _any_ difference what-so-ever in the three trees will stay "
-"as separate entries in the index. It's up to \"porcelain policy\" to "
-"determine how to remove the non-0 stages, and insert a merged version."
+"  object <sha1>\n"
+"  type <typename>\n"
+"  tag <tagname>\n"
+"  tagger <tagger>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:302
+#: en/git-mktag.txt:36
 msgid ""
-"the index file saves and restores with all this information, so you can "
-"merge things incrementally, but as long as it has entries in stages 1/2/3 "
-"(i.e., \"unmerged entries\") you can't write the result. So now the merge "
-"algorithm ends up being really simple:"
+"followed by some 'optional' free-form message (some tags created by older "
+"Git may not have `tagger` line).  The message, when exists, is separated by "
+"a blank line from the header.  The message part may contain a signature that "
+"Git itself doesn't care about, but that can be verified with gpg."
+msgstr ""
+
+#. type: Title =
+#: en/git-mktree.txt:2
+#, no-wrap
+msgid "git-mktree(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:305
-msgid ""
-"you walk the index in order, and ignore all entries of stage 0, since "
-"they've already been done."
+#: en/git-mktree.txt:7
+msgid "git-mktree - Build a tree-object from ls-tree formatted text"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:309
-msgid ""
-"if you find a \"stage1\", but no matching \"stage2\" or \"stage3\", you know "
-"it's been removed from both trees (it only existed in the original tree), "
-"and you remove that entry."
+#: en/git-mktree.txt:13
+#, no-wrap
+msgid "'git mktree' [-z] [--missing] [--batch]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:314
+#: en/git-mktree.txt:20
 msgid ""
-"if you find a matching \"stage2\" and \"stage3\" tree, you remove one of "
-"them, and turn the other into a \"stage0\" entry. Remove any matching "
-"\"stage1\" entry if it exists too.  .. all the normal trivial rules .."
+"Reads standard input in non-recursive `ls-tree` output format, and creates a "
+"tree object.  The order of the tree entries is normalized by mktree so pre-"
+"sorting the input is not required.  The object name of the tree object built "
+"is written to the standard output."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:319
-msgid ""
-"You would normally use 'git merge-index' with supplied 'git merge-one-file' "
-"to do this last step.  The script updates the files in the working tree as "
-"it merges each path and at the end of a successful merge."
+#: en/git-mktree.txt:25
+msgid "Read the NUL-terminated `ls-tree -z` output instead."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-mktree.txt:26
+#, no-wrap
+msgid "--missing"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:327
+#: en/git-mktree.txt:31
 msgid ""
-"When you start a 3-way merge with an index file that is already populated, "
-"it is assumed that it represents the state of the files in your work tree, "
-"and you can even have files with changes unrecorded in the index file.  It "
-"is further assumed that this state is \"derived\" from the stage 2 tree.  "
-"The 3-way merge refuses to run if it finds an entry in the original index "
-"file that does not match stage 2."
+"Allow missing objects.  The default behaviour (without this option)  is to "
+"verify that each tree entry's sha1 identifies an existing object.  This "
+"option has no effect on the treatment of gitlink entries (aka \"submodules"
+"\") which are always allowed to be missing."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:332
+#: en/git-mktree.txt:37
 msgid ""
-"This is done to prevent you from losing your work-in-progress changes, and "
-"mixing your random changes in an unrelated merge commit.  To illustrate, "
-"suppose you start from what has been committed last to your repository:"
+"Allow building of more than one tree object before exiting.  Each tree is "
+"separated by as single blank line. The final new-line is optional.  Note - "
+"if the `-z` option is used, lines are terminated with NUL."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-read-tree.txt:336
+#. type: Title =
+#: en/git-mv.txt:2
 #, no-wrap
-msgid ""
-"$ JC=`git rev-parse --verify \"HEAD^0\"`\n"
-"$ git checkout-index -f -u -a $JC\n"
+msgid "git-mv(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:341
-msgid ""
-"You do random edits, without running 'git update-index'.  And then you "
-"notice that the tip of your \"upstream\" tree has advanced since you pulled "
-"from him:"
+#: en/git-mv.txt:7
+msgid "git-mv - Move or rename a file, a directory, or a symlink"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-read-tree.txt:345
+#. type: Plain text
+#: en/git-mv.txt:13
 #, no-wrap
-msgid ""
-"$ git fetch git://.... linus\n"
-"$ LT=`git rev-parse FETCH_HEAD`\n"
+msgid "'git mv' <options>... <args>...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:351
-msgid ""
-"Your work tree is still based on your HEAD ($JC), but you have some edits "
-"since.  Three-way merge makes sure that you have not added or modified index "
-"entries since $JC, and if you haven't, then does the right thing.  So with "
-"the following sequence:"
+#: en/git-mv.txt:17
+msgid "Move or rename a file, directory or symlink."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-read-tree.txt:357
+#. type: Plain text
+#: en/git-mv.txt:20
 #, no-wrap
 msgid ""
-"$ git read-tree -m -u `git merge-base $JC $LT` $JC $LT\n"
-"$ git merge-index git-merge-one-file -a\n"
-"$ echo \"Merge with Linus\" | \\\n"
-"  git commit-tree `git write-tree` -p $JC -p $LT\n"
+" git mv [-v] [-f] [-n] [-k] <source> <destination>\n"
+" git mv [-v] [-f] [-n] [-k] <source> ... <destination directory>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:362
+#: en/git-mv.txt:25
 msgid ""
-"what you would commit is a pure merge between $JC and $LT without your "
-"work-in-progress changes, and your work tree would be updated to the result "
-"of the merge."
+"In the first form, it renames <source>, which must exist and be either a "
+"file, symlink or directory, to <destination>.  In the second form, the last "
+"argument has to be an existing directory; the given sources will be moved "
+"into this directory."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:366
+#: en/git-mv.txt:28
 msgid ""
-"However, if you have local changes in the working tree that would be "
-"overwritten by this merge, 'git read-tree' will refuse to run to prevent "
-"your changes from being lost."
+"The index is updated after successful completion, but the change must still "
+"be committed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:376
-msgid ""
-"In other words, there is no need to worry about what exists only in the "
-"working tree.  When you have local changes in a part of the project that is "
-"not involved in the merge, your changes do not interfere with the merge, and "
-"are kept intact.  When they *do* interfere, the merge does not even start "
-"('git read-tree' complains loudly and fails without modifying anything).  In "
-"such a case, you can simply continue doing what you were in the middle of "
-"doing, and when your working tree is ready (i.e. you have finished your "
-"work-in-progress), attempt the merge again."
+#: en/git-mv.txt:34
+msgid "Force renaming or moving of a file even if the target exists"
 msgstr ""
 
-#. type: Title -
-#: en/git-read-tree.txt:379
-#, no-wrap
-msgid "Sparse checkout"
+#. type: Plain text
+#: en/git-mv.txt:39
+msgid ""
+"Skip move or rename actions which would lead to an error condition. An error "
+"happens when a source is neither existing nor controlled by Git, or when it "
+"would overwrite an existing file unless `-f` is given."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:384
-msgid ""
-"\"Sparse checkout\" allows populating the working directory sparsely.  It "
-"uses the skip-worktree bit (see linkgit:git-update-index[1]) to tell Git "
-"whether a file in the working directory is worth looking at."
+#: en/git-mv.txt:42
+msgid "Do nothing; only show what would happen"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:393
-msgid ""
-"'git read-tree' and other merge-based commands ('git merge', 'git "
-"checkout'...) can help maintaining the skip-worktree bitmap and working "
-"directory update. `$GIT_DIR/info/sparse-checkout` is used to define the "
-"skip-worktree reference bitmap. When 'git read-tree' needs to update the "
-"working directory, it resets the skip-worktree bit in the index based on "
-"this file, which uses the same syntax as .gitignore files.  If an entry "
-"matches a pattern in this file, skip-worktree will not be set on that "
-"entry. Otherwise, skip-worktree will be set."
+#: en/git-mv.txt:46
+msgid "Report the names of files as they are moved."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:397
+#: en/git-mv.txt:54
 msgid ""
-"Then it compares the new skip-worktree value with the previous one. If "
-"skip-worktree turns from set to unset, it will add the corresponding file "
-"back. If it turns from unset to set, that file will be removed."
+"Moving a submodule using a gitfile (which means they were cloned with a Git "
+"version 1.7.8 or newer) will update the gitfile and core.worktree setting to "
+"make the submodule work in the new location.  It also will attempt to update "
+"the submodule.<name>.path setting in the linkgit:gitmodules[5] file and "
+"stage that file (unless -n is used)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:401
+#: en/git-mv.txt:66
 msgid ""
-"While `$GIT_DIR/info/sparse-checkout` is usually used to specify what files "
-"are in, you can also specify what files are _not_ in, using negate "
-"patterns. For example, to remove the file `unwanted`:"
+"Each time a superproject update moves a populated submodule (e.g. when "
+"switching between commits before and after the move) a stale submodule "
+"checkout will remain in the old location and an empty directory will appear "
+"in the new location. To populate the submodule again in the new location the "
+"user will have to run \"git submodule update\" afterwards. Removing the old "
+"directory is only safe when it uses a gitfile, as otherwise the history of "
+"the submodule will be deleted too. Both steps will be obsolete when "
+"recursive submodule update has been implemented."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-read-tree.txt:405
+#. type: Title =
+#: en/git-name-rev.txt:2
 #, no-wrap
-msgid ""
-"/*\n"
-"!unwanted\n"
+msgid "git-name-rev(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:413
-msgid ""
-"Another tricky thing is fully repopulating the working directory when you no "
-"longer want sparse checkout. You cannot just disable \"sparse checkout\" "
-"because skip-worktree bits are still in the index and your working directory "
-"is still sparsely populated. You should re-populate the working directory "
-"with the `$GIT_DIR/info/sparse-checkout` file content as follows:"
+#: en/git-name-rev.txt:7
+msgid "git-name-rev - Find symbolic names for given revs"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-read-tree.txt:416
+#. type: Plain text
+#: en/git-name-rev.txt:14
 #, no-wrap
-msgid "/*\n"
+msgid ""
+"'git name-rev' [--tags] [--refs=<pattern>]\n"
+"\t       ( --all | --stdin | <commit-ish>... )\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:422
+#: en/git-name-rev.txt:19
 msgid ""
-"Then you can disable sparse checkout. Sparse checkout support in 'git "
-"read-tree' and similar commands is disabled by default. You need to turn "
-"`core.sparseCheckout` on in order to have sparse checkout support."
+"Finds symbolic names suitable for human digestion for revisions given in any "
+"format parsable by 'git rev-parse'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-read-tree.txt:428
-msgid "linkgit:git-write-tree[1]; linkgit:git-ls-files[1]; linkgit:gitignore[5]"
+#: en/git-name-rev.txt:26
+msgid "Do not use branch names, but only tags to name the commits"
 msgstr ""
 
-#. type: Title =
-#: en/git-rebase.txt:2
+#. type: Labeled list
+#: en/git-name-rev.txt:27
 #, no-wrap
-msgid "git-rebase(1)"
+msgid "--refs=<pattern>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:7
-msgid "git-rebase - Reapply commits on top of another base tip"
+#: en/git-name-rev.txt:32
+msgid ""
+"Only use refs whose names match a given shell pattern.  The pattern can be "
+"one of branch name, tag name or fully qualified ref name. If given multiple "
+"times, use refs whose names match any of the given shell patterns. Use `--no-"
+"refs` to clear any previous ref patterns given."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:16
-#, no-wrap
+#: en/git-name-rev.txt:41
 msgid ""
-"'git rebase' [-i | --interactive] [options] [--exec <cmd>] [--onto "
-"<newbase>]\n"
-"\t[<upstream> [<branch>]]\n"
-"'git rebase' [-i | --interactive] [options] [--exec <cmd>] [--onto "
-"<newbase>]\n"
-"\t--root [<branch>]\n"
-"'git rebase' --continue | --skip | --abort | --quit | --edit-todo\n"
+"Do not use any ref whose name matches a given shell pattern. The pattern can "
+"be one of branch name, tag name or fully qualified ref name. If given "
+"multiple times, a ref will be excluded when it matches any of the given "
+"patterns. When used together with --refs, a ref will be used as a match only "
+"when it matches at least one --refs pattern and does not match any --exclude "
+"patterns. Use `--no-exclude` to clear the list of exclude patterns."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:22
-msgid ""
-"If <branch> is specified, 'git rebase' will perform an automatic `git "
-"checkout <branch>` before doing anything else.  Otherwise it remains on the "
-"current branch."
+#: en/git-name-rev.txt:44
+msgid "List all commits reachable from all refs"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:28
+#: en/git-name-rev.txt:50
 msgid ""
-"If <upstream> is not specified, the upstream configured in "
-"branch.<name>.remote and branch.<name>.merge options will be used (see "
-"linkgit:git-config[1] for details) and the `--fork-point` option is "
-"assumed.  If you are currently not on any branch or if the current branch "
-"does not have a configured upstream, the rebase will abort."
+"Transform stdin by substituting all the 40-character SHA-1 hexes (say $hex) "
+"with \"$hex ($rev_name)\".  When used with --name-only, substitute with "
+"\"$rev_name\", omitting $hex altogether.  Intended for the scripter's use."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:35
+#: en/git-name-rev.txt:56
 msgid ""
-"All changes made by commits in the current branch but that are not in "
-"<upstream> are saved to a temporary area.  This is the same set of commits "
-"that would be shown by `git log <upstream>..HEAD`; or by `git log "
-"'fork_point'..HEAD`, if `--fork-point` is active (see the description on "
-"`--fork-point` below); or by `git log HEAD`, if the `--root` option is "
-"specified."
+"Instead of printing both the SHA-1 and the name, print only the name.  If "
+"given with --tags the usual tag prefix of \"tags/\" is also omitted from the "
+"name, matching the output of `git-describe` more closely."
 msgstr ""
 
-#. type: Plain text
-#: en/git-rebase.txt:40
-msgid ""
-"The current branch is reset to <upstream>, or <newbase> if the --onto option "
-"was supplied.  This has the exact same effect as `git reset --hard "
-"<upstream>` (or <newbase>).  ORIG_HEAD is set to point at the tip of the "
-"branch before the reset."
+#. type: Labeled list
+#: en/git-name-rev.txt:57
+#, no-wrap
+msgid "--no-undefined"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:46
+#: en/git-name-rev.txt:60
 msgid ""
-"The commits that were previously saved into the temporary area are then "
-"reapplied to the current branch, one by one, in order. Note that any commits "
-"in HEAD which introduce the same textual changes as a commit in "
-"HEAD..<upstream> are omitted (i.e., a patch already accepted upstream with a "
-"different commit message or timestamp will be skipped)."
+"Die with error code != 0 when a reference is undefined, instead of printing "
+"`undefined`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:53
+#: en/git-name-rev.txt:71
 msgid ""
-"It is possible that a merge failure will prevent this process from being "
-"completely automatic.  You will have to resolve any such merge failure and "
-"run `git rebase --continue`.  Another option is to bypass the commit that "
-"caused the merge failure with `git rebase --skip`.  To check out the "
-"original <branch> and remove the .git/rebase-apply working files, use the "
-"command `git rebase --abort` instead."
+"Given a commit, find out where it is relative to the local refs. Say "
+"somebody wrote you about that fantastic commit "
+"33db5f4d9027a10e477ccf054b2c1ab94f74c85a.  Of course, you look into the "
+"commit, but that only tells you what happened, but not the context."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:55
-msgid "Assume the following history exists and the current branch is \"topic\":"
+#: en/git-name-rev.txt:73
+msgid "Enter 'git name-rev':"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-rebase.txt:60
+#: en/git-name-rev.txt:77
 #, no-wrap
 msgid ""
-"          A---B---C topic\n"
-"         /\n"
-"    D---E---F---G master\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-rebase.txt:63
-msgid "From this point, the result of either of the following commands:"
+"% git name-rev 33db5f4d9027a10e477ccf054b2c1ab94f74c85a\n"
+"33db5f4d9027a10e477ccf054b2c1ab94f74c85a tags/v0.99~940\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:67
-#, no-wrap
+#: en/git-name-rev.txt:80
 msgid ""
-"    git rebase master\n"
-"    git rebase master topic\n"
+"Now you are wiser, because you know that it happened 940 revisions before "
+"v0.99."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:69
-msgid "would be:"
+#: en/git-name-rev.txt:82
+msgid "Another nice thing you can do is:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-rebase.txt:74
+#: en/git-name-rev.txt:85
 #, no-wrap
-msgid ""
-"                  A'--B'--C' topic\n"
-"                 /\n"
-"    D---E---F---G master\n"
+msgid "% git log | git name-rev --stdin\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-rebase.txt:79
+#. type: Title =
+#: en/git-notes.txt:2
 #, no-wrap
-msgid ""
-"*NOTE:* The latter form is just a short-hand of `git checkout topic`\n"
-"followed by `git rebase master`. When rebase exits `topic` will\n"
-"remain the checked-out branch.\n"
+msgid "git-notes(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:85
-msgid ""
-"If the upstream branch already contains a change you have made (e.g., "
-"because you mailed a patch which was applied upstream), then that commit "
-"will be skipped. For example, running `git rebase master` on the following "
-"history (in which `A'` and `A` introduce the same set of changes, but have "
-"different committer information):"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-rebase.txt:90
-#, no-wrap
-msgid ""
-"          A---B---C topic\n"
-"         /\n"
-"    D---E---A'---F master\n"
+#: en/git-notes.txt:7
+msgid "git-notes - Add or inspect object notes"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:93
-msgid "will result in:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-rebase.txt:98
+#: en/git-notes.txt:23
 #, no-wrap
 msgid ""
-"                   B'---C' topic\n"
-"                  /\n"
-"    D---E---A'---F master\n"
+"'git notes' [list [<object>]]\n"
+"'git notes' add [-f] [--allow-empty] [-F <file> | -m <msg> | (-c | -C) <object>] [<object>]\n"
+"'git notes' copy [-f] ( --stdin | <from-object> <to-object> )\n"
+"'git notes' append [--allow-empty] [-F <file> | -m <msg> | (-c | -C) <object>] [<object>]\n"
+"'git notes' edit [--allow-empty] [<object>]\n"
+"'git notes' show [<object>]\n"
+"'git notes' merge [-v | -q] [-s <strategy> ] <notes-ref>\n"
+"'git notes' merge --commit [-v | -q]\n"
+"'git notes' merge --abort [-v | -q]\n"
+"'git notes' remove [--ignore-missing] [--stdin] [<object>...]\n"
+"'git notes' prune [-n] [-v]\n"
+"'git notes' get-ref\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:103
+#: en/git-notes.txt:29
 msgid ""
-"Here is how you would transplant a topic branch based on one branch to "
-"another, to pretend that you forked the topic branch from the latter branch, "
-"using `rebase --onto`."
+"Adds, removes, or reads notes attached to objects, without touching the "
+"objects themselves."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:107
-msgid ""
-"First let's assume your 'topic' is based on branch 'next'.  For example, a "
-"feature developed in 'topic' depends on some functionality which is found in "
-"'next'."
-msgstr ""
-
-#. type: delimited block -
-#: en/git-rebase.txt:114
-#, no-wrap
+#: en/git-notes.txt:34
 msgid ""
-"    o---o---o---o---o  master\n"
-"         \\\n"
-"          o---o---o---o---o  next\n"
-"                           \\\n"
-"                            o---o---o  topic\n"
+"By default, notes are saved to and read from `refs/notes/commits`, but this "
+"default can be overridden.  See the OPTIONS, CONFIGURATION, and ENVIRONMENT "
+"sections below.  If this ref does not exist, it will be quietly created when "
+"it is first needed to store a note."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:119
-msgid ""
-"We want to make 'topic' forked from branch 'master'; for example, because "
-"the functionality on which 'topic' depends was merged into the more stable "
-"'master' branch. We want our tree to look like this:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-rebase.txt:126
-#, no-wrap
+#: en/git-notes.txt:41
 msgid ""
-"    o---o---o---o---o  master\n"
-"        |            \\\n"
-"        |             o'--o'--o'  topic\n"
-"         \\\n"
-"          o---o---o---o---o  next\n"
+"A typical use of notes is to supplement a commit message without changing "
+"the commit itself. Notes can be shown by 'git log' along with the original "
+"commit message. To distinguish these notes from the message stored in the "
+"commit object, the notes are indented like the message, after an unindented "
+"line saying \"Notes (<refname>):\" (or \"Notes:\" for `refs/notes/commits`)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:129
-msgid "We can get this using the following command:"
+#: en/git-notes.txt:45
+msgid ""
+"Notes can also be added to patches prepared with `git format-patch` by using "
+"the `--notes` option. Such notes are added as a patch commentary after a "
+"three dash separator line."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:131
-#, no-wrap
-msgid "    git rebase --onto master next topic\n"
+#: en/git-notes.txt:48
+msgid ""
+"To change which notes are shown by 'git log', see the \"notes.displayRef\" "
+"configuration in linkgit:git-log[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:135
+#: en/git-notes.txt:51
 msgid ""
-"Another example of --onto option is to rebase part of a branch.  If we have "
-"the following situation:"
+"See the \"notes.rewrite.<command>\" configuration for a way to carry notes "
+"across commands that rewrite commits."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rebase.txt:142
+#. type: Title -
+#: en/git-notes.txt:54
 #, no-wrap
-msgid ""
-"                            H---I---J topicB\n"
-"                           /\n"
-"                  E---F---G  topicA\n"
-"                 /\n"
-"    A---B---C---D  master\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-rebase.txt:145 en/git-rebase.txt:168
-msgid "then the command"
+msgid "SUBCOMMANDS"
 msgstr ""
 
-#. type: Plain text
-#: en/git-rebase.txt:147
+#. type: Labeled list
+#: en/git-notes.txt:56 en/git-worktree.txt:81
 #, no-wrap
-msgid "    git rebase --onto master topicA topicB\n"
+msgid "list"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:149
-msgid "would result in:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-rebase.txt:156
-#, no-wrap
+#: en/git-notes.txt:61
 msgid ""
-"                 H'--I'--J'  topicB\n"
-"                /\n"
-"                | E---F---G  topicA\n"
-"                |/\n"
-"    A---B---C---D  master\n"
+"List the notes object for a given object. If no object is given, show a list "
+"of all note objects and the objects they annotate (in the format \"<note "
+"object> <annotated object>\").  This is the default subcommand if no "
+"subcommand is given."
 msgstr ""
 
-#. type: Plain text
-#: en/git-rebase.txt:159
-msgid "This is useful when topicB does not depend on topicA."
+#. type: Labeled list
+#: en/git-notes.txt:62
+#, no-wrap
+msgid "add"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:162
+#: en/git-notes.txt:69
 msgid ""
-"A range of commits could also be removed with rebase.  If we have the "
-"following situation:"
+"Add notes for a given object (defaults to HEAD). Abort if the object already "
+"has notes (use `-f` to overwrite existing notes).  However, if you're using "
+"`add` interactively (using an editor to supply the notes contents), then - "
+"instead of aborting - the existing notes will be opened in the editor (like "
+"the `edit` subcommand)."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rebase.txt:165
+#. type: Labeled list
+#: en/git-notes.txt:70
 #, no-wrap
-msgid "    E---F---G---H---I---J  topicA\n"
+msgid "copy"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:170
-#, no-wrap
-msgid "    git rebase --onto topicA~5 topicA~3 topicA\n"
+#: en/git-notes.txt:76
+msgid ""
+"Copy the notes for the first object onto the second object.  Abort if the "
+"second object already has notes, or if the first object has none (use -f to "
+"overwrite existing notes to the second object). This subcommand is "
+"equivalent to: `git notes add [-f] -C $(git notes list <from-object>) <to-"
+"object>`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:172
-msgid "would result in the removal of commits F and G:"
+#: en/git-notes.txt:78
+msgid "In `--stdin` mode, take lines in the format"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-rebase.txt:175
+#: en/git-notes.txt:81
 #, no-wrap
-msgid "    E---H'---I'---J'  topicA\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-rebase.txt:180
-msgid ""
-"This is useful if F and G were flawed in some way, or should not be part of "
-"topicA.  Note that the argument to --onto and the <upstream> parameter can "
-"be any valid commit-ish."
+msgid "<from-object> SP <to-object> [ SP <rest> ] LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:186
+#: en/git-notes.txt:86
 msgid ""
-"In case of conflict, 'git rebase' will stop at the first problematic commit "
-"and leave conflict markers in the tree.  You can use 'git diff' to locate "
-"the markers (<<<<<<) and make edits to resolve the conflict.  For each file "
-"you edit, you need to tell Git that the conflict has been resolved, "
-"typically this would be done with"
+"on standard input, and copy the notes from each <from-object> to its "
+"corresponding <to-object>.  (The optional `<rest>` is ignored so that the "
+"command can read the input given to the `post-rewrite` hook.)"
 msgstr ""
 
-#. type: Plain text
-#: en/git-rebase.txt:189
+#. type: Labeled list
+#: en/git-notes.txt:87
 #, no-wrap
-msgid "    git add <filename>\n"
+msgid "append"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:193
+#: en/git-notes.txt:90
 msgid ""
-"After resolving the conflict manually and updating the index with the "
-"desired resolution, you can continue the rebasing process with"
+"Append to the notes of an existing object (defaults to HEAD).  Creates a new "
+"notes object if needed."
 msgstr ""
 
-#. type: Plain text
-#: en/git-rebase.txt:196
+#. type: Labeled list
+#: en/git-notes.txt:91
 #, no-wrap
-msgid "    git rebase --continue\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-rebase.txt:199
-msgid "Alternatively, you can undo the 'git rebase' with"
+msgid "edit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:202
-#, no-wrap
-msgid "    git rebase --abort\n"
+#: en/git-notes.txt:93
+msgid "Edit the notes for a given object (defaults to HEAD)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rebase.txt:206 en/config.txt:2586
+#: en/git-notes.txt:94
 #, no-wrap
-msgid "rebase.stat"
+msgid "show"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:209 en/config.txt:2589
-msgid ""
-"Whether to show a diffstat of what changed upstream since the last "
-"rebase. False by default."
+#: en/git-notes.txt:96
+msgid "Show the notes for a given object (defaults to HEAD)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rebase.txt:210 en/config.txt:2590
+#: en/git-notes.txt:97 en/git-submodule.txt:150
 #, no-wrap
-msgid "rebase.autoSquash"
+msgid "merge"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:212 en/config.txt:2592
-msgid "If set to true enable `--autosquash` option by default."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-rebase.txt:213 en/config.txt:2593
-#, no-wrap
-msgid "rebase.autoStash"
+#: en/git-notes.txt:102
+msgid ""
+"Merge the given notes ref into the current notes ref.  This will try to "
+"merge the changes made by the given notes ref (called \"remote\") since the "
+"merge-base (if any) into the current notes ref (called \"local\")."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:215
-msgid "If set to true enable `--autostash` option by default."
+#: en/git-notes.txt:111
+msgid ""
+"If conflicts arise and a strategy for automatically resolving conflicting "
+"notes (see the \"NOTES MERGE STRATEGIES\" section) is not given, the \"manual"
+"\" resolver is used. This resolver checks out the conflicting notes in a "
+"special worktree (`.git/NOTES_MERGE_WORKTREE`), and instructs the user to "
+"manually resolve the conflicts there.  When done, the user can either "
+"finalize the merge with 'git notes merge --commit', or abort the merge with "
+"'git notes merge --abort'."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rebase.txt:216 en/config.txt:2601
+#: en/git-notes.txt:112 en/git-worktree.txt:105
 #, no-wrap
-msgid "rebase.missingCommitsCheck"
+msgid "remove"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:221
+#: en/git-notes.txt:117
 msgid ""
-"If set to \"warn\", print warnings about removed commits in interactive "
-"mode. If set to \"error\", print the warnings and stop the rebase. If set to "
-"\"ignore\", no checking is done. \"ignore\" by default."
+"Remove the notes for given objects (defaults to HEAD). When giving zero or "
+"one object from the command line, this is equivalent to specifying an empty "
+"note message to the `edit` subcommand."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rebase.txt:222 en/config.txt:2612
+#: en/git-notes.txt:118 en/git-worktree.txt:101
 #, no-wrap
-msgid "rebase.instructionFormat"
+msgid "prune"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:224
-msgid "Custom commit list format to use during an `--interactive` rebase."
+#: en/git-notes.txt:120
+msgid "Remove all notes for non-existing/unreachable objects."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rebase.txt:227
+#: en/git-notes.txt:121
 #, no-wrap
-msgid "--onto <newbase>"
+msgid "get-ref"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:232
+#: en/git-notes.txt:124
 msgid ""
-"Starting point at which to create the new commits. If the --onto option is "
-"not specified, the starting point is <upstream>.  May be any valid commit, "
-"and not just an existing branch name."
+"Print the current notes ref. This provides an easy way to retrieve the "
+"current notes ref (e.g. from scripts)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:236
+#: en/git-notes.txt:131
 msgid ""
-"As a special case, you may use \"A\\...B\" as a shortcut for the merge base "
-"of A and B if there is exactly one merge base. You can leave out at most one "
-"of A and B, in which case it defaults to HEAD."
+"When adding notes to an object that already has notes, overwrite the "
+"existing notes (instead of aborting)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:241
+#: en/git-notes.txt:139
 msgid ""
-"Upstream branch to compare against.  May be any valid commit, not just an "
-"existing branch name. Defaults to the configured upstream for the current "
-"branch."
+"Use the given note message (instead of prompting).  If multiple `-m` options "
+"are given, their values are concatenated as separate paragraphs.  Lines "
+"starting with `#` and empty lines other than a single line between "
+"paragraphs will be stripped out."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:247
-msgid "Restart the rebasing process after having resolved a merge conflict."
+#: en/git-notes.txt:146
+msgid ""
+"Take the note message from the given file.  Use '-' to read the note message "
+"from the standard input.  Lines starting with `#` and empty lines other than "
+"a single line between paragraphs will be stripped out."
 msgstr ""
 
-#. type: Plain text
-#: en/git-rebase.txt:254
-msgid ""
-"Abort the rebase operation and reset HEAD to the original branch. If "
-"<branch> was provided when the rebase operation was started, then HEAD will "
-"be reset to <branch>. Otherwise HEAD will be reset to where it was when the "
-"rebase operation was started."
+#. type: Labeled list
+#: en/git-notes.txt:147
+#, no-wrap
+msgid "-C <object>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rebase.txt:255 en/sequencer.txt:6
+#: en/git-notes.txt:148
 #, no-wrap
-msgid "--quit"
+msgid "--reuse-message=<object>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:259
+#: en/git-notes.txt:152
 msgid ""
-"Abort the rebase operation but HEAD is not reset back to the original "
-"branch. The index and working tree are also left unchanged as a result."
+"Take the given blob object (for\texample, another note) as the note message. "
+"(Use `git notes copy <object>` instead to copy notes between objects.)"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-notes.txt:153
+#, no-wrap
+msgid "-c <object>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rebase.txt:260
+#: en/git-notes.txt:154
 #, no-wrap
-msgid "--keep-empty"
+msgid "--reedit-message=<object>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:263
-msgid "Keep the commits that do not change anything from its parents in the result."
+#: en/git-notes.txt:157
+msgid ""
+"Like '-C', but with `-c` the editor is invoked, so that the user can further "
+"edit the note message."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:266
-msgid "Restart the rebasing process by skipping the current patch."
+#: en/git-notes.txt:161
+msgid ""
+"Allow an empty note object to be stored. The default behavior is to "
+"automatically remove empty notes."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rebase.txt:267
+#: en/git-notes.txt:162
 #, no-wrap
-msgid "--edit-todo"
-msgstr ""
-
-#. type: Plain text
-#: en/git-rebase.txt:269
-msgid "Edit the todo list during an interactive rebase."
+msgid "--ref <ref>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:275
+#: en/git-notes.txt:168
 msgid ""
-"Use merging strategies to rebase.  When the recursive (default) merge "
-"strategy is used, this allows rebase to be aware of renames on the upstream "
-"side."
+"Manipulate the notes tree in <ref>.  This overrides `GIT_NOTES_REF` and the "
+"\"core.notesRef\" configuration.  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."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:281
+#: en/git-notes.txt:172
 msgid ""
-"Note that a rebase merge works by replaying each commit from the working "
-"branch on top of the <upstream> branch.  Because of this, when a merge "
-"conflict happens, the side reported as 'ours' is the so-far rebased series, "
-"starting with <upstream>, and 'theirs' is the working branch.  In other "
-"words, the sides are swapped."
+"Do not consider it an error to request removing notes from an object that "
+"does not have notes attached to it."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:287
+#: en/git-notes.txt:177
 msgid ""
-"Use the given merge strategy.  If there is no `-s` option 'git "
-"merge-recursive' is used instead.  This implies --merge."
+"Also read the object names to remove notes from the standard input (there is "
+"no reason you cannot combine this with object names from the command line)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:292
+#: en/git-notes.txt:182
 msgid ""
-"Because 'git rebase' replays each commit from the working branch on top of "
-"the <upstream> branch using the given strategy, using the 'ours' strategy "
-"simply discards all patches from the <branch>, which makes little sense."
+"Do not remove anything; just report the object names whose notes would be "
+"removed."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rebase.txt:293
+#: en/git-notes.txt:183 en/git-rebase.txt:281 en/merge-options.txt:94
 #, no-wrap
-msgid "-X <strategy-option>"
+msgid "-s <strategy>"
+msgstr ""
+
+#. type: Plain text
+#: en/git-notes.txt:191
+msgid ""
+"When merging notes, resolve notes conflicts using the given strategy. The "
+"following strategies are recognized: \"manual\" (default), \"ours\", \"theirs"
+"\", \"union\" and \"cat_sort_uniq\".  This option overrides the \"notes."
+"mergeStrategy\" configuration setting.  See the \"NOTES MERGE STRATEGIES\" "
+"section below for more information on each notes merge strategy."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rebase.txt:294
+#: en/git-notes.txt:192 en/merge-options.txt:1
 #, no-wrap
-msgid "--strategy-option=<strategy-option>"
+msgid "--commit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:299
+#: en/git-notes.txt:200
 msgid ""
-"Pass the <strategy-option> through to the merge strategy.  This implies "
-"`--merge` and, if no strategy has been specified, `-s recursive`.  Note the "
-"reversal of 'ours' and 'theirs' as noted above for the `-m` option."
+"Finalize an in-progress 'git notes merge'. Use this option when you have "
+"resolved the conflicts that 'git notes merge' stored in .git/"
+"NOTES_MERGE_WORKTREE. This amends the partial merge commit created by 'git "
+"notes merge' (stored in .git/NOTES_MERGE_PARTIAL) by adding the notes in ."
+"git/NOTES_MERGE_WORKTREE. The notes ref stored in the .git/NOTES_MERGE_REF "
+"symref is updated to the resulting commit."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:309
-msgid "Be quiet. Implies --no-stat."
+#: en/git-notes.txt:205
+msgid ""
+"Abort/reset an in-progress 'git notes merge', i.e. a notes merge with "
+"conflicts. This simply removes all files related to the notes merge."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:313
-msgid "Be verbose. Implies --stat."
+#: en/git-notes.txt:209
+msgid "When merging notes, operate quietly."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:317
+#: en/git-notes.txt:215
 msgid ""
-"Show a diffstat of what changed upstream since the last rebase. The diffstat "
-"is also controlled by the configuration option rebase.stat."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-rebase.txt:319 en/diff-options.txt:17 en/merge-options.txt:57
-#, no-wrap
-msgid "--no-stat"
+"When merging notes, be more verbose.  When pruning notes, report all object "
+"names whose notes are removed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:321
-msgid "Do not show a diffstat as part of the rebase process."
+#: en/git-notes.txt:229
+msgid ""
+"Commit notes are blobs containing extra information about an object (usually "
+"information to supplement a commit's message).  These blobs are taken from "
+"notes refs.  A notes ref is usually a branch which contains \"files\" whose "
+"paths are the object names for the objects they describe, with some "
+"directory separators included for performance reasons footnote:[Permitted "
+"pathnames have the form 'ab'`/`'cd'`/`'ef'`/`'...'`/`'abcdef...': a sequence "
+"of directory names of two hexadecimal digits each followed by a filename "
+"with the rest of the object ID.]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:324
-msgid "This option bypasses the pre-rebase hook.  See also linkgit:githooks[5]."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-rebase.txt:325 en/git-rev-parse.txt:98 en/git-show-ref.txt:59 en/git-tag.txt:80
-#, no-wrap
-msgid "--verify"
+#: en/git-notes.txt:236
+msgid ""
+"Every notes change creates a new commit at the specified notes ref.  You can "
+"therefore inspect the history of the notes by invoking, e.g., `git log -p "
+"notes/commits`.  Currently the commit message only records which operation "
+"triggered the update, and the commit authorship is determined according to "
+"the usual rules (see linkgit:git-commit[1]).  These details may change in "
+"the future."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:328
+#: en/git-notes.txt:240
 msgid ""
-"Allows the pre-rebase hook to run, which is the default.  This option can be "
-"used to override --no-verify.  See also linkgit:githooks[5]."
+"It is also permitted for a notes ref to point directly to a tree object, in "
+"which case the history of the notes can be read with `git log -p -g "
+"<refname>`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rebase.txt:336
+#. type: Title -
+#: en/git-notes.txt:243
 #, no-wrap
-msgid "--force-rebase"
+msgid "NOTES MERGE STRATEGIES"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:339
+#: en/git-notes.txt:252
 msgid ""
-"Force a rebase even if the current branch is up-to-date and the command "
-"without `--force` would return without doing anything."
+"The default notes merge strategy is \"manual\", which checks out conflicting "
+"notes in a special work tree for resolving notes conflicts (`.git/"
+"NOTES_MERGE_WORKTREE`), and instructs the user to resolve the conflicts in "
+"that work tree.  When done, the user can either finalize the merge with 'git "
+"notes merge --commit', or abort the merge with 'git notes merge --abort'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:345
+#: en/git-notes.txt:255
 msgid ""
-"You may find this (or --no-ff with an interactive rebase) helpful after "
-"reverting a topic branch merge, as this option recreates the topic branch "
-"with fresh commits so it can be remerged successfully without needing to "
-"\"revert the reversion\" (see the "
-"link:howto/revert-a-faulty-merge.html[revert-a-faulty-merge How-To] for "
-"details)."
+"Users may select an automated merge strategy from among the following using "
+"either -s/--strategy option or configuring notes.mergeStrategy accordingly:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rebase.txt:347
-#, no-wrap
-msgid "--no-fork-point"
+#. type: Plain text
+#: en/git-notes.txt:258
+msgid ""
+"\"ours\" automatically resolves conflicting notes in favor of the local "
+"version (i.e. the current notes ref)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:351
+#: en/git-notes.txt:262
 msgid ""
-"Use reflog to find a better common ancestor between <upstream> and <branch> "
-"when calculating which commits have been introduced by <branch>."
+"\"theirs\" automatically resolves notes conflicts in favor of the remote "
+"version (i.e. the given notes ref being merged into the current notes ref)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:357
+#: en/git-notes.txt:265
 msgid ""
-"When --fork-point is active, 'fork_point' will be used instead of <upstream> "
-"to calculate the set of commits to rebase, where 'fork_point' is the result "
-"of `git merge-base --fork-point <upstream> <branch>` command (see "
-"linkgit:git-merge-base[1]).  If 'fork_point' ends up being empty, the "
-"<upstream> will be used as a fallback."
+"\"union\" automatically resolves notes conflicts by concatenating the local "
+"and remote versions."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:360
+#: en/git-notes.txt:275
 msgid ""
-"If either <upstream> or --root is given on the command line, then the "
-"default is `--no-fork-point`, otherwise the default is `--fork-point`."
+"\"cat_sort_uniq\" is similar to \"union\", but in addition to concatenating "
+"the local and remote versions, this strategy also sorts the resulting lines, "
+"and removes duplicate lines from the result. This is equivalent to applying "
+"the \"cat | sort | uniq\" shell pipeline to the local and remote versions. "
+"This strategy is useful if the notes follow a line-based format where one "
+"wants to avoid duplicated lines in the merge result.  Note that if either "
+"the local or remote version contain duplicate lines prior to the merge, "
+"these will also be removed by this notes merge strategy."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:366
+#: en/git-notes.txt:282
 msgid ""
-"These flag are passed to the 'git apply' program (see linkgit:git-apply[1]) "
-"that applies the patch.  Incompatible with the --interactive option."
+"You can use notes to add annotations with information that was not available "
+"at the time a commit was written."
 msgstr ""
 
-#. type: Plain text
-#: en/git-rebase.txt:372
+#. type: delimited block -
+#: en/git-notes.txt:288
+#, no-wrap
 msgid ""
-"These flags are passed to 'git am' to easily change the dates of the rebased "
-"commits (see linkgit:git-am[1]).  Incompatible with the --interactive "
-"option."
+"$ git notes add -m 'Tested-by: Johannes Sixt <j6t@kdbg.org>' 72a144e2\n"
+"$ git show -s 72a144e\n"
+"[...]\n"
+"    Signed-off-by: Junio C Hamano <gitster@pobox.com>\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-rebase.txt:378
+#. type: delimited block -
+#: en/git-notes.txt:291
+#, no-wrap
 msgid ""
-"Make a list of the commits which are about to be rebased.  Let the user edit "
-"that list before rebasing.  This mode can also be used to split commits (see "
-"SPLITTING COMMITS below)."
+"Notes:\n"
+"    Tested-by: Johannes Sixt <j6t@kdbg.org>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:382
+#: en/git-notes.txt:296
 msgid ""
-"The commit list format can be changed by setting the configuration option "
-"rebase.instructionFormat.  A customized instruction format will "
-"automatically have the long commit hash prepended to the format."
+"In principle, a note is a regular Git blob, and any kind of (non-)format is "
+"accepted.  You can binary-safely create notes from arbitrary files using "
+"'git hash-object':"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rebase.txt:384 en/git-svn.txt:642
+#. type: delimited block -
+#: en/git-notes.txt:301
 #, no-wrap
-msgid "--preserve-merges"
-msgstr ""
-
-#. type: Plain text
-#: en/git-rebase.txt:388
 msgid ""
-"Recreate merge commits instead of flattening the history by replaying "
-"commits a merge commit introduces. Merge conflict resolutions or manual "
-"amendments to merge commits are not preserved."
+"$ cc *.c\n"
+"$ blob=$(git hash-object -w a.out)\n"
+"$ git notes --ref=built add --allow-empty -C \"$blob\" HEAD\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:392
+#: en/git-notes.txt:308
 msgid ""
-"This uses the `--interactive` machinery internally, but combining it with "
-"the `--interactive` option explicitly is generally not a good idea unless "
-"you know what you are doing (see BUGS below)."
+"(You cannot simply use `git notes --ref=built add -F a.out HEAD` because "
+"that is not binary-safe.)  Of course, it doesn't make much sense to display "
+"non-text-format notes with 'git log', so if you use such notes, you'll "
+"probably need to write some special-purpose tools to do something useful "
+"with them."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rebase.txt:393
+#: en/git-notes.txt:313
 #, no-wrap
-msgid "-x <cmd>"
+msgid "core.notesRef"
+msgstr ""
+
+#. type: Plain text
+#: en/git-notes.txt:318
+msgid ""
+"Notes ref to read and manipulate instead of `refs/notes/commits`.  Must be "
+"an unabbreviated ref name.  This setting can be overridden through the "
+"environment and command line."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rebase.txt:394
+#: en/git-notes.txt:319
 #, no-wrap
-msgid "--exec <cmd>"
+msgid "notes.mergeStrategy"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:398
+#: en/git-notes.txt:324
 msgid ""
-"Append \"exec <cmd>\" after each line creating a commit in the final "
-"history. <cmd> will be interpreted as one or more shell commands."
+"Which merge strategy to choose by default when resolving notes conflicts.  "
+"Must be one of `manual`, `ours`, `theirs`, `union`, or `cat_sort_uniq`.  "
+"Defaults to `manual`.  See \"NOTES MERGE STRATEGIES\" section above for more "
+"information on each strategy."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:401
-msgid ""
-"You may execute several commands by either using one instance of `--exec` "
-"with several commands:"
+#: en/git-notes.txt:326
+msgid "This setting can be overridden by passing the `--strategy` option."
 msgstr ""
 
-#. type: Plain text
-#: en/git-rebase.txt:403
+#. type: Labeled list
+#: en/git-notes.txt:327
 #, no-wrap
-msgid "\tgit rebase -i --exec \"cmd1 && cmd2 && ...\"\n"
+msgid "notes.<name>.mergeStrategy"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:405
-msgid "or by giving more than one `--exec`:"
+#: en/git-notes.txt:332
+msgid ""
+"Which merge strategy to choose when doing a notes merge into refs/notes/"
+"<name>.  This overrides the more general \"notes.mergeStrategy\".  See the "
+"\"NOTES MERGE STRATEGIES\" section above for more information on each "
+"available strategy."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:407
+#: en/git-notes.txt:341
+msgid ""
+"Which ref (or refs, if a glob or specified more than once), in addition to "
+"the default set by `core.notesRef` or `GIT_NOTES_REF`, to read notes from "
+"when showing commit messages with the 'git log' family of commands.  This "
+"setting can be overridden on the command line or by the "
+"`GIT_NOTES_DISPLAY_REF` environment variable.  See linkgit:git-log[1]."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-notes.txt:342
 #, no-wrap
-msgid "\tgit rebase -i --exec \"cmd1\" --exec \"cmd2\" --exec ...\n"
+msgid "notes.rewrite.<command>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:411
+#: en/git-notes.txt:347
 msgid ""
-"If `--autosquash` is used, \"exec\" lines will not be appended for the "
-"intermediate commits, and will only appear at the end of each squash/fixup "
-"series."
+"When rewriting commits with <command> (currently `amend` or `rebase`), if "
+"this variable is `false`, git will not copy notes from the original to the "
+"rewritten commit.  Defaults to `true`.  See also \"`notes.rewriteRef`\" "
+"below."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:414
+#: en/git-notes.txt:350
 msgid ""
-"This uses the `--interactive` machinery internally, but it can be run "
-"without an explicit `--interactive`."
+"This setting can be overridden by the `GIT_NOTES_REWRITE_REF` environment "
+"variable."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-notes.txt:351
+#, no-wrap
+msgid "notes.rewriteMode"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:424
+#: en/git-notes.txt:356
 msgid ""
-"Rebase all commits reachable from <branch>, instead of limiting them with an "
-"<upstream>.  This allows you to rebase the root commit(s) on a branch.  When "
-"used with --onto, it will skip changes already contained in <newbase> "
-"(instead of <upstream>) whereas without --onto it will operate on every "
-"change.  When used together with both --onto and --preserve-merges, 'all' "
-"root commits will be rewritten to have <newbase> as parent instead."
+"When copying notes during a rewrite, what to do if the target commit already "
+"has a note.  Must be one of `overwrite`, `concatenate`, `cat_sort_uniq`, or "
+"`ignore`.  Defaults to `concatenate`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rebase.txt:425
-#, no-wrap
-msgid "--autosquash"
+#. type: Plain text
+#: en/git-notes.txt:359
+msgid ""
+"This setting can be overridden with the `GIT_NOTES_REWRITE_MODE` environment "
+"variable."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rebase.txt:426
+#: en/git-notes.txt:360
 #, no-wrap
-msgid "--no-autosquash"
+msgid "notes.rewriteRef"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:435
+#: en/git-notes.txt:365
 msgid ""
-"When the commit log message begins with \"squash! ...\" (or \"fixup! ...\"), "
-"and there is a commit whose title begins with the same ..., automatically "
-"modify the todo list of rebase -i so that the commit marked for squashing "
-"comes right after the commit to be modified, and change the action of the "
-"moved commit from `pick` to `squash` (or `fixup`).  Ignores subsequent "
-"\"fixup! \" or \"squash! \" after the first, in case you referred to an "
-"earlier fixup/squash with `git commit --fixup/--squash`."
+"When copying notes during a rewrite, specifies the (fully qualified) ref "
+"whose notes should be copied.  May be a glob, in which case notes in all "
+"matching refs will be copied.  You may also specify this configuration "
+"several times."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:437
-msgid "This option is only valid when the `--interactive` option is used."
+#: en/git-notes.txt:368
+msgid ""
+"Does not have a default value; you must configure this variable to enable "
+"note rewriting."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:441
+#: en/git-notes.txt:370
 msgid ""
-"If the `--autosquash` option is enabled by default using the configuration "
-"variable `rebase.autoSquash`, this option can be used to override and "
-"disable this setting."
+"Can be overridden with the `GIT_NOTES_REWRITE_REF` environment variable."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-notes.txt:375
+#, no-wrap
+msgid "`GIT_NOTES_REF`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:449
+#: en/git-notes.txt:378
 msgid ""
-"Automatically create a temporary stash before the operation begins, and "
-"apply it after the operation ends.  This means that you can run rebase on a "
-"dirty worktree.  However, use with care: the final stash application after a "
-"successful rebase might result in non-trivial conflicts."
+"Which ref to manipulate notes from, instead of `refs/notes/commits`.  This "
+"overrides the `core.notesRef` setting."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rebase.txt:450 en/merge-options.txt:35
+#: en/git-notes.txt:379
 #, no-wrap
-msgid "--no-ff"
+msgid "`GIT_NOTES_DISPLAY_REF`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:454
+#: en/git-notes.txt:385
 msgid ""
-"With --interactive, cherry-pick all rebased commits instead of "
-"fast-forwarding over the unchanged ones.  This ensures that the entire "
-"history of the rebased branch is composed of new commits."
+"Colon-delimited list of refs or globs indicating which refs, in addition to "
+"the default from `core.notesRef` or `GIT_NOTES_REF`, to read notes from when "
+"showing commit messages.  This overrides the `notes.displayRef` setting."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:456
-msgid "Without --interactive, this is a synonym for --force-rebase."
+#: en/git-notes.txt:388
+msgid ""
+"A warning will be issued for refs that do not exist, but a glob that does "
+"not match any refs is silently ignored."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-notes.txt:389
+#, no-wrap
+msgid "`GIT_NOTES_REWRITE_MODE`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:461
+#: en/git-notes.txt:394
 msgid ""
-"You may find this helpful after reverting a topic branch merge, as this "
-"option recreates the topic branch with fresh commits so it can be remerged "
-"successfully without needing to \"revert the reversion\" (see the "
-"link:howto/revert-a-faulty-merge.html[revert-a-faulty-merge How-To] for "
-"details)."
+"When copying notes during a rewrite, what to do if the target commit already "
+"has a note.  Must be one of `overwrite`, `concatenate`, `cat_sort_uniq`, or "
+"`ignore`.  This overrides the `core.rewriteMode` setting."
 msgstr ""
 
-#. type: Title -
-#: en/git-rebase.txt:465 en/git-symbolic-ref.txt:54
+#. type: Labeled list
+#: en/git-notes.txt:395
 #, no-wrap
-msgid "NOTES"
+msgid "`GIT_NOTES_REWRITE_REF`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:470
+#: en/git-notes.txt:399
 msgid ""
-"You should understand the implications of using 'git rebase' on a repository "
-"that you share.  See also RECOVERING FROM UPSTREAM REBASE below."
+"When rewriting commits, which notes to copy from the original to the "
+"rewritten commit.  Must be a colon-delimited list of refs or globs."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:475
+#: en/git-notes.txt:402
 msgid ""
-"When the git-rebase command is run, it will first execute a \"pre-rebase\" "
-"hook if one exists.  You can use this hook to do sanity checks and reject "
-"the rebase if it isn't appropriate.  Please see the template pre-rebase hook "
-"script for an example."
+"If not set in the environment, the list of notes to copy depends on the "
+"`notes.rewrite.<command>` and `notes.rewriteRef` settings."
 msgstr ""
 
-#. type: Plain text
-#: en/git-rebase.txt:477
-msgid "Upon completion, <branch> will be the current branch."
+#. type: Title =
+#: en/git-p4.txt:2
+#, no-wrap
+msgid "git-p4(1)"
 msgstr ""
 
-#. type: Title -
-#: en/git-rebase.txt:479
-#, no-wrap
-msgid "INTERACTIVE MODE"
+#. type: Plain text
+#: en/git-p4.txt:7
+msgid "git-p4 - Import from and submit to Perforce repositories"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:484
+#: en/git-p4.txt:16
+#, no-wrap
 msgid ""
-"Rebasing interactively means that you have a chance to edit the commits "
-"which are rebased.  You can reorder the commits, and you can remove them "
-"(weeding out bad or otherwise unwanted patches)."
+"'git p4 clone' [<sync options>] [<clone options>] <p4 depot path>...\n"
+"'git p4 sync' [<sync options>] [<p4 depot path>...]\n"
+"'git p4 rebase'\n"
+"'git p4 submit' [<submit options>] [<master branch name>]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:486
-msgid "The interactive mode is meant for this type of workflow:"
+#: en/git-p4.txt:22
+msgid "This command provides a way to interact with p4 repositories using Git."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:488
-msgid "have a wonderful idea"
+#: en/git-p4.txt:30
+msgid ""
+"Create a new Git repository from an existing p4 repository using 'git p4 "
+"clone', giving it one or more p4 depot paths.  Incorporate new commits from "
+"p4 changes with 'git p4 sync'.  The 'sync' command is also used to include "
+"new branches from other p4 depot paths.  Submit Git changes back to p4 using "
+"'git p4 submit'.  The command 'git p4 rebase' does a sync plus rebases the "
+"current branch onto the updated p4 remote branch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:489
-msgid "hack on the code"
+#: en/git-p4.txt:35
+msgid "Clone a repository:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-rebase.txt:490
-msgid "prepare a series for submission"
+#. type: delimited block -
+#: en/git-p4.txt:38 en/git-p4.txt:71
+#, no-wrap
+msgid "$ git p4 clone //depot/path/project\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:491
-msgid "submit"
+#: en/git-p4.txt:41
+msgid "Do some work in the newly created Git repository:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-rebase.txt:493
-msgid "where point 2. consists of several instances of"
+#. type: delimited block -
+#: en/git-p4.txt:46
+#, no-wrap
+msgid ""
+"$ cd project\n"
+"$ vi foo.h\n"
+"$ git commit -a -m \"edited foo.h\"\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:495
-msgid "regular use"
+#: en/git-p4.txt:50
+msgid ""
+"Update the Git repository with recent changes from p4, rebasing your work on "
+"top:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-rebase.txt:497
-msgid "finish something worthy of a commit"
+#. type: delimited block -
+#: en/git-p4.txt:53 en/git-p4.txt:130
+#, no-wrap
+msgid "$ git p4 rebase\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:498
-msgid "commit"
+#: en/git-p4.txt:56
+msgid "Submit your commits back to p4:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-rebase.txt:500
-msgid "independent fixup"
+#. type: delimited block -
+#: en/git-p4.txt:59 en/git-p4.txt:145
+#, no-wrap
+msgid "$ git p4 submit\n"
+msgstr ""
+
+#. type: Title ~
+#: en/git-p4.txt:66
+#, no-wrap
+msgid "Clone"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:502
-msgid "realize that something does not work"
+#: en/git-p4.txt:69
+msgid ""
+"Generally, 'git p4 clone' is used to create a new Git directory from an "
+"existing p4 repository:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:503
-msgid "fix that"
+#: en/git-p4.txt:73
+msgid "This:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:504
-msgid "commit it"
+#: en/git-p4.txt:75
+msgid "Creates an empty Git repository in a subdirectory called 'project'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:510
+#: en/git-p4.txt:78
 msgid ""
-"Sometimes the thing fixed in b.2. cannot be amended to the not-quite perfect "
-"commit it fixes, because that commit is buried deeply in a patch series.  "
-"That is exactly what interactive rebase is for: use it after plenty of "
-"\"a\"s and \"b\"s, by rearranging and editing commits, and squashing "
-"multiple commits into one."
+"Imports the full contents of the head revision from the given p4 depot path "
+"into a single commit in the Git branch 'refs/remotes/p4/master'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:512
-msgid "Start it with the last commit you want to retain as-is:"
+#: en/git-p4.txt:80
+msgid "Creates a local branch, 'master' from this remote and checks it out."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:514
+#: en/git-p4.txt:83
+msgid ""
+"To reproduce the entire p4 history in Git, use the '@all' modifier on the "
+"depot path:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-p4.txt:85
 #, no-wrap
-msgid "\tgit rebase -i <after-this-commit>\n"
+msgid "$ git p4 clone //depot/path/project@all\n"
+msgstr ""
+
+#. type: Title ~
+#: en/git-p4.txt:89
+#, no-wrap
+msgid "Sync"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:519
+#: en/git-p4.txt:92
 msgid ""
-"An editor will be fired up with all the commits in your current branch "
-"(ignoring merge commits), which come after the given commit.  You can "
-"reorder the commits in this list to your heart's content, and you can remove "
-"them.  The list looks more or less like this:"
+"As development continues in the p4 repository, those changes can be included "
+"in the Git repository using:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-rebase.txt:524
+#: en/git-p4.txt:94
 #, no-wrap
-msgid ""
-"pick deadbee The oneline of this commit\n"
-"pick fa1afe1 The oneline of the next commit\n"
-"...\n"
+msgid "$ git p4 sync\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:529
-msgid ""
-"The oneline descriptions are purely for your pleasure; 'git rebase' will not "
-"look at them but at the commit names (\"deadbee\" and \"fa1afe1\" in this "
-"example), so do not delete or edit the names."
+#: en/git-p4.txt:96
+msgid "This command finds new changes in p4 and imports them as Git commits."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:534
+#: en/git-p4.txt:99
 msgid ""
-"By replacing the command \"pick\" with the command \"edit\", you can tell "
-"'git rebase' to stop after applying that commit, so that you can edit the "
-"files and/or the commit message, amend the commit, and continue rebasing."
+"P4 repositories can be added to an existing Git repository using 'git p4 "
+"sync' too:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-rebase.txt:537
+#. type: delimited block -
+#: en/git-p4.txt:104
+#, no-wrap
 msgid ""
-"If you just want to edit the commit message for a commit, replace the "
-"command \"pick\" with the command \"reword\"."
+"$ mkdir repo-git\n"
+"$ cd repo-git\n"
+"$ git init\n"
+"$ git p4 sync //path/in/your/perforce/depot\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:540
+#: en/git-p4.txt:109
 msgid ""
-"To drop a commit, replace the command \"pick\" with \"drop\", or just delete "
-"the matching line."
+"This imports the specified depot into 'refs/remotes/p4/master' in an "
+"existing Git repository.  The `--branch` option can be used to specify a "
+"different branch to be used for the p4 content."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:548
+#: en/git-p4.txt:114
 msgid ""
-"If you want to fold two or more commits into one, replace the command "
-"\"pick\" for the second and subsequent commits with \"squash\" or "
-"\"fixup\".  If the commits had different authors, the folded commit will be "
-"attributed to the author of the first commit.  The suggested commit message "
-"for the folded commit is the concatenation of the commit messages of the "
-"first commit and of those with the \"squash\" command, but omits the commit "
-"messages of commits with the \"fixup\" command."
+"If a Git repository includes branches 'refs/remotes/origin/p4', these will "
+"be fetched and consulted first during a 'git p4 sync'.  Since importing "
+"directly from p4 is considerably slower than pulling changes from a Git "
+"remote, this can be useful in a multi-developer environment."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:552
+#: en/git-p4.txt:119
 msgid ""
-"'git rebase' will stop when \"pick\" has been replaced with \"edit\" or when "
-"a command fails due to merge errors. When you are done editing and/or "
-"resolving conflicts you can continue with `git rebase --continue`."
+"If there are multiple branches, doing 'git p4 sync' will automatically use "
+"the \"BRANCH DETECTION\" algorithm to try to partition new changes into the "
+"right branch.  This can be overridden with the `--branch` option to specify "
+"just a single branch to update."
+msgstr ""
+
+#. type: Title ~
+#: en/git-p4.txt:122
+#, no-wrap
+msgid "Rebase"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:556
+#: en/git-p4.txt:128
 msgid ""
-"For example, if you want to reorder the last 5 commits, such that what was "
-"HEAD~4 becomes the new HEAD. To achieve that, you would call 'git rebase' "
-"like this:"
+"A common working pattern is to fetch the latest changes from the p4 depot "
+"and merge them with local uncommitted changes.  Often, the p4 repository is "
+"the ultimate location for all code, thus a rebase workflow makes sense.  "
+"This command does 'git p4 sync' followed by 'git rebase' to move local "
+"commits on top of updated p4 changes."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rebase.txt:559
+#. type: Title ~
+#: en/git-p4.txt:134
 #, no-wrap
-msgid "$ git rebase -i HEAD~5\n"
+msgid "Submit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:562
-msgid "And move the first patch to the end of the list."
+#: en/git-p4.txt:140
+msgid ""
+"Submitting changes from a Git repository back to the p4 repository requires "
+"a separate p4 client workspace.  This should be specified using the "
+"`P4CLIENT` environment variable or the Git configuration variable 'git-p4."
+"client'.  The p4 client must exist, but the client root will be created and "
+"populated if it does not already exist."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:564
-msgid "You might want to preserve merges, if you have a history like this:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-rebase.txt:571
-#, no-wrap
+#: en/git-p4.txt:143
 msgid ""
-"           X\n"
-"            \\\n"
-"         A---M---B\n"
-"        /\n"
-"---o---O---P---Q\n"
+"To submit all changes that are in the current Git branch but not in the 'p4/"
+"master' branch, use:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:575
-msgid ""
-"Suppose you want to rebase the side branch starting at \"A\" to \"Q\". Make "
-"sure that the current HEAD is \"B\", and call"
+#: en/git-p4.txt:148
+msgid "To specify a branch other than the current one, use:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-rebase.txt:578
+#: en/git-p4.txt:150
 #, no-wrap
-msgid "$ git rebase -i -p --onto Q O\n"
+msgid "$ git p4 submit topicbranch\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:585
-msgid ""
-"Reordering and editing commits usually creates untested intermediate steps.  "
-"You may want to check that your history editing did not break anything by "
-"running a test, or at least recompiling at intermediate points in history by "
-"using the \"exec\" command (shortcut \"x\").  You may do so by creating a "
-"todo list like this one:"
+#: en/git-p4.txt:153
+msgid "To specify a single commit or a range of commits, use:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-rebase.txt:594
+#: en/git-p4.txt:156
 #, no-wrap
 msgid ""
-"pick deadbee Implement feature XXX\n"
-"fixup f1a5c00 Fix to feature XXX\n"
-"exec make\n"
-"pick c0ffeee The oneline of the next commit\n"
-"edit deadbab The oneline of the commit after\n"
-"exec cd subdir; make test\n"
-"...\n"
+"$ git p4 submit --commit <sha1>\n"
+"$ git p4 submit --commit <sha1..sha1>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:599
+#: en/git-p4.txt:160
 msgid ""
-"The interactive rebase will stop when a command fails (i.e. exits with non-0 "
-"status) to give you an opportunity to fix the problem. You can continue with "
-"`git rebase --continue`."
+"The upstream reference is generally 'refs/remotes/p4/master', but can be "
+"overridden using the `--origin=` command-line option."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:604
+#: en/git-p4.txt:165
 msgid ""
-"The \"exec\" command launches the command in a shell (the one specified in "
-"`$SHELL`, or the default shell if `$SHELL` is not set), so you can use shell "
-"features (like \"cd\", \">\", \";\" ...). The command is run from the root "
-"of the working tree."
-msgstr ""
-
-#. type: delimited block -
-#: en/git-rebase.txt:607
-#, no-wrap
-msgid "$ git rebase -i --exec \"make test\"\n"
+"The p4 changes will be created as the user invoking 'git p4 submit'. The `--"
+"preserve-user` option will cause ownership to be modified according to the "
+"author of the Git commit.  This option requires admin privileges in p4, "
+"which can be granted using 'p4 protect'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:611
+#: en/git-p4.txt:167
 msgid ""
-"This command lets you check that intermediate commits are compilable.  The "
-"todo list becomes like that:"
+"To shelve changes instead of submitting, use `--shelve` and `--update-"
+"shelve`:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-rebase.txt:621
+#: en/git-p4.txt:171
 #, no-wrap
 msgid ""
-"pick 5928aea one\n"
-"exec make test\n"
-"pick 04d0fda two\n"
-"exec make test\n"
-"pick ba46169 three\n"
-"exec make test\n"
-"pick f4593f9 four\n"
-"exec make test\n"
+"$ git p4 submit --shelve\n"
+"$ git p4 submit --update-shelve 1234 --update-shelve 2345\n"
 msgstr ""
 
-#. type: Title -
-#: en/git-rebase.txt:624
+#. type: Title ~
+#: en/git-p4.txt:175
 #, no-wrap
-msgid "SPLITTING COMMITS"
+msgid "Unshelve"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:630
+#: en/git-p4.txt:178
 msgid ""
-"In interactive mode, you can mark commits with the action \"edit\".  "
-"However, this does not necessarily mean that 'git rebase' expects the result "
-"of this edit to be exactly one commit.  Indeed, you can undo the commit, or "
-"you can add other commits.  This can be used to split a commit into two:"
+"Unshelving will take a shelved P4 changelist, and produce the equivalent git "
+"commit in the branch refs/remotes/p4-unshelved/<changelist>."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:634
+#: en/git-p4.txt:182
 msgid ""
-"Start an interactive rebase with `git rebase -i <commit>^`, where <commit> "
-"is the commit you want to split.  In fact, any commit range will do, as long "
-"as it contains that commit."
+"The git commit is created relative to the current origin revision (HEAD by "
+"default).  A parent commit is created based on the origin, and then the "
+"unshelve commit is created based on that."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:636
-msgid "Mark the commit you want to split with the action \"edit\"."
+#: en/git-p4.txt:184
+msgid "The origin revision can be changed with the \"--origin\" option."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:640
+#: en/git-p4.txt:187
 msgid ""
-"When it comes to editing that commit, execute `git reset HEAD^`.  The effect "
-"is that the HEAD is rewound by one, and the index follows suit.  However, "
-"the working tree stays the same."
+"If the target branch in refs/remotes/p4-unshelved already exists, the old "
+"one will be renamed."
 msgstr ""
 
-#. type: Plain text
-#: en/git-rebase.txt:644
+#. type: delimited block -
+#: en/git-p4.txt:195
+#, no-wrap
 msgid ""
-"Now add the changes to the index that you want to have in the first commit.  "
-"You can use `git add` (possibly interactively) or 'git gui' (or both) to do "
-"that."
+"$ git p4 sync\n"
+"$ git p4 unshelve 12345\n"
+"$ git show p4-unshelved/12345\n"
+"<submit more changes via p4 to the same files>\n"
+"$ git p4 unshelve 12345\n"
+"<refuses to unshelve until git is in sync with p4 again>\n"
+msgstr ""
+
+#. type: Title ~
+#: en/git-p4.txt:202
+#, no-wrap
+msgid "General options"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:647
-msgid ""
-"Commit the now-current index with whatever commit message is appropriate "
-"now."
+#: en/git-p4.txt:204
+msgid "All commands except clone accept these options."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-p4.txt:205
+#, no-wrap
+msgid "--git-dir <dir>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:649
-msgid "Repeat the last two steps until your working tree is clean."
+#: en/git-p4.txt:207
+msgid "Set the `GIT_DIR` environment variable.  See linkgit:git[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:651
-msgid "Continue the rebase with `git rebase --continue`."
+#: en/git-p4.txt:211
+msgid "Provide more progress information."
+msgstr ""
+
+#. type: Title ~
+#: en/git-p4.txt:213
+#, no-wrap
+msgid "Sync options"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:656
+#: en/git-p4.txt:216
 msgid ""
-"If you are not absolutely sure that the intermediate revisions are "
-"consistent (they compile, pass the testsuite, etc.) you should use 'git "
-"stash' to stash away the not-yet-committed changes after each commit, test, "
-"and amend the commit if fixes are necessary."
+"These options can be used in the initial 'clone' as well as in subsequent "
+"'sync' operations."
 msgstr ""
 
-#. type: Title -
-#: en/git-rebase.txt:659
+#. type: Labeled list
+#: en/git-p4.txt:217
 #, no-wrap
-msgid "RECOVERING FROM UPSTREAM REBASE"
+msgid "--branch <ref>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:666
+#: en/git-p4.txt:221
 msgid ""
-"Rebasing (or any other form of rewriting) a branch that others have based "
-"work on is a bad idea: anyone downstream of it is forced to manually fix "
-"their history.  This section explains how to do the fix from the "
-"downstream's point of view.  The real fix, however, would be to avoid "
-"rebasing the upstream in the first place."
+"Import changes into <ref> instead of refs/remotes/p4/master.  If <ref> "
+"starts with refs/, it is used as is.  Otherwise, if it does not start with "
+"p4/, that prefix is added."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:671
+#: en/git-p4.txt:225
 msgid ""
-"To illustrate, suppose you are in a situation where someone develops a "
-"'subsystem' branch, and you are working on a 'topic' that is dependent on "
-"this 'subsystem'.  You might end up with a history like the following:"
+"By default a <ref> not starting with refs/ is treated as the name of a "
+"remote-tracking branch (under refs/remotes/).  This behavior can be modified "
+"using the --import-local option."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rebase.txt:678
-#, no-wrap
-msgid ""
-"    o---o---o---o---o---o---o---o---o  master\n"
-"\t \\\n"
-"\t  o---o---o---o---o  subsystem\n"
-"\t\t\t   \\\n"
-"\t\t\t    *---*---*  topic\n"
+#. type: Plain text
+#: en/git-p4.txt:227
+msgid "The default <ref> is \"master\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:681
-msgid "If 'subsystem' is rebased against 'master', the following happens:"
+#: en/git-p4.txt:230
+msgid ""
+"This example imports a new remote \"p4/proj2\" into an existing Git "
+"repository:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-rebase.txt:688
+#: en/git-p4.txt:234
 #, no-wrap
 msgid ""
-"    o---o---o---o---o---o---o---o  master\n"
-"\t \\\t\t\t \\\n"
-"\t  o---o---o---o---o\t  o'--o'--o'--o'--o'  subsystem\n"
-"\t\t\t   \\\n"
-"\t\t\t    *---*---*  topic\n"
+"    $ git init\n"
+"    $ git p4 sync --branch=refs/remotes/p4/proj2 //depot/proj2\n"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-p4.txt:236
+#, no-wrap
+msgid "--detect-branches"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:692
+#: en/git-p4.txt:239
 msgid ""
-"If you now continue development as usual, and eventually merge 'topic' to "
-"'subsystem', the commits from 'subsystem' will remain duplicated forever:"
+"Use the branch detection algorithm to find new paths in p4.  It is "
+"documented below in \"BRANCH DETECTION\"."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rebase.txt:699
+#. type: Labeled list
+#: en/git-p4.txt:240
 #, no-wrap
-msgid ""
-"    o---o---o---o---o---o---o---o  master\n"
-"\t \\\t\t\t \\\n"
-"\t  o---o---o---o---o\t  o'--o'--o'--o'--o'--M\t subsystem\n"
-"\t\t\t   \\\t\t\t     /\n"
-"\t\t\t    *---*---*-..........-*--*  topic\n"
+msgid "--changesfile <file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:706
+#: en/git-p4.txt:244
 msgid ""
-"Such duplicates are generally frowned upon because they clutter up history, "
-"making it harder to follow.  To clean things up, you need to transplant the "
-"commits on 'topic' to the new 'subsystem' tip, i.e., rebase 'topic'.  This "
-"becomes a ripple effect: anyone downstream from 'topic' is forced to rebase "
-"too, and so on!"
+"Import exactly the p4 change numbers listed in 'file', one per line.  "
+"Normally, 'git p4' inspects the current p4 repository state and detects the "
+"changes it should import."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-p4.txt:245
+#, no-wrap
+msgid "--silent"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:708
-msgid "There are two kinds of fixes, discussed in the following subsections:"
+#: en/git-p4.txt:247
+msgid "Do not print any progress information."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rebase.txt:709
+#: en/git-p4.txt:248
 #, no-wrap
-msgid "Easy case: The changes are literally the same."
+msgid "--detect-labels"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:713
+#: en/git-p4.txt:252
 msgid ""
-"This happens if the 'subsystem' rebase was a simple rebase and had no "
-"conflicts."
+"Query p4 for labels associated with the depot paths, and add them as tags in "
+"Git. Limited usefulness as only imports labels associated with new "
+"changelists. Deprecated."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rebase.txt:714
+#: en/git-p4.txt:253 en/git-p4.txt:389
 #, no-wrap
-msgid "Hard case: The changes are not the same."
+msgid "--import-labels"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:720
-msgid ""
-"This happens if the 'subsystem' rebase had conflicts, or used "
-"`--interactive` to omit, edit, squash, or fixup commits; or if the upstream "
-"used one of `commit --amend`, `reset`, or `filter-branch`."
+#: en/git-p4.txt:255
+msgid "Import labels from p4 into Git."
 msgstr ""
 
-#. type: Title ~
-#: en/git-rebase.txt:723
+#. type: Labeled list
+#: en/git-p4.txt:256
 #, no-wrap
-msgid "The easy case"
+msgid "--import-local"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:728
+#: en/git-p4.txt:263
 msgid ""
-"Only works if the changes (patch IDs based on the diff contents) on "
-"'subsystem' are literally the same before and after the rebase 'subsystem' "
-"did."
+"By default, p4 branches are stored in 'refs/remotes/p4/', where they will be "
+"treated as remote-tracking branches by linkgit:git-branch[1] and other "
+"commands.  This option instead puts p4 branches in 'refs/heads/p4/'.  Note "
+"that future sync operations must specify `--import-local` as well so that "
+"they can find the p4 branches in refs/heads."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-p4.txt:264
+#, no-wrap
+msgid "--max-changes <n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:732
+#: en/git-p4.txt:270
 msgid ""
-"In that case, the fix is easy because 'git rebase' knows to skip changes "
-"that are already present in the new upstream.  So if you say (assuming "
-"you're on 'topic')"
+"Import at most 'n' changes, rather than the entire range of changes included "
+"in the given revision specifier. A typical usage would be use '@all' as the "
+"revision specifier, but then to use '--max-changes 1000' to import only the "
+"last 1000 revisions rather than the entire revision history."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rebase.txt:734
+#. type: Labeled list
+#: en/git-p4.txt:271
 #, no-wrap
-msgid "    $ git rebase subsystem\n"
+msgid "--changes-block-size <n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:736
-msgid "you will end up with the fixed history"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-rebase.txt:742
-#, no-wrap
+#: en/git-p4.txt:279
 msgid ""
-"    o---o---o---o---o---o---o---o  master\n"
-"\t\t\t\t \\\n"
-"\t\t\t\t  o'--o'--o'--o'--o'  subsystem\n"
-"\t\t\t\t\t\t   \\\n"
-"\t\t\t\t\t\t    *---*---*  topic\n"
+"The internal block size to use when converting a revision specifier such as "
+"'@all' into a list of specific change numbers. Instead of using a single "
+"call to 'p4 changes' to find the full list of changes for the conversion, "
+"there are a sequence of calls to 'p4 changes -m', each of which requests one "
+"block of changes of the given size. The default block size is 500, which "
+"should usually be suitable."
 msgstr ""
 
-#. type: Title ~
-#: en/git-rebase.txt:746
+#. type: Labeled list
+#: en/git-p4.txt:280
 #, no-wrap
-msgid "The hard case"
+msgid "--keep-path"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:750
+#: en/git-p4.txt:287
 msgid ""
-"Things get more complicated if the 'subsystem' changes do not exactly "
-"correspond to the ones before the rebase."
+"The mapping of file names from the p4 depot path to Git, by default, "
+"involves removing the entire depot path.  With this option, the full p4 "
+"depot path is retained in Git.  For example, path '//depot/main/foo/bar.c', "
+"when imported from '//depot/main/', becomes 'foo/bar.c'.  With `--keep-"
+"path`, the Git path is instead 'depot/main/foo/bar.c'."
 msgstr ""
 
-#. type: Plain text
-#: en/git-rebase.txt:755
+#. type: Labeled list
+#: en/git-p4.txt:288
 #, no-wrap
-msgid ""
-"While an \"easy case recovery\" sometimes appears to be successful\n"
-"      even in the hard case, it may have unintended consequences.  For\n"
-"      example, a commit that was removed via `git rebase\n"
-"      --interactive` will be **resurrected**!\n"
+msgid "--use-client-spec"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:760
+#: en/git-p4.txt:291
 msgid ""
-"The idea is to manually tell 'git rebase' \"where the old 'subsystem' ended "
-"and your 'topic' began\", that is, what the old merge-base between them "
-"was.  You will have to find a way to name the last commit of the old "
-"'subsystem', for example:"
+"Use a client spec to find the list of interesting files in p4.  See the "
+"\"CLIENT SPEC\" section below."
 msgstr ""
 
-#. type: Plain text
-#: en/git-rebase.txt:764
-msgid ""
-"With the 'subsystem' reflog: after 'git fetch', the old tip of 'subsystem' "
-"is at `subsystem@{1}`.  Subsequent fetches will increase the number.  (See "
-"linkgit:git-reflog[1].)"
+#. type: Labeled list
+#: en/git-p4.txt:292
+#, no-wrap
+msgid "-/ <path>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:767
-msgid ""
-"Relative to the tip of 'topic': knowing that your 'topic' has three commits, "
-"the old tip of 'subsystem' must be `topic~3`."
+#: en/git-p4.txt:294
+msgid "Exclude selected depot paths when cloning or syncing."
+msgstr ""
+
+#. type: Title ~
+#: en/git-p4.txt:296
+#, no-wrap
+msgid "Clone options"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:770
+#: en/git-p4.txt:299
 msgid ""
-"You can then transplant the old `subsystem..topic` to the new tip by saying "
-"(for the reflog case, and assuming you are on 'topic' already):"
+"These options can be used in an initial 'clone', along with the 'sync' "
+"options described above."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rebase.txt:772
+#. type: Labeled list
+#: en/git-p4.txt:300
 #, no-wrap
-msgid "    $ git rebase --onto subsystem subsystem@{1}\n"
+msgid "--destination <directory>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:777
+#: en/git-p4.txt:304
 msgid ""
-"The ripple effect of a \"hard case\" recovery is especially bad: 'everyone' "
-"downstream from 'topic' will now have to perform a \"hard case\" recovery "
-"too!"
+"Where to create the Git repository.  If not provided, the last component in "
+"the p4 depot path is used to create a new directory."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:784
-msgid ""
-"The todo list presented by `--preserve-merges --interactive` does not "
-"represent the topology of the revision graph.  Editing commits and rewording "
-"their commit messages should work fine, but attempts to reorder commits tend "
-"to produce counterintuitive results."
+#: en/git-p4.txt:307
+msgid "Perform a bare clone.  See linkgit:git-clone[1]."
 msgstr ""
 
-#. type: Plain text
-#: en/git-rebase.txt:786
-msgid "For example, an attempt to rearrange"
+#. type: Title ~
+#: en/git-p4.txt:309
+#, no-wrap
+msgid "Submit options"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rebase.txt:788
-#, no-wrap
-msgid "1 --- 2 --- 3 --- 4 --- 5\n"
+#. type: Plain text
+#: en/git-p4.txt:311
+msgid "These options can be used to modify 'git p4 submit' behavior."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rebase.txt:792
+#. type: Labeled list
+#: en/git-p4.txt:312
 #, no-wrap
-msgid "1 --- 2 --- 4 --- 3 --- 5\n"
+msgid "--origin <commit>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rebase.txt:794
-msgid "by moving the \"pick 4\" line will result in the following history:"
+#: en/git-p4.txt:316
+msgid ""
+"Upstream location from which commits are identified to submit to p4.  By "
+"default, this is the most recent p4 commit reachable from `HEAD`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rebase.txt:798
-#, no-wrap
+#. type: Plain text
+#: en/git-p4.txt:322
 msgid ""
-"\t3\n"
-"       /\n"
-"1 --- 2 --- 4 --- 5\n"
+"Detect renames.  See linkgit:git-diff[1].  Renames will be represented in p4 "
+"using explicit 'move' operations.  There is no corresponding option to "
+"detect copies, but there are variables for both moves and copies."
 msgstr ""
 
-#. type: Title =
-#: en/git-receive-pack.txt:2
+#. type: Labeled list
+#: en/git-p4.txt:323
 #, no-wrap
-msgid "git-receive-pack(1)"
+msgid "--preserve-user"
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:7
-msgid "git-receive-pack - Receive what is pushed into the repository"
+#: en/git-p4.txt:326
+msgid ""
+"Re-author p4 changes before submitting to p4.  This option requires p4 admin "
+"privileges."
 msgstr ""
 
-#. type: Plain text
-#: en/git-receive-pack.txt:13
+#. type: Labeled list
+#: en/git-p4.txt:327
 #, no-wrap
-msgid "'git-receive-pack' <directory>\n"
+msgid "--export-labels"
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:18
+#: en/git-p4.txt:330
 msgid ""
-"Invoked by 'git send-pack' and updates the repository with the information "
-"fed from the remote end."
+"Export tags from Git as p4 labels. Tags found in Git are applied to the "
+"perforce working directory."
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:23
+#: en/git-p4.txt:335
 msgid ""
-"This command is usually not invoked directly by the end user.  The UI for "
-"the protocol is on the 'git send-pack' side, and the program pair is meant "
-"to be used to push updates to remote repository.  For pull operations, see "
-"linkgit:git-fetch-pack[1]."
+"Show just what commits would be submitted to p4; do not change state in Git "
+"or p4."
 msgstr ""
 
-#. type: Plain text
-#: en/git-receive-pack.txt:28
-msgid ""
-"The command allows for creation and fast-forwarding of sha1 refs "
-"(heads/tags) on the remote end (strictly speaking, it is the local end "
-"'git-receive-pack' runs, but to the user who is sitting at the send-pack "
-"end, it is updating the remote.  Confused?)"
+#. type: Labeled list
+#: en/git-p4.txt:336
+#, no-wrap
+msgid "--prepare-p4-only"
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:31
+#: en/git-p4.txt:342
 msgid ""
-"There are other real-world examples of using update and post-update hooks "
-"found in the Documentation/howto directory."
+"Apply a commit to the p4 workspace, opening, adding and deleting files in p4 "
+"as for a normal submit operation.  Do not issue the final \"p4 submit\", but "
+"instead print a message about how to submit manually or revert.  This option "
+"always stops after the first (oldest) commit.  Git tags are not exported to "
+"p4."
 msgstr ""
 
-#. type: Plain text
-#: en/git-receive-pack.txt:35
-msgid ""
-"'git-receive-pack' honours the receive.denyNonFastForwards config option, "
-"which tells it if updates to a ref should be denied if they are not "
-"fast-forwards."
+#. type: Labeled list
+#: en/git-p4.txt:343
+#, no-wrap
+msgid "--shelve"
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:38
+#: en/git-p4.txt:347
 msgid ""
-"A number of other receive.* config options are available to tweak its "
-"behavior, see linkgit:git-config[1]."
-msgstr ""
-
-#. type: Plain text
-#: en/git-receive-pack.txt:43
-msgid "The repository to sync into."
+"Instead of submitting create a series of shelved changelists.  After "
+"creating each shelve, the relevant files are reverted/deleted.  If you have "
+"multiple commits pending multiple shelves will be created."
 msgstr ""
 
-#. type: Title -
-#: en/git-receive-pack.txt:45
+#. type: Labeled list
+#: en/git-p4.txt:348
 #, no-wrap
-msgid "pre-receive Hook"
+msgid "--update-shelve CHANGELIST"
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:49
+#: en/git-p4.txt:351
 msgid ""
-"Before any ref is updated, if $GIT_DIR/hooks/pre-receive file exists and is "
-"executable, it will be invoked once with no parameters.  The standard input "
-"of the hook will be one line per ref to be updated:"
+"Update an existing shelved changelist with this commit. Implies --shelve. "
+"Repeat for multiple shelved changelists."
 msgstr ""
 
-#. type: Plain text
-#: en/git-receive-pack.txt:51 en/git-receive-pack.txt:148
+#. type: Labeled list
+#: en/git-p4.txt:352
 #, no-wrap
-msgid "       sha1-old SP sha1-new SP refname LF\n"
+msgid "--conflict=(ask|skip|quit)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:58
+#: en/git-p4.txt:358
 msgid ""
-"The refname value is relative to $GIT_DIR; e.g. for the master head this is "
-"\"refs/heads/master\".  The two sha1 values before each refname are the "
-"object names for the refname before and after the update.  Refs to be "
-"created will have sha1-old equal to 0\\{40}, while refs to be deleted will "
-"have sha1-new equal to 0\\{40}, otherwise sha1-old and sha1-new should be "
-"valid objects in the repository."
+"Conflicts can occur when applying a commit to p4.  When this happens, the "
+"default behavior (\"ask\") is to prompt whether to skip this commit and "
+"continue, or quit.  This option can be used to bypass the prompt, causing "
+"conflicting commits to be automatically skipped, or to quit trying to apply "
+"commits, without prompting."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-p4.txt:359
+#, no-wrap
+msgid "--branch <branch>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:65
+#: en/git-p4.txt:363
 msgid ""
-"When accepting a signed push (see linkgit:git-push[1]), the signed push "
-"certificate is stored in a blob and an environment variable `GIT_PUSH_CERT` "
-"can be consulted for its object name.  See the description of `post-receive` "
-"hook for an example.  In addition, the certificate is verified using GPG and "
-"the result is exported with the following environment variables:"
+"After submitting, sync this named branch instead of the default p4/master.  "
+"See the \"Sync options\" section above for more information."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-receive-pack.txt:66
+#: en/git-p4.txt:364
 #, no-wrap
-msgid "`GIT_PUSH_CERT_SIGNER`"
+msgid "--commit <sha1>|<sha1..sha1>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:69
+#: en/git-p4.txt:367
 msgid ""
-"The name and the e-mail address of the owner of the key that signed the push "
-"certificate."
+"Submit only the specified commit or range of commits, instead of the full "
+"list of changes that are in the current Git branch."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-receive-pack.txt:70
+#: en/git-p4.txt:368
 #, no-wrap
-msgid "`GIT_PUSH_CERT_KEY`"
+msgid "--disable-rebase"
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:72
-msgid "The GPG key ID of the key that signed the push certificate."
+#: en/git-p4.txt:371
+msgid ""
+"Disable the automatic rebase after all commits have been successfully "
+"submitted. Can also be set with git-p4.disableRebase."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-receive-pack.txt:73
+#: en/git-p4.txt:372
 #, no-wrap
-msgid "`GIT_PUSH_CERT_STATUS`"
+msgid "--disable-p4sync"
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:77
+#: en/git-p4.txt:376
 msgid ""
-"The status of GPG verification of the push certificate, using the same "
-"mnemonic as used in `%G?` format of `git log` family of commands (see "
-"linkgit:git-log[1])."
+"Disable the automatic sync of p4/master from Perforce after commits have "
+"been submitted. Implies --disable-rebase. Can also be set with git-p4."
+"disableP4Sync. Sync with origin/master still goes ahead if possible."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-receive-pack.txt:78
+#. type: Title ~
+#: en/git-p4.txt:378
 #, no-wrap
-msgid "`GIT_PUSH_CERT_NONCE`"
+msgid "Hook for submit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:84
+#: en/git-p4.txt:382
 msgid ""
-"The nonce string the process asked the signer to include in the push "
-"certificate.  If this does not match the value recorded on the \"nonce\" "
-"header in the push certificate, it may indicate that the certificate is a "
-"valid one that is being replayed from a separate \"git push\" session."
+"The `p4-pre-submit` hook is executed if it exists and is executable.  The "
+"hook takes no parameters and nothing from standard input. Exiting with non-"
+"zero status from this script prevents `git-p4 submit` from launching."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-receive-pack.txt:85
-#, no-wrap
-msgid "`GIT_PUSH_CERT_NONCE_STATUS`"
+#. type: Plain text
+#: en/git-p4.txt:384
+msgid "One usage scenario is to run unit tests in the hook."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-receive-pack.txt:86
+#. type: Title ~
+#: en/git-p4.txt:386
 #, no-wrap
-msgid "`UNSOLICITED`"
+msgid "Rebase options"
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:89
-msgid "\"git push --signed\" sent a nonce when we did not ask it to send one."
+#: en/git-p4.txt:388
+msgid "These options can be used to modify 'git p4 rebase' behavior."
+msgstr ""
+
+#. type: Plain text
+#: en/git-p4.txt:391
+msgid "Import p4 labels."
+msgstr ""
+
+#. type: Title ~
+#: en/git-p4.txt:393
+#, no-wrap
+msgid "Unshelve options"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-receive-pack.txt:89
+#: en/git-p4.txt:395
 #, no-wrap
-msgid "`MISSING`"
+msgid "--origin"
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:91
-msgid "\"git push --signed\" did not send any nonce header."
+#: en/git-p4.txt:398
+msgid ""
+"Sets the git refspec against which the shelved P4 changelist is compared.  "
+"Defaults to p4/master."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-receive-pack.txt:91
+#. type: Title -
+#: en/git-p4.txt:400
 #, no-wrap
-msgid "`BAD`"
+msgid "DEPOT PATH SYNTAX"
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:93
-msgid "\"git push --signed\" sent a bogus nonce."
+#: en/git-p4.txt:404
+msgid ""
+"The p4 depot path argument to 'git p4 sync' and 'git p4 clone' can be one or "
+"more space-separated p4 depot paths, with an optional p4 revision specifier "
+"on the end:"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-receive-pack.txt:93
+#: en/git-p4.txt:405
 #, no-wrap
-msgid "`OK`"
+msgid "\"//depot/my/project\""
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:95
-msgid "\"git push --signed\" sent the nonce we asked it to send."
+#: en/git-p4.txt:407
+msgid "Import one commit with all files in the '#head' change under that tree."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-receive-pack.txt:95
+#: en/git-p4.txt:408
 #, no-wrap
-msgid "`SLOP`"
+msgid "\"//depot/my/project@all\""
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:99
-msgid ""
-"\"git push --signed\" sent a nonce different from what we asked it to send "
-"now, but in a previous session.  See `GIT_PUSH_CERT_NONCE_SLOP` environment "
-"variable."
+#: en/git-p4.txt:410
+msgid "Import one commit for each change in the history of that depot path."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-receive-pack.txt:100
+#: en/git-p4.txt:411
 #, no-wrap
-msgid "`GIT_PUSH_CERT_NONCE_SLOP`"
+msgid "\"//depot/my/project@1,6\""
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:108
-msgid ""
-"\"git push --signed\" sent a nonce different from what we asked it to send "
-"now, but in a different session whose starting time is different by this "
-"many seconds from the current session.  Only meaningful when "
-"`GIT_PUSH_CERT_NONCE_STATUS` says `SLOP`.  Also read about "
-"`receive.certNonceSlop` variable in linkgit:git-config[1]."
+#: en/git-p4.txt:413
+msgid "Import only changes 1 through 6."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-p4.txt:414
+#, no-wrap
+msgid "\"//depot/proj1@all //depot/proj2@all\""
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:111
+#: en/git-p4.txt:423
 msgid ""
-"This hook is called before any refname is updated and before any "
-"fast-forward checks are performed."
+"Import all changes from both named depot paths into a single repository.  "
+"Only files below these directories are included.  There is not a "
+"subdirectory in Git for each \"proj1\" and \"proj2\".  You must use the `--"
+"destination` option when specifying more than one depot path.  The revision "
+"specifier must be specified identically on each depot path.  If there are "
+"files in the depot paths with the same name, the path with the most recently "
+"updated version of the file is the one that appears in Git."
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:116
-msgid ""
-"If the pre-receive hook exits with a non-zero exit status no updates will be "
-"performed, and the update, post-receive and post-update hooks will not be "
-"invoked either.  This can be useful to quickly bail out if the update is not "
-"to be supported."
+#: en/git-p4.txt:425
+msgid "See 'p4 help revisions' for the full syntax of p4 revision specifiers."
 msgstr ""
 
 #. type: Title -
-#: en/git-receive-pack.txt:118
+#: en/git-p4.txt:428
 #, no-wrap
-msgid "update Hook"
+msgid "CLIENT SPEC"
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:121
+#: en/git-p4.txt:438
 msgid ""
-"Before each ref is updated, if $GIT_DIR/hooks/update file exists and is "
-"executable, it is invoked once per ref, with three parameters:"
+"The p4 client specification is maintained with the 'p4 client' command and "
+"contains among other fields, a View that specifies how the depot is mapped "
+"into the client repository.  The 'clone' and 'sync' commands can consult the "
+"client spec when given the `--use-client-spec` option or when the "
+"useClientSpec variable is true.  After 'git p4 clone', the useClientSpec "
+"variable is automatically set in the repository configuration file.  This "
+"allows future 'git p4 submit' commands to work properly; the submit command "
+"looks only at the variable and does not have a command-line option."
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:123
-#, no-wrap
-msgid "       $GIT_DIR/hooks/update refname sha1-old sha1-new\n"
+#: en/git-p4.txt:445
+msgid ""
+"The full syntax for a p4 view is documented in 'p4 help views'.  'git p4' "
+"knows only a subset of the view syntax.  It understands multi-line mappings, "
+"overlays with '+', exclusions with '-' and double-quotes around whitespace.  "
+"Of the possible wildcards, 'git p4' only handles '...', and only when it is "
+"at the end of the path.  'git p4' will complain if it encounters an "
+"unhandled wildcard."
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:130
+#: en/git-p4.txt:450
 msgid ""
-"The refname parameter is relative to $GIT_DIR; e.g. for the master head this "
-"is \"refs/heads/master\".  The two sha1 arguments are the object names for "
-"the refname before and after the update.  Note that the hook is called "
-"before the refname is updated, so either sha1-old is 0\\{40} (meaning there "
-"is no such ref yet), or it should match what is recorded in refname."
+"Bugs in the implementation of overlap mappings exist.  If multiple depot "
+"paths map through overlays to the same location in the repository, 'git p4' "
+"can choose the wrong one.  This is hard to solve without dedicating a client "
+"spec just for 'git p4'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:133
+#: en/git-p4.txt:455
 msgid ""
-"The hook should exit with non-zero status if it wants to disallow updating "
-"the named ref.  Otherwise it should exit with zero."
-msgstr ""
-
-#. type: Plain text
-#: en/git-receive-pack.txt:138
-msgid ""
-"Successful execution (a zero exit status) of this hook does not ensure the "
-"ref will actually be updated, it is only a prerequisite.  As such it is not "
-"a good idea to send notices (e.g. email) from this hook.  Consider using the "
-"post-receive hook instead."
+"The name of the client can be given to 'git p4' in multiple ways.  The "
+"variable 'git-p4.client' takes precedence if it exists.  Otherwise, normal "
+"p4 mechanisms of determining the client are used: environment variable "
+"`P4CLIENT`, a file referenced by `P4CONFIG`, or the local host name."
 msgstr ""
 
 #. type: Title -
-#: en/git-receive-pack.txt:140
+#: en/git-p4.txt:458
 #, no-wrap
-msgid "post-receive Hook"
+msgid "BRANCH DETECTION"
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:146
+#: en/git-p4.txt:465
 msgid ""
-"After all refs were updated (or attempted to be updated), if any ref update "
-"was successful, and if $GIT_DIR/hooks/post-receive file exists and is "
-"executable, it will be invoked once with no parameters.  The standard input "
-"of the hook will be one line for each successfully updated ref:"
+"P4 does not have the same concept of a branch as Git.  Instead, p4 organizes "
+"its content as a directory tree, where by convention different logical "
+"branches are in different locations in the tree.  The 'p4 branch' command is "
+"used to maintain mappings between different areas in the tree, and indicate "
+"related content.  'git p4' can use these mappings to determine branch "
+"relationships."
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:156
+#: en/git-p4.txt:470
 msgid ""
-"The refname value is relative to $GIT_DIR; e.g. for the master head this is "
-"\"refs/heads/master\".  The two sha1 values before each refname are the "
-"object names for the refname before and after the update.  Refs that were "
-"created will have sha1-old equal to 0\\{40}, while refs that were deleted "
-"will have sha1-new equal to 0\\{40}, otherwise sha1-old and sha1-new should "
-"be valid objects in the repository."
+"If you have a repository where all the branches of interest exist as "
+"subdirectories of a single depot path, you can use `--detect-branches` when "
+"cloning or syncing to have 'git p4' automatically find subdirectories in p4, "
+"and to generate these as branches in Git."
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:159
-msgid ""
-"The `GIT_PUSH_CERT*` environment variables can be inspected, just as in "
-"`pre-receive` hook, after accepting a signed push."
+#: en/git-p4.txt:472
+msgid "For example, if the P4 repository structure is:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-receive-pack.txt:165
+#. type: delimited block -
+#: en/git-p4.txt:475
+#, no-wrap
 msgid ""
-"Using this hook, it is easy to generate mails describing the updates to the "
-"repository.  This example script sends one mail message per ref listing the "
-"commits pushed to the repository, and logs the push certificates of signed "
-"pushes with good signatures to a logger service:"
+"//depot/main/...\n"
+"//depot/branch1/...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:189
-#, no-wrap
-msgid ""
-"\t#!/bin/sh\n"
-"\t# mail out commit update information.\n"
-"\twhile read oval nval ref\n"
-"\tdo\n"
-"\t\tif expr \"$oval\" : '0*$' >/dev/null\n"
-"\t\tthen\n"
-"\t\t\techo \"Created a new ref, with the following commits:\"\n"
-"\t\t\tgit rev-list --pretty \"$nval\"\n"
-"\t\telse\n"
-"\t\t\techo \"New commits:\"\n"
-"\t\t\tgit rev-list --pretty \"$nval\" \"^$oval\"\n"
-"\t\tfi |\n"
-"\t\tmail -s \"Changes to ref $ref\" commit-list@mydomain\n"
-"\tdone\n"
-"\t# log signed push certificate, if any\n"
-"\tif test -n \"${GIT_PUSH_CERT-}\" && test ${GIT_PUSH_CERT_STATUS} = G\n"
-"\tthen\n"
-"\t\t(\n"
-"\t\t\techo expected nonce is ${GIT_PUSH_NONCE}\n"
-"\t\t\tgit cat-file blob ${GIT_PUSH_CERT}\n"
-"\t\t) | mail -s \"push certificate from $GIT_PUSH_CERT_SIGNER\" "
-"push-log@mydomain\n"
-"\tfi\n"
-"\texit 0\n"
+#: en/git-p4.txt:478
+msgid "And \"p4 branch -o branch1\" shows a View line that looks like:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-receive-pack.txt:192
-msgid ""
-"The exit code from this hook invocation is ignored, however a non-zero exit "
-"code will generate an error message."
+#. type: delimited block -
+#: en/git-p4.txt:480
+#, no-wrap
+msgid "//depot/main/... //depot/branch1/...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:198
-msgid ""
-"Note that it is possible for refname to not have sha1-new when this hook "
-"runs.  This can easily occur if another user modifies the ref after it was "
-"updated by 'git-receive-pack', but before the hook was able to evaluate it.  "
-"It is recommended that hooks rely on sha1-new rather than the current value "
-"of refname."
+#: en/git-p4.txt:483
+msgid "Then this 'git p4 clone' command:"
 msgstr ""
 
-#. type: Title -
-#: en/git-receive-pack.txt:200
+#. type: delimited block -
+#: en/git-p4.txt:485
 #, no-wrap
-msgid "post-update Hook"
+msgid "git p4 clone --detect-branches //depot@all\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:205
+#: en/git-p4.txt:488
 msgid ""
-"After all other processing, if at least one ref was updated, and if "
-"$GIT_DIR/hooks/post-update file exists and is executable, then post-update "
-"will be called with the list of refs that have been updated.  This can be "
-"used to implement any repository wide cleanup tasks."
+"produces a separate branch in 'refs/remotes/p4/' for //depot/main, called "
+"'master', and one for //depot/branch1 called 'depot/branch1'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:209
+#: en/git-p4.txt:498
 msgid ""
-"The exit code from this hook invocation is ignored; the only thing left for "
-"'git-receive-pack' to do at that point is to exit itself anyway."
+"However, it is not necessary to create branches in p4 to be able to use them "
+"like branches.  Because it is difficult to infer branch relationships "
+"automatically, a Git configuration setting 'git-p4.branchList' can be used "
+"to explicitly identify branch relationships.  It is a list of \"source:"
+"destination\" pairs, like a simple p4 branch specification, where the "
+"\"source\" and \"destination\" are the path elements in the p4 repository.  "
+"The example above relied on the presence of the p4 branch.  Without p4 "
+"branches, the same result will occur with:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-receive-pack.txt:212
+#. type: delimited block -
+#: en/git-p4.txt:503
+#, no-wrap
 msgid ""
-"This hook can be used, for example, to run `git update-server-info` if the "
-"repository is packed and is served via a dumb transport."
+"git init depot\n"
+"cd depot\n"
+"git config git-p4.branchList main:branch1\n"
+"git p4 clone --detect-branches //depot@all .\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:215
-#, no-wrap
+#: en/git-p4.txt:512
 msgid ""
-"\t#!/bin/sh\n"
-"\texec git update-server-info\n"
+"The fast-import mechanism used by 'git p4' creates one pack file for each "
+"invocation of 'git p4 sync'.  Normally, Git garbage compression (linkgit:git-"
+"gc[1]) automatically compresses these to fewer pack files, but explicit "
+"invocation of 'git repack -adf' may improve performance."
 msgstr ""
 
 #. type: Plain text
-#: en/git-receive-pack.txt:220
-msgid "linkgit:git-send-pack[1], linkgit:gitnamespaces[7]"
+#: en/git-p4.txt:518
+msgid ""
+"The following config settings can be used to modify 'git p4' behavior.  They "
+"all are in the 'git-p4' section."
 msgstr ""
 
-#. type: Title =
-#: en/git-reflog.txt:2
+#. type: Title ~
+#: en/git-p4.txt:520
 #, no-wrap
-msgid "git-reflog(1)"
+msgid "General variables"
 msgstr ""
 
-#. type: Plain text
-#: en/git-reflog.txt:7
-msgid "git-reflog - Manage reflog information"
+#. type: Labeled list
+#: en/git-p4.txt:521
+#, no-wrap
+msgid "git-p4.user"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reflog.txt:13
-#, no-wrap
-msgid "'git reflog' <subcommand> <options>\n"
+#: en/git-p4.txt:524
+msgid ""
+"User specified as an option to all p4 commands, with '-u <user>'.  The "
+"environment variable `P4USER` can be used instead."
 msgstr ""
 
-#. type: Plain text
-#: en/git-reflog.txt:27
+#. type: Labeled list
+#: en/git-p4.txt:525
 #, no-wrap
-msgid ""
-"'git reflog' ['show'] [log-options] [<ref>]\n"
-"'git reflog expire' [--expire=<time>] [--expire-unreachable=<time>]\n"
-"\t[--rewrite] [--updateref] [--stale-fix]\n"
-"\t[--dry-run] [--verbose] [--all | <refs>...]\n"
-"'git reflog delete' [--rewrite] [--updateref]\n"
-"\t[--dry-run] [--verbose] ref@\\{specifier\\}...\n"
-"'git reflog exists' <ref>\n"
+msgid "git-p4.password"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reflog.txt:35
+#: en/git-p4.txt:529
 msgid ""
-"Reference logs, or \"reflogs\", record when the tips of branches and other "
-"references were updated in the local repository. Reflogs are useful in "
-"various Git commands, to specify the old value of a reference. For example, "
-"`HEAD@{2}` means \"where HEAD used to be two moves ago\", "
-"`master@{one.week.ago}` means \"where master used to point to one week ago "
-"in this local repository\", and so on. See linkgit:gitrevisions[7] for more "
-"details."
+"Password specified as an option to all p4 commands, with '-P <password>'.  "
+"The environment variable `P4PASS` can be used instead."
 msgstr ""
 
-#. type: Plain text
-#: en/git-reflog.txt:37
-msgid "This command manages the information recorded in the reflogs."
+#. type: Labeled list
+#: en/git-p4.txt:530
+#, no-wrap
+msgid "git-p4.port"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reflog.txt:44
+#: en/git-p4.txt:534
 msgid ""
-"The \"show\" subcommand (which is also the default, in the absence of any "
-"subcommands) shows the log of the reference provided in the command-line (or "
-"`HEAD`, by default). The reflog covers all recent actions, and in addition "
-"the `HEAD` reflog records branch switching.  `git reflog show` is an alias "
-"for `git log -g --abbrev-commit --pretty=oneline`; see linkgit:git-log[1] "
-"for more information."
+"Port specified as an option to all p4 commands, with '-p <port>'.  The "
+"environment variable `P4PORT` can be used instead."
 msgstr ""
 
-#. type: Plain text
-#: en/git-reflog.txt:50
-msgid ""
-"The \"expire\" subcommand prunes older reflog entries. Entries older than "
-"`expire` time, or entries older than `expire-unreachable` time and not "
-"reachable from the current tip, are removed from the reflog.  This is "
-"typically not used directly by end users -- instead, see linkgit:git-gc[1]."
+#. type: Labeled list
+#: en/git-p4.txt:535
+#, no-wrap
+msgid "git-p4.host"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reflog.txt:55
+#: en/git-p4.txt:539
 msgid ""
-"The \"delete\" subcommand deletes single entries from the reflog. Its "
-"argument must be an _exact_ entry (e.g. \"`git reflog delete "
-"master@{2}`\"). This subcommand is also typically not used directly by end "
-"users."
+"Host specified as an option to all p4 commands, with '-h <host>'.  The "
+"environment variable `P4HOST` can be used instead."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-p4.txt:540
+#, no-wrap
+msgid "git-p4.client"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reflog.txt:59
+#: en/git-p4.txt:543
 msgid ""
-"The \"exists\" subcommand checks whether a ref has a reflog.  It exits with "
-"zero status if the reflog exists, and non-zero status if it does not."
+"Client specified as an option to all p4 commands, with '-c <client>', "
+"including the client spec."
 msgstr ""
 
-#. type: Title ~
-#: en/git-reflog.txt:64
+#. type: Labeled list
+#: en/git-p4.txt:544
 #, no-wrap
-msgid "Options for `show`"
+msgid "git-p4.retries"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reflog.txt:67
-msgid "`git reflog show` accepts any of the options accepted by `git log`."
+#: en/git-p4.txt:549
+msgid ""
+"Specifies the number of times to retry a p4 command (notably, 'p4 sync') if "
+"the network times out. The default value is 3.  Set the value to 0 to "
+"disable retries or if your p4 version does not support retries (pre 2012.2)."
 msgstr ""
 
 #. type: Title ~
-#: en/git-reflog.txt:70
+#: en/git-p4.txt:551
 #, no-wrap
-msgid "Options for `expire`"
-msgstr ""
-
-#. type: Plain text
-#: en/git-reflog.txt:74
-msgid "Process the reflogs of all references."
+msgid "Clone and sync variables"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-reflog.txt:75
+#: en/git-p4.txt:552
 #, no-wrap
-msgid "--expire=<time>"
+msgid "git-p4.syncFromOrigin"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reflog.txt:82
+#: en/git-p4.txt:558
 msgid ""
-"Prune entries older than the specified time. If this option is not "
-"specified, the expiration time is taken from the configuration setting "
-"`gc.reflogExpire`, which in turn defaults to 90 days. `--expire=all` prunes "
-"entries regardless of their age; `--expire=never` turns off pruning of "
-"reachable entries (but see `--expire-unreachable`)."
+"Because importing commits from other Git repositories is much faster than "
+"importing them from p4, a mechanism exists to find p4 changes first in Git "
+"remotes.  If branches exist under 'refs/remote/origin/p4', those will be "
+"fetched and used when syncing from p4.  This variable can be set to 'false' "
+"to disable this behavior."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-reflog.txt:83
+#: en/git-p4.txt:559
 #, no-wrap
-msgid "--expire-unreachable=<time>"
+msgid "git-p4.branchUser"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reflog.txt:92
+#: en/git-p4.txt:564
 msgid ""
-"Prune entries older than `<time>` that are not reachable from the current "
-"tip of the branch. If this option is not specified, the expiration time is "
-"taken from the configuration setting `gc.reflogExpireUnreachable`, which in "
-"turn defaults to 30 days. `--expire-unreachable=all` prunes unreachable "
-"entries regardless of their age; `--expire-unreachable=never` turns off "
-"early pruning of unreachable entries (but see `--expire`)."
+"One phase in branch detection involves looking at p4 branches to find new "
+"ones to import.  By default, all branches are inspected.  This option limits "
+"the search to just those owned by the single user named in the variable."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-reflog.txt:93
+#: en/git-p4.txt:565
 #, no-wrap
-msgid "--updateref"
+msgid "git-p4.branchList"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reflog.txt:97
+#: en/git-p4.txt:570
+msgid ""
+"List of branches to be imported when branch detection is enabled.  Each "
+"entry should be a pair of branch names separated by a colon (:).  This "
+"example declares that both branchA and branchB were created from main:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-p4.txt:574
+#, no-wrap
 msgid ""
-"Update the reference to the value of the top reflog entry (i.e.  "
-"<ref>@\\{0\\}) if the previous top entry was pruned.  (This option is "
-"ignored for symbolic references.)"
+"git config       git-p4.branchList main:branchA\n"
+"git config --add git-p4.branchList main:branchB\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-reflog.txt:98
+#: en/git-p4.txt:576
 #, no-wrap
-msgid "--rewrite"
+msgid "git-p4.ignoredP4Labels"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reflog.txt:102
+#: en/git-p4.txt:579
 msgid ""
-"If a reflog entry's predecessor is pruned, adjust its \"old\" SHA-1 to be "
-"equal to the \"new\" SHA-1 field of the entry that now precedes it."
+"List of p4 labels to ignore. This is built automatically as unimportable "
+"labels are discovered."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-reflog.txt:103
+#: en/git-p4.txt:580
 #, no-wrap
-msgid "--stale-fix"
+msgid "git-p4.importLabels"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reflog.txt:108
-msgid ""
-"Prune any reflog entries that point to \"broken commits\". A broken commit "
-"is a commit that is not reachable from any of the reference tips and that "
-"refers, directly or indirectly, to a missing commit, tree, or blob object."
+#: en/git-p4.txt:582
+msgid "Import p4 labels into git, as per --import-labels."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-p4.txt:583
+#, no-wrap
+msgid "git-p4.labelImportRegexp"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reflog.txt:113
+#: en/git-p4.txt:586
 msgid ""
-"This computation involves traversing all the reachable objects, i.e. it has "
-"the same cost as 'git prune'.  It is primarily intended to fix corruption "
-"caused by garbage collecting using older versions of Git, which didn't "
-"protect objects referred to by reflogs."
+"Only p4 labels matching this regular expression will be imported. The "
+"default value is '[a-zA-Z0-9_\\-.]+$'."
 msgstr ""
 
-#. type: Plain text
-#: en/git-reflog.txt:118
-msgid "Do not actually prune any entries; just show what would have been pruned."
+#. type: Labeled list
+#: en/git-p4.txt:587
+#, no-wrap
+msgid "git-p4.useClientSpec"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reflog.txt:121
-msgid "Print extra information on screen."
+#: en/git-p4.txt:592
+msgid ""
+"Specify that the p4 client spec should be used to identify p4 depot paths of "
+"interest.  This is equivalent to specifying the option `--use-client-spec`.  "
+"See the \"CLIENT SPEC\" section above.  This variable is a boolean, not the "
+"name of a p4 client."
 msgstr ""
 
-#. type: Title ~
-#: en/git-reflog.txt:124
+#. type: Labeled list
+#: en/git-p4.txt:593
 #, no-wrap
-msgid "Options for `delete`"
+msgid "git-p4.pathEncoding"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reflog.txt:129
+#: en/git-p4.txt:599
 msgid ""
-"`git reflog delete` accepts options `--updateref`, `--rewrite`, `-n`, "
-"`--dry-run`, and `--verbose`, with the same meanings as when they are used "
-"with `expire`."
+"Perforce keeps the encoding of a path as given by the originating OS.  Git "
+"expects paths encoded as UTF-8. Use this config to tell git-p4 what encoding "
+"Perforce had used for the paths. This encoding is used to transcode the "
+"paths to UTF-8. As an example, Perforce on Windows often uses \"cp1252\" to "
+"encode path names."
 msgstr ""
 
-#. type: Title =
-#: en/git-remote-ext.txt:2
+#. type: Labeled list
+#: en/git-p4.txt:600
 #, no-wrap
-msgid "git-remote-ext(1)"
+msgid "git-p4.largeFileSystem"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-ext.txt:7
-msgid "git-remote-ext - Bridge smart transport to external command."
+#: en/git-p4.txt:606
+msgid ""
+"Specify the system that is used for large (binary) files. Please note that "
+"large file systems do not support the 'git p4 submit' command.  Only Git LFS "
+"is implemented right now (see https://git-lfs.github.com/ for more "
+"information). Download and install the Git LFS command line extension to use "
+"this option and configure it like this:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-remote-ext.txt:12
+#. type: delimited block -
+#: en/git-p4.txt:609
 #, no-wrap
-msgid "git remote add <nick> \"ext::<command>[ <arguments>...]\"\n"
+msgid "git config       git-p4.largeFileSystem GitLFS\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-remote-ext.txt:17
-msgid ""
-"This remote helper uses the specified '<command>' to connect to a remote Git "
-"server."
+#. type: Labeled list
+#: en/git-p4.txt:611
+#, no-wrap
+msgid "git-p4.largeFileExtensions"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-ext.txt:23
+#: en/git-p4.txt:614
 msgid ""
-"Data written to stdin of the specified '<command>' is assumed to be sent to "
-"a git:// server, git-upload-pack, git-receive-pack or git-upload-archive "
-"(depending on situation), and data read from stdout of <command> is assumed "
-"to be received from the same service."
+"All files matching a file extension in the list will be processed by the "
+"large file system. Do not prefix the extensions with '.'."
 msgstr ""
 
-#. type: Plain text
-#: en/git-remote-ext.txt:25
-msgid "Command and arguments are separated by an unescaped space."
+#. type: Labeled list
+#: en/git-p4.txt:615
+#, no-wrap
+msgid "git-p4.largeFileThreshold"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-ext.txt:27
-msgid "The following sequences have a special meaning:"
+#: en/git-p4.txt:619
+msgid ""
+"All files with an uncompressed size exceeding the threshold will be "
+"processed by the large file system. By default the threshold is defined in "
+"bytes. Add the suffix k, m, or g to change the unit."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote-ext.txt:28
+#: en/git-p4.txt:620
 #, no-wrap
-msgid "'% '"
+msgid "git-p4.largeFileCompressedThreshold"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-ext.txt:30
-msgid "Literal space in command or argument."
+#: en/git-p4.txt:625
+msgid ""
+"All files with a compressed size exceeding the threshold will be processed "
+"by the large file system. This option might slow down your clone/sync "
+"process. By default the threshold is defined in bytes. Add the suffix k, m, "
+"or g to change the unit."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote-ext.txt:31
+#: en/git-p4.txt:626
 #, no-wrap
-msgid "'%%'"
+msgid "git-p4.largeFilePush"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-ext.txt:33
-msgid "Literal percent sign."
+#: en/git-p4.txt:629
+msgid ""
+"Boolean variable which defines if large files are automatically pushed to a "
+"server."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote-ext.txt:34
+#: en/git-p4.txt:630
 #, no-wrap
-msgid "'%s'"
+msgid "git-p4.keepEmptyCommits"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-ext.txt:37
+#: en/git-p4.txt:633
 msgid ""
-"Replaced with name (receive-pack, upload-pack, or upload-archive) of the "
-"service Git wants to invoke."
+"A changelist that contains only excluded files will be imported as an empty "
+"commit if this boolean option is set to true."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote-ext.txt:38
+#: en/git-p4.txt:634
 #, no-wrap
-msgid "'%S'"
+msgid "git-p4.mapUser"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-ext.txt:42
+#: en/git-p4.txt:637
 msgid ""
-"Replaced with long name (git-receive-pack, git-upload-pack, or "
-"git-upload-archive) of the service Git wants to invoke."
+"Map a P4 user to a name and email address in Git. Use a string with the "
+"following format to create a mapping:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-remote-ext.txt:43
+#. type: delimited block -
+#: en/git-p4.txt:640
 #, no-wrap
-msgid "'%G' (must be the first characters in an argument)"
+msgid "git config --add git-p4.mapUser \"p4user = First Last <mail@address.com>\"\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-ext.txt:49
+#: en/git-p4.txt:644
 msgid ""
-"This argument will not be passed to '<command>'. Instead, it will cause the "
-"helper to start by sending git:// service requests to the remote side with "
-"the service field set to an appropriate value and the repository field set "
-"to rest of the argument. Default is not to send such a request."
+"A mapping will override any user information from P4. Mappings for multiple "
+"P4 user can be defined."
 msgstr ""
 
-#. type: Plain text
-#: en/git-remote-ext.txt:52
-msgid "This is useful if remote side is git:// server accessed over some tunnel."
+#. type: Title ~
+#: en/git-p4.txt:646
+#, no-wrap
+msgid "Submit variables"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote-ext.txt:53
+#: en/git-p4.txt:647
 #, no-wrap
-msgid "'%V' (must be first characters in argument)"
+msgid "git-p4.detectRenames"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-ext.txt:57
+#: en/git-p4.txt:650
 msgid ""
-"This argument will not be passed to '<command>'. Instead it sets the vhost "
-"field in the git:// service request (to rest of the argument).  Default is "
-"not to send vhost in such request (if sent)."
+"Detect renames.  See linkgit:git-diff[1].  This can be true, false, or a "
+"score as expected by 'git diff -M'."
 msgstr ""
 
-#. type: Title -
-#: en/git-remote-ext.txt:59
+#. type: Labeled list
+#: en/git-p4.txt:651
 #, no-wrap
-msgid "ENVIRONMENT VARIABLES:"
+msgid "git-p4.detectCopies"
+msgstr ""
+
+#. type: Plain text
+#: en/git-p4.txt:654
+msgid ""
+"Detect copies.  See linkgit:git-diff[1].  This can be true, false, or a "
+"score as expected by 'git diff -C'."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote-ext.txt:61 en/git-remote-fd.txt:33
+#: en/git-p4.txt:655
 #, no-wrap
-msgid "GIT_TRANSLOOP_DEBUG"
+msgid "git-p4.detectCopiesHarder"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-ext.txt:63 en/git-remote-fd.txt:35
-msgid "If set, prints debugging information about various reads/writes."
+#: en/git-p4.txt:657
+msgid "Detect copies harder.  See linkgit:git-diff[1].  A boolean."
 msgstr ""
 
-#. type: Title -
-#: en/git-remote-ext.txt:65
+#. type: Labeled list
+#: en/git-p4.txt:658
 #, no-wrap
-msgid "ENVIRONMENT VARIABLES PASSED TO COMMAND:"
+msgid "git-p4.preserveUser"
+msgstr ""
+
+#. type: Plain text
+#: en/git-p4.txt:661
+msgid ""
+"On submit, re-author changes to reflect the Git author, regardless of who "
+"invokes 'git p4 submit'."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote-ext.txt:67
+#: en/git-p4.txt:662
 #, no-wrap
-msgid "GIT_EXT_SERVICE"
+msgid "git-p4.allowMissingP4Users"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-ext.txt:70
+#: en/git-p4.txt:666
 msgid ""
-"Set to long name (git-upload-pack, etc...) of service helper needs to "
-"invoke."
+"When 'preserveUser' is true, 'git p4' normally dies if it cannot find an "
+"author in the p4 user map.  This setting submits the change regardless."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote-ext.txt:71
+#: en/git-p4.txt:667
 #, no-wrap
-msgid "GIT_EXT_SERVICE_NOPREFIX"
+msgid "git-p4.skipSubmitEdit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-ext.txt:74
-msgid "Set to long name (upload-pack, etc...) of service helper needs to invoke."
+#: en/git-p4.txt:671
+msgid ""
+"The submit process invokes the editor before each p4 change is submitted.  "
+"If this setting is true, though, the editing step is skipped."
 msgstr ""
 
-#. type: Title -
-#: en/git-remote-ext.txt:77
+#. type: Labeled list
+#: en/git-p4.txt:672
 #, no-wrap
-msgid "EXAMPLES:"
+msgid "git-p4.skipSubmitEditCheck"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-ext.txt:82
+#: en/git-p4.txt:676
 msgid ""
-"This remote helper is transparently used by Git when you use commands such "
-"as \"git fetch <URL>\", \"git clone <URL>\", , \"git push <URL>\" or \"git "
-"remote add <nick> <URL>\", where <URL> begins with `ext::`.  Examples:"
+"After editing the p4 change message, 'git p4' makes sure that the "
+"description really was changed by looking at the file modification time.  "
+"This option disables that test."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote-ext.txt:83
+#: en/git-p4.txt:677
 #, no-wrap
-msgid "\"ext::ssh -i /home/foo/.ssh/somekey user&#64;host.example %S 'foo/repo'\""
+msgid "git-p4.allowSubmit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-ext.txt:87
+#: en/git-p4.txt:683
 msgid ""
-"Like host.example:foo/repo, but use /home/foo/.ssh/somekey as keypair and "
-"user as user on remote side. This avoids needing to edit .ssh/config."
+"By default, any branch can be used as the source for a 'git p4 submit' "
+"operation.  This configuration variable, if set, permits only the named "
+"branches to be used as submit sources.  Branch names must be the short names "
+"(no \"refs/heads/\"), and should be separated by commas (\",\"), with no "
+"spaces."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote-ext.txt:88
+#: en/git-p4.txt:684
 #, no-wrap
-msgid "\"ext::socat -t3600 - ABSTRACT-CONNECT:/git-server %G/somerepo\""
+msgid "git-p4.skipUserNameCheck"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-ext.txt:91
+#: en/git-p4.txt:688
 msgid ""
-"Represents repository with path /somerepo accessible over git protocol at "
-"abstract namespace address /git-server."
+"If the user running 'git p4 submit' does not exist in the p4 user map, 'git "
+"p4' exits.  This option can be used to force submission regardless."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote-ext.txt:92
+#: en/git-p4.txt:689
 #, no-wrap
-msgid "\"ext::git-server-alias foo %G/repo\""
+msgid "git-p4.attemptRCSCleanup"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-ext.txt:98
+#: en/git-p4.txt:694
 msgid ""
-"Represents a repository with path /repo accessed using the helper program "
-"\"git-server-alias foo\".  The path to the repository and type of request "
-"are not passed on the command line but as part of the protocol stream, as "
-"usual with git:// protocol."
+"If enabled, 'git p4 submit' will attempt to cleanup RCS keywords ($Header$, "
+"etc). These would otherwise cause merge conflicts and prevent the submit "
+"going ahead. This option should be considered experimental at present."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote-ext.txt:99
+#: en/git-p4.txt:695
 #, no-wrap
-msgid "\"ext::git-server-alias foo %G/repo %Vfoo\""
+msgid "git-p4.exportLabels"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-ext.txt:105
-msgid ""
-"Represents a repository with path /repo accessed using the helper program "
-"\"git-server-alias foo\".  The hostname for the remote server passed in the "
-"protocol stream will be \"foo\" (this allows multiple virtual Git servers to "
-"share a link-level address)."
+#: en/git-p4.txt:697
+msgid "Export Git tags to p4 labels, as per --export-labels."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote-ext.txt:106
+#: en/git-p4.txt:698
 #, no-wrap
-msgid "\"ext::git-server-alias foo %G/repo% with% spaces %Vfoo\""
+msgid "git-p4.labelExportRegexp"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-ext.txt:112
+#: en/git-p4.txt:701
 msgid ""
-"Represents a repository with path '/repo with spaces' accessed using the "
-"helper program \"git-server-alias foo\".  The hostname for the remote server "
-"passed in the protocol stream will be \"foo\" (this allows multiple virtual "
-"Git servers to share a link-level address)."
+"Only p4 labels matching this regular expression will be exported. The "
+"default value is '[a-zA-Z0-9_\\-.]+$'."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote-ext.txt:113
+#: en/git-p4.txt:702
 #, no-wrap
-msgid "\"ext::git-ssl foo.example /bar\""
+msgid "git-p4.conflict"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-ext.txt:118
+#: en/git-p4.txt:705
 msgid ""
-"Represents a repository accessed using the helper program \"git-ssl "
-"foo.example /bar\".  The type of request can be determined by the helper "
-"using environment variables (see above)."
+"Specify submit behavior when a conflict with p4 is found, as per --"
+"conflict.  The default behavior is 'ask'."
 msgstr ""
 
-#. type: Plain text
-#: en/git-remote-ext.txt:122 en/git-remote-fd.txt:56 en/git-remote-testgit.txt:27
-msgid "linkgit:gitremote-helpers[1]"
-msgstr ""
-
-#. type: Title =
-#: en/git-remote-fd.txt:2
+#. type: Labeled list
+#: en/git-p4.txt:706
 #, no-wrap
-msgid "git-remote-fd(1)"
+msgid "git-p4.disableRebase"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-fd.txt:7
-msgid "git-remote-fd - Reflect smart transport stream back to caller"
+#: en/git-p4.txt:708
+msgid "Do not rebase the tree against p4/master following a submit."
 msgstr ""
 
-#. type: Plain text
-#: en/git-remote-fd.txt:11
-msgid "\"fd::<infd>[,<outfd>][/<anything>]\" (as URL)"
+#. type: Labeled list
+#: en/git-p4.txt:709
+#, no-wrap
+msgid "git-p4.disableP4Sync"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-fd.txt:17
+#: en/git-p4.txt:711
 msgid ""
-"This helper uses specified file descriptors to connect to a remote Git "
-"server.  This is not meant for end users but for programs and scripts "
-"calling git fetch, push or archive."
+"Do not sync p4/master with Perforce following a submit. Implies git-p4."
+"disableRebase."
+msgstr ""
+
+#. type: Title -
+#: en/git-p4.txt:713
+#, no-wrap
+msgid "IMPLEMENTATION DETAILS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-fd.txt:23
-msgid ""
-"If only <infd> is given, it is assumed to be a bidirectional socket "
-"connected to remote Git server (git-upload-pack, git-receive-pack or "
-"git-upload-archive). If both <infd> and <outfd> are given, they are assumed "
-"to be pipes connected to a remote Git server (<infd> being the inbound pipe "
-"and <outfd> being the outbound pipe."
+#: en/git-p4.txt:715
+msgid "Changesets from p4 are imported using Git fast-import."
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-fd.txt:26
+#: en/git-p4.txt:717
 msgid ""
-"It is assumed that any handshaking procedures have already been completed "
-"(such as sending service request for git://) before this helper is started."
+"Cloning or syncing does not require a p4 client; file contents are collected "
+"using 'p4 print'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-fd.txt:30
+#: en/git-p4.txt:720
 msgid ""
-"<anything> can be any string. It is ignored. It is meant for providing "
-"information to user in the URL in case that URL is displayed in some "
-"context."
+"Submitting requires a p4 client, which is not in the same location as the "
+"Git repository.  Patches are applied, one at a time, to this p4 client and "
+"submitted from there."
 msgstr ""
 
-#. type: Title -
-#: en/git-remote-fd.txt:32
-#, no-wrap
-msgid "ENVIRONMENT VARIABLES"
+#. type: Plain text
+#: en/git-p4.txt:723
+msgid ""
+"Each commit imported by 'git p4' has a line at the end of the log message "
+"indicating the p4 depot location and change number.  This line is used by "
+"later 'git p4 sync' operations to know which p4 changes are new."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-remote-fd.txt:38
+#. type: Title =
+#: en/git-pack-objects.txt:2
 #, no-wrap
-msgid "`git fetch fd::17 master`"
+msgid "git-pack-objects(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-fd.txt:41
-msgid "Fetch master, using file descriptor #17 to communicate with git-upload-pack."
+#: en/git-pack-objects.txt:7
+msgid "git-pack-objects - Create a packed archive of objects"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-remote-fd.txt:42
+#. type: Plain text
+#: en/git-pack-objects.txt:18
 #, no-wrap
-msgid "`git fetch fd::17/foo master`"
+msgid ""
+"'git pack-objects' [-q | --progress | --all-progress] [--all-progress-implied]\n"
+"\t[--no-reuse-delta] [--delta-base-offset] [--non-empty]\n"
+"\t[--local] [--incremental] [--window=<n>] [--depth=<n>]\n"
+"\t[--revs [--unpacked | --all]] [--keep-pack=<pack-name>]\n"
+"\t[--stdout [--filter=<filter-spec>] | base-name]\n"
+"\t[--shallow] [--keep-true-parents] [--sparse] < object-list\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-remote-fd.txt:45
-#, no-wrap
-msgid "`git push fd::7,8 master (as URL)`"
+#. type: Plain text
+#: en/git-pack-objects.txt:25
+msgid ""
+"Reads list of objects from the standard input, and writes either one or more "
+"packed archives with the specified base-name to disk, or a packed archive to "
+"the standard output."
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-fd.txt:49
+#: en/git-pack-objects.txt:31
 msgid ""
-"Push master, using file descriptor #7 to read data from git-receive-pack and "
-"file descriptor #8 to write data to same service."
+"A packed archive is an efficient way to transfer a set of objects between "
+"two repositories as well as an access efficient archival format.  In a "
+"packed archive, an object is either stored as a compressed whole or as a "
+"difference from some other object.  The latter is often called a delta."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-remote-fd.txt:50
-#, no-wrap
-msgid "`git push fd::7,8/bar master`"
+#. type: Plain text
+#: en/git-pack-objects.txt:35
+msgid ""
+"The packed archive format (.pack) is designed to be self-contained so that "
+"it can be unpacked without any further information. Therefore, each object "
+"that a delta depends upon must be present within the pack."
 msgstr ""
 
-#. type: Title =
-#: en/git-remote-testgit.txt:2
-#, no-wrap
-msgid "git-remote-testgit(1)"
+#. type: Plain text
+#: en/git-pack-objects.txt:41
+msgid ""
+"A pack index file (.idx) is generated for fast, random access to the objects "
+"in the pack. Placing both the index file (.idx) and the packed archive (."
+"pack) in the pack/ subdirectory of $GIT_OBJECT_DIRECTORY (or any of the "
+"directories on $GIT_ALTERNATE_OBJECT_DIRECTORIES)  enables Git to read from "
+"the pack archive."
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-testgit.txt:7
-msgid "git-remote-testgit - Example remote-helper"
+#: en/git-pack-objects.txt:47
+msgid ""
+"The 'git unpack-objects' command can read the packed archive and expand the "
+"objects contained in the pack into \"one-file one-object\" format; this is "
+"typically done by the smart-pull commands when a pack is created on-the-fly "
+"for efficient network transport by their peers."
 msgstr ""
 
-#. type: Plain text
-#: en/git-remote-testgit.txt:13
+#. type: Labeled list
+#: en/git-pack-objects.txt:51
 #, no-wrap
-msgid "git clone testgit::<source-repo> [<destination>]\n"
+msgid "base-name"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-testgit.txt:20
+#: en/git-pack-objects.txt:58
 msgid ""
-"This command is a simple remote-helper, that is used both as a testcase for "
-"the remote-helper functionality, and as an example to show remote-helper "
-"authors one possible implementation."
+"Write into pairs of files (.pack and .idx), using <base-name> to determine "
+"the name of the created file.  When this option is used, the two files in a "
+"pair are written in <base-name>-<SHA-1>.{pack,idx} files.  <SHA-1> is a hash "
+"based on the pack content and is written to the standard output of the "
+"command."
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote-testgit.txt:23
+#: en/git-pack-objects.txt:62
 msgid ""
-"The best way to learn more is to read the comments and source code in "
-"'git-remote-testgit'."
+"Write the pack contents (what would have been written to .pack file) out to "
+"the standard output."
 msgstr ""
 
-#. type: Title =
-#: en/git-remote.txt:2
+#. type: Labeled list
+#: en/git-pack-objects.txt:63
 #, no-wrap
-msgid "git-remote(1)"
+msgid "--revs"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:7
-msgid "git-remote - Manage set of tracked repositories"
+#: en/git-pack-objects.txt:71
+msgid ""
+"Read the revision arguments from the standard input, instead of individual "
+"object names.  The revision arguments are processed the same way as 'git rev-"
+"list' with the `--objects` flag uses its `commit` arguments to build the "
+"list of objects it outputs.  The objects on the resulting list are packed.  "
+"Besides revisions, `--not` or `--shallow <SHA-1>` lines are also accepted."
 msgstr ""
 
-#. type: Plain text
-#: en/git-remote.txt:25
+#. type: Labeled list
+#: en/git-pack-objects.txt:72 en/rev-list-options.txt:707
 #, no-wrap
-msgid ""
-"'git remote' [-v | --verbose]\n"
-"'git remote add' [-t <branch>] [-m <master>] [-f] [--[no-]tags] "
-"[--mirror=<fetch|push>] <name> <url>\n"
-"'git remote rename' <old> <new>\n"
-"'git remote remove' <name>\n"
-"'git remote set-head' <name> (-a | --auto | -d | --delete | <branch>)\n"
-"'git remote set-branches' [--add] <name> <branch>...\n"
-"'git remote get-url' [--push] [--all] <name>\n"
-"'git remote set-url' [--push] <name> <newurl> [<oldurl>]\n"
-"'git remote set-url --add' [--push] <name> <newurl>\n"
-"'git remote set-url --delete' [--push] <name> <url>\n"
-"'git remote' [-v | --verbose] 'show' [-n] <name>...\n"
-"'git remote prune' [-n | --dry-run] <name>...\n"
-"'git remote' [-v | --verbose] 'update' [-p | --prune] [(<group> | "
-"<remote>)...]\n"
+msgid "--unpacked"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:30
-msgid "Manage the set of repositories (\"remotes\") whose branches you track."
+#: en/git-pack-objects.txt:76
+msgid ""
+"This implies `--revs`.  When processing the list of revision arguments read "
+"from the standard input, limit the objects packed to those that are not "
+"already packed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:39
+#: en/git-pack-objects.txt:82
 msgid ""
-"Be a little more verbose and show remote url after name.  NOTE: This must be "
-"placed between `remote` and `subcommand`."
+"This implies `--revs`.  In addition to the list of revision arguments read "
+"from the standard input, pretend as if all refs under `refs/` are specified "
+"to be included."
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:46
+#: en/git-pack-objects.txt:87
 msgid ""
-"With no arguments, shows a list of existing remotes.  Several subcommands "
-"are available to perform operations on the remotes."
+"Include unasked-for annotated tags if the object they reference was included "
+"in the resulting packfile.  This can be useful to send new tags to native "
+"Git clients."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote.txt:47
+#: en/git-pack-objects.txt:88 en/git-repack.txt:89
 #, no-wrap
-msgid "'add'"
+msgid "--window=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:52
+#: en/git-pack-objects.txt:99
 msgid ""
-"Adds a remote named <name> for the repository at <url>.  The command `git "
-"fetch <name>` can then be used to create and update remote-tracking branches "
-"<name>/<branch>."
+"These two options affect how the objects contained in the pack are stored "
+"using delta compression.  The objects are first internally sorted by type, "
+"size and optionally names and compared against the other objects within --"
+"window to see if using delta compression saves space.  --depth limits the "
+"maximum delta depth; making it too deep affects the performance on the "
+"unpacker side, because delta data needs to be applied that many times to get "
+"to the necessary object."
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:55
+#: en/git-pack-objects.txt:102 en/git-repack.txt:101
 msgid ""
-"With `-f` option, `git fetch <name>` is run immediately after the remote "
-"information is set up."
+"The default value for --window is 10 and --depth is 50. The maximum depth is "
+"4095."
 msgstr ""
 
-#. type: Plain text
-#: en/git-remote.txt:58
-msgid ""
-"With `--tags` option, `git fetch <name>` imports every tag from the remote "
-"repository."
+#. type: Labeled list
+#: en/git-pack-objects.txt:103 en/git-repack.txt:105
+#, no-wrap
+msgid "--window-memory=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:61
+#: en/git-pack-objects.txt:113
 msgid ""
-"With `--no-tags` option, `git fetch <name>` does not import tags from the "
-"remote repository."
+"This option provides an additional limit on top of `--window`; the window "
+"size will dynamically scale down so as to not take up more than '<n>' bytes "
+"in memory.  This is useful in repositories with a mix of large and small "
+"objects to not run out of memory with a large window, but still be able to "
+"take advantage of the large window for the smaller objects.  The size can be "
+"suffixed with \"k\", \"m\", or \"g\".  `--window-memory=0` makes memory "
+"usage unlimited.  The default is taken from the `pack.windowMemory` "
+"configuration variable."
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:64
+#: en/git-pack-objects.txt:125
 msgid ""
-"By default, only tags on fetched branches are imported (see "
-"linkgit:git-fetch[1])."
+"In unusual scenarios, you may not be able to create files larger than a "
+"certain size on your filesystem, and this option can be used to tell the "
+"command to split the output packfile into multiple independent packfiles, "
+"each not larger than the given size. The size can be suffixed with \"k\", \"m"
+"\", or \"g\". The minimum size allowed is limited to 1 MiB.  This option "
+"prevents the creation of a bitmap index.  The default is unlimited, unless "
+"the config variable `pack.packSizeLimit` is set."
 msgstr ""
 
-#. type: Plain text
-#: en/git-remote.txt:70
-msgid ""
-"With `-t <branch>` option, instead of the default glob refspec for the "
-"remote to track all branches under the `refs/remotes/<name>/` namespace, a "
-"refspec to track only `<branch>` is created.  You can give more than one `-t "
-"<branch>` to track multiple branches without grabbing all branches."
+#. type: Labeled list
+#: en/git-pack-objects.txt:126
+#, no-wrap
+msgid "--honor-pack-keep"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:73
+#: en/git-pack-objects.txt:130
 msgid ""
-"With `-m <master>` option, a symbolic-ref `refs/remotes/<name>/HEAD` is set "
-"up to point at remote's `<master>` branch. See also the set-head command."
+"This flag causes an object already in a local pack that has a .keep file to "
+"be ignored, even if it would have otherwise been packed."
 msgstr ""
 
-#. type: Plain text
-#: en/git-remote.txt:79
-msgid ""
-"When a fetch mirror is created with `--mirror=fetch`, the refs will not be "
-"stored in the 'refs/remotes/' namespace, but rather everything in 'refs/' on "
-"the remote will be directly mirrored into 'refs/' in the local "
-"repository. This option only makes sense in bare repositories, because a "
-"fetch would overwrite any local commits."
+#. type: Labeled list
+#: en/git-pack-objects.txt:131 en/git-repack.txt:143
+#, no-wrap
+msgid "--keep-pack=<pack-name>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:82
+#: en/git-pack-objects.txt:137
 msgid ""
-"When a push mirror is created with `--mirror=push`, then `git push` will "
-"always behave as if `--mirror` was passed."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-remote.txt:83
-#, no-wrap
-msgid "'rename'"
+"This flag causes an object already in the given pack to be ignored, even if "
+"it would have otherwise been packed. `<pack-name>` is the the pack file name "
+"without leading directory (e.g. `pack-123.pack`). The option could be "
+"specified multiple times to keep multiple packs."
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:87
+#: en/git-pack-objects.txt:141
 msgid ""
-"Rename the remote named <old> to <new>. All remote-tracking branches and "
-"configuration settings for the remote are updated."
+"This flag causes an object already in a pack to be ignored even if it would "
+"have otherwise been packed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:91
+#: en/git-pack-objects.txt:146
 msgid ""
-"In case <old> and <new> are the same, and <old> is a file under "
-"`$GIT_DIR/remotes` or `$GIT_DIR/branches`, the remote is converted to the "
-"configuration file format."
+"This flag causes an object that is borrowed from an alternate object store "
+"to be ignored even if it would have otherwise been packed."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote.txt:92
+#: en/git-pack-objects.txt:147
 #, no-wrap
-msgid "'remove'"
+msgid "--non-empty"
+msgstr ""
+
+#. type: Plain text
+#: en/git-pack-objects.txt:150
+msgid "Only create a packed archive if it would contain at least one object."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote.txt:93
+#: en/git-pack-objects.txt:157
 #, no-wrap
-msgid "'rm'"
+msgid "--all-progress"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:97
+#: en/git-pack-objects.txt:167
 msgid ""
-"Remove the remote named <name>. All remote-tracking branches and "
-"configuration settings for the remote are removed."
+"When --stdout is specified then progress report is displayed during the "
+"object count and compression phases but inhibited during the write-out "
+"phase. The reason is that in some cases the output stream is directly linked "
+"to another command which may wish to display progress status of its own as "
+"it processes incoming pack data.  This flag is like --progress except that "
+"it forces progress report for the write-out phase as well even if --stdout "
+"is used."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote.txt:98
+#: en/git-pack-objects.txt:168
 #, no-wrap
-msgid "'set-head'"
+msgid "--all-progress-implied"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:107
+#: en/git-pack-objects.txt:172
 msgid ""
-"Sets or deletes the default branch (i.e. the target of the symbolic-ref "
-"`refs/remotes/<name>/HEAD`) for the named remote. Having a default branch "
-"for a remote is not required, but allows the name of the remote to be "
-"specified in lieu of a specific branch. For example, if the default branch "
-"for `origin` is set to `master`, then `origin` may be specified wherever you "
-"would normally specify `origin/master`."
+"This is used to imply --all-progress whenever progress display is "
+"activated.  Unlike --all-progress this flag doesn't actually force any "
+"progress display by itself."
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:109
+#: en/git-pack-objects.txt:176
 msgid ""
-"With `-d` or `--delete`, the symbolic ref `refs/remotes/<name>/HEAD` is "
-"deleted."
+"This flag makes the command not to report its progress on the standard error "
+"stream."
 msgstr ""
 
-#. type: Plain text
-#: en/git-remote.txt:116
-msgid ""
-"With `-a` or `--auto`, the remote is queried to determine its `HEAD`, then "
-"the symbolic-ref `refs/remotes/<name>/HEAD` is set to the same branch. e.g., "
-"if the remote `HEAD` is pointed at `next`, \"`git remote set-head origin "
-"-a`\" will set the symbolic-ref `refs/remotes/origin/HEAD` to "
-"`refs/remotes/origin/next`. This will only work if "
-"`refs/remotes/origin/next` already exists; if not it must be fetched first."
+#. type: Labeled list
+#: en/git-pack-objects.txt:177
+#, no-wrap
+msgid "--no-reuse-delta"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:121
+#: en/git-pack-objects.txt:183
 msgid ""
-"Use `<branch>` to set the symbolic-ref `refs/remotes/<name>/HEAD` "
-"explicitly. e.g., \"git remote set-head origin master\" will set the "
-"symbolic-ref `refs/remotes/origin/HEAD` to "
-"`refs/remotes/origin/master`. This will only work if "
-"`refs/remotes/origin/master` already exists; if not it must be fetched "
-"first."
+"When creating a packed archive in a repository that has existing packs, the "
+"command reuses existing deltas.  This sometimes results in a slightly "
+"suboptimal pack.  This flag tells the command not to reuse existing deltas "
+"but compute them from scratch."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote.txt:123
+#: en/git-pack-objects.txt:184
 #, no-wrap
-msgid "'set-branches'"
+msgid "--no-reuse-object"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:128
+#: en/git-pack-objects.txt:190
 msgid ""
-"Changes the list of branches tracked by the named remote.  This can be used "
-"to track a subset of the available remote branches after the initial setup "
-"for a remote."
+"This flag tells the command not to reuse existing object data at all, "
+"including non deltified object, forcing recompression of everything.  This "
+"implies --no-reuse-delta. Useful only in the obscure case where wholesale "
+"enforcement of a different compression level on the packed data is desired."
 msgstr ""
 
-#. type: Plain text
-#: en/git-remote.txt:131
-msgid ""
-"The named branches will be interpreted as if specified with the `-t` option "
-"on the 'git remote add' command line."
+#. type: Labeled list
+#: en/git-pack-objects.txt:191
+#, no-wrap
+msgid "--compression=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:134
+#: en/git-pack-objects.txt:198
 msgid ""
-"With `--add`, instead of replacing the list of currently tracked branches, "
-"adds to that list."
+"Specifies compression level for newly-compressed data in the generated "
+"pack.  If not specified, pack compression level is determined first by pack."
+"compression, then by core.compression, and defaults to -1, the zlib default, "
+"if neither is set.  Add --no-reuse-object if you want to force a uniform "
+"compression level on all data no matter the source."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote.txt:135
+#: en/git-pack-objects.txt:199 en/git-show-branch.txt:67
+#: en/rev-list-options.txt:342 en/rev-list-options.txt:475
 #, no-wrap
-msgid "'get-url'"
+msgid "--sparse"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:139
+#: en/git-pack-objects.txt:207
 msgid ""
-"Retrieves the URLs for a remote. Configurations for `insteadOf` and "
-"`pushInsteadOf` are expanded here. By default, only the first URL is listed."
+"Use the \"sparse\" algorithm to determine which objects to include in the "
+"pack, when combined with the \"--revs\" option. This algorithm only walks "
+"trees that appear in paths that introduce new objects.  This can have "
+"significant performance benefits when computing a pack to send a small "
+"change. However, it is possible that extra objects are added to the pack-"
+"file if the included commits contain certain types of direct renames."
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:141
-msgid "With `--push`, push URLs are queried rather than fetch URLs."
+#: en/git-pack-objects.txt:212
+msgid ""
+"Create a \"thin\" pack by omitting the common objects between a sender and a "
+"receiver in order to reduce network transfer. This option only makes sense "
+"in conjunction with --stdout."
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:143
-msgid "With `--all`, all URLs for the remote will be listed."
+#: en/git-pack-objects.txt:217
+msgid ""
+"Note: A thin pack violates the packed archive format by omitting required "
+"objects and is thus unusable by Git without making it self-contained. Use "
+"`git index-pack --fix-thin` (see linkgit:git-index-pack[1]) to restore the "
+"self-contained property."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote.txt:144
+#: en/git-pack-objects.txt:218
 #, no-wrap
-msgid "'set-url'"
+msgid "--shallow"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:149
+#: en/git-pack-objects.txt:222
 msgid ""
-"Changes URLs for the remote. Sets first URL for remote <name> that matches "
-"regex <oldurl> (first URL if no <oldurl> is given) to <newurl>. If <oldurl> "
-"doesn't match any URL, an error occurs and nothing is changed."
+"Optimize a pack that will be provided to a client with a shallow "
+"repository.  This option, combined with --thin, can result in a smaller pack "
+"at the cost of speed."
 msgstr ""
 
-#. type: Plain text
-#: en/git-remote.txt:151
-msgid "With `--push`, push URLs are manipulated instead of fetch URLs."
+#. type: Labeled list
+#: en/git-pack-objects.txt:223
+#, no-wrap
+msgid "--delta-base-offset"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:153
-msgid "With `--add`, instead of changing existing URLs, new URL is added."
+#: en/git-pack-objects.txt:233
+msgid ""
+"A packed archive can express the base object of a delta as either a 20-byte "
+"object name or as an offset in the stream, but ancient versions of Git don't "
+"understand the latter.  By default, 'git pack-objects' only uses the former "
+"format for better compatibility.  This option allows the command to use the "
+"latter format for compactness.  Depending on the average delta chain length, "
+"this option typically shrinks the resulting packfile by 3-5 per-cent."
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:157
+#: en/git-pack-objects.txt:238
 msgid ""
-"With `--delete`, instead of changing existing URLs, all URLs matching regex "
-"<url> are deleted for remote <name>.  Trying to delete all non-push URLs is "
-"an error."
+"Note: Porcelain commands such as `git gc` (see linkgit:git-gc[1]), `git "
+"repack` (see linkgit:git-repack[1]) pass this option by default in modern "
+"Git when they put objects in your repository into pack files.  So does `git "
+"bundle` (see linkgit:git-bundle[1]) when it creates a bundle."
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:164
+#: en/git-pack-objects.txt:248
 msgid ""
-"Note that the push URL and the fetch URL, even though they can be set "
-"differently, must still refer to the same place.  What you pushed to the "
-"push URL should be what you would see if you immediately fetched from the "
-"fetch URL.  If you are trying to fetch from one place (e.g. your upstream) "
-"and push to another (e.g.  your publishing repository), use two separate "
-"remotes."
+"Specifies the number of threads to spawn when searching for best delta "
+"matches.  This requires that pack-objects be compiled with pthreads "
+"otherwise this option is ignored with a warning.  This is meant to reduce "
+"packing time on multiprocessor machines.  The required amount of memory for "
+"the delta search window is however multiplied by the number of threads.  "
+"Specifying 0 will cause Git to auto-detect the number of CPU's and set the "
+"number of threads accordingly."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote.txt:166
+#: en/git-pack-objects.txt:254
 #, no-wrap
-msgid "'show'"
-msgstr ""
-
-#. type: Plain text
-#: en/git-remote.txt:169
-msgid "Gives some information about the remote <name>."
+msgid "--keep-true-parents"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:172
+#: en/git-pack-objects.txt:257
 msgid ""
-"With `-n` option, the remote heads are not queried first with `git ls-remote "
-"<name>`; cached information is used instead."
+"With this option, parents that are hidden by grafts are packed nevertheless."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote.txt:173
+#: en/git-pack-objects.txt:258 en/rev-list-options.txt:711
 #, no-wrap
-msgid "'prune'"
+msgid "--filter=<filter-spec>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:179
+#: en/git-pack-objects.txt:262
 msgid ""
-"Deletes all stale remote-tracking branches under <name>.  These stale "
-"branches have already been removed from the remote repository referenced by "
-"<name>, but are still locally available in \"remotes/<name>\"."
+"Requires `--stdout`.  Omits certain objects (usually blobs) from the "
+"resulting packfile.  See linkgit:git-rev-list[1] for valid `<filter-spec>` "
+"forms."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-pack-objects.txt:263 en/rev-list-options.txt:741
+#, no-wrap
+msgid "--no-filter"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:182
-msgid ""
-"With `--dry-run` option, report what branches will be pruned, but do not "
-"actually prune them."
+#: en/git-pack-objects.txt:265
+msgid "Turns off any previous `--filter=` argument."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-remote.txt:183
+#: en/git-pack-objects.txt:266 en/rev-list-options.txt:748
 #, no-wrap
-msgid "'update'"
+msgid "--missing=<missing-action>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:191
+#: en/git-pack-objects.txt:269 en/rev-list-options.txt:751
 msgid ""
-"Fetch updates for a named set of remotes in the repository as defined by "
-"remotes.<group>.  If a named group is not specified on the command line, the "
-"configuration parameter remotes.default will be used; if remotes.default is "
-"not defined, all remotes which do not have the configuration parameter "
-"remote.<name>.skipDefaultUpdate set to true will be updated.  (See "
-"linkgit:git-config[1])."
+"A debug option to help with future \"partial clone\" development.  This "
+"option specifies how missing objects are handled."
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:193
-msgid "With `--prune` option, prune all the remotes that are updated."
+#: en/git-pack-objects.txt:272
+msgid ""
+"The form '--missing=error' requests that pack-objects stop with an error if "
+"a missing object is encountered.  This is the default action."
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:201
+#: en/git-pack-objects.txt:276 en/rev-list-options.txt:758
 msgid ""
-"The remote configuration is achieved using the `remote.origin.url` and "
-"`remote.origin.fetch` configuration variables.  (See linkgit:git-config[1])."
+"The form '--missing=allow-any' will allow object traversal to continue if a "
+"missing object is encountered.  Missing objects will silently be omitted "
+"from the results."
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:206
-msgid "Add a new remote, fetch, and check out a branch from it"
+#: en/git-pack-objects.txt:280
+msgid ""
+"The form '--missing=allow-promisor' is like 'allow-any', but will only allow "
+"object traversal to continue for EXPECTED promisor missing objects.  "
+"Unexpected missing object will raise an error."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-remote.txt:231
+#. type: Labeled list
+#: en/git-pack-objects.txt:281 en/rev-list-options.txt:766
 #, no-wrap
-msgid ""
-"$ git remote\n"
-"origin\n"
-"$ git branch -r\n"
-"  origin/HEAD -> origin/master\n"
-"  origin/master\n"
-"$ git remote add staging git://git.kernel.org/.../gregkh/staging.git\n"
-"$ git remote\n"
-"origin\n"
-"staging\n"
-"$ git fetch staging\n"
-"...\n"
-"From git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging\n"
-" * [new branch]      master     -> staging/master\n"
-" * [new branch]      staging-linus -> staging/staging-linus\n"
-" * [new branch]      staging-next -> staging/staging-next\n"
-"$ git branch -r\n"
-"  origin/HEAD -> origin/master\n"
-"  origin/master\n"
-"  staging/master\n"
-"  staging/staging-linus\n"
-"  staging/staging-next\n"
-"$ git checkout -b staging staging/master\n"
-"...\n"
+msgid "--exclude-promisor-objects"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:234
-msgid "Imitate 'git clone' but track only selected branches"
+#: en/git-pack-objects.txt:287
+msgid ""
+"Omit objects that are known to be in the promisor remote.  (This option has "
+"the purpose of operating only on locally created objects, so that when we "
+"repack, we still maintain a distinction between locally created objects "
+"[without .promisor] and objects from the promisor remote [with .promisor].)  "
+"This is used with partial clone."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-remote.txt:241
+#. type: Labeled list
+#: en/git-pack-objects.txt:288 en/git-repack.txt:157
 #, no-wrap
+msgid "--keep-unreachable"
+msgstr ""
+
+#. type: Plain text
+#: en/git-pack-objects.txt:293
 msgid ""
-"$ mkdir project.git\n"
-"$ cd project.git\n"
-"$ git init\n"
-"$ git remote add -f -t master -m master origin git://example.com/git.git/\n"
-"$ git merge origin\n"
+"Objects unreachable from the refs in packs named with --unpacked= option are "
+"added to the resulting pack, in addition to the reachable objects that are "
+"not in packs marked with *.keep files. This implies `--revs`."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-pack-objects.txt:294
+#, no-wrap
+msgid "--pack-loose-unreachable"
 msgstr ""
 
 #. type: Plain text
-#: en/git-remote.txt:249
-msgid "linkgit:git-fetch[1] linkgit:git-branch[1] linkgit:git-config[1]"
+#: en/git-pack-objects.txt:297
+msgid ""
+"Pack unreachable loose objects (and their loose counterparts removed). This "
+"implies `--revs`."
 msgstr ""
 
-#. type: Title =
-#: en/git-repack.txt:2
+#. type: Labeled list
+#: en/git-pack-objects.txt:298
 #, no-wrap
-msgid "git-repack(1)"
+msgid "--unpack-unreachable"
 msgstr ""
 
 #. type: Plain text
-#: en/git-repack.txt:7
-msgid "git-repack - Pack unpacked objects in a repository"
+#: en/git-pack-objects.txt:300
+msgid "Keep unreachable objects in loose form. This implies `--revs`."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-pack-objects.txt:301 en/git-repack.txt:164
+#, no-wrap
+msgid "--delta-islands"
 msgstr ""
 
 #. type: Plain text
-#: en/git-repack.txt:13
+#: en/git-pack-objects.txt:304
+msgid "Restrict delta matches based on \"islands\". See DELTA ISLANDS below."
+msgstr ""
+
+#. type: Title -
+#: en/git-pack-objects.txt:307
 #, no-wrap
+msgid "DELTA ISLANDS"
+msgstr ""
+
+#. type: Plain text
+#: en/git-pack-objects.txt:319
 msgid ""
-"'git repack' [-a] [-A] [-d] [-f] [-F] [-l] [-n] [-q] [-b] [--window=<n>] "
-"[--depth=<n>]\n"
+"When possible, `pack-objects` tries to reuse existing on-disk deltas to "
+"avoid having to search for new ones on the fly. This is an important "
+"optimization for serving fetches, because it means the server can avoid "
+"inflating most objects at all and just send the bytes directly from disk. "
+"This optimization can't work when an object is stored as a delta against a "
+"base which the receiver does not have (and which we are not already "
+"sending). In that case the server \"breaks\" the delta and has to find a new "
+"one, which has a high CPU cost. Therefore it's important for performance "
+"that the set of objects in on-disk delta relationships match what a client "
+"would fetch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-repack.txt:20
+#: en/git-pack-objects.txt:324
 msgid ""
-"This command is used to combine all objects that do not currently reside in "
-"a \"pack\", into a pack.  It can also be used to re-organize existing packs "
-"into a single, more efficient pack."
+"In a normal repository, this tends to work automatically. The objects are "
+"mostly reachable from the branches and tags, and that's what clients fetch. "
+"Any deltas we find on the server are likely to be between objects the client "
+"has or will have."
 msgstr ""
 
 #. type: Plain text
-#: en/git-repack.txt:39
+#: en/git-pack-objects.txt:334
 msgid ""
-"Instead of incrementally packing the unpacked objects, pack everything "
-"referenced into a single pack.  Especially useful when packing a repository "
-"that is used for private development. Use with `-d`.  This will clean up the "
-"objects that `git prune` leaves behind, but `git fsck --full --dangling` "
-"shows as dangling."
+"But in some repository setups, you may have several related but separate "
+"groups of ref tips, with clients tending to fetch those groups "
+"independently. For example, imagine that you are hosting several \"forks\" "
+"of a repository in a single shared object store, and letting clients view "
+"them as separate repositories through `GIT_NAMESPACE` or separate repos "
+"using the alternates mechanism. A naive repack may find that the optimal "
+"delta for an object is against a base that is only found in another fork. "
+"But when a client fetches, they will not have the base object, and we'll "
+"have to find a new delta on the fly."
 msgstr ""
 
 #. type: Plain text
-#: en/git-repack.txt:43
+#: en/git-pack-objects.txt:340
 msgid ""
-"Note that users fetching over dumb protocols will have to fetch the whole "
-"new pack in order to get any contained object, no matter how many other "
-"objects in that pack they already have locally."
+"A similar situation may exist if you have many refs outside of `refs/heads/` "
+"and `refs/tags/` that point to related objects (e.g., `refs/pull` or `refs/"
+"changes` used by some hosting providers). By default, clients fetch only "
+"heads and tags, and deltas against objects found only in those other groups "
+"cannot be sent as-is."
 msgstr ""
 
 #. type: Plain text
-#: en/git-repack.txt:54
+#: en/git-pack-objects.txt:348
 msgid ""
-"Same as `-a`, unless `-d` is used.  Then any unreachable objects in a "
-"previous pack become loose, unpacked objects, instead of being left in the "
-"old pack.  Unreachable objects are never intentionally added to a pack, even "
-"when repacking.  This option prevents unreachable objects from being "
-"immediately deleted by way of being left in the old pack and then removed.  "
-"Instead, the loose unreachable objects will be pruned according to normal "
-"expiry rules with the next 'git gc' invocation. See linkgit:git-gc[1]."
+"Delta islands solve this problem by allowing you to group your refs into "
+"distinct \"islands\". Pack-objects computes which objects are reachable from "
+"which islands, and refuses to make a delta from an object `A` against a base "
+"which is not present in all of `A`'s islands. This results in slightly "
+"larger packs (because we miss some delta opportunities), but guarantees that "
+"a fetch of one island will not have to recompute deltas on the fly due to "
+"crossing island boundaries."
 msgstr ""
 
 #. type: Plain text
-#: en/git-repack.txt:60
+#: en/git-pack-objects.txt:354
 msgid ""
-"After packing, if the newly created packs make some existing packs "
-"redundant, remove the redundant packs.  Also run 'git prune-packed' to "
-"remove redundant loose object files."
+"When repacking with delta islands the delta window tends to get clogged with "
+"candidates that are forbidden by the config. Repacking with a big --window "
+"helps (and doesn't take as long as it otherwise might because we can reject "
+"some object pairs based on islands before doing any computation on the "
+"content)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-repack.txt:64
+#: en/git-pack-objects.txt:358
+msgid ""
+"Islands are configured via the `pack.island` option, which can be specified "
+"multiple times. Each value is a left-anchored regular expressions matching "
+"refnames. For example:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-pack-objects.txt:363
+#, no-wrap
 msgid ""
-"Pass the `--local` option to 'git pack-objects'. See "
-"linkgit:git-pack-objects[1]."
+"[pack]\n"
+"island = refs/heads/\n"
+"island = refs/tags/\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-repack.txt:68
+#: en/git-pack-objects.txt:370
 msgid ""
-"Pass the `--no-reuse-delta` option to `git-pack-objects`, see "
-"linkgit:git-pack-objects[1]."
+"puts heads and tags into an island (whose name is the empty string; see "
+"below for more on naming). Any refs which do not match those regular "
+"expressions (e.g., `refs/pull/123`) is not in any island. Any object which "
+"is reachable only from `refs/pull/` (but not heads or tags) is therefore not "
+"a candidate to be used as a base for `refs/heads/`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-repack.txt:72
+#: en/git-pack-objects.txt:378
 msgid ""
-"Pass the `--no-reuse-object` option to `git-pack-objects`, see "
-"linkgit:git-pack-objects[1]."
+"Refs are grouped into islands based on their \"names\", and two regexes that "
+"produce the same name are considered to be in the same island. The names are "
+"computed from the regexes by concatenating any capture groups from the "
+"regex, with a '-' dash in between. (And if there are no capture groups, then "
+"the name is the empty string, as in the above example.) This allows you to "
+"create arbitrary numbers of islands. Only up to 14 such capture groups are "
+"supported though."
 msgstr ""
 
 #. type: Plain text
-#: en/git-repack.txt:76
-msgid "Pass the `-q` option to 'git pack-objects'. See linkgit:git-pack-objects[1]."
+#: en/git-pack-objects.txt:382
+msgid ""
+"For example, imagine you store the refs for each fork in `refs/virtual/ID`, "
+"where `ID` is a numeric identifier. You might then configure:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-pack-objects.txt:388
+#, no-wrap
+msgid ""
+"[pack]\n"
+"island = refs/virtual/([0-9]+)/heads/\n"
+"island = refs/virtual/([0-9]+)/tags/\n"
+"island = refs/virtual/([0-9]+)/(pull)/\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-repack.txt:83
+#: en/git-pack-objects.txt:393
 msgid ""
-"Do not update the server information with 'git update-server-info'.  This "
-"option skips updating local catalog files needed to publish this repository "
-"(or a direct copy of it)  over HTTP or FTP.  See "
-"linkgit:git-update-server-info[1]."
+"That puts the heads and tags for each fork in their own island (named "
+"\"1234\" or similar), and the pull refs for each go into their own \"1234-"
+"pull\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-repack.txt:94
+#: en/git-pack-objects.txt:397
 msgid ""
-"These two options affect how the objects contained in the pack are stored "
-"using delta compression. The objects are first internally sorted by type, "
-"size and optionally names and compared against the other objects within "
-"`--window` to see if using delta compression saves space. `--depth` limits "
-"the maximum delta depth; making it too deep affects the performance on the "
-"unpacker side, because delta data needs to be applied that many times to get "
-"to the necessary object.  The default value for --window is 10 and --depth "
-"is 50."
+"Note that we pick a single island for each regex to go into, using \"last "
+"one wins\" ordering (which allows repo-specific config to take precedence "
+"over user-wide config, and so forth)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-repack.txt:107
+#: en/git-pack-objects.txt:403
 msgid ""
-"This option provides an additional limit on top of `--window`; the window "
-"size will dynamically scale down so as to not take up more than '<n>' bytes "
-"in memory.  This is useful in repositories with a mix of large and small "
-"objects to not run out of memory with a large window, but still be able to "
-"take advantage of the large window for the smaller objects.  The size can be "
-"suffixed with \"k\", \"m\", or \"g\".  `--window-memory=0` makes memory "
-"usage unlimited.  The default is taken from the `pack.windowMemory` "
-"configuration variable.  Note that the actual memory usage will be the limit "
-"multiplied by the number of threads used by linkgit:git-pack-objects[1]."
+"linkgit:git-rev-list[1] linkgit:git-repack[1] linkgit:git-prune-packed[1]"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-repack.txt:117
+#. type: Title =
+#: en/git-pack-redundant.txt:2
 #, no-wrap
-msgid "--write-bitmap-index"
+msgid "git-pack-redundant(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-repack.txt:123
-msgid ""
-"Write a reachability bitmap index as part of the repack. This only makes "
-"sense when used with `-a` or `-A`, as the bitmaps must be able to refer to "
-"all reachable objects. This option overrides the setting of "
-"`repack.writeBitmaps`.  This option has no effect if multiple packfiles are "
-"created."
+#: en/git-pack-redundant.txt:7
+msgid "git-pack-redundant - Find redundant pack files"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-repack.txt:124
+#. type: Plain text
+#: en/git-pack-redundant.txt:13
 #, no-wrap
-msgid "--pack-kept-objects"
+msgid "'git pack-redundant' [ --verbose ] [ --alt-odb ] < --all | .pack filename ... >\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-repack.txt:132
+#: en/git-pack-redundant.txt:19
 msgid ""
-"Include objects in `.keep` files when repacking.  Note that we still do not "
-"delete `.keep` packs after `pack-objects` finishes.  This means that we may "
-"duplicate objects, but this makes the option safe to use when there are "
-"concurrent pushes or fetches.  This option is generally only useful if you "
-"are writing bitmaps with `-b` or `repack.writeBitmaps`, as it ensures that "
-"the bitmapped packfile has the necessary objects."
+"This program computes which packs in your repository are redundant. The "
+"output is suitable for piping to `xargs rm` if you are in the root of the "
+"repository."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-repack.txt:133
-#, no-wrap
-msgid "--unpack-unreachable=<when>"
+#. type: Plain text
+#: en/git-pack-redundant.txt:24
+msgid ""
+"'git pack-redundant' accepts a list of objects on standard input. Any "
+"objects given will be ignored when checking which packs are required. This "
+"makes the following command useful when wanting to remove packs which "
+"contain unreachable objects."
 msgstr ""
 
 #. type: Plain text
-#: en/git-repack.txt:138
+#: en/git-pack-redundant.txt:27
 msgid ""
-"When loosening unreachable objects, do not bother loosening any objects "
-"older than `<when>`. This can be used to optimize out the write of any "
-"objects that would be immediately pruned by a follow-up `git prune`."
+"git fsck --full --unreachable | cut -d ' ' -f3 | \\ git pack-redundant --all "
+"| xargs rm"
+msgstr ""
+
+#. type: Plain text
+#: en/git-pack-redundant.txt:34
+msgid "Processes all packs. Any filenames on the command line are ignored."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-repack.txt:140
+#: en/git-pack-redundant.txt:35
 #, no-wrap
-msgid "--keep-unreachable"
+msgid "--alt-odb"
 msgstr ""
 
 #. type: Plain text
-#: en/git-repack.txt:145
+#: en/git-pack-redundant.txt:38
 msgid ""
-"When used with `-ad`, any unreachable objects from existing packs will be "
-"appended to the end of the packfile instead of being removed. In addition, "
-"any unreachable loose objects will be packed (and their loose counterparts "
-"removed)."
+"Don't require objects present in packs from alternate object directories to "
+"be present in local packs."
 msgstr ""
 
 #. type: Plain text
-#: en/git-repack.txt:158
-msgid ""
-"By default, the command passes `--delta-base-offset` option to 'git "
-"pack-objects'; this typically results in slightly smaller packs, but the "
-"generated packs are incompatible with versions of Git older than version "
-"1.4.4. If you need to share your repository with such ancient Git versions, "
-"either directly or via the dumb http protocol, then you need to set the "
-"configuration variable `repack.UseDeltaBaseOffset` to \"false\" and "
-"repack. Access from old Git versions over the native protocol is unaffected "
-"by this option as the conversion is performed on the fly as needed in that "
-"case."
+#: en/git-pack-redundant.txt:41
+msgid "Outputs some statistics to stderr. Has a small performance penalty."
 msgstr ""
 
 #. type: Plain text
-#: en/git-repack.txt:163
-msgid "linkgit:git-pack-objects[1] linkgit:git-prune-packed[1]"
+#: en/git-pack-redundant.txt:47
+msgid ""
+"linkgit:git-pack-objects[1] linkgit:git-repack[1] linkgit:git-prune-packed[1]"
 msgstr ""
 
 #. type: Title =
-#: en/git-replace.txt:2
+#: en/git-pack-refs.txt:2
 #, no-wrap
-msgid "git-replace(1)"
+msgid "git-pack-refs(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:7
-msgid "git-replace - Create, list, delete refs to replace objects"
+#: en/git-pack-refs.txt:7
+msgid "git-pack-refs - Pack heads and tags for efficient repository access"
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:16
+#: en/git-pack-refs.txt:12
 #, no-wrap
-msgid ""
-"'git replace' [-f] <object> <replacement>\n"
-"'git replace' [-f] --edit <object>\n"
-"'git replace' [-f] --graft <commit> [<parent>...]\n"
-"'git replace' -d <object>...\n"
-"'git replace' [--format=<format>] [-l [<pattern>]]\n"
+msgid "'git pack-refs' [--all] [--no-prune]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:20
-msgid "Adds a 'replace' reference in `refs/replace/` namespace."
+#: en/git-pack-refs.txt:24
+msgid ""
+"Traditionally, tips of branches and tags (collectively known as 'refs') were "
+"stored one file per ref in a (sub)directory under `$GIT_DIR/refs` "
+"directory.  While many branch tips tend to be updated often, most tags and "
+"some branch tips are never updated.  When a repository has hundreds or "
+"thousands of tags, this one-file-per-ref format both wastes storage and "
+"hurts performance."
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:24
+#: en/git-pack-refs.txt:31
 msgid ""
-"The name of the 'replace' reference is the SHA-1 of the object that is "
-"replaced. The content of the 'replace' reference is the SHA-1 of the "
-"replacement object."
+"This command is used to solve the storage and performance problem by storing "
+"the refs in a single file, `$GIT_DIR/packed-refs`.  When a ref is missing "
+"from the traditional `$GIT_DIR/refs` directory hierarchy, it is looked up in "
+"this file and used if found."
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:27
+#: en/git-pack-refs.txt:34
 msgid ""
-"The replaced object and the replacement object must be of the same type.  "
-"This restriction can be bypassed using `-f`."
+"Subsequent updates to branches always create new files under `$GIT_DIR/refs` "
+"directory hierarchy."
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:29
-msgid "Unless `-f` is given, the 'replace' reference must not yet exist."
+#: en/git-pack-refs.txt:43
+msgid ""
+"A recommended practice to deal with a repository with too many refs is to "
+"pack its refs with `--all` once, and occasionally run `git pack-refs`.  Tags "
+"are by definition stationary and are not expected to change.  Branch heads "
+"will be packed with the initial `pack-refs --all`, but only the currently "
+"active branch heads will become unpacked, and the next `pack-refs` (without "
+"`--all`) will leave them unpacked."
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:32
+#: en/git-pack-refs.txt:56
 msgid ""
-"There is no other restriction on the replaced and replacement objects.  "
-"Merge commits can be replaced by non-merge commits and vice versa."
+"The command by default packs all tags and refs that are already packed, and "
+"leaves other refs alone.  This is because branches are expected to be "
+"actively developed and packing their tips does not help performance.  This "
+"option causes branch tips to be packed as well.  Useful for a repository "
+"with many branches of historical interests."
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:36
+#: en/git-pack-refs.txt:61
 msgid ""
-"Replacement references will be used by default by all Git commands except "
-"those doing reachability traversal (prune, pack transfer and fsck)."
+"The command usually removes loose refs under `$GIT_DIR/refs` hierarchy after "
+"packing them.  This option tells it not to."
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:39
+#: en/git-pack-refs.txt:69
 msgid ""
-"It is possible to disable use of replacement references for any command "
-"using the `--no-replace-objects` option just after 'git'."
+"Older documentation written before the packed-refs mechanism was introduced "
+"may still say things like \".git/refs/heads/<branch> file exists\" when it "
+"means \"branch <branch> exists\"."
+msgstr ""
+
+#. type: Title =
+#: en/git-parse-remote.txt:2
+#, no-wrap
+msgid "git-parse-remote(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:41
-msgid "For example if commit 'foo' has been replaced by commit 'bar':"
+#: en/git-parse-remote.txt:7
+msgid ""
+"git-parse-remote - Routines to help parsing remote repository access "
+"parameters"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-replace.txt:44
+#. type: Plain text
+#: en/git-parse-remote.txt:13
 #, no-wrap
-msgid "$ git --no-replace-objects cat-file commit foo\n"
+msgid "'. \"$(git --exec-path)/git-parse-remote\"'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:47
-msgid "shows information about commit 'foo', while:"
+#: en/git-parse-remote.txt:20
+msgid ""
+"This script is included in various scripts to supply routines to parse files "
+"under $GIT_DIR/remotes/ and $GIT_DIR/branches/ and configuration variables "
+"that are related to fetching, pulling and pushing."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-replace.txt:50
+#. type: Title =
+#: en/git-patch-id.txt:2
 #, no-wrap
-msgid "$ git cat-file commit foo\n"
+msgid "git-patch-id(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:53
-msgid "shows information about commit 'bar'."
+#: en/git-patch-id.txt:7
+msgid "git-patch-id - Compute unique ID for a patch"
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:56
-msgid ""
-"The `GIT_NO_REPLACE_OBJECTS` environment variable can be set to achieve the "
-"same effect as the `--no-replace-objects` option."
+#: en/git-patch-id.txt:12
+#, no-wrap
+msgid "'git patch-id' [--stable | --unstable]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:63
-msgid ""
-"If an existing replace ref for the same object exists, it will be "
-"overwritten (instead of failing)."
+#: en/git-patch-id.txt:16
+msgid "Read a patch from the standard input and compute the patch ID for it."
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:67
-msgid "Delete existing replace refs for the given objects."
+#: en/git-patch-id.txt:21
+msgid ""
+"A \"patch ID\" is nothing but a sum of SHA-1 of the file diffs associated "
+"with a patch, with whitespace and line numbers ignored.  As such, it's "
+"\"reasonably stable\", but at the same time also reasonably unique, i.e., "
+"two patches that have the same \"patch ID\" are almost guaranteed to be the "
+"same thing."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-replace.txt:68
-#, no-wrap
-msgid "--edit <object>"
+#. type: Plain text
+#: en/git-patch-id.txt:23
+msgid "IOW, you can use this thing to look for likely duplicate commits."
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:76
+#: en/git-patch-id.txt:29
 msgid ""
-"Edit an object's content interactively. The existing content for <object> is "
-"pretty-printed into a temporary file, an editor is launched on the file, and "
-"the result is parsed to create a new object of the same type as <object>. A "
-"replacement ref is then created to replace <object> with the newly created "
-"object. See linkgit:git-var[1] for details about how the editor will be "
-"chosen."
+"When dealing with 'git diff-tree' output, it takes advantage of the fact "
+"that the patch is prefixed with the object name of the commit, and outputs "
+"two 40-byte hexadecimal strings.  The first string is the patch ID, and the "
+"second string is the commit ID.  This can be used to make a mapping from "
+"patch ID to commit ID."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-replace.txt:77 en/git-verify-commit.txt:19 en/git-verify-tag.txt:19 en/diff-options.txt:45
+#: en/git-patch-id.txt:33
 #, no-wrap
-msgid "--raw"
+msgid "--stable"
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:84
-msgid ""
-"When editing, provide the raw object contents rather than pretty-printed "
-"ones. Currently this only affects trees, which will be shown in their binary "
-"form. This is harder to work with, but can help when repairing a tree that "
-"is so corrupted it cannot be pretty-printed. Note that you may need to "
-"configure your editor to cleanly read and write binary data."
+#: en/git-patch-id.txt:35
+msgid "Use a \"stable\" sum of hashes as the patch ID. With this option:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-replace.txt:85
-#, no-wrap
-msgid "--graft <commit> [<parent>...]"
+#. type: Plain text
+#: en/git-patch-id.txt:41
+msgid ""
+"Reordering file diffs that make up a patch does not affect the ID.  In "
+"particular, two patches produced by comparing the same two trees with two "
+"different settings for \"-O<orderfile>\" result in the same patch ID "
+"signature, thereby allowing the computed result to be used as a key to index "
+"some meta-information about the change between the two trees;"
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:93
+#: en/git-patch-id.txt:47
 msgid ""
-"Create a graft commit. A new commit is created with the same content as "
-"<commit> except that its parents will be [<parent>...] instead of <commit>'s "
-"parents. A replacement ref is then created to replace <commit> with the "
-"newly created commit. See contrib/convert-grafts-to-replace-refs.sh for an "
-"example script based on this option that can convert grafts to replace refs."
+"Result is different from the value produced by git 1.9 and older or produced "
+"when an \"unstable\" hash (see --unstable below) is configured - even when "
+"used on a diff output taken without any use of \"-O<orderfile>\", thereby "
+"making existing databases storing such \"unstable\" or historical patch-ids "
+"unusable."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-replace.txt:94 en/git-tag.txt:90
+#. type: Plain text
+#: en/git-patch-id.txt:49
 #, no-wrap
-msgid "-l <pattern>"
+msgid "This is the default if patchid.stable is set to true.\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-replace.txt:95 en/git-tag.txt:91
+#: en/git-patch-id.txt:50
 #, no-wrap
-msgid "--list <pattern>"
+msgid "--unstable"
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:100
+#: en/git-patch-id.txt:56
 msgid ""
-"List replace refs for objects that match the given pattern (or all if no "
-"pattern is given).  Typing \"git replace\" without arguments, also lists all "
-"replace refs."
+"Use an \"unstable\" hash as the patch ID. With this option, the result "
+"produced is compatible with the patch-id value produced by git 1.9 and "
+"older.  Users with pre-existing databases storing patch-ids produced by git "
+"1.9 and older (who do not deal with reordered patches) may want to use this "
+"option."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-replace.txt:101 en/pretty-options.txt:2
+#. type: Plain text
+#: en/git-patch-id.txt:58
+msgid "This is the default."
+msgstr ""
+
+#. type: Title =
+#: en/git-prune-packed.txt:2
 #, no-wrap
-msgid "--format=<format>"
+msgid "git-prune-packed(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:105
-msgid ""
-"When listing, use the specified <format>, which can be one of 'short', "
-"'medium' and 'long'. When omitted, the format defaults to 'short'."
+#: en/git-prune-packed.txt:7
+msgid "git-prune-packed - Remove extra objects that are already in pack files"
 msgstr ""
 
-#. type: Title -
-#: en/git-replace.txt:107
+#. type: Plain text
+#: en/git-prune-packed.txt:13
 #, no-wrap
-msgid "FORMATS"
+msgid "'git prune-packed' [-n|--dry-run] [-q|--quiet]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:110
-msgid "The following format are available:"
+#: en/git-prune-packed.txt:19
+msgid ""
+"This program searches the `$GIT_OBJECT_DIRECTORY` for all objects that "
+"currently exist in a pack file as well as the independent object directories."
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:112
-msgid "'short':"
+#: en/git-prune-packed.txt:21
+msgid "All such extra objects are removed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:113
-msgid "<replaced sha1>"
+#: en/git-prune-packed.txt:24 en/git-repack.txt:24
+msgid ""
+"A pack is a collection of objects, individually compressed, with delta "
+"compression applied, stored in a single file, with an associated index file."
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:114
-msgid "'medium':"
+#: en/git-prune-packed.txt:27 en/git-repack.txt:27
+msgid ""
+"Packs are used to reduce the load on mirror systems, backup engines, disk "
+"storage, etc."
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:115
-msgid "<replaced sha1> -> <replacement sha1>"
+#: en/git-prune-packed.txt:35
+msgid ""
+"Don't actually remove any objects, only show those that would have been "
+"removed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:116
-msgid "'long':"
+#: en/git-prune-packed.txt:39
+msgid "Squelch the progress indicator."
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:117
-msgid "<replaced sha1> (<replaced type>) -> <replacement sha1> (<replacement type>)"
+#: en/git-prune-packed.txt:44
+msgid "linkgit:git-pack-objects[1] linkgit:git-repack[1]"
 msgstr ""
 
-#. type: Title -
-#: en/git-replace.txt:119
+#. type: Title =
+#: en/git-prune.txt:2
 #, no-wrap
-msgid "CREATING REPLACEMENT OBJECTS"
+msgid "git-prune(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:126
-msgid ""
-"linkgit:git-filter-branch[1], linkgit:git-hash-object[1] and "
-"linkgit:git-rebase[1], among other git commands, can be used to create "
-"replacement objects from existing objects. The `--edit` option can also be "
-"used with 'git replace' to create a replacement object by editing an "
-"existing object."
+#: en/git-prune.txt:7
+msgid "git-prune - Prune all unreachable objects from the object database"
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:132
-msgid ""
-"If you want to replace many blobs, trees or commits that are part of a "
-"string of commits, you may just want to create a replacement string of "
-"commits and then only replace the commit at the tip of the target string of "
-"commits with the commit at the tip of the replacement string of commits."
+#: en/git-prune.txt:13
+#, no-wrap
+msgid "'git prune' [-n] [-v] [--progress] [--expire <time>] [--] [<head>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:139
+#: en/git-prune.txt:19
 msgid ""
-"Comparing blobs or trees that have been replaced with those that replace "
-"them will not work properly. And using `git reset --hard` to go back to a "
-"replaced commit will move the branch to the replacement commit instead of "
-"the replaced commit."
+"In most cases, users should run 'git gc', which calls 'git prune'. See the "
+"section \"NOTES\", below."
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:142
+#: en/git-prune.txt:29
 msgid ""
-"There may be other problems when using 'git rev-list' related to pending "
-"objects."
+"This runs 'git fsck --unreachable' using all the refs available in `refs/`, "
+"optionally with additional set of objects specified on the command line, and "
+"prunes all unpacked objects unreachable from any of these head objects from "
+"the object database.  In addition, it prunes the unpacked objects that are "
+"also found in packs by running 'git prune-packed'.  It also removes entries "
+"from .git/shallow that are not reachable by any ref."
 msgstr ""
 
 #. type: Plain text
-#: en/git-replace.txt:153
+#: en/git-prune.txt:32
 msgid ""
-"linkgit:git-hash-object[1] linkgit:git-filter-branch[1] "
-"linkgit:git-rebase[1] linkgit:git-tag[1] linkgit:git-branch[1] "
-"linkgit:git-commit[1] linkgit:git-var[1] linkgit:git[1]"
-msgstr ""
-
-#. type: Title =
-#: en/git-request-pull.txt:2
-#, no-wrap
-msgid "git-request-pull(1)"
+"Note that unreachable, packed objects will remain.  If this is not desired, "
+"see linkgit:git-repack[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-request-pull.txt:7
-msgid "git-request-pull - Generates a summary of pending changes"
+#: en/git-prune.txt:40
+msgid "Do not remove anything; just report what it would remove."
 msgstr ""
 
 #. type: Plain text
-#: en/git-request-pull.txt:12
-#, no-wrap
-msgid "'git request-pull' [-p] <start> <url> [<end>]\n"
+#: en/git-prune.txt:44
+msgid "Report all removed objects."
 msgstr ""
 
 #. type: Plain text
-#: en/git-request-pull.txt:20
-msgid ""
-"Generate a request asking your upstream project to pull changes into their "
-"tree.  The request, printed to the standard output, begins with the branch "
-"description, summarizes the changes and indicates from where they can be "
-"pulled."
+#: en/git-prune.txt:47
+msgid "Show progress."
 msgstr ""
 
-#. type: Plain text
-#: en/git-request-pull.txt:25
-msgid ""
-"The upstream project is expected to have the commit named by `<start>` and "
-"the output asks it to integrate the changes you made since that commit, up "
-"to the commit named by `<end>`, by visiting the repository named by `<url>`."
+#. type: Labeled list
+#: en/git-prune.txt:48 en/git-worktree.txt:192
+#, no-wrap
+msgid "--expire <time>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-request-pull.txt:31
-msgid "Include patch text in the output."
+#: en/git-prune.txt:50
+msgid "Only expire loose objects older than <time>."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-request-pull.txt:32
+#: en/git-prune.txt:54
 #, no-wrap
-msgid "<start>"
+msgid "<head>..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-request-pull.txt:35
+#: en/git-prune.txt:58
 msgid ""
-"Commit to start at.  This names a commit that is already in the upstream "
-"history."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-request-pull.txt:36
-#, no-wrap
-msgid "<url>"
+"In addition to objects reachable from any of our references, keep objects "
+"reachable from listed <head>s."
 msgstr ""
 
 #. type: Plain text
-#: en/git-request-pull.txt:38
-msgid "The repository URL to be pulled from."
+#: en/git-prune.txt:65
+msgid ""
+"To prune objects not used by your repository or another that borrows from "
+"your repository via its `.git/objects/info/alternates`:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-request-pull.txt:39
+#. type: delimited block -
+#: en/git-prune.txt:68
 #, no-wrap
-msgid "<end>"
+msgid "$ git prune $(cd ../another && git rev-parse --all)\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-request-pull.txt:42
+#: en/git-prune.txt:76
 msgid ""
-"Commit to end at (defaults to HEAD).  This names the commit at the tip of "
-"the history you are asking to be pulled."
+"In most cases, users will not need to call 'git prune' directly, but should "
+"instead call 'git gc', which handles pruning along with many other "
+"housekeeping tasks."
 msgstr ""
 
 #. type: Plain text
-#: en/git-request-pull.txt:47
+#: en/git-prune.txt:79
 msgid ""
-"When the repository named by `<url>` has the commit at a tip of a ref that "
-"is different from the ref you have locally, you can use the "
-"`<local>:<remote>` syntax, to have its local name, a colon `:`, and its "
-"remote name."
+"For a description of which objects are considered for pruning, see 'git "
+"fsck''s --unreachable option."
 msgstr ""
 
 #. type: Plain text
-#: en/git-request-pull.txt:56
-msgid ""
-"Imagine that you built your work on your `master` branch on top of the "
-"`v1.0` release, and want it to be integrated to the project.  First you push "
-"that change to your public repository for others to see:"
+#: en/git-prune.txt:86
+msgid "linkgit:git-fsck[1], linkgit:git-gc[1], linkgit:git-reflog[1]"
 msgstr ""
 
-#. type: Plain text
-#: en/git-request-pull.txt:58
+#. type: Title =
+#: en/git-pull.txt:2
 #, no-wrap
-msgid "\tgit push https://git.ko.xz/project master\n"
+msgid "git-pull(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-request-pull.txt:60
-msgid "Then, you run this command:"
+#: en/git-pull.txt:7
+msgid ""
+"git-pull - Fetch from and integrate with another repository or a local branch"
 msgstr ""
 
 #. type: Plain text
-#: en/git-request-pull.txt:62
+#: en/git-pull.txt:13
 #, no-wrap
-msgid "\tgit request-pull v1.0 https://git.ko.xz/project master\n"
+msgid "'git pull' [<options>] [<repository> [<refspec>...]]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-request-pull.txt:66
+#: en/git-pull.txt:21
 msgid ""
-"which will produce a request to the upstream, summarizing the changes "
-"between the `v1.0` release and your `master`, to pull it from your public "
-"repository."
+"Incorporates changes from a remote repository into the current branch.  In "
+"its default mode, `git pull` is shorthand for `git fetch` followed by `git "
+"merge FETCH_HEAD`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-request-pull.txt:69
+#: en/git-pull.txt:26
 msgid ""
-"If you pushed your change to a branch whose name is different from the one "
-"you have locally, e.g."
-msgstr ""
-
-#. type: Plain text
-#: en/git-request-pull.txt:71
-#, no-wrap
-msgid "\tgit push https://git.ko.xz/project master:for-linus\n"
+"More precisely, 'git pull' runs 'git fetch' with the given parameters and "
+"calls 'git merge' to merge the retrieved branch heads into the current "
+"branch.  With `--rebase`, it runs 'git rebase' instead of 'git merge'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-request-pull.txt:73
-msgid "then you can ask that to be pulled with"
+#: en/git-pull.txt:33
+msgid ""
+"<repository> should be the name of a remote repository as passed to linkgit:"
+"git-fetch[1].  <refspec> can name an arbitrary remote ref (for example, the "
+"name of a tag) or even a collection of refs with corresponding remote-"
+"tracking branches (e.g., refs/heads/{asterisk}:refs/remotes/origin/"
+"{asterisk}), but usually it is the name of a branch in the remote repository."
 msgstr ""
 
 #. type: Plain text
-#: en/git-request-pull.txt:75
-#, no-wrap
-msgid "\tgit request-pull v1.0 https://git.ko.xz/project master:for-linus\n"
+#: en/git-pull.txt:37
+msgid ""
+"Default values for <repository> and <branch> are read from the \"remote\" "
+"and \"merge\" configuration for the current branch as set by linkgit:git-"
+"branch[1] `--track`."
 msgstr ""
 
-#. type: Title =
-#: en/git-rerere.txt:2
+#. type: delimited block -
+#: en/git-pull.txt:47
 #, no-wrap
-msgid "git-rerere(1)"
+msgid ""
+"\t  A---B---C master on origin\n"
+"\t /\n"
+"    D---E---F---G master\n"
+"\t^\n"
+"\torigin/master in your repository\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:7
-msgid "git-rerere - Reuse recorded resolution of conflicted merges"
+#: en/git-pull.txt:54
+msgid ""
+"Then \"`git pull`\" will fetch and replay the changes from the remote "
+"`master` branch since it diverged from the local `master` (i.e., `E`)  until "
+"its current commit (`C`) on top of `master` and record the result in a new "
+"commit along with the names of the two parent commits and a log message from "
+"the user describing the changes."
 msgstr ""
 
-#. type: Plain text
-#: en/git-rerere.txt:12
+#. type: delimited block -
+#: en/git-pull.txt:59
 #, no-wrap
 msgid ""
-"'git rerere' ['clear'|'forget' "
-"<pathspec>|'diff'|'remaining'|'status'|'gc']\n"
+"\t  A---B---C origin/master\n"
+"\t /         \\\n"
+"    D---E---F---G---H master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:20
+#: en/git-pull.txt:63
 msgid ""
-"In a workflow employing relatively long lived topic branches, the developer "
-"sometimes needs to resolve the same conflicts over and over again until the "
-"topic branches are done (either merged to the \"release\" branch, or sent "
-"out and accepted upstream)."
+"See linkgit:git-merge[1] for details, including how conflicts are presented "
+"and handled."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:25
+#: en/git-pull.txt:68
 msgid ""
-"This command assists the developer in this process by recording conflicted "
-"automerge results and corresponding hand resolve results on the initial "
-"manual merge, and applying previously recorded hand resolutions to their "
-"corresponding automerge results."
+"In Git 1.7.0 or later, to cancel a conflicting merge, use `git reset --"
+"merge`.  *Warning*: In older versions of Git, running 'git pull' with "
+"uncommitted changes is discouraged: while possible, it leaves you in a state "
+"that may be hard to back out of in the case of a conflict."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:29
+#: en/git-pull.txt:73
 msgid ""
-"You need to set the configuration variable rerere.enabled in order to enable "
-"this command."
+"If any of the remote changes overlap with local uncommitted changes, the "
+"merge will be automatically canceled and the work tree untouched.  It is "
+"generally best to get any local changes in working order before pulling or "
+"stash them away with linkgit:git-stash[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:37
+#: en/git-pull.txt:82
 msgid ""
-"Normally, 'git rerere' is run without arguments or user-intervention.  "
-"However, it has several commands that allow it to interact with its working "
-"state."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-rerere.txt:38
-#, no-wrap
-msgid "'clear'"
+"This is passed to both underlying git-fetch to squelch reporting of during "
+"transfer, and underlying git-merge to squelch output during merging."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:43
-msgid ""
-"Reset the metadata used by rerere if a merge resolution is to be aborted.  "
-"Calling 'git am [--skip|--abort]' or 'git rebase [--skip|--abort]' will "
-"automatically invoke this command."
+#: en/git-pull.txt:86
+msgid "Pass --verbose to git-fetch and git-merge."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rerere.txt:44
+#: en/git-pull.txt:87
 #, no-wrap
-msgid "'forget' <pathspec>"
+msgid "--[no-]recurse-submodules[=yes|on-demand|no]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:48
+#: en/git-pull.txt:91
 msgid ""
-"Reset the conflict resolutions which rerere has recorded for the current "
-"conflict in <pathspec>."
+"This option controls if new commits of all populated submodules should be "
+"fetched and updated, too (see linkgit:git-config[1] and linkgit:"
+"gitmodules[5])."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rerere.txt:49
-#, no-wrap
-msgid "'diff'"
+#. type: Plain text
+#: en/git-pull.txt:93
+msgid ""
+"If the checkout is done via rebase, local submodule commits are rebased as "
+"well."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:55
+#: en/git-pull.txt:95
 msgid ""
-"Display diffs for the current state of the resolution.  It is useful for "
-"tracking what has changed while the user is resolving conflicts.  Additional "
-"arguments are passed directly to the system 'diff' command installed in "
-"PATH."
+"If the update is done via merge, the submodule conflicts are resolved and "
+"checked out."
+msgstr ""
+
+#. type: Title ~
+#: en/git-pull.txt:97
+#, no-wrap
+msgid "Options related to merging"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rerere.txt:56
+#: en/git-pull.txt:104
 #, no-wrap
-msgid "'status'"
+msgid "--rebase[=false|true|merges|preserve|interactive]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:59
-msgid "Print paths with conflicts whose merge resolution rerere will record."
+#: en/git-pull.txt:110
+msgid ""
+"When true, rebase the current branch on top of the upstream branch after "
+"fetching. If there is a remote-tracking branch corresponding to the upstream "
+"branch and the upstream branch was rebased since last fetched, the rebase "
+"uses that information to avoid rebasing non-local changes."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rerere.txt:60
-#, no-wrap
-msgid "'remaining'"
+#. type: Plain text
+#: en/git-pull.txt:114
+msgid ""
+"When set to `merges`, rebase using `git rebase --rebase-merges` so that the "
+"local merge commits are included in the rebase (see linkgit:git-rebase[1] "
+"for details)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:65
+#: en/git-pull.txt:117
 msgid ""
-"Print paths with conflicts that have not been autoresolved by rerere.  This "
-"includes paths whose resolutions cannot be tracked by rerere, such as "
-"conflicting submodules."
+"When set to preserve, rebase with the `--preserve-merges` option passed to "
+"`git rebase` so that locally created merge commits will not be flattened."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rerere.txt:66 en/git-svn.txt:480
-#, no-wrap
-msgid "'gc'"
+#. type: Plain text
+#: en/git-pull.txt:119
+msgid "When false, merge the current branch into the upstream branch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:74
+#: en/git-pull.txt:121
+msgid "When `interactive`, enable the interactive mode of rebase."
+msgstr ""
+
+#. type: Plain text
+#: en/git-pull.txt:125
 msgid ""
-"Prune records of conflicted merges that occurred a long time ago.  By "
-"default, unresolved conflicts older than 15 days and resolved conflicts "
-"older than 60 days are pruned.  These defaults are controlled via the "
-"`gc.rerereUnresolved` and `gc.rerereResolved` configuration variables "
-"respectively."
+"See `pull.rebase`, `branch.<name>.rebase` and `branch.autoSetupRebase` in "
+"linkgit:git-config[1] if you want to make `git pull` always use `--rebase` "
+"instead of merging."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:83
+#: en/git-pull.txt:131
 msgid ""
-"When your topic branch modifies an overlapping area that your master branch "
-"(or upstream) touched since your topic branch forked from it, you may want "
-"to test it with the latest master, even before your topic branch is ready to "
-"be pushed upstream:"
+"This is a potentially _dangerous_ mode of operation.  It rewrites history, "
+"which does not bode well when you published that history already.  Do *not* "
+"use this option unless you have read linkgit:git-rebase[1] carefully."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rerere.txt:88
+#. type: Labeled list
+#: en/git-pull.txt:132 en/git-svn.txt:261
 #, no-wrap
-msgid ""
-"              o---*---o topic\n"
-"             /\n"
-"    o---o---o---*---o---o master\n"
+msgid "--no-rebase"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:92
-msgid ""
-"For such a test, you need to merge master and topic somehow.  One way to do "
-"it is to pull master into the topic branch:"
+#: en/git-pull.txt:134
+msgid "Override earlier --rebase."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rerere.txt:96
+#. type: Labeled list
+#: en/git-pull.txt:135 en/git-rebase.txt:496
 #, no-wrap
-msgid ""
-"\t$ git checkout topic\n"
-"\t$ git merge master\n"
+msgid "--autostash"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rerere.txt:100
+#. type: Labeled list
+#: en/git-pull.txt:136 en/git-rebase.txt:497
 #, no-wrap
-msgid ""
-"              o---*---o---+ topic\n"
-"             /           /\n"
-"    o---o---o---*---o---o master\n"
+msgid "--no-autostash"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:106
+#: en/git-pull.txt:141
 msgid ""
-"The commits marked with `*` touch the same area in the same file; you need "
-"to resolve the conflicts when creating the commit marked with `+`.  Then you "
-"can test the result to make sure your work-in-progress still works with what "
-"is in the latest master."
+"Before starting rebase, stash local modifications away (see linkgit:git-"
+"stash[1]) if needed, and apply the stash entry when done. `--no-autostash` "
+"is useful to override the `rebase.autoStash` configuration variable (see "
+"linkgit:git-config[1])."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:114
-msgid ""
-"After this test merge, there are two ways to continue your work on the "
-"topic.  The easiest is to build on top of the test merge commit `+`, and "
-"when your work in the topic branch is finally ready, pull the topic branch "
-"into master, and/or ask the upstream to pull from you.  By that time, "
-"however, the master or the upstream might have been advanced since the test "
-"merge `+`, in which case the final commit graph would look like this:"
+#: en/git-pull.txt:143
+msgid "This option is only valid when \"--rebase\" is used."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rerere.txt:121
+#. type: Title ~
+#: en/git-pull.txt:145
 #, no-wrap
-msgid ""
-"\t$ git checkout topic\n"
-"\t$ git merge master\n"
-"\t$ ... work on both topic and master branches\n"
-"\t$ git checkout master\n"
-"\t$ git merge topic\n"
+msgid "Options related to fetching"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rerere.txt:125
+#. type: Title -
+#: en/git-pull.txt:156
 #, no-wrap
-msgid ""
-"              o---*---o---+---o---o topic\n"
-"             /           /         \\\n"
-"    o---o---o---*---o---o---o---o---+ master\n"
+msgid "DEFAULT BEHAVIOUR"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:133
+#: en/git-pull.txt:163
 msgid ""
-"When your topic branch is long-lived, however, your topic branch would end "
-"up having many such \"Merge from master\" commits on it, which would "
-"unnecessarily clutter the development history.  Readers of the Linux kernel "
-"mailing list may remember that Linus complained about such too frequent test "
-"merges when a subsystem maintainer asked to pull from a branch full of "
-"\"useless merges\"."
+"Often people use `git pull` without giving any parameter.  Traditionally, "
+"this has been equivalent to saying `git pull origin`.  However, when "
+"configuration `branch.<name>.remote` is present while on branch `<name>`, "
+"that value is used instead of `origin`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:137
+#: en/git-pull.txt:168
 msgid ""
-"As an alternative, to keep the topic branch clean of test merges, you could "
-"blow away the test merge, and keep building on top of the tip before the "
-"test merge:"
+"In order to determine what URL to use to fetch from, the value of the "
+"configuration `remote.<origin>.url` is consulted and if there is not any "
+"such variable, the value on the `URL:` line in `$GIT_DIR/remotes/<origin>` "
+"is used."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rerere.txt:145
-#, no-wrap
+#. type: Plain text
+#: en/git-pull.txt:177
 msgid ""
-"\t$ git checkout topic\n"
-"\t$ git merge master\n"
-"\t$ git reset --hard HEAD^ ;# rewind the test merge\n"
-"\t$ ... work on both topic and master branches\n"
-"\t$ git checkout master\n"
-"\t$ git merge topic\n"
+"In order to determine what remote branches to fetch (and optionally store in "
+"the remote-tracking branches) when the command is run without any refspec "
+"parameters on the command line, values of the configuration variable `remote."
+"<origin>.fetch` are consulted, and if there aren't any, `$GIT_DIR/remotes/"
+"<origin>` is consulted and its `Pull:` lines are used.  In addition to the "
+"refspec formats described in the OPTIONS section, you can have a globbing "
+"refspec that looks like this:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-rerere.txt:149
+#: en/git-pull.txt:180
 #, no-wrap
-msgid ""
-"              o---*---o-------o---o topic\n"
-"             /                     \\\n"
-"    o---o---o---*---o---o---o---o---+ master\n"
+msgid "refs/heads/*:refs/remotes/origin/*\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:159
+#: en/git-pull.txt:187
 msgid ""
-"This would leave only one merge commit when your topic branch is finally "
-"ready and merged into the master branch.  This merge would require you to "
-"resolve the conflict, introduced by the commits marked with `*`.  However, "
-"this conflict is often the same conflict you resolved when you created the "
-"test merge you blew away.  'git rerere' helps you resolve this final "
-"conflicted merge using the information from your earlier hand resolve."
+"A globbing refspec must have a non-empty RHS (i.e. must store what were "
+"fetched in remote-tracking branches), and its LHS and RHS must end with `/"
+"*`.  The above specifies that all remote branches are tracked using remote-"
+"tracking branches in `refs/remotes/origin/` hierarchy under the same name."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:167
+#: en/git-pull.txt:191
 msgid ""
-"Running the 'git rerere' command immediately after a conflicted automerge "
-"records the conflicted working tree files, with the usual conflict markers "
-"`<<<<<<<`, `=======`, and `>>>>>>>` in them.  Later, after you are done "
-"resolving the conflicts, running 'git rerere' again will record the resolved "
-"state of these files.  Suppose you did this when you created the test merge "
-"of master into the topic branch."
+"The rule to determine which remote branch to merge after fetching is a bit "
+"involved, in order not to break backward compatibility."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:177
+#: en/git-pull.txt:194
 msgid ""
-"Next time, after seeing the same conflicted automerge, running 'git rerere' "
-"will perform a three-way merge between the earlier conflicted automerge, the "
-"earlier manual resolution, and the current conflicted automerge.  If this "
-"three-way merge resolves cleanly, the result is written out to your working "
-"tree file, so you do not have to manually resolve it.  Note that 'git "
-"rerere' leaves the index file alone, so you still need to do the final "
-"sanity checks with `git diff` (or `git diff -c`) and 'git add' when you are "
-"satisfied."
+"If explicit refspecs were given on the command line of `git pull`, they are "
+"all merged."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:185
+#: en/git-pull.txt:199
 msgid ""
-"As a convenience measure, 'git merge' automatically invokes 'git rerere' "
-"upon exiting with a failed automerge and 'git rerere' records the hand "
-"resolve when it is a new conflict, or reuses the earlier hand resolve when "
-"it is not.  'git commit' also invokes 'git rerere' when committing a merge "
-"result.  What this means is that you do not have to do anything special "
-"yourself (besides enabling the rerere.enabled config variable)."
+"When no refspec was given on the command line, then `git pull` uses the "
+"refspec from the configuration or `$GIT_DIR/remotes/<origin>`.  In such "
+"cases, the following rules apply:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:190
+#: en/git-pull.txt:203
 msgid ""
-"In our example, when you do the test merge, the manual resolution is "
-"recorded, and it will be reused when you do the actual merge later with the "
-"updated master and topic branch, as long as the recorded resolution is still "
-"applicable."
+"If `branch.<name>.merge` configuration for the current branch `<name>` "
+"exists, that is the name of the branch at the remote site that is merged."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:194
-msgid ""
-"The information 'git rerere' records is also used when running 'git "
-"rebase'.  After blowing away the test merge and continuing development on "
-"the topic branch:"
+#: en/git-pull.txt:205
+msgid "If the refspec is a globbing one, nothing is merged."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rerere.txt:199
-#, no-wrap
-msgid ""
-"              o---*---o-------o---o topic\n"
-"             /\n"
-"    o---o---o---*---o---o---o---o   master\n"
+#. type: Plain text
+#: en/git-pull.txt:207
+msgid "Otherwise the remote branch of the first refspec is merged."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rerere.txt:201
-#, no-wrap
-msgid "\t$ git rebase master topic\n"
+#. type: Plain text
+#: en/git-pull.txt:215
+msgid ""
+"Update the remote-tracking branches for the repository you cloned from, then "
+"merge one of them into your current branch:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-rerere.txt:205
+#: en/git-pull.txt:219
 #, no-wrap
 msgid ""
-"\t\t\t\t  o---*---o-------o---o topic\n"
-"\t\t\t\t /\n"
-"    o---o---o---*---o---o---o---o   master\n"
+"$ git pull\n"
+"$ git pull origin\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rerere.txt:213
+#: en/git-pull.txt:224
 msgid ""
-"you could run `git rebase master topic`, to bring yourself up-to-date before "
-"your topic is ready to be sent upstream.  This would result in falling back "
-"to a three-way merge, and it would conflict the same way as the test merge "
-"you resolved earlier.  'git rerere' will be run by 'git rebase' to help you "
-"resolve this conflict."
+"Normally the branch merged in is the HEAD of the remote repository, but the "
+"choice is determined by the branch.<name>.remote and branch.<name>.merge "
+"options; see linkgit:git-config[1] for details."
 msgstr ""
 
-#. type: Title =
-#: en/git-reset.txt:2
+#. type: Plain text
+#: en/git-pull.txt:226
+msgid "Merge into the current branch the remote branch `next`:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-pull.txt:229
 #, no-wrap
-msgid "git-reset(1)"
+msgid "$ git pull origin next\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:7
-msgid "git-reset - Reset current HEAD to the specified state"
+#: en/git-pull.txt:234
+msgid ""
+"This leaves a copy of `next` temporarily in FETCH_HEAD, but does not update "
+"any remote-tracking branches. Using remote-tracking branches, the same can "
+"be done by invoking fetch and merge:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-reset.txt:14
+#. type: delimited block -
+#: en/git-pull.txt:238
 #, no-wrap
 msgid ""
-"'git reset' [-q] [<tree-ish>] [--] <paths>...\n"
-"'git reset' (--patch | -p) [<tree-ish>] [--] [<paths>...]\n"
-"'git reset' [--soft | --mixed [-N] | --hard | --merge | --keep] [-q] "
-"[<commit>]\n"
+"$ git fetch origin\n"
+"$ git merge origin/next\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:21
+#: en/git-pull.txt:243
 msgid ""
-"In the first and second form, copy entries from <tree-ish> to the index.  In "
-"the third form, set the current branch head (HEAD) to <commit>, optionally "
-"modifying index and working tree to match.  The <tree-ish>/<commit> defaults "
-"to HEAD in all forms."
+"If you tried a pull which resulted in complex conflicts and would want to "
+"start over, you can recover with 'git reset'."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-reset.txt:22
-#, no-wrap
-msgid "'git reset' [-q] [<tree-ish>] [--] <paths>..."
+#. type: Plain text
+#: en/git-pull.txt:259
+msgid "linkgit:git-fetch[1], linkgit:git-merge[1], linkgit:git-config[1]"
 msgstr ""
 
-#. type: Plain text
-#: en/git-reset.txt:26
-msgid ""
-"This form resets the index entries for all <paths> to their state at "
-"<tree-ish>.  (It does not affect the working tree or the current branch.)"
+#. type: Title =
+#: en/git-push.txt:2
+#, no-wrap
+msgid "git-push(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:29
-msgid "This means that `git reset <paths>` is the opposite of `git add <paths>`."
+#: en/git-push.txt:7
+msgid "git-push - Update remote refs along with associated objects"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:36
+#: en/git-push.txt:18
+#, no-wrap
 msgid ""
-"After running `git reset <paths>` to update the index entry, you can use "
-"linkgit:git-checkout[1] to check the contents out of the index to the "
-"working tree.  Alternatively, using linkgit:git-checkout[1] and specifying a "
-"commit, you can copy the contents of a path out of a commit to the index and "
-"to the working tree in one go."
+"'git push' [--all | --mirror | --tags] [--follow-tags] [--atomic] [-n | --dry-run] [--receive-pack=<git-receive-pack>]\n"
+"\t   [--repo=<repository>] [-f | --force] [-d | --delete] [--prune] [-v | --verbose]\n"
+"\t   [-u | --set-upstream] [-o <string> | --push-option=<string>]\n"
+"\t   [--[no-]signed|--signed=(true|false|if-asked)]\n"
+"\t   [--force-with-lease[=<refname>[:<expect>]]]\n"
+"\t   [--no-verify] [<repository> [<refspec>...]]\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-reset.txt:37
-#, no-wrap
-msgid "'git reset' (--patch | -p) [<tree-ish>] [--] [<paths>...]"
+#. type: Plain text
+#: en/git-push.txt:24
+msgid ""
+"Updates remote refs using local refs, while sending objects necessary to "
+"complete the given refs."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:41
+#: en/git-push.txt:28
 msgid ""
-"Interactively select hunks in the difference between the index and "
-"<tree-ish> (defaults to HEAD).  The chosen hunks are applied in reverse to "
-"the index."
+"You can make interesting things happen to a repository every time you push "
+"into it, by setting up 'hooks' there.  See documentation for linkgit:git-"
+"receive-pack[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:45
+#: en/git-push.txt:33
 msgid ""
-"This means that `git reset -p` is the opposite of `git add -p`, i.e.  you "
-"can use it to selectively reset hunks. See the ``Interactive Mode'' section "
-"of linkgit:git-add[1] to learn how to operate the `--patch` mode."
+"When the command line does not specify where to push with the `<repository>` "
+"argument, `branch.*.remote` configuration for the current branch is "
+"consulted to determine where to push.  If the configuration is missing, it "
+"defaults to 'origin'."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-reset.txt:46
-#, no-wrap
-msgid "'git reset' [<mode>] [<commit>]"
+#. type: Plain text
+#: en/git-push.txt:39
+msgid ""
+"When the command line does not specify what to push with `<refspec>...` "
+"arguments or `--all`, `--mirror`, `--tags` options, the command finds the "
+"default `<refspec>` by consulting `remote.*.push` configuration, and if it "
+"is not found, honors `push.default` configuration to decide what to push "
+"(See linkgit:git-config[1] for the meaning of `push.default`)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:51
+#: en/git-push.txt:46
 msgid ""
-"This form resets the current branch head to <commit> and possibly updates "
-"the index (resetting it to the tree of <commit>) and the working tree "
-"depending on <mode>. If <mode> is omitted, defaults to \"--mixed\". The "
-"<mode> must be one of the following:"
+"When neither the command-line nor the configuration specify what to push, "
+"the default behavior is used, which corresponds to the `simple` value for "
+"`push.default`: the current branch is pushed to the corresponding upstream "
+"branch, but as a safety measure, the push is aborted if the upstream branch "
+"does not have the same name as the local one."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-reset.txt:53
+#. type: Title -
+#: en/git-push.txt:49
 #, no-wrap
-msgid "--soft"
+msgid "OPTIONS[[OPTIONS]]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:58
+#: en/git-push.txt:55
 msgid ""
-"Does not touch the index file or the working tree at all (but resets the "
-"head to <commit>, just like all modes do). This leaves all your changed "
-"files \"Changes to be committed\", as 'git status' would put it."
+"The \"remote\" repository that is destination of a push operation.  This "
+"parameter can be either a URL (see the section <<URLS,GIT URLS>> below) or "
+"the name of a remote (see the section <<REMOTES,REMOTES>> below)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-reset.txt:59
+#: en/git-push.txt:56
 #, no-wrap
-msgid "--mixed"
+msgid "<refspec>..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:63
+#: en/git-push.txt:61
 msgid ""
-"Resets the index but not the working tree (i.e., the changed files are "
-"preserved but not marked for commit) and reports what has not been "
-"updated. This is the default action."
+"Specify what destination ref to update with what source object.  The format "
+"of a <refspec> parameter is an optional plus `+`, followed by the source "
+"object <src>, followed by a colon `:`, followed by the destination ref <dst>."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:66
+#: en/git-push.txt:65
 msgid ""
-"If `-N` is specified, removed paths are marked as intent-to-add (see "
-"linkgit:git-add[1])."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-reset.txt:67
-#, no-wrap
-msgid "--hard"
+"The <src> is often the name of the branch you would want to push, but it can "
+"be any arbitrary \"SHA-1 expression\", such as `master~4` or `HEAD` (see "
+"linkgit:gitrevisions[7])."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:70
+#: en/git-push.txt:75
 msgid ""
-"Resets the index and working tree. Any changes to tracked files in the "
-"working tree since <commit> are discarded."
+"The <dst> tells which ref on the remote side is updated with this push. "
+"Arbitrary expressions cannot be used here, an actual ref must be named.  If "
+"`git push [<repository>]` without any `<refspec>` argument is set to update "
+"some ref at the destination with `<src>` with `remote.<repository>.push` "
+"configuration variable, `:<dst>` part can be omitted--such a push will "
+"update a ref that `<src>` normally updates without any `<refspec>` on the "
+"command line.  Otherwise, missing `:<dst>` means to update the same ref as "
+"the `<src>`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:78
+#: en/git-push.txt:80
 msgid ""
-"Resets the index and updates the files in the working tree that are "
-"different between <commit> and HEAD, but keeps those which are different "
-"between the index and working tree (i.e. which have changes which have not "
-"been added).  If a file that is different between <commit> and the index has "
-"unstaged changes, reset is aborted."
+"If <dst> doesn't start with `refs/` (e.g. `refs/heads/master`) we will try "
+"to infer where in `refs/*` on the destination <repository> it belongs based "
+"on the the type of <src> being pushed and whether <dst> is ambiguous."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:81
+#: en/git-push.txt:84
 msgid ""
-"In other words, --merge does something like a 'git read-tree -u -m "
-"<commit>', but carries forward unmerged index entries."
+"If <dst> unambiguously refers to a ref on the <repository> remote, then push "
+"to that ref."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:87
+#: en/git-push.txt:87
 msgid ""
-"Resets index entries and updates files in the working tree that are "
-"different between <commit> and HEAD.  If a file that is different between "
-"<commit> and HEAD has local changes, reset is aborted."
+"If <src> resolves to a ref starting with refs/heads/ or refs/tags/, then "
+"prepend that to <dst>."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:91
+#: en/git-push.txt:93
 msgid ""
-"If you want to undo a commit other than the latest on a branch, "
-"linkgit:git-revert[1] is your friend."
+"Other ambiguity resolutions might be added in the future, but for now any "
+"other cases will error out with an error indicating what we tried, and "
+"depending on the `advice.pushUnqualifiedRefname` configuration (see linkgit:"
+"git-config[1]) suggest what refs/ namespace you may have wanted to push to."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:99
-msgid "Be quiet, only report errors."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-reset.txt:104
-#, no-wrap
-msgid "Undo add"
+#: en/git-push.txt:101
+msgid ""
+"The object referenced by <src> is used to update the <dst> reference on the "
+"remote side. Whether this is allowed depends on where in `refs/*` the <dst> "
+"reference lives as described in detail below, in those sections \"update\" "
+"means any modifications except deletes, which as noted after the next few "
+"sections are treated differently."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-reset.txt:112
-#, no-wrap
+#. type: Plain text
+#: en/git-push.txt:104
 msgid ""
-"$ edit                                     <1>\n"
-"$ git add frotz.c filfre.c\n"
-"$ mailx                                    <2>\n"
-"$ git reset                                <3>\n"
-"$ git pull git://info.example.com/ nitfol  <4>\n"
+"The `refs/heads/*` namespace will only accept commit objects, and updates "
+"only if they can be fast-forwarded."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:118
+#: en/git-push.txt:108
 msgid ""
-"You are happily working on something, and find the changes in these files "
-"are in good order.  You do not want to see them when you run \"git diff\", "
-"because you plan to work on other files and changes with these files are "
-"distracting."
+"The `refs/tags/*` namespace will accept any kind of object (as commits, "
+"trees and blobs can be tagged), and any updates to them will be rejected."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:119
-msgid "Somebody asks you to pull, and the changes sounds worthy of merging."
+#: en/git-push.txt:113
+msgid ""
+"It's possible to push any type of object to any namespace outside of `refs/"
+"{tags,heads}/*`. In the case of tags and commits, these will be treated as "
+"if they were the commits inside `refs/heads/*` for the purposes of whether "
+"the update is allowed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:124
+#: en/git-push.txt:122
 msgid ""
-"However, you already dirtied the index (i.e. your index does not match the "
-"HEAD commit).  But you know the pull you are going to make does not affect "
-"frotz.c or filfre.c, so you revert the index changes for these two files.  "
-"Your changes in working tree remain there."
+"I.e. a fast-forward of commits and tags outside `refs/{tags,heads}/*` is "
+"allowed, even in cases where what's being fast-forwarded is not a commit, "
+"but a tag object which happens to point to a new commit which is a fast-"
+"forward of the commit the last tag (or commit) it's replacing. Replacing a "
+"tag with an entirely different tag is also allowed, if it points to the same "
+"commit, as well as pushing a peeled tag, i.e. pushing the commit that "
+"existing tag object points to, or a new tag object which an existing commit "
+"points to."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:126
+#: en/git-push.txt:126
 msgid ""
-"Then you can pull and merge, leaving frotz.c and filfre.c changes still in "
-"the working tree."
+"Tree and blob objects outside of `refs/{tags,heads}/*` will be treated the "
+"same way as if they were inside `refs/tags/*`, any update of them will be "
+"rejected."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-reset.txt:127
-#, no-wrap
-msgid "Undo a commit and redo"
+#. type: Plain text
+#: en/git-push.txt:135
+msgid ""
+"All of the rules described above about what's not allowed as an update can "
+"be overridden by adding an the optional leading `+` to a refspec (or using "
+"`--force` command line option). The only exception to this is that no amount "
+"of forcing will make the `refs/heads/*` namespace accept a non-commit "
+"object. Hooks and configuration can also override or amend these rules, see "
+"e.g. `receive.denyNonFastForwards` in linkgit:git-config[1] and `pre-"
+"receive` and `update` in linkgit:githooks[5]."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-reset.txt:134
-#, no-wrap
+#. type: Plain text
+#: en/git-push.txt:141
 msgid ""
-"$ git commit ...\n"
-"$ git reset --soft HEAD^      <1>\n"
-"$ edit                        <2>\n"
-"$ git commit -a -c ORIG_HEAD  <3>\n"
+"Pushing an empty <src> allows you to delete the <dst> ref from the remote "
+"repository. Deletions are always accepted without a leading `+` in the "
+"refspec (or `--force`), except when forbidden by configuration or hooks. See "
+"`receive.denyDeletes` in linkgit:git-config[1] and `pre-receive` and "
+"`update` in linkgit:githooks[5]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:139
+#: en/git-push.txt:146
 msgid ""
-"This is most often done when you remembered what you just committed is "
-"incomplete, or you misspelled your commit message, or both.  Leaves working "
-"tree as it was before \"reset\"."
+"The special refspec `:` (or `+:` to allow non-fast-forward updates)  directs "
+"Git to push \"matching\" branches: for every branch that exists on the local "
+"side, the remote side is updated if a branch of the same name already exists "
+"on the remote side."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:140
-msgid "Make corrections to working tree files."
+#: en/git-push.txt:148
+msgid "`tag <tag>` means the same as `refs/tags/<tag>:refs/tags/<tag>`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:143
+#: en/git-push.txt:152
 msgid ""
-"\"reset\" copies the old head to .git/ORIG_HEAD; redo the commit by starting "
-"with its log message.  If you do not need to edit the message further, you "
-"can give -C option instead."
+"Push all branches (i.e. refs under `refs/heads/`); cannot be used with other "
+"<refspec>."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:145
-msgid "See also the --amend option to linkgit:git-commit[1]."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-reset.txt:146
-#, no-wrap
-msgid "Undo a commit, making it a topic branch"
+#: en/git-push.txt:160
+msgid ""
+"Remove remote branches that don't have a local counterpart. For example a "
+"remote branch `tmp` will be removed if a local branch with the same name "
+"doesn't exist any more. This also respects refspecs, e.g.  `git push --prune "
+"remote refs/heads/*:refs/tmp/*` would make sure that remote `refs/tmp/foo` "
+"will be removed if `refs/heads/foo` doesn't exist."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-reset.txt:152
-#, no-wrap
+#. type: Plain text
+#: en/git-push.txt:171
 msgid ""
-"$ git branch topic/wip     <1>\n"
-"$ git reset --hard HEAD~3  <2>\n"
-"$ git checkout topic/wip   <3>\n"
+"Instead of naming each ref to push, specifies that all refs under `refs/` "
+"(which includes but is not limited to `refs/heads/`, `refs/remotes/`, and "
+"`refs/tags/`)  be mirrored to the remote repository.  Newly created local "
+"refs will be pushed to the remote end, locally updated refs will be force "
+"updated on the remote end, and deleted refs will be removed from the remote "
+"end.  This is the default if the configuration option `remote.<remote>."
+"mirror` is set."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:158
+#: en/git-push.txt:180
 msgid ""
-"You have made some commits, but realize they were premature to be in the "
-"\"master\" branch.  You want to continue polishing them in a topic branch, "
-"so create \"topic/wip\" branch off of the current HEAD."
+"Produce machine-readable output.  The output status line for each ref will "
+"be tab-separated and sent to stdout instead of stderr.  The full symbolic "
+"names of the refs will be given."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:159
-msgid "Rewind the master branch to get rid of those three commits."
+#: en/git-push.txt:185
+msgid ""
+"All listed refs are deleted from the remote repository. This is the same as "
+"prefixing all refs with a colon."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:160
-msgid "Switch to \"topic/wip\" branch and keep working."
+#: en/git-push.txt:190
+msgid ""
+"All refs under `refs/tags` are pushed, in addition to refspecs explicitly "
+"listed on the command line."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-reset.txt:161
+#: en/git-push.txt:191
 #, no-wrap
-msgid "Undo commits permanently"
+msgid "--follow-tags"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-reset.txt:166
-#, no-wrap
+#. type: Plain text
+#: en/git-push.txt:198
 msgid ""
-"$ git commit ...\n"
-"$ git reset --hard HEAD~3   <1>\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-reset.txt:173
-msgid ""
-"The last three commits (HEAD, HEAD^, and HEAD~2) were bad and you do not "
-"want to ever see them again.  Do *not* do this if you have already given "
-"these commits to somebody else.  (See the \"RECOVERING FROM UPSTREAM "
-"REBASE\" section in linkgit:git-rebase[1] for the implications of doing so.)"
+"Push all the refs that would be pushed without this option, and also push "
+"annotated tags in `refs/tags` that are missing from the remote but are "
+"pointing at commit-ish that are reachable from the refs being pushed.  This "
+"can also be specified with configuration variable `push.followTags`.  For "
+"more information, see `push.followTags` in linkgit:git-config[1]."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-reset.txt:174
+#: en/git-push.txt:199 en/git-send-pack.txt:73
 #, no-wrap
-msgid "Undo a merge or pull"
+msgid "--[no-]signed"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-reset.txt:186
+#. type: Labeled list
+#: en/git-push.txt:200 en/git-send-pack.txt:74
 #, no-wrap
-msgid ""
-"$ git pull                         <1>\n"
-"Auto-merging nitfol\n"
-"CONFLICT (content): Merge conflict in nitfol\n"
-"Automatic merge failed; fix conflicts and then commit the result.\n"
-"$ git reset --hard                 <2>\n"
-"$ git pull . topic/branch          <3>\n"
-"Updating from 41223... to 13134...\n"
-"Fast-forward\n"
-"$ git reset --hard ORIG_HEAD       <4>\n"
+msgid "--signed=(true|false|if-asked)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:191
+#: en/git-push.txt:209 en/git-send-pack.txt:83
 msgid ""
-"Try to update from the upstream resulted in a lot of conflicts; you were not "
-"ready to spend a lot of time merging right now, so you decide to do that "
-"later."
+"GPG-sign the push request to update refs on the receiving side, to allow it "
+"to be checked by the hooks and/or be logged.  If `false` or `--no-signed`, "
+"no signing will be attempted.  If `true` or `--signed`, the push will fail "
+"if the server does not support signed pushes.  If set to `if-asked`, sign if "
+"and only if the server supports signed pushes.  The push will also fail if "
+"the actual call to `gpg --sign` fails.  See linkgit:git-receive-pack[1] for "
+"the details on the receiving end."
 msgstr ""
 
-#. type: Plain text
-#: en/git-reset.txt:194
-msgid ""
-"\"pull\" has not made merge commit, so \"git reset --hard\" which is a "
-"synonym for \"git reset --hard HEAD\" clears the mess from the index file "
-"and the working tree."
+#. type: Labeled list
+#: en/git-push.txt:210
+#, no-wrap
+msgid "--[no-]atomic"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:196
+#: en/git-push.txt:214
 msgid ""
-"Merge a topic branch into the current branch, which resulted in a "
-"fast-forward."
+"Use an atomic transaction on the remote side if available.  Either all refs "
+"are updated, or on error, no refs are updated.  If the server does not "
+"support atomic pushes the push will fail."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-push.txt:216
+#, no-wrap
+msgid "--push-option=<option>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:201
+#: en/git-push.txt:226
 msgid ""
-"But you decided that the topic branch is not ready for public consumption "
-"yet.  \"pull\" or \"merge\" always leaves the original tip of the current "
-"branch in ORIG_HEAD, so resetting hard to it brings your index file and the "
-"working tree back to that state, and resets the tip of the branch to that "
-"commit."
+"Transmit the given string to the server, which passes them to the pre-"
+"receive as well as the post-receive hook. The given string must not contain "
+"a NUL or LF character.  When multiple `--push-option=<option>` are given, "
+"they are all sent to the other side in the order listed on the command "
+"line.  When no `--push-option=<option>` is given from the command line, the "
+"values of configuration variable `push.pushOption` are used instead."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-reset.txt:202
+#: en/git-push.txt:227 en/git-send-pack.txt:28
 #, no-wrap
-msgid "Undo a merge or pull inside a dirty working tree"
+msgid "--receive-pack=<git-receive-pack>"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-reset.txt:211
+#. type: Labeled list
+#: en/git-push.txt:228 en/git-send-pack.txt:34
 #, no-wrap
-msgid ""
-"$ git pull                         <1>\n"
-"Auto-merging nitfol\n"
-"Merge made by recursive.\n"
-" nitfol                |   20 +++++----\n"
-" ...\n"
-"$ git reset --merge ORIG_HEAD      <2>\n"
+msgid "--exec=<git-receive-pack>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:217
+#: en/git-push.txt:233 en/git-send-pack.txt:33
 msgid ""
-"Even if you may have local modifications in your working tree, you can "
-"safely say \"git pull\" when you know that the change in the other branch "
-"does not overlap with them."
+"Path to the 'git-receive-pack' program on the remote end.  Sometimes useful "
+"when pushing to a remote repository over ssh, and you do not have the "
+"program in a directory on the default $PATH."
 msgstr ""
 
-#. type: Plain text
-#: en/git-reset.txt:222
-msgid ""
-"After inspecting the result of the merge, you may find that the change in "
-"the other branch is unsatisfactory.  Running \"git reset --hard ORIG_HEAD\" "
-"will let you go back to where you were, but it will discard your local "
-"changes, which you do not want.  \"git reset --merge\" keeps your local "
-"changes."
+#. type: Labeled list
+#: en/git-push.txt:234
+#, no-wrap
+msgid "--[no-]force-with-lease"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-reset.txt:224 en/git-stash.txt:224
+#: en/git-push.txt:235
 #, no-wrap
-msgid "Interrupted workflow"
+msgid "--force-with-lease=<refname>"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-push.txt:236
+#, no-wrap
+msgid "--force-with-lease=<refname>:<expect>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:230
+#: en/git-push.txt:239
 msgid ""
-"Suppose you are interrupted by an urgent fix request while you are in the "
-"middle of a large change.  The files in your working tree are not in any "
-"shape to be committed yet, but you need to get to the other branch for a "
-"quick bugfix."
+"Usually, \"git push\" refuses to update a remote ref that is not an ancestor "
+"of the local ref used to overwrite it."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-reset.txt:241
-#, no-wrap
+#. type: Plain text
+#: en/git-push.txt:242
 msgid ""
-"$ git checkout feature ;# you were working in \"feature\" branch and\n"
-"$ work work work       ;# got interrupted\n"
-"$ git commit -a -m \"snapshot WIP\"                 <1>\n"
-"$ git checkout master\n"
-"$ fix fix fix\n"
-"$ git commit ;# commit with real log\n"
-"$ git checkout feature\n"
-"$ git reset --soft HEAD^ ;# go back to WIP state  <2>\n"
-"$ git reset                                       <3>\n"
+"This option overrides this restriction if the current value of the remote "
+"ref is the expected value.  \"git push\" fails otherwise."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:244
-msgid "This commit will get blown away so a throw-away log message is OK."
+#: en/git-push.txt:249
+msgid ""
+"Imagine that you have to rebase what you have already published.  You will "
+"have to bypass the \"must fast-forward\" rule in order to replace the "
+"history you originally published with the rebased history.  If somebody else "
+"built on top of your original history while you are rebasing, the tip of the "
+"branch at the remote may advance with her commit, and blindly pushing with "
+"`--force` will lose her work."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:246
+#: en/git-push.txt:256
 msgid ""
-"This removes the 'WIP' commit from the commit history, and sets your working "
-"tree to the state just before you made that snapshot."
+"This option allows you to say that you expect the history you are updating "
+"is what you rebased and want to replace. If the remote ref still points at "
+"the commit you specified, you can be sure that no other people did anything "
+"to the ref. It is like taking a \"lease\" on the ref without explicitly "
+"locking it, and the remote ref is updated only if the \"lease\" is still "
+"valid."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:249
+#: en/git-push.txt:261
 msgid ""
-"At this point the index file still has all the WIP changes you committed as "
-"'snapshot WIP'.  This updates the index to show your WIP files as "
-"uncommitted."
+"`--force-with-lease` alone, without specifying the details, will protect all "
+"remote refs that are going to be updated by requiring their current value to "
+"be the same as the remote-tracking branch we have for them."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:251
-msgid "See also linkgit:git-stash[1]."
+#: en/git-push.txt:266
+msgid ""
+"`--force-with-lease=<refname>`, without specifying the expected value, will "
+"protect the named ref (alone), if it is going to be updated, by requiring "
+"its current value to be the same as the remote-tracking branch we have for "
+"it."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-reset.txt:252
-#, no-wrap
-msgid "Reset a single file in the index"
+#. type: Plain text
+#: en/git-push.txt:274
+msgid ""
+"`--force-with-lease=<refname>:<expect>` will protect the named ref (alone), "
+"if it is going to be updated, by requiring its current value to be the same "
+"as the specified value `<expect>` (which is allowed to be different from the "
+"remote-tracking branch we have for the refname, or we do not even have to "
+"have such a remote-tracking branch when this form is used).  If `<expect>` "
+"is the empty string, then the named ref must not already exist."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:257
+#: en/git-push.txt:279
 msgid ""
-"Suppose you have added a file to your index, but later decide you do not "
-"want to add it to your commit. You can remove the file from the index while "
-"keeping your changes with git reset."
+"Note that all forms other than `--force-with-lease=<refname>:<expect>` that "
+"specifies the expected current value of the ref explicitly are still "
+"experimental and their semantics may change as we gain experience with this "
+"feature."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-reset.txt:262
-#, no-wrap
+#. type: Plain text
+#: en/git-push.txt:282
 msgid ""
-"$ git reset -- frotz.c                      <1>\n"
-"$ git commit -m \"Commit files in index\"     <2>\n"
-"$ git add frotz.c                           <3>\n"
+"\"--no-force-with-lease\" will cancel all the previous --force-with-lease on "
+"the command line."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:266
+#: en/git-push.txt:288
 msgid ""
-"This removes the file from the index while keeping it in the working "
-"directory."
+"A general note on safety: supplying this option without an expected value, i."
+"e. as `--force-with-lease` or `--force-with-lease=<refname>` interacts very "
+"badly with anything that implicitly runs `git fetch` on the remote to be "
+"pushed to in the background, e.g. `git fetch origin` on your repository in a "
+"cronjob."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:267
-msgid "This commits all other changes in the index."
+#: en/git-push.txt:295
+msgid ""
+"The protection it offers over `--force` is ensuring that subsequent changes "
+"your work wasn't based on aren't clobbered, but this is trivially defeated "
+"if some background process is updating refs in the background. We don't have "
+"anything except the remote tracking info to go by as a heuristic for refs "
+"you're expected to have seen & are willing to clobber."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:268
-msgid "Adds the file to the index again."
+#: en/git-push.txt:299
+msgid ""
+"If your editor or some other system is running `git fetch` in the background "
+"for you a way to mitigate this is to simply set up another remote:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-reset.txt:269
+#. type: Plain text
+#: en/git-push.txt:302
 #, no-wrap
-msgid "Keep changes in working tree while discarding some previous commits"
+msgid ""
+"\tgit remote add origin-push $(git config remote.origin.url)\n"
+"\tgit fetch origin-push\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:276
+#: en/git-push.txt:305
 msgid ""
-"Suppose you are working on something and you commit it, and then you "
-"continue working a bit more, but now you think that what you have in your "
-"working tree should be in another branch that has nothing to do with what "
-"you committed previously. You can start a new branch and reset it while "
-"keeping the changes in your working tree."
+"Now when the background process runs `git fetch origin` the references on "
+"`origin-push` won't be updated, and thus commands like:"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-reset.txt:285
+#. type: Plain text
+#: en/git-push.txt:307
 #, no-wrap
+msgid "\tgit push --force-with-lease origin-push\n"
+msgstr ""
+
+#. type: Plain text
+#: en/git-push.txt:312
 msgid ""
-"$ git tag start\n"
-"$ git checkout -b branch1\n"
-"$ edit\n"
-"$ git commit ...                            <1>\n"
-"$ edit\n"
-"$ git checkout -b branch2                   <2>\n"
-"$ git reset --keep start                    <3>\n"
+"Will fail unless you manually run `git fetch origin-push`. This method is of "
+"course entirely defeated by something that runs `git fetch --all`, in that "
+"case you'd need to either disable it or do something more tedious like:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:288
-msgid "This commits your first edits in branch1."
+#: en/git-push.txt:317
+#, no-wrap
+msgid ""
+"\tgit fetch              # update 'master' from remote\n"
+"\tgit tag base master    # mark our base point\n"
+"\tgit rebase -i master   # rewrite some commits\n"
+"\tgit push --force-with-lease=master:base master:master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:292
+#: en/git-push.txt:323
 msgid ""
-"In the ideal world, you could have realized that the earlier commit did not "
-"belong to the new topic when you created and switched to branch2 (i.e. \"git "
-"checkout -b branch2 start\"), but nobody is perfect."
+"I.e. create a `base` tag for versions of the upstream code that you've seen "
+"and are willing to overwrite, then rewrite history, and finally force push "
+"changes to `master` if the remote version is still at `base`, regardless of "
+"what your local `remotes/origin/master` has been updated to in the "
+"background."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:294
+#: en/git-push.txt:331
 msgid ""
-"But you can use \"reset --keep\" to remove the unwanted commit after you "
-"switched to \"branch2\"."
+"Usually, the command refuses to update a remote ref that is not an ancestor "
+"of the local ref used to overwrite it.  Also, when `--force-with-lease` "
+"option is used, the command refuses to update a remote ref whose current "
+"value does not match what is expected."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-reset.txt:295
-#, no-wrap
-msgid "Split a commit apart into a sequence of commits"
+#. type: Plain text
+#: en/git-push.txt:334
+msgid ""
+"This flag disables these checks, and can cause the remote repository to lose "
+"commits; use it with care."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:303
+#: en/git-push.txt:343
 msgid ""
-"Suppose that you have created lots of logically separate changes and "
-"commited them together. Then, later you decide that it might be better to "
-"have each logical chunk associated with its own commit. You can use git "
-"reset to rewind history without changing the contents of your local files, "
-"and then successively use `git add -p` to interactively select which hunks "
-"to include into each commit, using `git commit -c` to pre-populate the "
-"commit message."
+"Note that `--force` applies to all the refs that are pushed, hence using it "
+"with `push.default` set to `matching` or with multiple push destinations "
+"configured with `remote.*.push` may overwrite refs other than the current "
+"branch (including local refs that are strictly behind their remote "
+"counterpart).  To force a push to only one branch, use a `+` in front of the "
+"refspec to push (e.g `git push origin +master` to force a push to the "
+"`master` branch). See the `<refspec>...` section above for details."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-reset.txt:313
+#. type: Labeled list
+#: en/git-push.txt:344
 #, no-wrap
-msgid ""
-"$ git reset -N HEAD^                        <1>\n"
-"$ git add -p                                <2>\n"
-"$ git diff --cached                         <3>\n"
-"$ git commit -c HEAD@{1}                    <4>\n"
-"...                                         <5>\n"
-"$ git add ...                               <6>\n"
-"$ git diff --cached                         <7>\n"
-"$ git commit ...                            <8>\n"
+msgid "--repo=<repository>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:319
+#: en/git-push.txt:347
 msgid ""
-"First, reset the history back one commit so that we remove the original "
-"commit, but leave the working tree with all the changes. The -N ensures that "
-"any new files added with HEAD are still marked so that git add -p will find "
-"them."
+"This option is equivalent to the <repository> argument. If both are "
+"specified, the command-line argument takes precedence."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:323
+#: en/git-push.txt:354
 msgid ""
-"Next, we interactively select diff hunks to add using the git add -p "
-"facility. This will ask you about each diff hunk in sequence and you can use "
-"simple commands such as \"yes, include this\", \"No don't include this\" or "
-"even the very powerful \"edit\" facility."
+"For every branch that is up to date or successfully pushed, add upstream "
+"(tracking) reference, used by argument-less linkgit:git-pull[1] and other "
+"commands. For more information, see `branch.<name>.merge` in linkgit:git-"
+"config[1]."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-push.txt:355
+#, no-wrap
+msgid "--[no-]thin"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:327
+#: en/git-push.txt:360
 msgid ""
-"Once satisfied with the hunks you want to include, you should verify what "
-"has been prepared for the first commit by using git diff --cached. This "
-"shows all the changes that have been moved into the index and are about to "
-"be committed."
+"These options are passed to linkgit:git-send-pack[1]. A thin transfer "
+"significantly reduces the amount of sent data when the sender and receiver "
+"share many of the same objects in common. The default is `--thin`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:333
+#: en/git-push.txt:366
 msgid ""
-"Next, commit the changes stored in the index. The -c option specifies to "
-"pre-populate the commit message from the original message that you started "
-"with in the first commit. This is helpful to avoid retyping it. The HEAD@{1} "
-"is a special notation for the commit that HEAD used to be at prior to the "
-"original reset commit (1 change ago). See linkgit:git-reflog[1] for more "
-"details. You may also use any other valid commit reference."
+"Suppress all output, including the listing of updated refs, unless an error "
+"occurs. Progress is not reported to the standard error stream."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-push.txt:378
+#, no-wrap
+msgid "--recurse-submodules=check|on-demand|only|no"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:335
+#: en/git-push.txt:392
 msgid ""
-"You can repeat steps 2-4 multiple times to break the original code into any "
-"number of commits."
+"May be used to make sure all submodule commits used by the revisions to be "
+"pushed are available on a remote-tracking branch.  If 'check' is used Git "
+"will verify that all submodule commits that changed in the revisions to be "
+"pushed are available on at least one remote of the submodule. If any commits "
+"are missing the push will be aborted and exit with non-zero status. If 'on-"
+"demand' is used all submodules that changed in the revisions to be pushed "
+"will be pushed. If on-demand was not able to push all necessary revisions it "
+"will also be aborted and exit with non-zero status. If 'only' is used all "
+"submodules will be recursively pushed while the superproject is left "
+"unpushed. A value of 'no' or using `--no-recurse-submodules` can be used to "
+"override the push.recurseSubmodules configuration variable when no submodule "
+"recursion is required."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-push.txt:393
+#, no-wrap
+msgid "--[no-]verify"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:338
+#: en/git-push.txt:397
 msgid ""
-"Now you've split out many of the changes into their own commits, and might "
-"no longer use the patch mode of git add, in order to select all remaining "
-"uncommitted changes."
+"Toggle the pre-push hook (see linkgit:githooks[5]).  The default is --"
+"verify, giving the hook a chance to prevent the push.  With --no-verify, the "
+"hook is bypassed completely."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:341
+#: en/git-push.txt:414
 msgid ""
-"Once again, check to verify that you've included what you want to. You may "
-"also wish to verify that git diff doesn't show any remaining changes to be "
-"committed later."
+"The output of \"git push\" depends on the transport method used; this "
+"section describes the output when pushing over the Git protocol (either "
+"locally or via ssh)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:342
-msgid "And finally create the final commit."
+#: en/git-push.txt:417
+msgid ""
+"The status of the push is output in tabular form, with each line "
+"representing the status of a single ref. Each line is of the form:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-push.txt:420
+#, no-wrap
+msgid " <flag> <summary> <from> -> <to> (<reason>)\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:348
-msgid "The tables below show what happens when running:"
+#: en/git-push.txt:423
+msgid "If --porcelain is used, then each line of the output is of the form:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-reset.txt:351
+#: en/git-push.txt:426
 #, no-wrap
-msgid "git reset --option target\n"
+msgid " <flag> \\t <from>:<to> \\t <summary> (<reason>)\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:355
+#: en/git-push.txt:430
 msgid ""
-"to reset the HEAD to another commit (`target`) with the different reset "
-"options depending on the state of the files."
+"The status of up-to-date refs is shown only if --porcelain or --verbose "
+"option is used."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:364
-msgid ""
-"In these tables, A, B, C and D are some different states of a file. For "
-"example, the first line of the first table means that if a file is in state "
-"A in the working tree, in state B in the index, in state C in HEAD and in "
-"state D in the target, then \"git reset --soft target\" will leave the file "
-"in the working tree in state A and in the index in state B.  It resets "
-"(i.e. moves) the HEAD (i.e. the tip of the current branch, if you are on "
-"one) to \"target\" (which has the file in state D)."
+#: en/git-push.txt:434
+msgid "for a successfully pushed fast-forward;"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:372
-#, no-wrap
-msgid ""
-"      working index HEAD target         working index HEAD\n"
-"      ----------------------------------------------------\n"
-"       A       B     C    D     --soft   A       B     D\n"
-"\t\t\t\t--mixed  A       D     D\n"
-"\t\t\t\t--hard   D       D     D\n"
-"\t\t\t\t--merge (disallowed)\n"
-"\t\t\t\t--keep  (disallowed)\n"
+#: en/git-push.txt:436
+msgid "for a successfully deleted ref;"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:380
-#, no-wrap
-msgid ""
-"      working index HEAD target         working index HEAD\n"
-"      ----------------------------------------------------\n"
-"       A       B     C    C     --soft   A       B     C\n"
-"\t\t\t\t--mixed  A       C     C\n"
-"\t\t\t\t--hard   C       C     C\n"
-"\t\t\t\t--merge (disallowed)\n"
-"\t\t\t\t--keep   A       C     C\n"
+#: en/git-push.txt:437
+msgid "for a successfully pushed new ref;"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:388
-#, no-wrap
-msgid ""
-"      working index HEAD target         working index HEAD\n"
-"      ----------------------------------------------------\n"
-"       B       B     C    D     --soft   B       B     D\n"
-"\t\t\t\t--mixed  B       D     D\n"
-"\t\t\t\t--hard   D       D     D\n"
-"\t\t\t\t--merge  D       D     D\n"
-"\t\t\t\t--keep  (disallowed)\n"
+#: en/git-push.txt:438
+msgid "for a ref that was rejected or failed to push; and"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:396
-#, no-wrap
-msgid ""
-"      working index HEAD target         working index HEAD\n"
-"      ----------------------------------------------------\n"
-"       B       B     C    C     --soft   B       B     C\n"
-"\t\t\t\t--mixed  B       C     C\n"
-"\t\t\t\t--hard   C       C     C\n"
-"\t\t\t\t--merge  C       C     C\n"
-"\t\t\t\t--keep   B       C     C\n"
+#: en/git-push.txt:439
+msgid "for a ref that was up to date and did not need pushing."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:404
-#, no-wrap
+#: en/git-push.txt:445
 msgid ""
-"      working index HEAD target         working index HEAD\n"
-"      ----------------------------------------------------\n"
-"       B       C     C    D     --soft   B       C     D\n"
-"\t\t\t\t--mixed  B       D     D\n"
-"\t\t\t\t--hard   D       D     D\n"
-"\t\t\t\t--merge (disallowed)\n"
-"\t\t\t\t--keep  (disallowed)\n"
+"For a successfully pushed ref, the summary shows the old and new values of "
+"the ref in a form suitable for using as an argument to `git log` (this is "
+"`<old>..<new>` in most cases, and `<old>...<new>` for forced non-fast-"
+"forward updates)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:412
+#: en/git-push.txt:447
+msgid "For a failed update, more details are given:"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-push.txt:449
 #, no-wrap
-msgid ""
-"      working index HEAD target         working index HEAD\n"
-"      ----------------------------------------------------\n"
-"       B       C     C    C     --soft   B       C     C\n"
-"\t\t\t\t--mixed  B       C     C\n"
-"\t\t\t\t--hard   C       C     C\n"
-"\t\t\t\t--merge  B       C     C\n"
-"\t\t\t\t--keep   B       C     C\n"
+msgid "rejected"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:421
+#: en/git-push.txt:452
 msgid ""
-"\"reset --merge\" is meant to be used when resetting out of a conflicted "
-"merge. Any mergy operation guarantees that the working tree file that is "
-"involved in the merge does not have local change wrt the index before it "
-"starts, and that it writes the result out to the working tree. So if we see "
-"some difference between the index and the target and also between the index "
-"and the working tree, then it means that we are not resetting out from a "
-"state that a mergy operation left after failing with a conflict. That is why "
-"we disallow --merge option in this case."
+"Git did not try to send the ref at all, typically because it is not a fast-"
+"forward and you did not force the update."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-push.txt:453
+#, no-wrap
+msgid "remote rejected"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:430
+#: en/git-push.txt:461
 msgid ""
-"\"reset --keep\" is meant to be used when removing some of the last commits "
-"in the current branch while keeping changes in the working tree. If there "
-"could be conflicts between the changes in the commit we want to remove and "
-"the changes in the working tree we want to keep, the reset is "
-"disallowed. That's why it is disallowed if there are both changes between "
-"the working tree and HEAD, and between HEAD and the target. To be safe, it "
-"is also disallowed when there are unmerged entries."
+"The remote end refused the update.  Usually caused by a hook on the remote "
+"side, or because the remote repository has one of the following safety "
+"options in effect: `receive.denyCurrentBranch` (for pushes to the checked "
+"out branch), `receive.denyNonFastForwards` (for forced non-fast-forward "
+"updates), `receive.denyDeletes` or `receive.denyDeleteCurrent`.  See linkgit:"
+"git-config[1]."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-push.txt:462
+#, no-wrap
+msgid "remote failure"
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:433
-msgid "The following tables show what happens when there are unmerged entries:"
+#: en/git-push.txt:466
+msgid ""
+"The remote end did not report the successful update of the ref, perhaps "
+"because of a temporary error on the remote side, a break in the network "
+"connection, or other transient error."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:441
-#, no-wrap
+#: en/git-push.txt:472
 msgid ""
-"      working index HEAD target         working index HEAD\n"
-"      ----------------------------------------------------\n"
-"       X       U     A    B     --soft  (disallowed)\n"
-"\t\t\t\t--mixed  X       B     B\n"
-"\t\t\t\t--hard   B       B     B\n"
-"\t\t\t\t--merge  B       B     B\n"
-"\t\t\t\t--keep  (disallowed)\n"
+"The name of the local ref being pushed, minus its `refs/<type>/` prefix. In "
+"the case of deletion, the name of the local ref is omitted."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:449
-#, no-wrap
+#: en/git-push.txt:476
 msgid ""
-"      working index HEAD target         working index HEAD\n"
-"      ----------------------------------------------------\n"
-"       X       U     A    A     --soft  (disallowed)\n"
-"\t\t\t\t--mixed  X       A     A\n"
-"\t\t\t\t--hard   A       A     A\n"
-"\t\t\t\t--merge  A       A     A\n"
-"\t\t\t\t--keep  (disallowed)\n"
+"The name of the remote ref being updated, minus its `refs/<type>/` prefix."
 msgstr ""
 
 #. type: Plain text
-#: en/git-reset.txt:451
-msgid "X means any state and U means an unmerged index."
+#: en/git-push.txt:481
+msgid ""
+"A human-readable explanation. In the case of successfully pushed refs, no "
+"explanation is needed. For a failed ref, the reason for failure is described."
 msgstr ""
 
-#. type: Title =
-#: en/git-revert.txt:2
+#. type: Title -
+#: en/git-push.txt:483
 #, no-wrap
-msgid "git-revert(1)"
+msgid "NOTE ABOUT FAST-FORWARDS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-revert.txt:7
-msgid "git-revert - Revert some existing commits"
+#: en/git-push.txt:488
+msgid ""
+"When an update changes a branch (or more in general, a ref) that used to "
+"point at commit A to point at another commit B, it is called a fast-forward "
+"update if and only if B is a descendant of A."
 msgstr ""
 
 #. type: Plain text
-#: en/git-revert.txt:15
-#, no-wrap
+#: en/git-push.txt:492
 msgid ""
-"'git revert' [--[no-]edit] [-n] [-m parent-number] [-s] [-S[<keyid>]] "
-"<commit>...\n"
-"'git revert' --continue\n"
-"'git revert' --quit\n"
-"'git revert' --abort\n"
+"In a fast-forward update from A to B, the set of commits that the original "
+"commit A built on top of is a subset of the commits the new commit B builds "
+"on top of.  Hence, it does not lose any history."
 msgstr ""
 
 #. type: Plain text
-#: en/git-revert.txt:23
+#: en/git-push.txt:497
 msgid ""
-"Given one or more existing commits, revert the changes that the related "
-"patches introduce, and record some new commits that record them.  This "
-"requires your working tree to be clean (no modifications from the HEAD "
-"commit)."
+"In contrast, a non-fast-forward update will lose history.  For example, "
+"suppose you and somebody else started at the same commit X, and you built a "
+"history leading to commit B while the other person built a history leading "
+"to commit A.  The history looks like this:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-revert.txt:32
+#. type: delimited block -
+#: en/git-push.txt:503
+#, no-wrap
 msgid ""
-"Note: 'git revert' is used to record some new commits to reverse the effect "
-"of some earlier commits (often only a faulty one).  If you want to throw "
-"away all uncommitted changes in your working directory, you should see "
-"linkgit:git-reset[1], particularly the `--hard` option.  If you want to "
-"extract specific files as they were in another commit, you should see "
-"linkgit:git-checkout[1], specifically the `git checkout <commit> -- "
-"<filename>` syntax.  Take care with these alternatives as both will discard "
-"uncommitted changes in your working directory."
+"      B\n"
+"     /\n"
+" ---X---A\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-revert.txt:42
+#: en/git-push.txt:509
 msgid ""
-"Commits to revert.  For a more complete list of ways to spell commit names, "
-"see linkgit:gitrevisions[7].  Sets of commits can also be given but no "
-"traversal is done by default, see linkgit:git-rev-list[1] and its "
-"`--no-walk` option."
+"Further suppose that the other person already pushed changes leading to A "
+"back to the original repository from which you two obtained the original "
+"commit X."
 msgstr ""
 
 #. type: Plain text
-#: en/git-revert.txt:48
+#: en/git-push.txt:512
 msgid ""
-"With this option, 'git revert' will let you edit the commit message prior to "
-"committing the revert. This is the default if you run the command from a "
-"terminal."
+"The push done by the other person updated the branch that used to point at "
+"commit X to point at commit A.  It is a fast-forward."
 msgstr ""
 
 #. type: Plain text
-#: en/git-revert.txt:56
+#: en/git-push.txt:517
 msgid ""
-"Usually you cannot revert a merge because you do not know which side of the "
-"merge should be considered the mainline.  This option specifies the parent "
-"number (starting from 1) of the mainline and allows revert to reverse the "
-"change relative to the specified parent."
+"But if you try to push, you will attempt to update the branch (that now "
+"points at A) with commit B.  This does _not_ fast-forward.  If you did so, "
+"the changes introduced by commit A will be lost, because everybody will now "
+"start building on top of B."
 msgstr ""
 
 #. type: Plain text
-#: en/git-revert.txt:61
+#: en/git-push.txt:520
 msgid ""
-"Reverting a merge commit declares that you will never want the tree changes "
-"brought in by the merge.  As a result, later merges will only bring in tree "
-"changes introduced by commits that are not ancestors of the previously "
-"reverted merge.  This may or may not be what you want."
+"The command by default does not allow an update that is not a fast-forward "
+"to prevent such loss of history."
 msgstr ""
 
 #. type: Plain text
-#: en/git-revert.txt:64
+#: en/git-push.txt:525
 msgid ""
-"See the link:howto/revert-a-faulty-merge.html[revert-a-faulty-merge How-To] "
-"for more details."
+"If you do not want to lose your work (history from X to B) or the work by "
+"the other person (history from X to A), you would need to first fetch the "
+"history from the repository, create a history that contains changes done by "
+"both parties, and push the result back."
 msgstr ""
 
 #. type: Plain text
-#: en/git-revert.txt:68
-msgid "With this option, 'git revert' will not start the commit message editor."
+#: en/git-push.txt:529
+msgid ""
+"You can perform \"git pull\", resolve potential conflicts, and \"git push\" "
+"the result.  A \"git pull\" will create a merge commit C between commits A "
+"and B."
+msgstr ""
+
+#. type: delimited block -
+#: en/git-push.txt:535
+#, no-wrap
+msgid ""
+"      B---C\n"
+"     /   /\n"
+" ---X---A\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-revert.txt:79
+#: en/git-push.txt:540
 msgid ""
-"Usually the command automatically creates some commits with commit log "
-"messages stating which commits were reverted.  This flag applies the changes "
-"necessary to revert the named commits to your working tree and the index, "
-"but does not make the commits.  In addition, when this option is used, your "
-"index does not have to match the HEAD commit.  The revert is done against "
-"the beginning state of your index."
+"Updating A with the resulting merge commit will fast-forward and your push "
+"will be accepted."
 msgstr ""
 
 #. type: Plain text
-#: en/git-revert.txt:82
+#: en/git-push.txt:545
 msgid ""
-"This is useful when reverting more than one commits' effect to your index in "
-"a row."
+"Alternatively, you can rebase your change between X and B on top of A, with "
+"\"git pull --rebase\", and push the result back.  The rebase will create a "
+"new commit D that builds the change between X and B on top of A."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-revert.txt:110
+#. type: delimited block -
+#: en/git-push.txt:551
 #, no-wrap
-msgid "`git revert HEAD~3`"
+msgid ""
+"      B   D\n"
+"     /   /\n"
+" ---X---A\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-revert.txt:114
+#: en/git-push.txt:556
 msgid ""
-"Revert the changes specified by the fourth last commit in HEAD and create a "
-"new commit with the reverted changes."
+"Again, updating A with this commit will fast-forward and your push will be "
+"accepted."
+msgstr ""
+
+#. type: Plain text
+#: en/git-push.txt:567
+msgid ""
+"There is another common situation where you may encounter non-fast-forward "
+"rejection when you try to push, and it is possible even when you are pushing "
+"into a repository nobody else pushes into. After you push commit A yourself "
+"(in the first picture in this section), replace it with \"git commit --amend"
+"\" to produce commit B, and you try to push it out, because forgot that you "
+"have pushed A out already. In such a case, and only if you are certain that "
+"nobody in the meantime fetched your earlier commit A (and started building "
+"on top of it), you can run \"git push --force\" to overwrite it. In other "
+"words, \"git push --force\" is a method reserved for a case where you do "
+"mean to lose history."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-revert.txt:115
+#: en/git-push.txt:572
 #, no-wrap
-msgid "`git revert -n master~5..master~2`"
+msgid "`git push`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-revert.txt:122
+#: en/git-push.txt:576
 msgid ""
-"Revert the changes done by commits from the fifth last commit in master "
-"(included) to the third last commit in master (included), but do not create "
-"any commit with the reverted changes. The revert only modifies the working "
-"tree and the index."
+"Works like `git push <remote>`, where <remote> is the current branch's "
+"remote (or `origin`, if no remote is configured for the current branch)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-revert.txt:126 en/cmds-mainporcelain.txt:22
-#, no-wrap
-msgid "linkgit:git-cherry-pick[1]"
-msgstr ""
-
-#. type: Title =
-#: en/git-rev-list.txt:2
+#: en/git-push.txt:577
 #, no-wrap
-msgid "git-rev-list(1)"
+msgid "`git push origin`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-list.txt:7
-msgid "git-rev-list - Lists commit objects in reverse chronological order"
+#: en/git-push.txt:582
+msgid ""
+"Without additional configuration, pushes the current branch to the "
+"configured upstream (`remote.origin.merge` configuration variable) if it has "
+"the same name as the current branch, and errors out without pushing "
+"otherwise."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-list.txt:62
-#, no-wrap
+#: en/git-push.txt:586
 msgid ""
-"'git rev-list' [ --max-count=<number> ]\n"
-"\t     [ --skip=<number> ]\n"
-"\t     [ --max-age=<timestamp> ]\n"
-"\t     [ --min-age=<timestamp> ]\n"
-"\t     [ --sparse ]\n"
-"\t     [ --merges ]\n"
-"\t     [ --no-merges ]\n"
-"\t     [ --min-parents=<number> ]\n"
-"\t     [ --no-min-parents ]\n"
-"\t     [ --max-parents=<number> ]\n"
-"\t     [ --no-max-parents ]\n"
-"\t     [ --first-parent ]\n"
-"\t     [ --remove-empty ]\n"
-"\t     [ --full-history ]\n"
-"\t     [ --not ]\n"
-"\t     [ --all ]\n"
-"\t     [ --branches[=<pattern>] ]\n"
-"\t     [ --tags[=<pattern>] ]\n"
-"\t     [ --remotes[=<pattern>] ]\n"
-"\t     [ --glob=<glob-pattern> ]\n"
-"\t     [ --ignore-missing ]\n"
-"\t     [ --stdin ]\n"
-"\t     [ --quiet ]\n"
-"\t     [ --topo-order ]\n"
-"\t     [ --parents ]\n"
-"\t     [ --timestamp ]\n"
-"\t     [ --left-right ]\n"
-"\t     [ --left-only ]\n"
-"\t     [ --right-only ]\n"
-"\t     [ --cherry-mark ]\n"
-"\t     [ --cherry-pick ]\n"
-"\t     [ --encoding=<encoding> ]\n"
-"\t     [ --(author|committer|grep)=<pattern> ]\n"
-"\t     [ --regexp-ignore-case | -i ]\n"
-"\t     [ --extended-regexp | -E ]\n"
-"\t     [ --fixed-strings | -F ]\n"
-"\t     [ --date=<format>]\n"
-"\t     [ [ --objects | --objects-edge | --objects-edge-aggressive ]\n"
-"\t       [ --unpacked ] ]\n"
-"\t     [ --pretty | --header ]\n"
-"\t     [ --bisect ]\n"
-"\t     [ --bisect-vars ]\n"
-"\t     [ --bisect-all ]\n"
-"\t     [ --merge ]\n"
-"\t     [ --reverse ]\n"
-"\t     [ --walk-reflogs ]\n"
-"\t     [ --no-walk ] [ --do-walk ]\n"
-"\t     [ --count ]\n"
-"\t     [ --use-bitmap-index ]\n"
-"\t     <commit>... [ \\-- <paths>... ]\n"
+"The default behavior of this command when no <refspec> is given can be "
+"configured by setting the `push` option of the remote, or the `push.default` "
+"configuration variable."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-list.txt:70
+#: en/git-push.txt:591
 msgid ""
-"List commits that are reachable by following the `parent` links from the "
-"given commit(s), but exclude commits that are reachable from the one(s)  "
-"given with a '{caret}' in front of them.  The output is given in reverse "
-"chronological order by default."
+"For example, to default to pushing only the current branch to `origin` use "
+"`git config remote.origin.push HEAD`.  Any valid <refspec> (like the ones in "
+"the examples below) can be configured as the default for `git push origin`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-rev-list.txt:77
-msgid ""
-"You can think of this as a set operation.  Commits given on the command line "
-"form a set of commits that are reachable from any of them, and then commits "
-"reachable from any of the ones given with '{caret}' in front are subtracted "
-"from that set.  The remaining commits are what comes out in the command's "
-"output.  Various other options and paths parameters can be used to further "
-"limit the result."
+#. type: Labeled list
+#: en/git-push.txt:592
+#, no-wrap
+msgid "`git push origin :`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-list.txt:79
-msgid "Thus, the following command:"
+#: en/git-push.txt:596
+msgid ""
+"Push \"matching\" branches to `origin`. See <refspec> in the <<OPTIONS,"
+"OPTIONS>> section above for a description of \"matching\" branches."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rev-list.txt:82
+#. type: Labeled list
+#: en/git-push.txt:597
 #, no-wrap
-msgid "\t$ git rev-list foo bar ^baz\n"
+msgid "`git push origin master`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-list.txt:86
+#: en/git-push.txt:603
 msgid ""
-"means \"list all the commits which are reachable from 'foo' or 'bar', but "
-"not from 'baz'\"."
+"Find a ref that matches `master` in the source repository (most likely, it "
+"would find `refs/heads/master`), and update the same ref (e.g. `refs/heads/"
+"master`) in `origin` repository with it.  If `master` did not exist "
+"remotely, it would be created."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-push.txt:604
+#, no-wrap
+msgid "`git push origin HEAD`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-list.txt:90
-msgid ""
-"A special notation \"'<commit1>'..'<commit2>'\" can be used as a short-hand "
-"for \"{caret}'<commit1>' '<commit2>'\". For example, either of the following "
-"may be used interchangeably:"
+#: en/git-push.txt:607
+msgid "A handy way to push the current branch to the same name on the remote."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rev-list.txt:94
+#. type: Labeled list
+#: en/git-push.txt:608
 #, no-wrap
-msgid ""
-"\t$ git rev-list origin..HEAD\n"
-"\t$ git rev-list HEAD ^origin\n"
+msgid "`git push mothership master:satellite/master dev:satellite/dev`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-list.txt:99
+#: en/git-push.txt:613
 msgid ""
-"Another special notation is \"'<commit1>'...'<commit2>'\" which is useful "
-"for merges.  The resulting set of commits is the symmetric difference "
-"between the two operands.  The following two commands are equivalent:"
+"Use the source ref that matches `master` (e.g. `refs/heads/master`)  to "
+"update the ref that matches `satellite/master` (most probably `refs/remotes/"
+"satellite/master`) in the `mothership` repository; do the same for `dev` and "
+"`satellite/dev`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rev-list.txt:103
-#, no-wrap
+#. type: Plain text
+#: en/git-push.txt:616
 msgid ""
-"\t$ git rev-list A B --not $(git merge-base --all A B)\n"
-"\t$ git rev-list A...B\n"
+"See the section describing `<refspec>...` above for a discussion of the "
+"matching semantics."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-list.txt:110
+#: en/git-push.txt:623
 msgid ""
-"'rev-list' is a very essential Git command, since it provides the ability to "
-"build and traverse commit ancestry graphs. For this reason, it has a lot of "
-"different options that enables it to be used by commands as different as "
-"'git bisect' and 'git repack'."
-msgstr ""
-
-#. type: Title =
-#: en/git-rev-parse.txt:2
-#, no-wrap
-msgid "git-rev-parse(1)"
+"This is to emulate `git fetch` run on the `mothership` using `git push` that "
+"is run in the opposite direction in order to integrate the work done on "
+"`satellite`, and is often necessary when you can only make connection in one "
+"way (i.e. satellite can ssh into mothership but mothership cannot initiate "
+"connection to satellite because the latter is behind a firewall or does not "
+"run sshd)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:7
-msgid "git-rev-parse - Pick out and massage parameters"
+#: en/git-push.txt:628
+msgid ""
+"After running this `git push` on the `satellite` machine, you would ssh into "
+"the `mothership` and run `git merge` there to complete the emulation of `git "
+"pull` that were run on `mothership` to pull changes made on `satellite`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-rev-parse.txt:13
+#. type: Labeled list
+#: en/git-push.txt:629
 #, no-wrap
-msgid "'git rev-parse' [ --option ] <args>...\n"
+msgid "`git push origin HEAD:master`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:23
+#: en/git-push.txt:633
 msgid ""
-"Many Git porcelainish commands take mixture of flags (i.e. parameters that "
-"begin with a dash '-') and parameters meant for the underlying 'git "
-"rev-list' command they use internally and flags and parameters for the other "
-"commands they use downstream of 'git rev-list'.  This command is used to "
-"distinguish between them."
+"Push the current branch to the remote ref matching `master` in the `origin` "
+"repository. This form is convenient to push the current branch without "
+"thinking about its local name."
 msgstr ""
 
-#. type: Title ~
-#: en/git-rev-parse.txt:29
+#. type: Labeled list
+#: en/git-push.txt:634
 #, no-wrap
-msgid "Operation Modes"
+msgid "`git push origin master:refs/heads/experimental`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:32
-msgid "Each of these options must appear first on the command line."
+#: en/git-push.txt:640
+msgid ""
+"Create the branch `experimental` in the `origin` repository by copying the "
+"current `master` branch.  This form is only needed to create a new branch or "
+"tag in the remote repository when the local name and the remote name are "
+"different; otherwise, the ref name on its own will work."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rev-parse.txt:33
+#: en/git-push.txt:641
 #, no-wrap
-msgid "--parseopt"
+msgid "`git push origin :experimental`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:35
-msgid "Use 'git rev-parse' in option parsing mode (see PARSEOPT section below)."
+#: en/git-push.txt:644
+msgid ""
+"Find a ref that matches `experimental` in the `origin` repository (e.g. "
+"`refs/heads/experimental`), and delete it."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rev-parse.txt:36
+#: en/git-push.txt:645
 #, no-wrap
-msgid "--sq-quote"
+msgid "`git push origin +dev:master`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:40
+#: en/git-push.txt:650
 msgid ""
-"Use 'git rev-parse' in shell quoting mode (see SQ-QUOTE section below). In "
-"contrast to the `--sq` option below, this mode does only quoting. Nothing "
-"else is done to command input."
-msgstr ""
-
-#. type: Title ~
-#: en/git-rev-parse.txt:42
-#, no-wrap
-msgid "Options for --parseopt"
+"Update the origin repository's master branch with the dev branch, allowing "
+"non-fast-forward updates.  *This can leave unreferenced commits dangling in "
+"the origin repository.* Consider the following situation, where a fast-"
+"forward is not possible:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rev-parse.txt:44
+#. type: delimited block -
+#: en/git-push.txt:655
 #, no-wrap
-msgid "--keep-dashdash"
+msgid ""
+"\t    o---o---o---A---B  origin/master\n"
+"\t\t     \\\n"
+"\t\t      X---Y---Z  dev\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:47
-msgid ""
-"Only meaningful in `--parseopt` mode. Tells the option parser to echo out "
-"the first `--` met instead of skipping it."
+#: en/git-push.txt:658
+msgid "The above command would change the origin repository to"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rev-parse.txt:48
+#. type: delimited block -
+#: en/git-push.txt:663
 #, no-wrap
-msgid "--stop-at-non-option"
+msgid ""
+"\t\t      A---B  (unnamed branch)\n"
+"\t\t     /\n"
+"\t    o---o---o---X---Y---Z  master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:52
+#: en/git-push.txt:668
 msgid ""
-"Only meaningful in `--parseopt` mode.  Lets the option parser stop at the "
-"first non-option argument.  This can be used to parse sub-commands that take "
-"options themselves."
+"Commits A and B would no longer belong to a branch with a symbolic name, and "
+"so would be unreachable.  As such, these commits would be removed by a `git "
+"gc` command on the origin repository."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rev-parse.txt:53
+#. type: Title =
+#: en/git-quiltimport.txt:2
 #, no-wrap
-msgid "--stuck-long"
+msgid "git-quiltimport(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:56
-msgid ""
-"Only meaningful in `--parseopt` mode. Output the options in their long form "
-"if available, and with their arguments stuck."
+#: en/git-quiltimport.txt:7
+msgid "git-quiltimport - Applies a quilt patchset onto the current branch"
 msgstr ""
 
-#. type: Title ~
-#: en/git-rev-parse.txt:58
+#. type: Plain text
+#: en/git-quiltimport.txt:14
 #, no-wrap
-msgid "Options for Filtering"
+msgid ""
+"'git quiltimport' [--dry-run | -n] [--author <author>] [--patches <dir>]\n"
+"\t\t[--series <file>] [--keep-non-patch]\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rev-parse.txt:60
-#, no-wrap
-msgid "--revs-only"
+#. type: Plain text
+#: en/git-quiltimport.txt:21
+msgid ""
+"Applies a quilt patchset onto the current Git branch, preserving the patch "
+"boundaries, patch order, and patch descriptions present in the quilt "
+"patchset."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:63
-msgid "Do not output flags and parameters not meant for 'git rev-list' command."
+#: en/git-quiltimport.txt:27
+msgid ""
+"For each patch the code attempts to extract the author from the patch "
+"description.  If that fails it falls back to the author specified with --"
+"author.  If the --author flag was not given the patch description is "
+"displayed and the user is asked to interactively enter the author of the "
+"patch."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rev-parse.txt:64
-#, no-wrap
-msgid "--no-revs"
+#. type: Plain text
+#: en/git-quiltimport.txt:30
+msgid ""
+"If a subject is not found in the patch description the patch name is "
+"preserved as the 1 line subject in the Git description."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:67
-msgid "Do not output flags and parameters meant for 'git rev-list' command."
+#: en/git-quiltimport.txt:40
+msgid ""
+"Walk through the patches in the series and warn if we cannot find all of the "
+"necessary information to commit a patch.  At the time of this writing only "
+"missing author information is warned about."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rev-parse.txt:68
+#: en/git-quiltimport.txt:41
 #, no-wrap
-msgid "--flags"
+msgid "--author Author Name <Author Email>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:70
-msgid "Do not output non-flag parameters."
+#: en/git-quiltimport.txt:44
+msgid ""
+"The author name and email address to use when no author information can be "
+"found in the patch description."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rev-parse.txt:71
+#: en/git-quiltimport.txt:45
 #, no-wrap
-msgid "--no-flags"
+msgid "--patches <dir>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:73
-msgid "Do not output flag parameters."
+#: en/git-quiltimport.txt:47
+msgid "The directory to find the quilt patches."
 msgstr ""
 
-#. type: Title ~
-#: en/git-rev-parse.txt:75
-#, no-wrap
-msgid "Options for Output"
+#. type: Plain text
+#: en/git-quiltimport.txt:51
+msgid ""
+"The default for the patch directory is patches or the value of the `"
+"$QUILT_PATCHES` environment variable."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rev-parse.txt:77
+#: en/git-quiltimport.txt:52
 #, no-wrap
-msgid "--default <arg>"
+msgid "--series <file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:80
-msgid "If there is no parameter given by the user, use `<arg>` instead."
+#: en/git-quiltimport.txt:54
+msgid "The quilt series file."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rev-parse.txt:81
+#. type: Plain text
+#: en/git-quiltimport.txt:58
+msgid ""
+"The default for the series file is <patches>/series or the value of the `"
+"$QUILT_SERIES` environment variable."
+msgstr ""
+
+#. type: Title =
+#: en/git-read-tree.txt:2
 #, no-wrap
-msgid "--prefix <arg>"
+msgid "git-read-tree(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:86
-msgid ""
-"Behave as if 'git rev-parse' was invoked from the `<arg>` subdirectory of "
-"the working tree.  Any relative filenames are resolved as if they are "
-"prefixed by `<arg>` and will be printed in that form."
+#: en/git-read-tree.txt:7
+msgid "git-read-tree - Reads tree information into the index"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:90
+#: en/git-read-tree.txt:16
+#, no-wrap
 msgid ""
-"This can be used to convert arguments to a command run in a subdirectory so "
-"that they can still be used after moving to the top-level of the "
-"repository.  For example:"
+"'git read-tree' [[-m [--trivial] [--aggressive] | --reset | --prefix=<prefix>]\n"
+"\t\t[-u [--exclude-per-directory=<gitignore>] | -i]]\n"
+"\t\t[--index-output=<file>] [--no-sparse-checkout]\n"
+"\t\t(--empty | <tree-ish1> [<tree-ish2> [<tree-ish3>]])\n"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rev-parse.txt:96
-#, no-wrap
+#. type: Plain text
+#: en/git-read-tree.txt:23
 msgid ""
-"prefix=$(git rev-parse --show-prefix)\n"
-"cd \"$(git rev-parse --show-toplevel)\"\n"
-"# rev-parse provides the -- needed for 'set'\n"
-"eval \"set $(git rev-parse --sq --prefix \"$prefix\" -- \"$@\")\"\n"
+"Reads the tree information given by <tree-ish> into the index, but does not "
+"actually *update* any of the files it \"caches\". (see: linkgit:git-checkout-"
+"index[1])"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:103
+#: en/git-read-tree.txt:28
 msgid ""
-"Verify that exactly one parameter is provided, and that it can be turned "
-"into a raw 20-byte SHA-1 that can be used to access the object database. If "
-"so, emit it to the standard output; otherwise, error out."
+"Optionally, it can merge a tree into the index, perform a fast-forward (i.e. "
+"2-way) merge, or a 3-way merge, with the `-m` flag.  When used with `-m`, "
+"the `-u` flag causes it to also update the files in the work tree with the "
+"result of the merge."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:112
+#: en/git-read-tree.txt:31
 msgid ""
-"If you want to make sure that the output actually names an object in your "
-"object database and/or can be used as a specific type of object you require, "
-"you can add the `^{type}` peeling operator to the parameter.  For example, "
-"`git rev-parse \"$VAR^{commit}\"` will make sure `$VAR` names an existing "
-"object that is a commit-ish (i.e. a commit, or an annotated tag that points "
-"at a commit).  To make sure that `$VAR` names an existing object of any "
-"type, `git rev-parse \"$VAR^{object}\"` can be used."
+"Trivial merges are done by 'git read-tree' itself.  Only conflicting paths "
+"will be in unmerged state when 'git read-tree' returns."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:119
+#: en/git-read-tree.txt:39
 msgid ""
-"Only meaningful in `--verify` mode. Do not output an error message if the "
-"first argument is not a valid object name; instead exit with non-zero status "
-"silently.  SHA-1s for valid object names are printed to stdout on success."
+"Perform a merge, not just a read.  The command will refuse to run if your "
+"index file has unmerged entries, indicating that you have not finished "
+"previous merge you started."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rev-parse.txt:120
+#: en/git-read-tree.txt:40
 #, no-wrap
-msgid "--sq"
+msgid "--reset"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:128
+#: en/git-read-tree.txt:43
 msgid ""
-"Usually the output is made one line per flag and parameter.  This option "
-"makes output a single line, properly quoted for consumption by shell.  "
-"Useful when you expect your parameter to contain whitespaces and newlines "
-"(e.g. when using pickaxe `-S` with 'git diff-{asterisk}'). In contrast to "
-"the `--sq-quote` option, the command input is still interpreted as usual."
+"Same as -m, except that unmerged entries are discarded instead of failing."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:133
+#: en/git-read-tree.txt:47
 msgid ""
-"When showing object names, prefix them with '{caret}' and strip '{caret}' "
-"prefix from the object names that already have one."
+"After a successful merge, update the files in the work tree with the result "
+"of the merge."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rev-parse.txt:134
-#, no-wrap
-msgid "--abbrev-ref[=(strict|loose)]"
+#. type: Plain text
+#: en/git-read-tree.txt:56
+msgid ""
+"Usually a merge requires the index file as well as the files in the working "
+"tree to be up to date with the current head commit, in order not to lose "
+"local changes.  This flag disables the check with the working tree and is "
+"meant to be used when creating a merge of trees that are not directly "
+"related to the current working tree status into a temporary index file."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:138
+#: en/git-read-tree.txt:61
 msgid ""
-"A non-ambiguous short name of the objects name.  The option "
-"core.warnAmbiguousRefs is used to select the strict abbreviation mode."
+"Check if the command would error out, without updating the index or the "
+"files in the working tree for real."
+msgstr ""
+
+#. type: Plain text
+#: en/git-read-tree.txt:64
+msgid "Show the progress of checking files out."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rev-parse.txt:140
+#: en/git-read-tree.txt:65
 #, no-wrap
-msgid "--short=number"
+msgid "--trivial"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:144
+#: en/git-read-tree.txt:70
 msgid ""
-"Instead of outputting the full SHA-1 values of object names try to "
-"abbreviate them to a shorter unique name. When no length is specified 7 is "
-"used. The minimum length is 4."
+"Restrict three-way merge by 'git read-tree' to happen only if there is no "
+"file-level merging required, instead of resolving merge for trivial cases "
+"and leaving conflicting files unresolved in the index."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rev-parse.txt:145
-#, no-wrap
-msgid "--symbolic"
+#. type: Plain text
+#: en/git-read-tree.txt:77
+msgid ""
+"Usually a three-way merge by 'git read-tree' resolves the merge for really "
+"trivial cases and leaves other cases unresolved in the index, so that "
+"porcelains can implement different merge policies.  This flag makes the "
+"command resolve a few more cases internally:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:149
+#: en/git-read-tree.txt:80
 msgid ""
-"Usually the object names are output in SHA-1 form (with possible '{caret}' "
-"prefix); this option makes them output in a form as close to the original "
-"input as possible."
+"when one side removes a path and the other side leaves the path unmodified.  "
+"The resolution is to remove that path."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rev-parse.txt:150
-#, no-wrap
-msgid "--symbolic-full-name"
+#. type: Plain text
+#: en/git-read-tree.txt:81
+msgid "when both sides remove a path.  The resolution is to remove that path."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:157
+#: en/git-read-tree.txt:83
 msgid ""
-"This is similar to --symbolic, but it omits input that are not refs "
-"(i.e. branch or tag names; or more explicitly disambiguating "
-"\"heads/master\" form, when you want to name the \"master\" branch when "
-"there is an unfortunately named tag \"master\"), and show them as full "
-"refnames (e.g. \"refs/heads/master\")."
+"when both sides add a path identically.  The resolution is to add that path."
 msgstr ""
 
-#. type: Title ~
-#: en/git-rev-parse.txt:159
+#. type: Labeled list
+#: en/git-read-tree.txt:84 en/git-svn.txt:75
 #, no-wrap
-msgid "Options for Objects"
+msgid "--prefix=<prefix>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:163
-msgid "Show all refs found in `refs/`."
+#: en/git-read-tree.txt:89
+msgid ""
+"Keep the current index contents, and read the contents of the named tree-ish "
+"under the directory at `<prefix>`.  The command will refuse to overwrite "
+"entries that already existed in the original index file."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rev-parse.txt:164
+#: en/git-read-tree.txt:90
 #, no-wrap
-msgid "--branches[=pattern]"
+msgid "--exclude-per-directory=<gitignore>"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rev-parse.txt:165
-#, no-wrap
-msgid "--tags[=pattern]"
+#. type: Plain text
+#: en/git-read-tree.txt:104
+msgid ""
+"When running the command with `-u` and `-m` options, the merge result may "
+"need to overwrite paths that are not tracked in the current branch.  The "
+"command usually refuses to proceed with the merge to avoid losing such a "
+"path.  However this safety valve sometimes gets in the way.  For example, it "
+"often happens that the other branch added a file that used to be a generated "
+"file in your branch, and the safety valve triggers when you try to switch to "
+"that branch after you ran `make` but before running `make clean` to remove "
+"the generated file.  This option tells the command to read per-directory "
+"exclude file (usually '.gitignore') and allows such an untracked but "
+"explicitly ignored file to be overwritten."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rev-parse.txt:166
+#: en/git-read-tree.txt:105
 #, no-wrap
-msgid "--remotes[=pattern]"
+msgid "--index-output=<file>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:170
+#: en/git-read-tree.txt:116
 msgid ""
-"Show all branches, tags, or remote-tracking branches, respectively (i.e., "
-"refs found in `refs/heads`, `refs/tags`, or `refs/remotes`, respectively)."
+"Instead of writing the results out to `$GIT_INDEX_FILE`, write the resulting "
+"index in the named file.  While the command is operating, the original index "
+"file is locked with the same mechanism as usual.  The file must allow to be "
+"rename(2)ed into from a temporary file that is created next to the usual "
+"index file; typically this means it needs to be on the same filesystem as "
+"the index file itself, and you need write permission to the directories the "
+"index file and index output file are located in."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:174
+#: en/git-read-tree.txt:122
 msgid ""
-"If a `pattern` is given, only refs matching the given shell glob are shown.  "
-"If the pattern does not contain a globbing character (`?`, `*`, or `[`), it "
-"is turned into a prefix match by appending `/*`."
+"Using --recurse-submodules will update the content of all initialized "
+"submodules according to the commit recorded in the superproject by calling "
+"read-tree recursively, also setting the submodules HEAD to be detached at "
+"that commit."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rev-parse.txt:175
+#: en/git-read-tree.txt:123
 #, no-wrap
-msgid "--glob=pattern"
+msgid "--no-sparse-checkout"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:181
-msgid ""
-"Show all refs matching the shell glob pattern `pattern`. If the pattern does "
-"not start with `refs/`, this is automatically prepended.  If the pattern "
-"does not contain a globbing character (`?`, `*`, or `[`), it is turned into "
-"a prefix match by appending `/*`."
+#: en/git-read-tree.txt:126
+msgid "Disable sparse checkout support even if `core.sparseCheckout` is true."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rev-parse.txt:182 en/rev-list-options.txt:163
+#: en/git-read-tree.txt:127
 #, no-wrap
-msgid "--exclude=<glob-pattern>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-rev-parse.txt:189 en/rev-list-options.txt:171
-msgid ""
-"Do not include refs matching '<glob-pattern>' that the next `--all`, "
-"`--branches`, `--tags`, `--remotes`, or `--glob` would otherwise "
-"consider. Repetitions of this option accumulate exclusion patterns up to the "
-"next `--all`, `--branches`, `--tags`, `--remotes`, or `--glob` option (other "
-"options or arguments do not clear accumulated patterns)."
+msgid "--empty"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:195 en/rev-list-options.txt:177
-msgid ""
-"The patterns given should not begin with `refs/heads`, `refs/tags`, or "
-"`refs/remotes` when applied to `--branches`, `--tags`, or `--remotes`, "
-"respectively, and they must begin with `refs/` when applied to `--glob` or "
-"`--all`. If a trailing '/{asterisk}' is intended, it must be given "
-"explicitly."
+#: en/git-read-tree.txt:130
+msgid "Instead of reading tree object(s) into the index, just empty it."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-rev-parse.txt:196
+#: en/git-read-tree.txt:131
 #, no-wrap
-msgid "--disambiguate=<prefix>"
+msgid "<tree-ish#>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:201
-msgid ""
-"Show every object whose name begins with the given prefix.  The <prefix> "
-"must be at least 4 hexadecimal digits long to avoid listing each and every "
-"object in the repository by mistake."
-msgstr ""
-
-#. type: Title ~
-#: en/git-rev-parse.txt:203
-#, no-wrap
-msgid "Options for Files"
+#: en/git-read-tree.txt:133
+msgid "The id of the tree object(s) to be read/merged."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rev-parse.txt:205
+#. type: Title -
+#: en/git-read-tree.txt:136
 #, no-wrap
-msgid "--local-env-vars"
+msgid "MERGING"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:210
+#: en/git-read-tree.txt:141
 msgid ""
-"List the GIT_* environment variables that are local to the repository "
-"(e.g. GIT_DIR or GIT_WORK_TREE, but not GIT_EDITOR).  Only the names of the "
-"variables are listed, not their value, even if they are set."
+"If `-m` is specified, 'git read-tree' can perform 3 kinds of merge, a single "
+"tree merge if only 1 tree is given, a fast-forward merge with 2 trees, or a "
+"3-way merge if 3 or more trees are provided."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rev-parse.txt:211
+#. type: Title ~
+#: en/git-read-tree.txt:144
 #, no-wrap
-msgid "--git-dir"
+msgid "Single Tree Merge"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:215
+#: en/git-read-tree.txt:150
 msgid ""
-"Show `$GIT_DIR` if defined. Otherwise show the path to the .git "
-"directory. The path shown, when relative, is relative to the current working "
-"directory."
+"If only 1 tree is specified, 'git read-tree' operates as if the user did not "
+"specify `-m`, except that if the original index has an entry for a given "
+"pathname, and the contents of the path match with the tree being read, the "
+"stat info from the index is used. (In other words, the index's stat()s take "
+"precedence over the merged tree's)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:219
+#: en/git-read-tree.txt:154
 msgid ""
-"If `$GIT_DIR` is not defined and the current directory is not detected to "
-"lie in a Git repository or work tree print a message to stderr and exit with "
-"nonzero status."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-rev-parse.txt:220
-#, no-wrap
-msgid "--absolute-git-dir"
-msgstr ""
-
-#. type: Plain text
-#: en/git-rev-parse.txt:223
-msgid "Like `--git-dir`, but its output is always the canonicalized absolute path."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-rev-parse.txt:224
-#, no-wrap
-msgid "--git-common-dir"
+"That means that if you do a `git read-tree -m <newtree>` followed by a `git "
+"checkout-index -f -u -a`, the 'git checkout-index' only checks out the stuff "
+"that really changed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:226
-msgid "Show `$GIT_COMMON_DIR` if defined, else `$GIT_DIR`."
+#: en/git-read-tree.txt:157
+msgid ""
+"This is used to avoid unnecessary false hits when 'git diff-files' is run "
+"after 'git read-tree'."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rev-parse.txt:227
+#. type: Title ~
+#: en/git-read-tree.txt:160
 #, no-wrap
-msgid "--is-inside-git-dir"
+msgid "Two Tree Merge"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:230
+#: en/git-read-tree.txt:166
 msgid ""
-"When the current working directory is below the repository directory print "
-"\"true\", otherwise \"false\"."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-rev-parse.txt:231
-#, no-wrap
-msgid "--is-inside-work-tree"
+"Typically, this is invoked as `git read-tree -m $H $M`, where $H is the head "
+"commit of the current repository, and $M is the head of a foreign tree, "
+"which is simply ahead of $H (i.e. we are in a fast-forward situation)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:234
+#: en/git-read-tree.txt:169
 msgid ""
-"When the current working directory is inside the work tree of the repository "
-"print \"true\", otherwise \"false\"."
+"When two trees are specified, the user is telling 'git read-tree' the "
+"following:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rev-parse.txt:235
-#, no-wrap
-msgid "--is-bare-repository"
+#. type: Plain text
+#: en/git-read-tree.txt:171
+msgid "The current index and work tree is derived from $H, but"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:237
-msgid "When the repository is bare print \"true\", otherwise \"false\"."
+#: en/git-read-tree.txt:172
+msgid "the user may have local changes in them since $H."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rev-parse.txt:238
-#, no-wrap
-msgid "--resolve-git-dir <path>"
+#. type: Plain text
+#: en/git-read-tree.txt:174
+msgid "The user wants to fast-forward to $M."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:243
+#: en/git-read-tree.txt:180
 msgid ""
-"Check if <path> is a valid repository or a gitfile that points at a valid "
-"repository, and print the location of the repository.  If <path> is a "
-"gitfile then the resolved path to the real repository is printed."
+"In this case, the `git read-tree -m $H $M` command makes sure that no local "
+"change is lost as the result of this \"merge\".  Here are the \"carry forward"
+"\" rules, where \"I\" denotes the index, \"clean\" means that index and work "
+"tree coincide, and \"exists\"/\"nothing\" refer to the presence of a path in "
+"the specified commit:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rev-parse.txt:244
+#. type: delimited block .
+#: en/git-read-tree.txt:191
 #, no-wrap
-msgid "--git-path <path>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-rev-parse.txt:250
 msgid ""
-"Resolve \"$GIT_DIR/<path>\" and takes other path relocation variables such "
-"as $GIT_OBJECT_DIRECTORY, $GIT_INDEX_FILE... into account. For example, if "
-"$GIT_OBJECT_DIRECTORY is set to /foo/bar then \"git rev-parse --git-path "
-"objects/abc\" returns /foo/bar/abc."
+"\tI                   H        M        Result\n"
+"       -------------------------------------------------------\n"
+"     0  nothing             nothing  nothing  (does not happen)\n"
+"     1  nothing             nothing  exists   use M\n"
+"     2  nothing             exists   nothing  remove path from index\n"
+"     3  nothing             exists   exists,  use M if \"initial checkout\",\n"
+"\t\t\t\t     H == M   keep index otherwise\n"
+"\t\t\t\t     exists,  fail\n"
+"\t\t\t\t     H != M\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rev-parse.txt:251
+#. type: delimited block .
+#: en/git-read-tree.txt:196
 #, no-wrap
-msgid "--show-cdup"
+msgid ""
+"        clean I==H  I==M\n"
+"       ------------------\n"
+"     4  yes   N/A   N/A     nothing  nothing  keep index\n"
+"     5  no    N/A   N/A     nothing  nothing  keep index\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-rev-parse.txt:255
+#. type: delimited block .
+#: en/git-read-tree.txt:201
+#, no-wrap
 msgid ""
-"When the command is invoked from a subdirectory, show the path of the "
-"top-level directory relative to the current directory (typically a sequence "
-"of \"../\", or an empty string)."
+"     6  yes   N/A   yes     nothing  exists   keep index\n"
+"     7  no    N/A   yes     nothing  exists   keep index\n"
+"     8  yes   N/A   no      nothing  exists   fail\n"
+"     9  no    N/A   no      nothing  exists   fail\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rev-parse.txt:256
+#. type: delimited block .
+#: en/git-read-tree.txt:206
 #, no-wrap
-msgid "--show-prefix"
+msgid ""
+"     10 yes   yes   N/A     exists   nothing  remove path from index\n"
+"     11 no    yes   N/A     exists   nothing  fail\n"
+"     12 yes   no    N/A     exists   nothing  fail\n"
+"     13 no    no    N/A     exists   nothing  fail\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-rev-parse.txt:260
+#. type: delimited block .
+#: en/git-read-tree.txt:211
+#, no-wrap
 msgid ""
-"When the command is invoked from a subdirectory, show the path of the "
-"current directory relative to the top-level directory."
+"\tclean (H==M)\n"
+"       ------\n"
+"     14 yes                 exists   exists   keep index\n"
+"     15 no                  exists   exists   keep index\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rev-parse.txt:261
+#. type: delimited block .
+#: en/git-read-tree.txt:220
 #, no-wrap
-msgid "--show-toplevel"
+msgid ""
+"        clean I==H  I==M (H!=M)\n"
+"       ------------------\n"
+"     16 yes   no    no      exists   exists   fail\n"
+"     17 no    no    no      exists   exists   fail\n"
+"     18 yes   no    yes     exists   exists   keep index\n"
+"     19 no    no    yes     exists   exists   keep index\n"
+"     20 yes   yes   no      exists   exists   use M\n"
+"     21 no    yes   no      exists   exists   fail\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:263
-msgid "Show the absolute path of the top-level directory."
+#: en/git-read-tree.txt:226
+msgid ""
+"In all \"keep index\" cases, the index entry stays as in the original index "
+"file.  If the entry is not up to date, 'git read-tree' keeps the copy in the "
+"work tree intact when operating under the -u flag."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:269
-#, no-wrap
+#: en/git-read-tree.txt:237
 msgid ""
-"--show-superproject-working-tree\n"
-"\tShow the absolute path of the root of the superproject's\n"
-"\tworking tree (if exists) that uses the current repository as\n"
-"\tits submodule.  Outputs nothing if the current repository is\n"
-"\tnot used as a submodule by any project.\n"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-rev-parse.txt:270
-#, no-wrap
-msgid "--shared-index-path"
+"When this form of 'git read-tree' returns successfully, you can see which of "
+"the \"local changes\" that you made were carried forward by running `git "
+"diff-index --cached $M`.  Note that this does not necessarily match what "
+"`git diff-index --cached $H` would have produced before such a two tree "
+"merge.  This is because of cases 18 and 19 --- if you already had the "
+"changes in $M (e.g. maybe you picked it up via e-mail in a patch form), `git "
+"diff-index --cached $H` would have told you about the change before this "
+"merge, but it would not show in `git diff-index --cached $M` output after "
+"the two-tree merge."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:273
+#: en/git-read-tree.txt:244
 msgid ""
-"Show the path to the shared index file in split index mode, or empty if not "
-"in split-index mode."
+"Case 3 is slightly tricky and needs explanation.  The result from this rule "
+"logically should be to remove the path if the user staged the removal of the "
+"path and then switching to a new branch.  That however will prevent the "
+"initial checkout from happening, so the rule is modified to use M (new tree) "
+"only when the content of the index is empty.  Otherwise the removal of the "
+"path is kept as long as $H and $M are the same."
 msgstr ""
 
 #. type: Title ~
-#: en/git-rev-parse.txt:275
-#, no-wrap
-msgid "Other Options"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-rev-parse.txt:277
+#: en/git-read-tree.txt:246
 #, no-wrap
-msgid "--since=datestring"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-rev-parse.txt:278
-#, no-wrap
-msgid "--after=datestring"
+msgid "3-Way Merge"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:281
+#: en/git-read-tree.txt:249
 msgid ""
-"Parse the date string, and output the corresponding --max-age= parameter for "
-"'git rev-list'."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-rev-parse.txt:282
-#, no-wrap
-msgid "--until=datestring"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-rev-parse.txt:283
-#, no-wrap
-msgid "--before=datestring"
+"Each \"index\" entry has two bits worth of \"stage\" state. stage 0 is the "
+"normal one, and is the only one you'd see in any kind of normal use."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:286
+#: en/git-read-tree.txt:252
 msgid ""
-"Parse the date string, and output the corresponding --min-age= parameter for "
-"'git rev-list'."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-rev-parse.txt:287
-#, no-wrap
-msgid "<args>..."
+"However, when you do 'git read-tree' with three trees, the \"stage\" starts "
+"out at 1."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:289
-msgid "Flags and parameters to be parsed."
+#: en/git-read-tree.txt:254
+msgid "This means that you can do"
 msgstr ""
 
-#. type: Title -
-#: en/git-rev-parse.txt:294
+#. type: delimited block -
+#: en/git-read-tree.txt:257
 #, no-wrap
-msgid "PARSEOPT"
+msgid "$ git read-tree -m <tree1> <tree2> <tree3>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:299
+#: en/git-read-tree.txt:265
 msgid ""
-"In `--parseopt` mode, 'git rev-parse' helps massaging options to bring to "
-"shell scripts the same facilities C builtins have. It works as an option "
-"normalizer (e.g. splits single switches aggregate values), a bit like "
-"`getopt(1)` does."
+"and you will end up with an index with all of the <tree1> entries in "
+"\"stage1\", all of the <tree2> entries in \"stage2\" and all of the <tree3> "
+"entries in \"stage3\".  When performing a merge of another branch into the "
+"current branch, we use the common ancestor tree as <tree1>, the current "
+"branch head as <tree2>, and the other branch head as <tree3>."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:304
+#: en/git-read-tree.txt:269
 msgid ""
-"It takes on the standard input the specification of the options to parse and "
-"understand, and echoes on the standard output a string suitable for `sh(1)` "
-"`eval` to replace the arguments with normalized ones.  In case of error, it "
-"outputs usage on the standard error stream, and exits with code 129."
+"Furthermore, 'git read-tree' has special-case logic that says: if you see a "
+"file that matches in all respects in the following states, it \"collapses\" "
+"back to \"stage0\":"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:307
+#: en/git-read-tree.txt:273
 msgid ""
-"Note: Make sure you quote the result when passing it to `eval`.  See below "
-"for an example."
+"stage 2 and 3 are the same; take one or the other (it makes no difference - "
+"the same work has been done on our branch in stage 2 and their branch in "
+"stage 3)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:315
+#: en/git-read-tree.txt:278
 msgid ""
-"'git rev-parse --parseopt' input format is fully text based. It has two "
-"parts, separated by a line that contains only `--`. The lines before the "
-"separator (should be one or more) are used for the usage.  The lines after "
-"the separator describe the options."
+"stage 1 and stage 2 are the same and stage 3 is different; take stage 3 (our "
+"branch in stage 2 did not do anything since the ancestor in stage 1 while "
+"their branch in stage 3 worked on it)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:317
-msgid "Each line of options has this format:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-rev-parse.txt:320
-#, no-wrap
-msgid "<opt-spec><flags>*<arg-hint>? SP+ help LF\n"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-rev-parse.txt:322
-#, no-wrap
-msgid "`<opt-spec>`"
+#: en/git-read-tree.txt:281
+msgid ""
+"stage 1 and stage 3 are the same and stage 2 is different take stage 2 (we "
+"did something while they did nothing)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:327
+#: en/git-read-tree.txt:285
 msgid ""
-"its format is the short option character, then the long option name "
-"separated by a comma. Both parts are not required, though at least one is "
-"necessary. May not contain any of the `<flags>` characters.  `h,help`, "
-"`dry-run` and `f` are examples of correct `<opt-spec>`."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-rev-parse.txt:328
-#, no-wrap
-msgid "`<flags>`"
+"The 'git write-tree' command refuses to write a nonsensical tree, and it "
+"will complain about unmerged entries if it sees a single entry that is not "
+"stage 0."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:330
-msgid "`<flags>` are of `*`, `=`, `?` or `!`."
+#: en/git-read-tree.txt:291
+msgid ""
+"OK, this all sounds like a collection of totally nonsensical rules, but it's "
+"actually exactly what you want in order to do a fast merge. The different "
+"stages represent the \"result tree\" (stage 0, aka \"merged\"), the original "
+"tree (stage 1, aka \"orig\"), and the two trees you are trying to merge "
+"(stage 2 and 3 respectively)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:331
-msgid "Use `=` if the option takes an argument."
+#: en/git-read-tree.txt:296
+msgid ""
+"The order of stages 1, 2 and 3 (hence the order of three <tree-ish> command-"
+"line arguments) are significant when you start a 3-way merge with an index "
+"file that is already populated.  Here is an outline of how the algorithm "
+"works:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:335
+#: en/git-read-tree.txt:299
 msgid ""
-"Use `?` to mean that the option takes an optional argument. You probably "
-"want to use the `--stuck-long` mode to be able to unambiguously parse the "
-"optional argument."
+"if a file exists in identical format in all three trees, it will "
+"automatically collapse to \"merged\" state by 'git read-tree'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:339
+#: en/git-read-tree.txt:304
 msgid ""
-"Use `*` to mean that this option should not be listed in the usage generated "
-"for the `-h` argument. It's shown for `--help-all` as documented in "
-"linkgit:gitcli[7]."
+"a file that has _any_ difference what-so-ever in the three trees will stay "
+"as separate entries in the index. It's up to \"porcelain policy\" to "
+"determine how to remove the non-0 stages, and insert a merged version."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:341
-msgid "Use `!` to not make the corresponding negated long option available."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-rev-parse.txt:342
-#, no-wrap
-msgid "`<arg-hint>`"
+#: en/git-read-tree.txt:309
+msgid ""
+"the index file saves and restores with all this information, so you can "
+"merge things incrementally, but as long as it has entries in stages 1/2/3 (i."
+"e., \"unmerged entries\") you can't write the result. So now the merge "
+"algorithm ends up being really simple:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:347
+#: en/git-read-tree.txt:312
 msgid ""
-"`<arg-hint>`, if specified, is used as a name of the argument in the help "
-"output, for options that take arguments. `<arg-hint>` is terminated by the "
-"first whitespace.  It is customary to use a dash to separate words in a "
-"multi-word argument hint."
+"you walk the index in order, and ignore all entries of stage 0, since "
+"they've already been done."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:350
+#: en/git-read-tree.txt:316
 msgid ""
-"The remainder of the line, after stripping the spaces, is used as the help "
-"associated to the option."
+"if you find a \"stage1\", but no matching \"stage2\" or \"stage3\", you know "
+"it's been removed from both trees (it only existed in the original tree), "
+"and you remove that entry."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:354
+#: en/git-read-tree.txt:321
 msgid ""
-"Blank lines are ignored, and lines that don't match this specification are "
-"used as option group headers (start the line with a space to create such "
-"lines on purpose)."
-msgstr ""
-
-#. type: Title ~
-#: en/git-rev-parse.txt:356 en/git-rev-parse.txt:412 en/config.txt:147
-#, no-wrap
-msgid "Example"
+"if you find a matching \"stage2\" and \"stage3\" tree, you remove one of "
+"them, and turn the other into a \"stage0\" entry. Remove any matching "
+"\"stage1\" entry if it exists too.  .. all the normal trivial rules .."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rev-parse.txt:361
-#, no-wrap
+#. type: Plain text
+#: en/git-read-tree.txt:326
 msgid ""
-"OPTS_SPEC=\"\\\n"
-"some-command [options] <args>...\n"
+"You would normally use 'git merge-index' with supplied 'git merge-one-file' "
+"to do this last step.  The script updates the files in the working tree as "
+"it merges each path and at the end of a successful merge."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rev-parse.txt:363
-#, no-wrap
+#. type: Plain text
+#: en/git-read-tree.txt:334
 msgid ""
-"some-command does foo and bar!\n"
-"--\n"
+"When you start a 3-way merge with an index file that is already populated, "
+"it is assumed that it represents the state of the files in your work tree, "
+"and you can even have files with changes unrecorded in the index file.  It "
+"is further assumed that this state is \"derived\" from the stage 2 tree.  "
+"The 3-way merge refuses to run if it finds an entry in the original index "
+"file that does not match stage 2."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rev-parse.txt:365
-#, no-wrap
-msgid "h,help    show the help\n"
+#. type: Plain text
+#: en/git-read-tree.txt:339
+msgid ""
+"This is done to prevent you from losing your work-in-progress changes, and "
+"mixing your random changes in an unrelated merge commit.  To illustrate, "
+"suppose you start from what has been committed last to your repository:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-rev-parse.txt:370
+#: en/git-read-tree.txt:343
 #, no-wrap
 msgid ""
-"foo       some nifty option --foo\n"
-"bar=      some cool option --bar with an argument\n"
-"baz=arg   another cool option --baz with a named argument\n"
-"qux?path  qux may take a path argument but has meaning by itself\n"
+"$ JC=`git rev-parse --verify \"HEAD^0\"`\n"
+"$ git checkout-index -f -u -a $JC\n"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rev-parse.txt:373
-#, no-wrap
+#. type: Plain text
+#: en/git-read-tree.txt:348
 msgid ""
-"  An option group Header\n"
-"C?        option C with an optional argument\"\n"
+"You do random edits, without running 'git update-index'.  And then you "
+"notice that the tip of your \"upstream\" tree has advanced since you pulled "
+"from him:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-rev-parse.txt:375
+#: en/git-read-tree.txt:352
 #, no-wrap
 msgid ""
-"eval \"$(echo \"$OPTS_SPEC\" | git rev-parse --parseopt -- \"$@\" || echo "
-"exit $?)\"\n"
-msgstr ""
-
-#. type: Title ~
-#: en/git-rev-parse.txt:379
-#, no-wrap
-msgid "Usage text"
+"$ git fetch git://.... linus\n"
+"$ LT=`git rev-parse FETCH_HEAD`\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:383
+#: en/git-read-tree.txt:358
 msgid ""
-"When `\"$@\"` is `-h` or `--help` in the above example, the following usage "
-"text would be shown:"
+"Your work tree is still based on your HEAD ($JC), but you have some edits "
+"since.  Three-way merge makes sure that you have not added or modified index "
+"entries since $JC, and if you haven't, then does the right thing.  So with "
+"the following sequence:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-rev-parse.txt:386
+#: en/git-read-tree.txt:364
 #, no-wrap
-msgid "usage: some-command [options] <args>...\n"
+msgid ""
+"$ git read-tree -m -u `git merge-base $JC $LT` $JC $LT\n"
+"$ git merge-index git-merge-one-file -a\n"
+"$ echo \"Merge with Linus\" | \\\n"
+"  git commit-tree `git write-tree` -p $JC -p $LT\n"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rev-parse.txt:388
-#, no-wrap
-msgid "    some-command does foo and bar!\n"
+#. type: Plain text
+#: en/git-read-tree.txt:369
+msgid ""
+"what you would commit is a pure merge between $JC and $LT without your work-"
+"in-progress changes, and your work tree would be updated to the result of "
+"the merge."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rev-parse.txt:394
-#, no-wrap
+#. type: Plain text
+#: en/git-read-tree.txt:373
 msgid ""
-"    -h, --help            show the help\n"
-"    --foo                 some nifty option --foo\n"
-"    --bar ...             some cool option --bar with an argument\n"
-"    --baz <arg>           another cool option --baz with a named argument\n"
-"    --qux[=<path>]        qux may take a path argument but has meaning by "
-"itself\n"
+"However, if you have local changes in the working tree that would be "
+"overwritten by this merge, 'git read-tree' will refuse to run to prevent "
+"your changes from being lost."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rev-parse.txt:397
-#, no-wrap
+#. type: Plain text
+#: en/git-read-tree.txt:383
 msgid ""
-"An option group Header\n"
-"    -C[...]               option C with an optional argument\n"
+"In other words, there is no need to worry about what exists only in the "
+"working tree.  When you have local changes in a part of the project that is "
+"not involved in the merge, your changes do not interfere with the merge, and "
+"are kept intact.  When they *do* interfere, the merge does not even start "
+"('git read-tree' complains loudly and fails without modifying anything).  In "
+"such a case, you can simply continue doing what you were in the middle of "
+"doing, and when your working tree is ready (i.e. you have finished your work-"
+"in-progress), attempt the merge again."
 msgstr ""
 
 #. type: Title -
-#: en/git-rev-parse.txt:400
+#: en/git-read-tree.txt:386
 #, no-wrap
-msgid "SQ-QUOTE"
+msgid "SPARSE CHECKOUT"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:406
+#: en/git-read-tree.txt:391
 msgid ""
-"In `--sq-quote` mode, 'git rev-parse' echoes on the standard output a single "
-"line suitable for `sh(1)` `eval`. This line is made by normalizing the "
-"arguments following `--sq-quote`. Nothing other than quoting the arguments "
-"is done."
+"\"Sparse checkout\" allows populating the working directory sparsely.  It "
+"uses the skip-worktree bit (see linkgit:git-update-index[1]) to tell Git "
+"whether a file in the working directory is worth looking at."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:410
+#: en/git-read-tree.txt:400
 msgid ""
-"If you want command input to still be interpreted as usual by 'git "
-"rev-parse' before the output is shell quoted, see the `--sq` option."
+"'git read-tree' and other merge-based commands ('git merge', 'git "
+"checkout'...) can help maintaining the skip-worktree bitmap and working "
+"directory update. `$GIT_DIR/info/sparse-checkout` is used to define the skip-"
+"worktree reference bitmap. When 'git read-tree' needs to update the working "
+"directory, it resets the skip-worktree bit in the index based on this file, "
+"which uses the same syntax as .gitignore files.  If an entry matches a "
+"pattern in this file, skip-worktree will not be set on that entry. "
+"Otherwise, skip-worktree will be set."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-rev-parse.txt:422
-#, no-wrap
+#. type: Plain text
+#: en/git-read-tree.txt:404
 msgid ""
-"$ cat >your-git-script.sh <<\\EOF\n"
-"#!/bin/sh\n"
-"args=$(git rev-parse --sq-quote \"$@\")   # quote user-supplied arguments\n"
-"command=\"git frotz -n24 $args\"          # and use it inside a "
-"handcrafted\n"
-"\t\t\t\t\t# command line\n"
-"eval \"$command\"\n"
-"EOF\n"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-rev-parse.txt:424
-#, no-wrap
-msgid "$ sh your-git-script.sh \"a b'c\"\n"
+"Then it compares the new skip-worktree value with the previous one. If skip-"
+"worktree turns from set to unset, it will add the corresponding file back. "
+"If it turns from unset to set, that file will be removed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:430
-msgid "Print the object name of the current commit:"
+#: en/git-read-tree.txt:408
+msgid ""
+"While `$GIT_DIR/info/sparse-checkout` is usually used to specify what files "
+"are in, you can also specify what files are _not_ in, using negate patterns. "
+"For example, to remove the file `unwanted`:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-rev-parse.txt:433
+#: en/git-read-tree.txt:412
 #, no-wrap
-msgid "$ git rev-parse --verify HEAD\n"
+msgid ""
+"/*\n"
+"!unwanted\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:436
-msgid "Print the commit object name from the revision in the $REV shell variable:"
+#: en/git-read-tree.txt:420
+msgid ""
+"Another tricky thing is fully repopulating the working directory when you no "
+"longer want sparse checkout. You cannot just disable \"sparse checkout\" "
+"because skip-worktree bits are still in the index and your working directory "
+"is still sparsely populated. You should re-populate the working directory "
+"with the `$GIT_DIR/info/sparse-checkout` file content as follows:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-rev-parse.txt:439
+#: en/git-read-tree.txt:423
 #, no-wrap
-msgid "$ git rev-parse --verify $REV^{commit}\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-rev-parse.txt:442
-msgid "This will error out if $REV is empty or not a valid revision."
+msgid "/*\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:444
-msgid "Similar to above:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-rev-parse.txt:447
-#, no-wrap
-msgid "$ git rev-parse --default master --verify $REV\n"
+#: en/git-read-tree.txt:429
+msgid ""
+"Then you can disable sparse checkout. Sparse checkout support in 'git read-"
+"tree' and similar commands is disabled by default. You need to turn `core."
+"sparseCheckout` on in order to have sparse checkout support."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rev-parse.txt:450
-msgid "but if $REV is empty, the commit object name from master will be printed."
+#: en/git-read-tree.txt:435
+msgid ""
+"linkgit:git-write-tree[1]; linkgit:git-ls-files[1]; linkgit:gitignore[5]"
 msgstr ""
 
 #. type: Title =
-#: en/git-rm.txt:2
+#: en/git-rebase.txt:2
 #, no-wrap
-msgid "git-rm(1)"
+msgid "git-rebase(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:7
-msgid "git-rm - Remove files from the working tree and from the index"
+#: en/git-rebase.txt:7
+msgid "git-rebase - Reapply commits on top of another base tip"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:12
+#: en/git-rebase.txt:16
 #, no-wrap
 msgid ""
-"'git rm' [-f | --force] [-n] [-r] [--cached] [--ignore-unmatch] [--quiet] "
-"[--] <file>...\n"
+"'git rebase' [-i | --interactive] [<options>] [--exec <cmd>] [--onto <newbase>]\n"
+"\t[<upstream> [<branch>]]\n"
+"'git rebase' [-i | --interactive] [<options>] [--exec <cmd>] [--onto <newbase>]\n"
+"\t--root [<branch>]\n"
+"'git rebase' --continue | --skip | --abort | --quit | --edit-todo | --show-current-patch\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:25
+#: en/git-rebase.txt:22
 msgid ""
-"Remove files from the index, or from the working tree and the index.  `git "
-"rm` will not remove a file from just your working directory.  (There is no "
-"option to remove a file only from the working tree and yet keep it in the "
-"index; use `/bin/rm` if you want to do that.)  The files being removed have "
-"to be identical to the tip of the branch, and no updates to their contents "
-"can be staged in the index, though that default behavior can be overridden "
-"with the `-f` option.  When `--cached` is given, the staged content has to "
-"match either the tip of the branch or the file on disk, allowing the file to "
-"be removed from just the index."
+"If <branch> is specified, 'git rebase' will perform an automatic `git "
+"checkout <branch>` before doing anything else.  Otherwise it remains on the "
+"current branch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:38
+#: en/git-rebase.txt:28
 msgid ""
-"Files to remove.  Fileglobs (e.g. `*.c`) can be given to remove all matching "
-"files.  If you want Git to expand file glob characters, you may need to "
-"shell-escape them.  A leading directory name (e.g. `dir` to remove "
-"`dir/file1` and `dir/file2`) can be given to remove all files in the "
-"directory, and recursively all sub-directories, but this requires the `-r` "
-"option to be explicitly given."
+"If <upstream> is not specified, the upstream configured in branch.<name>."
+"remote and branch.<name>.merge options will be used (see linkgit:git-"
+"config[1] for details) and the `--fork-point` option is assumed.  If you are "
+"currently not on any branch or if the current branch does not have a "
+"configured upstream, the rebase will abort."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:42
-msgid "Override the up-to-date check."
+#: en/git-rebase.txt:35
+msgid ""
+"All changes made by commits in the current branch but that are not in "
+"<upstream> are saved to a temporary area.  This is the same set of commits "
+"that would be shown by `git log <upstream>..HEAD`; or by `git log "
+"'fork_point'..HEAD`, if `--fork-point` is active (see the description on `--"
+"fork-point` below); or by `git log HEAD`, if the `--root` option is "
+"specified."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:48
+#: en/git-rebase.txt:40
 msgid ""
-"Don't actually remove any file(s).  Instead, just show if they exist in the "
-"index and would otherwise be removed by the command."
+"The current branch is reset to <upstream>, or <newbase> if the --onto option "
+"was supplied.  This has the exact same effect as `git reset --hard "
+"<upstream>` (or <newbase>).  ORIG_HEAD is set to point at the tip of the "
+"branch before the reset."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:52
-msgid "Allow recursive removal when a leading directory name is given."
+#: en/git-rebase.txt:46
+msgid ""
+"The commits that were previously saved into the temporary area are then "
+"reapplied to the current branch, one by one, in order. Note that any commits "
+"in HEAD which introduce the same textual changes as a commit in HEAD.."
+"<upstream> are omitted (i.e., a patch already accepted upstream with a "
+"different commit message or timestamp will be skipped)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:62
+#: en/git-rebase.txt:53
 msgid ""
-"Use this option to unstage and remove paths only from the index.  Working "
-"tree files, whether modified or not, will be left alone."
+"It is possible that a merge failure will prevent this process from being "
+"completely automatic.  You will have to resolve any such merge failure and "
+"run `git rebase --continue`.  Another option is to bypass the commit that "
+"caused the merge failure with `git rebase --skip`.  To check out the "
+"original <branch> and remove the .git/rebase-apply working files, use the "
+"command `git rebase --abort` instead."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rm.txt:63
+#. type: Plain text
+#: en/git-rebase.txt:55
+msgid ""
+"Assume the following history exists and the current branch is \"topic\":"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-rebase.txt:60
 #, no-wrap
-msgid "--ignore-unmatch"
+msgid ""
+"          A---B---C topic\n"
+"         /\n"
+"    D---E---F---G master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:65
-msgid "Exit with a zero status even if no files matched."
+#: en/git-rebase.txt:63
+msgid "From this point, the result of either of the following commands:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:70
+#: en/git-rebase.txt:67
+#, no-wrap
 msgid ""
-"`git rm` normally outputs one line (in the form of an `rm` command)  for "
-"each file removed. This option suppresses that output."
+"    git rebase master\n"
+"    git rebase master topic\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:79
-msgid ""
-"The <file> list given to the command can be exact pathnames, file glob "
-"patterns, or leading directory names.  The command removes only the paths "
-"that are known to Git.  Giving the name of a file that you have not told Git "
-"about does not remove that file."
+#: en/git-rebase.txt:69
+msgid "would be:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-rm.txt:84
+#. type: delimited block -
+#: en/git-rebase.txt:74
+#, no-wrap
 msgid ""
-"File globbing matches across directory boundaries.  Thus, given two "
-"directories `d` and `d2`, there is a difference between using `git rm 'd*'` "
-"and `git rm 'd/*'`, as the former will also remove all of directory `d2`."
+"                  A'--B'--C' topic\n"
+"                 /\n"
+"    D---E---F---G master\n"
 msgstr ""
 
-#. type: Title -
-#: en/git-rm.txt:86
+#. type: Plain text
+#: en/git-rebase.txt:79
 #, no-wrap
-msgid "REMOVING FILES THAT HAVE DISAPPEARED FROM THE FILESYSTEM"
+msgid ""
+"*NOTE:* The latter form is just a short-hand of `git checkout topic`\n"
+"followed by `git rebase master`. When rebase exits `topic` will\n"
+"remain the checked-out branch.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:91
+#: en/git-rebase.txt:85
 msgid ""
-"There is no option for `git rm` to remove from the index only the paths that "
-"have disappeared from the filesystem. However, depending on the use case, "
-"there are several ways that can be done."
+"If the upstream branch already contains a change you have made (e.g., "
+"because you mailed a patch which was applied upstream), then that commit "
+"will be skipped. For example, running `git rebase master` on the following "
+"history (in which `A'` and `A` introduce the same set of changes, but have "
+"different committer information):"
 msgstr ""
 
-#. type: Title ~
-#: en/git-rm.txt:93
+#. type: delimited block -
+#: en/git-rebase.txt:90
 #, no-wrap
-msgid "Using ``git commit -a''"
+msgid ""
+"          A---B---C topic\n"
+"         /\n"
+"    D---E---A'---F master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:100
-msgid ""
-"If you intend that your next commit should record all modifications of "
-"tracked files in the working tree and record all removals of files that have "
-"been removed from the working tree with `rm` (as opposed to `git rm`), use "
-"`git commit -a`, as it will automatically notice and record all removals.  "
-"You can also have a similar effect without committing by using `git add -u`."
+#: en/git-rebase.txt:93
+msgid "will result in:"
 msgstr ""
 
-#. type: Title ~
-#: en/git-rm.txt:102
+#. type: delimited block -
+#: en/git-rebase.txt:98
 #, no-wrap
-msgid "Using ``git add -A''"
+msgid ""
+"                   B'---C' topic\n"
+"                  /\n"
+"    D---E---A'---F master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:106
+#: en/git-rebase.txt:103
 msgid ""
-"When accepting a new code drop for a vendor branch, you probably want to "
-"record both the removal of paths and additions of new paths as well as "
-"modifications of existing paths."
+"Here is how you would transplant a topic branch based on one branch to "
+"another, to pretend that you forked the topic branch from the latter branch, "
+"using `rebase --onto`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:109
+#: en/git-rebase.txt:107
 msgid ""
-"Typically you would first remove all tracked files from the working tree "
-"using this command:"
+"First let's assume your 'topic' is based on branch 'next'.  For example, a "
+"feature developed in 'topic' depends on some functionality which is found in "
+"'next'."
 msgstr ""
 
 #. type: delimited block -
-#: en/git-rm.txt:112
+#: en/git-rebase.txt:114
 #, no-wrap
-msgid "git ls-files -z | xargs -0 rm -f\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-rm.txt:116
 msgid ""
-"and then untar the new code in the working tree. Alternately you could "
-"'rsync' the changes into the working tree."
+"    o---o---o---o---o  master\n"
+"         \\\n"
+"          o---o---o---o---o  next\n"
+"                           \\\n"
+"                            o---o---o  topic\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:119
+#: en/git-rebase.txt:119
 msgid ""
-"After that, the easiest way to record all removals, additions, and "
-"modifications in the working tree is:"
+"We want to make 'topic' forked from branch 'master'; for example, because "
+"the functionality on which 'topic' depends was merged into the more stable "
+"'master' branch. We want our tree to look like this:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-rm.txt:122
+#: en/git-rebase.txt:126
 #, no-wrap
-msgid "git add -A\n"
+msgid ""
+"    o---o---o---o---o  master\n"
+"        |            \\\n"
+"        |             o'--o'--o'  topic\n"
+"         \\\n"
+"          o---o---o---o---o  next\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:125
-msgid "See linkgit:git-add[1]."
+#: en/git-rebase.txt:129
+msgid "We can get this using the following command:"
 msgstr ""
 
-#. type: Title ~
-#: en/git-rm.txt:127
+#. type: Plain text
+#: en/git-rebase.txt:131
 #, no-wrap
-msgid "Other ways"
+msgid "    git rebase --onto master next topic\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:132
+#: en/git-rebase.txt:135
 msgid ""
-"If all you really want to do is to remove from the index the files that are "
-"no longer present in the working tree (perhaps because your working tree is "
-"dirty so that you cannot use `git commit -a`), use the following command:"
+"Another example of --onto option is to rebase part of a branch.  If we have "
+"the following situation:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-rm.txt:135
+#: en/git-rebase.txt:142
 #, no-wrap
-msgid "git diff --name-only --diff-filter=D -z | xargs -0 git rm --cached\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-rm.txt:147
 msgid ""
-"Only submodules using a gitfile (which means they were cloned with a Git "
-"version 1.7.8 or newer) will be removed from the work tree, as their "
-"repository lives inside the .git directory of the superproject. If a "
-"submodule (or one of those nested inside it)  still uses a .git directory, "
-"`git rm` will fail - no matter if forced or not - to protect the submodule's "
-"history. If it exists the submodule.<name> section in the "
-"linkgit:gitmodules[5] file will also be removed and that file will be staged "
-"(unless --cached or -n are used)."
+"                            H---I---J topicB\n"
+"                           /\n"
+"                  E---F---G  topicA\n"
+"                 /\n"
+"    A---B---C---D  master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:153
-msgid ""
-"A submodule is considered up-to-date when the HEAD is the same as recorded "
-"in the index, no tracked files are modified and no untracked files that "
-"aren't ignored are present in the submodules work tree.  Ignored files are "
-"deemed expendable and won't stop a submodule's work tree from being removed."
+#: en/git-rebase.txt:145 en/git-rebase.txt:168
+msgid "then the command"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:157
-msgid ""
-"If you only want to remove the local checkout of a submodule from your work "
-"tree without committing the removal, use linkgit:git-submodule[1] `deinit` "
-"instead."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-rm.txt:160
+#: en/git-rebase.txt:147
 #, no-wrap
-msgid "`git rm Documentation/\\*.txt`"
-msgstr ""
-
-#. type: Plain text
-#: en/git-rm.txt:163
-msgid ""
-"Removes all `*.txt` files from the index that are under the `Documentation` "
-"directory and any of its subdirectories."
+msgid "    git rebase --onto master topicA topicB\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:167
-msgid ""
-"Note that the asterisk `*` is quoted from the shell in this example; this "
-"lets Git, and not the shell, expand the pathnames of files and "
-"subdirectories under the `Documentation/` directory."
+#: en/git-rebase.txt:149
+msgid "would result in:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rm.txt:168
+#. type: delimited block -
+#: en/git-rebase.txt:156
 #, no-wrap
-msgid "`git rm -f git-*.sh`"
+msgid ""
+"                 H'--I'--J'  topicB\n"
+"                /\n"
+"                | E---F---G  topicA\n"
+"                |/\n"
+"    A---B---C---D  master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:172
-msgid ""
-"Because this example lets the shell expand the asterisk (i.e. you are "
-"listing the files explicitly), it does not remove `subdir/git-foo.sh`."
+#: en/git-rebase.txt:159
+msgid "This is useful when topicB does not depend on topicA."
 msgstr ""
 
 #. type: Plain text
-#: en/git-rm.txt:181
+#: en/git-rebase.txt:162
 msgid ""
-"Each time a superproject update removes a populated submodule (e.g. when "
-"switching between commits before and after the removal) a stale submodule "
-"checkout will remain in the old location. Removing the old directory is only "
-"safe when it uses a gitfile, as otherwise the history of the submodule will "
-"be deleted too. This step will be obsolete when recursive submodule update "
-"has been implemented."
+"A range of commits could also be removed with rebase.  If we have the "
+"following situation:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-rm.txt:185 en/cmds-mainporcelain.txt:1
+#. type: delimited block -
+#: en/git-rebase.txt:165
 #, no-wrap
-msgid "linkgit:git-add[1]"
+msgid "    E---F---G---H---I---J  topicA\n"
 msgstr ""
 
-#. type: Title =
-#: en/git-send-email.txt:2
+#. type: Plain text
+#: en/git-rebase.txt:170
 #, no-wrap
-msgid "git-send-email(1)"
+msgid "    git rebase --onto topicA~5 topicA~3 topicA\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:7
-msgid "git-send-email - Send a collection of patches as emails"
+#: en/git-rebase.txt:172
+msgid "would result in the removal of commits F and G:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-send-email.txt:14
+#. type: delimited block -
+#: en/git-rebase.txt:175
 #, no-wrap
-msgid ""
-"'git send-email' [options] <file|directory|rev-list options>...\n"
-"'git send-email' --dump-aliases\n"
+msgid "    E---H'---I'---J'  topicA\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:23
+#: en/git-rebase.txt:180
 msgid ""
-"Takes the patches given on the command line and emails them out.  Patches "
-"can be specified as files, directories (which will send all files in the "
-"directory), or directly as a revision list.  In the last case, any format "
-"accepted by linkgit:git-format-patch[1] can be passed to git send-email."
+"This is useful if F and G were flawed in some way, or should not be part of "
+"topicA.  Note that the argument to --onto and the <upstream> parameter can "
+"be any valid commit-ish."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:27
+#: en/git-rebase.txt:186
 msgid ""
-"The header of the email is configurable via command-line options.  If not "
-"specified on the command line, the user will be prompted with a ReadLine "
-"enabled interface to provide the necessary information."
-msgstr ""
-
-#. type: Plain text
-#: en/git-send-email.txt:29
-msgid "There are two formats accepted for patch files:"
+"In case of conflict, 'git rebase' will stop at the first problematic commit "
+"and leave conflict markers in the tree.  You can use 'git diff' to locate "
+"the markers (<<<<<<) and make edits to resolve the conflict.  For each file "
+"you edit, you need to tell Git that the conflict has been resolved, "
+"typically this would be done with"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:31
-msgid "mbox format files"
+#: en/git-rebase.txt:189
+#, no-wrap
+msgid "    git add <filename>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:34
+#: en/git-rebase.txt:193
 msgid ""
-"This is what linkgit:git-format-patch[1] generates.  Most headers and MIME "
-"formatting are ignored."
+"After resolving the conflict manually and updating the index with the "
+"desired resolution, you can continue the rebasing process with"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:37
-msgid ""
-"The original format used by Greg Kroah-Hartman's 'send_lots_of_email.pl' "
-"script"
+#: en/git-rebase.txt:196
+#, no-wrap
+msgid "    git rebase --continue\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:40
-msgid ""
-"This format expects the first line of the file to contain the \"Cc:\" value "
-"and the \"Subject:\" of the message as the second line."
+#: en/git-rebase.txt:199
+msgid "Alternatively, you can undo the 'git rebase' with"
 msgstr ""
 
-#. type: Title ~
-#: en/git-send-email.txt:46
+#. type: Plain text
+#: en/git-rebase.txt:202
 #, no-wrap
-msgid "Composing"
+msgid "    git rebase --abort\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-send-email.txt:48 en/git-tag.txt:60
+#: en/git-rebase.txt:210
 #, no-wrap
-msgid "--annotate"
+msgid "--onto <newbase>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:52
+#: en/git-rebase.txt:215
 msgid ""
-"Review and edit each patch you're about to send. Default is the value of "
-"`sendemail.annotate`. See the CONFIGURATION section for "
-"`sendemail.multiEdit`."
+"Starting point at which to create the new commits. If the --onto option is "
+"not specified, the starting point is <upstream>.  May be any valid commit, "
+"and not just an existing branch name."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:53
-#, no-wrap
-msgid "--bcc=<address>,..."
+#. type: Plain text
+#: en/git-rebase.txt:219
+msgid ""
+"As a special case, you may use \"A\\...B\" as a shortcut for the merge base "
+"of A and B if there is exactly one merge base. You can leave out at most one "
+"of A and B, in which case it defaults to HEAD."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:56
+#: en/git-rebase.txt:224
 msgid ""
-"Specify a \"Bcc:\" value for each email. Default is the value of "
-"`sendemail.bcc`."
+"Upstream branch to compare against.  May be any valid commit, not just an "
+"existing branch name. Defaults to the configured upstream for the current "
+"branch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:58 en/git-send-email.txt:64 en/git-send-email.txt:121
-msgid "This option may be specified multiple times."
+#: en/git-rebase.txt:230
+msgid "Restart the rebasing process after having resolved a merge conflict."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:59
-#, no-wrap
-msgid "--cc=<address>,..."
+#. type: Plain text
+#: en/git-rebase.txt:237
+msgid ""
+"Abort the rebase operation and reset HEAD to the original branch. If "
+"<branch> was provided when the rebase operation was started, then HEAD will "
+"be reset to <branch>. Otherwise HEAD will be reset to where it was when the "
+"rebase operation was started."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:62
+#: en/git-rebase.txt:242
 msgid ""
-"Specify a starting \"Cc:\" value for each email.  Default is the value of "
-"`sendemail.cc`."
+"Abort the rebase operation but HEAD is not reset back to the original "
+"branch. The index and working tree are also left unchanged as a result."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:65
+#. type: Plain text
+#: en/git-rebase.txt:243 en/git-rebase.txt:532
 #, no-wrap
-msgid "--compose"
+msgid "--keep-empty"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:68
+#: en/git-rebase.txt:246
 msgid ""
-"Invoke a text editor (see GIT_EDITOR in linkgit:git-var[1])  to edit an "
-"introductory message for the patch series."
+"Keep the commits that do not change anything from its parents in the result."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:74
-msgid ""
-"When `--compose` is used, git send-email will use the From, Subject, and "
-"In-Reply-To headers specified in the message. If the body of the message "
-"(what you type after the headers and a blank line) only contains blank (or "
-"Git: prefixed) lines, the summary won't be sent, but From, Subject, and "
-"In-Reply-To headers will be used unless they are removed."
+#: en/git-rebase.txt:248 en/git-rebase.txt:255 en/git-rebase.txt:280
+#: en/git-rebase.txt:293 en/git-rebase.txt:302 en/git-rebase.txt:339
+#: en/git-rebase.txt:374 en/git-rebase.txt:381 en/git-rebase.txt:388
+#: en/git-rebase.txt:400 en/git-rebase.txt:439 en/git-rebase.txt:464
+#: en/git-rebase.txt:476 en/git-rebase.txt:495
+msgid "See also INCOMPATIBLE OPTIONS below."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:76
-msgid "Missing From or In-Reply-To headers will be prompted for."
+#: en/git-rebase.txt:253
+msgid ""
+"By default, rebasing commits with an empty message will fail.  This option "
+"overrides that behavior, allowing commits with empty messages to be rebased."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:78
-msgid "See the CONFIGURATION section for `sendemail.multiEdit`."
+#: en/git-rebase.txt:258
+msgid "Restart the rebasing process by skipping the current patch."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:79
+#. type: Plain text
+#: en/git-rebase.txt:259 en/git-rebase.txt:534
 #, no-wrap
-msgid "--from=<address>"
+msgid "--edit-todo"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:86
-msgid ""
-"Specify the sender of the emails.  If not specified on the command line, the "
-"value of the `sendemail.from` configuration option is used.  If neither the "
-"command-line option nor `sendemail.from` are set, then the user will be "
-"prompted for the value.  The default for the prompt will be the value of "
-"GIT_AUTHOR_IDENT, or GIT_COMMITTER_IDENT if that is not set, as returned by "
-"\"git var -l\"."
+#: en/git-rebase.txt:261
+msgid "Edit the todo list during an interactive rebase."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:87
-#, no-wrap
-msgid "--in-reply-to=<identifier>"
+#. type: Plain text
+#: en/git-rebase.txt:266
+msgid ""
+"Show the current patch in an interactive rebase or when rebase is stopped "
+"because of conflicts. This is the equivalent of `git show REBASE_HEAD`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:93
+#: en/git-rebase.txt:272
 msgid ""
-"Make the first mail (or all the mails with `--no-thread`) appear as a reply "
-"to the given Message-Id, which avoids breaking threads to provide a new "
-"patch series.  The second and subsequent emails will be sent as replies "
-"according to the `--[no-]chain-reply-to` setting."
+"Use merging strategies to rebase.  When the recursive (default) merge "
+"strategy is used, this allows rebase to be aware of renames on the upstream "
+"side."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:97
+#: en/git-rebase.txt:278
 msgid ""
-"So for example when `--thread` and `--no-chain-reply-to` are specified, the "
-"second and subsequent patches will be replies to the first one like in the "
-"illustration below where `[PATCH v2 0/3]` is in reply to `[PATCH 0/2]`:"
+"Note that a rebase merge works by replaying each commit from the working "
+"branch on top of the <upstream> branch.  Because of this, when a merge "
+"conflict happens, the side reported as 'ours' is the so-far rebased series, "
+"starting with <upstream>, and 'theirs' is the working branch.  In other "
+"words, the sides are swapped."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:105
-#, no-wrap
+#: en/git-rebase.txt:286
 msgid ""
-"  [PATCH 0/2] Here is what I did...\n"
-"    [PATCH 1/2] Clean up and tests\n"
-"    [PATCH 2/2] Implementation\n"
-"    [PATCH v2 0/3] Here is a reroll\n"
-"      [PATCH v2 1/3] Clean up\n"
-"      [PATCH v2 2/3] New tests\n"
-"      [PATCH v2 3/3] Implementation\n"
+"Use the given merge strategy.  If there is no `-s` option 'git merge-"
+"recursive' is used instead.  This implies --merge."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:108
+#: en/git-rebase.txt:291
 msgid ""
-"Only necessary if --compose is also set.  If --compose is not set, this will "
-"be prompted for."
+"Because 'git rebase' replays each commit from the working branch on top of "
+"the <upstream> branch using the given strategy, using the 'ours' strategy "
+"simply empties all patches from the <branch>, which makes little sense."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-send-email.txt:109
+#: en/git-rebase.txt:294
 #, no-wrap
-msgid "--subject=<string>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-send-email.txt:113
-msgid ""
-"Specify the initial subject of the email thread.  Only necessary if "
-"--compose is also set.  If --compose is not set, this will be prompted for."
+msgid "-X <strategy-option>"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-send-email.txt:114
+#: en/git-rebase.txt:295
 #, no-wrap
-msgid "--to=<address>,..."
+msgid "--strategy-option=<strategy-option>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:119
+#: en/git-rebase.txt:300
 msgid ""
-"Specify the primary recipient of the emails generated. Generally, this will "
-"be the upstream maintainer of the project involved. Default is the value of "
-"the `sendemail.to` configuration value; if that is unspecified, and --to-cmd "
-"is not specified, this will be prompted for."
+"Pass the <strategy-option> through to the merge strategy.  This implies `--"
+"merge` and, if no strategy has been specified, `-s recursive`.  Note the "
+"reversal of 'ours' and 'theirs' as noted above for the `-m` option."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:122
-#, no-wrap
-msgid "--8bit-encoding=<encoding>"
+#. type: Plain text
+#: en/git-rebase.txt:312
+msgid "Be quiet. Implies --no-stat."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:128
-msgid ""
-"When encountering a non-ASCII message or subject that does not declare its "
-"encoding, add headers/quoting to indicate it is encoded in <encoding>.  "
-"Default is the value of the 'sendemail.assume8bitEncoding'; if that is "
-"unspecified, this will be prompted for if any non-ASCII files are "
-"encountered."
+#: en/git-rebase.txt:316
+msgid "Be verbose. Implies --stat."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:130
-msgid "Note that no attempts whatsoever are made to validate the encoding."
+#: en/git-rebase.txt:320
+msgid ""
+"Show a diffstat of what changed upstream since the last rebase. The diffstat "
+"is also controlled by the configuration option rebase.stat."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:131
-#, no-wrap
-msgid "--compose-encoding=<encoding>"
+#. type: Plain text
+#: en/git-rebase.txt:324
+msgid "Do not show a diffstat as part of the rebase process."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:134
+#: en/git-rebase.txt:327
 msgid ""
-"Specify encoding of compose message. Default is the value of the "
-"'sendemail.composeencoding'; if that is unspecified, UTF-8 is assumed."
+"This option bypasses the pre-rebase hook.  See also linkgit:githooks[5]."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-send-email.txt:135
+#: en/git-rebase.txt:328 en/git-rev-parse.txt:98 en/git-show-ref.txt:59
+#: en/git-tag.txt:81
 #, no-wrap
-msgid "--transfer-encoding=(7bit|8bit|quoted-printable|base64)"
+msgid "--verify"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:144
+#: en/git-rebase.txt:331
 msgid ""
-"Specify the transfer encoding to be used to send the message over SMTP.  "
-"7bit will fail upon encountering a non-ASCII message.  quoted-printable can "
-"be useful when the repository contains files that contain carriage returns, "
-"but makes the raw patch email file (as saved from a MUA) much harder to "
-"inspect manually.  base64 is even more fool proof, but also even more "
-"opaque.  Default is the value of the `sendemail.transferEncoding` "
-"configuration value; if that is unspecified, git will use 8bit and not add a "
-"Content-Transfer-Encoding header."
+"Allows the pre-rebase hook to run, which is the default.  This option can be "
+"used to override --no-verify.  See also linkgit:githooks[5]."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-send-email.txt:145
+#: en/git-rebase.txt:340 en/merge-options.txt:35
 #, no-wrap
-msgid "--xmailer"
+msgid "--no-ff"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-send-email.txt:146
+#: en/git-rebase.txt:341
 #, no-wrap
-msgid "--no-xmailer"
+msgid "--force-rebase"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:150
+#: en/git-rebase.txt:346
 msgid ""
-"Add (or prevent adding) the \"X-Mailer:\" header.  By default, the header is "
-"added, but it can be turned off by setting the `sendemail.xmailer` "
-"configuration variable to `false`."
+"Individually replay all rebased commits instead of fast-forwarding over the "
+"unchanged ones.  This ensures that the entire history of the rebased branch "
+"is composed of new commits."
 msgstr ""
 
-#. type: Title ~
-#: en/git-send-email.txt:152
-#, no-wrap
-msgid "Sending"
+#. type: Plain text
+#: en/git-rebase.txt:352
+msgid ""
+"You may find this helpful after reverting a topic branch merge, as this "
+"option recreates the topic branch with fresh commits so it can be remerged "
+"successfully without needing to \"revert the reversion\" (see the link:howto/"
+"revert-a-faulty-merge.html[revert-a-faulty-merge How-To] for details)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-send-email.txt:154
+#: en/git-rebase.txt:354
 #, no-wrap
-msgid "--envelope-sender=<address>"
+msgid "--no-fork-point"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:162
+#: en/git-rebase.txt:358
 msgid ""
-"Specify the envelope sender used to send the emails.  This is useful if your "
-"default address is not the address that is subscribed to a list. In order to "
-"use the 'From' address, set the value to \"auto\". If you use the sendmail "
-"binary, you must have suitable privileges for the -f parameter.  Default is "
-"the value of the `sendemail.envelopeSender` configuration variable; if that "
-"is unspecified, choosing the envelope sender is left to your MTA."
+"Use reflog to find a better common ancestor between <upstream> and <branch> "
+"when calculating which commits have been introduced by <branch>."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:163
-#, no-wrap
-msgid "--smtp-encryption=<encryption>"
+#. type: Plain text
+#: en/git-rebase.txt:364
+msgid ""
+"When --fork-point is active, 'fork_point' will be used instead of <upstream> "
+"to calculate the set of commits to rebase, where 'fork_point' is the result "
+"of `git merge-base --fork-point <upstream> <branch>` command (see linkgit:"
+"git-merge-base[1]).  If 'fork_point' ends up being empty, the <upstream> "
+"will be used as a fallback."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:167
+#: en/git-rebase.txt:367
 msgid ""
-"Specify the encryption to use, either 'ssl' or 'tls'.  Any other value "
-"reverts to plain SMTP.  Default is the value of `sendemail.smtpEncryption`."
+"If either <upstream> or --root is given on the command line, then the "
+"default is `--no-fork-point`, otherwise the default is `--fork-point`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:168
-#, no-wrap
-msgid "--smtp-domain=<FQDN>"
+#. type: Plain text
+#: en/git-rebase.txt:372
+msgid ""
+"These flag are passed to the 'git apply' program (see linkgit:git-apply[1]) "
+"that applies the patch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:174
+#: en/git-rebase.txt:379
 msgid ""
-"Specifies the Fully Qualified Domain Name (FQDN) used in the HELO/EHLO "
-"command to the SMTP server.  Some servers require the FQDN to match your IP "
-"address.  If not set, git send-email attempts to determine your FQDN "
-"automatically.  Default is the value of `sendemail.smtpDomain`."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-send-email.txt:175
-#, no-wrap
-msgid "--smtp-auth=<mechanisms>"
+"These flags are passed to 'git am' to easily change the dates of the rebased "
+"commits (see linkgit:git-am[1])."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:178
+#: en/git-rebase.txt:386
 msgid ""
-"Whitespace-separated list of allowed SMTP-AUTH mechanisms. This setting "
-"forces using only the listed mechanisms. Example:"
+"Add a Signed-off-by: trailer to all the rebased commits. Note that if `--"
+"interactive` is given then only commits marked to be picked, edited or "
+"reworded will have the trailer added."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-send-email.txt:181
-#, no-wrap
-msgid "$ git send-email --smtp-auth=\"PLAIN LOGIN GSSAPI\" ...\n"
+#. type: Plain text
+#: en/git-rebase.txt:394
+msgid ""
+"Make a list of the commits which are about to be rebased.  Let the user edit "
+"that list before rebasing.  This mode can also be used to split commits (see "
+"SPLITTING COMMITS below)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:187
+#: en/git-rebase.txt:398
 msgid ""
-"If at least one of the specified mechanisms matches the ones advertised by "
-"the SMTP server and if it is supported by the utilized SASL library, the "
-"mechanism is used for authentication. If neither 'sendemail.smtpAuth' nor "
-"`--smtp-auth` is specified, all mechanisms supported by the SASL library can "
-"be used."
+"The commit list format can be changed by setting the configuration option "
+"rebase.instructionFormat.  A customized instruction format will "
+"automatically have the long commit hash prepended to the format."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-send-email.txt:188
+#: en/git-rebase.txt:402
 #, no-wrap
-msgid "--smtp-pass[=<password>]"
+msgid "--rebase-merges[=(rebase-cousins|no-rebase-cousins)]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:193
+#: en/git-rebase.txt:410
 msgid ""
-"Password for SMTP-AUTH. The argument is optional: If no argument is "
-"specified, then the empty string is used as the password. Default is the "
-"value of `sendemail.smtpPass`, however `--smtp-pass` always overrides this "
-"value."
+"By default, a rebase will simply drop merge commits from the todo list, and "
+"put the rebased commits into a single, linear branch.  With `--rebase-"
+"merges`, the rebase will instead try to preserve the branching structure "
+"within the commits that are to be rebased, by recreating the merge commits. "
+"Any resolved merge conflicts or manual amendments in these merge commits "
+"will have to be resolved/re-applied manually."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:199
+#: en/git-rebase.txt:417
 msgid ""
-"Furthermore, passwords need not be specified in configuration files or on "
-"the command line. If a username has been specified (with `--smtp-user` or a "
-"`sendemail.smtpUser`), but no password has been specified (with "
-"`--smtp-pass` or `sendemail.smtpPass`), then a password is obtained using "
-"'git-credential'."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-send-email.txt:200
-#, no-wrap
-msgid "--smtp-server=<host>"
+"By default, or when `no-rebase-cousins` was specified, commits which do not "
+"have `<upstream>` as direct ancestor will keep their original branch point, "
+"i.e. commits that would be excluded by gitlink:git-log[1]'s `--ancestry-"
+"path` option will keep their original ancestry by default. If the `rebase-"
+"cousins` mode is turned on, such commits are instead rebased onto "
+"`<upstream>` (or `<onto>`, if specified)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:209
+#: en/git-rebase.txt:421
 msgid ""
-"If set, specifies the outgoing SMTP server to use (e.g.  `smtp.example.com` "
-"or a raw IP address).  Alternatively it can specify a full pathname of a "
-"sendmail-like program instead; the program must support the `-i` option.  "
-"Default value can be specified by the `sendemail.smtpServer` configuration "
-"option; the built-in default is `/usr/sbin/sendmail` or `/usr/lib/sendmail` "
-"if such program is available, or `localhost` otherwise."
+"The `--rebase-merges` mode is similar in spirit to `--preserve-merges`, but "
+"in contrast to that option works well in interactive rebases: commits can be "
+"reordered, inserted and dropped at will."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:210
-#, no-wrap
-msgid "--smtp-server-port=<port>"
+#. type: Plain text
+#: en/git-rebase.txt:425
+msgid ""
+"It is currently only possible to recreate the merge commits using the "
+"`recursive` merge strategy; Different merge strategies can be used only via "
+"explicit `exec git merge -s <strategy> [...]` commands."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:217
-msgid ""
-"Specifies a port different from the default port (SMTP servers typically "
-"listen to smtp port 25, but may also listen to submission port 587, or the "
-"common SSL smtp port 465); symbolic port names (e.g. \"submission\" instead "
-"of 587)  are also accepted. The port can also be set with the "
-"`sendemail.smtpServerPort` configuration variable."
+#: en/git-rebase.txt:427
+msgid "See also REBASING MERGES and INCOMPATIBLE OPTIONS below."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-send-email.txt:218
+#: en/git-rebase.txt:429 en/git-rebase.txt:529 en/git-svn.txt:680
 #, no-wrap
-msgid "--smtp-server-option=<option>"
+msgid "--preserve-merges"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:222
+#: en/git-rebase.txt:433
 msgid ""
-"If set, specifies the outgoing SMTP server option to use.  Default value can "
-"be specified by the `sendemail.smtpServerOption` configuration option."
+"Recreate merge commits instead of flattening the history by replaying "
+"commits a merge commit introduces. Merge conflict resolutions or manual "
+"amendments to merge commits are not preserved."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:226
+#: en/git-rebase.txt:437
 msgid ""
-"The --smtp-server-option option must be repeated for each option you want to "
-"pass to the server. Likewise, different lines in the configuration files "
-"must be used for each option."
+"This uses the `--interactive` machinery internally, but combining it with "
+"the `--interactive` option explicitly is generally not a good idea unless "
+"you know what you are doing (see BUGS below)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-send-email.txt:227
+#: en/git-rebase.txt:440
 #, no-wrap
-msgid "--smtp-ssl"
+msgid "-x <cmd>"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-rebase.txt:441
+#, no-wrap
+msgid "--exec <cmd>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:229
-msgid "Legacy alias for '--smtp-encryption ssl'."
+#: en/git-rebase.txt:446
+msgid ""
+"Append \"exec <cmd>\" after each line creating a commit in the final "
+"history. <cmd> will be interpreted as one or more shell commands. Any "
+"command that fails will interrupt the rebase, with exit code 1."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:230
+#. type: Plain text
+#: en/git-rebase.txt:449
+msgid ""
+"You may execute several commands by either using one instance of `--exec` "
+"with several commands:"
+msgstr ""
+
+#. type: Plain text
+#: en/git-rebase.txt:451
 #, no-wrap
-msgid "--smtp-ssl-cert-path"
+msgid "\tgit rebase -i --exec \"cmd1 && cmd2 && ...\"\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:240
-msgid ""
-"Path to a store of trusted CA certificates for SMTP SSL/TLS certificate "
-"validation (either a directory that has been processed by 'c_rehash', or a "
-"single file containing one or more PEM format certificates concatenated "
-"together: see verify(1) -CAfile and -CApath for more information on "
-"these). Set it to an empty string to disable certificate "
-"verification. Defaults to the value of the `sendemail.smtpsslcertpath` "
-"configuration variable, if set, or the backing SSL library's compiled-in "
-"default otherwise (which should be the best choice on most platforms)."
+#: en/git-rebase.txt:453
+msgid "or by giving more than one `--exec`:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:241
+#. type: Plain text
+#: en/git-rebase.txt:455
 #, no-wrap
-msgid "--smtp-user=<user>"
+msgid "\tgit rebase -i --exec \"cmd1\" --exec \"cmd2\" --exec ...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:245
+#: en/git-rebase.txt:459
 msgid ""
-"Username for SMTP-AUTH. Default is the value of `sendemail.smtpUser`; if a "
-"username is not specified (with `--smtp-user` or `sendemail.smtpUser`), then "
-"authentication is not attempted."
+"If `--autosquash` is used, \"exec\" lines will not be appended for the "
+"intermediate commits, and will only appear at the end of each squash/fixup "
+"series."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:246
-#, no-wrap
-msgid "--smtp-debug=0|1"
+#. type: Plain text
+#: en/git-rebase.txt:462
+msgid ""
+"This uses the `--interactive` machinery internally, but it can be run "
+"without an explicit `--interactive`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:250
+#: en/git-rebase.txt:474
 msgid ""
-"Enable (1) or disable (0) debug output. If enabled, SMTP commands and "
-"replies will be printed. Useful to debug TLS connection and authentication "
-"problems."
+"Rebase all commits reachable from <branch>, instead of limiting them with an "
+"<upstream>.  This allows you to rebase the root commit(s) on a branch.  When "
+"used with --onto, it will skip changes already contained in <newbase> "
+"(instead of <upstream>) whereas without --onto it will operate on every "
+"change.  When used together with both --onto and --preserve-merges, 'all' "
+"root commits will be rewritten to have <newbase> as parent instead."
 msgstr ""
 
-#. type: Title ~
-#: en/git-send-email.txt:252
+#. type: Plain text
+#: en/git-rebase.txt:477 en/git-rebase.txt:533
 #, no-wrap
-msgid "Automating"
+msgid "--autosquash"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-send-email.txt:254
+#: en/git-rebase.txt:478
 #, no-wrap
-msgid "--to-cmd=<command>"
+msgid "--no-autosquash"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:259
+#: en/git-rebase.txt:489
 msgid ""
-"Specify a command to execute once per patch file which should generate patch "
-"file specific \"To:\" entries.  Output of this command must be single email "
-"address per line.  Default is the value of 'sendemail.tocmd' configuration "
-"value."
+"When the commit log message begins with \"squash! ...\" (or \"fixup! ...\"), "
+"and there is already a commit in the todo list that matches the same `...`, "
+"automatically modify the todo list of rebase -i so that the commit marked "
+"for squashing comes right after the commit to be modified, and change the "
+"action of the moved commit from `pick` to `squash` (or `fixup`).  A commit "
+"matches the `...` if the commit subject matches, or if the `...` refers to "
+"the commit's hash. As a fall-back, partial matches of the commit subject "
+"work, too.  The recommended way to create fixup/squash commits is by using "
+"the `--fixup`/`--squash` options of linkgit:git-commit[1]."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:260
-#, no-wrap
-msgid "--cc-cmd=<command>"
+#. type: Plain text
+#: en/git-rebase.txt:493
+msgid ""
+"If the `--autosquash` option is enabled by default using the configuration "
+"variable `rebase.autoSquash`, this option can be used to override and "
+"disable this setting."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:265
+#: en/git-rebase.txt:503
 msgid ""
-"Specify a command to execute once per patch file which should generate patch "
-"file specific \"Cc:\" entries.  Output of this command must be single email "
-"address per line.  Default is the value of `sendemail.ccCmd` configuration "
-"value."
+"Automatically create a temporary stash entry before the operation begins, "
+"and apply it after the operation ends.  This means that you can run rebase "
+"on a dirty worktree.  However, use with care: the final stash application "
+"after a successful rebase might result in non-trivial conflicts."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-send-email.txt:266
+#: en/git-rebase.txt:504
 #, no-wrap
-msgid "--[no-]chain-reply-to"
-msgstr ""
-
-#. type: Plain text
-#: en/git-send-email.txt:273
-msgid ""
-"If this is set, each email will be sent as a reply to the previous email "
-"sent.  If disabled with \"--no-chain-reply-to\", all emails after the first "
-"will be sent as replies to the first email sent.  When using this, it is "
-"recommended that the first file given be an overview of the entire patch "
-"series. Disabled by default, but the `sendemail.chainReplyTo` configuration "
-"variable can be used to enable it."
+msgid "--reschedule-failed-exec"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-send-email.txt:274
+#: en/git-rebase.txt:505
 #, no-wrap
-msgid "--identity=<identity>"
+msgid "--no-reschedule-failed-exec"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:279 en/config.txt:2869
+#: en/git-rebase.txt:508
 msgid ""
-"A configuration identity. When given, causes values in the "
-"'sendemail.<identity>' subsection to take precedence over values in the "
-"'sendemail' section. The default identity is the value of "
-"`sendemail.identity`."
+"Automatically reschedule `exec` commands that failed. This only makes sense "
+"in interactive mode (or when an `--exec` option was provided)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:280
+#. type: Title -
+#: en/git-rebase.txt:510
 #, no-wrap
-msgid "--[no-]signed-off-by-cc"
+msgid "INCOMPATIBLE OPTIONS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:284
-msgid ""
-"If this is set, add emails found in Signed-off-by: or Cc: lines to the cc "
-"list. Default is the value of `sendemail.signedoffbycc` configuration value; "
-"if that is unspecified, default to --signed-off-by-cc."
+#: en/git-rebase.txt:513
+msgid "The following options:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:285
-#, no-wrap
-msgid "--[no-]cc-cover"
+#. type: Plain text
+#: en/git-rebase.txt:517
+msgid "--whitespace"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:290
-msgid ""
-"If this is set, emails found in Cc: headers in the first patch of the series "
-"(typically the cover letter) are added to the cc list for each email "
-"set. Default is the value of 'sendemail.cccover' configuration value; if "
-"that is unspecified, default to --no-cc-cover."
+#: en/git-rebase.txt:521
+msgid "are incompatible with the following options:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:291
-#, no-wrap
-msgid "--[no-]to-cover"
+#. type: Plain text
+#: en/git-rebase.txt:524
+msgid "--strategy"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:296
-msgid ""
-"If this is set, emails found in To: headers in the first patch of the series "
-"(typically the cover letter) are added to the to list for each email "
-"set. Default is the value of 'sendemail.tocover' configuration value; if "
-"that is unspecified, default to --no-to-cover."
+#: en/git-rebase.txt:525
+msgid "--strategy-option"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:297
-#, no-wrap
-msgid "--suppress-cc=<category>"
+#. type: Plain text
+#: en/git-rebase.txt:527
+msgid "--[no-]autosquash"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:300
-msgid "Specify an additional category of recipients to suppress the auto-cc of:"
+#: en/git-rebase.txt:528
+msgid "--rebase-merges"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:303
-msgid "'author' will avoid including the patch author"
+#: en/git-rebase.txt:531
+msgid "--exec"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:304
-msgid "'self' will avoid including the sender"
+#: en/git-rebase.txt:535
+msgid "--root when used in combination with --onto"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:306
-msgid ""
-"'cc' will avoid including anyone mentioned in Cc lines in the patch header "
-"except for self (use 'self' for that)."
+#: en/git-rebase.txt:537
+msgid "In addition, the following pairs of options are incompatible:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:308
-msgid ""
-"'bodycc' will avoid including anyone mentioned in Cc lines in the patch body "
-"(commit message) except for self (use 'self' for that)."
+#: en/git-rebase.txt:539
+msgid "--preserve-merges and --interactive"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:309
-msgid "'sob' will avoid including anyone mentioned in Signed-off-by lines except"
+#: en/git-rebase.txt:540
+msgid "--preserve-merges and --signoff"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:310
-msgid "for self (use 'self' for that)."
+#: en/git-rebase.txt:541
+msgid "--preserve-merges and --rebase-merges"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:311
-msgid "'cccmd' will avoid running the --cc-cmd."
+#: en/git-rebase.txt:542
+msgid "--rebase-merges and --strategy"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:312
-msgid "'body' is equivalent to 'sob' + 'bodycc'"
+#: en/git-rebase.txt:543
+msgid "--rebase-merges and --strategy-option"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:313
-msgid "'all' will suppress all auto cc values."
+#: en/git-rebase.txt:545
+msgid "BEHAVIORAL DIFFERENCES"
 msgstr ""
 
-#. type: Plain text
-#: en/git-send-email.txt:318
-msgid ""
-"Default is the value of `sendemail.suppresscc` configuration value; if that "
-"is unspecified, default to 'self' if --suppress-from is specified, as well "
-"as 'body' if --no-signed-off-cc is specified."
+#. type: delimited block -
+#: en/git-rebase.txt:548
+#, no-wrap
+msgid "There are some subtle differences how the backends behave.\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:319
+#. type: delimited block -
+#: en/git-rebase.txt:551
 #, no-wrap
-msgid "--[no-]suppress-from"
+msgid ""
+"Empty commits\n"
+"~~~~~~~~~~~~~\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-send-email.txt:323
+#. type: delimited block -
+#: en/git-rebase.txt:556
+#, no-wrap
 msgid ""
-"If this is set, do not add the From: address to the cc: list.  Default is "
-"the value of `sendemail.suppressFrom` configuration value; if that is "
-"unspecified, default to --no-suppress-from."
+"The am backend drops any \"empty\" commits, regardless of whether the\n"
+"commit started empty (had no changes relative to its parent to\n"
+"start with) or ended empty (all changes were already applied\n"
+"upstream in other commits).\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:324
+#. type: delimited block -
+#: en/git-rebase.txt:558
 #, no-wrap
-msgid "--[no-]thread"
+msgid "The merge backend does the same.\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-send-email.txt:330
+#. type: delimited block -
+#: en/git-rebase.txt:563
+#, no-wrap
 msgid ""
-"If this is set, the In-Reply-To and References headers will be added to each "
-"email sent.  Whether each mail refers to the previous email (`deep` "
-"threading per 'git format-patch' wording) or to the first email (`shallow` "
-"threading) is governed by \"--[no-]chain-reply-to\"."
+"The interactive backend drops commits by default that\n"
+"started empty and halts if it hits a commit that ended up empty.\n"
+"The `--keep-empty` option exists for the interactive backend to allow\n"
+"it to keep commits that started empty.\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-send-email.txt:335
+#. type: delimited block -
+#: en/git-rebase.txt:566
+#, no-wrap
 msgid ""
-"If disabled with \"--no-thread\", those headers will not be added (unless "
-"specified with --in-reply-to).  Default is the value of the "
-"`sendemail.thread` configuration value; if that is unspecified, default to "
-"--thread."
+"Directory rename detection\n"
+"~~~~~~~~~~~~~~~~~~~~~~~~~~\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-send-email.txt:341
+#. type: delimited block -
+#: en/git-rebase.txt:570
+#, no-wrap
 msgid ""
-"It is up to the user to ensure that no In-Reply-To header already exists "
-"when 'git send-email' is asked to add it (especially note that 'git "
-"format-patch' can be configured to do the threading itself).  Failure to do "
-"so may not produce the expected result in the recipient's MUA."
+"Directory rename heuristics are enabled in the merge and interactive\n"
+"backends.  Due to the lack of accurate tree information, directory\n"
+"rename detection is disabled in the am backend.\n"
 msgstr ""
 
-#. type: Title ~
-#: en/git-send-email.txt:344
+#. type: delimited block -
+#: en/git-rebase.txt:572
 #, no-wrap
-msgid "Administering"
+msgid "include::merge-strategies.txt[]\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:346
+#. type: delimited block -
+#: en/git-rebase.txt:574
 #, no-wrap
-msgid "--confirm=<mode>"
+msgid "NOTES\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:348
-msgid "Confirm just before sending:"
+#: en/git-rebase.txt:579
+msgid ""
+"You should understand the implications of using 'git rebase' on a repository "
+"that you share.  See also RECOVERING FROM UPSTREAM REBASE below."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:351
-msgid "'always' will always confirm before sending"
+#: en/git-rebase.txt:584
+msgid ""
+"When the git-rebase command is run, it will first execute a \"pre-rebase\" "
+"hook if one exists.  You can use this hook to do sanity checks and reject "
+"the rebase if it isn't appropriate.  Please see the template pre-rebase hook "
+"script for an example."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:352
-msgid "'never' will never confirm before sending"
+#: en/git-rebase.txt:586
+msgid "Upon completion, <branch> will be the current branch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:354
+#: en/git-rebase.txt:593
 msgid ""
-"'cc' will confirm before sending when send-email has automatically added "
-"addresses from the patch to the Cc list"
+"Rebasing interactively means that you have a chance to edit the commits "
+"which are rebased.  You can reorder the commits, and you can remove them "
+"(weeding out bad or otherwise unwanted patches)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:355
-msgid ""
-"'compose' will confirm before sending the first message when using "
-"--compose."
+#: en/git-rebase.txt:595
+msgid "The interactive mode is meant for this type of workflow:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:356
-msgid "'auto' is equivalent to 'cc' + 'compose'"
+#: en/git-rebase.txt:597
+msgid "have a wonderful idea"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:361
-msgid ""
-"Default is the value of `sendemail.confirm` configuration value; if that is "
-"unspecified, default to 'auto' unless any of the suppress options have been "
-"specified, in which case default to 'compose'."
+#: en/git-rebase.txt:598
+msgid "hack on the code"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:364
-msgid "Do everything except actually send the emails."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-send-email.txt:365
-#, no-wrap
-msgid "--[no-]format-patch"
+#: en/git-rebase.txt:599
+msgid "prepare a series for submission"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:370
-msgid ""
-"When an argument may be understood either as a reference or as a file name, "
-"choose to understand it as a format-patch argument (`--format-patch`)  or as "
-"a file name (`--no-format-patch`). By default, when such a conflict occurs, "
-"git send-email will fail."
+#: en/git-rebase.txt:600
+msgid "submit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:374
-msgid ""
-"Make git-send-email less verbose.  One line per email should be all that is "
-"output."
+#: en/git-rebase.txt:602
+msgid "where point 2. consists of several instances of"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:375
-#, no-wrap
-msgid "--[no-]validate"
+#. type: Plain text
+#: en/git-rebase.txt:604
+msgid "regular use"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:378
-msgid ""
-"Perform sanity checks on patches.  Currently, validation means the "
-"following:"
+#: en/git-rebase.txt:606
+msgid "finish something worthy of a commit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:381
-msgid "Warn of patches that contain lines longer than 998 characters; this"
+#: en/git-rebase.txt:607
+msgid "commit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:382
-#, no-wrap
-msgid "is due to SMTP limits as described by http://www.ietf.org/rfc/rfc2821.txt.\n"
+#: en/git-rebase.txt:609
+msgid "independent fixup"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:386
-msgid ""
-"Default is the value of `sendemail.validate`; if this is not set, default to "
-"`--validate`."
+#: en/git-rebase.txt:611
+msgid "realize that something does not work"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:389
-msgid "Send emails even if safety checks would prevent it."
+#: en/git-rebase.txt:612
+msgid "fix that"
 msgstr ""
 
-#. type: Title ~
-#: en/git-send-email.txt:392
-#, no-wrap
-msgid "Information"
+#. type: Plain text
+#: en/git-rebase.txt:613
+msgid "commit it"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:394
-#, no-wrap
-msgid "--dump-aliases"
+#. type: Plain text
+#: en/git-rebase.txt:619
+msgid ""
+"Sometimes the thing fixed in b.2. cannot be amended to the not-quite perfect "
+"commit it fixes, because that commit is buried deeply in a patch series.  "
+"That is exactly what interactive rebase is for: use it after plenty of \"a"
+"\"s and \"b\"s, by rearranging and editing commits, and squashing multiple "
+"commits into one."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:399
-msgid ""
-"Instead of the normal operation, dump the shorthand alias names from the "
-"configured alias file(s), one per line in alphabetical order. Note, this "
-"only includes the alias name and not its expanded email addresses.  See "
-"'sendemail.aliasesfile' for more information about aliases."
+#: en/git-rebase.txt:621
+msgid "Start it with the last commit you want to retain as-is:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:404 en/config.txt:2887
+#. type: Plain text
+#: en/git-rebase.txt:623
 #, no-wrap
-msgid "sendemail.aliasesFile"
+msgid "\tgit rebase -i <after-this-commit>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:407
+#: en/git-rebase.txt:628
 msgid ""
-"To avoid typing long email addresses, point this to one or more email "
-"aliases files.  You must also supply `sendemail.aliasFileType`."
+"An editor will be fired up with all the commits in your current branch "
+"(ignoring merge commits), which come after the given commit.  You can "
+"reorder the commits in this list to your heart's content, and you can remove "
+"them.  The list looks more or less like this:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:408 en/config.txt:2888
+#. type: delimited block -
+#: en/git-rebase.txt:633
 #, no-wrap
-msgid "sendemail.aliasFileType"
+msgid ""
+"pick deadbee The oneline of this commit\n"
+"pick fa1afe1 The oneline of the next commit\n"
+"...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:411
+#: en/git-rebase.txt:638
 msgid ""
-"Format of the file(s) specified in sendemail.aliasesFile. Must be one of "
-"'mutt', 'mailrc', 'pine', 'elm', or 'gnus', or 'sendmail'."
+"The oneline descriptions are purely for your pleasure; 'git rebase' will not "
+"look at them but at the commit names (\"deadbee\" and \"fa1afe1\" in this "
+"example), so do not delete or edit the names."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:416
+#: en/git-rebase.txt:643
 msgid ""
-"What an alias file in each format looks like can be found in the "
-"documentation of the email program of the same name. The differences and "
-"limitations from the standard formats are described below:"
+"By replacing the command \"pick\" with the command \"edit\", you can tell "
+"'git rebase' to stop after applying that commit, so that you can edit the "
+"files and/or the commit message, amend the commit, and continue rebasing."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:418
-#, no-wrap
-msgid "sendmail"
+#. type: Plain text
+#: en/git-rebase.txt:646
+msgid ""
+"To interrupt the rebase (just like an \"edit\" command would do, but without "
+"cherry-picking any commit first), use the \"break\" command."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:420
-msgid "Quoted aliases and quoted addresses are not supported: lines that"
+#: en/git-rebase.txt:649
+msgid ""
+"If you just want to edit the commit message for a commit, replace the "
+"command \"pick\" with the command \"reword\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:421
-msgid "contain a `\"` symbol are ignored."
+#: en/git-rebase.txt:652
+msgid ""
+"To drop a commit, replace the command \"pick\" with \"drop\", or just delete "
+"the matching line."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:422
-msgid "Redirection to a file (`/path/name`) or pipe (`|command`) is not"
+#: en/git-rebase.txt:660
+msgid ""
+"If you want to fold two or more commits into one, replace the command \"pick"
+"\" for the second and subsequent commits with \"squash\" or \"fixup\".  If "
+"the commits had different authors, the folded commit will be attributed to "
+"the author of the first commit.  The suggested commit message for the folded "
+"commit is the concatenation of the commit messages of the first commit and "
+"of those with the \"squash\" command, but omits the commit messages of "
+"commits with the \"fixup\" command."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:423
-msgid "supported."
+#: en/git-rebase.txt:664
+msgid ""
+"'git rebase' will stop when \"pick\" has been replaced with \"edit\" or when "
+"a command fails due to merge errors. When you are done editing and/or "
+"resolving conflicts you can continue with `git rebase --continue`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:424
-msgid "File inclusion (`:include: /path/name`) is not supported."
+#: en/git-rebase.txt:668
+msgid ""
+"For example, if you want to reorder the last 5 commits, such that what was "
+"HEAD~4 becomes the new HEAD. To achieve that, you would call 'git rebase' "
+"like this:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-rebase.txt:671
+#, no-wrap
+msgid "$ git rebase -i HEAD~5\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:425
-msgid "Warnings are printed on the standard error output for any"
+#: en/git-rebase.txt:674
+msgid "And move the first patch to the end of the list."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:427
-msgid ""
-"explicitly unsupported constructs, and any other lines that are not "
-"recognized by the parser."
+#: en/git-rebase.txt:676
+msgid "You might want to preserve merges, if you have a history like this:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:429 en/config.txt:2897
+#. type: delimited block -
+#: en/git-rebase.txt:683
 #, no-wrap
-msgid "sendemail.multiEdit"
+msgid ""
+"           X\n"
+"            \\\n"
+"         A---M---B\n"
+"        /\n"
+"---o---O---P---Q\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:434
+#: en/git-rebase.txt:687
 msgid ""
-"If true (default), a single editor instance will be spawned to edit files "
-"you have to edit (patches when `--annotate` is used, and the summary when "
-"`--compose` is used). If false, files will be edited one after the other, "
-"spawning a new editor each time."
+"Suppose you want to rebase the side branch starting at \"A\" to \"Q\". Make "
+"sure that the current HEAD is \"B\", and call"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-email.txt:435 en/config.txt:2894
+#. type: delimited block -
+#: en/git-rebase.txt:690
 #, no-wrap
-msgid "sendemail.confirm"
+msgid "$ git rebase -i -p --onto Q O\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:439
+#: en/git-rebase.txt:697
 msgid ""
-"Sets the default for whether to confirm before sending. Must be one of "
-"'always', 'never', 'cc', 'compose', or 'auto'. See `--confirm` in the "
-"previous section for the meaning of these values."
+"Reordering and editing commits usually creates untested intermediate steps.  "
+"You may want to check that your history editing did not break anything by "
+"running a test, or at least recompiling at intermediate points in history by "
+"using the \"exec\" command (shortcut \"x\").  You may do so by creating a "
+"todo list like this one:"
 msgstr ""
 
-#. type: Title ~
-#: en/git-send-email.txt:443
+#. type: delimited block -
+#: en/git-rebase.txt:706
 #, no-wrap
-msgid "Use gmail as the smtp server"
-msgstr ""
-
-#. type: Plain text
-#: en/git-send-email.txt:446
 msgid ""
-"To use 'git send-email' to send your patches through the GMail SMTP server, "
-"edit ~/.gitconfig to specify your account settings:"
+"pick deadbee Implement feature XXX\n"
+"fixup f1a5c00 Fix to feature XXX\n"
+"exec make\n"
+"pick c0ffeee The oneline of the next commit\n"
+"edit deadbab The oneline of the commit after\n"
+"exec cd subdir; make test\n"
+"...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:452
-#, no-wrap
+#: en/git-rebase.txt:711
 msgid ""
-"\t[sendemail]\n"
-"\t\tsmtpEncryption = tls\n"
-"\t\tsmtpServer = smtp.gmail.com\n"
-"\t\tsmtpUser = yourname@gmail.com\n"
-"\t\tsmtpServerPort = 587\n"
+"The interactive rebase will stop when a command fails (i.e. exits with non-0 "
+"status) to give you an opportunity to fix the problem. You can continue with "
+"`git rebase --continue`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:458
+#: en/git-rebase.txt:716
 msgid ""
-"If you have multifactor authentication setup on your gmail account, you will "
-"need to generate an app-specific password for use with 'git "
-"send-email'. Visit "
-"https://security.google.com/settings/security/apppasswords to setup an "
-"app-specific password.  Once setup, you can store it with the credentials "
-"helper:"
+"The \"exec\" command launches the command in a shell (the one specified in `"
+"$SHELL`, or the default shell if `$SHELL` is not set), so you can use shell "
+"features (like \"cd\", \">\", \";\" ...). The command is run from the root "
+"of the working tree."
 msgstr ""
 
-#. type: Plain text
-#: en/git-send-email.txt:464
+#. type: delimited block -
+#: en/git-rebase.txt:719
 #, no-wrap
-msgid ""
-"\t$ git credential fill\n"
-"\tprotocol=smtp\n"
-"\thost=smtp.gmail.com\n"
-"\tusername=youname@gmail.com\n"
-"\tpassword=app-password\n"
+msgid "$ git rebase -i --exec \"make test\"\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:468
+#: en/git-rebase.txt:723
 msgid ""
-"Once your commits are ready to be sent to the mailing list, run the "
-"following commands:"
+"This command lets you check that intermediate commits are compilable.  The "
+"todo list becomes like that:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-send-email.txt:472
+#. type: delimited block -
+#: en/git-rebase.txt:733
 #, no-wrap
 msgid ""
-"\t$ git format-patch --cover-letter -M origin/master -o outgoing/\n"
-"\t$ edit outgoing/0000-*\n"
-"\t$ git send-email outgoing/*\n"
+"pick 5928aea one\n"
+"exec make test\n"
+"pick 04d0fda two\n"
+"exec make test\n"
+"pick ba46169 three\n"
+"exec make test\n"
+"pick f4593f9 four\n"
+"exec make test\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-send-email.txt:475
+#. type: Title -
+#: en/git-rebase.txt:736
 #, no-wrap
-msgid ""
-"Note: the following perl modules are required\n"
-"      Net::SMTP::SSL, MIME::Base64 and Authen::SASL\n"
+msgid "SPLITTING COMMITS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-email.txt:479
-msgid "linkgit:git-format-patch[1], linkgit:git-imap-send[1], mbox(5)"
+#: en/git-rebase.txt:742
+msgid ""
+"In interactive mode, you can mark commits with the action \"edit\".  "
+"However, this does not necessarily mean that 'git rebase' expects the result "
+"of this edit to be exactly one commit.  Indeed, you can undo the commit, or "
+"you can add other commits.  This can be used to split a commit into two:"
 msgstr ""
 
-#. type: Title =
-#: en/git-send-pack.txt:2
-#, no-wrap
-msgid "git-send-pack(1)"
+#. type: Plain text
+#: en/git-rebase.txt:746
+msgid ""
+"Start an interactive rebase with `git rebase -i <commit>^`, where <commit> "
+"is the commit you want to split.  In fact, any commit range will do, as long "
+"as it contains that commit."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-pack.txt:7
-msgid "git-send-pack - Push objects over Git protocol to another repository"
+#: en/git-rebase.txt:748
+msgid "Mark the commit you want to split with the action \"edit\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-pack.txt:16
-#, no-wrap
+#: en/git-rebase.txt:752
 msgid ""
-"'git send-pack' [--all] [--dry-run] [--force] "
-"[--receive-pack=<git-receive-pack>]\n"
-"\t\t[--verbose] [--thin] [--atomic]\n"
-"\t\t[--[no-]signed|--sign=(true|false|if-asked)]\n"
-"\t\t[<host>:]<directory> [<ref>...]\n"
+"When it comes to editing that commit, execute `git reset HEAD^`.  The effect "
+"is that the HEAD is rewound by one, and the index follows suit.  However, "
+"the working tree stays the same."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-pack.txt:21
+#: en/git-rebase.txt:756
 msgid ""
-"Usually you would want to use 'git push', which is a higher-level wrapper of "
-"this command, instead. See linkgit:git-push[1]."
+"Now add the changes to the index that you want to have in the first commit.  "
+"You can use `git add` (possibly interactively) or 'git gui' (or both) to do "
+"that."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-pack.txt:24
+#: en/git-rebase.txt:759
 msgid ""
-"Invokes 'git-receive-pack' on a possibly remote repository, and updates it "
-"from the current repository, sending named refs."
+"Commit the now-current index with whatever commit message is appropriate now."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-pack.txt:36
-msgid "Same as --receive-pack=<git-receive-pack>."
+#: en/git-rebase.txt:761
+msgid "Repeat the last two steps until your working tree is clean."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-pack.txt:40
-msgid ""
-"Instead of explicitly specifying which refs to update, update all heads that "
-"locally exist."
+#: en/git-rebase.txt:763
+msgid "Continue the rebase with `git rebase --continue`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-pack.txt:67
+#: en/git-rebase.txt:768
 msgid ""
-"Send a \"thin\" pack, which records objects in deltified form based on "
-"objects not included in the pack to reduce network traffic."
+"If you are not absolutely sure that the intermediate revisions are "
+"consistent (they compile, pass the testsuite, etc.) you should use 'git "
+"stash' to stash away the not-yet-committed changes after each commit, test, "
+"and amend the commit if fixes are necessary."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-send-pack.txt:68
+#. type: Title -
+#: en/git-rebase.txt:771
 #, no-wrap
-msgid "--atomic"
+msgid "RECOVERING FROM UPSTREAM REBASE"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-pack.txt:72
+#: en/git-rebase.txt:778
 msgid ""
-"Use an atomic transaction for updating the refs. If any of the refs fails to "
-"update then the entire push will fail without changing any refs."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-send-pack.txt:84
-#, no-wrap
-msgid "<host>"
+"Rebasing (or any other form of rewriting) a branch that others have based "
+"work on is a bad idea: anyone downstream of it is forced to manually fix "
+"their history.  This section explains how to do the fix from the "
+"downstream's point of view.  The real fix, however, would be to avoid "
+"rebasing the upstream in the first place."
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-pack.txt:88
+#: en/git-rebase.txt:783
 msgid ""
-"A remote host to house the repository.  When this part is specified, "
-"'git-receive-pack' is invoked via ssh."
+"To illustrate, suppose you are in a situation where someone develops a "
+"'subsystem' branch, and you are working on a 'topic' that is dependent on "
+"this 'subsystem'.  You might end up with a history like the following:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-send-pack.txt:91
-msgid "The repository to update."
+#. type: delimited block -
+#: en/git-rebase.txt:790
+#, no-wrap
+msgid ""
+"    o---o---o---o---o---o---o---o  master\n"
+"\t \\\n"
+"\t  o---o---o---o---o  subsystem\n"
+"\t\t\t   \\\n"
+"\t\t\t    *---*---*  topic\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-pack.txt:101
-msgid "There are three ways to specify which refs to update on the remote end."
+#: en/git-rebase.txt:793
+msgid "If 'subsystem' is rebased against 'master', the following happens:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-send-pack.txt:105
+#. type: delimited block -
+#: en/git-rebase.txt:800
+#, no-wrap
 msgid ""
-"With `--all` flag, all refs that exist locally are transferred to the remote "
-"side.  You cannot specify any '<ref>' if you use this flag."
+"    o---o---o---o---o---o---o---o  master\n"
+"\t \\\t\t\t \\\n"
+"\t  o---o---o---o---o\t  o'--o'--o'--o'--o'  subsystem\n"
+"\t\t\t   \\\n"
+"\t\t\t    *---*---*  topic\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-pack.txt:108
+#: en/git-rebase.txt:804
 msgid ""
-"Without `--all` and without any '<ref>', the heads that exist both on the "
-"local side and on the remote side are updated."
+"If you now continue development as usual, and eventually merge 'topic' to "
+"'subsystem', the commits from 'subsystem' will remain duplicated forever:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-send-pack.txt:114
+#. type: delimited block -
+#: en/git-rebase.txt:811
+#, no-wrap
 msgid ""
-"When one or more '<ref>' are specified explicitly (whether on the command "
-"line or via `--stdin`), it can be either a single pattern, or a pair of such "
-"pattern separated by a colon \":\" (this means that a ref name cannot have a "
-"colon in it).  A single pattern '<name>' is just a shorthand for "
-"'<name>:<name>'."
+"    o---o---o---o---o---o---o---o  master\n"
+"\t \\\t\t\t \\\n"
+"\t  o---o---o---o---o\t  o'--o'--o'--o'--o'--M\t subsystem\n"
+"\t\t\t   \\\t\t\t     /\n"
+"\t\t\t    *---*---*-..........-*--*  topic\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-pack.txt:122
+#: en/git-rebase.txt:818
 msgid ""
-"Each pattern pair consists of the source side (before the colon)  and the "
-"destination side (after the colon).  The ref to be pushed is determined by "
-"finding a match that matches the source side, and where it is pushed is "
-"determined by using the destination side. The rules used to match a ref are "
-"the same rules used by 'git rev-parse' to resolve a symbolic ref name. See "
-"linkgit:git-rev-parse[1]."
+"Such duplicates are generally frowned upon because they clutter up history, "
+"making it harder to follow.  To clean things up, you need to transplant the "
+"commits on 'topic' to the new 'subsystem' tip, i.e., rebase 'topic'.  This "
+"becomes a ripple effect: anyone downstream from 'topic' is forced to rebase "
+"too, and so on!"
 msgstr ""
 
 #. type: Plain text
-#: en/git-send-pack.txt:127
-msgid "It is an error if <dst> matches more than one remote refs."
+#: en/git-rebase.txt:820
+msgid "There are two kinds of fixes, discussed in the following subsections:"
 msgstr ""
 
-#. type: Title =
-#: en/git-shell.txt:2
+#. type: Labeled list
+#: en/git-rebase.txt:821
 #, no-wrap
-msgid "git-shell(1)"
+msgid "Easy case: The changes are literally the same."
 msgstr ""
 
 #. type: Plain text
-#: en/git-shell.txt:7
-msgid "git-shell - Restricted login shell for Git-only SSH access"
+#: en/git-rebase.txt:825
+msgid ""
+"This happens if the 'subsystem' rebase was a simple rebase and had no "
+"conflicts."
 msgstr ""
 
-#. type: Plain text
-#: en/git-shell.txt:15
+#. type: Labeled list
+#: en/git-rebase.txt:826
 #, no-wrap
-msgid ""
-"'chsh' -s $(command -v git-shell) <user>\n"
-"'git clone' <user>`@localhost:/path/to/repo.git`\n"
-"'ssh' <user>`@localhost`\n"
+msgid "Hard case: The changes are not the same."
 msgstr ""
 
 #. type: Plain text
-#: en/git-shell.txt:23
+#: en/git-rebase.txt:832
 msgid ""
-"This is a login shell for SSH accounts to provide restricted Git access.  It "
-"permits execution only of server-side Git commands implementing the "
-"pull/push functionality, plus custom commands present in a subdirectory "
-"named `git-shell-commands` in the user's home directory."
-msgstr ""
-
-#. type: Plain text
-#: en/git-shell.txt:28
-msgid "'git shell' accepts the following commands after the `-c` option:"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-shell.txt:29
-#, no-wrap
-msgid "'git receive-pack <argument>'"
+"This happens if the 'subsystem' rebase had conflicts, or used `--"
+"interactive` to omit, edit, squash, or fixup commits; or if the upstream "
+"used one of `commit --amend`, `reset`, or `filter-branch`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-shell.txt:30
+#. type: Title ~
+#: en/git-rebase.txt:835
 #, no-wrap
-msgid "'git upload-pack <argument>'"
+msgid "The easy case"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-shell.txt:31
-#, no-wrap
-msgid "'git upload-archive <argument>'"
+#. type: Plain text
+#: en/git-rebase.txt:840
+msgid ""
+"Only works if the changes (patch IDs based on the diff contents) on "
+"'subsystem' are literally the same before and after the rebase 'subsystem' "
+"did."
 msgstr ""
 
 #. type: Plain text
-#: en/git-shell.txt:35
+#: en/git-rebase.txt:844
 msgid ""
-"Call the corresponding server-side command to support the client's 'git "
-"push', 'git fetch', or 'git archive --remote' request."
+"In that case, the fix is easy because 'git rebase' knows to skip changes "
+"that are already present in the new upstream.  So if you say (assuming "
+"you're on 'topic')"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-shell.txt:35
+#. type: delimited block -
+#: en/git-rebase.txt:846
 #, no-wrap
-msgid "'cvs server'"
+msgid "    $ git rebase subsystem\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-shell.txt:37
-msgid "Imitate a CVS server.  See linkgit:git-cvsserver[1]."
+#: en/git-rebase.txt:848
+msgid "you will end up with the fixed history"
 msgstr ""
 
-#. type: Plain text
-#: en/git-shell.txt:42
+#. type: delimited block -
+#: en/git-rebase.txt:854
+#, no-wrap
 msgid ""
-"If a `~/git-shell-commands` directory is present, 'git shell' will also "
-"handle other, custom commands by running \"`git-shell-commands/<command> "
-"<arguments>`\" from the user's home directory."
+"    o---o---o---o---o---o---o---o  master\n"
+"\t\t\t\t \\\n"
+"\t\t\t\t  o'--o'--o'--o'--o'  subsystem\n"
+"\t\t\t\t\t\t   \\\n"
+"\t\t\t\t\t\t    *---*---*  topic\n"
 msgstr ""
 
-#. type: Title -
-#: en/git-shell.txt:44
+#. type: Title ~
+#: en/git-rebase.txt:858
 #, no-wrap
-msgid "INTERACTIVE USE"
+msgid "The hard case"
 msgstr ""
 
 #. type: Plain text
-#: en/git-shell.txt:48
+#: en/git-rebase.txt:862
 msgid ""
-"By default, the commands above can be executed only with the `-c` option; "
-"the shell is not interactive."
+"Things get more complicated if the 'subsystem' changes do not exactly "
+"correspond to the ones before the rebase."
 msgstr ""
 
 #. type: Plain text
-#: en/git-shell.txt:56
+#: en/git-rebase.txt:867
+#, no-wrap
 msgid ""
-"If a `~/git-shell-commands` directory is present, 'git shell' can also be "
-"run interactively (with no arguments).  If a `help` command is present in "
-"the `git-shell-commands` directory, it is run to provide the user with an "
-"overview of allowed actions.  Then a \"git> \" prompt is presented at which "
-"one can enter any of the commands from the `git-shell-commands` directory, "
-"or `exit` to close the connection."
+"While an \"easy case recovery\" sometimes appears to be successful\n"
+"      even in the hard case, it may have unintended consequences.  For\n"
+"      example, a commit that was removed via `git rebase\n"
+"      --interactive` will be **resurrected**!\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-shell.txt:61
+#: en/git-rebase.txt:872
 msgid ""
-"Generally this mode is used as an administrative interface to allow users to "
-"list repositories they have access to, create, delete, or rename "
-"repositories, or change repository descriptions and permissions."
+"The idea is to manually tell 'git rebase' \"where the old 'subsystem' ended "
+"and your 'topic' began\", that is, what the old merge-base between them "
+"was.  You will have to find a way to name the last commit of the old "
+"'subsystem', for example:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-shell.txt:64
+#: en/git-rebase.txt:876
 msgid ""
-"If a `no-interactive-login` command exists, then it is run and the "
-"interactive shell is aborted."
+"With the 'subsystem' reflog: after 'git fetch', the old tip of 'subsystem' "
+"is at `subsystem@{1}`.  Subsequent fetches will increase the number.  (See "
+"linkgit:git-reflog[1].)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-shell.txt:69
-msgid "To disable interactive logins, displaying a greeting instead:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-shell.txt:80
-#, no-wrap
+#: en/git-rebase.txt:879
 msgid ""
-"$ chsh -s /usr/bin/git-shell\n"
-"$ mkdir $HOME/git-shell-commands\n"
-"$ cat >$HOME/git-shell-commands/no-interactive-login <<\\EOF\n"
-"#!/bin/sh\n"
-"printf '%s\\n' \"Hi $USER! You've successfully authenticated, but I do "
-"not\"\n"
-"printf '%s\\n' \"provide interactive shell access.\"\n"
-"exit 128\n"
-"EOF\n"
-"$ chmod +x $HOME/git-shell-commands/no-interactive-login\n"
+"Relative to the tip of 'topic': knowing that your 'topic' has three commits, "
+"the old tip of 'subsystem' must be `topic~3`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-shell.txt:87
-msgid "ssh(1), linkgit:git-daemon[1], contrib/git-shell-commands/README"
+#: en/git-rebase.txt:882
+msgid ""
+"You can then transplant the old `subsystem..topic` to the new tip by saying "
+"(for the reflog case, and assuming you are on 'topic' already):"
 msgstr ""
 
-#. type: Title =
-#: en/git-sh-i18n--envsubst.txt:2
+#. type: delimited block -
+#: en/git-rebase.txt:884
 #, no-wrap
-msgid "git-sh-i18n{litdd}envsubst(1)"
+msgid "    $ git rebase --onto subsystem subsystem@{1}\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-sh-i18n--envsubst.txt:7
-msgid "git-sh-i18n--envsubst - Git's own envsubst(1) for i18n fallbacks"
+#: en/git-rebase.txt:889
+msgid ""
+"The ripple effect of a \"hard case\" recovery is especially bad: 'everyone' "
+"downstream from 'topic' will now have to perform a \"hard case\" recovery "
+"too!"
 msgstr ""
 
-#. type: Plain text
-#: en/git-sh-i18n--envsubst.txt:17
+#. type: Title -
+#: en/git-rebase.txt:891
 #, no-wrap
-msgid ""
-"eval_gettext () {\n"
-"\tprintf \"%s\" \"$1\" | (\n"
-"\t\texport PATH $('git sh-i18n{litdd}envsubst' --variables \"$1\");\n"
-"\t\t'git sh-i18n{litdd}envsubst' \"$1\"\n"
-"\t)\n"
-"}\n"
+msgid "REBASING MERGES"
 msgstr ""
 
 #. type: Plain text
-#: en/git-sh-i18n--envsubst.txt:24
+#: en/git-rebase.txt:899
 msgid ""
-"This is not a command the end user would want to run.  Ever.  This "
-"documentation is meant for people who are studying the plumbing scripts "
-"and/or are writing new ones."
+"The interactive rebase command was originally designed to handle individual "
+"patch series. As such, it makes sense to exclude merge commits from the todo "
+"list, as the developer may have merged the then-current `master` while "
+"working on the branch, only to rebase all the commits onto `master` "
+"eventually (skipping the merge commits)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-sh-i18n--envsubst.txt:29
+#: en/git-rebase.txt:903
 msgid ""
-"'git sh-i18n{litdd}envsubst' is Git's stripped-down copy of the GNU "
-"`envsubst(1)` program that comes with the GNU gettext package. It's used "
-"internally by linkgit:git-sh-i18n[1] to interpolate the variables passed to "
-"the `eval_gettext` function."
+"However, there are legitimate reasons why a developer may want to recreate "
+"merge commits: to keep the branch structure (or \"commit topology\") when "
+"working on multiple, inter-related branches."
 msgstr ""
 
 #. type: Plain text
-#: en/git-sh-i18n--envsubst.txt:33
+#: en/git-rebase.txt:908
 msgid ""
-"No promises are made about the interface, or that this program won't "
-"disappear without warning in the next version of Git. Don't use it."
+"In the following example, the developer works on a topic branch that "
+"refactors the way buttons are defined, and on another topic branch that uses "
+"that refactoring to implement a \"Report a bug\" button. The output of `git "
+"log --graph --format=%s -5` may look like this:"
 msgstr ""
 
-#. type: Title =
-#: en/git-sh-i18n.txt:2
+#. type: delimited block -
+#: en/git-rebase.txt:918
 #, no-wrap
-msgid "git-sh-i18n(1)"
-msgstr ""
-
-#. type: Plain text
-#: en/git-sh-i18n.txt:7
-msgid "git-sh-i18n - Git's i18n setup code for shell scripts"
+msgid ""
+"*   Merge branch 'report-a-bug'\n"
+"|\\\n"
+"| * Add the feedback button\n"
+"* | Merge branch 'refactor-button'\n"
+"|\\ \\\n"
+"| |/\n"
+"| * Use the Button class for all buttons\n"
+"| * Extract a generic Button class from the DownloadButton one\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-sh-i18n.txt:12
-#, no-wrap
-msgid "'. \"$(git --exec-path)/git-sh-i18n\"'\n"
+#: en/git-rebase.txt:925
+msgid ""
+"The developer might want to rebase those commits to a newer `master` while "
+"keeping the branch topology, for example when the first topic branch is "
+"expected to be integrated into `master` much earlier than the second one, "
+"say, to resolve merge conflicts with changes to the DownloadButton class "
+"that made it into `master`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-sh-i18n.txt:26
+#: en/git-rebase.txt:928
 msgid ""
-"The 'git sh-i18n scriptlet is designed to be sourced (using `.`) by Git's "
-"porcelain programs implemented in shell script. It provides wrappers for the "
-"GNU `gettext` and `eval_gettext` functions accessible through the "
-"`gettext.sh` script, and provides pass-through fallbacks on systems without "
-"GNU gettext."
+"This rebase can be performed using the `--rebase-merges` option.  It will "
+"generate a todo list looking like this:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-sh-i18n.txt:30
+#. type: delimited block -
+#: en/git-rebase.txt:931 en/git-rebase.txt:1008
 #, no-wrap
-msgid "gettext"
+msgid "label onto\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-sh-i18n.txt:34
+#. type: delimited block -
+#: en/git-rebase.txt:937
+#, no-wrap
 msgid ""
-"Currently a dummy fall-through function implemented as a wrapper around "
-"`printf(1)`. Will be replaced by a real gettext implementation in a later "
-"version."
+"# Branch: refactor-button\n"
+"reset onto\n"
+"pick 123456 Extract a generic Button class from the DownloadButton one\n"
+"pick 654321 Use the Button class for all buttons\n"
+"label refactor-button\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-sh-i18n.txt:35
+#. type: delimited block -
+#: en/git-rebase.txt:942
 #, no-wrap
-msgid "eval_gettext"
-msgstr ""
-
-#. type: Plain text
-#: en/git-sh-i18n.txt:40
 msgid ""
-"Currently a dummy fall-through function implemented as a wrapper around "
-"`printf(1)` with variables expanded by the "
-"linkgit:git-sh-i18n{litdd}envsubst[1] helper. Will be replaced by a real "
-"gettext implementation in a later version."
+"# Branch: report-a-bug\n"
+"reset refactor-button # Use the Button class for all buttons\n"
+"pick abcdef Add the feedback button\n"
+"label report-a-bug\n"
 msgstr ""
 
-#. type: Title =
-#: en/git-shortlog.txt:2
+#. type: delimited block -
+#: en/git-rebase.txt:946
 #, no-wrap
-msgid "git-shortlog(1)"
+msgid ""
+"reset onto\n"
+"merge -C a1b2c3 refactor-button # Merge 'refactor-button'\n"
+"merge -C 6f5e4d report-a-bug # Merge 'report-a-bug'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-shortlog.txt:7
-msgid "git-shortlog - Summarize 'git log' output"
+#: en/git-rebase.txt:950
+msgid ""
+"In contrast to a regular interactive rebase, there are `label`, `reset` and "
+"`merge` commands in addition to `pick` ones."
 msgstr ""
 
 #. type: Plain text
-#: en/git-shortlog.txt:13
-#, no-wrap
+#: en/git-rebase.txt:958
 msgid ""
-"git log --pretty=short | 'git shortlog' [<options>]\n"
-"'git shortlog' [<options>] [<revision range>] [[\\--] <path>...]\n"
+"The `label` command associates a label with the current HEAD when that "
+"command is executed. These labels are created as worktree-local refs (`refs/"
+"rewritten/<label>`) that will be deleted when the rebase finishes. That way, "
+"rebase operations in multiple worktrees linked to the same repository do not "
+"interfere with one another. If the `label` command fails, it is rescheduled "
+"immediately, with a helpful message how to proceed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-shortlog.txt:18
+#: en/git-rebase.txt:965
 msgid ""
-"Summarizes 'git log' output in a format suitable for inclusion in release "
-"announcements. Each commit will be grouped by author and title."
+"The `reset` command resets the HEAD, index and worktree to the specified "
+"revision. It is similar to an `exec git reset --hard <label>`, but refuses "
+"to overwrite untracked files. If the `reset` command fails, it is "
+"rescheduled immediately, with a helpful message how to edit the todo list "
+"(this typically happens when a `reset` command was inserted into the todo "
+"list manually and contains a typo)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-shortlog.txt:20
-msgid "Additionally, \"[PATCH]\" will be stripped from the commit description."
+#: en/git-rebase.txt:971
+msgid ""
+"The `merge` command will merge the specified revision(s) into whatever is "
+"HEAD at that time. With `-C <original-commit>`, the commit message of the "
+"specified merge commit will be used. When the `-C` is changed to a lower-"
+"case `-c`, the message will be opened in an editor after a successful merge "
+"so that the user can edit the message."
 msgstr ""
 
 #. type: Plain text
-#: en/git-shortlog.txt:25
+#: en/git-rebase.txt:974
 msgid ""
-"If no revisions are passed on the command line and either standard input is "
-"not a terminal or there is no current branch, 'git shortlog' will output a "
-"summary of the log read from standard input, without reference to the "
-"current repository."
+"If a `merge` command fails for any reason other than merge conflicts (i.e.  "
+"when the merge operation did not even start), it is rescheduled immediately."
 msgstr ""
 
 #. type: Plain text
-#: en/git-shortlog.txt:33
+#: en/git-rebase.txt:981
 msgid ""
-"Sort output according to the number of commits per author instead of author "
-"alphabetic order."
+"At this time, the `merge` command will *always* use the `recursive` merge "
+"strategy for regular merges, and `octopus` for octopus merges, with no way "
+"to choose a different one. To work around this, an `exec` command can be "
+"used to call `git merge` explicitly, using the fact that the labels are "
+"worktree-local refs (the ref `refs/rewritten/onto` would correspond to the "
+"label `onto`, for example)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-shortlog.txt:37
-msgid "Suppress commit description and provide a commit count summary only."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-shortlog.txt:39
-#, no-wrap
-msgid "--email"
+#: en/git-rebase.txt:985
+msgid ""
+"Note: the first command (`label onto`) labels the revision onto which the "
+"commits are rebased; The name `onto` is just a convention, as a nod to the "
+"`--onto` option."
 msgstr ""
 
 #. type: Plain text
-#: en/git-shortlog.txt:41
-msgid "Show the email address of each author."
+#: en/git-rebase.txt:992
+msgid ""
+"It is also possible to introduce completely new merge commits from scratch "
+"by adding a command of the form `merge <merge-head>`. This form will "
+"generate a tentative commit message and always open an editor to let the "
+"user edit it. This can be useful e.g. when a topic branch turns out to "
+"address more than a single concern and wants to be split into two or even "
+"more topic branches. Consider this todo list:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-shortlog.txt:42
+#. type: delimited block -
+#: en/git-rebase.txt:999
 #, no-wrap
-msgid "--format[=<format>]"
-msgstr ""
-
-#. type: Plain text
-#: en/git-shortlog.txt:47
 msgid ""
-"Instead of the commit subject, use some other information to describe each "
-"commit.  '<format>' can be any string accepted by the `--format` option of "
-"'git log', such as '* [%h] %s'.  (See the \"PRETTY FORMATS\" section of "
-"linkgit:git-log[1].)"
+"pick 192837 Switch from GNU Makefiles to CMake\n"
+"pick 5a6c7e Document the switch to CMake\n"
+"pick 918273 Fix detection of OpenSSL in CMake\n"
+"pick afbecd http: add support for TLS v1.3\n"
+"pick fdbaec Fix detection of cURL in CMake on Windows\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-shortlog.txt:49
-msgid "Each pretty-printed commit will be rewrapped before it is shown."
+#: en/git-rebase.txt:1005
+msgid ""
+"The one commit in this list that is not related to CMake may very well have "
+"been motivated by working on fixing all those bugs introduced by switching "
+"to CMake, but it addresses a different concern. To split this branch into "
+"two topic branches, the todo list could be edited like this:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-shortlog.txt:51
+#. type: delimited block -
+#: en/git-rebase.txt:1011
 #, no-wrap
-msgid "--committer"
+msgid ""
+"pick afbecd http: add support for TLS v1.3\n"
+"label tlsv1.3\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-shortlog.txt:53
-msgid "Collect and show committer identities instead of authors."
+#. type: delimited block -
+#: en/git-rebase.txt:1018
+#, no-wrap
+msgid ""
+"reset onto\n"
+"pick 192837 Switch from GNU Makefiles to CMake\n"
+"pick 918273 Fix detection of OpenSSL in CMake\n"
+"pick fdbaec Fix detection of cURL in CMake on Windows\n"
+"pick 5a6c7e Document the switch to CMake\n"
+"label cmake\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-shortlog.txt:54
+#. type: delimited block -
+#: en/git-rebase.txt:1022
 #, no-wrap
-msgid "-w[<width>[,<indent1>[,<indent2>]]]"
+msgid ""
+"reset onto\n"
+"merge tlsv1.3\n"
+"merge cmake\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-shortlog.txt:59
+#: en/git-rebase.txt:1031
 msgid ""
-"Linewrap the output by wrapping each line at `width`.  The first line of "
-"each entry is indented by `indent1` spaces, and the second and subsequent "
-"lines are indented by `indent2` spaces. `width`, `indent1`, and `indent2` "
-"default to 76, 6 and 9 respectively."
+"The todo list presented by `--preserve-merges --interactive` does not "
+"represent the topology of the revision graph.  Editing commits and rewording "
+"their commit messages should work fine, but attempts to reorder commits tend "
+"to produce counterintuitive results. Use `--rebase-merges` in such scenarios "
+"instead."
 msgstr ""
 
 #. type: Plain text
-#: en/git-shortlog.txt:62
-msgid ""
-"If width is `0` (zero) then indent the lines of the output without wrapping "
-"them."
+#: en/git-rebase.txt:1033
+msgid "For example, an attempt to rearrange"
 msgstr ""
 
-#. type: Plain text
-#: en/git-shortlog.txt:71
-msgid ""
-"Show only commits in the specified revision range.  When no <revision range> "
-"is specified, it defaults to `HEAD` (i.e. the whole history leading to the "
-"current commit).  `origin..HEAD` specifies all the commits reachable from "
-"the current commit (i.e. `HEAD`), but not from `origin`. For a complete list "
-"of ways to spell <revision range>, see the \"Specifying Ranges\" section of "
-"linkgit:gitrevisions[7]."
+#. type: delimited block -
+#: en/git-rebase.txt:1035
+#, no-wrap
+msgid "1 --- 2 --- 3 --- 4 --- 5\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-shortlog.txt:75
+#. type: delimited block -
+#: en/git-rebase.txt:1039
 #, no-wrap
-msgid ""
-"[\\--] <path>...::\n"
-"\tConsider only commits that are enough to explain how the files\n"
-"\tthat match the specified paths came to be.\n"
+msgid "1 --- 2 --- 4 --- 3 --- 5\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-shortlog.txt:78
-msgid ""
-"Paths may need to be prefixed with \"\\-- \" to separate them from options "
-"or the revision range, when confusion arises."
+#: en/git-rebase.txt:1041
+msgid "by moving the \"pick 4\" line will result in the following history:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-shortlog.txt:85
+#. type: delimited block -
+#: en/git-rebase.txt:1045
+#, no-wrap
 msgid ""
-"The `.mailmap` feature is used to coalesce together commits by the same "
-"person in the shortlog, where their name and/or email address was spelled "
-"differently."
+"\t3\n"
+"       /\n"
+"1 --- 2 --- 4 --- 5\n"
 msgstr ""
 
 #. type: Title =
-#: en/git-show-branch.txt:2
+#: en/git-receive-pack.txt:2
 #, no-wrap
-msgid "git-show-branch(1)"
+msgid "git-receive-pack(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:7
-msgid "git-show-branch - Show branches and their commits"
+#: en/git-receive-pack.txt:7
+msgid "git-receive-pack - Receive what is pushed into the repository"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:17
+#: en/git-receive-pack.txt:13
 #, no-wrap
-msgid ""
-"'git show-branch' [-a|--all] [-r|--remotes] [--topo-order | --date-order]\n"
-"\t\t[--current] [--color[=<when>] | --no-color] [--sparse]\n"
-"\t\t[--more=<n> | --list | --independent | --merge-base]\n"
-"\t\t[--no-name | --sha1-name] [--topics]\n"
-"\t\t[(<rev> | <glob>)...]\n"
-"'git show-branch' (-g|--reflog)[=<n>[,<base>]] [--list] [<ref>]\n"
+msgid "'git-receive-pack' <directory>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:24
+#: en/git-receive-pack.txt:18
 msgid ""
-"Shows the commit ancestry graph starting from the commits named with <rev>s "
-"or <globs>s (or all refs under refs/heads and/or refs/tags) semi-visually."
+"Invoked by 'git send-pack' and updates the repository with the information "
+"fed from the remote end."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:26
-msgid "It cannot show more than 29 branches and commits at a time."
+#: en/git-receive-pack.txt:23
+msgid ""
+"This command is usually not invoked directly by the end user.  The UI for "
+"the protocol is on the 'git send-pack' side, and the program pair is meant "
+"to be used to push updates to remote repository.  For pull operations, see "
+"linkgit:git-fetch-pack[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:29
+#: en/git-receive-pack.txt:28
 msgid ""
-"It uses `showbranch.default` multi-valued configuration items if no <rev> or "
-"<glob> is given on the command line."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-show-branch.txt:33
-#, no-wrap
-msgid "<rev>"
+"The command allows for creation and fast-forwarding of sha1 refs (heads/"
+"tags) on the remote end (strictly speaking, it is the local end 'git-receive-"
+"pack' runs, but to the user who is sitting at the send-pack end, it is "
+"updating the remote.  Confused?)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:36
+#: en/git-receive-pack.txt:31
 msgid ""
-"Arbitrary extended SHA-1 expression (see linkgit:gitrevisions[7])  that "
-"typically names a branch head or a tag."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-show-branch.txt:37
-#, no-wrap
-msgid "<glob>"
+"There are other real-world examples of using update and post-update hooks "
+"found in the Documentation/howto directory."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:42
+#: en/git-receive-pack.txt:35
 msgid ""
-"A glob pattern that matches branch or tag names under refs/.  For example, "
-"if you have many topic branches under refs/heads/topic, giving `topic/*` "
-"would show all of them."
+"'git-receive-pack' honours the receive.denyNonFastForwards config option, "
+"which tells it if updates to a ref should be denied if they are not fast-"
+"forwards."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:46
-msgid "Show the remote-tracking branches."
+#: en/git-receive-pack.txt:38
+msgid ""
+"A number of other receive.* config options are available to tweak its "
+"behavior, see linkgit:git-config[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:50
-msgid "Show both remote-tracking branches and local branches."
+#: en/git-receive-pack.txt:43
+msgid "The repository to sync into."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-show-branch.txt:51
+#. type: Title -
+#: en/git-receive-pack.txt:45
 #, no-wrap
-msgid "--current"
+msgid "PRE-RECEIVE HOOK"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:55
+#: en/git-receive-pack.txt:49
 msgid ""
-"With this option, the command includes the current branch to the list of "
-"revs to be shown when it is not given on the command line."
+"Before any ref is updated, if $GIT_DIR/hooks/pre-receive file exists and is "
+"executable, it will be invoked once with no parameters.  The standard input "
+"of the hook will be one line per ref to be updated:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-show-branch.txt:56 en/rev-list-options.txt:635
+#. type: Plain text
+#: en/git-receive-pack.txt:51 en/git-receive-pack.txt:150
 #, no-wrap
-msgid "--topo-order"
+msgid "       sha1-old SP sha1-new SP refname LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:61
+#: en/git-receive-pack.txt:58
 msgid ""
-"By default, the branches and their commits are shown in reverse "
-"chronological order.  This option makes them appear in topological order "
-"(i.e., descendant commits are shown before their parents)."
+"The refname value is relative to $GIT_DIR; e.g. for the master head this is "
+"\"refs/heads/master\".  The two sha1 values before each refname are the "
+"object names for the refname before and after the update.  Refs to be "
+"created will have sha1-old equal to 0\\{40}, while refs to be deleted will "
+"have sha1-new equal to 0\\{40}, otherwise sha1-old and sha1-new should be "
+"valid objects in the repository."
+msgstr ""
+
+#. type: Plain text
+#: en/git-receive-pack.txt:65
+msgid ""
+"When accepting a signed push (see linkgit:git-push[1]), the signed push "
+"certificate is stored in a blob and an environment variable `GIT_PUSH_CERT` "
+"can be consulted for its object name.  See the description of `post-receive` "
+"hook for an example.  In addition, the certificate is verified using GPG and "
+"the result is exported with the following environment variables:"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-show-branch.txt:62 en/rev-list-options.txt:627
+#: en/git-receive-pack.txt:66
 #, no-wrap
-msgid "--date-order"
+msgid "`GIT_PUSH_CERT_SIGNER`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:66
+#: en/git-receive-pack.txt:69
 msgid ""
-"This option is similar to `--topo-order` in the sense that no parent comes "
-"before all of its children, but otherwise commits are ordered according to "
-"their commit date."
+"The name and the e-mail address of the owner of the key that signed the push "
+"certificate."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-show-branch.txt:67 en/rev-list-options.txt:333 en/rev-list-options.txt:466
+#: en/git-receive-pack.txt:70
 #, no-wrap
-msgid "--sparse"
+msgid "`GIT_PUSH_CERT_KEY`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:71
-msgid ""
-"By default, the output omits merges that are reachable from only one tip "
-"being shown.  This option makes them visible."
+#: en/git-receive-pack.txt:72
+msgid "The GPG key ID of the key that signed the push certificate."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-show-branch.txt:72
+#: en/git-receive-pack.txt:73
 #, no-wrap
-msgid "--more=<n>"
+msgid "`GIT_PUSH_CERT_STATUS`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:79
+#: en/git-receive-pack.txt:77
 msgid ""
-"Usually the command stops output upon showing the commit that is the common "
-"ancestor of all the branches.  This flag tells the command to go <n> more "
-"common commits beyond that.  When <n> is negative, display only the "
-"<reference>s given, without showing the commit ancestry tree."
+"The status of GPG verification of the push certificate, using the same "
+"mnemonic as used in `%G?` format of `git log` family of commands (see "
+"linkgit:git-log[1])."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-receive-pack.txt:78
+#, no-wrap
+msgid "`GIT_PUSH_CERT_NONCE`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:82
-msgid "Synonym to `--more=-1`"
+#: en/git-receive-pack.txt:84
+msgid ""
+"The nonce string the process asked the signer to include in the push "
+"certificate.  If this does not match the value recorded on the \"nonce\" "
+"header in the push certificate, it may indicate that the certificate is a "
+"valid one that is being replayed from a separate \"git push\" session."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-show-branch.txt:83
+#: en/git-receive-pack.txt:85
 #, no-wrap
-msgid "--merge-base"
+msgid "`GIT_PUSH_CERT_NONCE_STATUS`"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-receive-pack.txt:86
+#, no-wrap
+msgid "`UNSOLICITED`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:89
-msgid ""
-"Instead of showing the commit list, determine possible merge bases for the "
-"specified commits. All merge bases will be contained in all specified "
-"commits. This is different from how linkgit:git-merge-base[1] handles the "
-"case of three or more commits."
+#: en/git-receive-pack.txt:89
+msgid "\"git push --signed\" sent a nonce when we did not ask it to send one."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-receive-pack.txt:89
+#, no-wrap
+msgid "`MISSING`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:93
-msgid ""
-"Among the <reference>s given, display only the ones that cannot be reached "
-"from any other <reference>."
+#: en/git-receive-pack.txt:91
+msgid "\"git push --signed\" did not send any nonce header."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-show-branch.txt:94
+#: en/git-receive-pack.txt:91
 #, no-wrap
-msgid "--no-name"
+msgid "`BAD`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:96
-msgid "Do not show naming strings for each commit."
+#: en/git-receive-pack.txt:93
+msgid "\"git push --signed\" sent a bogus nonce."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-show-branch.txt:97
+#: en/git-receive-pack.txt:93
 #, no-wrap
-msgid "--sha1-name"
+msgid "`OK`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:102
-msgid ""
-"Instead of naming the commits using the path to reach them from heads "
-"(e.g. \"master~2\" to mean the grandparent of \"master\"), name them with "
-"the unique prefix of their object names."
+#: en/git-receive-pack.txt:95
+msgid "\"git push --signed\" sent the nonce we asked it to send."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-show-branch.txt:103
+#: en/git-receive-pack.txt:95
 #, no-wrap
-msgid "--topics"
+msgid "`SLOP`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:110
+#: en/git-receive-pack.txt:99
 msgid ""
-"Shows only commits that are NOT on the first branch given.  This helps track "
-"topic branches by hiding any commit that is already in the main line of "
-"development.  When given \"git show-branch --topics master topic1 topic2\", "
-"this will show the revisions given by \"git rev-list {caret}master topic1 "
-"topic2\""
+"\"git push --signed\" sent a nonce different from what we asked it to send "
+"now, but in a previous session.  See `GIT_PUSH_CERT_NONCE_SLOP` environment "
+"variable."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-show-branch.txt:112
+#: en/git-receive-pack.txt:100
 #, no-wrap
-msgid "--reflog[=<n>[,<base>]] [<ref>]"
+msgid "`GIT_PUSH_CERT_NONCE_SLOP`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:118
+#: en/git-receive-pack.txt:108
 msgid ""
-"Shows <n> most recent ref-log entries for the given ref.  If <base> is "
-"given, <n> entries going back from that entry.  <base> can be specified as "
-"count or date.  When no explicit <ref> parameter is given, it defaults to "
-"the current branch (or `HEAD` if it is detached)."
+"\"git push --signed\" sent a nonce different from what we asked it to send "
+"now, but in a different session whose starting time is different by this "
+"many seconds from the current session.  Only meaningful when "
+"`GIT_PUSH_CERT_NONCE_STATUS` says `SLOP`.  Also read about `receive."
+"certNonceSlop` variable in linkgit:git-config[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:123
+#: en/git-receive-pack.txt:111
 msgid ""
-"Color the status sign (one of these: `*` `!` `+` `-`) of each commit "
-"corresponding to the branch it's in.  The value must be always (the "
-"default), never, or auto."
+"This hook is called before any refname is updated and before any fast-"
+"forward checks are performed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:128
+#: en/git-receive-pack.txt:116
 msgid ""
-"Turn off colored output, even when the configuration file gives the default "
-"to color output.  Same as `--color=never`."
+"If the pre-receive hook exits with a non-zero exit status no updates will be "
+"performed, and the update, post-receive and post-update hooks will not be "
+"invoked either.  This can be useful to quickly bail out if the update is not "
+"to be supported."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:131
-msgid ""
-"Note that --more, --list, --independent and --merge-base options are "
-"mutually exclusive."
+#: en/git-receive-pack.txt:118
+msgid "See the notes on the quarantine environment below."
+msgstr ""
+
+#. type: Title -
+#: en/git-receive-pack.txt:120
+#, no-wrap
+msgid "UPDATE HOOK"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:139
+#: en/git-receive-pack.txt:123
 msgid ""
-"Given N <references>, the first N lines are the one-line description from "
-"their commit message.  The branch head that is pointed at by $GIT_DIR/HEAD "
-"is prefixed with an asterisk `*` character while other heads are prefixed "
-"with a `!` character."
+"Before each ref is updated, if $GIT_DIR/hooks/update file exists and is "
+"executable, it is invoked once per ref, with three parameters:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:146
+#: en/git-receive-pack.txt:125
+#, no-wrap
+msgid "       $GIT_DIR/hooks/update refname sha1-old sha1-new\n"
+msgstr ""
+
+#. type: Plain text
+#: en/git-receive-pack.txt:132
 msgid ""
-"Following these N lines, one-line log for each commit is displayed, indented "
-"N places.  If a commit is on the I-th branch, the I-th indentation character "
-"shows a `+` sign; otherwise it shows a space.  Merge commits are denoted by "
-"a `-` sign.  Each commit shows a short name that can be used as an extended "
-"SHA-1 to name that commit."
+"The refname parameter is relative to $GIT_DIR; e.g. for the master head this "
+"is \"refs/heads/master\".  The two sha1 arguments are the object names for "
+"the refname before and after the update.  Note that the hook is called "
+"before the refname is updated, so either sha1-old is 0\\{40} (meaning there "
+"is no such ref yet), or it should match what is recorded in refname."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:149
+#: en/git-receive-pack.txt:135
 msgid ""
-"The following example shows three branches, \"master\", \"fixes\" and "
-"\"mhf\":"
+"The hook should exit with non-zero status if it wants to disallow updating "
+"the named ref.  Otherwise it should exit with zero."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-show-branch.txt:155
-#, no-wrap
+#. type: Plain text
+#: en/git-receive-pack.txt:140
 msgid ""
-"$ git show-branch master fixes mhf\n"
-"* [master] Add 'git show-branch'.\n"
-" ! [fixes] Introduce \"reset type\" flag to \"git reset\"\n"
-"  ! [mhf] Allow \"+remote:local\" refspec to cause --force when fetching.\n"
-"---\n"
+"Successful execution (a zero exit status) of this hook does not ensure the "
+"ref will actually be updated, it is only a prerequisite.  As such it is not "
+"a good idea to send notices (e.g. email) from this hook.  Consider using the "
+"post-receive hook instead."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-show-branch.txt:167
+#. type: Title -
+#: en/git-receive-pack.txt:142
 #, no-wrap
-msgid ""
-"  + [mhf] Allow \"+remote:local\" refspec to cause --force when fetching.\n"
-"  + [mhf~1] Use git-octopus when pulling more than one heads.\n"
-" +  [fixes] Introduce \"reset type\" flag to \"git reset\"\n"
-"  + [mhf~2] \"git fetch --force\".\n"
-"  + [mhf~3] Use .git/remote/origin, not .git/branches/origin.\n"
-"  + [mhf~4] Make \"git pull\" and \"git fetch\" default to origin\n"
-"  + [mhf~5] Infamous 'octopus merge'\n"
-"  + [mhf~6] Retire git-parse-remote.\n"
-"  + [mhf~7] Multi-head fetch.\n"
-"  + [mhf~8] Start adding the $GIT_DIR/remotes/ support.\n"
-"*++ [master] Add 'git show-branch'.\n"
+msgid "POST-RECEIVE HOOK"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:174
+#: en/git-receive-pack.txt:148
 msgid ""
-"These three branches all forked from a common commit, [master], whose commit "
-"message is \"Add {apostrophe}git show-branch{apostrophe}\".  The \"fixes\" "
-"branch adds one commit \"Introduce \"reset type\" flag to \"git "
-"reset\"\". The \"mhf\" branch adds many other commits.  The current branch "
-"is \"master\"."
+"After all refs were updated (or attempted to be updated), if any ref update "
+"was successful, and if $GIT_DIR/hooks/post-receive file exists and is "
+"executable, it will be invoked once with no parameters.  The standard input "
+"of the hook will be one line for each successfully updated ref:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:182
+#: en/git-receive-pack.txt:158
 msgid ""
-"If you keep your primary branches immediately under `refs/heads`, and topic "
-"branches in subdirectories of it, having the following in the configuration "
-"file may help:"
+"The refname value is relative to $GIT_DIR; e.g. for the master head this is "
+"\"refs/heads/master\".  The two sha1 values before each refname are the "
+"object names for the refname before and after the update.  Refs that were "
+"created will have sha1-old equal to 0\\{40}, while refs that were deleted "
+"will have sha1-new equal to 0\\{40}, otherwise sha1-old and sha1-new should "
+"be valid objects in the repository."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-show-branch.txt:187
-#, no-wrap
+#. type: Plain text
+#: en/git-receive-pack.txt:161
 msgid ""
-"[showbranch]\n"
-"\tdefault = --topo-order\n"
-"\tdefault = heads/*\n"
+"The `GIT_PUSH_CERT*` environment variables can be inspected, just as in `pre-"
+"receive` hook, after accepting a signed push."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:193
+#: en/git-receive-pack.txt:167
 msgid ""
-"With this, `git show-branch` without extra parameters would show only the "
-"primary branches.  In addition, if you happen to be on your topic branch, it "
-"is shown as well."
+"Using this hook, it is easy to generate mails describing the updates to the "
+"repository.  This example script sends one mail message per ref listing the "
+"commits pushed to the repository, and logs the push certificates of signed "
+"pushes with good signatures to a logger service:"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-show-branch.txt:196
+#. type: Plain text
+#: en/git-receive-pack.txt:191
 #, no-wrap
-msgid "$ git show-branch --reflog=\"10,1 hour ago\" --list master\n"
+msgid ""
+"\t#!/bin/sh\n"
+"\t# mail out commit update information.\n"
+"\twhile read oval nval ref\n"
+"\tdo\n"
+"\t\tif expr \"$oval\" : '0*$' >/dev/null\n"
+"\t\tthen\n"
+"\t\t\techo \"Created a new ref, with the following commits:\"\n"
+"\t\t\tgit rev-list --pretty \"$nval\"\n"
+"\t\telse\n"
+"\t\t\techo \"New commits:\"\n"
+"\t\t\tgit rev-list --pretty \"$nval\" \"^$oval\"\n"
+"\t\tfi |\n"
+"\t\tmail -s \"Changes to ref $ref\" commit-list@mydomain\n"
+"\tdone\n"
+"\t# log signed push certificate, if any\n"
+"\tif test -n \"${GIT_PUSH_CERT-}\" && test ${GIT_PUSH_CERT_STATUS} = G\n"
+"\tthen\n"
+"\t\t(\n"
+"\t\t\techo expected nonce is ${GIT_PUSH_NONCE}\n"
+"\t\t\tgit cat-file blob ${GIT_PUSH_CERT}\n"
+"\t\t) | mail -s \"push certificate from $GIT_PUSH_CERT_SIGNER\" push-log@mydomain\n"
+"\tfi\n"
+"\texit 0\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-branch.txt:201
+#: en/git-receive-pack.txt:194
 msgid ""
-"shows 10 reflog entries going back from the tip as of 1 hour ago.  Without "
-"`--list`, the output also shows how these tips are topologically related "
-"with each other."
+"The exit code from this hook invocation is ignored, however a non-zero exit "
+"code will generate an error message."
 msgstr ""
 
-#. type: Title =
-#: en/git-show-index.txt:2
+#. type: Plain text
+#: en/git-receive-pack.txt:200
+msgid ""
+"Note that it is possible for refname to not have sha1-new when this hook "
+"runs.  This can easily occur if another user modifies the ref after it was "
+"updated by 'git-receive-pack', but before the hook was able to evaluate it.  "
+"It is recommended that hooks rely on sha1-new rather than the current value "
+"of refname."
+msgstr ""
+
+#. type: Title -
+#: en/git-receive-pack.txt:202
 #, no-wrap
-msgid "git-show-index(1)"
+msgid "POST-UPDATE HOOK"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-index.txt:7
-msgid "git-show-index - Show packed archive index"
+#: en/git-receive-pack.txt:207
+msgid ""
+"After all other processing, if at least one ref was updated, and if $GIT_DIR/"
+"hooks/post-update file exists and is executable, then post-update will be "
+"called with the list of refs that have been updated.  This can be used to "
+"implement any repository wide cleanup tasks."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-index.txt:13
-#, no-wrap
-msgid "'git show-index'\n"
+#: en/git-receive-pack.txt:211
+msgid ""
+"The exit code from this hook invocation is ignored; the only thing left for "
+"'git-receive-pack' to do at that point is to exit itself anyway."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-index.txt:20
+#: en/git-receive-pack.txt:214
 msgid ""
-"Read the idx file for a Git packfile created with 'git pack-objects' command "
-"from the standard input, and dump its contents."
+"This hook can be used, for example, to run `git update-server-info` if the "
+"repository is packed and is served via a dumb transport."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-index.txt:24
+#: en/git-receive-pack.txt:217
+#, no-wrap
 msgid ""
-"The information it outputs is subset of what you can get from 'git "
-"verify-pack -v'; this command only shows the packfile offset and SHA-1 of "
-"each object."
+"\t#!/bin/sh\n"
+"\texec git update-server-info\n"
 msgstr ""
 
-#. type: Title =
-#: en/git-show-ref.txt:2
+#. type: Title -
+#: en/git-receive-pack.txt:220
 #, no-wrap
-msgid "git-show-ref(1)"
+msgid "QUARANTINE ENVIRONMENT"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:7
-msgid "git-show-ref - List references in a local repository"
+#: en/git-receive-pack.txt:227
+msgid ""
+"When `receive-pack` takes in objects, they are placed into a temporary "
+"\"quarantine\" directory within the `$GIT_DIR/objects` directory and "
+"migrated into the main object store only after the `pre-receive` hook has "
+"completed. If the push fails before then, the temporary directory is removed "
+"entirely."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:15
-#, no-wrap
-msgid ""
-"'git show-ref' [-q|--quiet] [--verify] [--head] [-d|--dereference]\n"
-"\t     [-s|--hash[=<n>]] [--abbrev[=<n>]] [--tags]\n"
-"\t     [--heads] [--] [<pattern>...]\n"
-"'git show-ref' --exclude-existing[=<pattern>]\n"
+#: en/git-receive-pack.txt:229
+msgid "This has a few user-visible effects and caveats:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:23
+#: en/git-receive-pack.txt:235
 msgid ""
-"Displays references available in a local repository along with the "
-"associated commit IDs. Results can be filtered using a pattern and tags can "
-"be dereferenced into object IDs. Additionally, it can be used to test "
-"whether a particular ref exists."
+"Pushes which fail due to problems with the incoming pack, missing objects, "
+"or due to the `pre-receive` hook will not leave any on-disk data. This is "
+"usually helpful to prevent repeated failed pushes from filling up your disk, "
+"but can make debugging more challenging."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:25
-msgid "By default, shows the tags, heads, and remote refs."
+#: en/git-receive-pack.txt:238
+msgid ""
+"Any objects created by the `pre-receive` hook will be created in the "
+"quarantine directory (and migrated only if it succeeds)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:29
+#: en/git-receive-pack.txt:244
 msgid ""
-"The --exclude-existing form is a filter that does the inverse. It reads refs "
-"from stdin, one ref per line, and shows those that don't exist in the local "
-"repository."
+"The `pre-receive` hook MUST NOT update any refs to point to quarantined "
+"objects. Other programs accessing the repository will not be able to see the "
+"objects (and if the pre-receive hook fails, those refs would become "
+"corrupted). For safety, any ref updates from within `pre-receive` are "
+"automatically rejected."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:32
-msgid ""
-"Use of this utility is encouraged in favor of directly accessing files under "
-"the `.git` directory."
+#: en/git-receive-pack.txt:249
+msgid "linkgit:git-send-pack[1], linkgit:gitnamespaces[7]"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-show-ref.txt:36
+#. type: Title =
+#: en/git-reflog.txt:2
 #, no-wrap
-msgid "--head"
+msgid "git-reflog(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:39
-msgid "Show the HEAD reference, even if it would normally be filtered out."
+#: en/git-reflog.txt:7
+msgid "git-reflog - Manage reflog information"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:46
-msgid ""
-"Limit to \"refs/heads\" and \"refs/tags\", respectively.  These options are "
-"not mutually exclusive; when given both, references stored in \"refs/heads\" "
-"and \"refs/tags\" are displayed."
+#: en/git-reflog.txt:13
+#, no-wrap
+msgid "'git reflog' <subcommand> <options>\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-show-ref.txt:48
+#. type: Plain text
+#: en/git-reflog.txt:27
 #, no-wrap
-msgid "--dereference"
+msgid ""
+"'git reflog' ['show'] [log-options] [<ref>]\n"
+"'git reflog expire' [--expire=<time>] [--expire-unreachable=<time>]\n"
+"\t[--rewrite] [--updateref] [--stale-fix]\n"
+"\t[--dry-run | -n] [--verbose] [--all [--single-worktree] | <refs>...]\n"
+"'git reflog delete' [--rewrite] [--updateref]\n"
+"\t[--dry-run | -n] [--verbose] ref@\\{specifier\\}...\n"
+"'git reflog exists' <ref>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:52
+#: en/git-reflog.txt:35
 msgid ""
-"Dereference tags into object IDs as well. They will be shown with "
-"\"{caret}{}\" appended."
+"Reference logs, or \"reflogs\", record when the tips of branches and other "
+"references were updated in the local repository. Reflogs are useful in "
+"various Git commands, to specify the old value of a reference. For example, "
+"`HEAD@{2}` means \"where HEAD used to be two moves ago\", `master@{one.week."
+"ago}` means \"where master used to point to one week ago in this local "
+"repository\", and so on. See linkgit:gitrevisions[7] for more details."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-show-ref.txt:54
-#, no-wrap
-msgid "--hash[=<n>]"
+#. type: Plain text
+#: en/git-reflog.txt:37
+msgid "This command manages the information recorded in the reflogs."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:58
+#: en/git-reflog.txt:44
 msgid ""
-"Only show the SHA-1 hash, not the reference name. When combined with "
-"--dereference the dereferenced tag will still be shown after the SHA-1."
+"The \"show\" subcommand (which is also the default, in the absence of any "
+"subcommands) shows the log of the reference provided in the command-line (or "
+"`HEAD`, by default). The reflog covers all recent actions, and in addition "
+"the `HEAD` reflog records branch switching.  `git reflog show` is an alias "
+"for `git log -g --abbrev-commit --pretty=oneline`; see linkgit:git-log[1] "
+"for more information."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:64
+#: en/git-reflog.txt:50
 msgid ""
-"Enable stricter reference checking by requiring an exact ref path.  Aside "
-"from returning an error code of 1, it will also print an error message if "
-"`--quiet` was not specified."
+"The \"expire\" subcommand prunes older reflog entries. Entries older than "
+"`expire` time, or entries older than `expire-unreachable` time and not "
+"reachable from the current tip, are removed from the reflog.  This is "
+"typically not used directly by end users -- instead, see linkgit:git-gc[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:69
+#: en/git-reflog.txt:55
 msgid ""
-"Abbreviate the object name.  When using `--hash`, you do not have to say "
-"`--hash --abbrev`; `--hash=n` would do."
+"The \"delete\" subcommand deletes single entries from the reflog. Its "
+"argument must be an _exact_ entry (e.g. \"`git reflog delete master@{2}`\"). "
+"This subcommand is also typically not used directly by end users."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:75
+#: en/git-reflog.txt:59
 msgid ""
-"Do not print any results to stdout. When combined with `--verify` this can "
-"be used to silently check if a reference exists."
+"The \"exists\" subcommand checks whether a ref has a reflog.  It exits with "
+"zero status if the reflog exists, and non-zero status if it does not."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-show-ref.txt:76
+#. type: Title ~
+#: en/git-reflog.txt:64
 #, no-wrap
-msgid "--exclude-existing[=<pattern>]"
+msgid "Options for `show`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:81
-msgid ""
-"Make 'git show-ref' act as a filter that reads refs from stdin of the form "
-"\"`^(?:<anything>\\s)?<refname>(?:\\^{})?$`\" and performs the following "
-"actions on each:"
+#: en/git-reflog.txt:67
+msgid "`git reflog show` accepts any of the options accepted by `git log`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-show-ref.txt:82
-msgid "strip \"{caret}{}\" at the end of line if any;"
+#. type: Title ~
+#: en/git-reflog.txt:70
+#, no-wrap
+msgid "Options for `expire`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:83
-msgid "ignore if pattern is provided and does not head-match refname;"
+#: en/git-reflog.txt:74
+msgid "Process the reflogs of all references."
 msgstr ""
 
-#. type: Plain text
-#: en/git-show-ref.txt:84
-msgid "warn if refname is not a well-formed refname and skip;"
+#. type: Labeled list
+#: en/git-reflog.txt:75 en/rev-list-options.txt:185
+#, no-wrap
+msgid "--single-worktree"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:85
-msgid "ignore if refname is a ref that exists in the local repository;"
+#: en/git-reflog.txt:79
+msgid ""
+"By default when `--all` is specified, reflogs from all working trees are "
+"processed. This option limits the processing to reflogs from the current "
+"working tree only."
 msgstr ""
 
-#. type: Plain text
-#: en/git-show-ref.txt:86
-msgid "otherwise output the line."
+#. type: Labeled list
+#: en/git-reflog.txt:80
+#, no-wrap
+msgid "--expire=<time>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:95
+#: en/git-reflog.txt:87
 msgid ""
-"Show references matching one or more patterns. Patterns are matched from the "
-"end of the full name, and only complete parts are matched, e.g.  'master' "
-"matches 'refs/heads/master', 'refs/remotes/origin/master', "
-"'refs/tags/jedi/master' but not 'refs/heads/mymaster' or "
-"'refs/remotes/master/jedi'."
-msgstr ""
-
-#. type: Plain text
-#: en/git-show-ref.txt:100
-msgid "The output is in the format: '<SHA-1 ID>' '<space>' '<reference name>'."
+"Prune entries older than the specified time. If this option is not "
+"specified, the expiration time is taken from the configuration setting `gc."
+"reflogExpire`, which in turn defaults to 90 days. `--expire=all` prunes "
+"entries regardless of their age; `--expire=never` turns off pruning of "
+"reachable entries (but see `--expire-unreachable`)."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-show-ref.txt:111
+#. type: Labeled list
+#: en/git-reflog.txt:88
 #, no-wrap
-msgid ""
-"$ git show-ref --head --dereference\n"
-"832e76a9899f560a90ffd62ae2ce83bbeff58f54 HEAD\n"
-"832e76a9899f560a90ffd62ae2ce83bbeff58f54 refs/heads/master\n"
-"832e76a9899f560a90ffd62ae2ce83bbeff58f54 refs/heads/origin\n"
-"3521017556c5de4159da4615a39fa4d5d2c279b5 refs/tags/v0.99.9c\n"
-"6ddc0964034342519a87fe013781abf31c6db6ad refs/tags/v0.99.9c^{}\n"
-"055e4ae3ae6eb344cbabf2a5256a49ea66040131 refs/tags/v1.0rc4\n"
-"423325a2d24638ddcc82ce47be5e40be550f4507 refs/tags/v1.0rc4^{}\n"
-"...\n"
+msgid "--expire-unreachable=<time>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:114
-msgid "When using --hash (and not --dereference) the output format is: '<SHA-1 ID>'"
+#: en/git-reflog.txt:97
+msgid ""
+"Prune entries older than `<time>` that are not reachable from the current "
+"tip of the branch. If this option is not specified, the expiration time is "
+"taken from the configuration setting `gc.reflogExpireUnreachable`, which in "
+"turn defaults to 30 days. `--expire-unreachable=all` prunes unreachable "
+"entries regardless of their age; `--expire-unreachable=never` turns off "
+"early pruning of unreachable entries (but see `--expire`)."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-show-ref.txt:121
+#. type: Labeled list
+#: en/git-reflog.txt:98
 #, no-wrap
-msgid ""
-"$ git show-ref --heads --hash\n"
-"2e3ba0114a1f52b47df29743d6915d056be13278\n"
-"185008ae97960c8d551adcd9e23565194651b5d1\n"
-"03adf42c988195b50e1a1935ba5fcbc39b2b029b\n"
-"...\n"
+msgid "--updateref"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:129
+#: en/git-reflog.txt:102
 msgid ""
-"To show all references called \"master\", whether tags or heads or anything "
-"else, and regardless of how deep in the reference naming hierarchy they are, "
-"use:"
+"Update the reference to the value of the top reflog entry (i.e.  <ref>@"
+"\\{0\\}) if the previous top entry was pruned.  (This option is ignored for "
+"symbolic references.)"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-show-ref.txt:132
+#. type: Labeled list
+#: en/git-reflog.txt:103
 #, no-wrap
-msgid "\tgit show-ref master\n"
+msgid "--rewrite"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:136
+#: en/git-reflog.txt:107
 msgid ""
-"This will show \"refs/heads/master\" but also "
-"\"refs/remote/other-repo/master\", if such references exists."
-msgstr ""
-
-#. type: Plain text
-#: en/git-show-ref.txt:138
-msgid "When using the `--verify` flag, the command requires an exact path:"
+"If a reflog entry's predecessor is pruned, adjust its \"old\" SHA-1 to be "
+"equal to the \"new\" SHA-1 field of the entry that now precedes it."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-show-ref.txt:141
+#. type: Labeled list
+#: en/git-reflog.txt:108
 #, no-wrap
-msgid "\tgit show-ref --verify refs/heads/master\n"
+msgid "--stale-fix"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:144
-msgid "will only match the exact branch called \"master\"."
-msgstr ""
-
-#. type: Plain text
-#: en/git-show-ref.txt:147
-msgid ""
-"If nothing matches, 'git show-ref' will return an error code of 1, and in "
-"the case of verification, it will show an error message."
-msgstr ""
-
-#. type: Plain text
-#: en/git-show-ref.txt:150
-msgid ""
-"For scripting, you can ask it to be quiet with the \"--quiet\" flag, which "
-"allows you to do things like"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-show-ref.txt:154
-#, no-wrap
+#: en/git-reflog.txt:113
 msgid ""
-"\tgit show-ref --quiet --verify -- \"refs/heads/$headname\" ||\n"
-"\t\techo \"$headname is not a valid branch\"\n"
+"Prune any reflog entries that point to \"broken commits\". A broken commit "
+"is a commit that is not reachable from any of the reference tips and that "
+"refers, directly or indirectly, to a missing commit, tree, or blob object."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:159
+#: en/git-reflog.txt:118
 msgid ""
-"to check whether a particular branch exists or not (notice how we don't "
-"actually want to show any results, and we want to use the full refname for "
-"it in order to not trigger the problem with ambiguous partial matches)."
+"This computation involves traversing all the reachable objects, i.e. it has "
+"the same cost as 'git prune'.  It is primarily intended to fix corruption "
+"caused by garbage collecting using older versions of Git, which didn't "
+"protect objects referred to by reflogs."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:163
+#: en/git-reflog.txt:123
 msgid ""
-"To show only tags, or only proper branch heads, use \"--tags\" and/or "
-"\"--heads\" respectively (using both means that it shows tags and heads, but "
-"not other random references under the refs/ subdirectory)."
+"Do not actually prune any entries; just show what would have been pruned."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:166
-msgid ""
-"To do automatic tag object dereferencing, use the \"-d\" or "
-"\"--dereference\" flag, so you can do"
+#: en/git-reflog.txt:126
+msgid "Print extra information on screen."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-show-ref.txt:169
+#. type: Title ~
+#: en/git-reflog.txt:129
 #, no-wrap
-msgid "\tgit show-ref --tags --dereference\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-show-ref.txt:172
-msgid "to get a listing of all tags together with what they dereference."
-msgstr ""
-
-#. type: Plain text
-#: en/git-show-ref.txt:176
-msgid "`.git/refs/*`, `.git/packed-refs`"
+msgid "Options for `delete`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show-ref.txt:183
+#: en/git-reflog.txt:134
 msgid ""
-"linkgit:git-for-each-ref[1], linkgit:git-ls-remote[1], "
-"linkgit:git-update-ref[1], linkgit:gitrepository-layout[5]"
+"`git reflog delete` accepts options `--updateref`, `--rewrite`, `-n`, `--dry-"
+"run`, and `--verbose`, with the same meanings as when they are used with "
+"`expire`."
 msgstr ""
 
 #. type: Title =
-#: en/git-show.txt:2
+#: en/git-remote-ext.txt:2
 #, no-wrap
-msgid "git-show(1)"
+msgid "git-remote-ext(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show.txt:7
-msgid "git-show - Show various types of objects"
+#: en/git-remote-ext.txt:7
+msgid "git-remote-ext - Bridge smart transport to external command."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show.txt:13
+#: en/git-remote-ext.txt:12
 #, no-wrap
-msgid "'git show' [options] <object>...\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-show.txt:17
-msgid "Shows one or more objects (blobs, trees, tags and commits)."
+msgid "git remote add <nick> \"ext::<command>[ <arguments>...]\"\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show.txt:21
+#: en/git-remote-ext.txt:17
 msgid ""
-"For commits it shows the log message and textual diff. It also presents the "
-"merge commit in a special format as produced by 'git diff-tree --cc'."
+"This remote helper uses the specified '<command>' to connect to a remote Git "
+"server."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show.txt:23
-msgid "For tags, it shows the tag message and the referenced objects."
+#: en/git-remote-ext.txt:23
+msgid ""
+"Data written to stdin of the specified '<command>' is assumed to be sent to "
+"a git:// server, git-upload-pack, git-receive-pack or git-upload-archive "
+"(depending on situation), and data read from stdout of <command> is assumed "
+"to be received from the same service."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show.txt:26
-msgid ""
-"For trees, it shows the names (equivalent to 'git ls-tree' with "
-"--name-only)."
+#: en/git-remote-ext.txt:25
+msgid "Command and arguments are separated by an unescaped space."
 msgstr ""
 
 #. type: Plain text
-#: en/git-show.txt:28
-msgid "For plain blobs, it shows the plain contents."
+#: en/git-remote-ext.txt:27
+msgid "The following sequences have a special meaning:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-show.txt:31
-msgid ""
-"The command takes options applicable to the 'git diff-tree' command to "
-"control how the changes the commit introduces are shown."
+#. type: Labeled list
+#: en/git-remote-ext.txt:28
+#, no-wrap
+msgid "'% '"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show.txt:33
-msgid "This manual page describes only the most frequently used options."
+#: en/git-remote-ext.txt:30
+msgid "Literal space in command or argument."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-show.txt:37
+#: en/git-remote-ext.txt:31
 #, no-wrap
-msgid "<object>..."
+msgid "'%%'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show.txt:41
-msgid ""
-"The names of objects to show.  For a more complete list of ways to spell "
-"object names, see \"SPECIFYING REVISIONS\" section in "
-"linkgit:gitrevisions[7]."
+#: en/git-remote-ext.txt:33
+msgid "Literal percent sign."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-show.txt:60
+#: en/git-remote-ext.txt:34
 #, no-wrap
-msgid "`git show v1.0.0`"
+msgid "'%s'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show.txt:63
-msgid "Shows the tag `v1.0.0`, along with the object the tags points at."
+#: en/git-remote-ext.txt:37
+msgid ""
+"Replaced with name (receive-pack, upload-pack, or upload-archive) of the "
+"service Git wants to invoke."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-show.txt:64
+#: en/git-remote-ext.txt:38
 #, no-wrap
-msgid "`git show v1.0.0^{tree}`"
+msgid "'%S'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show.txt:66
-msgid "Shows the tree pointed to by the tag `v1.0.0`."
+#: en/git-remote-ext.txt:42
+msgid ""
+"Replaced with long name (git-receive-pack, git-upload-pack, or git-upload-"
+"archive) of the service Git wants to invoke."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-show.txt:67
+#: en/git-remote-ext.txt:43
 #, no-wrap
-msgid "`git show -s --format=%s v1.0.0^{commit}`"
+msgid "'%G' (must be the first characters in an argument)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show.txt:70
-msgid "Shows the subject of the commit pointed to by the tag `v1.0.0`."
+#: en/git-remote-ext.txt:49
+msgid ""
+"This argument will not be passed to '<command>'. Instead, it will cause the "
+"helper to start by sending git:// service requests to the remote side with "
+"the service field set to an appropriate value and the repository field set "
+"to rest of the argument. Default is not to send such a request."
+msgstr ""
+
+#. type: Plain text
+#: en/git-remote-ext.txt:52
+msgid ""
+"This is useful if remote side is git:// server accessed over some tunnel."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-show.txt:71
+#: en/git-remote-ext.txt:53
 #, no-wrap
-msgid "`git show next~10:Documentation/README`"
+msgid "'%V' (must be first characters in argument)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show.txt:75
+#: en/git-remote-ext.txt:57
 msgid ""
-"Shows the contents of the file `Documentation/README` as they were current "
-"in the 10th last commit of the branch `next`."
+"This argument will not be passed to '<command>'. Instead it sets the vhost "
+"field in the git:// service request (to rest of the argument).  Default is "
+"not to send vhost in such request (if sent)."
+msgstr ""
+
+#. type: Title -
+#: en/git-remote-ext.txt:59 en/git-remote-fd.txt:32
+#, no-wrap
+msgid "ENVIRONMENT VARIABLES"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-show.txt:76
+#: en/git-remote-ext.txt:61 en/git-remote-fd.txt:33
 #, no-wrap
-msgid "`git show master:Makefile master:t/Makefile`"
+msgid "GIT_TRANSLOOP_DEBUG"
 msgstr ""
 
 #. type: Plain text
-#: en/git-show.txt:79
-msgid ""
-"Concatenates the contents of said Makefiles in the head of the branch "
-"`master`."
+#: en/git-remote-ext.txt:63 en/git-remote-fd.txt:35
+msgid "If set, prints debugging information about various reads/writes."
 msgstr ""
 
-#. type: Title =
-#: en/git-sh-setup.txt:2
+#. type: Title -
+#: en/git-remote-ext.txt:65
 #, no-wrap
-msgid "git-sh-setup(1)"
+msgid "ENVIRONMENT VARIABLES PASSED TO COMMAND"
 msgstr ""
 
-#. type: Plain text
-#: en/git-sh-setup.txt:7
-msgid "git-sh-setup - Common Git shell script setup code"
+#. type: Labeled list
+#: en/git-remote-ext.txt:67
+#, no-wrap
+msgid "GIT_EXT_SERVICE"
 msgstr ""
 
 #. type: Plain text
-#: en/git-sh-setup.txt:12
+#: en/git-remote-ext.txt:70
+msgid ""
+"Set to long name (git-upload-pack, etc...) of service helper needs to invoke."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-remote-ext.txt:71
 #, no-wrap
-msgid "'. \"$(git --exec-path)/git-sh-setup\"'\n"
+msgid "GIT_EXT_SERVICE_NOPREFIX"
 msgstr ""
 
 #. type: Plain text
-#: en/git-sh-setup.txt:23
+#: en/git-remote-ext.txt:74
 msgid ""
-"The 'git sh-setup' scriptlet is designed to be sourced (using `.`) by other "
-"shell scripts to set up some variables pointing at the normal Git "
-"directories and a few helper shell functions."
+"Set to long name (upload-pack, etc...) of service helper needs to invoke."
 msgstr ""
 
 #. type: Plain text
-#: en/git-sh-setup.txt:29
+#: en/git-remote-ext.txt:82
 msgid ""
-"Before sourcing it, your script should set up a few variables; `USAGE` (and "
-"`LONG_USAGE`, if any) is used to define message given by `usage()` shell "
-"function.  `SUBDIRECTORY_OK` can be set if the script can run from a "
-"subdirectory of the working tree (some commands do not)."
+"This remote helper is transparently used by Git when you use commands such "
+"as \"git fetch <URL>\", \"git clone <URL>\", , \"git push <URL>\" or \"git "
+"remote add <nick> <URL>\", where <URL> begins with `ext::`.  Examples:"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-remote-ext.txt:83
+#, no-wrap
+msgid "\"ext::ssh -i /home/foo/.ssh/somekey user&#64;host.example %S 'foo/repo'\""
 msgstr ""
 
 #. type: Plain text
-#: en/git-sh-setup.txt:32
+#: en/git-remote-ext.txt:87
 msgid ""
-"The scriptlet sets `GIT_DIR` and `GIT_OBJECT_DIRECTORY` shell variables, but "
-"does *not* export them to the environment."
+"Like host.example:foo/repo, but use /home/foo/.ssh/somekey as keypair and "
+"user as user on remote side. This avoids needing to edit .ssh/config."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-sh-setup.txt:36
+#: en/git-remote-ext.txt:88
 #, no-wrap
-msgid "die"
+msgid "\"ext::socat -t3600 - ABSTRACT-CONNECT:/git-server %G/somerepo\""
 msgstr ""
 
 #. type: Plain text
-#: en/git-sh-setup.txt:39
-msgid "exit after emitting the supplied error message to the standard error stream."
+#: en/git-remote-ext.txt:91
+msgid ""
+"Represents repository with path /somerepo accessible over git protocol at "
+"abstract namespace address /git-server."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-sh-setup.txt:40
+#: en/git-remote-ext.txt:92
 #, no-wrap
-msgid "usage"
+msgid "\"ext::git-server-alias foo %G/repo\""
 msgstr ""
 
 #. type: Plain text
-#: en/git-sh-setup.txt:42
-msgid "die with the usage message."
+#: en/git-remote-ext.txt:98
+msgid ""
+"Represents a repository with path /repo accessed using the helper program "
+"\"git-server-alias foo\".  The path to the repository and type of request "
+"are not passed on the command line but as part of the protocol stream, as "
+"usual with git:// protocol."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-sh-setup.txt:43
+#: en/git-remote-ext.txt:99
 #, no-wrap
-msgid "set_reflog_action"
+msgid "\"ext::git-server-alias foo %G/repo %Vfoo\""
 msgstr ""
 
 #. type: Plain text
-#: en/git-sh-setup.txt:49
+#: en/git-remote-ext.txt:105
 msgid ""
-"Set `GIT_REFLOG_ACTION` environment to a given string (typically the name of "
-"the program) unless it is already set.  Whenever the script runs a `git` "
-"command that updates refs, a reflog entry is created using the value of this "
-"string to leave the record of what command updated the ref."
+"Represents a repository with path /repo accessed using the helper program "
+"\"git-server-alias foo\".  The hostname for the remote server passed in the "
+"protocol stream will be \"foo\" (this allows multiple virtual Git servers to "
+"share a link-level address)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-sh-setup.txt:50
+#: en/git-remote-ext.txt:106
 #, no-wrap
-msgid "git_editor"
+msgid "\"ext::git-server-alias foo %G/repo% with% spaces %Vfoo\""
 msgstr ""
 
 #. type: Plain text
-#: en/git-sh-setup.txt:54
+#: en/git-remote-ext.txt:112
 msgid ""
-"runs an editor of user's choice (GIT_EDITOR, core.editor, VISUAL or EDITOR) "
-"on a given file, but error out if no editor is specified and the terminal is "
-"dumb."
+"Represents a repository with path '/repo with spaces' accessed using the "
+"helper program \"git-server-alias foo\".  The hostname for the remote server "
+"passed in the protocol stream will be \"foo\" (this allows multiple virtual "
+"Git servers to share a link-level address)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-sh-setup.txt:55
+#: en/git-remote-ext.txt:113
 #, no-wrap
-msgid "is_bare_repository"
+msgid "\"ext::git-ssl foo.example /bar\""
 msgstr ""
 
 #. type: Plain text
-#: en/git-sh-setup.txt:59
+#: en/git-remote-ext.txt:118
 msgid ""
-"outputs `true` or `false` to the standard output stream to indicate if the "
-"repository is a bare repository (i.e. without an associated working tree)."
+"Represents a repository accessed using the helper program \"git-ssl foo."
+"example /bar\".  The type of request can be determined by the helper using "
+"environment variables (see above)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-sh-setup.txt:60
+#. type: Plain text
+#: en/git-remote-ext.txt:122 en/git-remote-fd.txt:56
+#: en/git-remote-testgit.txt:27
+msgid "linkgit:gitremote-helpers[1]"
+msgstr ""
+
+#. type: Title =
+#: en/git-remote-fd.txt:2
 #, no-wrap
-msgid "cd_to_toplevel"
+msgid "git-remote-fd(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-sh-setup.txt:62
-msgid "runs chdir to the toplevel of the working tree."
+#: en/git-remote-fd.txt:7
+msgid "git-remote-fd - Reflect smart transport stream back to caller"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-sh-setup.txt:63
-#, no-wrap
-msgid "require_work_tree"
+#. type: Plain text
+#: en/git-remote-fd.txt:11
+msgid "\"fd::<infd>[,<outfd>][/<anything>]\" (as URL)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-sh-setup.txt:66
+#: en/git-remote-fd.txt:17
 msgid ""
-"checks if the current directory is within the working tree of the "
-"repository, and otherwise dies."
+"This helper uses specified file descriptors to connect to a remote Git "
+"server.  This is not meant for end users but for programs and scripts "
+"calling git fetch, push or archive."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-sh-setup.txt:67
-#, no-wrap
-msgid "require_work_tree_exists"
+#. type: Plain text
+#: en/git-remote-fd.txt:23
+msgid ""
+"If only <infd> is given, it is assumed to be a bidirectional socket "
+"connected to remote Git server (git-upload-pack, git-receive-pack or git-"
+"upload-archive). If both <infd> and <outfd> are given, they are assumed to "
+"be pipes connected to a remote Git server (<infd> being the inbound pipe and "
+"<outfd> being the outbound pipe."
 msgstr ""
 
 #. type: Plain text
-#: en/git-sh-setup.txt:72
+#: en/git-remote-fd.txt:26
 msgid ""
-"checks if the working tree associated with the repository exists, and "
-"otherwise dies.  Often done before calling cd_to_toplevel, which is "
-"impossible to do if there is no working tree."
+"It is assumed that any handshaking procedures have already been completed "
+"(such as sending service request for git://) before this helper is started."
+msgstr ""
+
+#. type: Plain text
+#: en/git-remote-fd.txt:30
+msgid ""
+"<anything> can be any string. It is ignored. It is meant for providing "
+"information to user in the URL in case that URL is displayed in some context."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-sh-setup.txt:73
+#: en/git-remote-fd.txt:38
 #, no-wrap
-msgid "require_clean_work_tree <action> [<hint>]"
+msgid "`git fetch fd::17 master`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-sh-setup.txt:78
+#: en/git-remote-fd.txt:41
 msgid ""
-"checks that the working tree and index associated with the repository have "
-"no uncommitted changes to tracked files.  Otherwise it emits an error "
-"message of the form `Cannot <action>: <reason>. <hint>`, and dies.  Example:"
+"Fetch master, using file descriptor #17 to communicate with git-upload-pack."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-sh-setup.txt:81
+#. type: Labeled list
+#: en/git-remote-fd.txt:42
 #, no-wrap
-msgid "require_clean_work_tree rebase \"Please commit or stash them.\"\n"
+msgid "`git fetch fd::17/foo master`"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-sh-setup.txt:83
+#: en/git-remote-fd.txt:45
 #, no-wrap
-msgid "get_author_ident_from_commit"
+msgid "`git push fd::7,8 master (as URL)`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-sh-setup.txt:86
+#: en/git-remote-fd.txt:49
 msgid ""
-"outputs code for use with eval to set the GIT_AUTHOR_NAME, GIT_AUTHOR_EMAIL "
-"and GIT_AUTHOR_DATE variables for a given commit."
+"Push master, using file descriptor #7 to read data from git-receive-pack and "
+"file descriptor #8 to write data to same service."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-sh-setup.txt:87
+#: en/git-remote-fd.txt:50
 #, no-wrap
-msgid "create_virtual_base"
-msgstr ""
-
-#. type: Plain text
-#: en/git-sh-setup.txt:92
-msgid ""
-"modifies the first file so only lines in common with the second file "
-"remain. If there is insufficient common material, then the first file is "
-"left empty. The result is suitable as a virtual base input for a 3-way "
-"merge."
+msgid "`git push fd::7,8/bar master`"
 msgstr ""
 
 #. type: Title =
-#: en/git-stage.txt:2
+#: en/git-remote-testgit.txt:2
 #, no-wrap
-msgid "git-stage(1)"
+msgid "git-remote-testgit(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stage.txt:7
-msgid "git-stage - Add file contents to the staging area"
+#: en/git-remote-testgit.txt:7
+msgid "git-remote-testgit - Example remote-helper"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stage.txt:13
+#: en/git-remote-testgit.txt:13
 #, no-wrap
-msgid "'git stage' args...\n"
+msgid "git clone testgit::<source-repo> [<destination>]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stage.txt:20
+#: en/git-remote-testgit.txt:20
 msgid ""
-"This is a synonym for linkgit:git-add[1].  Please refer to the documentation "
-"of that command."
+"This command is a simple remote-helper, that is used both as a testcase for "
+"the remote-helper functionality, and as an example to show remote-helper "
+"authors one possible implementation."
+msgstr ""
+
+#. type: Plain text
+#: en/git-remote-testgit.txt:23
+msgid ""
+"The best way to learn more is to read the comments and source code in 'git-"
+"remote-testgit'."
 msgstr ""
 
 #. type: Title =
-#: en/git-stash.txt:2
+#: en/git-remote.txt:2
 #, no-wrap
-msgid "git-stash(1)"
+msgid "git-remote(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:7
-msgid "git-stash - Stash the changes in a dirty working directory away"
+#: en/git-remote.txt:7
+msgid "git-remote - Manage set of tracked repositories"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:24
+#: en/git-remote.txt:25
 #, no-wrap
 msgid ""
-"'git stash' list [<options>]\n"
-"'git stash' show [<stash>]\n"
-"'git stash' drop [-q|--quiet] [<stash>]\n"
-"'git stash' ( pop | apply ) [--index] [-q|--quiet] [<stash>]\n"
-"'git stash' branch <branchname> [<stash>]\n"
-"'git stash' save [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]\n"
-"\t     [-u|--include-untracked] [-a|--all] [<message>]\n"
-"'git stash' [push [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]\n"
-"\t     [-u|--include-untracked] [-a|--all] [-m|--message <message>]]\n"
-"\t     [--] [<pathspec>...]]\n"
-"'git stash' clear\n"
-"'git stash' create [<message>]\n"
-"'git stash' store [-m|--message <message>] [-q|--quiet] <commit>\n"
+"'git remote' [-v | --verbose]\n"
+"'git remote add' [-t <branch>] [-m <master>] [-f] [--[no-]tags] [--mirror=<fetch|push>] <name> <url>\n"
+"'git remote rename' <old> <new>\n"
+"'git remote remove' <name>\n"
+"'git remote set-head' <name> (-a | --auto | -d | --delete | <branch>)\n"
+"'git remote set-branches' [--add] <name> <branch>...\n"
+"'git remote get-url' [--push] [--all] <name>\n"
+"'git remote set-url' [--push] <name> <newurl> [<oldurl>]\n"
+"'git remote set-url --add' [--push] <name> <newurl>\n"
+"'git remote set-url --delete' [--push] <name> <url>\n"
+"'git remote' [-v | --verbose] 'show' [-n] <name>...\n"
+"'git remote prune' [-n | --dry-run] <name>...\n"
+"'git remote' [-v | --verbose] 'update' [-p | --prune] [(<group> | <remote>)...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:32
-msgid ""
-"Use `git stash` when you want to record the current state of the working "
-"directory and the index, but want to go back to a clean working directory.  "
-"The command saves your local modifications away and reverts the working "
-"directory to match the `HEAD` commit."
+#: en/git-remote.txt:30
+msgid "Manage the set of repositories (\"remotes\") whose branches you track."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:40
+#: en/git-remote.txt:39
 msgid ""
-"The modifications stashed away by this command can be listed with `git stash "
-"list`, inspected with `git stash show`, and restored (potentially on top of "
-"a different commit) with `git stash apply`.  Calling `git stash` without any "
-"arguments is equivalent to `git stash save`.  A stash is by default listed "
-"as \"WIP on 'branchname' ...\", but you can give a more descriptive message "
-"on the command line when you create one."
+"Be a little more verbose and show remote url after name.  NOTE: This must be "
+"placed between `remote` and `subcommand`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:47
+#: en/git-remote.txt:46
 msgid ""
-"The latest stash you created is stored in `refs/stash`; older stashes are "
-"found in the reflog of this reference and can be named using the usual "
-"reflog syntax (e.g. `stash@{0}` is the most recently created stash, "
-"`stash@{1}` is the one before it, `stash@{2.hours.ago}` is also "
-"possible). Stashes may also be referenced by specifying just the stash index "
-"(e.g. the integer `n` is equivalent to `stash@{n}`)."
+"With no arguments, shows a list of existing remotes.  Several subcommands "
+"are available to perform operations on the remotes."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-stash.txt:51
+#: en/git-remote.txt:47
 #, no-wrap
+msgid "'add'"
+msgstr ""
+
+#. type: Plain text
+#: en/git-remote.txt:52
 msgid ""
-"save [-p|--patch] [-k|--[no-]keep-index] [-u|--include-untracked] [-a|--all] "
-"[-q|--quiet] [<message>]"
+"Adds a remote named <name> for the repository at <url>.  The command `git "
+"fetch <name>` can then be used to create and update remote-tracking branches "
+"<name>/<branch>."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-stash.txt:52
-#, no-wrap
+#. type: Plain text
+#: en/git-remote.txt:55
 msgid ""
-"push [-p|--patch] [-k|--[no-]keep-index] [-u|--include-untracked] [-a|--all] "
-"[-q|--quiet] [-m|--message <message>] [--] [<pathspec>...]"
+"With `-f` option, `git fetch <name>` is run immediately after the remote "
+"information is set up."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:58
+#: en/git-remote.txt:58
 msgid ""
-"Save your local modifications to a new 'stash' and roll them back to HEAD "
-"(in the working tree and in the index).  The <message> part is optional and "
-"gives the description along with the stashed state."
+"With `--tags` option, `git fetch <name>` imports every tag from the remote "
+"repository."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:64
+#: en/git-remote.txt:61
 msgid ""
-"For quickly making a snapshot, you can omit \"push\".  In this mode, "
-"non-option arguments are not allowed to prevent a misspelled subcommand from "
-"making an unwanted stash.  The two exceptions to this are `stash -p` which "
-"acts as alias for `stash push -p` and pathspecs, which are allowed after a "
-"double hyphen `--` for disambiguation."
+"With `--no-tags` option, `git fetch <name>` does not import tags from the "
+"remote repository."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:70
+#: en/git-remote.txt:64
 msgid ""
-"When pathspec is given to 'git stash push', the new stash records the "
-"modified states only for the files that match the pathspec.  The index "
-"entries and working tree files are then rolled back to the state in HEAD "
-"only for these files, too, leaving files that do not match the pathspec "
-"intact."
+"By default, only tags on fetched branches are imported (see linkgit:git-"
+"fetch[1])."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:73
+#: en/git-remote.txt:70
 msgid ""
-"If the `--keep-index` option is used, all changes already added to the index "
-"are left intact."
+"With `-t <branch>` option, instead of the default glob refspec for the "
+"remote to track all branches under the `refs/remotes/<name>/` namespace, a "
+"refspec to track only `<branch>` is created.  You can give more than one `-t "
+"<branch>` to track multiple branches without grabbing all branches."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:78
+#: en/git-remote.txt:73
 msgid ""
-"If the `--include-untracked` option is used, all untracked files are also "
-"stashed and then cleaned up with `git clean`, leaving the working directory "
-"in a very clean state. If the `--all` option is used instead then the "
-"ignored files are stashed and cleaned in addition to the untracked files."
+"With `-m <master>` option, a symbolic-ref `refs/remotes/<name>/HEAD` is set "
+"up to point at remote's `<master>` branch. See also the set-head command."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:86
+#: en/git-remote.txt:79
 msgid ""
-"With `--patch`, you can interactively select hunks from the diff between "
-"HEAD and the working tree to be stashed.  The stash entry is constructed "
-"such that its index state is the same as the index state of your repository, "
-"and its worktree contains only the changes you selected interactively.  The "
-"selected changes are then rolled back from your worktree. See the "
-"``Interactive Mode'' section of linkgit:git-add[1] to learn how to operate "
-"the `--patch` mode."
+"When a fetch mirror is created with `--mirror=fetch`, the refs will not be "
+"stored in the 'refs/remotes/' namespace, but rather everything in 'refs/' on "
+"the remote will be directly mirrored into 'refs/' in the local repository. "
+"This option only makes sense in bare repositories, because a fetch would "
+"overwrite any local commits."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:89
+#: en/git-remote.txt:82
 msgid ""
-"The `--patch` option implies `--keep-index`.  You can use `--no-keep-index` "
-"to override this."
+"When a push mirror is created with `--mirror=push`, then `git push` will "
+"always behave as if `--mirror` was passed."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-stash.txt:90
+#: en/git-remote.txt:83
 #, no-wrap
-msgid "list [<options>]"
+msgid "'rename'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:97
+#: en/git-remote.txt:87
 msgid ""
-"List the stashes that you currently have.  Each 'stash' is listed with its "
-"name (e.g. `stash@{0}` is the latest stash, `stash@{1}` is the one before, "
-"etc.), the name of the branch that was current when the stash was made, and "
-"a short description of the commit the stash was based on."
+"Rename the remote named <old> to <new>. All remote-tracking branches and "
+"configuration settings for the remote are updated."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-stash.txt:101
-#, no-wrap
+#. type: Plain text
+#: en/git-remote.txt:91
 msgid ""
-"stash@{0}: WIP on submit: 6ebd0e2... Update git-stash documentation\n"
-"stash@{1}: On master: 9cc0589... Add git-stash\n"
+"In case <old> and <new> are the same, and <old> is a file under `$GIT_DIR/"
+"remotes` or `$GIT_DIR/branches`, the remote is converted to the "
+"configuration file format."
 msgstr ""
 
-#. type: Plain text
-#: en/git-stash.txt:105
-msgid ""
-"The command takes options applicable to the 'git log' command to control "
-"what is shown and how. See linkgit:git-log[1]."
+#. type: Labeled list
+#: en/git-remote.txt:92
+#, no-wrap
+msgid "'remove'"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-stash.txt:106
+#: en/git-remote.txt:93
 #, no-wrap
-msgid "show [<stash>]"
+msgid "'rm'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:115
+#: en/git-remote.txt:97
 msgid ""
-"Show the changes recorded in the stash as a diff between the stashed state "
-"and its original parent. When no `<stash>` is given, shows the latest "
-"one. By default, the command shows the diffstat, but it will accept any "
-"format known to 'git diff' (e.g., `git stash show -p stash@{1}` to view the "
-"second most recent stash in patch form).  You can use stash.showStat and/or "
-"stash.showPatch config variables to change the default behavior."
+"Remove the remote named <name>. All remote-tracking branches and "
+"configuration settings for the remote are removed."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-stash.txt:116
+#: en/git-remote.txt:98
 #, no-wrap
-msgid "pop [--index] [-q|--quiet] [<stash>]"
+msgid "'set-head'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:122
+#: en/git-remote.txt:107
 msgid ""
-"Remove a single stashed state from the stash list and apply it on top of the "
-"current working tree state, i.e., do the inverse operation of `git stash "
-"save`. The working directory must match the index."
+"Sets or deletes the default branch (i.e. the target of the symbolic-ref "
+"`refs/remotes/<name>/HEAD`) for the named remote. Having a default branch "
+"for a remote is not required, but allows the name of the remote to be "
+"specified in lieu of a specific branch. For example, if the default branch "
+"for `origin` is set to `master`, then `origin` may be specified wherever you "
+"would normally specify `origin/master`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:126
+#: en/git-remote.txt:109
 msgid ""
-"Applying the state can fail with conflicts; in this case, it is not removed "
-"from the stash list. You need to resolve the conflicts by hand and call `git "
-"stash drop` manually afterwards."
+"With `-d` or `--delete`, the symbolic ref `refs/remotes/<name>/HEAD` is "
+"deleted."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:131
+#: en/git-remote.txt:116
 msgid ""
-"If the `--index` option is used, then tries to reinstate not only the "
-"working tree's changes, but also the index's ones. However, this can fail, "
-"when you have conflicts (which are stored in the index, where you therefore "
-"can no longer apply the changes as they were originally)."
+"With `-a` or `--auto`, the remote is queried to determine its `HEAD`, then "
+"the symbolic-ref `refs/remotes/<name>/HEAD` is set to the same branch. e.g., "
+"if the remote `HEAD` is pointed at `next`, \"`git remote set-head origin -a`"
+"\" will set the symbolic-ref `refs/remotes/origin/HEAD` to `refs/remotes/"
+"origin/next`. This will only work if `refs/remotes/origin/next` already "
+"exists; if not it must be fetched first."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:134
+#: en/git-remote.txt:121
 msgid ""
-"When no `<stash>` is given, `stash@{0}` is assumed, otherwise `<stash>` must "
-"be a reference of the form `stash@{<revision>}`."
+"Use `<branch>` to set the symbolic-ref `refs/remotes/<name>/HEAD` "
+"explicitly. e.g., \"git remote set-head origin master\" will set the "
+"symbolic-ref `refs/remotes/origin/HEAD` to `refs/remotes/origin/master`. "
+"This will only work if `refs/remotes/origin/master` already exists; if not "
+"it must be fetched first."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-stash.txt:135
+#: en/git-remote.txt:123
 #, no-wrap
-msgid "apply [--index] [-q|--quiet] [<stash>]"
+msgid "'set-branches'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:140
+#: en/git-remote.txt:128
 msgid ""
-"Like `pop`, but do not remove the state from the stash list. Unlike `pop`, "
-"`<stash>` may be any commit that looks like a commit created by `stash save` "
-"or `stash create`."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-stash.txt:141
-#, no-wrap
-msgid "branch <branchname> [<stash>]"
+"Changes the list of branches tracked by the named remote.  This can be used "
+"to track a subset of the available remote branches after the initial setup "
+"for a remote."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:149
+#: en/git-remote.txt:131
 msgid ""
-"Creates and checks out a new branch named `<branchname>` starting from the "
-"commit at which the `<stash>` was originally created, applies the changes "
-"recorded in `<stash>` to the new working tree and index.  If that succeeds, "
-"and `<stash>` is a reference of the form `stash@{<revision>}`, it then drops "
-"the `<stash>`. When no `<stash>` is given, applies the latest one."
+"The named branches will be interpreted as if specified with the `-t` option "
+"on the 'git remote add' command line."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:155
+#: en/git-remote.txt:134
 msgid ""
-"This is useful if the branch on which you ran `git stash save` has changed "
-"enough that `git stash apply` fails due to conflicts. Since the stash is "
-"applied on top of the commit that was HEAD at the time `git stash` was run, "
-"it restores the originally stashed state with no conflicts."
+"With `--add`, instead of replacing the list of currently tracked branches, "
+"adds to that list."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-stash.txt:156
+#: en/git-remote.txt:135
 #, no-wrap
-msgid "clear"
+msgid "'get-url'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:160
+#: en/git-remote.txt:139
 msgid ""
-"Remove all the stashed states. Note that those states will then be subject "
-"to pruning, and may be impossible to recover (see 'Examples' below for a "
-"possible strategy)."
+"Retrieves the URLs for a remote. Configurations for `insteadOf` and "
+"`pushInsteadOf` are expanded here. By default, only the first URL is listed."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-stash.txt:161
-#, no-wrap
-msgid "drop [-q|--quiet] [<stash>]"
+#. type: Plain text
+#: en/git-remote.txt:141
+msgid "With `--push`, push URLs are queried rather than fetch URLs."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:167
-msgid ""
-"Remove a single stashed state from the stash list. When no `<stash>` is "
-"given, it removes the latest one. i.e. `stash@{0}`, otherwise `<stash>` must "
-"be a valid stash log reference of the form `stash@{<revision>}`."
+#: en/git-remote.txt:143
+msgid "With `--all`, all URLs for the remote will be listed."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-stash.txt:168 en/git-update-ref.txt:100
+#: en/git-remote.txt:144
 #, no-wrap
-msgid "create"
+msgid "'set-url'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:174
+#: en/git-remote.txt:149
 msgid ""
-"Create a stash (which is a regular commit object) and return its object "
-"name, without storing it anywhere in the ref namespace.  This is intended to "
-"be useful for scripts.  It is probably not the command you want to use; see "
-"\"save\" above."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-stash.txt:175
-#, no-wrap
-msgid "store"
+"Changes URLs for the remote. Sets first URL for remote <name> that matches "
+"regex <oldurl> (first URL if no <oldurl> is given) to <newurl>. If <oldurl> "
+"doesn't match any URL, an error occurs and nothing is changed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:181
-msgid ""
-"Store a given stash created via 'git stash create' (which is a dangling "
-"merge commit) in the stash ref, updating the stash reflog.  This is intended "
-"to be useful for scripts.  It is probably not the command you want to use; "
-"see \"save\" above."
+#: en/git-remote.txt:151
+msgid "With `--push`, push URLs are manipulated instead of fetch URLs."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:190
-msgid ""
-"A stash is represented as a commit whose tree records the state of the "
-"working directory, and its first parent is the commit at `HEAD` when the "
-"stash was created.  The tree of the second parent records the state of the "
-"index when the stash is made, and it is made a child of the `HEAD` commit.  "
-"The ancestry graph looks like this:"
+#: en/git-remote.txt:153
+msgid "With `--add`, instead of changing existing URLs, new URL is added."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:194
-#, no-wrap
+#: en/git-remote.txt:157
 msgid ""
-"            .----W\n"
-"           /    /\n"
-"     -----H----I\n"
+"With `--delete`, instead of changing existing URLs, all URLs matching regex "
+"<url> are deleted for remote <name>.  Trying to delete all non-push URLs is "
+"an error."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:198
+#: en/git-remote.txt:164
 msgid ""
-"where `H` is the `HEAD` commit, `I` is a commit that records the state of "
-"the index, and `W` is a commit that records the state of the working tree."
+"Note that the push URL and the fetch URL, even though they can be set "
+"differently, must still refer to the same place.  What you pushed to the "
+"push URL should be what you would see if you immediately fetched from the "
+"fetch URL.  If you are trying to fetch from one place (e.g. your upstream) "
+"and push to another (e.g.  your publishing repository), use two separate "
+"remotes."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-stash.txt:203
+#: en/git-remote.txt:166
 #, no-wrap
-msgid "Pulling into a dirty tree"
+msgid "'show'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:209
-msgid ""
-"When you are in the middle of something, you learn that there are upstream "
-"changes that are possibly relevant to what you are doing.  When your local "
-"changes do not conflict with the changes in the upstream, a simple `git "
-"pull` will let you move forward."
+#: en/git-remote.txt:169
+msgid "Gives some information about the remote <name>."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:214
+#: en/git-remote.txt:172
 msgid ""
-"However, there are cases in which your local changes do conflict with the "
-"upstream changes, and `git pull` refuses to overwrite your changes.  In such "
-"a case, you can stash your changes away, perform a pull, and then unstash, "
-"like this:"
+"With `-n` option, the remote heads are not queried first with `git ls-remote "
+"<name>`; cached information is used instead."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-stash.txt:222
+#. type: Labeled list
+#: en/git-remote.txt:173
 #, no-wrap
-msgid ""
-"$ git pull\n"
-" ...\n"
-"file foobar not up to date, cannot merge.\n"
-"$ git stash\n"
-"$ git pull\n"
-"$ git stash pop\n"
+msgid "'prune'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:230
+#: en/git-remote.txt:180
 msgid ""
-"When you are in the middle of something, your boss comes in and demands that "
-"you fix something immediately.  Traditionally, you would make a commit to a "
-"temporary branch to store your changes away, and return to your original "
-"branch to make the emergency fix, like this:"
+"Deletes stale references associated with <name>. By default, stale remote-"
+"tracking branches under <name> are deleted, but depending on global "
+"configuration and the configuration of the remote we might even prune local "
+"tags that haven't been pushed there. Equivalent to `git fetch --prune "
+"<name>`, except that no new references will be fetched."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-stash.txt:241
-#, no-wrap
+#. type: Plain text
+#: en/git-remote.txt:183
 msgid ""
-"# ... hack hack hack ...\n"
-"$ git checkout -b my_wip\n"
-"$ git commit -a -m \"WIP\"\n"
-"$ git checkout master\n"
-"$ edit emergency fix\n"
-"$ git commit -a -m \"Fix in a hurry\"\n"
-"$ git checkout my_wip\n"
-"$ git reset --soft HEAD^\n"
-"# ... continue hacking ...\n"
+"See the PRUNING section of linkgit:git-fetch[1] for what it'll prune "
+"depending on various configuration."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:244
-msgid "You can use 'git stash' to simplify the above, like this:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-stash.txt:252
-#, no-wrap
+#: en/git-remote.txt:186
 msgid ""
-"# ... hack hack hack ...\n"
-"$ git stash\n"
-"$ edit emergency fix\n"
-"$ git commit -a -m \"Fix in a hurry\"\n"
-"$ git stash pop\n"
-"# ... continue hacking ...\n"
+"With `--dry-run` option, report what branches will be pruned, but do not "
+"actually prune them."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-stash.txt:254
+#: en/git-remote.txt:187
 #, no-wrap
-msgid "Testing partial commits"
+msgid "'update'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:259
+#: en/git-remote.txt:195
 msgid ""
-"You can use `git stash save --keep-index` when you want to make two or more "
-"commits out of the changes in the work tree, and you want to test each "
-"change before committing:"
+"Fetch updates for remotes or remote groups in the repository as defined by "
+"remotes.<group>.  If neither group nor remote is specified on the command "
+"line, the configuration parameter remotes.default will be used; if remotes."
+"default is not defined, all remotes which do not have the configuration "
+"parameter remote.<name>.skipDefaultUpdate set to true will be updated.  (See "
+"linkgit:git-config[1])."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-stash.txt:270
-#, no-wrap
+#. type: Plain text
+#: en/git-remote.txt:197
 msgid ""
-"# ... hack hack hack ...\n"
-"$ git add --patch foo            # add just first part to the index\n"
-"$ git stash save --keep-index    # save all other changes to the stash\n"
-"$ edit/build/test first part\n"
-"$ git commit -m 'First part'     # commit fully tested change\n"
-"$ git stash pop                  # prepare to work on all other changes\n"
-"# ... repeat above five steps until one commit remains ...\n"
-"$ edit/build/test remaining parts\n"
-"$ git commit foo -m 'Remaining parts'\n"
+"With `--prune` option, run pruning against all the remotes that are updated."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-stash.txt:272
-#, no-wrap
-msgid "Recovering stashes that were cleared/dropped erroneously"
+#. type: Plain text
+#: en/git-remote.txt:205
+msgid ""
+"The remote configuration is achieved using the `remote.origin.url` and "
+"`remote.origin.fetch` configuration variables.  (See linkgit:git-config[1])."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:278
-msgid ""
-"If you mistakenly drop or clear stashes, they cannot be recovered through "
-"the normal safety mechanisms.  However, you can try the following "
-"incantation to get a list of stashes that are still in your repository, but "
-"not reachable any more:"
+#: en/git-remote.txt:210
+msgid "Add a new remote, fetch, and check out a branch from it"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-stash.txt:283
+#: en/git-remote.txt:235
 #, no-wrap
 msgid ""
-"git fsck --unreachable |\n"
-"grep commit | cut -d\\  -f3 |\n"
-"xargs git log --merges --no-walk --grep=WIP\n"
+"$ git remote\n"
+"origin\n"
+"$ git branch -r\n"
+"  origin/HEAD -> origin/master\n"
+"  origin/master\n"
+"$ git remote add staging git://git.kernel.org/.../gregkh/staging.git\n"
+"$ git remote\n"
+"origin\n"
+"staging\n"
+"$ git fetch staging\n"
+"...\n"
+"From git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging\n"
+" * [new branch]      master     -> staging/master\n"
+" * [new branch]      staging-linus -> staging/staging-linus\n"
+" * [new branch]      staging-next -> staging/staging-next\n"
+"$ git branch -r\n"
+"  origin/HEAD -> origin/master\n"
+"  origin/master\n"
+"  staging/master\n"
+"  staging/staging-linus\n"
+"  staging/staging-next\n"
+"$ git checkout -b staging staging/master\n"
+"...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stash.txt:292
-msgid ""
-"linkgit:git-checkout[1], linkgit:git-commit[1], linkgit:git-reflog[1], "
-"linkgit:git-reset[1]"
+#: en/git-remote.txt:238
+msgid "Imitate 'git clone' but track only selected branches"
 msgstr ""
 
-#. type: Title =
-#: en/git-status.txt:2
+#. type: delimited block -
+#: en/git-remote.txt:245
 #, no-wrap
-msgid "git-status(1)"
+msgid ""
+"$ mkdir project.git\n"
+"$ cd project.git\n"
+"$ git init\n"
+"$ git remote add -f -t master -m master origin git://example.com/git.git/\n"
+"$ git merge origin\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:7
-msgid "git-status - Show the working tree status"
+#: en/git-remote.txt:253
+msgid "linkgit:git-fetch[1] linkgit:git-branch[1] linkgit:git-config[1]"
 msgstr ""
 
-#. type: Plain text
-#: en/git-status.txt:13
+#. type: Title =
+#: en/git-repack.txt:2
 #, no-wrap
-msgid "'git status' [<options>...] [--] [<pathspec>...]\n"
+msgid "git-repack(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:23
-msgid ""
-"Displays paths that have differences between the index file and the current "
-"HEAD commit, paths that have differences between the working tree and the "
-"index file, and paths in the working tree that are not tracked by Git (and "
-"are not ignored by linkgit:gitignore[5]). The first are what you _would_ "
-"commit by running `git commit`; the second and third are what you _could_ "
-"commit by running 'git add' before running `git commit`."
+#: en/git-repack.txt:7
+msgid "git-repack - Pack unpacked objects in a repository"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:30
-msgid "Give the output in the short-format."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-status.txt:35
+#: en/git-repack.txt:13
 #, no-wrap
-msgid "--porcelain[=<version>]"
+msgid "'git repack' [-a] [-A] [-d] [-f] [-F] [-l] [-n] [-q] [-b] [--window=<n>] [--depth=<n>] [--threads=<n>] [--keep-pack=<pack-name>]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:40
+#: en/git-repack.txt:20
 msgid ""
-"Give the output in an easy-to-parse format for scripts.  This is similar to "
-"the short output, but will remain stable across Git versions and regardless "
-"of user configuration. See below for details."
+"This command is used to combine all objects that do not currently reside in "
+"a \"pack\", into a pack.  It can also be used to re-organize existing packs "
+"into a single, more efficient pack."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:43
+#: en/git-repack.txt:39
 msgid ""
-"The version parameter is used to specify the format version.  This is "
-"optional and defaults to the original version 'v1' format."
+"Instead of incrementally packing the unpacked objects, pack everything "
+"referenced into a single pack.  Especially useful when packing a repository "
+"that is used for private development. Use with `-d`.  This will clean up the "
+"objects that `git prune` leaves behind, but `git fsck --full --dangling` "
+"shows as dangling."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:46
-msgid "Give the output in the long-format. This is the default."
+#: en/git-repack.txt:43
+msgid ""
+"Note that users fetching over dumb protocols will have to fetch the whole "
+"new pack in order to get any contained object, no matter how many other "
+"objects in that pack they already have locally."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:54
+#: en/git-repack.txt:48
 msgid ""
-"In addition to the names of files that have been changed, also show the "
-"textual changes that are staged to be committed (i.e., like the output of "
-"`git diff --cached`). If `-v` is specified twice, then also show the changes "
-"in the working tree that have not yet been staged (i.e., like the output of "
-"`git diff`)."
+"Promisor packfiles are repacked separately: if there are packfiles that have "
+"an associated \".promisor\" file, these packfiles will be repacked into "
+"another separate pack, and an empty \".promisor\" file corresponding to the "
+"new separate pack will be written."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:62
+#: en/git-repack.txt:59
 msgid ""
-"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`)."
+"Same as `-a`, unless `-d` is used.  Then any unreachable objects in a "
+"previous pack become loose, unpacked objects, instead of being left in the "
+"old pack.  Unreachable objects are never intentionally added to a pack, even "
+"when repacking.  This option prevents unreachable objects from being "
+"immediately deleted by way of being left in the old pack and then removed.  "
+"Instead, the loose unreachable objects will be pruned according to normal "
+"expiry rules with the next 'git gc' invocation. See linkgit:git-gc[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:66
-#, no-wrap
-msgid "'no'     - Show no untracked files.\n"
+#: en/git-repack.txt:65
+msgid ""
+"After packing, if the newly created packs make some existing packs "
+"redundant, remove the redundant packs.  Also run 'git prune-packed' to "
+"remove redundant loose object files."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:67
-#, no-wrap
-msgid "'normal' - Shows untracked files and directories.\n"
+#: en/git-repack.txt:69
+msgid ""
+"Pass the `--local` option to 'git pack-objects'. See linkgit:git-pack-"
+"objects[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:78
+#: en/git-repack.txt:73
 msgid ""
-"When `-u` option is not used, untracked files and directories are shown "
-"(i.e. the same as specifying `normal`), to help you avoid forgetting to add "
-"newly created files.  Because it takes extra work to find untracked files in "
-"the filesystem, this mode may take some time in a large working tree.  "
-"Consider enabling untracked cache and split index if supported (see `git "
-"update-index --untracked-cache` and `git update-index --split-index`), "
-"Otherwise you can use `no` to have `git status` return more quickly without "
-"showing untracked files."
+"Pass the `--no-reuse-delta` option to `git-pack-objects`, see linkgit:git-"
+"pack-objects[1]."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-status.txt:82 en/diff-options.txt:581
-#, no-wrap
-msgid "--ignore-submodules[=<when>]"
+#. type: Plain text
+#: en/git-repack.txt:77
+msgid ""
+"Pass the `--no-reuse-object` option to `git-pack-objects`, see linkgit:git-"
+"pack-objects[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:96
+#: en/git-repack.txt:81
 msgid ""
-"Ignore changes to submodules when looking for changes. <when> can be either "
-"\"none\", \"untracked\", \"dirty\" or \"all\", which is the default.  Using "
-"\"none\" will consider the submodule modified when it either contains "
-"untracked or modified files or its HEAD differs from the commit recorded in "
-"the superproject and can be used to override any settings of the 'ignore' "
-"option in linkgit:git-config[1] or linkgit:gitmodules[5]. When \"untracked\" "
-"is used submodules are not considered dirty when they only contain untracked "
-"content (but they are still scanned for modified content). Using \"dirty\" "
-"ignores all changes to the work tree of submodules, only changes to the "
-"commits stored in the superproject are shown (this was the behavior before "
-"1.7.0). Using \"all\" hides all changes to submodules (and suppresses the "
-"output of submodule summaries when the config option "
-"`status.submoduleSummary` is set)."
+"Pass the `-q` option to 'git pack-objects'. See linkgit:git-pack-objects[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:99
-msgid "Show ignored files as well."
+#: en/git-repack.txt:88
+msgid ""
+"Do not update the server information with 'git update-server-info'.  This "
+"option skips updating local catalog files needed to publish this repository "
+"(or a direct copy of it)  over HTTP or FTP.  See linkgit:git-update-server-"
+"info[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:103
+#: en/git-repack.txt:98
 msgid ""
-"Terminate entries with NUL, instead of LF.  This implies the "
-"`--porcelain=v1` output format if no other format is given."
+"These two options affect how the objects contained in the pack are stored "
+"using delta compression. The objects are first internally sorted by type, "
+"size and optionally names and compared against the other objects within `--"
+"window` to see if using delta compression saves space. `--depth` limits the "
+"maximum delta depth; making it too deep affects the performance on the "
+"unpacker side, because delta data needs to be applied that many times to get "
+"to the necessary object."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:110
-msgid ""
-"Display untracked files in columns. See configuration variable column.status "
-"for option syntax.`--column` and `--no-column` without options are "
-"equivalent to 'always' and 'never' respectively."
+#: en/git-repack.txt:104
+msgid "This option is passed through to `git pack-objects`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:119
+#: en/git-repack.txt:117
 msgid ""
-"The output from this command is designed to be used as a commit template "
-"comment.  The default, long format, is designed to be human readable, "
-"verbose and descriptive.  Its contents and format are subject to change at "
-"any time."
+"This option provides an additional limit on top of `--window`; the window "
+"size will dynamically scale down so as to not take up more than '<n>' bytes "
+"in memory.  This is useful in repositories with a mix of large and small "
+"objects to not run out of memory with a large window, but still be able to "
+"take advantage of the large window for the smaller objects.  The size can be "
+"suffixed with \"k\", \"m\", or \"g\".  `--window-memory=0` makes memory "
+"usage unlimited.  The default is taken from the `pack.windowMemory` "
+"configuration variable.  Note that the actual memory usage will be the limit "
+"multiplied by the number of threads used by linkgit:git-pack-objects[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:124
+#: en/git-repack.txt:125
 msgid ""
-"The paths mentioned in the output, unlike many other Git commands, are made "
-"relative to the current directory if you are working in a subdirectory (this "
-"is on purpose, to help cutting and pasting). See the status.relativePaths "
-"config option below."
+"Maximum size of each output pack file. The size can be suffixed with \"k\", "
+"\"m\", or \"g\". The minimum size allowed is limited to 1 MiB.  If "
+"specified, multiple packfiles may be created, which also prevents the "
+"creation of a bitmap index.  The default is unlimited, unless the config "
+"variable `pack.packSizeLimit` is set."
 msgstr ""
 
-#. type: Title ~
-#: en/git-status.txt:126
+#. type: Labeled list
+#: en/git-repack.txt:127
 #, no-wrap
-msgid "Short Format"
+msgid "--write-bitmap-index"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:129
-msgid "In the short-format, the status of each path is shown as"
+#: en/git-repack.txt:133
+msgid ""
+"Write a reachability bitmap index as part of the repack. This only makes "
+"sense when used with `-a` or `-A`, as the bitmaps must be able to refer to "
+"all reachable objects. This option overrides the setting of `repack."
+"writeBitmaps`.  This option has no effect if multiple packfiles are created."
 msgstr ""
 
-#. type: Plain text
-#: en/git-status.txt:131
+#. type: Labeled list
+#: en/git-repack.txt:134
 #, no-wrap
-msgid "\tXY PATH1 -> PATH2\n"
+msgid "--pack-kept-objects"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:136
+#: en/git-repack.txt:142
 msgid ""
-"where `PATH1` is the path in the `HEAD`, and the \" `-> PATH2`\" part is "
-"shown only when `PATH1` corresponds to a different path in the "
-"index/worktree (i.e. the file is renamed). The `XY` is a two-letter status "
-"code."
+"Include objects in `.keep` files when repacking.  Note that we still do not "
+"delete `.keep` packs after `pack-objects` finishes.  This means that we may "
+"duplicate objects, but this makes the option safe to use when there are "
+"concurrent pushes or fetches.  This option is generally only useful if you "
+"are writing bitmaps with `-b` or `repack.writeBitmaps`, as it ensures that "
+"the bitmapped packfile has the necessary objects."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:142
+#: en/git-repack.txt:149
 msgid ""
-"The fields (including the `->`) are separated from each other by a single "
-"space. If a filename contains whitespace or other nonprintable characters, "
-"that field will be quoted in the manner of a C string literal: surrounded by "
-"ASCII double quote (34) characters, and with interior special characters "
-"backslash-escaped."
+"Exclude the given pack from repacking. This is the equivalent of having `."
+"keep` file on the pack. `<pack-name>` is the the pack file name without "
+"leading directory (e.g. `pack-123.pack`).  The option could be specified "
+"multiple times to keep multiple packs."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-repack.txt:150
+#, no-wrap
+msgid "--unpack-unreachable=<when>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:148
+#: en/git-repack.txt:155
 msgid ""
-"For paths with merge conflicts, `X` and `Y` show the modification states of "
-"each side of the merge. For paths that do not have merge conflicts, `X` "
-"shows the status of the index, and `Y` shows the status of the work tree.  "
-"For untracked paths, `XY` are `??`.  Other status codes can be interpreted "
-"as follows:"
+"When loosening unreachable objects, do not bother loosening any objects "
+"older than `<when>`. This can be used to optimize out the write of any "
+"objects that would be immediately pruned by a follow-up `git prune`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:150
-msgid "' ' = unmodified"
+#: en/git-repack.txt:162
+msgid ""
+"When used with `-ad`, any unreachable objects from existing packs will be "
+"appended to the end of the packfile instead of being removed. In addition, "
+"any unreachable loose objects will be packed (and their loose counterparts "
+"removed)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:151
-msgid "'M' = modified"
+#: en/git-repack.txt:167
+msgid ""
+"Pass the `--delta-islands` option to `git-pack-objects`, see linkgit:git-"
+"pack-objects[1]."
 msgstr ""
 
-#. type: Plain text
-#: en/git-status.txt:152
-msgid "'A' = added"
+#. type: Title -
+#: en/git-repack.txt:169
+#, no-wrap
+msgid "Configuration"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:153
-msgid "'D' = deleted"
+#: en/git-repack.txt:180
+msgid ""
+"By default, the command passes `--delta-base-offset` option to 'git pack-"
+"objects'; this typically results in slightly smaller packs, but the "
+"generated packs are incompatible with versions of Git older than version "
+"1.4.4. If you need to share your repository with such ancient Git versions, "
+"either directly or via the dumb http protocol, then you need to set the "
+"configuration variable `repack.UseDeltaBaseOffset` to \"false\" and repack. "
+"Access from old Git versions over the native protocol is unaffected by this "
+"option as the conversion is performed on the fly as needed in that case."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:154
-msgid "'R' = renamed"
+#: en/git-repack.txt:185
+msgid "linkgit:git-pack-objects[1] linkgit:git-prune-packed[1]"
 msgstr ""
 
-#. type: Plain text
-#: en/git-status.txt:155
-msgid "'C' = copied"
+#. type: Title =
+#: en/git-replace.txt:2
+#, no-wrap
+msgid "git-replace(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:156
-msgid "'U' = updated but unmerged"
+#: en/git-replace.txt:7
+msgid "git-replace - Create, list, delete refs to replace objects"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:159
+#: en/git-replace.txt:17
+#, no-wrap
 msgid ""
-"Ignored files are not listed, unless `--ignored` option is in effect, in "
-"which case `XY` are `!!`."
+"'git replace' [-f] <object> <replacement>\n"
+"'git replace' [-f] --edit <object>\n"
+"'git replace' [-f] --graft <commit> [<parent>...]\n"
+"'git replace' [-f] --convert-graft-file\n"
+"'git replace' -d <object>...\n"
+"'git replace' [--format=<format>] [-l [<pattern>]]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:183
-#, no-wrap
-msgid ""
-"    X          Y     Meaning\n"
-"    -------------------------------------------------\n"
-"              [MD]   not updated\n"
-"    M        [ MD]   updated in index\n"
-"    A        [ MD]   added to index\n"
-"    D         [ M]   deleted from index\n"
-"    R        [ MD]   renamed in index\n"
-"    C        [ MD]   copied in index\n"
-"    [MARC]           index and work tree matches\n"
-"    [ MARC]     M    work tree changed since index\n"
-"    [ MARC]     D    deleted in work tree\n"
-"    -------------------------------------------------\n"
-"    D           D    unmerged, both deleted\n"
-"    A           U    unmerged, added by us\n"
-"    U           D    unmerged, deleted by them\n"
-"    U           A    unmerged, added by them\n"
-"    D           U    unmerged, deleted by us\n"
-"    A           A    unmerged, both added\n"
-"    U           U    unmerged, both modified\n"
-"    -------------------------------------------------\n"
-"    ?           ?    untracked\n"
-"    !           !    ignored\n"
-"    -------------------------------------------------\n"
+#: en/git-replace.txt:21
+msgid "Adds a 'replace' reference in `refs/replace/` namespace."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:185
-msgid "If -b is used the short-format status is preceded by a line"
+#: en/git-replace.txt:25
+msgid ""
+"The name of the 'replace' reference is the SHA-1 of the object that is "
+"replaced. The content of the 'replace' reference is the SHA-1 of the "
+"replacement object."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:187
-#, no-wrap
-msgid "    ## branchname tracking info\n"
+#: en/git-replace.txt:28
+msgid ""
+"The replaced object and the replacement object must be of the same type.  "
+"This restriction can be bypassed using `-f`."
 msgstr ""
 
-#. type: Title ~
-#: en/git-status.txt:189
-#, no-wrap
-msgid "Porcelain Format Version 1"
+#. type: Plain text
+#: en/git-replace.txt:30
+msgid "Unless `-f` is given, the 'replace' reference must not yet exist."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:196
+#: en/git-replace.txt:33
 msgid ""
-"Version 1 porcelain format is similar to the short format, but is guaranteed "
-"not to change in a backwards-incompatible way between Git versions or based "
-"on user configuration. This makes it ideal for parsing by scripts.  The "
-"description of the short format above also describes the porcelain format, "
-"with a few exceptions:"
+"There is no other restriction on the replaced and replacement objects.  "
+"Merge commits can be replaced by non-merge commits and vice versa."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:199
+#: en/git-replace.txt:37
 msgid ""
-"The user's color.status configuration is not respected; color will always be "
-"off."
+"Replacement references will be used by default by all Git commands except "
+"those doing reachability traversal (prune, pack transfer and fsck)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:202
+#: en/git-replace.txt:40
 msgid ""
-"The user's status.relativePaths configuration is not respected; paths shown "
-"will always be relative to the repository root."
+"It is possible to disable use of replacement references for any command "
+"using the `--no-replace-objects` option just after 'git'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:212
-msgid ""
-"There is also an alternate -z format recommended for machine parsing. In "
-"that format, the status field is the same, but some other things change.  "
-"First, the '\\->' is omitted from rename entries and the field order is "
-"reversed (e.g 'from \\-> to' becomes 'to from'). Second, a NUL (ASCII 0) "
-"follows each filename, replacing space as a field separator and the "
-"terminating newline (but a space still separates the status field from the "
-"first filename).  Third, filenames containing special characters are not "
-"specially formatted; no quoting or backslash-escaping is performed."
+#: en/git-replace.txt:42
+msgid "For example if commit 'foo' has been replaced by commit 'bar':"
 msgstr ""
 
-#. type: Title ~
-#: en/git-status.txt:214
+#. type: delimited block -
+#: en/git-replace.txt:45
 #, no-wrap
-msgid "Porcelain Format Version 2"
+msgid "$ git --no-replace-objects cat-file commit foo\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:219
-msgid ""
-"Version 2 format adds more detailed information about the state of the "
-"worktree and changed items.  Version 2 also defines an extensible set of "
-"easy to parse optional headers."
+#: en/git-replace.txt:48
+msgid "shows information about commit 'foo', while:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-status.txt:223
-msgid ""
-"Header lines start with \"#\" and are added in response to specific command "
-"line arguments.  Parsers should ignore headers they don't recognize."
+#. type: delimited block -
+#: en/git-replace.txt:51
+#, no-wrap
+msgid "$ git cat-file commit foo\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:225
-msgid "### Branch Headers"
+#: en/git-replace.txt:54
+msgid "shows information about commit 'bar'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:228
+#: en/git-replace.txt:57
 msgid ""
-"If `--branch` is given, a series of header lines are printed with "
-"information about the current branch."
+"The `GIT_NO_REPLACE_OBJECTS` environment variable can be set to achieve the "
+"same effect as the `--no-replace-objects` option."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:237
-#, no-wrap
+#: en/git-replace.txt:64
 msgid ""
-"    Line                                     Notes\n"
-"    ------------------------------------------------------------\n"
-"    # branch.oid <commit> | (initial)        Current commit.\n"
-"    # branch.head <branch> | (detached)      Current branch.\n"
-"    # branch.upstream <upstream_branch>      If upstream is set.\n"
-"    # branch.ab +<ahead> -<behind>           If upstream is set and\n"
-"\t\t\t\t\t     the commit is present.\n"
-"    ------------------------------------------------------------\n"
+"If an existing replace ref for the same object exists, it will be "
+"overwritten (instead of failing)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:239
-msgid "### Changed Tracked Entries"
+#: en/git-replace.txt:68
+msgid "Delete existing replace refs for the given objects."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-replace.txt:69
+#, no-wrap
+msgid "--edit <object>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:245
+#: en/git-replace.txt:77
 msgid ""
-"Following the headers, a series of lines are printed for tracked entries.  "
-"One of three different line formats may be used to describe an entry "
-"depending on the type of change.  Tracked entries are printed in an "
-"undefined order; parsers should allow for a mixture of the 3 line types in "
-"any order."
+"Edit an object's content interactively. The existing content for <object> is "
+"pretty-printed into a temporary file, an editor is launched on the file, and "
+"the result is parsed to create a new object of the same type as <object>. A "
+"replacement ref is then created to replace <object> with the newly created "
+"object. See linkgit:git-var[1] for details about how the editor will be "
+"chosen."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:247
-msgid "Ordinary changed entries have the following format:"
+#: en/git-replace.txt:85
+msgid ""
+"When editing, provide the raw object contents rather than pretty-printed "
+"ones. Currently this only affects trees, which will be shown in their binary "
+"form. This is harder to work with, but can help when repairing a tree that "
+"is so corrupted it cannot be pretty-printed. Note that you may need to "
+"configure your editor to cleanly read and write binary data."
 msgstr ""
 
-#. type: Plain text
-#: en/git-status.txt:249
+#. type: Labeled list
+#: en/git-replace.txt:86
 #, no-wrap
-msgid "    1 <XY> <sub> <mH> <mI> <mW> <hH> <hI> <path>\n"
+msgid "--graft <commit> [<parent>...]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:251
-msgid "Renamed or copied entries have the following format:"
+#: en/git-replace.txt:93
+msgid ""
+"Create a graft commit. A new commit is created with the same content as "
+"<commit> except that its parents will be [<parent>...] instead of <commit>'s "
+"parents. A replacement ref is then created to replace <commit> with the "
+"newly created commit. Use `--convert-graft-file` to convert a `$GIT_DIR/info/"
+"grafts` file and use replace refs instead."
 msgstr ""
 
-#. type: Plain text
-#: en/git-status.txt:253
+#. type: Labeled list
+#: en/git-replace.txt:94
 #, no-wrap
-msgid "    2 <XY> <sub> <mH> <mI> <mW> <hH> <hI> <X><score> <path><sep><origPath>\n"
+msgid "--convert-graft-file"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:283
-#, no-wrap
-msgid ""
-"    Field       Meaning\n"
-"    --------------------------------------------------------\n"
-"    <XY>        A 2 character field containing the staged and\n"
-"\t\tunstaged XY values described in the short format,\n"
-"\t\twith unchanged indicated by a \".\" rather than\n"
-"\t\ta space.\n"
-"    <sub>       A 4 character field describing the submodule state.\n"
-"\t\t\"N...\" when the entry is not a submodule.\n"
-"\t\t\"S<c><m><u>\" when the entry is a submodule.\n"
-"\t\t<c> is \"C\" if the commit changed; otherwise \".\".\n"
-"\t\t<m> is \"M\" if it has tracked changes; otherwise \".\".\n"
-"\t\t<u> is \"U\" if there are untracked changes; otherwise \".\".\n"
-"    <mH>        The octal file mode in HEAD.\n"
-"    <mI>        The octal file mode in the index.\n"
-"    <mW>        The octal file mode in the worktree.\n"
-"    <hH>        The object name in HEAD.\n"
-"    <hI>        The object name in the index.\n"
-"    <X><score>  The rename or copy score (denoting the percentage\n"
-"\t\tof similarity between the source and target of the\n"
-"\t\tmove or copy). For example \"R100\" or \"C75\".\n"
-"    <path>      The pathname.  In a renamed/copied entry, this\n"
-"\t\tis the path in the index and in the working tree.\n"
-"    <sep>       When the `-z` option is used, the 2 pathnames are "
-"separated\n"
-"\t\twith a NUL (ASCII 0x00) byte; otherwise, a tab (ASCII 0x09)\n"
-"\t\tbyte separates them.\n"
-"    <origPath>  The pathname in the commit at HEAD.  This is only\n"
-"\t\tpresent in a renamed/copied entry, and tells\n"
-"\t\twhere the renamed/copied contents came from.\n"
-"    --------------------------------------------------------\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-status.txt:286
+#: en/git-replace.txt:98
 msgid ""
-"Unmerged entries have the following format; the first character is a \"u\" "
-"to distinguish from ordinary changed entries."
+"Creates graft commits for all entries in `$GIT_DIR/info/grafts` and deletes "
+"that file upon success. The purpose is to help users with transitioning off "
+"of the now-deprecated graft file."
 msgstr ""
 
-#. type: Plain text
-#: en/git-status.txt:288
+#. type: Labeled list
+#: en/git-replace.txt:99
 #, no-wrap
-msgid "    u <xy> <sub> <m1> <m2> <m3> <mW> <h1> <h2> <h3> <path>\n"
+msgid "-l <pattern>"
 msgstr ""
 
-#. type: Plain text
-#: en/git-status.txt:304
+#. type: Labeled list
+#: en/git-replace.txt:100
 #, no-wrap
-msgid ""
-"    Field       Meaning\n"
-"    --------------------------------------------------------\n"
-"    <XY>        A 2 character field describing the conflict type\n"
-"\t\tas described in the short format.\n"
-"    <sub>       A 4 character field describing the submodule state\n"
-"\t\tas described above.\n"
-"    <m1>        The octal file mode in stage 1.\n"
-"    <m2>        The octal file mode in stage 2.\n"
-"    <m3>        The octal file mode in stage 3.\n"
-"    <mW>        The octal file mode in the worktree.\n"
-"    <h1>        The object name in stage 1.\n"
-"    <h2>        The object name in stage 2.\n"
-"    <h3>        The object name in stage 3.\n"
-"    <path>      The pathname.\n"
-"    --------------------------------------------------------\n"
+msgid "--list <pattern>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:306
-msgid "### Other Items"
+#: en/git-replace.txt:105
+msgid ""
+"List replace refs for objects that match the given pattern (or all if no "
+"pattern is given).  Typing \"git replace\" without arguments, also lists all "
+"replace refs."
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:310
+#: en/git-replace.txt:110
 msgid ""
-"Following the tracked entries (and if requested), a series of lines will be "
-"printed for untracked and then ignored items found in the worktree."
+"When listing, use the specified <format>, which can be one of 'short', "
+"'medium' and 'long'. When omitted, the format defaults to 'short'."
 msgstr ""
 
-#. type: Plain text
-#: en/git-status.txt:312
-msgid "Untracked items have the following format:"
+#. type: Title -
+#: en/git-replace.txt:112
+#, no-wrap
+msgid "FORMATS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:314
-#, no-wrap
-msgid "    ? <path>\n"
+#: en/git-replace.txt:115
+msgid "The following format are available:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:316
-msgid "Ignored items have the following format:"
+#: en/git-replace.txt:117
+msgid "'short':"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:318
-#, no-wrap
-msgid "    ! <path>\n"
+#: en/git-replace.txt:118
+msgid "<replaced sha1>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:320
-msgid "### Pathname Format Notes and -z"
+#: en/git-replace.txt:119
+msgid "'medium':"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:324
-msgid ""
-"When the `-z` option is given, pathnames are printed as is and without any "
-"quoting and lines are terminated with a NUL (ASCII 0x00)  byte."
+#: en/git-replace.txt:120
+msgid "<replaced sha1> -> <replacement sha1>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:328
-msgid ""
-"Without the `-z` option, pathnames with \"unusual\" characters are quoted as "
-"explained for the configuration variable `core.quotePath` (see "
-"linkgit:git-config[1])."
+#: en/git-replace.txt:121
+msgid "'long':"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:337
+#: en/git-replace.txt:122
 msgid ""
-"The command honors `color.status` (or `status.color` -- they mean the same "
-"thing and the latter is kept for backward compatibility) and "
-"`color.status.<slot>` configuration variables to colorize its output."
+"<replaced sha1> (<replaced type>) -> <replacement sha1> (<replacement type>)"
 msgstr ""
 
-#. type: Plain text
-#: en/git-status.txt:341
-msgid ""
-"If the config variable `status.relativePaths` is set to false, then all "
-"paths shown are relative to the repository root, not to the current "
-"directory."
+#. type: Title -
+#: en/git-replace.txt:124
+#, no-wrap
+msgid "CREATING REPLACEMENT OBJECTS"
 msgstr ""
 
 #. type: Plain text
-#: en/git-status.txt:352
+#: en/git-replace.txt:131
 msgid ""
-"If `status.submoduleSummary` is set to a non zero number or true (identical "
-"to -1 or an unlimited number), the submodule summary will be enabled for the "
-"long format and a summary of commits for modified submodules will be shown "
-"(see --summary-limit option of linkgit:git-submodule[1]). Please note that "
-"the summary output from the status command will be suppressed for all "
-"submodules when `diff.ignoreSubmodules` is set to 'all' or only for those "
-"submodules where `submodule.<name>.ignore=all`. To also view the summary for "
-"ignored submodules you can either use the --ignore-submodules=dirty command "
-"line option or the 'git submodule summary' command, which shows a similar "
-"output but does not honor these settings."
-msgstr ""
-
-#. type: Title =
-#: en/git-stripspace.txt:2
-#, no-wrap
-msgid "git-stripspace(1)"
+"linkgit:git-filter-branch[1], linkgit:git-hash-object[1] and linkgit:git-"
+"rebase[1], among other git commands, can be used to create replacement "
+"objects from existing objects. The `--edit` option can also be used with "
+"'git replace' to create a replacement object by editing an existing object."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stripspace.txt:7
-msgid "git-stripspace - Remove unnecessary whitespace"
+#: en/git-replace.txt:137
+msgid ""
+"If you want to replace many blobs, trees or commits that are part of a "
+"string of commits, you may just want to create a replacement string of "
+"commits and then only replace the commit at the tip of the target string of "
+"commits with the commit at the tip of the replacement string of commits."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stripspace.txt:14
-#, no-wrap
+#: en/git-replace.txt:144
 msgid ""
-"'git stripspace' [-s | --strip-comments]\n"
-"'git stripspace' [-c | --comment-lines]\n"
+"Comparing blobs or trees that have been replaced with those that replace "
+"them will not work properly. And using `git reset --hard` to go back to a "
+"replaced commit will move the branch to the replacement commit instead of "
+"the replaced commit."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stripspace.txt:21
+#: en/git-replace.txt:147
 msgid ""
-"Read text, such as commit messages, notes, tags and branch descriptions, "
-"from the standard input and clean it in the manner used by Git."
+"There may be other problems when using 'git rev-list' related to pending "
+"objects."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stripspace.txt:23
-msgid "With no arguments, this will:"
+#: en/git-replace.txt:158
+msgid ""
+"linkgit:git-hash-object[1] linkgit:git-filter-branch[1] linkgit:git-"
+"rebase[1] linkgit:git-tag[1] linkgit:git-branch[1] linkgit:git-commit[1] "
+"linkgit:git-var[1] linkgit:git[1]"
 msgstr ""
 
-#. type: Plain text
-#: en/git-stripspace.txt:25
-msgid "remove trailing whitespace from all lines"
+#. type: Title =
+#: en/git-request-pull.txt:2
+#, no-wrap
+msgid "git-request-pull(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stripspace.txt:26
-msgid "collapse multiple consecutive empty lines into one empty line"
+#: en/git-request-pull.txt:7
+msgid "git-request-pull - Generates a summary of pending changes"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stripspace.txt:27
-msgid "remove empty lines from the beginning and end of the input"
+#: en/git-request-pull.txt:12
+#, no-wrap
+msgid "'git request-pull' [-p] <start> <url> [<end>]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stripspace.txt:28
-msgid "add a missing '\\n' to the last line if necessary."
+#: en/git-request-pull.txt:20
+msgid ""
+"Generate a request asking your upstream project to pull changes into their "
+"tree.  The request, printed to the standard output, begins with the branch "
+"description, summarizes the changes and indicates from where they can be "
+"pulled."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stripspace.txt:31
+#: en/git-request-pull.txt:25
 msgid ""
-"In the case where the input consists entirely of whitespace characters, no "
-"output will be produced."
+"The upstream project is expected to have the commit named by `<start>` and "
+"the output asks it to integrate the changes you made since that commit, up "
+"to the commit named by `<end>`, by visiting the repository named by `<url>`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stripspace.txt:35
-#, no-wrap
-msgid ""
-"*NOTE*: This is intended for cleaning metadata, prefer the "
-"`--whitespace=fix`\n"
-"mode of linkgit:git-apply[1] for correcting whitespace of patches or files "
-"in\n"
-"the repository.\n"
+#: en/git-request-pull.txt:31
+msgid "Include patch text in the output."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-stripspace.txt:39
+#: en/git-request-pull.txt:32
 #, no-wrap
-msgid "--strip-comments"
+msgid "<start>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stripspace.txt:41
-msgid "Skip and remove all lines starting with comment character (default '#')."
+#: en/git-request-pull.txt:35
+msgid ""
+"Commit to start at.  This names a commit that is already in the upstream "
+"history."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-stripspace.txt:43
+#: en/git-request-pull.txt:36
 #, no-wrap
-msgid "--comment-lines"
-msgstr ""
-
-#. type: Plain text
-#: en/git-stripspace.txt:47
-msgid ""
-"Prepend comment character and blank to each line. Lines will automatically "
-"be terminated with a newline. On empty lines, only the comment character "
-"will be prepended."
+msgid "<url>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stripspace.txt:52
-msgid "Given the following noisy input with '$' indicating the end of a line:"
+#: en/git-request-pull.txt:38
+msgid "The repository URL to be pulled from."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-stripspace.txt:65
+#. type: Labeled list
+#: en/git-request-pull.txt:39
 #, no-wrap
-msgid ""
-"|A brief introduction   $\n"
-"|   $\n"
-"|$\n"
-"|A new paragraph$\n"
-"|# with a commented-out line    $\n"
-"|explaining lots of stuff.$\n"
-"|$\n"
-"|# An old paragraph, also commented-out. $\n"
-"|      $\n"
-"|The end.$\n"
-"|  $\n"
+msgid "<end>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-stripspace.txt:68
-msgid "Use 'git stripspace' with no arguments to obtain:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-stripspace.txt:79
-#, no-wrap
+#: en/git-request-pull.txt:42
 msgid ""
-"|A brief introduction$\n"
-"|$\n"
-"|A new paragraph$\n"
-"|# with a commented-out line$\n"
-"|explaining lots of stuff.$\n"
-"|$\n"
-"|# An old paragraph, also commented-out.$\n"
-"|$\n"
-"|The end.$\n"
+"Commit to end at (defaults to HEAD).  This names the commit at the tip of "
+"the history you are asking to be pulled."
 msgstr ""
 
 #. type: Plain text
-#: en/git-stripspace.txt:82
-msgid "Use 'git stripspace --strip-comments' to obtain:"
+#: en/git-request-pull.txt:47
+msgid ""
+"When the repository named by `<url>` has the commit at a tip of a ref that "
+"is different from the ref you have locally, you can use the `<local>:"
+"<remote>` syntax, to have its local name, a colon `:`, and its remote name."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-stripspace.txt:90
-#, no-wrap
+#. type: Plain text
+#: en/git-request-pull.txt:56
 msgid ""
-"|A brief introduction$\n"
-"|$\n"
-"|A new paragraph$\n"
-"|explaining lots of stuff.$\n"
-"|$\n"
-"|The end.$\n"
+"Imagine that you built your work on your `master` branch on top of the "
+"`v1.0` release, and want it to be integrated to the project.  First you push "
+"that change to your public repository for others to see:"
 msgstr ""
 
-#. type: Title =
-#: en/git-submodule.txt:2
+#. type: Plain text
+#: en/git-request-pull.txt:58
 #, no-wrap
-msgid "git-submodule(1)"
+msgid "\tgit push https://git.ko.xz/project master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:7
-msgid "git-submodule - Initialize, update or inspect submodules"
+#: en/git-request-pull.txt:60
+msgid "Then, you run this command:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:21
+#: en/git-request-pull.txt:62
 #, no-wrap
-msgid ""
-"'git submodule' [--quiet] add [<options>] [--] <repository> [<path>]\n"
-"'git submodule' [--quiet] status [--cached] [--recursive] [--] [<path>...]\n"
-"'git submodule' [--quiet] init [--] [<path>...]\n"
-"'git submodule' [--quiet] deinit [-f|--force] (--all|[--] <path>...)\n"
-"'git submodule' [--quiet] update [<options>] [--] [<path>...]\n"
-"'git submodule' [--quiet] summary [<options>] [--] [<path>...]\n"
-"'git submodule' [--quiet] foreach [--recursive] <command>\n"
-"'git submodule' [--quiet] sync [--recursive] [--] [<path>...]\n"
-"'git submodule' [--quiet] absorbgitdirs [--] [<path>...]\n"
+msgid "\tgit request-pull v1.0 https://git.ko.xz/project master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:26
-msgid "Inspects, updates and manages submodules."
+#: en/git-request-pull.txt:66
+msgid ""
+"which will produce a request to the upstream, summarizing the changes "
+"between the `v1.0` release and your `master`, to pull it from your public "
+"repository."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:31
+#: en/git-request-pull.txt:69
 msgid ""
-"A submodule allows you to keep another Git repository in a subdirectory of "
-"your repository. The other repository has its own history, which does not "
-"interfere with the history of the current repository. This can be used to "
-"have external dependencies such as third party libraries for example."
+"If you pushed your change to a branch whose name is different from the one "
+"you have locally, e.g."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:36
-msgid ""
-"When cloning or pulling a repository containing submodules however, these "
-"will not be checked out by default; the 'init' and 'update' subcommands will "
-"maintain submodules checked out and at appropriate revision in your working "
-"tree."
+#: en/git-request-pull.txt:71
+#, no-wrap
+msgid "\tgit push https://git.ko.xz/project master:for-linus\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:45
-msgid ""
-"Submodules are composed from a so-called `gitlink` tree entry in the main "
-"repository that refers to a particular commit object within the inner "
-"repository that is completely separate.  A record in the `.gitmodules` (see "
-"linkgit:gitmodules[5]) file at the root of the source tree assigns a logical "
-"name to the submodule and describes the default URL the submodule shall be "
-"cloned from.  The logical name can be used for overriding this URL within "
-"your local repository configuration (see 'submodule init')."
+#: en/git-request-pull.txt:73
+msgid "then you can ask that to be pulled with"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:58
-msgid ""
-"Submodules are not to be confused with remotes, which are other repositories "
-"of the same project; submodules are meant for different projects you would "
-"like to make part of your source tree, while the history of the two projects "
-"still stays completely independent and you cannot modify the contents of the "
-"submodule from within the main project.  If you want to merge the project "
-"histories and want to treat the aggregated whole as a single project from "
-"then on, you may want to add a remote for the other project and use the "
-"'subtree' merge strategy, instead of treating the other project as a "
-"submodule. Directories that come from both projects can be cloned and "
-"checked out as a whole if you choose to go that route."
+#: en/git-request-pull.txt:75
+#, no-wrap
+msgid "\tgit request-pull v1.0 https://git.ko.xz/project master:for-linus\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-submodule.txt:61
+#. type: Title =
+#: en/git-rerere.txt:2
 #, no-wrap
-msgid ""
-"add [-b <branch>] [-f|--force] [--name <name>] [--reference <repository>] "
-"[--depth <depth>] [--] <repository> [<path>]"
+msgid "git-rerere(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:65
-msgid ""
-"Add the given repository as a submodule at the given path to the changeset "
-"to be committed next to the current project: the current project is termed "
-"the \"superproject\"."
+#: en/git-rerere.txt:7
+msgid "git-rerere - Reuse recorded resolution of conflicted merges"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:73
-msgid ""
-"This requires at least one argument: <repository>. The optional argument "
-"<path> is the relative location for the cloned submodule to exist in the "
-"superproject. If <path> is not given, the \"humanish\" part of the source "
-"repository is used (\"repo\" for \"/path/to/repo.git\" and \"foo\" for "
-"\"host.xz:foo/.git\").  The <path> is also used as the submodule's logical "
-"name in its configuration entries unless `--name` is used to specify a "
-"logical name."
+#: en/git-rerere.txt:12
+#, no-wrap
+msgid "'git rerere' ['clear'|'forget' <pathspec>|'diff'|'remaining'|'status'|'gc']\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:82
+#: en/git-rerere.txt:20
 msgid ""
-"<repository> is the URL of the new submodule's origin repository.  This may "
-"be either an absolute URL, or (if it begins with ./ or ../), the location "
-"relative to the superproject's default remote repository (Please note that "
-"to specify a repository 'foo.git' which is located right next to a "
-"superproject 'bar.git', you'll have to use '../foo.git' instead of "
-"'./foo.git' - as one might expect when following the rules for relative URLs "
-"- because the evaluation of relative URLs in Git is identical to that of "
-"relative directories)."
+"In a workflow employing relatively long lived topic branches, the developer "
+"sometimes needs to resolve the same conflicts over and over again until the "
+"topic branches are done (either merged to the \"release\" branch, or sent "
+"out and accepted upstream)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:89
+#: en/git-rerere.txt:25
 msgid ""
-"The default remote is the remote of the remote tracking branch of the "
-"current branch. If no such remote tracking branch exists or the HEAD is "
-"detached, \"origin\" is assumed to be the default remote.  If the "
-"superproject doesn't have a default remote configured the superproject is "
-"its own authoritative upstream and the current working directory is used "
-"instead."
+"This command assists the developer in this process by recording conflicted "
+"automerge results and corresponding hand resolve results on the initial "
+"manual merge, and applying previously recorded hand resolutions to their "
+"corresponding automerge results."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:97
+#: en/git-rerere.txt:29
 msgid ""
-"<path> is the relative location for the cloned submodule to exist in the "
-"superproject. If <path> does not exist, then the submodule is created by "
-"cloning from the named URL. If <path> does exist and is already a valid Git "
-"repository, then this is added to the changeset without cloning. This second "
-"form is provided to ease creating a new submodule from scratch, and presumes "
-"the user will later push the submodule to the given URL."
+"You need to set the configuration variable rerere.enabled in order to enable "
+"this command."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:105
+#: en/git-rerere.txt:37
 msgid ""
-"In either case, the given URL is recorded into .gitmodules for use by "
-"subsequent users cloning the superproject. If the URL is given relative to "
-"the superproject's repository, the presumption is the superproject and "
-"submodule repositories will be kept together in the same relative location, "
-"and only the superproject's URL needs to be provided: git-submodule will "
-"correctly locate the submodule using the relative URL in .gitmodules."
+"Normally, 'git rerere' is run without arguments or user-intervention.  "
+"However, it has several commands that allow it to interact with its working "
+"state."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-submodule.txt:106
+#: en/git-rerere.txt:38
 #, no-wrap
-msgid "status [--cached] [--recursive] [--] [<path>...]"
+msgid "'clear'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:114
+#: en/git-rerere.txt:43
 msgid ""
-"Show the status of the submodules. This will print the SHA-1 of the "
-"currently checked out commit for each submodule, along with the submodule "
-"path and the output of 'git describe' for the SHA-1. Each SHA-1 will be "
-"prefixed with `-` if the submodule is not initialized, `+` if the currently "
-"checked out submodule commit does not match the SHA-1 found in the index of "
-"the containing repository and `U` if the submodule has merge conflicts."
+"Reset the metadata used by rerere if a merge resolution is to be aborted.  "
+"Calling 'git am [--skip|--abort]' or 'git rebase [--skip|--abort]' will "
+"automatically invoke this command."
 msgstr ""
 
-#. type: Plain text
-#: en/git-submodule.txt:117
-msgid ""
-"If `--recursive` is specified, this command will recurse into nested "
-"submodules, and show their status as well."
+#. type: Labeled list
+#: en/git-rerere.txt:44
+#, no-wrap
+msgid "'forget' <pathspec>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:122
+#: en/git-rerere.txt:48
 msgid ""
-"If you are only interested in changes of the currently initialized "
-"submodules with respect to the commit recorded in the index or the HEAD, "
-"linkgit:git-status[1] and linkgit:git-diff[1] will provide that information "
-"too (and can also report changes to a submodule's work tree)."
+"Reset the conflict resolutions which rerere has recorded for the current "
+"conflict in <pathspec>."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-submodule.txt:123
+#: en/git-rerere.txt:49
 #, no-wrap
-msgid "init [--] [<path>...]"
-msgstr ""
-
-#. type: Plain text
-#: en/git-submodule.txt:130
-msgid ""
-"Initialize the submodules recorded in the index (which were added and "
-"committed elsewhere) by setting `submodule.$name.url` in .git/config. It "
-"uses the same setting from .gitmodules as a template. If the URL is "
-"relative, it will be resolved using the default remote. If there is no "
-"default remote, the current repository will be assumed to be upstream."
+msgid "'diff'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:133
+#: en/git-rerere.txt:55
 msgid ""
-"Optional <path> arguments limit which submodules will be initialized.  If no "
-"path is specified, all submodules are initialized."
+"Display diffs for the current state of the resolution.  It is useful for "
+"tracking what has changed while the user is resolving conflicts.  Additional "
+"arguments are passed directly to the system 'diff' command installed in PATH."
 msgstr ""
 
-#. type: Plain text
-#: en/git-submodule.txt:141
-msgid ""
-"When present, it will also copy the value of `submodule.$name.update`.  This "
-"command does not alter existing information in .git/config.  You can then "
-"customize the submodule clone URLs in .git/config for your local setup and "
-"proceed to `git submodule update`; you can also just use `git submodule "
-"update --init` without the explicit 'init' step if you do not intend to "
-"customize any submodule locations."
+#. type: Labeled list
+#: en/git-rerere.txt:56
+#, no-wrap
+msgid "'status'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:143
-msgid "See the add subcommand for the defintion of default remote."
+#: en/git-rerere.txt:59
+msgid "Print paths with conflicts whose merge resolution rerere will record."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-submodule.txt:144
+#: en/git-rerere.txt:60
 #, no-wrap
-msgid "deinit [-f|--force] (--all|[--] <path>...)"
+msgid "'remaining'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:153
+#: en/git-rerere.txt:65
 msgid ""
-"Unregister the given submodules, i.e. remove the whole `submodule.$name` "
-"section from .git/config together with their work tree. Further calls to "
-"`git submodule update`, `git submodule foreach` and `git submodule sync` "
-"will skip any unregistered submodules until they are initialized again, so "
-"use this command if you don't want to have a local checkout of the submodule "
-"in your working tree anymore. If you really want to remove a submodule from "
-"the repository and commit that use linkgit:git-rm[1] instead."
+"Print paths with conflicts that have not been autoresolved by rerere.  This "
+"includes paths whose resolutions cannot be tracked by rerere, such as "
+"conflicting submodules."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-rerere.txt:66 en/git-svn.txt:511
+#, no-wrap
+msgid "'gc'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:156
+#: en/git-rerere.txt:74
 msgid ""
-"When the command is run without pathspec, it errors out, instead of "
-"deinit-ing everything, to prevent mistakes."
+"Prune records of conflicted merges that occurred a long time ago.  By "
+"default, unresolved conflicts older than 15 days and resolved conflicts "
+"older than 60 days are pruned.  These defaults are controlled via the `gc."
+"rerereUnresolved` and `gc.rerereResolved` configuration variables "
+"respectively."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:159
+#: en/git-rerere.txt:83
 msgid ""
-"If `--force` is specified, the submodule's working tree will be removed even "
-"if it contains local modifications."
+"When your topic branch modifies an overlapping area that your master branch "
+"(or upstream) touched since your topic branch forked from it, you may want "
+"to test it with the latest master, even before your topic branch is ready to "
+"be pushed upstream:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-submodule.txt:160
+#. type: delimited block -
+#: en/git-rerere.txt:88
 #, no-wrap
 msgid ""
-"update [--init] [--remote] [-N|--no-fetch] [--[no-]recommend-shallow] "
-"[-f|--force] [--checkout|--rebase|--merge] [--reference <repository>] "
-"[--depth <depth>] [--recursive] [--jobs <n>] [--] [<path>...]"
+"              o---*---o topic\n"
+"             /\n"
+"    o---o---o---*---o---o master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:171
+#: en/git-rerere.txt:92
 msgid ""
-"Update the registered submodules to match what the superproject expects by "
-"cloning missing submodules and updating the working tree of the "
-"submodules. The \"updating\" can be done in several ways depending on "
-"command line options and the value of `submodule.<name>.update` "
-"configuration variable. The command line option takes precedence over the "
-"configuration variable. if neither is given, a checkout is performed.  "
-"update procedures supported both from the command line as well as setting "
-"`submodule.<name>.update`:"
+"For such a test, you need to merge master and topic somehow.  One way to do "
+"it is to pull master into the topic branch:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-submodule.txt:172
+#. type: delimited block -
+#: en/git-rerere.txt:96
 #, no-wrap
-msgid "checkout"
+msgid ""
+"\t$ git checkout topic\n"
+"\t$ git merge master\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-submodule.txt:173
-msgid "the commit recorded in the superproject will be"
+#. type: delimited block -
+#: en/git-rerere.txt:100
+#, no-wrap
+msgid ""
+"              o---*---o---+ topic\n"
+"             /           /\n"
+"    o---o---o---*---o---o master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:174
-#, no-wrap
-msgid "checked out in the submodule on a detached HEAD.\n"
+#: en/git-rerere.txt:106
+msgid ""
+"The commits marked with `*` touch the same area in the same file; you need "
+"to resolve the conflicts when creating the commit marked with `+`.  Then you "
+"can test the result to make sure your work-in-progress still works with what "
+"is in the latest master."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:179
+#: en/git-rerere.txt:114
 msgid ""
-"If `--force` is specified, the submodule will be checked out (using `git "
-"checkout --force` if appropriate), even if the commit specified in the index "
-"of the containing repository already matches the commit checked out in the "
-"submodule."
+"After this test merge, there are two ways to continue your work on the "
+"topic.  The easiest is to build on top of the test merge commit `+`, and "
+"when your work in the topic branch is finally ready, pull the topic branch "
+"into master, and/or ask the upstream to pull from you.  By that time, "
+"however, the master or the upstream might have been advanced since the test "
+"merge `+`, in which case the final commit graph would look like this:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-submodule.txt:180
+#. type: delimited block -
+#: en/git-rerere.txt:121
 #, no-wrap
-msgid "rebase"
+msgid ""
+"\t$ git checkout topic\n"
+"\t$ git merge master\n"
+"\t$ ... work on both topic and master branches\n"
+"\t$ git checkout master\n"
+"\t$ git merge topic\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-submodule.txt:181
-msgid "the current branch of the submodule will be rebased"
+#. type: delimited block -
+#: en/git-rerere.txt:125
+#, no-wrap
+msgid ""
+"              o---*---o---+---o---o topic\n"
+"             /           /         \\\n"
+"    o---o---o---*---o---o---o---o---+ master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:182
-#, no-wrap
-msgid "onto the commit recorded in the superproject.\n"
+#: en/git-rerere.txt:133
+msgid ""
+"When your topic branch is long-lived, however, your topic branch would end "
+"up having many such \"Merge from master\" commits on it, which would "
+"unnecessarily clutter the development history.  Readers of the Linux kernel "
+"mailing list may remember that Linus complained about such too frequent test "
+"merges when a subsystem maintainer asked to pull from a branch full of "
+"\"useless merges\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:184
-msgid "the commit recorded in the superproject will be merged"
+#: en/git-rerere.txt:137
+msgid ""
+"As an alternative, to keep the topic branch clean of test merges, you could "
+"blow away the test merge, and keep building on top of the tip before the "
+"test merge:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-submodule.txt:185
+#. type: delimited block -
+#: en/git-rerere.txt:145
 #, no-wrap
-msgid "into the current branch in the submodule.\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-submodule.txt:188
 msgid ""
-"The following procedures are only available via the "
-"`submodule.<name>.update` configuration variable:"
+"\t$ git checkout topic\n"
+"\t$ git merge master\n"
+"\t$ git reset --hard HEAD^ ;# rewind the test merge\n"
+"\t$ ... work on both topic and master branches\n"
+"\t$ git checkout master\n"
+"\t$ git merge topic\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-submodule.txt:189
+#. type: delimited block -
+#: en/git-rerere.txt:149
 #, no-wrap
-msgid "custom command"
-msgstr ""
-
-#. type: Plain text
-#: en/git-submodule.txt:190
-msgid "arbitrary shell command that takes a single"
+msgid ""
+"              o---*---o-------o---o topic\n"
+"             /                     \\\n"
+"    o---o---o---*---o---o---o---o---+ master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:194
-#, no-wrap
+#: en/git-rerere.txt:159
 msgid ""
-"argument (the sha1 of the commit recorded in the\n"
-"superproject) is executed. When `submodule.<name>.update`\n"
-"is set to '!command', the remainder after the exclamation mark\n"
-"is the custom command.\n"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-submodule.txt:195 en/diff-options.txt:254
-#, no-wrap
-msgid "none"
+"This would leave only one merge commit when your topic branch is finally "
+"ready and merged into the master branch.  This merge would require you to "
+"resolve the conflict, introduced by the commits marked with `*`.  However, "
+"this conflict is often the same conflict you resolved when you created the "
+"test merge you blew away.  'git rerere' helps you resolve this final "
+"conflicted merge using the information from your earlier hand resolve."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:196
-msgid "the submodule is not updated."
+#: en/git-rerere.txt:167
+msgid ""
+"Running the 'git rerere' command immediately after a conflicted automerge "
+"records the conflicted working tree files, with the usual conflict markers "
+"`<<<<<<<`, `=======`, and `>>>>>>>` in them.  Later, after you are done "
+"resolving the conflicts, running 'git rerere' again will record the resolved "
+"state of these files.  Suppose you did this when you created the test merge "
+"of master into the topic branch."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:200
+#: en/git-rerere.txt:177
 msgid ""
-"If the submodule is not yet initialized, and you just want to use the "
-"setting as stored in .gitmodules, you can automatically initialize the "
-"submodule with the `--init` option."
+"Next time, after seeing the same conflicted automerge, running 'git rerere' "
+"will perform a three-way merge between the earlier conflicted automerge, the "
+"earlier manual resolution, and the current conflicted automerge.  If this "
+"three-way merge resolves cleanly, the result is written out to your working "
+"tree file, so you do not have to manually resolve it.  Note that 'git "
+"rerere' leaves the index file alone, so you still need to do the final "
+"sanity checks with `git diff` (or `git diff -c`) and 'git add' when you are "
+"satisfied."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:203
+#: en/git-rerere.txt:185
 msgid ""
-"If `--recursive` is specified, this command will recurse into the registered "
-"submodules, and update any nested submodules within."
+"As a convenience measure, 'git merge' automatically invokes 'git rerere' "
+"upon exiting with a failed automerge and 'git rerere' records the hand "
+"resolve when it is a new conflict, or reuses the earlier hand resolve when "
+"it is not.  'git commit' also invokes 'git rerere' when committing a merge "
+"result.  What this means is that you do not have to do anything special "
+"yourself (besides enabling the rerere.enabled config variable)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-submodule.txt:204
-#, no-wrap
+#. type: Plain text
+#: en/git-rerere.txt:190
 msgid ""
-"summary [--cached|--files] [(-n|--summary-limit) <n>] [commit] [--] "
-"[<path>...]"
+"In our example, when you do the test merge, the manual resolution is "
+"recorded, and it will be reused when you do the actual merge later with the "
+"updated master and topic branch, as long as the recorded resolution is still "
+"applicable."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:213
+#: en/git-rerere.txt:194
 msgid ""
-"Show commit summary between the given commit (defaults to HEAD) and working "
-"tree/index. For a submodule in question, a series of commits in the "
-"submodule between the given super project commit and the index or working "
-"tree (switched by `--cached`) are shown. If the option `--files` is given, "
-"show the series of commits in the submodule between the index of the super "
-"project and the working tree of the submodule (this option doesn't allow to "
-"use the `--cached` option or to provide an explicit commit)."
+"The information 'git rerere' records is also used when running 'git "
+"rebase'.  After blowing away the test merge and continuing development on "
+"the topic branch:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-submodule.txt:216
+#. type: delimited block -
+#: en/git-rerere.txt:199
+#, no-wrap
 msgid ""
-"Using the `--submodule=log` option with linkgit:git-diff[1] will provide "
-"that information too."
+"              o---*---o-------o---o topic\n"
+"             /\n"
+"    o---o---o---*---o---o---o---o   master\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-submodule.txt:217
+#. type: delimited block -
+#: en/git-rerere.txt:201
 #, no-wrap
-msgid "foreach [--recursive] <command>"
+msgid "\t$ git rebase master topic\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-submodule.txt:233
+#. type: delimited block -
+#: en/git-rerere.txt:205
+#, no-wrap
 msgid ""
-"Evaluates an arbitrary shell command in each checked out submodule.  The "
-"command has access to the variables $name, $path, $sha1 and $toplevel: $name "
-"is the name of the relevant submodule section in .gitmodules, $path is the "
-"name of the submodule directory relative to the superproject, $sha1 is the "
-"commit as recorded in the superproject, and $toplevel is the absolute path "
-"to the top-level of the superproject.  Any submodules defined in the "
-"superproject but not checked out are ignored by this command. Unless given "
-"`--quiet`, foreach prints the name of each submodule before evaluating the "
-"command.  If `--recursive` is given, submodules are traversed recursively "
-"(i.e.  the given shell command is evaluated in nested submodules as well).  "
-"A non-zero return from the command in any submodule causes the processing to "
-"terminate. This can be overridden by adding '|| :' to the end of the "
-"command."
+"\t\t\t\t  o---*---o-------o---o topic\n"
+"\t\t\t\t /\n"
+"    o---o---o---*---o---o---o---o   master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:236
+#: en/git-rerere.txt:213
 msgid ""
-"As an example, the command below will show the path and currently checked "
-"out commit for each submodule:"
+"you could run `git rebase master topic`, to bring yourself up to date before "
+"your topic is ready to be sent upstream.  This would result in falling back "
+"to a three-way merge, and it would conflict the same way as the test merge "
+"you resolved earlier.  'git rerere' will be run by 'git rebase' to help you "
+"resolve this conflict."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-submodule.txt:239
-#, no-wrap
-msgid "git submodule foreach 'echo $path `git rev-parse HEAD`'\n"
+#. type: Plain text
+#: en/git-rerere.txt:219
+msgid ""
+"[NOTE] 'git rerere' relies on the conflict markers in the file to detect the "
+"conflict.  If the file already contains lines that look the same as lines "
+"with conflict markers, 'git rerere' may fail to record a conflict "
+"resolution.  To work around this, the `conflict-marker-size` setting in "
+"linkgit:gitattributes[5] can be used."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-submodule.txt:241
+#. type: Title =
+#: en/git-reset.txt:2
 #, no-wrap
-msgid "sync [--recursive] [--] [<path>...]"
+msgid "git-reset(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:248
-msgid ""
-"Synchronizes submodules' remote URL configuration setting to the value "
-"specified in .gitmodules. It will only affect those submodules which already "
-"have a URL entry in .git/config (that is the case when they are initialized "
-"or freshly added). This is useful when submodule URLs change upstream and "
-"you need to update your local repositories accordingly."
+#: en/git-reset.txt:7
+msgid "git-reset - Reset current HEAD to the specified state"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:251
+#: en/git-reset.txt:14
+#, no-wrap
 msgid ""
-"\"git submodule sync\" synchronizes all submodules while \"git submodule "
-"sync \\-- A\" synchronizes submodule \"A\" only."
+"'git reset' [-q] [<tree-ish>] [--] <paths>...\n"
+"'git reset' (--patch | -p) [<tree-ish>] [--] [<paths>...]\n"
+"'git reset' [--soft | --mixed [-N] | --hard | --merge | --keep] [-q] [<commit>]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:254
+#: en/git-reset.txt:21
 msgid ""
-"If `--recursive` is specified, this command will recurse into the registered "
-"submodules, and sync any nested submodules within."
+"In the first and second form, copy entries from `<tree-ish>` to the index.  "
+"In the third form, set the current branch head (`HEAD`) to `<commit>`, "
+"optionally modifying index and working tree to match.  The `<tree-ish>`/"
+"`<commit>` defaults to `HEAD` in all forms."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-submodule.txt:255
+#: en/git-reset.txt:22
 #, no-wrap
-msgid "absorbgitdirs"
+msgid "'git reset' [-q] [<tree-ish>] [--] <paths>..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:262
+#: en/git-reset.txt:26
 msgid ""
-"If a git directory of a submodule is inside the submodule, move the git "
-"directory of the submodule into its superprojects `$GIT_DIR/modules` path "
-"and then connect the git directory and its working directory by setting the "
-"`core.worktree` and adding a .git file pointing to the git directory "
-"embedded in the superprojects git directory."
+"This form resets the index entries for all `<paths>` to their state at "
+"`<tree-ish>`.  (It does not affect the working tree or the current branch.)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:266
+#: en/git-reset.txt:29
 msgid ""
-"A repository that was cloned independently and later added as a submodule or "
-"old setups have the submodules git directory inside the submodule instead of "
-"embedded into the superprojects git directory."
+"This means that `git reset <paths>` is the opposite of `git add <paths>`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:268
-msgid "This command is recursive by default."
+#: en/git-reset.txt:36
+msgid ""
+"After running `git reset <paths>` to update the index entry, you can use "
+"linkgit:git-checkout[1] to check the contents out of the index to the "
+"working tree.  Alternatively, using linkgit:git-checkout[1] and specifying a "
+"commit, you can copy the contents of a path out of a commit to the index and "
+"to the working tree in one go."
 msgstr ""
 
-#. type: Plain text
-#: en/git-submodule.txt:274
-msgid "Only print error messages."
+#. type: Labeled list
+#: en/git-reset.txt:37
+#, no-wrap
+msgid "'git reset' (--patch | -p) [<tree-ish>] [--] [<paths>...]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:278
+#: en/git-reset.txt:41
 msgid ""
-"This option is only valid for the deinit command. Unregister all submodules "
-"in the working tree."
+"Interactively select hunks in the difference between the index and `<tree-"
+"ish>` (defaults to `HEAD`).  The chosen hunks are applied in reverse to the "
+"index."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:286
+#: en/git-reset.txt:45
 msgid ""
-"Branch of repository to add as submodule.  The name of the branch is "
-"recorded as `submodule.<name>.branch` in `.gitmodules` for `update "
-"--remote`.  A special value of `.` is used to indicate that the name of the "
-"branch in the submodule should be the same name as the current branch in the "
-"current repository."
+"This means that `git reset -p` is the opposite of `git add -p`, i.e.  you "
+"can use it to selectively reset hunks. See the ``Interactive Mode'' section "
+"of linkgit:git-add[1] to learn how to operate the `--patch` mode."
 msgstr ""
 
-#. type: Plain text
-#: en/git-submodule.txt:299
-msgid ""
-"This option is only valid for add, deinit and update commands.  When running "
-"add, allow adding an otherwise ignored submodule path.  When running deinit "
-"the submodule working trees will be removed even if they contain local "
-"changes.  When running update (only effective with the checkout procedure), "
-"throw away local changes in submodules when switching to a different commit; "
-"and always run a checkout operation in the submodule, even if the commit "
-"listed in the index of the containing repository matches the commit checked "
-"out in the submodule."
+#. type: Labeled list
+#: en/git-reset.txt:46
+#, no-wrap
+msgid "'git reset' [<mode>] [<commit>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:304
+#: en/git-reset.txt:51
 msgid ""
-"This option is only valid for status and summary commands.  These commands "
-"typically use the commit found in the submodule HEAD, but with this option, "
-"the commit stored in the index is used instead."
+"This form resets the current branch head to `<commit>` and possibly updates "
+"the index (resetting it to the tree of `<commit>`) and the working tree "
+"depending on `<mode>`. If `<mode>` is omitted, defaults to `--mixed`. The "
+"`<mode>` must be one of the following:"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-submodule.txt:305
+#: en/git-reset.txt:53
 #, no-wrap
-msgid "--files"
+msgid "--soft"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:309
+#: en/git-reset.txt:58
 msgid ""
-"This option is only valid for the summary command. This command compares the "
-"commit in the index with that in the submodule HEAD when this option is "
-"used."
+"Does not touch the index file or the working tree at all (but resets the "
+"head to `<commit>`, just like all modes do). This leaves all your changed "
+"files \"Changes to be committed\", as `git status` would put it."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-submodule.txt:311
+#: en/git-reset.txt:59
 #, no-wrap
-msgid "--summary-limit"
+msgid "--mixed"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:317
+#: en/git-reset.txt:63
 msgid ""
-"This option is only valid for the summary command.  Limit the summary size "
-"(number of commits shown in total).  Giving 0 will disable the summary; a "
-"negative number means unlimited (the default). This limit only applies to "
-"modified submodules. The size is always limited to 1 for "
-"added/deleted/typechanged submodules."
+"Resets the index but not the working tree (i.e., the changed files are "
+"preserved but not marked for commit) and reports what has not been updated. "
+"This is the default action."
+msgstr ""
+
+#. type: Plain text
+#: en/git-reset.txt:66
+msgid ""
+"If `-N` is specified, removed paths are marked as intent-to-add (see linkgit:"
+"git-add[1])."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-submodule.txt:318
+#: en/git-reset.txt:67
 #, no-wrap
-msgid "--remote"
+msgid "--hard"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:327
+#: en/git-reset.txt:70
 msgid ""
-"This option is only valid for the update command.  Instead of using the "
-"superproject's recorded SHA-1 to update the submodule, use the status of the "
-"submodule's remote-tracking branch.  The remote used is branch's remote "
-"(`branch.<name>.remote`), defaulting to `origin`.  The remote branch used "
-"defaults to `master`, but the branch name may be overridden by setting the "
-"`submodule.<name>.branch` option in either `.gitmodules` or `.git/config` "
-"(with `.git/config` taking precedence)."
+"Resets the index and working tree. Any changes to tracked files in the "
+"working tree since `<commit>` are discarded."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:333
+#: en/git-reset.txt:78
 msgid ""
-"This works for any of the supported update procedures (`--checkout`, "
-"`--rebase`, etc.).  The only change is the source of the target SHA-1.  For "
-"example, `submodule update --remote --merge` will merge upstream submodule "
-"changes into the submodules, while `submodule update --merge` will merge "
-"superproject gitlink changes into the submodules."
+"Resets the index and updates the files in the working tree that are "
+"different between `<commit>` and `HEAD`, but keeps those which are different "
+"between the index and working tree (i.e. which have changes which have not "
+"been added).  If a file that is different between `<commit>` and the index "
+"has unstaged changes, reset is aborted."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:338
+#: en/git-reset.txt:81
 msgid ""
-"In order to ensure a current tracking branch state, `update --remote` "
-"fetches the submodule's remote repository before calculating the SHA-1.  If "
-"you don't want to fetch, you should use `submodule update --remote "
-"--no-fetch`."
+"In other words, `--merge` does something like a `git read-tree -u -m "
+"<commit>`, but carries forward unmerged index entries."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:348
+#: en/git-reset.txt:87
 msgid ""
-"Use this option to integrate changes from the upstream subproject with your "
-"submodule's current HEAD.  Alternatively, you can run `git pull` from the "
-"submodule, which is equivalent except for the remote branch name: `update "
-"--remote` uses the default upstream repository and "
-"`submodule.<name>.branch`, while `git pull` uses the submodule's "
-"`branch.<name>.merge`.  Prefer `submodule.<name>.branch` if you want to "
-"distribute the default upstream branch with the superproject and "
-"`branch.<name>.merge` if you want a more native feel while working in the "
-"submodule itself."
+"Resets index entries and updates files in the working tree that are "
+"different between `<commit>` and `HEAD`.  If a file that is different "
+"between `<commit>` and `HEAD` has local changes, reset is aborted."
+msgstr ""
+
+#. type: Plain text
+#: en/git-reset.txt:91
+msgid ""
+"If you want to undo a commit other than the latest on a branch, linkgit:git-"
+"revert[1] is your friend."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-submodule.txt:350
+#: en/git-reset.txt:98
 #, no-wrap
-msgid "--no-fetch"
+msgid "--no-quiet"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:353
+#: en/git-reset.txt:102
 msgid ""
-"This option is only valid for the update command.  Don't fetch new objects "
-"from the remote site."
+"Be quiet, only report errors. The default behavior is set by the `reset."
+"quiet` config option. `--quiet` and `--no-quiet` will override the default "
+"behavior."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-submodule.txt:354
+#: en/git-reset.txt:107
 #, no-wrap
-msgid "--checkout"
+msgid "Undo add"
 msgstr ""
 
-#. type: Plain text
-#: en/git-submodule.txt:362
+#. type: delimited block -
+#: en/git-reset.txt:115
+#, no-wrap
 msgid ""
-"This option is only valid for the update command.  Checkout the commit "
-"recorded in the superproject on a detached HEAD in the submodule. This is "
-"the default behavior, the main use of this option is to override "
-"`submodule.$name.update` when set to a value other than `checkout`.  If the "
-"key `submodule.$name.update` is either not explicitly set or set to "
-"`checkout`, this option is implicit."
+"$ edit                                     <1>\n"
+"$ git add frotz.c filfre.c\n"
+"$ mailx                                    <2>\n"
+"$ git reset                                <3>\n"
+"$ git pull git://info.example.com/ nitfol  <4>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:372
+#: en/git-reset.txt:121
 msgid ""
-"This option is only valid for the update command.  Merge the commit recorded "
-"in the superproject into the current branch of the submodule. If this option "
-"is given, the submodule's HEAD will not be detached. If a merge failure "
-"prevents this process, you will have to resolve the resulting conflicts "
-"within the submodule with the usual conflict resolution tools.  If the key "
-"`submodule.$name.update` is set to `merge`, this option is implicit."
+"You are happily working on something, and find the changes in these files "
+"are in good order.  You do not want to see them when you run `git diff`, "
+"because you plan to work on other files and changes with these files are "
+"distracting."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-submodule.txt:373
-#, no-wrap
-msgid "--rebase"
+#. type: Plain text
+#: en/git-reset.txt:122
+msgid "Somebody asks you to pull, and the changes sound worthy of merging."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:381
+#: en/git-reset.txt:127
 msgid ""
-"This option is only valid for the update command.  Rebase the current branch "
-"onto the commit recorded in the superproject. If this option is given, the "
-"submodule's HEAD will not be detached. If a merge failure prevents this "
-"process, you will have to resolve these failures with "
-"linkgit:git-rebase[1].  If the key `submodule.$name.update` is set to "
-"`rebase`, this option is implicit."
+"However, you already dirtied the index (i.e. your index does not match the "
+"`HEAD` commit).  But you know the pull you are going to make does not affect "
+"`frotz.c` or `filfre.c`, so you revert the index changes for these two "
+"files.  Your changes in working tree remain there."
+msgstr ""
+
+#. type: Plain text
+#: en/git-reset.txt:129
+msgid ""
+"Then you can pull and merge, leaving `frotz.c` and `filfre.c` changes still "
+"in the working tree."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-submodule.txt:382
+#: en/git-reset.txt:130
 #, no-wrap
-msgid "--init"
+msgid "Undo a commit and redo"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-reset.txt:137
+#, no-wrap
+msgid ""
+"$ git commit ...\n"
+"$ git reset --soft HEAD^      <1>\n"
+"$ edit                        <2>\n"
+"$ git commit -a -c ORIG_HEAD  <3>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:386
+#: en/git-reset.txt:142
 msgid ""
-"This option is only valid for the update command.  Initialize all submodules "
-"for which \"git submodule init\" has not been called so far before updating."
+"This is most often done when you remembered what you just committed is "
+"incomplete, or you misspelled your commit message, or both.  Leaves working "
+"tree as it was before \"reset\"."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-submodule.txt:387
-#, no-wrap
-msgid "--name"
+#. type: Plain text
+#: en/git-reset.txt:143
+msgid "Make corrections to working tree files."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:391
+#: en/git-reset.txt:146
 msgid ""
-"This option is only valid for the add command. It sets the submodule's name "
-"to the given string instead of defaulting to its path. The name must be "
-"valid as a directory name and may not end with a '/'."
+"\"reset\" copies the old head to `.git/ORIG_HEAD`; redo the commit by "
+"starting with its log message.  If you do not need to edit the message "
+"further, you can give `-C` option instead."
+msgstr ""
+
+#. type: Plain text
+#: en/git-reset.txt:148
+msgid "See also the `--amend` option to linkgit:git-commit[1]."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-submodule.txt:392
+#: en/git-reset.txt:149
 #, no-wrap
-msgid "--reference <repository>"
+msgid "Undo a commit, making it a topic branch"
 msgstr ""
 
-#. type: Plain text
-#: en/git-submodule.txt:396
+#. type: delimited block -
+#: en/git-reset.txt:155
+#, no-wrap
 msgid ""
-"This option is only valid for add and update commands.  These commands "
-"sometimes need to clone a remote repository. In this case, this option will "
-"be passed to the linkgit:git-clone[1] command."
+"$ git branch topic/wip     <1>\n"
+"$ git reset --hard HEAD~3  <2>\n"
+"$ git checkout topic/wip   <3>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:399
-#, no-wrap
+#: en/git-reset.txt:161
 msgid ""
-"*NOTE*: Do *not* use this option unless you have read the note\n"
-"for linkgit:git-clone[1]'s `--reference` and `--shared` options carefully.\n"
+"You have made some commits, but realize they were premature to be in the "
+"`master` branch.  You want to continue polishing them in a topic branch, so "
+"create `topic/wip` branch off of the current `HEAD`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:405
-msgid ""
-"This option is only valid for foreach, update, status and sync commands.  "
-"Traverse submodules recursively. The operation is performed not only in the "
-"submodules of the current repo, but also in any nested submodules inside "
-"those submodules (and so on)."
+#: en/git-reset.txt:162
+msgid "Rewind the master branch to get rid of those three commits."
+msgstr ""
+
+#. type: Plain text
+#: en/git-reset.txt:163
+msgid "Switch to `topic/wip` branch and keep working."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-submodule.txt:406
+#: en/git-reset.txt:164
 #, no-wrap
-msgid "--depth"
+msgid "Undo commits permanently"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-reset.txt:169
+#, no-wrap
+msgid ""
+"$ git commit ...\n"
+"$ git reset --hard HEAD~3   <1>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:410
+#: en/git-reset.txt:176
 msgid ""
-"This option is valid for add and update commands. Create a 'shallow' clone "
-"with a history truncated to the specified number of revisions.  See "
-"linkgit:git-clone[1]"
+"The last three commits (`HEAD`, `HEAD^`, and `HEAD~2`) were bad and you do "
+"not want to ever see them again.  Do *not* do this if you have already given "
+"these commits to somebody else.  (See the \"RECOVERING FROM UPSTREAM REBASE"
+"\" section in linkgit:git-rebase[1] for the implications of doing so.)"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-submodule.txt:411
+#: en/git-reset.txt:177
 #, no-wrap
-msgid "--[no-]recommend-shallow"
+msgid "Undo a merge or pull"
 msgstr ""
 
-#. type: Plain text
-#: en/git-submodule.txt:416
+#. type: delimited block -
+#: en/git-reset.txt:189
+#, no-wrap
 msgid ""
-"This option is only valid for the update command.  The initial clone of a "
-"submodule will use the recommended `submodule.<name>.shallow` as provided by "
-"the .gitmodules file by default. To ignore the suggestions use "
-"`--no-recommend-shallow`."
+"$ git pull                         <1>\n"
+"Auto-merging nitfol\n"
+"CONFLICT (content): Merge conflict in nitfol\n"
+"Automatic merge failed; fix conflicts and then commit the result.\n"
+"$ git reset --hard                 <2>\n"
+"$ git pull . topic/branch          <3>\n"
+"Updating from 41223... to 13134...\n"
+"Fast-forward\n"
+"$ git reset --hard ORIG_HEAD       <4>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:422
+#: en/git-reset.txt:194
 msgid ""
-"This option is only valid for the update command.  Clone new submodules in "
-"parallel with as many jobs.  Defaults to the `submodule.fetchJobs` option."
+"Try to update from the upstream resulted in a lot of conflicts; you were not "
+"ready to spend a lot of time merging right now, so you decide to do that "
+"later."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:427
+#: en/git-reset.txt:197
 msgid ""
-"Paths to submodule(s). When specified this will restrict the command to only "
-"operate on the submodules found at the specified paths.  (This argument is "
-"required with add)."
+"\"pull\" has not made merge commit, so `git reset --hard` which is a synonym "
+"for `git reset --hard HEAD` clears the mess from the index file and the "
+"working tree."
 msgstr ""
 
 #. type: Plain text
-#: en/git-submodule.txt:435
+#: en/git-reset.txt:199
 msgid ""
-"When initializing submodules, a .gitmodules file in the top-level directory "
-"of the containing repository is used to find the url of each submodule.  "
-"This file should be formatted in the same way as `$GIT_DIR/config`. The key "
-"to each submodule url is \"submodule.$name.url\".  See linkgit:gitmodules[5] "
-"for details."
-msgstr ""
-
-#. type: Title =
-#: en/git-svn.txt:2
-#, no-wrap
-msgid "git-svn(1)"
+"Merge a topic branch into the current branch, which resulted in a fast-"
+"forward."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:7
-msgid "git-svn - Bidirectional operation between a Subversion repository and Git"
+#: en/git-reset.txt:204
+msgid ""
+"But you decided that the topic branch is not ready for public consumption "
+"yet.  \"pull\" or \"merge\" always leaves the original tip of the current "
+"branch in `ORIG_HEAD`, so resetting hard to it brings your index file and "
+"the working tree back to that state, and resets the tip of the branch to "
+"that commit."
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:12
+#. type: Labeled list
+#: en/git-reset.txt:205
 #, no-wrap
-msgid "'git svn' <command> [options] [arguments]\n"
+msgid "Undo a merge or pull inside a dirty working tree"
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:18
+#. type: delimited block -
+#: en/git-reset.txt:214
+#, no-wrap
 msgid ""
-"'git svn' is a simple conduit for changesets between Subversion and Git.  It "
-"provides a bidirectional flow of changes between a Subversion and a Git "
-"repository."
+"$ git pull                         <1>\n"
+"Auto-merging nitfol\n"
+"Merge made by recursive.\n"
+" nitfol                |   20 +++++----\n"
+" ...\n"
+"$ git reset --merge ORIG_HEAD      <2>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:23
+#: en/git-reset.txt:220
 msgid ""
-"'git svn' can track a standard Subversion repository, following the common "
-"\"trunk/branches/tags\" layout, with the --stdlayout option.  It can also "
-"follow branches and tags in any layout with the -T/-t/-b options (see "
-"options to 'init' below, and also the 'clone' command)."
+"Even if you may have local modifications in your working tree, you can "
+"safely say `git pull` when you know that the change in the other branch does "
+"not overlap with them."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:27
+#: en/git-reset.txt:225
 msgid ""
-"Once tracking a Subversion repository (with any of the above methods), the "
-"Git repository can be updated from Subversion by the 'fetch' command and "
-"Subversion updated from Git by the 'dcommit' command."
+"After inspecting the result of the merge, you may find that the change in "
+"the other branch is unsatisfactory.  Running `git reset --hard ORIG_HEAD` "
+"will let you go back to where you were, but it will discard your local "
+"changes, which you do not want.  `git reset --merge` keeps your local "
+"changes."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:31
+#: en/git-reset.txt:227 en/git-stash.txt:229
 #, no-wrap
-msgid "'init'"
+msgid "Interrupted workflow"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:39
+#: en/git-reset.txt:233
 msgid ""
-"Initializes an empty Git repository with additional metadata directories for "
-"'git svn'.  The Subversion URL may be specified as a command-line argument, "
-"or as full URL arguments to -T/-t/-b.  Optionally, the target directory to "
-"operate on can be specified as a second argument.  Normally this command "
-"initializes the current directory."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-svn.txt:40
-#, no-wrap
-msgid "-T<trunk_subdir>"
+"Suppose you are interrupted by an urgent fix request while you are in the "
+"middle of a large change.  The files in your working tree are not in any "
+"shape to be committed yet, but you need to get to the other branch for a "
+"quick bugfix."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:41
+#. type: delimited block -
+#: en/git-reset.txt:244
 #, no-wrap
-msgid "--trunk=<trunk_subdir>"
+msgid ""
+"$ git checkout feature ;# you were working in \"feature\" branch and\n"
+"$ work work work       ;# got interrupted\n"
+"$ git commit -a -m \"snapshot WIP\"                 <1>\n"
+"$ git checkout master\n"
+"$ fix fix fix\n"
+"$ git commit ;# commit with real log\n"
+"$ git checkout feature\n"
+"$ git reset --soft HEAD^ ;# go back to WIP state  <2>\n"
+"$ git reset                                       <3>\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:42
-#, no-wrap
-msgid "-t<tags_subdir>"
+#. type: Plain text
+#: en/git-reset.txt:247
+msgid "This commit will get blown away so a throw-away log message is OK."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:43
-#, no-wrap
-msgid "--tags=<tags_subdir>"
+#. type: Plain text
+#: en/git-reset.txt:249
+msgid ""
+"This removes the 'WIP' commit from the commit history, and sets your working "
+"tree to the state just before you made that snapshot."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:44
-#, no-wrap
-msgid "-b<branches_subdir>"
+#. type: Plain text
+#: en/git-reset.txt:252
+msgid ""
+"At this point the index file still has all the WIP changes you committed as "
+"'snapshot WIP'.  This updates the index to show your WIP files as "
+"uncommitted."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:45
-#, no-wrap
-msgid "--branches=<branches_subdir>"
+#. type: Plain text
+#: en/git-reset.txt:254
+msgid "See also linkgit:git-stash[1]."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:47
+#: en/git-reset.txt:255
 #, no-wrap
-msgid "--stdlayout"
+msgid "Reset a single file in the index"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:58
+#: en/git-reset.txt:260
 msgid ""
-"These are optional command-line options for init.  Each of these flags can "
-"point to a relative repository path (--tags=project/tags) or a full url "
-"(--tags=https://foo.org/project/tags).  You can specify more than one --tags "
-"and/or --branches options, in case your Subversion repository places tags or "
-"branches under multiple paths.  The option --stdlayout is a shorthand way of "
-"setting trunk,tags,branches as the relative paths, which is the Subversion "
-"default. If any of the other options are given as well, they take "
-"precedence."
+"Suppose you have added a file to your index, but later decide you do not "
+"want to add it to your commit. You can remove the file from the index while "
+"keeping your changes with git reset."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:58
+#. type: delimited block -
+#: en/git-reset.txt:265
 #, no-wrap
-msgid "--no-metadata"
+msgid ""
+"$ git reset -- frotz.c                      <1>\n"
+"$ git commit -m \"Commit files in index\"     <2>\n"
+"$ git add frotz.c                           <3>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:62
+#: en/git-reset.txt:269
 msgid ""
-"Set the 'noMetadata' option in the [svn-remote] config.  This option is not "
-"recommended, please read the 'svn.noMetadata' section of this manpage before "
-"using this option."
+"This removes the file from the index while keeping it in the working "
+"directory."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:62
-#, no-wrap
-msgid "--use-svm-props"
+#. type: Plain text
+#: en/git-reset.txt:270
+msgid "This commits all other changes in the index."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:64
-msgid "Set the 'useSvmProps' option in the [svn-remote] config."
+#: en/git-reset.txt:271
+msgid "Adds the file to the index again."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:64
+#: en/git-reset.txt:272
 #, no-wrap
-msgid "--use-svnsync-props"
+msgid "Keep changes in working tree while discarding some previous commits"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:66
-msgid "Set the 'useSvnsyncProps' option in the [svn-remote] config."
+#: en/git-reset.txt:279
+msgid ""
+"Suppose you are working on something and you commit it, and then you "
+"continue working a bit more, but now you think that what you have in your "
+"working tree should be in another branch that has nothing to do with what "
+"you committed previously. You can start a new branch and reset it while "
+"keeping the changes in your working tree."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:66
+#. type: delimited block -
+#: en/git-reset.txt:288
 #, no-wrap
-msgid "--rewrite-root=<URL>"
+msgid ""
+"$ git tag start\n"
+"$ git checkout -b branch1\n"
+"$ edit\n"
+"$ git commit ...                            <1>\n"
+"$ edit\n"
+"$ git checkout -b branch2                   <2>\n"
+"$ git reset --keep start                    <3>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:68
-msgid "Set the 'rewriteRoot' option in the [svn-remote] config."
+#: en/git-reset.txt:291
+msgid "This commits your first edits in `branch1`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:68
-#, no-wrap
-msgid "--rewrite-uuid=<UUID>"
+#. type: Plain text
+#: en/git-reset.txt:295
+msgid ""
+"In the ideal world, you could have realized that the earlier commit did not "
+"belong to the new topic when you created and switched to `branch2` (i.e. "
+"`git checkout -b branch2 start`), but nobody is perfect."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:70
-msgid "Set the 'rewriteUUID' option in the [svn-remote] config."
+#: en/git-reset.txt:297
+msgid ""
+"But you can use `reset --keep` to remove the unwanted commit after you "
+"switched to `branch2`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:70
+#: en/git-reset.txt:298
 #, no-wrap
-msgid "--username=<user>"
+msgid "Split a commit apart into a sequence of commits"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:75
+#: en/git-reset.txt:306
 msgid ""
-"For transports that SVN handles authentication for (http, https, and plain "
-"svn), specify the username.  For other transports (e.g. `svn+ssh://`), you "
-"must include the username in the URL, "
-"e.g. `svn+ssh://foo@svn.bar.com/project`"
+"Suppose that you have created lots of logically separate changes and "
+"committed them together. Then, later you decide that it might be better to "
+"have each logical chunk associated with its own commit. You can use git "
+"reset to rewind history without changing the contents of your local files, "
+"and then successively use `git add -p` to interactively select which hunks "
+"to include into each commit, using `git commit -c` to pre-populate the "
+"commit message."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:75
+#. type: delimited block -
+#: en/git-reset.txt:316
 #, no-wrap
-msgid "--prefix=<prefix>"
+msgid ""
+"$ git reset -N HEAD^                        <1>\n"
+"$ git add -p                                <2>\n"
+"$ git diff --cached                         <3>\n"
+"$ git commit -c HEAD@{1}                    <4>\n"
+"...                                         <5>\n"
+"$ git add ...                               <6>\n"
+"$ git diff --cached                         <7>\n"
+"$ git commit ...                            <8>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:90
+#: en/git-reset.txt:322
 msgid ""
-"This allows one to specify a prefix which is prepended to the names of "
-"remotes if trunk/branches/tags are specified.  The prefix does not "
-"automatically include a trailing slash, so be sure you include one in the "
-"argument if that is what you want.  If --branches/-b is specified, the "
-"prefix must include a trailing slash.  Setting a prefix (with a trailing "
-"slash) is strongly encouraged in any case, as your SVN-tracking refs will "
-"then be located at \"refs/remotes/$prefix/*\", which is compatible with "
-"Git's own remote-tracking ref layout (refs/remotes/$remote/*). Setting a "
-"prefix is also useful if you wish to track multiple projects that share a "
-"common repository.  By default, the prefix is set to 'origin/'."
+"First, reset the history back one commit so that we remove the original "
+"commit, but leave the working tree with all the changes. The -N ensures that "
+"any new files added with `HEAD` are still marked so that `git add -p` will "
+"find them."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:97
+#: en/git-reset.txt:326
 msgid ""
-"Before Git v2.0, the default prefix was \"\" (no prefix). This meant that "
-"SVN-tracking refs were put at \"refs/remotes/*\", which is incompatible with "
-"how Git's own remote-tracking refs are organized.  If you still want the old "
-"default, you can get it by passing `--prefix \"\"` on the command line "
-"(`--prefix=\"\"` may not work if your Perl's Getopt::Long is < v2.37)."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-svn.txt:98 en/git-svn.txt:141
-#, no-wrap
-msgid "--ignore-paths=<regex>"
+"Next, we interactively select diff hunks to add using the `git add -p` "
+"facility. This will ask you about each diff hunk in sequence and you can use "
+"simple commands such as \"yes, include this\", \"No don't include this\" or "
+"even the very powerful \"edit\" facility."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:102
+#: en/git-reset.txt:330
 msgid ""
-"When passed to 'init' or 'clone' this regular expression will be preserved "
-"as a config key.  See 'fetch' for a description of `--ignore-paths`."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-svn.txt:102 en/git-svn.txt:170
-#, no-wrap
-msgid "--include-paths=<regex>"
+"Once satisfied with the hunks you want to include, you should verify what "
+"has been prepared for the first commit by using `git diff --cached`. This "
+"shows all the changes that have been moved into the index and are about to "
+"be committed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:106
+#: en/git-reset.txt:337
 msgid ""
-"When passed to 'init' or 'clone' this regular expression will be preserved "
-"as a config key.  See 'fetch' for a description of `--include-paths`."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-svn.txt:106
-#, no-wrap
-msgid "--no-minimize-url"
+"Next, commit the changes stored in the index. The `-c` option specifies to "
+"pre-populate the commit message from the original message that you started "
+"with in the first commit. This is helpful to avoid retyping it. The `HEAD@{1}"
+"` is a special notation for the commit that `HEAD` used to be at prior to "
+"the original reset commit (1 change ago).  See linkgit:git-reflog[1] for "
+"more details. You may also use any other valid commit reference."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:117
+#: en/git-reset.txt:339
 msgid ""
-"When tracking multiple directories (using --stdlayout, --branches, or --tags "
-"options), git svn will attempt to connect to the root (or highest allowed "
-"level) of the Subversion repository.  This default allows better tracking of "
-"history if entire projects are moved within a repository, but may cause "
-"issues on repositories where read access restrictions are in place.  Passing "
-"`--no-minimize-url` will allow git svn to accept URLs as-is without "
-"attempting to connect to a higher level directory.  This option is off by "
-"default when only one URL/branch is tracked (it would do little good)."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-svn.txt:118
-#, no-wrap
-msgid "'fetch'"
+"You can repeat steps 2-4 multiple times to break the original code into any "
+"number of commits."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:123
+#: en/git-reset.txt:342
 msgid ""
-"Fetch unfetched revisions from the Subversion remote we are tracking.  The "
-"name of the [svn-remote \"...\"] section in the $GIT_DIR/config file may be "
-"specified as an optional command-line argument."
+"Now you've split out many of the changes into their own commits, and might "
+"no longer use the patch mode of `git add`, in order to select all remaining "
+"uncommitted changes."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:126 en/git-svn.txt:227
+#: en/git-reset.txt:345
 msgid ""
-"This automatically updates the rev_map if needed (see "
-"'$GIT_DIR/svn/\\*\\*/.rev_map.*' in the FILES section below for details)."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-svn.txt:127
-#, no-wrap
-msgid "--localtime"
+"Once again, check to verify that you've included what you want to. You may "
+"also wish to verify that git diff doesn't show any remaining changes to be "
+"committed later."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:131
-msgid ""
-"Store Git commit times in the local time zone instead of UTC.  This makes "
-"'git log' (even without --date=local) show the same times that `svn log` "
-"would in the local time zone."
+#: en/git-reset.txt:346
+msgid "And finally create the final commit."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:137
-msgid ""
-"This doesn't interfere with interoperating with the Subversion repository "
-"you cloned from, but if you wish for your local Git repository to be able to "
-"interoperate with someone else's local Git repository, either don't use this "
-"option or you should both use it in the same local time zone."
+#: en/git-reset.txt:352
+msgid "The tables below show what happens when running:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:138 en/git-svn.txt:505
+#. type: delimited block -
+#: en/git-reset.txt:355
 #, no-wrap
-msgid "--parent"
+msgid "git reset --option target\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:140
-msgid "Fetch only from the SVN parent of the current HEAD."
+#: en/git-reset.txt:359
+msgid ""
+"to reset the `HEAD` to another commit (`target`) with the different reset "
+"options depending on the state of the files."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:147
+#: en/git-reset.txt:368
 msgid ""
-"This allows one to specify a Perl regular expression that will cause "
-"skipping of all matching paths from checkout from SVN.  The `--ignore-paths` "
-"option should match for every 'fetch' (including automatic fetches due to "
-"'clone', 'dcommit', 'rebase', etc) on a given repository."
+"In these tables, `A`, `B`, `C` and `D` are some different states of a file. "
+"For example, the first line of the first table means that if a file is in "
+"state `A` in the working tree, in state `B` in the index, in state `C` in "
+"`HEAD` and in state `D` in the target, then `git reset --soft target` will "
+"leave the file in the working tree in state `A` and in the index in state "
+"`B`.  It resets (i.e. moves) the `HEAD` (i.e. the tip of the current branch, "
+"if you are on one) to `target` (which has the file in state `D`)."
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:150
+#. type: delimited block .
+#: en/git-reset.txt:377
 #, no-wrap
-msgid "config key: svn-remote.<name>.ignore-paths\n"
+msgid ""
+"working index HEAD target         working index HEAD\n"
+"----------------------------------------------------\n"
+" A       B     C    D     --soft   A       B     D\n"
+"\t\t\t  --mixed  A       D     D\n"
+"\t\t\t  --hard   D       D     D\n"
+"\t\t\t  --merge (disallowed)\n"
+"\t\t\t  --keep  (disallowed)\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:153
+#. type: delimited block .
+#: en/git-reset.txt:387
+#, no-wrap
 msgid ""
-"If the ignore-paths configuration key is set, and the command-line option is "
-"also given, both regular expressions will be used."
+"working index HEAD target         working index HEAD\n"
+"----------------------------------------------------\n"
+" A       B     C    C     --soft   A       B     C\n"
+"\t\t\t  --mixed  A       C     C\n"
+"\t\t\t  --hard   C       C     C\n"
+"\t\t\t  --merge (disallowed)\n"
+"\t\t\t  --keep   A       C     C\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:157
+#. type: delimited block .
+#: en/git-reset.txt:397
 #, no-wrap
-msgid "Skip \"doc*\" directory for every fetch"
+msgid ""
+"working index HEAD target         working index HEAD\n"
+"----------------------------------------------------\n"
+" B       B     C    D     --soft   B       B     D\n"
+"\t\t\t  --mixed  B       D     D\n"
+"\t\t\t  --hard   D       D     D\n"
+"\t\t\t  --merge  D       D     D\n"
+"\t\t\t  --keep  (disallowed)\n"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-svn.txt:161
+#. type: delimited block .
+#: en/git-reset.txt:407
 #, no-wrap
-msgid "--ignore-paths=\"^doc\"\n"
+msgid ""
+"working index HEAD target         working index HEAD\n"
+"----------------------------------------------------\n"
+" B       B     C    C     --soft   B       B     C\n"
+"\t\t\t  --mixed  B       C     C\n"
+"\t\t\t  --hard   C       C     C\n"
+"\t\t\t  --merge  C       C     C\n"
+"\t\t\t  --keep   B       C     C\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:163
+#. type: delimited block .
+#: en/git-reset.txt:417
 #, no-wrap
-msgid "Skip \"branches\" and \"tags\" of first level directories"
+msgid ""
+"working index HEAD target         working index HEAD\n"
+"----------------------------------------------------\n"
+" B       C     C    D     --soft   B       C     D\n"
+"\t\t\t  --mixed  B       D     D\n"
+"\t\t\t  --hard   D       D     D\n"
+"\t\t\t  --merge (disallowed)\n"
+"\t\t\t  --keep  (disallowed)\n"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-svn.txt:167
+#. type: delimited block .
+#: en/git-reset.txt:427
 #, no-wrap
-msgid "--ignore-paths=\"^[^/]+/(?:branches|tags)\"\n"
+msgid ""
+"working index HEAD target         working index HEAD\n"
+"----------------------------------------------------\n"
+" B       C     C    C     --soft   B       C     C\n"
+"\t\t\t  --mixed  B       C     C\n"
+"\t\t\t  --hard   C       C     C\n"
+"\t\t\t  --merge  B       C     C\n"
+"\t\t\t  --keep   B       C     C\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:177
+#: en/git-reset.txt:437
 msgid ""
-"This allows one to specify a Perl regular expression that will cause the "
-"inclusion of only matching paths from checkout from SVN.  The "
-"`--include-paths` option should match for every 'fetch' (including automatic "
-"fetches due to 'clone', 'dcommit', 'rebase', etc) on a given "
-"repository. `--ignore-paths` takes precedence over `--include-paths`."
+"`reset --merge` is meant to be used when resetting out of a conflicted "
+"merge. Any mergy operation guarantees that the working tree file that is "
+"involved in the merge does not have local change wrt the index before it "
+"starts, and that it writes the result out to the working tree. So if we see "
+"some difference between the index and the target and also between the index "
+"and the working tree, then it means that we are not resetting out from a "
+"state that a mergy operation left after failing with a conflict. That is why "
+"we disallow `--merge` option in this case."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:180
-#, no-wrap
-msgid "config key: svn-remote.<name>.include-paths\n"
+#: en/git-reset.txt:446
+msgid ""
+"`reset --keep` is meant to be used when removing some of the last commits in "
+"the current branch while keeping changes in the working tree. If there could "
+"be conflicts between the changes in the commit we want to remove and the "
+"changes in the working tree we want to keep, the reset is disallowed. That's "
+"why it is disallowed if there are both changes between the working tree and "
+"`HEAD`, and between `HEAD` and the target. To be safe, it is also disallowed "
+"when there are unmerged entries."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:181
-#, no-wrap
-msgid "--log-window-size=<n>"
+#. type: Plain text
+#: en/git-reset.txt:449
+msgid "The following tables show what happens when there are unmerged entries:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:187
+#. type: delimited block .
+#: en/git-reset.txt:458
+#, no-wrap
 msgid ""
-"Fetch <n> log entries per request when scanning Subversion history.  The "
-"default is 100. For very large Subversion repositories, larger values may be "
-"needed for 'clone'/'fetch' to complete in reasonable time. But overly large "
-"values may lead to higher memory usage and request timeouts."
+"working index HEAD target         working index HEAD\n"
+"----------------------------------------------------\n"
+" X       U     A    B     --soft  (disallowed)\n"
+"\t\t\t  --mixed  X       B     B\n"
+"\t\t\t  --hard   B       B     B\n"
+"\t\t\t  --merge  B       B     B\n"
+"\t\t\t  --keep  (disallowed)\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:188
+#. type: delimited block .
+#: en/git-reset.txt:468
 #, no-wrap
-msgid "'clone'"
+msgid ""
+"working index HEAD target         working index HEAD\n"
+"----------------------------------------------------\n"
+" X       U     A    A     --soft  (disallowed)\n"
+"\t\t\t  --mixed  X       A     A\n"
+"\t\t\t  --hard   A       A     A\n"
+"\t\t\t  --merge  A       A     A\n"
+"\t\t\t  --keep  (disallowed)\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:198
-msgid ""
-"Runs 'init' and 'fetch'.  It will automatically create a directory based on "
-"the basename of the URL passed to it; or if a second argument is passed; it "
-"will create a directory and work within that.  It accepts all arguments that "
-"the 'init' and 'fetch' commands accept; with the exception of `--fetch-all` "
-"and `--parent`.  After a repository is cloned, the 'fetch' command will be "
-"able to update revisions without affecting the working tree; and the "
-"'rebase' command will be able to update the working tree with the latest "
-"changes."
+#: en/git-reset.txt:471
+msgid "`X` means any state and `U` means an unmerged index."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:199
+#. type: Title =
+#: en/git-revert.txt:2
 #, no-wrap
-msgid "--preserve-empty-dirs"
+msgid "git-revert(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:205
-msgid ""
-"Create a placeholder file in the local Git repository for each empty "
-"directory fetched from Subversion.  This includes directories that become "
-"empty by removing all entries in the Subversion repository (but not the "
-"directory itself).  The placeholder files are also tracked and removed when "
-"no longer necessary."
+#: en/git-revert.txt:7
+msgid "git-revert - Revert some existing commits"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:206
+#. type: Plain text
+#: en/git-revert.txt:15
 #, no-wrap
-msgid "--placeholder-filename=<filename>"
+msgid ""
+"'git revert' [--[no-]edit] [-n] [-m parent-number] [-s] [-S[<keyid>]] <commit>...\n"
+"'git revert' --continue\n"
+"'git revert' --quit\n"
+"'git revert' --abort\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:209
+#: en/git-revert.txt:23
 msgid ""
-"Set the name of placeholder files created by --preserve-empty-dirs.  "
-"Default: \".gitignore\""
+"Given one or more existing commits, revert the changes that the related "
+"patches introduce, and record some new commits that record them.  This "
+"requires your working tree to be clean (no modifications from the HEAD "
+"commit)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:210
-#, no-wrap
-msgid "'rebase'"
+#. type: Plain text
+#: en/git-revert.txt:32
+msgid ""
+"Note: 'git revert' is used to record some new commits to reverse the effect "
+"of some earlier commits (often only a faulty one).  If you want to throw "
+"away all uncommitted changes in your working directory, you should see "
+"linkgit:git-reset[1], particularly the `--hard` option.  If you want to "
+"extract specific files as they were in another commit, you should see "
+"linkgit:git-checkout[1], specifically the `git checkout <commit> -- "
+"<filename>` syntax.  Take care with these alternatives as both will discard "
+"uncommitted changes in your working directory."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:213
+#: en/git-revert.txt:42
 msgid ""
-"This fetches revisions from the SVN parent of the current HEAD and rebases "
-"the current (uncommitted to SVN) work against it."
+"Commits to revert.  For a more complete list of ways to spell commit names, "
+"see linkgit:gitrevisions[7].  Sets of commits can also be given but no "
+"traversal is done by default, see linkgit:git-rev-list[1] and its `--no-"
+"walk` option."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:217
+#: en/git-revert.txt:48
 msgid ""
-"This works similarly to `svn update` or 'git pull' except that it preserves "
-"linear history with 'git rebase' instead of 'git merge' for ease of "
-"dcommitting with 'git svn'."
+"With this option, 'git revert' will let you edit the commit message prior to "
+"committing the revert. This is the default if you run the command from a "
+"terminal."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:221
+#: en/git-revert.txt:56
 msgid ""
-"This accepts all options that 'git svn fetch' and 'git rebase' accept.  "
-"However, `--fetch-all` only fetches from the current [svn-remote], and not "
-"all [svn-remote] definitions."
+"Usually you cannot revert a merge because you do not know which side of the "
+"merge should be considered the mainline.  This option specifies the parent "
+"number (starting from 1) of the mainline and allows revert to reverse the "
+"change relative to the specified parent."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:224
+#: en/git-revert.txt:61
 msgid ""
-"Like 'git rebase'; this requires that the working tree be clean and have no "
-"uncommitted changes."
+"Reverting a merge commit declares that you will never want the tree changes "
+"brought in by the merge.  As a result, later merges will only bring in tree "
+"changes introduced by commits that are not ancestors of the previously "
+"reverted merge.  This may or may not be what you want."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:232
+#: en/git-revert.txt:64
 msgid ""
-"Do not fetch remotely; only run 'git rebase' against the last fetched commit "
-"from the upstream SVN."
+"See the link:howto/revert-a-faulty-merge.html[revert-a-faulty-merge How-To] "
+"for more details."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:233
-#, no-wrap
-msgid "'dcommit'"
+#. type: Plain text
+#: en/git-revert.txt:68
+msgid ""
+"With this option, 'git revert' will not start the commit message editor."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:238
+#: en/git-revert.txt:79
 msgid ""
-"Commit each diff from the current branch directly to the SVN repository, and "
-"then rebase or reset (depending on whether or not there is a diff between "
-"SVN and head).  This will create a revision in SVN for each commit in Git."
+"Usually the command automatically creates some commits with commit log "
+"messages stating which commits were reverted.  This flag applies the changes "
+"necessary to revert the named commits to your working tree and the index, "
+"but does not make the commits.  In addition, when this option is used, your "
+"index does not have to match the HEAD commit.  The revert is done against "
+"the beginning state of your index."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:242
+#: en/git-revert.txt:82
 msgid ""
-"When an optional Git branch name (or a Git commit object name)  is specified "
-"as an argument, the subcommand works on the specified branch, not on the "
-"current branch."
+"This is useful when reverting more than one commits' effect to your index in "
+"a row."
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:244
-msgid "Use of 'dcommit' is preferred to 'set-tree' (below)."
+#. type: Labeled list
+#: en/git-revert.txt:110
+#, no-wrap
+msgid "`git revert HEAD~3`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:247
-msgid "After committing, do not rebase or reset."
+#: en/git-revert.txt:114
+msgid ""
+"Revert the changes specified by the fourth last commit in HEAD and create a "
+"new commit with the reverted changes."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:247
+#: en/git-revert.txt:115
 #, no-wrap
-msgid "--commit-url <URL>"
+msgid "`git revert -n master~5..master~2`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:253
+#: en/git-revert.txt:122
 msgid ""
-"Commit to this SVN URL (the full path).  This is intended to allow existing "
-"'git svn' repositories created with one transport method (e.g. `svn://` or "
-"`http://` for anonymous read) to be reused if a user is later given access "
-"to an alternate transport method (e.g. `svn+ssh://` or `https://`) for "
-"commit."
+"Revert the changes done by commits from the fifth last commit in master "
+"(included) to the third last commit in master (included), but do not create "
+"any commit with the reverted changes. The revert only modifies the working "
+"tree and the index."
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:257
+#. type: Title =
+#: en/git-rev-list.txt:2
 #, no-wrap
-msgid ""
-"config key: svn-remote.<name>.commiturl\n"
-"config key: svn.commiturl (overwrites all svn-remote.<name>.commiturl "
-"options)\n"
+msgid "git-rev-list(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:261
-msgid ""
-"Note that the SVN URL of the commiturl config key includes the SVN branch.  "
-"If you rather want to set the commit URL for an entire SVN repository use "
-"svn-remote.<name>.pushurl instead."
+#: en/git-rev-list.txt:7
+msgid "git-rev-list - Lists commit objects in reverse chronological order"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:264
+#: en/git-rev-list.txt:64
+#, no-wrap
 msgid ""
-"Using this option for any other purpose (don't ask) is very strongly "
-"discouraged."
+"'git rev-list' [ --max-count=<number> ]\n"
+"\t     [ --skip=<number> ]\n"
+"\t     [ --max-age=<timestamp> ]\n"
+"\t     [ --min-age=<timestamp> ]\n"
+"\t     [ --sparse ]\n"
+"\t     [ --merges ]\n"
+"\t     [ --no-merges ]\n"
+"\t     [ --min-parents=<number> ]\n"
+"\t     [ --no-min-parents ]\n"
+"\t     [ --max-parents=<number> ]\n"
+"\t     [ --no-max-parents ]\n"
+"\t     [ --first-parent ]\n"
+"\t     [ --remove-empty ]\n"
+"\t     [ --full-history ]\n"
+"\t     [ --not ]\n"
+"\t     [ --all ]\n"
+"\t     [ --branches[=<pattern>] ]\n"
+"\t     [ --tags[=<pattern>] ]\n"
+"\t     [ --remotes[=<pattern>] ]\n"
+"\t     [ --glob=<glob-pattern> ]\n"
+"\t     [ --ignore-missing ]\n"
+"\t     [ --stdin ]\n"
+"\t     [ --quiet ]\n"
+"\t     [ --topo-order ]\n"
+"\t     [ --parents ]\n"
+"\t     [ --timestamp ]\n"
+"\t     [ --left-right ]\n"
+"\t     [ --left-only ]\n"
+"\t     [ --right-only ]\n"
+"\t     [ --cherry-mark ]\n"
+"\t     [ --cherry-pick ]\n"
+"\t     [ --encoding=<encoding> ]\n"
+"\t     [ --(author|committer|grep)=<pattern> ]\n"
+"\t     [ --regexp-ignore-case | -i ]\n"
+"\t     [ --extended-regexp | -E ]\n"
+"\t     [ --fixed-strings | -F ]\n"
+"\t     [ --date=<format>]\n"
+"\t     [ [ --objects | --objects-edge | --objects-edge-aggressive ]\n"
+"\t       [ --unpacked ]\n"
+"\t       [ --filter=<filter-spec> [ --filter-print-omitted ] ] ]\n"
+"\t     [ --missing=<missing-action> ]\n"
+"\t     [ --pretty | --header ]\n"
+"\t     [ --bisect ]\n"
+"\t     [ --bisect-vars ]\n"
+"\t     [ --bisect-all ]\n"
+"\t     [ --merge ]\n"
+"\t     [ --reverse ]\n"
+"\t     [ --walk-reflogs ]\n"
+"\t     [ --no-walk ] [ --do-walk ]\n"
+"\t     [ --count ]\n"
+"\t     [ --use-bitmap-index ]\n"
+"\t     <commit>... [ \\-- <paths>... ]\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:265
-#, no-wrap
-msgid "--mergeinfo=<mergeinfo>"
+#. type: Plain text
+#: en/git-rev-list.txt:72
+msgid ""
+"List commits that are reachable by following the `parent` links from the "
+"given commit(s), but exclude commits that are reachable from the one(s)  "
+"given with a '{caret}' in front of them.  The output is given in reverse "
+"chronological order by default."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:272
+#: en/git-rev-list.txt:79
 msgid ""
-"Add the given merge information during the dcommit "
-"(e.g. `--mergeinfo=\"/branches/foo:1-10\"`). All svn server versions can "
-"store this information (as a property), and svn clients starting from "
-"version 1.5 can make use of it. To specify merge information from multiple "
-"branches, use a single space character between the branches "
-"(`--mergeinfo=\"/branches/foo:1-10 /branches/bar:3,5-6,8\"`)"
+"You can think of this as a set operation.  Commits given on the command line "
+"form a set of commits that are reachable from any of them, and then commits "
+"reachable from any of the ones given with '{caret}' in front are subtracted "
+"from that set.  The remaining commits are what comes out in the command's "
+"output.  Various other options and paths parameters can be used to further "
+"limit the result."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:275
+#: en/git-rev-list.txt:81
+msgid "Thus, the following command:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-rev-list.txt:84
 #, no-wrap
-msgid "config key: svn.pushmergeinfo\n"
+msgid "\t$ git rev-list foo bar ^baz\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:280
+#: en/git-rev-list.txt:88
 msgid ""
-"This option will cause git-svn to attempt to automatically populate the "
-"svn:mergeinfo property in the SVN repository when possible. Currently, this "
-"can only be done when dcommitting non-fast-forward merges where all parents "
-"but the first have already been pushed into SVN."
+"means \"list all the commits which are reachable from 'foo' or 'bar', but "
+"not from 'baz'\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:285
+#: en/git-rev-list.txt:92
 msgid ""
-"Ask the user to confirm that a patch set should actually be sent to SVN.  "
-"For each patch, one may answer \"yes\" (accept this patch), \"no\" (discard "
-"this patch), \"all\" (accept all patches), or \"quit\"."
+"A special notation \"'<commit1>'..'<commit2>'\" can be used as a short-hand "
+"for \"{caret}'<commit1>' '<commit2>'\". For example, either of the following "
+"may be used interchangeably:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-rev-list.txt:96
+#, no-wrap
+msgid ""
+"\t$ git rev-list origin..HEAD\n"
+"\t$ git rev-list HEAD ^origin\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:288
+#: en/git-rev-list.txt:101
 msgid ""
-"'git svn dcommit' returns immediately if answer is \"no\" or \"quit\", "
-"without committing anything to SVN."
+"Another special notation is \"'<commit1>'...'<commit2>'\" which is useful "
+"for merges.  The resulting set of commits is the symmetric difference "
+"between the two operands.  The following two commands are equivalent:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:289
+#. type: delimited block -
+#: en/git-rev-list.txt:105
 #, no-wrap
-msgid "'branch'"
+msgid ""
+"\t$ git rev-list A B --not $(git merge-base --all A B)\n"
+"\t$ git rev-list A...B\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:291
-msgid "Create a branch in the SVN repository."
+#: en/git-rev-list.txt:112
+msgid ""
+"'rev-list' is a very essential Git command, since it provides the ability to "
+"build and traverse commit ancestry graphs. For this reason, it has a lot of "
+"different options that enables it to be used by commands as different as "
+"'git bisect' and 'git repack'."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:293
+#. type: Title =
+#: en/git-rev-parse.txt:2
 #, no-wrap
-msgid "--message"
+msgid "git-rev-parse(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:295
-msgid "Allows to specify the commit message."
+#: en/git-rev-parse.txt:7
+msgid "git-rev-parse - Pick out and massage parameters"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:297
+#. type: Plain text
+#: en/git-rev-parse.txt:13
 #, no-wrap
-msgid "--tag"
+msgid "'git rev-parse' [<options>] <args>...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:300
+#: en/git-rev-parse.txt:23
 msgid ""
-"Create a tag by using the tags_subdir instead of the branches_subdir "
-"specified during git svn init."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-svn.txt:301
-#, no-wrap
-msgid "-d<path>"
+"Many Git porcelainish commands take mixture of flags (i.e. parameters that "
+"begin with a dash '-') and parameters meant for the underlying 'git rev-"
+"list' command they use internally and flags and parameters for the other "
+"commands they use downstream of 'git rev-list'.  This command is used to "
+"distinguish between them."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:302
+#. type: Title ~
+#: en/git-rev-parse.txt:29
 #, no-wrap
-msgid "--destination=<path>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-svn.txt:310
-msgid ""
-"If more than one --branches (or --tags) option was given to the 'init' or "
-"'clone' command, you must provide the location of the branch (or tag) you "
-"wish to create in the SVN repository.  <path> specifies which path to use to "
-"create the branch or tag and should match the pattern on the left-hand side "
-"of one of the configured branches or tags refspecs.  You can see these "
-"refspecs with the commands"
-msgstr ""
-
-#. type: Plain text
-#: en/git-svn.txt:313
-msgid ""
-"git config --get-all svn-remote.<name>.branches git config --get-all "
-"svn-remote.<name>.tags"
+msgid "Operation Modes"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:316
-msgid ""
-"where <name> is the name of the SVN repository as specified by the -R option "
-"to 'init' (or \"svn\" by default)."
+#: en/git-rev-parse.txt:32
+msgid "Each of these options must appear first on the command line."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:317
+#: en/git-rev-parse.txt:33
 #, no-wrap
-msgid "--username"
+msgid "--parseopt"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:320
+#: en/git-rev-parse.txt:35
 msgid ""
-"Specify the SVN username to perform the commit as.  This option overrides "
-"the 'username' configuration property."
+"Use 'git rev-parse' in option parsing mode (see PARSEOPT section below)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:321
+#: en/git-rev-parse.txt:36
 #, no-wrap
-msgid "--commit-url"
+msgid "--sq-quote"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:326
+#: en/git-rev-parse.txt:40
 msgid ""
-"Use the specified URL to connect to the destination Subversion repository.  "
-"This is useful in cases where the source SVN repository is read-only.  This "
-"option overrides configuration property 'commiturl'."
+"Use 'git rev-parse' in shell quoting mode (see SQ-QUOTE section below). In "
+"contrast to the `--sq` option below, this mode does only quoting. Nothing "
+"else is done to command input."
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:328
-msgid "git config --get-all svn-remote.<name>.commiturl"
+#. type: Title ~
+#: en/git-rev-parse.txt:42
+#, no-wrap
+msgid "Options for --parseopt"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:330 en/rev-list-options.txt:786
+#: en/git-rev-parse.txt:44
 #, no-wrap
-msgid "--parents"
+msgid "--keep-dashdash"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:334
+#: en/git-rev-parse.txt:47
 msgid ""
-"Create parent folders. This parameter is equivalent to the parameter "
-"--parents on svn cp commands and is useful for non-standard repository "
-"layouts."
+"Only meaningful in `--parseopt` mode. Tells the option parser to echo out "
+"the first `--` met instead of skipping it."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:335
+#: en/git-rev-parse.txt:48
 #, no-wrap
-msgid "'tag'"
+msgid "--stop-at-non-option"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:338
-msgid "Create a tag in the SVN repository. This is a shorthand for 'branch -t'."
+#: en/git-rev-parse.txt:52
+msgid ""
+"Only meaningful in `--parseopt` mode.  Lets the option parser stop at the "
+"first non-option argument.  This can be used to parse sub-commands that take "
+"options themselves."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:339
+#: en/git-rev-parse.txt:53
 #, no-wrap
-msgid "'log'"
+msgid "--stuck-long"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:342
+#: en/git-rev-parse.txt:56
 msgid ""
-"This should make it easy to look up svn log messages when svn users refer to "
-"-r/--revision numbers."
-msgstr ""
-
-#. type: Plain text
-#: en/git-svn.txt:344
-msgid "The following features from `svn log' are supported:"
+"Only meaningful in `--parseopt` mode. Output the options in their long form "
+"if available, and with their arguments stuck."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:346
+#. type: Title ~
+#: en/git-rev-parse.txt:58
 #, no-wrap
-msgid "-r <n>[:<n>]"
+msgid "Options for Filtering"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:347
+#: en/git-rev-parse.txt:60
 #, no-wrap
-msgid "--revision=<n>[:<n>]"
-msgstr ""
-
-#. type: Plain text
-#: en/git-svn.txt:350
-msgid "is supported, non-numeric args are not: HEAD, NEXT, BASE, PREV, etc ..."
+msgid "--revs-only"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:354
+#: en/git-rev-parse.txt:63
 msgid ""
-"it's not completely compatible with the --verbose output in svn log, but "
-"reasonably close."
+"Do not output flags and parameters not meant for 'git rev-list' command."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:354
+#: en/git-rev-parse.txt:64
 #, no-wrap
-msgid "--limit=<n>"
+msgid "--no-revs"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:357
-msgid "is NOT the same as --max-count, doesn't count merged/excluded commits"
+#: en/git-rev-parse.txt:67
+msgid "Do not output flags and parameters meant for 'git rev-list' command."
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:359
-msgid "supported"
+#. type: Labeled list
+#: en/git-rev-parse.txt:68
+#, no-wrap
+msgid "--flags"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:362
-msgid "New features:"
+#: en/git-rev-parse.txt:70
+msgid "Do not output non-flag parameters."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:364
+#: en/git-rev-parse.txt:71
 #, no-wrap
-msgid "--show-commit"
+msgid "--no-flags"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:366
-msgid "shows the Git commit sha1, as well"
+#: en/git-rev-parse.txt:73
+msgid "Do not output flag parameters."
+msgstr ""
+
+#. type: Title ~
+#: en/git-rev-parse.txt:75
+#, no-wrap
+msgid "Options for Output"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:366 en/pretty-options.txt:31
+#: en/git-rev-parse.txt:77
 #, no-wrap
-msgid "--oneline"
+msgid "--default <arg>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:368
-msgid "our version of --pretty=oneline"
+#: en/git-rev-parse.txt:80
+msgid "If there is no parameter given by the user, use `<arg>` instead."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-rev-parse.txt:81
+#, no-wrap
+msgid "--prefix <arg>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:373
+#: en/git-rev-parse.txt:86
 msgid ""
-"SVN itself only stores times in UTC and nothing else. The regular svn client "
-"converts the UTC time to the local time (or based on the TZ= "
-"environment). This command has the same behaviour."
+"Behave as if 'git rev-parse' was invoked from the `<arg>` subdirectory of "
+"the working tree.  Any relative filenames are resolved as if they are "
+"prefixed by `<arg>` and will be printed in that form."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:375
-msgid "Any other arguments are passed directly to 'git log'"
+#: en/git-rev-parse.txt:90
+msgid ""
+"This can be used to convert arguments to a command run in a subdirectory so "
+"that they can still be used after moving to the top-level of the "
+"repository.  For example:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:376
+#. type: delimited block -
+#: en/git-rev-parse.txt:96
 #, no-wrap
-msgid "'blame'"
+msgid ""
+"prefix=$(git rev-parse --show-prefix)\n"
+"cd \"$(git rev-parse --show-toplevel)\"\n"
+"# rev-parse provides the -- needed for 'set'\n"
+"eval \"set $(git rev-parse --sq --prefix \"$prefix\" -- \"$@\")\"\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:383
+#: en/git-rev-parse.txt:103
 msgid ""
-"Show what revision and author last modified each line of a file. The output "
-"of this mode is format-compatible with the output of `svn blame' by "
-"default. Like the SVN blame command, local uncommitted changes in the "
-"working tree are ignored; the version of the file in the HEAD revision is "
-"annotated. Unknown arguments are passed directly to 'git blame'."
+"Verify that exactly one parameter is provided, and that it can be turned "
+"into a raw 20-byte SHA-1 that can be used to access the object database. If "
+"so, emit it to the standard output; otherwise, error out."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:384
-#, no-wrap
-msgid "--git-format"
+#. type: Plain text
+#: en/git-rev-parse.txt:112
+msgid ""
+"If you want to make sure that the output actually names an object in your "
+"object database and/or can be used as a specific type of object you require, "
+"you can add the `^{type}` peeling operator to the parameter.  For example, "
+"`git rev-parse \"$VAR^{commit}\"` will make sure `$VAR` names an existing "
+"object that is a commit-ish (i.e. a commit, or an annotated tag that points "
+"at a commit).  To make sure that `$VAR` names an existing object of any "
+"type, `git rev-parse \"$VAR^{object}\"` can be used."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:389
+#: en/git-rev-parse.txt:119
 msgid ""
-"Produce output in the same format as 'git blame', but with SVN revision "
-"numbers instead of Git commit hashes. In this mode, changes that haven't "
-"been committed to SVN (including local working-copy edits) are shown as "
-"revision 0."
+"Only meaningful in `--verify` mode. Do not output an error message if the "
+"first argument is not a valid object name; instead exit with non-zero status "
+"silently.  SHA-1s for valid object names are printed to stdout on success."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:390
+#: en/git-rev-parse.txt:120
 #, no-wrap
-msgid "'find-rev'"
+msgid "--sq"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:395
+#: en/git-rev-parse.txt:128
 msgid ""
-"When given an SVN revision number of the form 'rN', returns the "
-"corresponding Git commit hash (this can optionally be followed by a tree-ish "
-"to specify which branch should be searched).  When given a tree-ish, returns "
-"the corresponding SVN revision number."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-svn.txt:396
-#, no-wrap
-msgid "-B"
+"Usually the output is made one line per flag and parameter.  This option "
+"makes output a single line, properly quoted for consumption by shell.  "
+"Useful when you expect your parameter to contain whitespaces and newlines (e."
+"g. when using pickaxe `-S` with 'git diff-{asterisk}'). In contrast to the "
+"`--sq-quote` option, the command input is still interpreted as usual."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:397
+#: en/git-rev-parse.txt:129
 #, no-wrap
-msgid "--before"
+msgid "--short[=length]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:401
+#: en/git-rev-parse.txt:134
 msgid ""
-"Don't require an exact match if given an SVN revision, instead find the "
-"commit corresponding to the state of the SVN repository (on the current "
-"branch) at the specified revision."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-svn.txt:403
-#, no-wrap
-msgid "--after"
+"Same as `--verify` but shortens the object name to a unique prefix with at "
+"least `length` characters. The minimum length is 4, the default is the "
+"effective value of the `core.abbrev` configuration variable (see linkgit:git-"
+"config[1])."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:407
+#: en/git-rev-parse.txt:139
 msgid ""
-"Don't require an exact match if given an SVN revision; if there is not an "
-"exact match return the closest match searching forward in the history."
+"When showing object names, prefix them with '{caret}' and strip '{caret}' "
+"prefix from the object names that already have one."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:408
+#: en/git-rev-parse.txt:140
 #, no-wrap
-msgid "'set-tree'"
+msgid "--abbrev-ref[=(strict|loose)]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:416
+#: en/git-rev-parse.txt:144
 msgid ""
-"You should consider using 'dcommit' instead of this command.  Commit "
-"specified commit or tree objects to SVN.  This relies on your imported fetch "
-"data being up-to-date.  This makes absolutely no attempts to do patching "
-"when committing to SVN, it simply overwrites files with those specified in "
-"the tree or commit.  All merging is assumed to have taken place "
-"independently of 'git svn' functions."
+"A non-ambiguous short name of the objects name.  The option core."
+"warnAmbiguousRefs is used to select the strict abbreviation mode."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:417
+#: en/git-rev-parse.txt:145
 #, no-wrap
-msgid "'create-ignore'"
+msgid "--symbolic"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:422
+#: en/git-rev-parse.txt:149
 msgid ""
-"Recursively finds the svn:ignore property on directories and creates "
-"matching .gitignore files. The resulting files are staged to be committed, "
-"but are not committed. Use -r/--revision to refer to a specific revision."
+"Usually the object names are output in SHA-1 form (with possible '{caret}' "
+"prefix); this option makes them output in a form as close to the original "
+"input as possible."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:423
+#: en/git-rev-parse.txt:150
 #, no-wrap
-msgid "'show-ignore'"
+msgid "--symbolic-full-name"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:427
+#: en/git-rev-parse.txt:157
 msgid ""
-"Recursively finds and lists the svn:ignore property on directories.  The "
-"output is suitable for appending to the $GIT_DIR/info/exclude file."
+"This is similar to --symbolic, but it omits input that are not refs (i.e. "
+"branch or tag names; or more explicitly disambiguating \"heads/master\" "
+"form, when you want to name the \"master\" branch when there is an "
+"unfortunately named tag \"master\"), and show them as full refnames (e.g. "
+"\"refs/heads/master\")."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:428
+#. type: Title ~
+#: en/git-rev-parse.txt:159
 #, no-wrap
-msgid "'mkdirs'"
+msgid "Options for Objects"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:436
-msgid ""
-"Attempts to recreate empty directories that core Git cannot track based on "
-"information in $GIT_DIR/svn/<refname>/unhandled.log files.  Empty "
-"directories are automatically recreated when using \"git svn clone\" and "
-"\"git svn rebase\", so \"mkdirs\" is intended for use after commands like "
-"\"git checkout\" or \"git reset\".  (See the svn-remote.<name>.automkdirs "
-"config file option for more information.)"
+#: en/git-rev-parse.txt:163
+msgid "Show all refs found in `refs/`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:437
+#: en/git-rev-parse.txt:164
 #, no-wrap
-msgid "'commit-diff'"
+msgid "--branches[=pattern]"
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:446
-msgid ""
-"Commits the diff of two tree-ish arguments from the command-line.  This "
-"command does not rely on being inside an `git svn init`-ed repository.  This "
-"command takes three arguments, (a) the original tree to diff against, (b) "
-"the new tree result, (c) the URL of the target Subversion repository.  The "
-"final argument (URL) may be omitted if you are working from a 'git "
-"svn'-aware repository (that has been `init`-ed with 'git svn').  The "
-"-r<revision> option is required for this."
+#. type: Labeled list
+#: en/git-rev-parse.txt:165
+#, no-wrap
+msgid "--tags[=pattern]"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:447
+#: en/git-rev-parse.txt:166
 #, no-wrap
-msgid "'info'"
+msgid "--remotes[=pattern]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:452
+#: en/git-rev-parse.txt:170
 msgid ""
-"Shows information about a file or directory similar to what `svn info' "
-"provides.  Does not currently support a -r/--revision argument.  Use the "
-"--url option to output only the value of the 'URL:' field."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-svn.txt:453
-#, no-wrap
-msgid "'proplist'"
+"Show all branches, tags, or remote-tracking branches, respectively (i.e., "
+"refs found in `refs/heads`, `refs/tags`, or `refs/remotes`, respectively)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:457
+#: en/git-rev-parse.txt:174
 msgid ""
-"Lists the properties stored in the Subversion repository about a given file "
-"or directory.  Use -r/--revision to refer to a specific Subversion revision."
+"If a `pattern` is given, only refs matching the given shell glob are shown.  "
+"If the pattern does not contain a globbing character (`?`, `*`, or `[`), it "
+"is turned into a prefix match by appending `/*`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:458
+#: en/git-rev-parse.txt:175
 #, no-wrap
-msgid "'propget'"
+msgid "--glob=pattern"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:461
+#: en/git-rev-parse.txt:181
 msgid ""
-"Gets the Subversion property given as the first argument, for a file.  A "
-"specific revision can be specified with -r/--revision."
+"Show all refs matching the shell glob pattern `pattern`. If the pattern does "
+"not start with `refs/`, this is automatically prepended.  If the pattern "
+"does not contain a globbing character (`?`, `*`, or `[`), it is turned into "
+"a prefix match by appending `/*`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:462
+#: en/git-rev-parse.txt:182 en/rev-list-options.txt:166
 #, no-wrap
-msgid "'propset'"
+msgid "--exclude=<glob-pattern>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:466
+#: en/git-rev-parse.txt:189 en/rev-list-options.txt:174
 msgid ""
-"Sets the Subversion property given as the first argument, to the value given "
-"as the second argument for the file given as the third argument."
+"Do not include refs matching '<glob-pattern>' that the next `--all`, `--"
+"branches`, `--tags`, `--remotes`, or `--glob` would otherwise consider. "
+"Repetitions of this option accumulate exclusion patterns up to the next `--"
+"all`, `--branches`, `--tags`, `--remotes`, or `--glob` option (other options "
+"or arguments do not clear accumulated patterns)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:468 en/git-svn.txt:508 en/diff-format.txt:76 en/diff-format.txt:101
-#, no-wrap
-msgid "Example:"
+#: en/git-rev-parse.txt:195 en/rev-list-options.txt:180
+msgid ""
+"The patterns given should not begin with `refs/heads`, `refs/tags`, or `refs/"
+"remotes` when applied to `--branches`, `--tags`, or `--remotes`, "
+"respectively, and they must begin with `refs/` when applied to `--glob` or "
+"`--all`. If a trailing '/{asterisk}' is intended, it must be given "
+"explicitly."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-svn.txt:471
+#. type: Labeled list
+#: en/git-rev-parse.txt:196
 #, no-wrap
-msgid "git svn propset svn:keywords \"FreeBSD=%H\" devel/py-tipper/Makefile\n"
+msgid "--disambiguate=<prefix>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:475
+#: en/git-rev-parse.txt:201
 msgid ""
-"This will set the property 'svn:keywords' to 'FreeBSD=%H' for the file "
-"'devel/py-tipper/Makefile'."
+"Show every object whose name begins with the given prefix.  The <prefix> "
+"must be at least 4 hexadecimal digits long to avoid listing each and every "
+"object in the repository by mistake."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:476
+#. type: Title ~
+#: en/git-rev-parse.txt:203
 #, no-wrap
-msgid "'show-externals'"
+msgid "Options for Files"
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:479
-msgid ""
-"Shows the Subversion externals.  Use -r/--revision to specify a specific "
-"revision."
+#. type: Labeled list
+#: en/git-rev-parse.txt:205
+#, no-wrap
+msgid "--local-env-vars"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:483
+#: en/git-rev-parse.txt:210
 msgid ""
-"Compress $GIT_DIR/svn/<refname>/unhandled.log files and remove "
-"$GIT_DIR/svn/<refname>/index files."
+"List the GIT_* environment variables that are local to the repository (e.g. "
+"GIT_DIR or GIT_WORK_TREE, but not GIT_EDITOR).  Only the names of the "
+"variables are listed, not their value, even if they are set."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:484
+#: en/git-rev-parse.txt:211
 #, no-wrap
-msgid "'reset'"
+msgid "--git-dir"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:494
+#: en/git-rev-parse.txt:215
 msgid ""
-"Undoes the effects of 'fetch' back to the specified revision.  This allows "
-"you to re-'fetch' an SVN revision.  Normally the contents of an SVN revision "
-"should never change and 'reset' should not be necessary.  However, if SVN "
-"permissions change, or if you alter your --ignore-paths option, a 'fetch' "
-"may fail with \"not found in commit\" (file not previously visible) or "
-"\"checksum mismatch\" (missed a modification).  If the problem file cannot "
-"be ignored forever (with --ignore-paths) the only way to repair the repo is "
-"to use 'reset'."
+"Show `$GIT_DIR` if defined. Otherwise show the path to the .git directory. "
+"The path shown, when relative, is relative to the current working directory."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:499
+#: en/git-rev-parse.txt:219
 msgid ""
-"Only the rev_map and refs/remotes/git-svn are changed (see "
-"'$GIT_DIR/svn/\\*\\*/.rev_map.*' in the FILES section below for details).  "
-"Follow 'reset' with a 'fetch' and then 'git reset' or 'git rebase' to move "
-"local branches onto the new tree."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-svn.txt:500
-#, no-wrap
-msgid "-r <n>"
+"If `$GIT_DIR` is not defined and the current directory is not detected to "
+"lie in a Git repository or work tree print a message to stderr and exit with "
+"nonzero status."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:501
+#: en/git-rev-parse.txt:220
 #, no-wrap
-msgid "--revision=<n>"
+msgid "--absolute-git-dir"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:504
+#: en/git-rev-parse.txt:223
 msgid ""
-"Specify the most recent revision to keep.  All later revisions are "
-"discarded."
+"Like `--git-dir`, but its output is always the canonicalized absolute path."
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:508
-msgid "Discard the specified revision as well, keeping the nearest parent instead."
+#. type: Labeled list
+#: en/git-rev-parse.txt:224
+#, no-wrap
+msgid "--git-common-dir"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:510
-msgid "Assume you have local changes in \"master\", but you need to refetch \"r2\"."
+#: en/git-rev-parse.txt:226
+msgid "Show `$GIT_COMMON_DIR` if defined, else `$GIT_DIR`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-svn.txt:515
+#. type: Labeled list
+#: en/git-rev-parse.txt:227
 #, no-wrap
-msgid ""
-"    r1---r2---r3 remotes/git-svn\n"
-"                \\\n"
-"                 A---B master\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-svn.txt:519
-msgid ""
-"Fix the ignore-paths or SVN permissions problem that caused \"r2\" to be "
-"incomplete in the first place.  Then:"
+msgid "--is-inside-git-dir"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:523
-#, no-wrap
+#: en/git-rev-parse.txt:230
 msgid ""
-"git svn reset -r2 -p\n"
-"git svn fetch\n"
+"When the current working directory is below the repository directory print "
+"\"true\", otherwise \"false\"."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-svn.txt:528
+#. type: Labeled list
+#: en/git-rev-parse.txt:231
 #, no-wrap
-msgid ""
-"    r1---r2'--r3' remotes/git-svn\n"
-"      \\\n"
-"       r2---r3---A---B master\n"
+msgid "--is-inside-work-tree"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:533
+#: en/git-rev-parse.txt:234
 msgid ""
-"Then fixup \"master\" with 'git rebase'.  Do NOT use 'git merge' or your "
-"history will not be compatible with a future 'dcommit'!"
+"When the current working directory is inside the work tree of the repository "
+"print \"true\", otherwise \"false\"."
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:536
+#. type: Labeled list
+#: en/git-rev-parse.txt:235
 #, no-wrap
-msgid "git rebase --onto remotes/git-svn A^ master\n"
+msgid "--is-bare-repository"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-svn.txt:541
-#, no-wrap
-msgid ""
-"    r1---r2'--r3' remotes/git-svn\n"
-"                \\\n"
-"                 A'--B' master\n"
+#. type: Plain text
+#: en/git-rev-parse.txt:237
+msgid "When the repository is bare print \"true\", otherwise \"false\"."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:546
+#: en/git-rev-parse.txt:238
 #, no-wrap
-msgid "--shared[=(false|true|umask|group|all|world|everybody)]"
+msgid "--is-shallow-repository"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:550
-msgid "Only used with the 'init' command.  These are passed directly to 'git init'."
+#: en/git-rev-parse.txt:240
+msgid "When the repository is shallow print \"true\", otherwise \"false\"."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:551
+#: en/git-rev-parse.txt:241
 #, no-wrap
-msgid "-r <arg>"
+msgid "--resolve-git-dir <path>"
+msgstr ""
+
+#. type: Plain text
+#: en/git-rev-parse.txt:246
+msgid ""
+"Check if <path> is a valid repository or a gitfile that points at a valid "
+"repository, and print the location of the repository.  If <path> is a "
+"gitfile then the resolved path to the real repository is printed."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:552
+#: en/git-rev-parse.txt:247
 #, no-wrap
-msgid "--revision <arg>"
+msgid "--git-path <path>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:554
-msgid "Used with the 'fetch' command."
+#: en/git-rev-parse.txt:253
+msgid ""
+"Resolve \"$GIT_DIR/<path>\" and takes other path relocation variables such "
+"as $GIT_OBJECT_DIRECTORY, $GIT_INDEX_FILE... into account. For example, if "
+"$GIT_OBJECT_DIRECTORY is set to /foo/bar then \"git rev-parse --git-path "
+"objects/abc\" returns /foo/bar/abc."
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:558
-msgid ""
-"This allows revision ranges for partial/cauterized history to be supported.  "
-"$NUMBER, $NUMBER1:$NUMBER2 (numeric ranges), $NUMBER:HEAD, and BASE:$NUMBER "
-"are all supported."
+#. type: Labeled list
+#: en/git-rev-parse.txt:254
+#, no-wrap
+msgid "--show-cdup"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:562
+#: en/git-rev-parse.txt:258
 msgid ""
-"This can allow you to make partial mirrors when running fetch; but is "
-"generally not recommended because history will be skipped and lost."
+"When the command is invoked from a subdirectory, show the path of the top-"
+"level directory relative to the current directory (typically a sequence of "
+"\"../\", or an empty string)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:563
+#: en/git-rev-parse.txt:259
 #, no-wrap
-msgid "-"
-msgstr ""
-
-#. type: Plain text
-#: en/git-svn.txt:566
-msgid "Only used with the 'set-tree' command."
+msgid "--show-prefix"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:570
+#: en/git-rev-parse.txt:263
 msgid ""
-"Read a list of commits from stdin and commit them in reverse order.  Only "
-"the leading sha1 is read from each line, so 'git rev-list --pretty=oneline' "
-"output can be used."
+"When the command is invoked from a subdirectory, show the path of the "
+"current directory relative to the top-level directory."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:571
+#: en/git-rev-parse.txt:264
 #, no-wrap
-msgid "--rmdir"
+msgid "--show-toplevel"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:573 en/git-svn.txt:586 en/git-svn.txt:597
-msgid "Only used with the 'dcommit', 'set-tree' and 'commit-diff' commands."
+#: en/git-rev-parse.txt:266
+msgid "Show the absolute path of the top-level directory."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-rev-parse.txt:267
+#, no-wrap
+msgid "--show-superproject-working-tree"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:579
+#: en/git-rev-parse.txt:272
 msgid ""
-"Remove directories from the SVN tree if there are no files left behind.  SVN "
-"can version empty directories, and they are not removed by default if there "
-"are no files left in them.  Git cannot version empty directories.  Enabling "
-"this flag will make the commit to SVN act like Git."
+"Show the absolute path of the root of the superproject's working tree (if "
+"exists) that uses the current repository as its submodule.  Outputs nothing "
+"if the current repository is not used as a submodule by any project."
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:582
+#. type: Labeled list
+#: en/git-rev-parse.txt:273
 #, no-wrap
-msgid "config key: svn.rmdir\n"
+msgid "--shared-index-path"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:590
+#: en/git-rev-parse.txt:276
 msgid ""
-"Edit the commit message before committing to SVN.  This is off by default "
-"for objects that are commits, and forced on when committing tree objects."
+"Show the path to the shared index file in split index mode, or empty if not "
+"in split-index mode."
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:593
+#. type: Title ~
+#: en/git-rev-parse.txt:278
 #, no-wrap
-msgid "config key: svn.edit\n"
+msgid "Other Options"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:594 en/diff-options.txt:402
+#: en/git-rev-parse.txt:280
 #, no-wrap
-msgid "-l<num>"
+msgid "--since=datestring"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:595 en/diff-options.txt:380
+#: en/git-rev-parse.txt:281
 #, no-wrap
-msgid "--find-copies-harder"
+msgid "--after=datestring"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:600
+#: en/git-rev-parse.txt:284
 msgid ""
-"They are both passed directly to 'git diff-tree'; see "
-"linkgit:git-diff-tree[1] for more information."
+"Parse the date string, and output the corresponding --max-age= parameter for "
+"'git rev-list'."
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:604
+#. type: Labeled list
+#: en/git-rev-parse.txt:285
 #, no-wrap
-msgid ""
-"config key: svn.l\n"
-"config key: svn.findcopiesharder\n"
+msgid "--until=datestring"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:605
+#: en/git-rev-parse.txt:286
 #, no-wrap
-msgid "-A<filename>"
+msgid "--before=datestring"
+msgstr ""
+
+#. type: Plain text
+#: en/git-rev-parse.txt:289
+msgid ""
+"Parse the date string, and output the corresponding --min-age= parameter for "
+"'git rev-list'."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:606
+#: en/git-rev-parse.txt:290
 #, no-wrap
-msgid "--authors-file=<filename>"
+msgid "<args>..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:608
-msgid "Syntax is compatible with the file used by 'git cvsimport':"
+#: en/git-rev-parse.txt:292
+msgid "Flags and parameters to be parsed."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-svn.txt:611
+#. type: Title -
+#: en/git-rev-parse.txt:297
 #, no-wrap
-msgid "\tloginname = Joe User <user@example.com>\n"
+msgid "PARSEOPT"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:618
+#: en/git-rev-parse.txt:302
 msgid ""
-"If this option is specified and 'git svn' encounters an SVN committer name "
-"that does not exist in the authors-file, 'git svn' will abort operation. The "
-"user will then have to add the appropriate entry.  Re-running the previous "
-"'git svn' command after the authors-file is modified should continue "
-"operation."
+"In `--parseopt` mode, 'git rev-parse' helps massaging options to bring to "
+"shell scripts the same facilities C builtins have. It works as an option "
+"normalizer (e.g. splits single switches aggregate values), a bit like "
+"`getopt(1)` does."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:621
-#, no-wrap
-msgid "config key: svn.authorsfile\n"
+#: en/git-rev-parse.txt:307
+msgid ""
+"It takes on the standard input the specification of the options to parse and "
+"understand, and echoes on the standard output a string suitable for `sh(1)` "
+"`eval` to replace the arguments with normalized ones.  In case of error, it "
+"outputs usage on the standard error stream, and exits with code 129."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:622
+#. type: Plain text
+#: en/git-rev-parse.txt:310
+msgid ""
+"Note: Make sure you quote the result when passing it to `eval`.  See below "
+"for an example."
+msgstr ""
+
+#. type: Title ~
+#: en/git-rev-parse.txt:312
 #, no-wrap
-msgid "--authors-prog=<filename>"
+msgid "Input Format"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:628
+#: en/git-rev-parse.txt:318
 msgid ""
-"If this option is specified, for each SVN committer name that does not exist "
-"in the authors file, the given file is executed with the committer name as "
-"the first argument.  The program is expected to return a single line of the "
-"form \"Name <email>\", which will be treated as if included in the authors "
-"file."
+"'git rev-parse --parseopt' input format is fully text based. It has two "
+"parts, separated by a line that contains only `--`. The lines before the "
+"separator (should be one or more) are used for the usage.  The lines after "
+"the separator describe the options."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:631
-#, no-wrap
-msgid "config key: svn.authorsProg\n"
+#: en/git-rev-parse.txt:320
+msgid "Each line of options has this format:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:636
-msgid ""
-"Make 'git svn' less verbose. Specify a second time to make it even less "
-"verbose."
+#. type: delimited block -
+#: en/git-rev-parse.txt:323
+#, no-wrap
+msgid "<opt-spec><flags>*<arg-hint>? SP+ help LF\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:639
+#: en/git-rev-parse.txt:325
 #, no-wrap
-msgid "-s<strategy>"
+msgid "`<opt-spec>`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:644
-msgid "These are only used with the 'dcommit' and 'rebase' commands."
+#: en/git-rev-parse.txt:330
+msgid ""
+"its format is the short option character, then the long option name "
+"separated by a comma. Both parts are not required, though at least one is "
+"necessary. May not contain any of the `<flags>` characters.  `h,help`, `dry-"
+"run` and `f` are examples of correct `<opt-spec>`."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-rev-parse.txt:331
+#, no-wrap
+msgid "`<flags>`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:647
-msgid ""
-"Passed directly to 'git rebase' when using 'dcommit' if a 'git reset' cannot "
-"be used (see 'dcommit')."
+#: en/git-rev-parse.txt:333
+msgid "`<flags>` are of `*`, `=`, `?` or `!`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:652
-msgid "This can be used with the 'dcommit', 'rebase', 'branch' and 'tag' commands."
+#: en/git-rev-parse.txt:334
+msgid "Use `=` if the option takes an argument."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:655
+#: en/git-rev-parse.txt:338
 msgid ""
-"For 'dcommit', print out the series of Git arguments that would show which "
-"diffs would be committed to SVN."
+"Use `?` to mean that the option takes an optional argument. You probably "
+"want to use the `--stuck-long` mode to be able to unambiguously parse the "
+"optional argument."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:659
+#: en/git-rev-parse.txt:342
 msgid ""
-"For 'rebase', display the local branch associated with the upstream svn "
-"repository associated with the current branch and the URL of svn repository "
-"that will be fetched from."
+"Use `*` to mean that this option should not be listed in the usage generated "
+"for the `-h` argument. It's shown for `--help-all` as documented in linkgit:"
+"gitcli[7]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:662
-msgid ""
-"For 'branch' and 'tag', display the urls that will be used for copying when "
-"creating the branch or tag."
+#: en/git-rev-parse.txt:344
+msgid "Use `!` to not make the corresponding negated long option available."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:663
+#: en/git-rev-parse.txt:345
 #, no-wrap
-msgid "--use-log-author"
+msgid "`<arg-hint>`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:667
+#: en/git-rev-parse.txt:350
 msgid ""
-"When retrieving svn commits into Git (as part of 'fetch', 'rebase', or "
-"'dcommit' operations), look for the first `From:` or `Signed-off-by:` line "
-"in the log message and use that as the author string."
+"`<arg-hint>`, if specified, is used as a name of the argument in the help "
+"output, for options that take arguments. `<arg-hint>` is terminated by the "
+"first whitespace.  It is customary to use a dash to separate words in a "
+"multi-word argument hint."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:670
-#, no-wrap
-msgid "config key: svn.useLogAuthor\n"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-svn.txt:671
-#, no-wrap
-msgid "--add-author-from"
+#: en/git-rev-parse.txt:353
+msgid ""
+"The remainder of the line, after stripping the spaces, is used as the help "
+"associated to the option."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:677
+#: en/git-rev-parse.txt:357
 msgid ""
-"When committing to svn from Git (as part of 'commit-diff', 'set-tree' or "
-"'dcommit' operations), if the existing log message doesn't already have a "
-"`From:` or `Signed-off-by:` line, append a `From:` line based on the Git "
-"commit's author string.  If you use this, then `--use-log-author` will "
-"retrieve a valid author string for all commits."
+"Blank lines are ignored, and lines that don't match this specification are "
+"used as option group headers (start the line with a space to create such "
+"lines on purpose)."
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:680
+#. type: delimited block -
+#: en/git-rev-parse.txt:364
 #, no-wrap
-msgid "config key: svn.addAuthorFrom\n"
+msgid ""
+"OPTS_SPEC=\"\\\n"
+"some-command [<options>] <args>...\n"
 msgstr ""
 
-#. type: Title -
-#: en/git-svn.txt:682
+#. type: delimited block -
+#: en/git-rev-parse.txt:366
 #, no-wrap
-msgid "ADVANCED OPTIONS"
+msgid ""
+"some-command does foo and bar!\n"
+"--\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:684
+#. type: delimited block -
+#: en/git-rev-parse.txt:368
 #, no-wrap
-msgid "-i<GIT_SVN_ID>"
+msgid "h,help    show the help\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:685
+#. type: delimited block -
+#: en/git-rev-parse.txt:373
 #, no-wrap
-msgid "--id <GIT_SVN_ID>"
-msgstr ""
-
-#. type: Plain text
-#: en/git-svn.txt:690
 msgid ""
-"This sets GIT_SVN_ID (instead of using the environment).  This allows the "
-"user to override the default refname to fetch from when tracking a single "
-"URL.  The 'log' and 'dcommit' commands no longer require this switch as an "
-"argument."
+"foo       some nifty option --foo\n"
+"bar=      some cool option --bar with an argument\n"
+"baz=arg   another cool option --baz with a named argument\n"
+"qux?path  qux may take a path argument but has meaning by itself\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:691
+#. type: delimited block -
+#: en/git-rev-parse.txt:376
 #, no-wrap
-msgid "-R<remote name>"
+msgid ""
+"  An option group Header\n"
+"C?        option C with an optional argument\"\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:692
+#. type: delimited block -
+#: en/git-rev-parse.txt:378
 #, no-wrap
-msgid "--svn-remote <remote name>"
+msgid "eval \"$(echo \"$OPTS_SPEC\" | git rev-parse --parseopt -- \"$@\" || echo exit $?)\"\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:696
-msgid ""
-"Specify the [svn-remote \"<remote name>\"] section to use, this allows SVN "
-"multiple repositories to be tracked.  Default: \"svn\""
-msgstr ""
-
-#. type: Labeled list
-#: en/git-svn.txt:697
+#. type: Title ~
+#: en/git-rev-parse.txt:382
 #, no-wrap
-msgid "--follow-parent"
+msgid "Usage text"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:712
+#: en/git-rev-parse.txt:386
 msgid ""
-"This option is only relevant if we are tracking branches (using one of the "
-"repository layout options --trunk, --tags, --branches, --stdlayout). For "
-"each tracked branch, try to find out where its revision was copied from, and "
-"set a suitable parent in the first Git commit for the branch.  This is "
-"especially helpful when we're tracking a directory that has been moved "
-"around within the repository.  If this feature is disabled, the branches "
-"created by 'git svn' will all be linear and not share any history, meaning "
-"that there will be no information on where branches were branched off or "
-"merged.  However, following long/convoluted histories can take a long time, "
-"so disabling this feature may speed up the cloning process. This feature is "
-"enabled by default, use --no-follow-parent to disable it."
+"When `\"$@\"` is `-h` or `--help` in the above example, the following usage "
+"text would be shown:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:715
+#. type: delimited block -
+#: en/git-rev-parse.txt:389
 #, no-wrap
-msgid "config key: svn.followparent\n"
+msgid "usage: some-command [<options>] <args>...\n"
 msgstr ""
 
-#. type: Title -
-#: en/git-svn.txt:717
+#. type: delimited block -
+#: en/git-rev-parse.txt:391
 #, no-wrap
-msgid "CONFIG FILE-ONLY OPTIONS"
+msgid "    some-command does foo and bar!\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:719
+#. type: delimited block -
+#: en/git-rev-parse.txt:397
 #, no-wrap
-msgid "svn.noMetadata"
+msgid ""
+"    -h, --help            show the help\n"
+"    --foo                 some nifty option --foo\n"
+"    --bar ...             some cool option --bar with an argument\n"
+"    --baz <arg>           another cool option --baz with a named argument\n"
+"    --qux[=<path>]        qux may take a path argument but has meaning by itself\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:720
+#. type: delimited block -
+#: en/git-rev-parse.txt:400
 #, no-wrap
-msgid "svn-remote.<name>.noMetadata"
+msgid ""
+"An option group Header\n"
+"    -C[...]               option C with an optional argument\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:722
-msgid "This gets rid of the 'git-svn-id:' lines at the end of every commit."
+#. type: Title -
+#: en/git-rev-parse.txt:403
+#, no-wrap
+msgid "SQ-QUOTE"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:727
+#: en/git-rev-parse.txt:409
 msgid ""
-"This option can only be used for one-shot imports as 'git svn' will not be "
-"able to fetch again without metadata. Additionally, if you lose your "
-"'$GIT_DIR/svn/\\*\\*/.rev_map.*' files, 'git svn' will not be able to "
-"rebuild them."
+"In `--sq-quote` mode, 'git rev-parse' echoes on the standard output a single "
+"line suitable for `sh(1)` `eval`. This line is made by normalizing the "
+"arguments following `--sq-quote`. Nothing other than quoting the arguments "
+"is done."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:731
+#: en/git-rev-parse.txt:413
 msgid ""
-"The 'git svn log' command will not work on repositories using this, either.  "
-"Using this conflicts with the 'useSvmProps' option for (hopefully) obvious "
-"reasons."
+"If you want command input to still be interpreted as usual by 'git rev-"
+"parse' before the output is shell quoted, see the `--sq` option."
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:739
+#. type: delimited block -
+#: en/git-rev-parse.txt:425
+#, no-wrap
 msgid ""
-"This option is NOT recommended as it makes it difficult to track down old "
-"references to SVN revision numbers in existing documentation, bug reports "
-"and archives.  If you plan to eventually migrate from SVN to Git and are "
-"certain about dropping SVN history, consider linkgit:git-filter-branch[1] "
-"instead.  filter-branch also allows reformatting of metadata for "
-"ease-of-reading and rewriting authorship info for non-\"svn.authorsFile\" "
-"users."
+"$ cat >your-git-script.sh <<\\EOF\n"
+"#!/bin/sh\n"
+"args=$(git rev-parse --sq-quote \"$@\")   # quote user-supplied arguments\n"
+"command=\"git frotz -n24 $args\"          # and use it inside a handcrafted\n"
+"\t\t\t\t\t# command line\n"
+"eval \"$command\"\n"
+"EOF\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:740
+#. type: delimited block -
+#: en/git-rev-parse.txt:427
 #, no-wrap
-msgid "svn.useSvmProps"
+msgid "$ sh your-git-script.sh \"a b'c\"\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:741
-#, no-wrap
-msgid "svn-remote.<name>.useSvmProps"
+#. type: Plain text
+#: en/git-rev-parse.txt:433
+msgid "Print the object name of the current commit:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:744
-msgid ""
-"This allows 'git svn' to re-map repository URLs and UUIDs from mirrors "
-"created using SVN::Mirror (or svk) for metadata."
+#. type: delimited block -
+#: en/git-rev-parse.txt:436
+#, no-wrap
+msgid "$ git rev-parse --verify HEAD\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:752
+#: en/git-rev-parse.txt:439
 msgid ""
-"If an SVN revision has a property, \"svm:headrev\", it is likely that the "
-"revision was created by SVN::Mirror (also used by SVK).  The property "
-"contains a repository UUID and a revision.  We want to make it look like we "
-"are mirroring the original URL, so introduce a helper function that returns "
-"the original identity URL and UUID, and use it when generating metadata in "
-"commit messages."
+"Print the commit object name from the revision in the $REV shell variable:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:753
+#. type: delimited block -
+#: en/git-rev-parse.txt:442
 #, no-wrap
-msgid "svn.useSvnsyncProps"
+msgid "$ git rev-parse --verify $REV^{commit}\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:754
-#, no-wrap
-msgid "svn-remote.<name>.useSvnsyncprops"
+#. type: Plain text
+#: en/git-rev-parse.txt:445
+msgid "This will error out if $REV is empty or not a valid revision."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:758
-msgid ""
-"Similar to the useSvmProps option; this is for users of the svnsync(1) "
-"command distributed with SVN 1.4.x and later."
+#: en/git-rev-parse.txt:447
+msgid "Similar to above:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:759
+#. type: delimited block -
+#: en/git-rev-parse.txt:450
 #, no-wrap
-msgid "svn-remote.<name>.rewriteRoot"
+msgid "$ git rev-parse --default master --verify $REV\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:765
+#: en/git-rev-parse.txt:453
 msgid ""
-"This allows users to create repositories from alternate URLs.  For example, "
-"an administrator could run 'git svn' on the server locally (accessing via "
-"file://) but wish to distribute the repository with a public http:// or "
-"svn:// URL in the metadata so users of it will see the public URL."
+"but if $REV is empty, the commit object name from master will be printed."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:766
+#. type: Title =
+#: en/git-rm.txt:2
 #, no-wrap
-msgid "svn-remote.<name>.rewriteUUID"
+msgid "git-rm(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:771
-msgid ""
-"Similar to the useSvmProps option; this is for users who need to remap the "
-"UUID manually. This may be useful in situations where the original UUID is "
-"not available via either useSvmProps or useSvnsyncProps."
+#: en/git-rm.txt:7
+msgid "git-rm - Remove files from the working tree and from the index"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:772
+#. type: Plain text
+#: en/git-rm.txt:12
 #, no-wrap
-msgid "svn-remote.<name>.pushurl"
+msgid "'git rm' [-f | --force] [-n] [-r] [--cached] [--ignore-unmatch] [--quiet] [--] <file>...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:781
+#: en/git-rm.txt:25
 msgid ""
-"Similar to Git's `remote.<name>.pushurl`, this key is designed to be used in "
-"cases where 'url' points to an SVN repository via a read-only transport, to "
-"provide an alternate read/write transport. It is assumed that both keys "
-"point to the same repository. Unlike 'commiturl', 'pushurl' is a base "
-"path. If either 'commiturl' or 'pushurl' could be used, 'commiturl' takes "
-"precedence."
+"Remove files from the index, or from the working tree and the index.  `git "
+"rm` will not remove a file from just your working directory.  (There is no "
+"option to remove a file only from the working tree and yet keep it in the "
+"index; use `/bin/rm` if you want to do that.)  The files being removed have "
+"to be identical to the tip of the branch, and no updates to their contents "
+"can be staged in the index, though that default behavior can be overridden "
+"with the `-f` option.  When `--cached` is given, the staged content has to "
+"match either the tip of the branch or the file on disk, allowing the file to "
+"be removed from just the index."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:782
-#, no-wrap
-msgid "svn.brokenSymlinkWorkaround"
+#. type: Plain text
+#: en/git-rm.txt:38
+msgid ""
+"Files to remove.  Fileglobs (e.g. `*.c`) can be given to remove all matching "
+"files.  If you want Git to expand file glob characters, you may need to "
+"shell-escape them.  A leading directory name (e.g. `dir` to remove `dir/"
+"file1` and `dir/file2`) can be given to remove all files in the directory, "
+"and recursively all sub-directories, but this requires the `-r` option to be "
+"explicitly given."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:790
+#: en/git-rm.txt:42
+msgid "Override the up-to-date check."
+msgstr ""
+
+#. type: Plain text
+#: en/git-rm.txt:48
 msgid ""
-"This disables potentially expensive checks to workaround broken symlinks "
-"checked into SVN by broken clients.  Set this option to \"false\" if you "
-"track a SVN repository with many empty blobs that are not symlinks.  This "
-"option may be changed while 'git svn' is running and take effect on the next "
-"revision fetched.  If unset, 'git svn' assumes this option to be \"true\"."
+"Don't actually remove any file(s).  Instead, just show if they exist in the "
+"index and would otherwise be removed by the command."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-svn.txt:791
-#, no-wrap
-msgid "svn.pathnameencoding"
+#. type: Plain text
+#: en/git-rm.txt:52
+msgid "Allow recursive removal when a leading directory name is given."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:796
+#: en/git-rm.txt:62
 msgid ""
-"This instructs git svn to recode pathnames to a given encoding.  It can be "
-"used by windows users and by those who work in non-utf8 locales to avoid "
-"corrupted file names with non-ASCII characters.  Valid encodings are the "
-"ones supported by Perl's Encode module."
+"Use this option to unstage and remove paths only from the index.  Working "
+"tree files, whether modified or not, will be left alone."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:797
+#: en/git-rm.txt:63
 #, no-wrap
-msgid "svn-remote.<name>.automkdirs"
+msgid "--ignore-unmatch"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:804
+#: en/git-rm.txt:65
+msgid "Exit with a zero status even if no files matched."
+msgstr ""
+
+#. type: Plain text
+#: en/git-rm.txt:70
 msgid ""
-"Normally, the \"git svn clone\" and \"git svn rebase\" commands attempt to "
-"recreate empty directories that are in the Subversion repository.  If this "
-"option is set to \"false\", then empty directories will only be created if "
-"the \"git svn mkdirs\" command is run explicitly.  If unset, 'git svn' "
-"assumes this option to be \"true\"."
+"`git rm` normally outputs one line (in the form of an `rm` command)  for "
+"each file removed. This option suppresses that output."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:809
+#: en/git-rm.txt:79
 msgid ""
-"Since the noMetadata, rewriteRoot, rewriteUUID, useSvnsyncProps and "
-"useSvmProps options all affect the metadata generated and used by 'git svn'; "
-"they *must* be set in the configuration file before any history is imported "
-"and these settings should never be changed once they are set."
+"The <file> list given to the command can be exact pathnames, file glob "
+"patterns, or leading directory names.  The command removes only the paths "
+"that are known to Git.  Giving the name of a file that you have not told Git "
+"about does not remove that file."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:813
+#: en/git-rm.txt:84
 msgid ""
-"Additionally, only one of these options can be used per svn-remote section "
-"because they affect the 'git-svn-id:' metadata line, except for rewriteRoot "
-"and rewriteUUID which can be used together."
+"File globbing matches across directory boundaries.  Thus, given two "
+"directories `d` and `d2`, there is a difference between using `git rm 'd*'` "
+"and `git rm 'd/*'`, as the former will also remove all of directory `d2`."
 msgstr ""
 
 #. type: Title -
-#: en/git-svn.txt:816
+#: en/git-rm.txt:86
 #, no-wrap
-msgid "BASIC EXAMPLES"
+msgid "REMOVING FILES THAT HAVE DISAPPEARED FROM THE FILESYSTEM"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:820
+#: en/git-rm.txt:91
 msgid ""
-"Tracking and contributing to the trunk of a Subversion-managed project "
-"(ignoring tags and branches):"
+"There is no option for `git rm` to remove from the index only the paths that "
+"have disappeared from the filesystem. However, depending on the use case, "
+"there are several ways that can be done."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-svn.txt:838
+#. type: Title ~
+#: en/git-rm.txt:93
 #, no-wrap
-msgid ""
-"# Clone a repo (like git clone):\n"
-"\tgit svn clone http://svn.example.com/project/trunk\n"
-"# Enter the newly cloned directory:\n"
-"\tcd trunk\n"
-"# You should be on master branch, double-check with 'git branch'\n"
-"\tgit branch\n"
-"# Do some work and commit locally to Git:\n"
-"\tgit commit ...\n"
-"# Something is committed to SVN, rebase your local changes against the\n"
-"# latest changes in SVN:\n"
-"\tgit svn rebase\n"
-"# Now commit your changes (that were committed previously using Git) to "
-"SVN,\n"
-"# as well as automatically updating your working HEAD:\n"
-"\tgit svn dcommit\n"
-"# Append svn:ignore settings to the default Git exclude file:\n"
-"\tgit svn show-ignore >> .git/info/exclude\n"
+msgid "Using ``git commit -a''"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:842
+#: en/git-rm.txt:100
 msgid ""
-"Tracking and contributing to an entire Subversion-managed project (complete "
-"with a trunk, tags and branches):"
+"If you intend that your next commit should record all modifications of "
+"tracked files in the working tree and record all removals of files that have "
+"been removed from the working tree with `rm` (as opposed to `git rm`), use "
+"`git commit -a`, as it will automatically notice and record all removals.  "
+"You can also have a similar effect without committing by using `git add -u`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-svn.txt:857
+#. type: Title ~
+#: en/git-rm.txt:102
 #, no-wrap
-msgid ""
-"# Clone a repo with standard SVN directory layout (like git clone):\n"
-"\tgit svn clone http://svn.example.com/project --stdlayout --prefix svn/\n"
-"# Or, if the repo uses a non-standard directory layout:\n"
-"\tgit svn clone http://svn.example.com/project -T tr -b branch -t tag "
-"--prefix svn/\n"
-"# View all branches and tags you have cloned:\n"
-"\tgit branch -r\n"
-"# Create a new branch in SVN\n"
-"\tgit svn branch waldo\n"
-"# Reset your master to trunk (or any other branch, replacing 'trunk'\n"
-"# with the appropriate name):\n"
-"\tgit reset --hard svn/trunk\n"
-"# You may only dcommit to one branch/tag/trunk at a time.  The usage\n"
-"# of dcommit/rebase/show-ignore should be the same as above.\n"
+msgid "Using ``git add -A''"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:865
+#: en/git-rm.txt:106
 msgid ""
-"The initial 'git svn clone' can be quite time-consuming (especially for "
-"large Subversion repositories). If multiple people (or one person with "
-"multiple machines) want to use 'git svn' to interact with the same "
-"Subversion repository, you can do the initial 'git svn clone' to a "
-"repository on a server and have each person clone that repository with 'git "
-"clone':"
+"When accepting a new code drop for a vendor branch, you probably want to "
+"record both the removal of paths and additions of new paths as well as "
+"modifications of existing paths."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-svn.txt:886
-#, no-wrap
+#. type: Plain text
+#: en/git-rm.txt:109
 msgid ""
-"# Do the initial import on a server\n"
-"\tssh server \"cd /pub && git svn clone http://svn.example.com/project "
-"[options...]\"\n"
-"# Clone locally - make sure the refs/remotes/ space matches the server\n"
-"\tmkdir project\n"
-"\tcd project\n"
-"\tgit init\n"
-"\tgit remote add origin server:/pub/project\n"
-"\tgit config --replace-all remote.origin.fetch "
-"'+refs/remotes/*:refs/remotes/*'\n"
-"\tgit fetch\n"
-"# Prevent fetch/pull from remote Git server in the future,\n"
-"# we only want to use git svn for future updates\n"
-"\tgit config --remove-section remote.origin\n"
-"# Create a local branch from one of the branches just fetched\n"
-"\tgit checkout -b master FETCH_HEAD\n"
-"# Initialize 'git svn' locally (be sure to use the same URL and\n"
-"# --stdlayout/-T/-b/-t/--prefix options as were used on server)\n"
-"\tgit svn init http://svn.example.com/project [options...]\n"
-"# Pull the latest changes from Subversion\n"
-"\tgit svn rebase\n"
+"Typically you would first remove all tracked files from the working tree "
+"using this command:"
 msgstr ""
 
-#. type: Title -
-#: en/git-svn.txt:889
+#. type: delimited block -
+#: en/git-rm.txt:112
 #, no-wrap
-msgid "REBASE VS. PULL/MERGE"
+msgid "git ls-files -z | xargs -0 rm -f\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:895
+#: en/git-rm.txt:116
 msgid ""
-"Prefer to use 'git svn rebase' or 'git rebase', rather than 'git pull' or "
-"'git merge' to synchronize unintegrated commits with a 'git svn' "
-"branch. Doing so will keep the history of unintegrated commits linear with "
-"respect to the upstream SVN repository and allow the use of the preferred "
-"'git svn dcommit' subcommand to push unintegrated commits back into SVN."
+"and then untar the new code in the working tree. Alternately you could "
+"'rsync' the changes into the working tree."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:903
+#: en/git-rm.txt:119
 msgid ""
-"Originally, 'git svn' recommended that developers pulled or merged from the "
-"'git svn' branch.  This was because the author favored `git svn set-tree B` "
-"to commit a single head rather than the `git svn set-tree A..B` notation to "
-"commit multiple commits. Use of 'git pull' or 'git merge' with `git svn "
-"set-tree A..B` will cause non-linear history to be flattened when committing "
-"into SVN and this can lead to merge commits unexpectedly reversing previous "
-"commits in SVN."
+"After that, the easiest way to record all removals, additions, and "
+"modifications in the working tree is:"
 msgstr ""
 
-#. type: Title -
-#: en/git-svn.txt:905
+#. type: delimited block -
+#: en/git-rm.txt:122
 #, no-wrap
-msgid "MERGE TRACKING"
+msgid "git add -A\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:912
-msgid ""
-"While 'git svn' can track copy history (including branches and tags) for "
-"repositories adopting a standard layout, it cannot yet represent merge "
-"history that happened inside git back upstream to SVN users.  Therefore it "
-"is advised that users keep history as linear as possible inside Git to ease "
-"compatibility with SVN (see the CAVEATS section below)."
+#: en/git-rm.txt:125
+msgid "See linkgit:git-add[1]."
 msgstr ""
 
-#. type: Title -
-#: en/git-svn.txt:914
+#. type: Title ~
+#: en/git-rm.txt:127
 #, no-wrap
-msgid "HANDLING OF SVN BRANCHES"
+msgid "Other ways"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:922
+#: en/git-rm.txt:132
 msgid ""
-"If 'git svn' is configured to fetch branches (and --follow-branches is in "
-"effect), it sometimes creates multiple Git branches for one SVN branch, "
-"where the additional branches have names of the form 'branchname@nnn' (with "
-"nnn an SVN revision number).  These additional branches are created if 'git "
-"svn' cannot find a parent commit for the first commit in an SVN branch, to "
-"connect the branch to the history of the other branches."
+"If all you really want to do is to remove from the index the files that are "
+"no longer present in the working tree (perhaps because your working tree is "
+"dirty so that you cannot use `git commit -a`), use the following command:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:938
-msgid ""
-"Normally, the first commit in an SVN branch consists of a copy "
-"operation. 'git svn' will read this commit to get the SVN revision the "
-"branch was created from. It will then try to find the Git commit that "
-"corresponds to this SVN revision, and use that as the parent of the "
-"branch. However, it is possible that there is no suitable Git commit to "
-"serve as parent.  This will happen, among other reasons, if the SVN branch "
-"is a copy of a revision that was not fetched by 'git svn' (e.g. because it "
-"is an old revision that was skipped with `--revision`), or if in SVN a "
-"directory was copied that is not tracked by 'git svn' (such as a branch that "
-"is not tracked at all, or a subdirectory of a tracked branch). In these "
-"cases, 'git svn' will still create a Git branch, but instead of using an "
-"existing Git commit as the parent of the branch, it will read the SVN "
-"history of the directory the branch was copied from and create appropriate "
-"Git commits.  This is indicated by the message \"Initializing parent: "
-"<branchname>\"."
+#. type: delimited block -
+#: en/git-rm.txt:135
+#, no-wrap
+msgid "git diff --name-only --diff-filter=D -z | xargs -0 git rm --cached\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:945
+#: en/git-rm.txt:148
 msgid ""
-"Additionally, it will create a special branch named "
-"'<branchname>@<SVN-Revision>', where <SVN-Revision> is the SVN revision "
-"number the branch was copied from.  This branch will point to the newly "
-"created parent commit of the branch.  If in SVN the branch was deleted and "
-"later recreated from a different version, there will be multiple such "
-"branches with an '@'."
+"Only submodules using a gitfile (which means they were cloned with a Git "
+"version 1.7.8 or newer) will be removed from the work tree, as their "
+"repository lives inside the .git directory of the superproject. If a "
+"submodule (or one of those nested inside it)  still uses a .git directory, "
+"`git rm` will move the submodules git directory into the superprojects git "
+"directory to protect the submodule's history. If it exists the submodule."
+"<name> section in the linkgit:gitmodules[5] file will also be removed and "
+"that file will be staged (unless --cached or -n are used)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:948
+#: en/git-rm.txt:154
 msgid ""
-"Note that this may mean that multiple Git commits are created for a single "
-"SVN revision."
+"A submodule is considered up to date when the HEAD is the same as recorded "
+"in the index, no tracked files are modified and no untracked files that "
+"aren't ignored are present in the submodules work tree.  Ignored files are "
+"deemed expendable and won't stop a submodule's work tree from being removed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:958
+#: en/git-rm.txt:158
 msgid ""
-"An example: in an SVN repository with a standard trunk/tags/branches layout, "
-"a directory trunk/sub is created in r.100.  In r.200, trunk/sub is branched "
-"by copying it to branches/. 'git svn clone -s' will then create a branch "
-"'sub'. It will also create new Git commits for r.100 through r.199 and use "
-"these as the history of branch 'sub'. Thus there will be two Git commits for "
-"each revision from r.100 to r.199 (one containing trunk/, one containing "
-"trunk/sub/). Finally, it will create a branch 'sub@200' pointing to the new "
-"parent commit of branch 'sub' (i.e. the commit for r.200 and trunk/sub/)."
+"If you only want to remove the local checkout of a submodule from your work "
+"tree without committing the removal, use linkgit:git-submodule[1] `deinit` "
+"instead. Also see linkgit:gitsubmodules[7] for details on submodule removal."
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:968
-msgid ""
-"For the sake of simplicity and interoperating with Subversion, it is "
-"recommended that all 'git svn' users clone, fetch and dcommit directly from "
-"the SVN server, and avoid all 'git clone'/'pull'/'merge'/'push' operations "
-"between Git repositories and branches.  The recommended method of exchanging "
-"code between Git branches and users is 'git format-patch' and 'git am', or "
-"just 'dcommit'ing to the SVN repository."
+#. type: Labeled list
+#: en/git-rm.txt:161
+#, no-wrap
+msgid "`git rm Documentation/\\*.txt`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:974
+#: en/git-rm.txt:164
 msgid ""
-"Running 'git merge' or 'git pull' is NOT recommended on a branch you plan to "
-"'dcommit' from because Subversion users cannot see any merges you've made.  "
-"Furthermore, if you merge or pull from a Git branch that is a mirror of an "
-"SVN branch, 'dcommit' may commit to the wrong branch."
+"Removes all `*.txt` files from the index that are under the `Documentation` "
+"directory and any of its subdirectories."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:977
+#: en/git-rm.txt:168
 msgid ""
-"If you do merge, note the following rule: 'git svn dcommit' will attempt to "
-"commit on top of the SVN commit named in"
+"Note that the asterisk `*` is quoted from the shell in this example; this "
+"lets Git, and not the shell, expand the pathnames of files and "
+"subdirectories under the `Documentation/` directory."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-svn.txt:979
+#. type: Labeled list
+#: en/git-rm.txt:169
 #, no-wrap
-msgid "git log --grep=^git-svn-id: --first-parent -1\n"
+msgid "`git rm -f git-*.sh`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:984
+#: en/git-rm.txt:173
 msgid ""
-"You 'must' therefore ensure that the most recent commit of the branch you "
-"want to dcommit to is the 'first' parent of the merge.  Chaos will ensue "
-"otherwise, especially if the first parent is an older commit on the same SVN "
-"branch."
+"Because this example lets the shell expand the asterisk (i.e. you are "
+"listing the files explicitly), it does not remove `subdir/git-foo.sh`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:989
+#: en/git-rm.txt:182
 msgid ""
-"'git clone' does not clone branches under the refs/remotes/ hierarchy or any "
-"'git svn' metadata, or config.  So repositories created and managed with "
-"using 'git svn' should use 'rsync' for cloning, if cloning is to be done at "
-"all."
+"Each time a superproject update removes a populated submodule (e.g. when "
+"switching between commits before and after the removal) a stale submodule "
+"checkout will remain in the old location. Removing the old directory is only "
+"safe when it uses a gitfile, as otherwise the history of the submodule will "
+"be deleted too. This step will be obsolete when recursive submodule update "
+"has been implemented."
+msgstr ""
+
+#. type: Title =
+#: en/git-send-email.txt:2
+#, no-wrap
+msgid "git-send-email(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:994
-msgid ""
-"Since 'dcommit' uses rebase internally, any Git branches you 'git push' to "
-"before 'dcommit' on will require forcing an overwrite of the existing ref on "
-"the remote repository.  This is generally considered bad practice, see the "
-"linkgit:git-push[1] documentation for details."
+#: en/git-send-email.txt:7
+msgid "git-send-email - Send a collection of patches as emails"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:999
+#: en/git-send-email.txt:14
+#, no-wrap
 msgid ""
-"Do not use the --amend option of linkgit:git-commit[1] on a change you've "
-"already dcommitted.  It is considered bad practice to --amend commits you've "
-"already pushed to a remote repository for other users, and dcommit with SVN "
-"is analogous to that."
+"'git send-email' [<options>] <file|directory|rev-list options>...\n"
+"'git send-email' --dump-aliases\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:1014
+#: en/git-send-email.txt:23
 msgid ""
-"When cloning an SVN repository, if none of the options for describing the "
-"repository layout is used (--trunk, --tags, --branches, --stdlayout), 'git "
-"svn clone' will create a Git repository with completely linear history, "
-"where branches and tags appear as separate directories in the working copy.  "
-"While this is the easiest way to get a copy of a complete repository, for "
-"projects with many branches it will lead to a working copy many times larger "
-"than just the trunk. Thus for projects using the standard directory "
-"structure (trunk/branches/tags), it is recommended to clone with option "
-"`--stdlayout`. If the project uses a non-standard structure, and/or if "
-"branches and tags are not required, it is easiest to only clone one "
-"directory (typically trunk), without giving any repository layout options.  "
-"If the full history with branches and tags is required, the options "
-"`--trunk` / `--branches` / `--tags` must be used."
+"Takes the patches given on the command line and emails them out.  Patches "
+"can be specified as files, directories (which will send all files in the "
+"directory), or directly as a revision list.  In the last case, any format "
+"accepted by linkgit:git-format-patch[1] can be passed to git send-email."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:1021
+#: en/git-send-email.txt:27
 msgid ""
-"When using multiple --branches or --tags, 'git svn' does not automatically "
-"handle name collisions (for example, if two branches from different paths "
-"have the same name, or if a branch and a tag have the same name).  In these "
-"cases, use 'init' to set up your Git repository then, before your first "
-"'fetch', edit the $GIT_DIR/config file so that the branches and tags are "
-"associated with different name spaces.  For example:"
+"The header of the email is configurable via command-line options.  If not "
+"specified on the command line, the user will be prompted with a ReadLine "
+"enabled interface to provide the necessary information."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:1024
-#, no-wrap
-msgid ""
-"\tbranches = stable/*:refs/remotes/svn/stable/*\n"
-"\tbranches = debug/*:refs/remotes/svn/debug/*\n"
+#: en/git-send-email.txt:29
+msgid "There are two formats accepted for patch files:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:1030
-msgid ""
-"We ignore all SVN properties except svn:executable.  Any unhandled "
-"properties are logged to $GIT_DIR/svn/<refname>/unhandled.log"
+#: en/git-send-email.txt:31
+msgid "mbox format files"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:1037
+#: en/git-send-email.txt:34
 msgid ""
-"Renamed and copied directories are not detected by Git and hence not tracked "
-"when committing to SVN.  I do not plan on adding support for this as it's "
-"quite difficult and time-consuming to get working for all the possible "
-"corner cases (Git doesn't do it, either).  Committing renamed and copied "
-"files is fully supported if they're similar enough for Git to detect them."
+"This is what linkgit:git-format-patch[1] generates.  Most headers and MIME "
+"formatting are ignored."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:1043
+#: en/git-send-email.txt:37
 msgid ""
-"In SVN, it is possible (though discouraged) to commit changes to a tag "
-"(because a tag is just a directory copy, thus technically the same as a "
-"branch). When cloning an SVN repository, 'git svn' cannot know if such a "
-"commit to a tag will happen in the future. Thus it acts conservatively and "
-"imports all SVN tags as branches, prefixing the tag name with 'tags/'."
+"The original format used by Greg Kroah-Hartman's 'send_lots_of_email.pl' "
+"script"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:1054
+#: en/git-send-email.txt:40
 msgid ""
-"'git svn' stores [svn-remote] configuration information in the repository "
-"$GIT_DIR/config file.  It is similar the core Git [remote] sections except "
-"'fetch' keys do not accept glob arguments; but they are instead handled by "
-"the 'branches' and 'tags' keys.  Since some SVN repositories are oddly "
-"configured with multiple projects glob expansions such those listed below "
-"are allowed:"
+"This format expects the first line of the file to contain the \"Cc:\" value "
+"and the \"Subject:\" of the message as the second line."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-svn.txt:1063
+#. type: Title ~
+#: en/git-send-email.txt:46
 #, no-wrap
-msgid ""
-"[svn-remote \"project-a\"]\n"
-"\turl = http://server.org/svn\n"
-"\tfetch = trunk/project-a:refs/remotes/project-a/trunk\n"
-"\tbranches = branches/*/project-a:refs/remotes/project-a/branches/*\n"
-"\tbranches = branches/release_*:refs/remotes/project-a/branches/release_*\n"
-"\tbranches = branches/re*se:refs/remotes/project-a/branches/*\n"
-"\ttags = tags/*/project-a:refs/remotes/project-a/tags/*\n"
+msgid "Composing"
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:1071
+#. type: Labeled list
+#: en/git-send-email.txt:48 en/git-tag.txt:61
 #, no-wrap
-msgid ""
-"Keep in mind that the '\\*' (asterisk) wildcard of the local ref\n"
-"(right of the ':') *must* be the farthest right path component;\n"
-"however the remote wildcard may be anywhere as long as it's an\n"
-"independent path component (surrounded by '/' or EOL).   This\n"
-"type of configuration is not automatically created by 'init' and\n"
-"should be manually entered with a text-editor or using 'git config'.\n"
+msgid "--annotate"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:1073
-msgid "Also note that only one asterisk is allowed per word. For example:"
+#: en/git-send-email.txt:52
+msgid ""
+"Review and edit each patch you're about to send. Default is the value of "
+"`sendemail.annotate`. See the CONFIGURATION section for `sendemail."
+"multiEdit`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:1075
+#. type: Labeled list
+#: en/git-send-email.txt:53
 #, no-wrap
-msgid "\tbranches = branches/re*se:refs/remotes/project-a/branches/*\n"
+msgid "--bcc=<address>,..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:1077
-msgid "will match branches 'release', 'rese', 're123se', however"
+#: en/git-send-email.txt:56
+msgid ""
+"Specify a \"Bcc:\" value for each email. Default is the value of `sendemail."
+"bcc`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:1079
-#, no-wrap
-msgid "\tbranches = branches/re*s*e:refs/remotes/project-a/branches/*\n"
+#: en/git-send-email.txt:58 en/git-send-email.txt:64 en/git-send-email.txt:126
+msgid "This option may be specified multiple times."
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:1081
-msgid "will produce an error."
+#. type: Labeled list
+#: en/git-send-email.txt:59
+#, no-wrap
+msgid "--cc=<address>,..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:1084
+#: en/git-send-email.txt:62
 msgid ""
-"It is also possible to fetch a subset of branches or tags by using a "
-"comma-separated list of names within braces. For example:"
+"Specify a starting \"Cc:\" value for each email.  Default is the value of "
+"`sendemail.cc`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-svn.txt:1091
+#. type: Labeled list
+#: en/git-send-email.txt:65
 #, no-wrap
-msgid ""
-"[svn-remote \"huge-project\"]\n"
-"\turl = http://server.org/svn\n"
-"\tfetch = trunk/src:refs/remotes/trunk\n"
-"\tbranches = branches/{red,green}/src:refs/remotes/project-a/branches/*\n"
-"\ttags = tags/{1.0,2.0}/src:refs/remotes/project-a/tags/*\n"
+msgid "--compose"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:1094
-msgid "Multiple fetch, branches, and tags keys are supported:"
-msgstr ""
-
-#. type: delimited block -
-#: en/git-svn.txt:1103
-#, no-wrap
+#: en/git-send-email.txt:68
 msgid ""
-"[svn-remote \"messy-repo\"]\n"
-"\turl = http://server.org/svn\n"
-"\tfetch = trunk/project-a:refs/remotes/project-a/trunk\n"
-"\tfetch = "
-"branches/demos/june-project-a-demo:refs/remotes/project-a/demos/june-demo\n"
-"\tbranches = branches/server/*:refs/remotes/project-a/branches/*\n"
-"\tbranches = branches/demos/2011/*:refs/remotes/project-a/2011-demos/*\n"
-"\ttags = tags/server/*:refs/remotes/project-a/tags/*\n"
+"Invoke a text editor (see GIT_EDITOR in linkgit:git-var[1])  to edit an "
+"introductory message for the patch series."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:1107
+#: en/git-send-email.txt:74
 msgid ""
-"Creating a branch in such a configuration requires disambiguating which "
-"location to use using the -d or --destination flag:"
+"When `--compose` is used, git send-email will use the From, Subject, and In-"
+"Reply-To headers specified in the message. If the body of the message (what "
+"you type after the headers and a blank line) only contains blank (or Git: "
+"prefixed) lines, the summary won't be sent, but From, Subject, and In-Reply-"
+"To headers will be used unless they are removed."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-svn.txt:1110
-#, no-wrap
-msgid "$ git svn branch -d branches/server release-2-3-0\n"
+#. type: Plain text
+#: en/git-send-email.txt:76
+msgid "Missing From or In-Reply-To headers will be prompted for."
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:1116
-msgid ""
-"Note that git-svn keeps track of the highest revision in which a branch or "
-"tag has appeared. If the subset of branches or tags is changed after "
-"fetching, then $GIT_DIR/svn/.metadata must be manually edited to remove (or "
-"reset) branches-maxRev and/or tags-maxRev as appropriate."
+#: en/git-send-email.txt:78
+msgid "See the CONFIGURATION section for `sendemail.multiEdit`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-svn.txt:1125
+#. type: Labeled list
+#: en/git-send-email.txt:79
 #, no-wrap
-msgid ""
-"$GIT_DIR/svn/\\*\\*/.rev_map.*::\n"
-"\tMapping between Subversion revision numbers and Git commit\n"
-"\tnames.  In a repository where the noMetadata option is not set,\n"
-"\tthis can be rebuilt from the git-svn-id: lines that are at the\n"
-"\tend of every commit (see the 'svn.noMetadata' section above for\n"
-"\tdetails).\n"
+msgid "--from=<address>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-svn.txt:1129
+#: en/git-send-email.txt:86
 msgid ""
-"'git svn fetch' and 'git svn rebase' automatically update the rev_map if it "
-"is missing or not up to date.  'git svn reset' automatically rewinds it."
+"Specify the sender of the emails.  If not specified on the command line, the "
+"value of the `sendemail.from` configuration option is used.  If neither the "
+"command-line option nor `sendemail.from` are set, then the user will be "
+"prompted for the value.  The default for the prompt will be the value of "
+"GIT_AUTHOR_IDENT, or GIT_COMMITTER_IDENT if that is not set, as returned by "
+"\"git var -l\"."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-svn.txt:1133 en/cmds-mainporcelain.txt:79
-#, no-wrap
-msgid "linkgit:git-rebase[1]"
-msgstr ""
-
-#. type: Title =
-#: en/git-symbolic-ref.txt:2
+#: en/git-send-email.txt:87
 #, no-wrap
-msgid "git-symbolic-ref(1)"
+msgid "--reply-to=<address>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-symbolic-ref.txt:7
-msgid "git-symbolic-ref - Read, modify and delete symbolic refs"
+#: en/git-send-email.txt:91
+msgid ""
+"Specify the address where replies from recipients should go to.  Use this if "
+"replies to messages should go to another address than what is specified with "
+"the --from parameter."
 msgstr ""
 
-#. type: Plain text
-#: en/git-symbolic-ref.txt:14
+#. type: Labeled list
+#: en/git-send-email.txt:92
 #, no-wrap
-msgid ""
-"'git symbolic-ref' [-m <reason>] <name> <ref>\n"
-"'git symbolic-ref' [-q] [--short] <name>\n"
-"'git symbolic-ref' --delete [-q] <name>\n"
+msgid "--in-reply-to=<identifier>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-symbolic-ref.txt:21
+#: en/git-send-email.txt:98
 msgid ""
-"Given one argument, reads which branch head the given symbolic ref refers to "
-"and outputs its path, relative to the `.git/` directory.  Typically you "
-"would give `HEAD` as the <name> argument to see which branch your working "
-"tree is on."
+"Make the first mail (or all the mails with `--no-thread`) appear as a reply "
+"to the given Message-Id, which avoids breaking threads to provide a new "
+"patch series.  The second and subsequent emails will be sent as replies "
+"according to the `--[no-]chain-reply-to` setting."
 msgstr ""
 
 #. type: Plain text
-#: en/git-symbolic-ref.txt:24
+#: en/git-send-email.txt:102
 msgid ""
-"Given two arguments, creates or updates a symbolic ref <name> to point at "
-"the given branch <ref>."
+"So for example when `--thread` and `--no-chain-reply-to` are specified, the "
+"second and subsequent patches will be replies to the first one like in the "
+"illustration below where `[PATCH v2 0/3]` is in reply to `[PATCH 0/2]`:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-symbolic-ref.txt:27
-msgid "Given `--delete` and an additional argument, deletes the given symbolic ref."
+#: en/git-send-email.txt:110
+#, no-wrap
+msgid ""
+"  [PATCH 0/2] Here is what I did...\n"
+"    [PATCH 1/2] Clean up and tests\n"
+"    [PATCH 2/2] Implementation\n"
+"    [PATCH v2 0/3] Here is a reroll\n"
+"      [PATCH v2 1/3] Clean up\n"
+"      [PATCH v2 2/3] New tests\n"
+"      [PATCH v2 3/3] Implementation\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-symbolic-ref.txt:31
+#: en/git-send-email.txt:113
 msgid ""
-"A symbolic ref is a regular file that stores a string that begins with `ref: "
-"refs/`.  For example, your `.git/HEAD` is a regular file whose contents is "
-"`ref: refs/heads/master`."
+"Only necessary if --compose is also set.  If --compose is not set, this will "
+"be prompted for."
 msgstr ""
 
-#. type: Plain text
-#: en/git-symbolic-ref.txt:38
-msgid "Delete the symbolic ref <name>."
+#. type: Labeled list
+#: en/git-send-email.txt:114
+#, no-wrap
+msgid "--subject=<string>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-symbolic-ref.txt:44
+#: en/git-send-email.txt:118
 msgid ""
-"Do not issue an error message if the <name> is not a symbolic ref but a "
-"detached HEAD; instead exit with non-zero status silently."
+"Specify the initial subject of the email thread.  Only necessary if --"
+"compose is also set.  If --compose is not set, this will be prompted for."
 msgstr ""
 
-#. type: Plain text
-#: en/git-symbolic-ref.txt:48
-msgid ""
-"When showing the value of <name> as a symbolic ref, try to shorten the "
-"value, e.g. from `refs/heads/master` to `master`."
+#. type: Labeled list
+#: en/git-send-email.txt:119
+#, no-wrap
+msgid "--to=<address>,..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-symbolic-ref.txt:52
+#: en/git-send-email.txt:124
 msgid ""
-"Update the reflog for <name> with <reason>.  This is valid only when "
-"creating or updating a symbolic ref."
+"Specify the primary recipient of the emails generated. Generally, this will "
+"be the upstream maintainer of the project involved. Default is the value of "
+"the `sendemail.to` configuration value; if that is unspecified, and --to-cmd "
+"is not specified, this will be prompted for."
 msgstr ""
 
-#. type: Plain text
-#: en/git-symbolic-ref.txt:62
-msgid ""
-"In the past, `.git/HEAD` was a symbolic link pointing at "
-"`refs/heads/master`.  When we wanted to switch to another branch, we did `ln "
-"-sf refs/heads/newbranch .git/HEAD`, and when we wanted to find out which "
-"branch we are on, we did `readlink .git/HEAD`.  But symbolic links are not "
-"entirely portable, so they are now deprecated and symbolic refs (as "
-"described above) are used by default."
+#. type: Labeled list
+#: en/git-send-email.txt:127
+#, no-wrap
+msgid "--8bit-encoding=<encoding>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-symbolic-ref.txt:66
+#: en/git-send-email.txt:133
 msgid ""
-"'git symbolic-ref' will exit with status 0 if the contents of the symbolic "
-"ref were printed correctly, with status 1 if the requested name is not a "
-"symbolic ref, or 128 if another error occurs."
-msgstr ""
-
-#. type: Title =
-#: en/git-tag.txt:2
-#, no-wrap
-msgid "git-tag(1)"
+"When encountering a non-ASCII message or subject that does not declare its "
+"encoding, add headers/quoting to indicate it is encoded in <encoding>.  "
+"Default is the value of the 'sendemail.assume8bitEncoding'; if that is "
+"unspecified, this will be prompted for if any non-ASCII files are "
+"encountered."
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:7
-msgid "git-tag - Create, list, delete or verify a tag object signed with GPG"
+#: en/git-send-email.txt:135
+msgid "Note that no attempts whatsoever are made to validate the encoding."
 msgstr ""
 
-#. type: Plain text
-#: en/git-tag.txt:19
+#. type: Labeled list
+#: en/git-send-email.txt:136
 #, no-wrap
-msgid ""
-"'git tag' [-a | -s | -u <keyid>] [-f] [-m <msg> | -F <file>]\n"
-"\t<tagname> [<commit> | <object>]\n"
-"'git tag' -d <tagname>...\n"
-"'git tag' [-n[<num>]] -l [--contains <commit>] [--points-at <object>]\n"
-"\t[--column[=<options>] | --no-column] [--create-reflog] [--sort=<key>]\n"
-"\t[--format=<format>] [--[no-]merged [<commit>]] [<pattern>...]\n"
-"'git tag' -v [--format=<format>] <tagname>...\n"
+msgid "--compose-encoding=<encoding>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:25
+#: en/git-send-email.txt:139
 msgid ""
-"Add a tag reference in `refs/tags/`, unless `-d/-l/-v` is given to delete, "
-"list or verify tags."
-msgstr ""
-
-#. type: Plain text
-#: en/git-tag.txt:27
-msgid "Unless `-f` is given, the named tag must not yet exist."
+"Specify encoding of compose message. Default is the value of the 'sendemail."
+"composeencoding'; if that is unspecified, UTF-8 is assumed."
 msgstr ""
 
-#. type: Plain text
-#: en/git-tag.txt:32
-msgid ""
-"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."
+#. type: Labeled list
+#: en/git-send-email.txt:140
+#, no-wrap
+msgid "--transfer-encoding=(7bit|8bit|quoted-printable|base64|auto)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:35
+#: en/git-send-email.txt:148
 msgid ""
-"If `-m <msg>` or `-F <file>` is given and `-a`, `-s`, and `-u <keyid>` are "
-"absent, `-a` is implied."
+"Specify the transfer encoding to be used to send the message over SMTP.  "
+"7bit will fail upon encountering a non-ASCII message.  quoted-printable can "
+"be useful when the repository contains files that contain carriage returns, "
+"but makes the raw patch email file (as saved from a MUA) much harder to "
+"inspect manually.  base64 is even more fool proof, but also even more "
+"opaque.  auto will use 8bit when possible, and quoted-printable otherwise."
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:38
+#: en/git-send-email.txt:151
 msgid ""
-"Otherwise just a tag reference for the SHA-1 object name of the commit "
-"object is created (i.e. a lightweight tag)."
+"Default is the value of the `sendemail.transferEncoding` configuration "
+"value; if that is unspecified, default to `auto`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-tag.txt:44
-msgid ""
-"A GnuPG signed tag object will be created when `-s` or `-u <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. \tThe configuration variable "
-"`gpg.program` is used to specify custom GnuPG binary."
+#. type: Labeled list
+#: en/git-send-email.txt:152
+#, no-wrap
+msgid "--xmailer"
 msgstr ""
 
-#. type: Plain text
-#: en/git-tag.txt:50
-msgid ""
-"Tag objects (created with `-a`, `-s`, or `-u`) are called \"annotated\" "
-"tags; they contain a creation date, the tagger name and e-mail, a tagging "
-"message, and an optional GnuPG signature. Whereas a \"lightweight\" tag is "
-"simply a name for an object (usually a commit object)."
+#. type: Labeled list
+#: en/git-send-email.txt:153
+#, no-wrap
+msgid "--no-xmailer"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:55
+#: en/git-send-email.txt:157
 msgid ""
-"Annotated tags are meant for release while lightweight tags are meant for "
-"private or temporary object labels. For this reason, some git commands for "
-"naming objects (like `git describe`) will ignore lightweight tags by "
-"default."
+"Add (or prevent adding) the \"X-Mailer:\" header.  By default, the header is "
+"added, but it can be turned off by setting the `sendemail.xmailer` "
+"configuration variable to `false`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-tag.txt:62
-msgid "Make an unsigned, annotated tag object"
+#. type: Title ~
+#: en/git-send-email.txt:159
+#, no-wrap
+msgid "Sending"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-tag.txt:64
+#: en/git-send-email.txt:161
 #, no-wrap
-msgid "--sign"
+msgid "--envelope-sender=<address>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:66
-msgid "Make a GPG-signed tag, using the default e-mail address's key."
+#: en/git-send-email.txt:169
+msgid ""
+"Specify the envelope sender used to send the emails.  This is useful if your "
+"default address is not the address that is subscribed to a list. In order to "
+"use the 'From' address, set the value to \"auto\". If you use the sendmail "
+"binary, you must have suitable privileges for the -f parameter.  Default is "
+"the value of the `sendemail.envelopeSender` configuration variable; if that "
+"is unspecified, choosing the envelope sender is left to your MTA."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-tag.txt:67
+#: en/git-send-email.txt:170
 #, no-wrap
-msgid "-u <keyid>"
+msgid "--smtp-encryption=<encryption>"
+msgstr ""
+
+#. type: Plain text
+#: en/git-send-email.txt:174
+msgid ""
+"Specify the encryption to use, either 'ssl' or 'tls'.  Any other value "
+"reverts to plain SMTP.  Default is the value of `sendemail.smtpEncryption`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-tag.txt:68
+#: en/git-send-email.txt:175
 #, no-wrap
-msgid "--local-user=<keyid>"
+msgid "--smtp-domain=<FQDN>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:70
-msgid "Make a GPG-signed tag, using the given key."
+#: en/git-send-email.txt:181
+msgid ""
+"Specifies the Fully Qualified Domain Name (FQDN) used in the HELO/EHLO "
+"command to the SMTP server.  Some servers require the FQDN to match your IP "
+"address.  If not set, git send-email attempts to determine your FQDN "
+"automatically.  Default is the value of `sendemail.smtpDomain`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-tag.txt:74
-msgid "Replace an existing tag with the given name (instead of failing)"
+#. type: Labeled list
+#: en/git-send-email.txt:182
+#, no-wrap
+msgid "--smtp-auth=<mechanisms>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:78
-msgid "Delete existing tags with the given names."
+#: en/git-send-email.txt:185
+msgid ""
+"Whitespace-separated list of allowed SMTP-AUTH mechanisms. This setting "
+"forces using only the listed mechanisms. Example:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-send-email.txt:188
+#, no-wrap
+msgid "$ git send-email --smtp-auth=\"PLAIN LOGIN GSSAPI\" ...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:82
-msgid "Verify the GPG signature of the given tag names."
+#: en/git-send-email.txt:196
+msgid ""
+"If at least one of the specified mechanisms matches the ones advertised by "
+"the SMTP server and if it is supported by the utilized SASL library, the "
+"mechanism is used for authentication. If neither 'sendemail.smtpAuth' nor `--"
+"smtp-auth` is specified, all mechanisms supported by the SASL library can be "
+"used. The special value 'none' maybe specified to completely disable "
+"authentication independently of `--smtp-user`"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-tag.txt:83
+#: en/git-send-email.txt:197
 #, no-wrap
-msgid "-n<num>"
+msgid "--smtp-pass[=<password>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:89
+#: en/git-send-email.txt:202
 msgid ""
-"<num> specifies how many lines from the annotation, if any, are printed when "
-"using -l.  The default is not to print any annotation lines.  If no number "
-"is given to `-n`, only the first line is printed.  If the tag is not "
-"annotated, the commit message is displayed instead."
+"Password for SMTP-AUTH. The argument is optional: If no argument is "
+"specified, then the empty string is used as the password. Default is the "
+"value of `sendemail.smtpPass`, however `--smtp-pass` always overrides this "
+"value."
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:97
+#: en/git-send-email.txt:208
 msgid ""
-"List tags with names that match the given pattern (or all if no pattern is "
-"given).  Running \"git tag\" without arguments also lists all tags. The "
-"pattern is a shell wildcard (i.e., matched using fnmatch(3)).  Multiple "
-"patterns may be given; if any of them matches, the tag is shown."
+"Furthermore, passwords need not be specified in configuration files or on "
+"the command line. If a username has been specified (with `--smtp-user` or a "
+"`sendemail.smtpUser`), but no password has been specified (with `--smtp-"
+"pass` or `sendemail.smtpPass`), then a password is obtained using 'git-"
+"credential'."
 msgstr ""
 
-#. type: Plain text
-#: en/git-tag.txt:110
-msgid ""
-"Sort based on the key given.  Prefix `-` to sort in descending order of the "
-"value. You may use the --sort=<key> option multiple times, in which case the "
-"last key becomes the primary key. Also supports \"version:refname\" or "
-"\"v:refname\" (tag names are treated as versions). The \"version:refname\" "
-"sort order can also be affected by the \"versionsort.suffix\" configuration "
-"variable.  The keys supported are the same as those in `git for-each-ref`.  "
-"Sort order defaults to the value configured for the `tag.sort` variable if "
-"it exists, or lexicographic order otherwise. See linkgit:git-config[1]."
+#. type: Labeled list
+#: en/git-send-email.txt:209
+#, no-wrap
+msgid "--no-smtp-auth"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:114
-msgid "Sorting and filtering tags are case insensitive."
+#: en/git-send-email.txt:211
+msgid "Disable SMTP authentication. Short hand for `--smtp-auth=none`"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-send-email.txt:212
+#, no-wrap
+msgid "--smtp-server=<host>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:120
+#: en/git-send-email.txt:221
 msgid ""
-"Display tag listing in columns. See configuration variable column.tag for "
-"option syntax.`--column` and `--no-column` without options are equivalent to "
-"'always' and 'never' respectively."
+"If set, specifies the outgoing SMTP server to use (e.g.  `smtp.example.com` "
+"or a raw IP address).  Alternatively it can specify a full pathname of a "
+"sendmail-like program instead; the program must support the `-i` option.  "
+"Default value can be specified by the `sendemail.smtpServer` configuration "
+"option; the built-in default is to search for `sendmail` in `/usr/sbin`, `/"
+"usr/lib` and $PATH if such program is available, falling back to `localhost` "
+"otherwise."
 msgstr ""
 
-#. type: Plain text
-#: en/git-tag.txt:122
-msgid "This option is only applicable when listing tags without annotation lines."
+#. type: Labeled list
+#: en/git-send-email.txt:222
+#, no-wrap
+msgid "--smtp-server-port=<port>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:126
-msgid "Only list tags which contain the specified commit (HEAD if not specified)."
+#: en/git-send-email.txt:229
+msgid ""
+"Specifies a port different from the default port (SMTP servers typically "
+"listen to smtp port 25, but may also listen to submission port 587, or the "
+"common SSL smtp port 465); symbolic port names (e.g. \"submission\" instead "
+"of 587)  are also accepted. The port can also be set with the `sendemail."
+"smtpServerPort` configuration variable."
 msgstr ""
 
-#. type: Plain text
-#: en/git-tag.txt:129
-msgid "Only list tags of the given object."
+#. type: Labeled list
+#: en/git-send-email.txt:230
+#, no-wrap
+msgid "--smtp-server-option=<option>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:137
+#: en/git-send-email.txt:234
 msgid ""
-"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 <keyid>` is given."
+"If set, specifies the outgoing SMTP server option to use.  Default value can "
+"be specified by the `sendemail.smtpServerOption` configuration option."
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:144
+#: en/git-send-email.txt:238
 msgid ""
-"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 <keyid>` is "
-"given."
+"The --smtp-server-option option must be repeated for each option you want to "
+"pass to the server. Likewise, different lines in the configuration files "
+"must be used for each option."
 msgstr ""
 
-#. type: Plain text
-#: en/git-tag.txt:151
-msgid ""
-"This option sets how the tag message is cleaned up.  The '<mode>' can be one "
-"of 'verbatim', 'whitespace' and 'strip'.  The 'strip' mode is default. The "
-"'verbatim' mode does not change message at all, 'whitespace' removes just "
-"leading/trailing whitespace lines and 'strip' removes both whitespace and "
-"commentary."
+#. type: Labeled list
+#: en/git-send-email.txt:239
+#, no-wrap
+msgid "--smtp-ssl"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:158
-msgid ""
-"Create a reflog for the tag. To globally enable reflogs for tags, see "
-"`core.logAllRefUpdates` in linkgit:git-config[1].  The negated form "
-"`--no-create-reflog` only overrides an earlier `--create-reflog`, but "
-"currently does not negate the setting of `core.logallrefupdates`."
+#: en/git-send-email.txt:241
+msgid "Legacy alias for '--smtp-encryption ssl'."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-tag.txt:159
+#: en/git-send-email.txt:242
 #, no-wrap
-msgid "<tagname>"
+msgid "--smtp-ssl-cert-path"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:164
+#: en/git-send-email.txt:252
 msgid ""
-"The name of the tag to create, delete, or describe.  The new tag name must "
-"pass all checks defined by linkgit:git-check-ref-format[1].  Some of these "
-"checks may restrict the characters allowed in a tag name."
+"Path to a store of trusted CA certificates for SMTP SSL/TLS certificate "
+"validation (either a directory that has been processed by 'c_rehash', or a "
+"single file containing one or more PEM format certificates concatenated "
+"together: see verify(1) -CAfile and -CApath for more information on these). "
+"Set it to an empty string to disable certificate verification. Defaults to "
+"the value of the `sendemail.smtpsslcertpath` configuration variable, if set, "
+"or the backing SSL library's compiled-in default otherwise (which should be "
+"the best choice on most platforms)."
 msgstr ""
 
-#. type: Plain text
-#: en/git-tag.txt:169
-msgid ""
-"The object that the new tag will refer to, usually a commit.  Defaults to "
-"HEAD."
+#. type: Labeled list
+#: en/git-send-email.txt:253
+#, no-wrap
+msgid "--smtp-user=<user>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:175
+#: en/git-send-email.txt:257
 msgid ""
-"A string that interpolates `%(fieldname)` from the object pointed at by a "
-"ref being shown.  The format is the same as that of "
-"linkgit:git-for-each-ref[1].  When unspecified, defaults to "
-"`%(refname:strip=2)`."
+"Username for SMTP-AUTH. Default is the value of `sendemail.smtpUser`; if a "
+"username is not specified (with `--smtp-user` or `sendemail.smtpUser`), then "
+"authentication is not attempted."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-tag.txt:176
+#: en/git-send-email.txt:258
 #, no-wrap
-msgid "--[no-]merged [<commit>]"
+msgid "--smtp-debug=0|1"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:180
+#: en/git-send-email.txt:262
 msgid ""
-"Only list tags whose tips are reachable, or not reachable if `--no-merged` "
-"is used, from the specified commit (`HEAD` if not specified)."
+"Enable (1) or disable (0) debug output. If enabled, SMTP commands and "
+"replies will be printed. Useful to debug TLS connection and authentication "
+"problems."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-send-email.txt:263
+#, no-wrap
+msgid "--batch-size=<num>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:187
+#: en/git-send-email.txt:272
 msgid ""
-"By default, 'git tag' in sign-with-default mode (-s) will use your committer "
-"identity (of the form `Your Name <your@email.address>`) to find a key.  If "
-"you want to use a different default key, you can specify it in the "
-"repository configuration as follows:"
+"Some email servers (e.g. smtp.163.com) limit the number emails to be sent "
+"per session (connection) and this will lead to a failure when sending many "
+"messages.  With this option, send-email will disconnect after sending $<num> "
+"messages and wait for a few seconds (see --relogin-delay)  and reconnect, to "
+"work around such a limit.  You may want to use some form of credential "
+"helper to avoid having to retype your password every time this happens.  "
+"Defaults to the `sendemail.smtpBatchSize` configuration variable."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-tag.txt:191
+#. type: Labeled list
+#: en/git-send-email.txt:273
 #, no-wrap
+msgid "--relogin-delay=<int>"
+msgstr ""
+
+#. type: Plain text
+#: en/git-send-email.txt:277
 msgid ""
-"[user]\n"
-"    signingKey = <gpg-keyid>\n"
+"Waiting $<int> seconds before reconnecting to SMTP server. Used together "
+"with --batch-size option.  Defaults to the `sendemail.smtpReloginDelay` "
+"configuration variable."
 msgstr ""
 
 #. type: Title ~
-#: en/git-tag.txt:198
+#: en/git-send-email.txt:279
 #, no-wrap
-msgid "On Re-tagging"
+msgid "Automating"
 msgstr ""
 
-#. type: Plain text
-#: en/git-tag.txt:202
-msgid "What should you do when you tag a wrong commit and you would want to re-tag?"
+#. type: Labeled list
+#: en/git-send-email.txt:281
+#, no-wrap
+msgid "--to-cmd=<command>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:205
+#: en/git-send-email.txt:286
 msgid ""
-"If you never pushed anything out, just re-tag it. Use \"-f\" to replace the "
-"old one. And you're done."
+"Specify a command to execute once per patch file which should generate patch "
+"file specific \"To:\" entries.  Output of this command must be single email "
+"address per line.  Default is the value of 'sendemail.tocmd' configuration "
+"value."
 msgstr ""
 
-#. type: Plain text
-#: en/git-tag.txt:209
-msgid ""
-"But if you have pushed things out (or others could just read your repository "
-"directly), then others will have already seen the old tag. In that case you "
-"can do one of two things:"
+#. type: Labeled list
+#: en/git-send-email.txt:287
+#, no-wrap
+msgid "--cc-cmd=<command>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:216
+#: en/git-send-email.txt:292
 msgid ""
-"The sane thing.  Just admit you screwed up, and use a different name. Others "
-"have already seen one tag-name, and if you keep the same name, you may be in "
-"the situation that two people both have \"version X\", but they actually "
-"have 'different' \"X\"'s.  So just call it \"X.1\" and be done with it."
+"Specify a command to execute once per patch file which should generate patch "
+"file specific \"Cc:\" entries.  Output of this command must be single email "
+"address per line.  Default is the value of `sendemail.ccCmd` configuration "
+"value."
 msgstr ""
 
-#. type: Plain text
-#: en/git-tag.txt:221
-msgid ""
-"The insane thing.  You really want to call the new version \"X\" too, 'even "
-"though' others have already seen the old one. So just use 'git tag -f' "
-"again, as if you hadn't already published the old one."
+#. type: Labeled list
+#: en/git-send-email.txt:293
+#, no-wrap
+msgid "--[no-]chain-reply-to"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:226
+#: en/git-send-email.txt:300
 msgid ""
-"However, Git does *not* (and it should not) change tags behind users "
-"back. So if somebody already got the old tag, doing a 'git pull' on your "
-"tree shouldn't just make them overwrite the old one."
+"If this is set, each email will be sent as a reply to the previous email "
+"sent.  If disabled with \"--no-chain-reply-to\", all emails after the first "
+"will be sent as replies to the first email sent.  When using this, it is "
+"recommended that the first file given be an overview of the entire patch "
+"series. Disabled by default, but the `sendemail.chainReplyTo` configuration "
+"variable can be used to enable it."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-send-email.txt:301
+#, no-wrap
+msgid "--identity=<identity>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:233
+#: en/git-send-email.txt:306
 msgid ""
-"If somebody got a release tag from you, you cannot just change the tag for "
-"them by updating your own one. This is a big security issue, in that people "
-"MUST be able to trust their tag-names.  If you really want to do the insane "
-"thing, you need to just fess up to it, and tell people that you messed "
-"up. You can do that by making a very public announcement saying:"
+"A configuration identity. When given, causes values in the 'sendemail."
+"<identity>' subsection to take precedence over values in the 'sendemail' "
+"section. The default identity is the value of `sendemail.identity`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-tag.txt:237
+#. type: Labeled list
+#: en/git-send-email.txt:307
 #, no-wrap
-msgid ""
-"Ok, I messed up, and I pushed out an earlier version tagged as X. I\n"
-"then fixed something, and retagged the *fixed* tree as X again.\n"
+msgid "--[no-]signed-off-by-cc"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-tag.txt:240
-#, no-wrap
+#. type: Plain text
+#: en/git-send-email.txt:311
 msgid ""
-"If you got the wrong tag, and want the new one, please delete\n"
-"the old one and fetch the new one by doing:\n"
+"If this is set, add emails found in Signed-off-by: or Cc: lines to the cc "
+"list. Default is the value of `sendemail.signedoffbycc` configuration value; "
+"if that is unspecified, default to --signed-off-by-cc."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-tag.txt:243
+#. type: Labeled list
+#: en/git-send-email.txt:312
 #, no-wrap
+msgid "--[no-]cc-cover"
+msgstr ""
+
+#. type: Plain text
+#: en/git-send-email.txt:317
 msgid ""
-"\tgit tag -d X\n"
-"\tgit fetch origin tag X\n"
+"If this is set, emails found in Cc: headers in the first patch of the series "
+"(typically the cover letter) are added to the cc list for each email set. "
+"Default is the value of 'sendemail.cccover' configuration value; if that is "
+"unspecified, default to --no-cc-cover."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-tag.txt:245
+#. type: Labeled list
+#: en/git-send-email.txt:318
 #, no-wrap
-msgid "to get my updated tag.\n"
+msgid "--[no-]to-cover"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-tag.txt:247
-#, no-wrap
-msgid "You can test which tag you have by doing\n"
+#. type: Plain text
+#: en/git-send-email.txt:323
+msgid ""
+"If this is set, emails found in To: headers in the first patch of the series "
+"(typically the cover letter) are added to the to list for each email set. "
+"Default is the value of 'sendemail.tocover' configuration value; if that is "
+"unspecified, default to --no-to-cover."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-tag.txt:249
+#. type: Labeled list
+#: en/git-send-email.txt:324
 #, no-wrap
-msgid "\tgit rev-parse X\n"
+msgid "--suppress-cc=<category>"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-tag.txt:251
-#, no-wrap
-msgid "which should return 0123456789abcdef.. if you have the new version.\n"
+#. type: Plain text
+#: en/git-send-email.txt:327
+msgid ""
+"Specify an additional category of recipients to suppress the auto-cc of:"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-tag.txt:253
-#, no-wrap
-msgid "Sorry for the inconvenience.\n"
+#. type: Plain text
+#: en/git-send-email.txt:330
+msgid "'author' will avoid including the patch author."
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:258
-msgid ""
-"Does this seem a bit complicated? It *should* be. There is no way that it "
-"would be correct to just \"fix\" it automatically.  People need to know that "
-"their tags might have been changed."
+#: en/git-send-email.txt:331
+msgid "'self' will avoid including the sender."
 msgstr ""
 
-#. type: Title ~
-#: en/git-tag.txt:261
-#, no-wrap
-msgid "On Automatic following"
+#. type: Plain text
+#: en/git-send-email.txt:333
+msgid ""
+"'cc' will avoid including anyone mentioned in Cc lines in the patch header "
+"except for self (use 'self' for that)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:266
+#: en/git-send-email.txt:335
 msgid ""
-"If you are following somebody else's tree, you are most likely using "
-"remote-tracking branches (eg. `refs/remotes/origin/master`).  You usually "
-"want the tags from the other end."
+"'bodycc' will avoid including anyone mentioned in Cc lines in the patch body "
+"(commit message) except for self (use 'self' for that)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:273
+#: en/git-send-email.txt:337
 msgid ""
-"On the other hand, if you are fetching because you would want a one-shot "
-"merge from somebody else, you typically do not want to get tags from there.  "
-"This happens more often for people near the toplevel but not limited to "
-"them.  Mere mortals when pulling from each other do not necessarily want to "
-"automatically get private anchor point tags from the other person."
+"'sob' will avoid including anyone mentioned in Signed-off-by lines except "
+"for self (use 'self' for that)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:278
+#: en/git-send-email.txt:340
 msgid ""
-"Often, \"please pull\" messages on the mailing list just provide two pieces "
-"of information: a repo URL and a branch name; this is designed to be easily "
-"cut&pasted at the end of a 'git fetch' command line:"
+"'misc-by' will avoid including anyone mentioned in Acked-by, Reviewed-by, "
+"Tested-by and other \"-by\" lines in the patch body, except Signed-off-by "
+"(use 'sob' for that)."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-tag.txt:281
-#, no-wrap
-msgid "Linus, please pull from\n"
+#. type: Plain text
+#: en/git-send-email.txt:341
+msgid "'cccmd' will avoid running the --cc-cmd."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-tag.txt:283
-#, no-wrap
-msgid "\tgit://git..../proj.git master\n"
+#. type: Plain text
+#: en/git-send-email.txt:342
+msgid "'body' is equivalent to 'sob' + 'bodycc' + 'misc-by'."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-tag.txt:285
-#, no-wrap
-msgid "to get the following updates...\n"
+#. type: Plain text
+#: en/git-send-email.txt:343
+msgid "'all' will suppress all auto cc values."
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:288
-msgid "becomes:"
+#: en/git-send-email.txt:348
+msgid ""
+"Default is the value of `sendemail.suppresscc` configuration value; if that "
+"is unspecified, default to 'self' if --suppress-from is specified, as well "
+"as 'body' if --no-signed-off-cc is specified."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-tag.txt:291
+#. type: Labeled list
+#: en/git-send-email.txt:349
 #, no-wrap
-msgid "$ git pull git://git..../proj.git master\n"
+msgid "--[no-]suppress-from"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:295
+#: en/git-send-email.txt:353
 msgid ""
-"In such a case, you do not want to automatically follow the other person's "
-"tags."
+"If this is set, do not add the From: address to the cc: list.  Default is "
+"the value of `sendemail.suppressFrom` configuration value; if that is "
+"unspecified, default to --no-suppress-from."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-send-email.txt:354
+#, no-wrap
+msgid "--[no-]thread"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:303
+#: en/git-send-email.txt:360
 msgid ""
-"One important aspect of Git is its distributed nature, which largely means "
-"there is no inherent \"upstream\" or \"downstream\" in the system.  On the "
-"face of it, the above example might seem to indicate that the tag namespace "
-"is owned by the upper echelon of people and that tags only flow downwards, "
-"but that is not the case.  It only shows that the usage pattern determines "
-"who are interested in whose tags."
+"If this is set, the In-Reply-To and References headers will be added to each "
+"email sent.  Whether each mail refers to the previous email (`deep` "
+"threading per 'git format-patch' wording) or to the first email (`shallow` "
+"threading) is governed by \"--[no-]chain-reply-to\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:315
+#: en/git-send-email.txt:365
 msgid ""
-"A one-shot pull is a sign that a commit history is now crossing the boundary "
-"between one circle of people (e.g. \"people who are primarily interested in "
-"the networking part of the kernel\") who may have their own set of tags "
-"(e.g. \"this is the third release candidate from the networking group to be "
-"proposed for general consumption with 2.6.21 release\") to another circle of "
-"people (e.g. \"people who integrate various subsystem improvements\").  The "
-"latter are usually not interested in the detailed tags used internally in "
-"the former group (that is what \"internal\" means).  That is why it is "
-"desirable not to follow tags automatically in this case."
+"If disabled with \"--no-thread\", those headers will not be added (unless "
+"specified with --in-reply-to).  Default is the value of the `sendemail."
+"thread` configuration value; if that is unspecified, default to --thread."
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:321
+#: en/git-send-email.txt:371
 msgid ""
-"It may well be that among networking people, they may want to exchange the "
-"tags internal to their group, but in that workflow they are most likely "
-"tracking each other's progress by having remote-tracking branches.  Again, "
-"the heuristic to automatically follow such tags is a good thing."
+"It is up to the user to ensure that no In-Reply-To header already exists "
+"when 'git send-email' is asked to add it (especially note that 'git format-"
+"patch' can be configured to do the threading itself).  Failure to do so may "
+"not produce the expected result in the recipient's MUA."
 msgstr ""
 
 #. type: Title ~
-#: en/git-tag.txt:324
+#: en/git-send-email.txt:374
 #, no-wrap
-msgid "On Backdating Tags"
+msgid "Administering"
 msgstr ""
 
-#. type: Plain text
-#: en/git-tag.txt:331
-msgid ""
-"If you have imported some changes from another VCS and would like to add "
-"tags for major releases of your work, it is useful to be able to specify the "
-"date to embed inside of the tag object; such data in the tag object affects, "
-"for example, the ordering of tags in the gitweb interface."
+#. type: Labeled list
+#: en/git-send-email.txt:376
+#, no-wrap
+msgid "--confirm=<mode>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:335
-msgid ""
-"To set the date used in future tag objects, set the environment variable "
-"GIT_COMMITTER_DATE (see the later discussion of possible values; the most "
-"common form is \"YYYY-MM-DD HH:MM\")."
+#: en/git-send-email.txt:378
+msgid "Confirm just before sending:"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-tag.txt:340
-#, no-wrap
-msgid "$ GIT_COMMITTER_DATE=\"2006-10-02 10:31\" git tag -s v1.0.1\n"
+#. type: Plain text
+#: en/git-send-email.txt:381
+msgid "'always' will always confirm before sending"
 msgstr ""
 
 #. type: Plain text
-#: en/git-tag.txt:348
-msgid "linkgit:git-check-ref-format[1].  linkgit:git-config[1]."
+#: en/git-send-email.txt:382
+msgid "'never' will never confirm before sending"
 msgstr ""
 
-#. type: Title =
-#: en/git-unpack-file.txt:2
-#, no-wrap
-msgid "git-unpack-file(1)"
+#. type: Plain text
+#: en/git-send-email.txt:384
+msgid ""
+"'cc' will confirm before sending when send-email has automatically added "
+"addresses from the patch to the Cc list"
 msgstr ""
 
 #. type: Plain text
-#: en/git-unpack-file.txt:7
-msgid "git-unpack-file - Creates a temporary file with a blob's contents"
+#: en/git-send-email.txt:385
+msgid ""
+"'compose' will confirm before sending the first message when using --compose."
 msgstr ""
 
 #. type: Plain text
-#: en/git-unpack-file.txt:14
-#, no-wrap
-msgid "'git unpack-file' <blob>\n"
+#: en/git-send-email.txt:386
+msgid "'auto' is equivalent to 'cc' + 'compose'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-unpack-file.txt:20
-#, no-wrap
+#: en/git-send-email.txt:391
 msgid ""
-"Creates a file holding the contents of the blob specified by sha1. It\n"
-"returns the name of the temporary file in the following format:\n"
-"\t.merge_file_XXXXX\n"
+"Default is the value of `sendemail.confirm` configuration value; if that is "
+"unspecified, default to 'auto' unless any of the suppress options have been "
+"specified, in which case default to 'compose'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-unpack-file.txt:25
-msgid "Must be a blob id"
+#: en/git-send-email.txt:394
+msgid "Do everything except actually send the emails."
 msgstr ""
 
-#. type: Title =
-#: en/git-unpack-objects.txt:2
+#. type: Labeled list
+#: en/git-send-email.txt:395
 #, no-wrap
-msgid "git-unpack-objects(1)"
+msgid "--[no-]format-patch"
 msgstr ""
 
 #. type: Plain text
-#: en/git-unpack-objects.txt:7
-msgid "git-unpack-objects - Unpack objects from a packed archive"
+#: en/git-send-email.txt:400
+msgid ""
+"When an argument may be understood either as a reference or as a file name, "
+"choose to understand it as a format-patch argument (`--format-patch`)  or as "
+"a file name (`--no-format-patch`). By default, when such a conflict occurs, "
+"git send-email will fail."
 msgstr ""
 
 #. type: Plain text
-#: en/git-unpack-objects.txt:13
-#, no-wrap
-msgid "'git unpack-objects' [-n] [-q] [-r] [--strict]\n"
+#: en/git-send-email.txt:404
+msgid ""
+"Make git-send-email less verbose.  One line per email should be all that is "
+"output."
 msgstr ""
 
-#. type: Plain text
-#: en/git-unpack-objects.txt:20
-msgid ""
-"Read a packed archive (.pack) from the standard input, expanding the objects "
-"contained within and writing them into the repository in \"loose\" (one "
-"object per file) format."
+#. type: Labeled list
+#: en/git-send-email.txt:405
+#, no-wrap
+msgid "--[no-]validate"
 msgstr ""
 
 #. type: Plain text
-#: en/git-unpack-objects.txt:24
+#: en/git-send-email.txt:408
 msgid ""
-"Objects that already exist in the repository will *not* be unpacked from the "
-"packfile.  Therefore, nothing will be unpacked if you use this command on a "
-"packfile that exists within the target repository."
+"Perform sanity checks on patches.  Currently, validation means the following:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-unpack-objects.txt:27
+#: en/git-send-email.txt:411
 msgid ""
-"See linkgit:git-repack[1] for options to generate new packs and replace "
-"existing ones."
+"Invoke the sendemail-validate hook if present (see linkgit:githooks[5])."
 msgstr ""
 
 #. type: Plain text
-#: en/git-unpack-objects.txt:32
-msgid "Dry run.  Check the pack file without actually unpacking"
+#: en/git-send-email.txt:412
+msgid "Warn of patches that contain lines longer than"
 msgstr ""
 
 #. type: Plain text
-#: en/git-unpack-objects.txt:33
-msgid "the objects."
+#: en/git-send-email.txt:416
+#, no-wrap
+msgid ""
+"998 characters unless a suitable transfer encoding\n"
+"('auto', 'base64', or 'quoted-printable') is used;\n"
+"this is due to SMTP limits as described by\n"
+"http://www.ietf.org/rfc/rfc5322.txt.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-unpack-objects.txt:37
-msgid "The command usually shows percentage progress.  This flag suppresses it."
+#: en/git-send-email.txt:420
+msgid ""
+"Default is the value of `sendemail.validate`; if this is not set, default to "
+"`--validate`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-unpack-objects.txt:43
-msgid ""
-"When unpacking a corrupt packfile, the command dies at the first "
-"corruption.  This flag tells it to keep going and make the best effort to "
-"recover as many objects as possible."
+#: en/git-send-email.txt:423
+msgid "Send emails even if safety checks would prevent it."
 msgstr ""
 
-#. type: Plain text
-#: en/git-unpack-objects.txt:46
-msgid "Don't write objects with broken content or links."
+#. type: Title ~
+#: en/git-send-email.txt:426
+#, no-wrap
+msgid "Information"
 msgstr ""
 
-#. type: Title =
-#: en/git-update-index.txt:2
+#. type: Labeled list
+#: en/git-send-email.txt:428
 #, no-wrap
-msgid "git-update-index(1)"
+msgid "--dump-aliases"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:7
-msgid "git-update-index - Register file contents in the working tree to the index"
+#: en/git-send-email.txt:433
+msgid ""
+"Instead of the normal operation, dump the shorthand alias names from the "
+"configured alias file(s), one per line in alphabetical order. Note, this "
+"only includes the alias name and not its expanded email addresses.  See "
+"'sendemail.aliasesfile' for more information about aliases."
 msgstr ""
 
-#. type: Plain text
-#: en/git-update-index.txt:27
+#. type: Labeled list
+#: en/git-send-email.txt:438
 #, no-wrap
-msgid ""
-"'git update-index'\n"
-"\t     [--add] [--remove | --force-remove] [--replace]\n"
-"\t     [--refresh] [-q] [--unmerged] [--ignore-missing]\n"
-"\t     [(--cacheinfo <mode>,<object>,<file>)...]\n"
-"\t     [--chmod=(+|-)x]\n"
-"\t     [--[no-]assume-unchanged]\n"
-"\t     [--[no-]skip-worktree]\n"
-"\t     [--ignore-submodules]\n"
-"\t     [--[no-]split-index]\n"
-"\t     [--[no-|test-|force-]untracked-cache]\n"
-"\t     [--really-refresh] [--unresolve] [--again | -g]\n"
-"\t     [--info-only] [--index-info]\n"
-"\t     [-z] [--stdin] [--index-version <n>]\n"
-"\t     [--verbose]\n"
-"\t     [--] [<file>...]\n"
+msgid "sendemail.aliasesFile"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:33
+#: en/git-send-email.txt:441
 msgid ""
-"Modifies the index or directory cache. Each file mentioned is updated into "
-"the index and any 'unmerged' or 'needs updating' state is cleared."
+"To avoid typing long email addresses, point this to one or more email "
+"aliases files.  You must also supply `sendemail.aliasFileType`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-update-index.txt:36
-msgid ""
-"See also linkgit:git-add[1] for a more user-friendly way to do some of the "
-"most common operations on the index."
+#. type: Labeled list
+#: en/git-send-email.txt:442
+#, no-wrap
+msgid "sendemail.aliasFileType"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:39
+#: en/git-send-email.txt:445
 msgid ""
-"The way 'git update-index' handles files it is told about can be modified "
-"using the various options:"
+"Format of the file(s) specified in sendemail.aliasesFile. Must be one of "
+"'mutt', 'mailrc', 'pine', 'elm', or 'gnus', or 'sendmail'."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:46
+#: en/git-send-email.txt:450
 msgid ""
-"If a specified file isn't in the index already then it's added.  Default "
-"behaviour is to ignore new files."
+"What an alias file in each format looks like can be found in the "
+"documentation of the email program of the same name. The differences and "
+"limitations from the standard formats are described below:"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-update-index.txt:47
+#: en/git-send-email.txt:452
 #, no-wrap
-msgid "--remove"
+msgid "sendmail"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:51
-msgid ""
-"If a specified file is in the index but is missing then it's removed.  "
-"Default behavior is to ignore removed file."
+#: en/git-send-email.txt:454
+msgid "Quoted aliases and quoted addresses are not supported: lines that"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:55
-msgid ""
-"Looks at the current index and checks to see if merges or updates are needed "
-"by checking stat() information."
+#: en/git-send-email.txt:455
+msgid "contain a `\"` symbol are ignored."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:59
-msgid ""
-"Quiet.  If --refresh finds that the index needs an update, the default "
-"behavior is to error out.  This option makes"
+#: en/git-send-email.txt:456
+msgid "Redirection to a file (`/path/name`) or pipe (`|command`) is not"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:60
-msgid "'git update-index' continue anyway."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-update-index.txt:61
-#, no-wrap
-msgid "--ignore-submodules"
+#: en/git-send-email.txt:457
+msgid "supported."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:64
-msgid ""
-"Do not try to update submodules.  This option is only respected when passed "
-"before --refresh."
+#: en/git-send-email.txt:458
+msgid "File inclusion (`:include: /path/name`) is not supported."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:67
-msgid "If --refresh finds unmerged changes in the index, the default"
+#: en/git-send-email.txt:459
+msgid "Warnings are printed on the standard error output for any"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:68
-msgid "behavior is to error out.  This option makes 'git update-index'"
+#: en/git-send-email.txt:461
+msgid ""
+"explicitly unsupported constructs, and any other lines that are not "
+"recognized by the parser."
 msgstr ""
 
-#. type: Plain text
-#: en/git-update-index.txt:69
+#. type: Labeled list
+#: en/git-send-email.txt:463
 #, no-wrap
-msgid "continue anyway.\n"
+msgid "sendemail.multiEdit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:72
-msgid "Ignores missing files during a --refresh"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-update-index.txt:73
-#, no-wrap
-msgid "--cacheinfo <mode>,<object>,<path>"
+#: en/git-send-email.txt:468
+msgid ""
+"If true (default), a single editor instance will be spawned to edit files "
+"you have to edit (patches when `--annotate` is used, and the summary when `--"
+"compose` is used). If false, files will be edited one after the other, "
+"spawning a new editor each time."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-update-index.txt:74
+#: en/git-send-email.txt:469
 #, no-wrap
-msgid "--cacheinfo <mode> <object> <path>"
+msgid "sendemail.confirm"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:79
+#: en/git-send-email.txt:473
 msgid ""
-"Directly insert the specified info into the index.  For backward "
-"compatibility, you can also give these three arguments as three separate "
-"parameters, but new users are encouraged to use a single-parameter form."
+"Sets the default for whether to confirm before sending. Must be one of "
+"'always', 'never', 'cc', 'compose', or 'auto'. See `--confirm` in the "
+"previous section for the meaning of these values."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-update-index.txt:80
+#. type: Title ~
+#: en/git-send-email.txt:477
 #, no-wrap
-msgid "--index-info"
+msgid "Use gmail as the smtp server"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:82
-msgid "Read index information from stdin."
+#: en/git-send-email.txt:480
+msgid ""
+"To use 'git send-email' to send your patches through the GMail SMTP server, "
+"edit ~/.gitconfig to specify your account settings:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:85
-msgid "Set the execute permissions on the updated files."
-msgstr ""
-
-#. type: Labeled list
-#: en/git-update-index.txt:86
+#: en/git-send-email.txt:486
 #, no-wrap
-msgid "--[no-]assume-unchanged"
+msgid ""
+"\t[sendemail]\n"
+"\t\tsmtpEncryption = tls\n"
+"\t\tsmtpServer = smtp.gmail.com\n"
+"\t\tsmtpUser = yourname@gmail.com\n"
+"\t\tsmtpServerPort = 587\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:98
+#: en/git-send-email.txt:490
 msgid ""
-"When this flag is specified, the object names recorded for the paths are not "
-"updated.  Instead, this option sets/unsets the \"assume unchanged\" bit for "
-"the paths.  When the \"assume unchanged\" bit is on, the user promises not "
-"to change the file and allows Git to assume that the working tree file "
-"matches what is recorded in the index.  If you want to change the working "
-"tree file, you need to unset the bit to tell Git.  This is sometimes helpful "
-"when working with a big project on a filesystem that has very slow lstat(2) "
-"system call (e.g. cifs)."
+"If you have multifactor authentication setup on your gmail account, you will "
+"need to generate an app-specific password for use with 'git send-email'. "
+"Visit https://security.google.com/settings/security/apppasswords to create "
+"it."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:103
+#: en/git-send-email.txt:493
 msgid ""
-"Git will fail (gracefully) in case it needs to modify this file in the index "
-"e.g. when merging in a commit; thus, in case the assumed-untracked file is "
-"changed upstream, you will need to handle the situation manually."
+"Once your commits are ready to be sent to the mailing list, run the "
+"following commands:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-update-index.txt:104
+#. type: Plain text
+#: en/git-send-email.txt:497
 #, no-wrap
-msgid "--really-refresh"
+msgid ""
+"\t$ git format-patch --cover-letter -M origin/master -o outgoing/\n"
+"\t$ edit outgoing/0000-*\n"
+"\t$ git send-email outgoing/*\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:107
+#: en/git-send-email.txt:502
 msgid ""
-"Like `--refresh`, but checks stat information unconditionally, without "
-"regard to the \"assume unchanged\" setting."
+"The first time you run it, you will be prompted for your credentials.  Enter "
+"the app-specific or your regular password as appropriate.  If you have "
+"credential helper configured (see linkgit:git-credential[1]), the password "
+"will be saved in the credential store so you won't have to type it the next "
+"time."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-update-index.txt:108
+#. type: Plain text
+#: en/git-send-email.txt:505
 #, no-wrap
-msgid "--[no-]skip-worktree"
+msgid ""
+"Note: the following perl modules are required\n"
+"      Net::SMTP::SSL, MIME::Base64 and Authen::SASL\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:113
-msgid ""
-"When one of these flags is specified, the object name recorded for the paths "
-"are not updated. Instead, these options set and unset the \"skip-worktree\" "
-"bit for the paths. See section \"Skip-worktree bit\" below for more "
-"information."
+#: en/git-send-email.txt:509
+msgid "linkgit:git-format-patch[1], linkgit:git-imap-send[1], mbox(5)"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-update-index.txt:115
+#. type: Title =
+#: en/git-send-pack.txt:2
 #, no-wrap
-msgid "--again"
+msgid "git-send-pack(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:118
-msgid ""
-"Runs 'git update-index' itself on the paths whose index entries are "
-"different from those from the `HEAD` commit."
+#: en/git-send-pack.txt:7
+msgid "git-send-pack - Push objects over Git protocol to another repository"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-update-index.txt:119
+#. type: Plain text
+#: en/git-send-pack.txt:16
 #, no-wrap
-msgid "--unresolve"
+msgid ""
+"'git send-pack' [--all] [--dry-run] [--force] [--receive-pack=<git-receive-pack>]\n"
+"\t\t[--verbose] [--thin] [--atomic]\n"
+"\t\t[--[no-]signed|--signed=(true|false|if-asked)]\n"
+"\t\t[<host>:]<directory> [<ref>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:122
+#: en/git-send-pack.txt:21
 msgid ""
-"Restores the 'unmerged' or 'needs updating' state of a file during a merge "
-"if it was cleared by accident."
+"Usually you would want to use 'git push', which is a higher-level wrapper of "
+"this command, instead. See linkgit:git-push[1]."
+msgstr ""
+
+#. type: Plain text
+#: en/git-send-pack.txt:24
+msgid ""
+"Invokes 'git-receive-pack' on a possibly remote repository, and updates it "
+"from the current repository, sending named refs."
+msgstr ""
+
+#. type: Plain text
+#: en/git-send-pack.txt:36
+msgid "Same as --receive-pack=<git-receive-pack>."
+msgstr ""
+
+#. type: Plain text
+#: en/git-send-pack.txt:40
+msgid ""
+"Instead of explicitly specifying which refs to update, update all heads that "
+"locally exist."
+msgstr ""
+
+#. type: Plain text
+#: en/git-send-pack.txt:67
+msgid ""
+"Send a \"thin\" pack, which records objects in deltified form based on "
+"objects not included in the pack to reduce network traffic."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-update-index.txt:123
+#: en/git-send-pack.txt:68
 #, no-wrap
-msgid "--info-only"
+msgid "--atomic"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:127
+#: en/git-send-pack.txt:72
 msgid ""
-"Do not create objects in the object database for all <file> arguments that "
-"follow this flag; just insert their object IDs into the index."
+"Use an atomic transaction for updating the refs. If any of the refs fails to "
+"update then the entire push will fail without changing any refs."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-update-index.txt:128
+#: en/git-send-pack.txt:84
 #, no-wrap
-msgid "--force-remove"
+msgid "--push-option=<string>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:131
+#: en/git-send-pack.txt:89
 msgid ""
-"Remove the file from the index even when the working directory still has "
-"such a file. (Implies --remove.)"
+"Pass the specified string as a push option for consumption by hooks on the "
+"server side.  If the server doesn't support push options, error out.  See "
+"linkgit:git-push[1] and linkgit:githooks[5] for details."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-update-index.txt:132
+#: en/git-send-pack.txt:90
 #, no-wrap
-msgid "--replace"
+msgid "<host>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:139
+#: en/git-send-pack.txt:94
 msgid ""
-"By default, when a file `path` exists in the index, 'git update-index' "
-"refuses an attempt to add `path/file`.  Similarly if a file `path/file` "
-"exists, a file `path` cannot be added.  With --replace flag, existing "
-"entries that conflict with the entry being added are automatically removed "
-"with warning messages."
+"A remote host to house the repository.  When this part is specified, 'git-"
+"receive-pack' is invoked via ssh."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:147
-msgid "Report what is being added and removed from index."
+#: en/git-send-pack.txt:97
+msgid "The repository to update."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-update-index.txt:148
-#, no-wrap
-msgid "--index-version <n>"
+#. type: Plain text
+#: en/git-send-pack.txt:107
+msgid "There are three ways to specify which refs to update on the remote end."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:153
+#: en/git-send-pack.txt:111
 msgid ""
-"Write the resulting index out in the named on-disk format version.  "
-"Supported versions are 2, 3 and 4. The current default version is 2 or 3, "
-"depending on whether extra features are used, such as `git add -N`."
+"With `--all` flag, all refs that exist locally are transferred to the remote "
+"side.  You cannot specify any '<ref>' if you use this flag."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:159
+#: en/git-send-pack.txt:114
 msgid ""
-"Version 4 performs a simple pathname compression that reduces index size by "
-"30%-50% on large repositories, which results in faster load time. Version 4 "
-"is relatively young (first released in in 1.8.0 in October 2012). Other Git "
-"implementations such as JGit and libgit2 may not support it yet."
+"Without `--all` and without any '<ref>', the heads that exist both on the "
+"local side and on the remote side are updated."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:163
+#: en/git-send-pack.txt:120
 msgid ""
-"Only meaningful with `--stdin` or `--index-info`; paths are separated with "
-"NUL character instead of LF."
+"When one or more '<ref>' are specified explicitly (whether on the command "
+"line or via `--stdin`), it can be either a single pattern, or a pair of such "
+"pattern separated by a colon \":\" (this means that a ref name cannot have a "
+"colon in it).  A single pattern '<name>' is just a shorthand for '<name>:"
+"<name>'."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-update-index.txt:164
-#, no-wrap
-msgid "--split-index"
+#. type: Plain text
+#: en/git-send-pack.txt:128
+msgid ""
+"Each pattern pair consists of the source side (before the colon)  and the "
+"destination side (after the colon).  The ref to be pushed is determined by "
+"finding a match that matches the source side, and where it is pushed is "
+"determined by using the destination side. The rules used to match a ref are "
+"the same rules used by 'git rev-parse' to resolve a symbolic ref name. See "
+"linkgit:git-rev-parse[1]."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-update-index.txt:165
+#. type: Plain text
+#: en/git-send-pack.txt:133
+msgid "It is an error if <dst> matches more than one remote refs."
+msgstr ""
+
+#. type: Title =
+#: en/git-shell.txt:2
 #, no-wrap
-msgid "--no-split-index"
+msgid "git-shell(1)"
+msgstr ""
+
+#. type: Plain text
+#: en/git-shell.txt:7
+msgid "git-shell - Restricted login shell for Git-only SSH access"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:170
+#: en/git-shell.txt:15
+#, no-wrap
 msgid ""
-"Enable or disable split index mode. If split-index mode is already enabled "
-"and `--split-index` is given again, all changes in $GIT_DIR/index are pushed "
-"back to the shared index file."
+"'chsh' -s $(command -v git-shell) <user>\n"
+"'git clone' <user>`@localhost:/path/to/repo.git`\n"
+"'ssh' <user>`@localhost`\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:176
+#: en/git-shell.txt:23
 msgid ""
-"These options take effect whatever the value of the `core.splitIndex` "
-"configuration variable (see linkgit:git-config[1]). But a warning is emitted "
-"when the change goes against the configured value, as the configured value "
-"will take effect next time the index is read and this will remove the "
-"intended effect of the option."
+"This is a login shell for SSH accounts to provide restricted Git access.  It "
+"permits execution only of server-side Git commands implementing the pull/"
+"push functionality, plus custom commands present in a subdirectory named "
+"`git-shell-commands` in the user's home directory."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-update-index.txt:177
-#, no-wrap
-msgid "--untracked-cache"
+#. type: Plain text
+#: en/git-shell.txt:28
+msgid "'git shell' accepts the following commands after the `-c` option:"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-update-index.txt:178
+#: en/git-shell.txt:29
 #, no-wrap
-msgid "--no-untracked-cache"
-msgstr ""
-
-#. type: Plain text
-#: en/git-update-index.txt:181
-msgid ""
-"Enable or disable untracked cache feature. Please use "
-"`--test-untracked-cache` before enabling it."
+msgid "'git receive-pack <argument>'"
 msgstr ""
 
-#. type: Plain text
-#: en/git-update-index.txt:187
-msgid ""
-"These options take effect whatever the value of the `core.untrackedCache` "
-"configuration variable (see linkgit:git-config[1]). But a warning is emitted "
-"when the change goes against the configured value, as the configured value "
-"will take effect next time the index is read and this will remove the "
-"intended effect of the option."
+#. type: Labeled list
+#: en/git-shell.txt:30
+#, no-wrap
+msgid "'git upload-pack <argument>'"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-update-index.txt:188
+#: en/git-shell.txt:31
 #, no-wrap
-msgid "--test-untracked-cache"
+msgid "'git upload-archive <argument>'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:197
+#: en/git-shell.txt:35
 msgid ""
-"Only perform tests on the working directory to make sure untracked cache can "
-"be used. You have to manually enable untracked cache using "
-"`--untracked-cache` or `--force-untracked-cache` or the "
-"`core.untrackedCache` configuration variable afterwards if you really want "
-"to use it. If a test fails the exit code is 1 and a message explains what is "
-"not working as needed, otherwise the exit code is 0 and OK is printed."
+"Call the corresponding server-side command to support the client's 'git "
+"push', 'git fetch', or 'git archive --remote' request."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-update-index.txt:198
+#: en/git-shell.txt:35
 #, no-wrap
-msgid "--force-untracked-cache"
+msgid "'cvs server'"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:203
-msgid ""
-"Same as `--untracked-cache`. Provided for backwards compatibility with older "
-"versions of Git where `--untracked-cache` used to imply "
-"`--test-untracked-cache` but this option would enable the extension "
-"unconditionally."
+#: en/git-shell.txt:37
+msgid "Imitate a CVS server.  See linkgit:git-cvsserver[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:213
+#: en/git-shell.txt:42
 msgid ""
-"Files to act on.  Note that files beginning with '.' are discarded. This "
-"includes `./file` and `dir/./file`. If you don't want this, then use cleaner "
-"names.  The same applies to directories ending '/' and paths with '//'"
+"If a `~/git-shell-commands` directory is present, 'git shell' will also "
+"handle other, custom commands by running \"`git-shell-commands/<command> "
+"<arguments>`\" from the user's home directory."
 msgstr ""
 
 #. type: Title -
-#: en/git-update-index.txt:215
+#: en/git-shell.txt:44
 #, no-wrap
-msgid "Using --refresh"
+msgid "INTERACTIVE USE"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:221
+#: en/git-shell.txt:48
 msgid ""
-"`--refresh` does not calculate a new sha1 file or bring the index up-to-date "
-"for mode/content changes. But what it *does* do is to \"re-match\" the stat "
-"information of a file with the index, so that you can refresh the index for "
-"a file that hasn't been changed but where the stat entry is out of date."
+"By default, the commands above can be executed only with the `-c` option; "
+"the shell is not interactive."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:224
+#: en/git-shell.txt:56
 msgid ""
-"For example, you'd want to do this after doing a 'git read-tree', to link up "
-"the stat index details with the proper files."
+"If a `~/git-shell-commands` directory is present, 'git shell' can also be "
+"run interactively (with no arguments).  If a `help` command is present in "
+"the `git-shell-commands` directory, it is run to provide the user with an "
+"overview of allowed actions.  Then a \"git> \" prompt is presented at which "
+"one can enter any of the commands from the `git-shell-commands` directory, "
+"or `exit` to close the connection."
 msgstr ""
 
-#. type: Title -
-#: en/git-update-index.txt:226
-#, no-wrap
-msgid "Using --cacheinfo or --info-only"
+#. type: Plain text
+#: en/git-shell.txt:61
+msgid ""
+"Generally this mode is used as an administrative interface to allow users to "
+"list repositories they have access to, create, delete, or rename "
+"repositories, or change repository descriptions and permissions."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:230
+#: en/git-shell.txt:64
 msgid ""
-"`--cacheinfo` is used to register a file that is not in the current working "
-"directory.  This is useful for minimum-checkout merging."
+"If a `no-interactive-login` command exists, then it is run and the "
+"interactive shell is aborted."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:232
-msgid "To pretend you have a file with mode and sha1 at path, say:"
+#: en/git-shell.txt:69
+msgid "To disable interactive logins, displaying a greeting instead:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-update-index.txt:235
+#: en/git-shell.txt:80
 #, no-wrap
-msgid "$ git update-index --cacheinfo <mode>,<sha1>,<path>\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-update-index.txt:239
 msgid ""
-"`--info-only` is used to register files without placing them in the object "
-"database.  This is useful for status-only repositories."
+"$ chsh -s /usr/bin/git-shell\n"
+"$ mkdir $HOME/git-shell-commands\n"
+"$ cat >$HOME/git-shell-commands/no-interactive-login <<\\EOF\n"
+"#!/bin/sh\n"
+"printf '%s\\n' \"Hi $USER! You've successfully authenticated, but I do not\"\n"
+"printf '%s\\n' \"provide interactive shell access.\"\n"
+"exit 128\n"
+"EOF\n"
+"$ chmod +x $HOME/git-shell-commands/no-interactive-login\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:245
+#: en/git-shell.txt:85
 msgid ""
-"Both `--cacheinfo` and `--info-only` behave similarly: the index is updated "
-"but the object database isn't.  `--cacheinfo` is useful when the object is "
-"in the database but the file isn't available locally.  `--info-only` is "
-"useful when the file is available, but you do not wish to update the object "
-"database."
+"To enable git-cvsserver access (which should generally have the `no-"
+"interactive-login` example above as a prerequisite, as creating the git-"
+"shell-commands directory allows interactive logins):"
 msgstr ""
 
-#. type: Title -
-#: en/git-update-index.txt:248
+#. type: delimited block -
+#: en/git-shell.txt:96
 #, no-wrap
-msgid "Using --index-info"
+msgid ""
+"$ cat >$HOME/git-shell-commands/cvs <<\\EOF\n"
+"if ! test $# = 1 && test \"$1\" = \"server\"\n"
+"then\n"
+"\techo >&2 \"git-cvsserver only handles \\\"server\\\"\"\n"
+"\texit 1\n"
+"fi\n"
+"exec git cvsserver server\n"
+"EOF\n"
+"$ chmod +x $HOME/git-shell-commands/cvs\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:253
-msgid ""
-"`--index-info` is a more powerful mechanism that lets you feed multiple "
-"entry definitions from the standard input, and designed specifically for "
-"scripts.  It can take inputs of three formats:"
+#: en/git-shell.txt:103
+msgid "ssh(1), linkgit:git-daemon[1], contrib/git-shell-commands/README"
 msgstr ""
 
-#. type: Plain text
-#: en/git-update-index.txt:255
+#. type: Title =
+#: en/git-sh-i18n--envsubst.txt:2
 #, no-wrap
-msgid "mode         SP sha1          TAB path\n"
+msgid "git-sh-i18n{litdd}envsubst(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:260
-msgid ""
-"The first format is what \"git-apply --index-info\" reports, and used to "
-"reconstruct a partial tree that is used for phony merge base tree when "
-"falling back on 3-way merge."
+#: en/git-sh-i18n--envsubst.txt:7
+msgid "git-sh-i18n--envsubst - Git's own envsubst(1) for i18n fallbacks"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:262
+#: en/git-sh-i18n--envsubst.txt:17
 #, no-wrap
-msgid "mode SP type SP sha1          TAB path\n"
+msgid ""
+"eval_gettext () {\n"
+"\tprintf \"%s\" \"$1\" | (\n"
+"\t\texport PATH $('git sh-i18n{litdd}envsubst' --variables \"$1\");\n"
+"\t\t'git sh-i18n{litdd}envsubst' \"$1\"\n"
+"\t)\n"
+"}\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:265
-msgid "The second format is to stuff 'git ls-tree' output into the index file."
+#: en/git-sh-i18n--envsubst.txt:24
+msgid ""
+"This is not a command the end user would want to run.  Ever.  This "
+"documentation is meant for people who are studying the plumbing scripts and/"
+"or are writing new ones."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:267
-#, no-wrap
-msgid "mode         SP sha1 SP stage TAB path\n"
+#: en/git-sh-i18n--envsubst.txt:29
+msgid ""
+"'git sh-i18n{litdd}envsubst' is Git's stripped-down copy of the GNU "
+"`envsubst(1)` program that comes with the GNU gettext package. It's used "
+"internally by linkgit:git-sh-i18n[1] to interpolate the variables passed to "
+"the `eval_gettext` function."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:270
+#: en/git-sh-i18n--envsubst.txt:33
 msgid ""
-"This format is to put higher order stages into the index file and matches "
-"'git ls-files --stage' output."
+"No promises are made about the interface, or that this program won't "
+"disappear without warning in the next version of Git. Don't use it."
 msgstr ""
 
-#. type: Plain text
-#: en/git-update-index.txt:274
-msgid ""
-"To place a higher stage entry to the index, the path should first be removed "
-"by feeding a mode=0 entry for the path, and then feeding necessary input "
-"lines in the third format."
+#. type: Title =
+#: en/git-sh-i18n.txt:2
+#, no-wrap
+msgid "git-sh-i18n(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:276
-msgid "For example, starting with this index:"
+#: en/git-sh-i18n.txt:7
+msgid "git-sh-i18n - Git's i18n setup code for shell scripts"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-update-index.txt:280
+#. type: Plain text
+#: en/git-sh-i18n.txt:12
 #, no-wrap
-msgid ""
-"$ git ls-files -s\n"
-"100644 8a1218a1024a212bb3db30becd860315f9f3ac52 0       frotz\n"
+msgid "'. \"$(git --exec-path)/git-sh-i18n\"'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:283
-msgid "you can feed the following input to `--index-info`:"
+#: en/git-sh-i18n.txt:26
+msgid ""
+"The 'git sh-i18n scriptlet is designed to be sourced (using `.`) by Git's "
+"porcelain programs implemented in shell script. It provides wrappers for the "
+"GNU `gettext` and `eval_gettext` functions accessible through the `gettext."
+"sh` script, and provides pass-through fallbacks on systems without GNU "
+"gettext."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-update-index.txt:289
+#. type: Labeled list
+#: en/git-sh-i18n.txt:30
 #, no-wrap
-msgid ""
-"$ git update-index --index-info\n"
-"0 0000000000000000000000000000000000000000\tfrotz\n"
-"100644 8a1218a1024a212bb3db30becd860315f9f3ac52 1\tfrotz\n"
-"100755 8a1218a1024a212bb3db30becd860315f9f3ac52 2\tfrotz\n"
+msgid "gettext"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:295
+#: en/git-sh-i18n.txt:34
 msgid ""
-"The first line of the input feeds 0 as the mode to remove the path; the "
-"SHA-1 does not matter as long as it is well formatted.  Then the second and "
-"third line feeds stage 1 and stage 2 entries for that path.  After the "
-"above, we would end up with this:"
+"Currently a dummy fall-through function implemented as a wrapper around "
+"`printf(1)`. Will be replaced by a real gettext implementation in a later "
+"version."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-update-index.txt:300
+#. type: Labeled list
+#: en/git-sh-i18n.txt:35
 #, no-wrap
+msgid "eval_gettext"
+msgstr ""
+
+#. type: Plain text
+#: en/git-sh-i18n.txt:40
 msgid ""
-"$ git ls-files -s\n"
-"100644 8a1218a1024a212bb3db30becd860315f9f3ac52 1\tfrotz\n"
-"100755 8a1218a1024a212bb3db30becd860315f9f3ac52 2\tfrotz\n"
+"Currently a dummy fall-through function implemented as a wrapper around "
+"`printf(1)` with variables expanded by the linkgit:git-sh-i18n{litdd}"
+"envsubst[1] helper. Will be replaced by a real gettext implementation in a "
+"later version."
 msgstr ""
 
-#. type: Title -
-#: en/git-update-index.txt:304
+#. type: Title =
+#: en/git-shortlog.txt:2
 #, no-wrap
-msgid "Using ``assume unchanged'' bit"
+msgid "git-shortlog(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:319
-msgid ""
-"Many operations in Git depend on your filesystem to have an efficient "
-"`lstat(2)` implementation, so that `st_mtime` information for working tree "
-"files can be cheaply checked to see if the file contents have changed from "
-"the version recorded in the index file.  Unfortunately, some filesystems "
-"have inefficient `lstat(2)`.  If your filesystem is one of them, you can set "
-"\"assume unchanged\" bit to paths you have not changed to cause Git not to "
-"do this check.  Note that setting this bit on a path does not mean Git will "
-"check the contents of the file to see if it has changed -- it makes Git to "
-"omit any checking and assume it has *not* changed.  When you make changes to "
-"working tree files, you have to explicitly tell Git about it by dropping "
-"\"assume unchanged\" bit, either before or after you modify them."
+#: en/git-shortlog.txt:7
+msgid "git-shortlog - Summarize 'git log' output"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:324
+#: en/git-shortlog.txt:13
+#, no-wrap
 msgid ""
-"In order to set \"assume unchanged\" bit, use `--assume-unchanged` option.  "
-"To unset, use `--no-assume-unchanged`. To see which files have the \"assume "
-"unchanged\" bit set, use `git ls-files -v` (see linkgit:git-ls-files[1])."
+"'git shortlog' [<options>] [<revision range>] [[--] <path>...]\n"
+"git log --pretty=short | 'git shortlog' [<options>]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:334
+#: en/git-shortlog.txt:18
 msgid ""
-"The command looks at `core.ignorestat` configuration variable.  When this is "
-"true, paths updated with `git update-index paths...` and paths updated with "
-"other Git commands that update both index and working tree (e.g. 'git apply "
-"--index', 'git checkout-index -u', and 'git read-tree -u') are automatically "
-"marked as \"assume unchanged\".  Note that \"assume unchanged\" bit is *not* "
-"set if `git update-index --refresh` finds the working tree file matches the "
-"index (use `git update-index --really-refresh` if you want to mark them as "
-"\"assume unchanged\")."
+"Summarizes 'git log' output in a format suitable for inclusion in release "
+"announcements. Each commit will be grouped by author and title."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:339
-msgid "To update and refresh only the files already checked out:"
-msgstr ""
-
-#. type: Labeled list
-#: en/git-update-index.txt:344
-#, no-wrap
-msgid "On an inefficient filesystem with `core.ignorestat` set"
+#: en/git-shortlog.txt:20
+msgid "Additionally, \"[PATCH]\" will be stripped from the commit description."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-update-index.txt:360
-#, no-wrap
+#. type: Plain text
+#: en/git-shortlog.txt:25
 msgid ""
-"$ git update-index --really-refresh              <1>\n"
-"$ git update-index --no-assume-unchanged foo.c   <2>\n"
-"$ git diff --name-only                           <3>\n"
-"$ edit foo.c\n"
-"$ git diff --name-only                           <4>\n"
-"M foo.c\n"
-"$ git update-index foo.c                         <5>\n"
-"$ git diff --name-only                           <6>\n"
-"$ edit foo.c\n"
-"$ git diff --name-only                           <7>\n"
-"$ git update-index --no-assume-unchanged foo.c   <8>\n"
-"$ git diff --name-only                           <9>\n"
-"M foo.c\n"
+"If no revisions are passed on the command line and either standard input is "
+"not a terminal or there is no current branch, 'git shortlog' will output a "
+"summary of the log read from standard input, without reference to the "
+"current repository."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:363
-msgid "forces lstat(2) to set \"assume unchanged\" bits for paths that match index."
+#: en/git-shortlog.txt:33
+msgid ""
+"Sort output according to the number of commits per author instead of author "
+"alphabetic order."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:364
-msgid "mark the path to be edited."
+#: en/git-shortlog.txt:37
+msgid "Suppress commit description and provide a commit count summary only."
 msgstr ""
 
-#. type: Plain text
-#: en/git-update-index.txt:365
-msgid "this does lstat(2) and finds index matches the path."
+#. type: Labeled list
+#: en/git-shortlog.txt:39
+#, no-wrap
+msgid "--email"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:366
-msgid "this does lstat(2) and finds index does *not* match the path."
+#: en/git-shortlog.txt:41
+msgid "Show the email address of each author."
 msgstr ""
 
-#. type: Plain text
-#: en/git-update-index.txt:367
-msgid "registering the new version to index sets \"assume unchanged\" bit."
+#. type: Labeled list
+#: en/git-shortlog.txt:42
+#, no-wrap
+msgid "--format[=<format>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:368
-msgid "and it is assumed unchanged."
+#: en/git-shortlog.txt:47
+msgid ""
+"Instead of the commit subject, use some other information to describe each "
+"commit.  '<format>' can be any string accepted by the `--format` option of "
+"'git log', such as '* [%h] %s'.  (See the \"PRETTY FORMATS\" section of "
+"linkgit:git-log[1].)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:369
-msgid "even after you edit it."
+#: en/git-shortlog.txt:49
+msgid "Each pretty-printed commit will be rewrapped before it is shown."
 msgstr ""
 
-#. type: Plain text
-#: en/git-update-index.txt:370
-msgid "you can tell about the change after the fact."
+#. type: Labeled list
+#: en/git-shortlog.txt:51
+#, no-wrap
+msgid "--committer"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:371
-msgid "now it checks with lstat(2) and finds it has been changed."
+#: en/git-shortlog.txt:53
+msgid "Collect and show committer identities instead of authors."
 msgstr ""
 
-#. type: Title -
-#: en/git-update-index.txt:374
+#. type: Labeled list
+#: en/git-shortlog.txt:54
 #, no-wrap
-msgid "Skip-worktree bit"
+msgid "-w[<width>[,<indent1>[,<indent2>]]]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:380
+#: en/git-shortlog.txt:59
 msgid ""
-"Skip-worktree bit can be defined in one (long) sentence: When reading an "
-"entry, if it is marked as skip-worktree, then Git pretends its working "
-"directory version is up to date and read the index version instead."
+"Linewrap the output by wrapping each line at `width`.  The first line of "
+"each entry is indented by `indent1` spaces, and the second and subsequent "
+"lines are indented by `indent2` spaces. `width`, `indent1`, and `indent2` "
+"default to 76, 6 and 9 respectively."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:388
+#: en/git-shortlog.txt:62
 msgid ""
-"To elaborate, \"reading\" means checking for file existence, reading file "
-"attributes or file content. The working directory version may be present or "
-"absent. If present, its content may match against the index version or "
-"not. Writing is not affected by this bit, content safety is still first "
-"priority. Note that Git _can_ update working directory file, that is marked "
-"skip-worktree, if it is safe to do so (i.e.  working directory version "
-"matches index version)"
+"If width is `0` (zero) then indent the lines of the output without wrapping "
+"them."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:392
+#: en/git-shortlog.txt:71
 msgid ""
-"Although this bit looks similar to assume-unchanged bit, its goal is "
-"different from assume-unchanged bit's. Skip-worktree also takes precedence "
-"over assume-unchanged bit when both are set."
+"Show only commits in the specified revision range.  When no <revision range> "
+"is specified, it defaults to `HEAD` (i.e. the whole history leading to the "
+"current commit).  `origin..HEAD` specifies all the commits reachable from "
+"the current commit (i.e. `HEAD`), but not from `origin`. For a complete list "
+"of ways to spell <revision range>, see the \"Specifying Ranges\" section of "
+"linkgit:gitrevisions[7]."
 msgstr ""
 
-#. type: Title -
-#: en/git-update-index.txt:394
-#, no-wrap
-msgid "Split index"
+#. type: Plain text
+#: en/git-shortlog.txt:75
+msgid ""
+"Consider only commits that are enough to explain how the files that match "
+"the specified paths came to be."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:398
+#: en/git-shortlog.txt:85
 msgid ""
-"This mode is designed for repositories with very large indexes, and aims at "
-"reducing the time it takes to repeatedly write these indexes."
+"The `.mailmap` feature is used to coalesce together commits by the same "
+"person in the shortlog, where their name and/or email address was spelled "
+"differently."
+msgstr ""
+
+#. type: Title =
+#: en/git-show-branch.txt:2
+#, no-wrap
+msgid "git-show-branch(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:403
-msgid ""
-"In this mode, the index is split into two files, $GIT_DIR/index and "
-"$GIT_DIR/sharedindex.<SHA-1>. Changes are accumulated in $GIT_DIR/index, the "
-"split index, while the shared index file contains all index entries and "
-"stays unchanged."
+#: en/git-show-branch.txt:7
+msgid "git-show-branch - Show branches and their commits"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:408
+#: en/git-show-branch.txt:17
+#, no-wrap
 msgid ""
-"All changes in the split index are pushed back to the shared index file when "
-"the number of entries in the split index reaches a level specified by the "
-"splitIndex.maxPercentChange config variable (see linkgit:git-config[1])."
+"'git show-branch' [-a|--all] [-r|--remotes] [--topo-order | --date-order]\n"
+"\t\t[--current] [--color[=<when>] | --no-color] [--sparse]\n"
+"\t\t[--more=<n> | --list | --independent | --merge-base]\n"
+"\t\t[--no-name | --sha1-name] [--topics]\n"
+"\t\t[(<rev> | <glob>)...]\n"
+"'git show-branch' (-g|--reflog)[=<n>[,<base>]] [--list] [<ref>]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:413
+#: en/git-show-branch.txt:24
 msgid ""
-"Each time a new shared index file is created, the old shared index files are "
-"deleted if their modification time is older than what is specified by the "
-"splitIndex.sharedIndexExpire config variable (see linkgit:git-config[1])."
+"Shows the commit ancestry graph starting from the commits named with <rev>s "
+"or <glob>s (or all refs under refs/heads and/or refs/tags) semi-visually."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:417
+#: en/git-show-branch.txt:26
+msgid "It cannot show more than 29 branches and commits at a time."
+msgstr ""
+
+#. type: Plain text
+#: en/git-show-branch.txt:29
 msgid ""
-"To avoid deleting a shared index file that is still used, its modification "
-"time is updated to the current time everytime a new split index based on the "
-"shared index file is either created or read from."
+"It uses `showbranch.default` multi-valued configuration items if no <rev> or "
+"<glob> is given on the command line."
 msgstr ""
 
-#. type: Title -
-#: en/git-update-index.txt:419
+#. type: Labeled list
+#: en/git-show-branch.txt:33
 #, no-wrap
-msgid "Untracked cache"
+msgid "<rev>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:423
+#: en/git-show-branch.txt:36
 msgid ""
-"This cache is meant to speed up commands that involve determining untracked "
-"files such as `git status`."
+"Arbitrary extended SHA-1 expression (see linkgit:gitrevisions[7])  that "
+"typically names a branch head or a tag."
 msgstr ""
 
-#. type: Plain text
-#: en/git-update-index.txt:430
-msgid ""
-"This feature works by recording the mtime of the working tree directories "
-"and then omitting reading directories and stat calls against files in those "
-"directories whose mtime hasn't changed. For this to work the underlying "
-"operating system and file system must change the `st_mtime` field of "
-"directories if files in the directory are added, modified or deleted."
+#. type: Labeled list
+#: en/git-show-branch.txt:37
+#, no-wrap
+msgid "<glob>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:435
+#: en/git-show-branch.txt:42
 msgid ""
-"You can test whether the filesystem supports that with the "
-"`--test-untracked-cache` option. The `--untracked-cache` option used to "
-"implicitly perform that test in older versions of Git, but that's no longer "
-"the case."
+"A glob pattern that matches branch or tag names under refs/.  For example, "
+"if you have many topic branches under refs/heads/topic, giving `topic/*` "
+"would show all of them."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:443
-msgid ""
-"If you want to enable (or disable) this feature, it is easier to use the "
-"`core.untrackedCache` configuration variable (see linkgit:git-config[1]) "
-"than using the `--untracked-cache` option to `git update-index` in each "
-"repository, especially if you want to do so across all repositories you use, "
-"because you can set the configuration variable to `true` (or `false`) in "
-"your `$HOME/.gitconfig` just once and have it affect all repositories you "
-"touch."
+#: en/git-show-branch.txt:46
+msgid "Show the remote-tracking branches."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:449
-msgid ""
-"When the `core.untrackedCache` configuration variable is changed, the "
-"untracked cache is added to or removed from the index the next time a "
-"command reads the index; while when `--[no-|force-]untracked-cache` are "
-"used, the untracked cache is immediately added to or removed from the index."
+#: en/git-show-branch.txt:50
+msgid "Show both remote-tracking branches and local branches."
 msgstr ""
 
-#. type: Plain text
-#: en/git-update-index.txt:460
+#. type: Labeled list
+#: en/git-show-branch.txt:51
 #, no-wrap
-msgid ""
-"The command honors `core.filemode` configuration variable.  If\n"
-"your repository is on a filesystem whose executable bits are\n"
-"unreliable, this should be set to 'false' (see linkgit:git-config[1]).\n"
-"This causes the command to ignore differences in file modes recorded\n"
-"in the index and the file mode on the filesystem if they differ only on\n"
-"executable bit.   On such an unfortunate filesystem, you may\n"
-"need to use 'git update-index --chmod='.\n"
+msgid "--current"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:465
+#: en/git-show-branch.txt:55
 msgid ""
-"Quite similarly, if `core.symlinks` configuration variable is set to 'false' "
-"(see linkgit:git-config[1]), symbolic links are checked out as plain files, "
-"and this command does not modify a recorded file mode from symbolic link to "
-"regular file."
+"With this option, the command includes the current branch to the list of "
+"revs to be shown when it is not given on the command line."
 msgstr ""
 
-#. type: Plain text
-#: en/git-update-index.txt:468
-msgid ""
-"The command looks at `core.ignorestat` configuration variable.  See 'Using "
-"\"assume unchanged\" bit' section above."
+#. type: Labeled list
+#: en/git-show-branch.txt:56 en/rev-list-options.txt:644
+#, no-wrap
+msgid "--topo-order"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:473
+#: en/git-show-branch.txt:61
 msgid ""
-"The command also looks at `core.trustctime` configuration variable.  It can "
-"be useful when the inode change time is regularly modified by something "
-"outside Git (file system crawlers and backup systems use ctime for marking "
-"files processed) (see linkgit:git-config[1])."
+"By default, the branches and their commits are shown in reverse "
+"chronological order.  This option makes them appear in topological order (i."
+"e., descendant commits are shown before their parents)."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-show-branch.txt:62 en/rev-list-options.txt:636
+#, no-wrap
+msgid "--date-order"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:477
+#: en/git-show-branch.txt:66
 msgid ""
-"The untracked cache extension can be enabled by the `core.untrackedCache` "
-"configuration variable (see linkgit:git-config[1])."
+"This option is similar to `--topo-order` in the sense that no parent comes "
+"before all of its children, but otherwise commits are ordered according to "
+"their commit date."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-index.txt:483
-msgid "linkgit:git-config[1], linkgit:git-add[1], linkgit:git-ls-files[1]"
+#: en/git-show-branch.txt:71
+msgid ""
+"By default, the output omits merges that are reachable from only one tip "
+"being shown.  This option makes them visible."
 msgstr ""
 
-#. type: Title =
-#: en/git-update-ref.txt:2
+#. type: Labeled list
+#: en/git-show-branch.txt:72
 #, no-wrap
-msgid "git-update-ref(1)"
-msgstr ""
-
-#. type: Plain text
-#: en/git-update-ref.txt:7
-msgid "git-update-ref - Update the object name stored in a ref safely"
+msgid "--more=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:12
-#, no-wrap
+#: en/git-show-branch.txt:79
 msgid ""
-"'git update-ref' [-m <reason>] (-d <ref> [<oldvalue>] | [--no-deref] "
-"[--create-reflog] <ref> <newvalue> [<oldvalue>] | --stdin [-z])\n"
+"Usually the command stops output upon showing the commit that is the common "
+"ancestor of all the branches.  This flag tells the command to go <n> more "
+"common commits beyond that.  When <n> is negative, display only the "
+"<reference>s given, without showing the commit ancestry tree."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:18
-msgid ""
-"Given two arguments, stores the <newvalue> in the <ref>, possibly "
-"dereferencing the symbolic refs.  E.g. `git update-ref HEAD <newvalue>` "
-"updates the current branch head to the new object."
+#: en/git-show-branch.txt:82
+msgid "Synonym to `--more=-1`"
 msgstr ""
 
-#. type: Plain text
-#: en/git-update-ref.txt:27
-msgid ""
-"Given three arguments, stores the <newvalue> in the <ref>, possibly "
-"dereferencing the symbolic refs, after verifying that the current value of "
-"the <ref> matches <oldvalue>.  E.g. `git update-ref refs/heads/master "
-"<newvalue> <oldvalue>` updates the master branch head to <newvalue> only if "
-"its current value is <oldvalue>.  You can specify 40 \"0\" or an empty "
-"string as <oldvalue> to make sure that the ref you are creating does not "
-"exist."
+#. type: Labeled list
+#: en/git-show-branch.txt:83
+#, no-wrap
+msgid "--merge-base"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:31
+#: en/git-show-branch.txt:89
 msgid ""
-"It also allows a \"ref\" file to be a symbolic pointer to another ref file "
-"by starting with the four-byte header sequence of \"ref:\"."
+"Instead of showing the commit list, determine possible merge bases for the "
+"specified commits. All merge bases will be contained in all specified "
+"commits. This is different from how linkgit:git-merge-base[1] handles the "
+"case of three or more commits."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:39
+#: en/git-show-branch.txt:93
 msgid ""
-"More importantly, it allows the update of a ref file to follow these "
-"symbolic pointers, whether they are symlinks or these \"regular file "
-"symbolic refs\".  It follows *real* symlinks only if they start with "
-"\"refs/\": otherwise it will just try to read them and update them as a "
-"regular file (i.e. it will allow the filesystem to follow them, but will "
-"overwrite such a symlink to somewhere else with a regular filename)."
+"Among the <reference>s given, display only the ones that cannot be reached "
+"from any other <reference>."
 msgstr ""
 
-#. type: Plain text
-#: en/git-update-ref.txt:42
-msgid ""
-"If --no-deref is given, <ref> itself is overwritten, rather than the result "
-"of following the symbolic pointers."
+#. type: Labeled list
+#: en/git-show-branch.txt:94
+#, no-wrap
+msgid "--no-name"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:44
-msgid "In general, using"
+#: en/git-show-branch.txt:96
+msgid "Do not show naming strings for each commit."
 msgstr ""
 
-#. type: Plain text
-#: en/git-update-ref.txt:46
+#. type: Labeled list
+#: en/git-show-branch.txt:97
 #, no-wrap
-msgid "\tgit update-ref HEAD \"$head\"\n"
+msgid "--sha1-name"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:48
-msgid "should be a _lot_ safer than doing"
+#: en/git-show-branch.txt:102
+msgid ""
+"Instead of naming the commits using the path to reach them from heads (e.g. "
+"\"master~2\" to mean the grandparent of \"master\"), name them with the "
+"unique prefix of their object names."
 msgstr ""
 
-#. type: Plain text
-#: en/git-update-ref.txt:50
+#. type: Labeled list
+#: en/git-show-branch.txt:103
 #, no-wrap
-msgid "\techo \"$head\" > \"$GIT_DIR/HEAD\"\n"
+msgid "--topics"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:57
+#: en/git-show-branch.txt:110
 msgid ""
-"both from a symlink following standpoint *and* an error checking "
-"standpoint.  The \"refs/\" rule for symlinks means that symlinks that point "
-"to \"outside\" the tree are safe: they'll be followed for reading but not "
-"for writing (so we'll never write through a ref symlink to some other tree, "
-"if you have copied a whole archive by creating a symlink tree)."
+"Shows only commits that are NOT on the first branch given.  This helps track "
+"topic branches by hiding any commit that is already in the main line of "
+"development.  When given \"git show-branch --topics master topic1 topic2\", "
+"this will show the revisions given by \"git rev-list {caret}master topic1 "
+"topic2\""
+msgstr ""
+
+#. type: Labeled list
+#: en/git-show-branch.txt:112
+#, no-wrap
+msgid "--reflog[=<n>[,<base>]] [<ref>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:60
+#: en/git-show-branch.txt:118
 msgid ""
-"With `-d` flag, it deletes the named <ref> after verifying it still contains "
-"<oldvalue>."
+"Shows <n> most recent ref-log entries for the given ref.  If <base> is "
+"given, <n> entries going back from that entry.  <base> can be specified as "
+"count or date.  When no explicit <ref> parameter is given, it defaults to "
+"the current branch (or `HEAD` if it is detached)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:63
+#: en/git-show-branch.txt:123
 msgid ""
-"With `--stdin`, update-ref reads instructions from standard input and "
-"performs all modifications together.  Specify commands of the form:"
+"Color the status sign (one of these: `*` `!` `+` `-`) of each commit "
+"corresponding to the branch it's in.  The value must be always (the "
+"default), never, or auto."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:69
-#, no-wrap
+#: en/git-show-branch.txt:128
 msgid ""
-"\tupdate SP <ref> SP <newvalue> [SP <oldvalue>] LF\n"
-"\tcreate SP <ref> SP <newvalue> LF\n"
-"\tdelete SP <ref> [SP <oldvalue>] LF\n"
-"\tverify SP <ref> [SP <oldvalue>] LF\n"
-"\toption SP <opt> LF\n"
+"Turn off colored output, even when the configuration file gives the default "
+"to color output.  Same as `--color=never`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:72
+#: en/git-show-branch.txt:131
 msgid ""
-"With `--create-reflog`, update-ref will create a reflog for each ref even if "
-"one would not ordinarily be created."
+"Note that --more, --list, --independent and --merge-base options are "
+"mutually exclusive."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:77
+#: en/git-show-branch.txt:139
 msgid ""
-"Quote fields containing whitespace as if they were strings in C source code; "
-"i.e., surrounded by double-quotes and with backslash escapes.  Use 40 \"0\" "
-"characters or the empty string to specify a zero value.  To specify a "
-"missing value, omit the value and its preceding SP entirely."
+"Given N <references>, the first N lines are the one-line description from "
+"their commit message.  The branch head that is pointed at by $GIT_DIR/HEAD "
+"is prefixed with an asterisk `*` character while other heads are prefixed "
+"with a `!` character."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:80
+#: en/git-show-branch.txt:146
 msgid ""
-"Alternatively, use `-z` to specify in NUL-terminated format, without "
-"quoting:"
+"Following these N lines, one-line log for each commit is displayed, indented "
+"N places.  If a commit is on the I-th branch, the I-th indentation character "
+"shows a `+` sign; otherwise it shows a space.  Merge commits are denoted by "
+"a `-` sign.  Each commit shows a short name that can be used as an extended "
+"SHA-1 to name that commit."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:86
-#, no-wrap
+#: en/git-show-branch.txt:149
 msgid ""
-"\tupdate SP <ref> NUL <newvalue> NUL [<oldvalue>] NUL\n"
-"\tcreate SP <ref> NUL <newvalue> NUL\n"
-"\tdelete SP <ref> NUL [<oldvalue>] NUL\n"
-"\tverify SP <ref> NUL [<oldvalue>] NUL\n"
-"\toption SP <opt> NUL\n"
+"The following example shows three branches, \"master\", \"fixes\" and \"mhf"
+"\":"
 msgstr ""
 
-#. type: Plain text
-#: en/git-update-ref.txt:89
+#. type: delimited block -
+#: en/git-show-branch.txt:155
+#, no-wrap
 msgid ""
-"In this format, use 40 \"0\" to specify a zero value, and use the empty "
-"string to specify a missing value."
+"$ git show-branch master fixes mhf\n"
+"* [master] Add 'git show-branch'.\n"
+" ! [fixes] Introduce \"reset type\" flag to \"git reset\"\n"
+"  ! [mhf] Allow \"+remote:local\" refspec to cause --force when fetching.\n"
+"---\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-update-ref.txt:93
+#. type: delimited block -
+#: en/git-show-branch.txt:167
+#, no-wrap
 msgid ""
-"In either format, values can be specified in any form that Git recognizes as "
-"an object name.  Commands in any other format or a repeated <ref> produce an "
-"error.  Command meanings are:"
+"  + [mhf] Allow \"+remote:local\" refspec to cause --force when fetching.\n"
+"  + [mhf~1] Use git-octopus when pulling more than one heads.\n"
+" +  [fixes] Introduce \"reset type\" flag to \"git reset\"\n"
+"  + [mhf~2] \"git fetch --force\".\n"
+"  + [mhf~3] Use .git/remote/origin, not .git/branches/origin.\n"
+"  + [mhf~4] Make \"git pull\" and \"git fetch\" default to origin\n"
+"  + [mhf~5] Infamous 'octopus merge'\n"
+"  + [mhf~6] Retire git-parse-remote.\n"
+"  + [mhf~7] Multi-head fetch.\n"
+"  + [mhf~8] Start adding the $GIT_DIR/remotes/ support.\n"
+"*++ [master] Add 'git show-branch'.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:99
+#: en/git-show-branch.txt:174
 msgid ""
-"Set <ref> to <newvalue> after verifying <oldvalue>, if given.  Specify a "
-"zero <newvalue> to ensure the ref does not exist after the update and/or a "
-"zero <oldvalue> to make sure the ref does not exist before the update."
+"These three branches all forked from a common commit, [master], whose commit "
+"message is \"Add {apostrophe}git show-branch{apostrophe}\".  The \"fixes\" "
+"branch adds one commit \"Introduce \"reset type\" flag to \"git reset\"\". "
+"The \"mhf\" branch adds many other commits.  The current branch is \"master"
+"\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:103
+#: en/git-show-branch.txt:182
 msgid ""
-"Create <ref> with <newvalue> after verifying it does not exist.  The given "
-"<newvalue> may not be zero."
+"If you keep your primary branches immediately under `refs/heads`, and topic "
+"branches in subdirectories of it, having the following in the configuration "
+"file may help:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-update-ref.txt:104
+#. type: delimited block -
+#: en/git-show-branch.txt:187
 #, no-wrap
-msgid "delete"
+msgid ""
+"[showbranch]\n"
+"\tdefault = --topo-order\n"
+"\tdefault = heads/*\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:107
+#: en/git-show-branch.txt:193
 msgid ""
-"Delete <ref> after verifying it exists with <oldvalue>, if given.  If given, "
-"<oldvalue> may not be zero."
+"With this, `git show-branch` without extra parameters would show only the "
+"primary branches.  In addition, if you happen to be on your topic branch, it "
+"is shown as well."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-update-ref.txt:108
+#. type: delimited block -
+#: en/git-show-branch.txt:196
 #, no-wrap
-msgid "verify"
+msgid "$ git show-branch --reflog=\"10,1 hour ago\" --list master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:111
+#: en/git-show-branch.txt:201
 msgid ""
-"Verify <ref> against <oldvalue> but do not change it.  If <oldvalue> zero or "
-"missing, the ref must not exist."
+"shows 10 reflog entries going back from the tip as of 1 hour ago.  Without "
+"`--list`, the output also shows how these tips are topologically related "
+"with each other."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-update-ref.txt:112
+#. type: Title =
+#: en/git-show-index.txt:2
 #, no-wrap
-msgid "option"
+msgid "git-show-index(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:116
-msgid ""
-"Modify behavior of the next command naming a <ref>.  The only valid option "
-"is `no-deref` to avoid dereferencing a symbolic ref."
+#: en/git-show-index.txt:7
+msgid "git-show-index - Show packed archive index"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:122
-msgid ""
-"If all <ref>s can be locked with matching <oldvalue>s simultaneously, all "
-"modifications are performed.  Otherwise, no modifications are performed.  "
-"Note that while each individual <ref> is updated or deleted atomically, a "
-"concurrent reader may still see a subset of the modifications."
-msgstr ""
-
-#. type: Title -
-#: en/git-update-ref.txt:124
+#: en/git-show-index.txt:13
 #, no-wrap
-msgid "Logging Updates"
+msgid "'git show-index'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:131
+#: en/git-show-index.txt:22
 msgid ""
-"If config parameter \"core.logAllRefUpdates\" is true and the ref is one "
-"under \"refs/heads/\", \"refs/remotes/\", \"refs/notes/\", or the symbolic "
-"ref HEAD; or the file \"$GIT_DIR/logs/<ref>\" exists then `git update-ref` "
-"will append a line to the log file \"$GIT_DIR/logs/<ref>\" (dereferencing "
-"all symbolic refs before creating the log name) describing the change in ref "
-"value.  Log lines are formatted as:"
-msgstr ""
-
-#. type: Plain text
-#: en/git-update-ref.txt:133
-msgid "oldsha1 SP newsha1 SP committer LF"
+"Read the `.idx` file for a Git packfile (created with linkgit:git-pack-"
+"objects[1] or linkgit:git-index-pack[1]) from the standard input, and dump "
+"its contents. The output consists of one object per line, with each line "
+"containing two or three space-separated columns:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:138
+#: en/git-show-index.txt:25
 msgid ""
-"Where \"oldsha1\" is the 40 character hexadecimal value previously stored in "
-"<ref>, \"newsha1\" is the 40 character hexadecimal value of <newvalue> and "
-"\"committer\" is the committer's name, email address and date in the "
-"standard Git committer ident format."
+"the first column is the offset in bytes of the object within the "
+"corresponding packfile"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:140
-msgid "Optionally with -m:"
+#: en/git-show-index.txt:27
+msgid "the second column is the object id of the object"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:142
-msgid "oldsha1 SP newsha1 SP committer TAB message LF"
+#: en/git-show-index.txt:30
+msgid ""
+"if the index version is 2 or higher, the third column contains the CRC32 of "
+"the object data"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:145
+#: en/git-show-index.txt:34
 msgid ""
-"Where all fields are as described above and \"message\" is the value "
-"supplied to the -m option."
+"The objects are output in the order in which they are found in the index "
+"file, which should be (in a correctly constructed file) sorted by object id."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-ref.txt:149
+#: en/git-show-index.txt:38
 msgid ""
-"An update will fail (without changing <ref>) if the current user is unable "
-"to create a new log file, append to the existing log file or does not have "
-"committer information available."
+"Note that you can get more information on a packfile by calling linkgit:git-"
+"verify-pack[1]. However, as this command considers only the index file "
+"itself, it's both faster and more flexible."
 msgstr ""
 
 #. type: Title =
-#: en/git-update-server-info.txt:2
+#: en/git-show-ref.txt:2
 #, no-wrap
-msgid "git-update-server-info(1)"
+msgid "git-show-ref(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-server-info.txt:7
-msgid "git-update-server-info - Update auxiliary info file to help dumb servers"
+#: en/git-show-ref.txt:7
+msgid "git-show-ref - List references in a local repository"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-server-info.txt:13
+#: en/git-show-ref.txt:15
 #, no-wrap
-msgid "'git update-server-info' [--force]\n"
+msgid ""
+"'git show-ref' [-q|--quiet] [--verify] [--head] [-d|--dereference]\n"
+"\t     [-s|--hash[=<n>]] [--abbrev[=<n>]] [--tags]\n"
+"\t     [--heads] [--] [<pattern>...]\n"
+"'git show-ref' --exclude-existing[=<pattern>]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-server-info.txt:21
+#: en/git-show-ref.txt:23
 msgid ""
-"A dumb server that does not do on-the-fly pack generations must have some "
-"auxiliary information files in $GIT_DIR/info and $GIT_OBJECT_DIRECTORY/info "
-"directories to help clients discover what references and packs the server "
-"has.  This command generates such auxiliary files."
+"Displays references available in a local repository along with the "
+"associated commit IDs. Results can be filtered using a pattern and tags can "
+"be dereferenced into object IDs. Additionally, it can be used to test "
+"whether a particular ref exists."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-server-info.txt:29
-msgid "Update the info files from scratch."
+#: en/git-show-ref.txt:25
+msgid "By default, shows the tags, heads, and remote refs."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-server-info.txt:37
+#: en/git-show-ref.txt:29
 msgid ""
-"Currently the command updates the following files.  Please see "
-"linkgit:gitrepository-layout[5] for description of what they are for:"
-msgstr ""
-
-#. type: Plain text
-#: en/git-update-server-info.txt:39
-msgid "objects/info/packs"
+"The --exclude-existing form is a filter that does the inverse. It reads refs "
+"from stdin, one ref per line, and shows those that don't exist in the local "
+"repository."
 msgstr ""
 
 #. type: Plain text
-#: en/git-update-server-info.txt:41
-msgid "info/refs"
+#: en/git-show-ref.txt:32
+msgid ""
+"Use of this utility is encouraged in favor of directly accessing files under "
+"the `.git` directory."
 msgstr ""
 
-#. type: Title =
-#: en/git-upload-archive.txt:2
+#. type: Labeled list
+#: en/git-show-ref.txt:36
 #, no-wrap
-msgid "git-upload-archive(1)"
+msgid "--head"
 msgstr ""
 
 #. type: Plain text
-#: en/git-upload-archive.txt:7
-msgid "git-upload-archive - Send archive back to git-archive"
+#: en/git-show-ref.txt:39
+msgid "Show the HEAD reference, even if it would normally be filtered out."
 msgstr ""
 
 #. type: Plain text
-#: en/git-upload-archive.txt:13
-#, no-wrap
-msgid "'git upload-archive' <directory>\n"
+#: en/git-show-ref.txt:46
+msgid ""
+"Limit to \"refs/heads\" and \"refs/tags\", respectively.  These options are "
+"not mutually exclusive; when given both, references stored in \"refs/heads\" "
+"and \"refs/tags\" are displayed."
 msgstr ""
 
-#. type: Plain text
-#: en/git-upload-archive.txt:18
-msgid ""
-"Invoked by 'git archive --remote' and sends a generated archive to the other "
-"end over the Git protocol."
+#. type: Labeled list
+#: en/git-show-ref.txt:48
+#, no-wrap
+msgid "--dereference"
 msgstr ""
 
 #. type: Plain text
-#: en/git-upload-archive.txt:22
+#: en/git-show-ref.txt:52
 msgid ""
-"This command is usually not invoked directly by the end user.  The UI for "
-"the protocol is on the 'git archive' side, and the program pair is meant to "
-"be used to get an archive from a remote repository."
+"Dereference tags into object IDs as well. They will be shown with \"{caret}"
+"{}\" appended."
 msgstr ""
 
-#. type: Title -
-#: en/git-upload-archive.txt:24 en/transfer-data-leaks.txt:2
+#. type: Labeled list
+#: en/git-show-ref.txt:54
 #, no-wrap
-msgid "SECURITY"
+msgid "--hash[=<n>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-upload-archive.txt:32
+#: en/git-show-ref.txt:58
 msgid ""
-"In order to protect the privacy of objects that have been removed from "
-"history but may not yet have been pruned, `git-upload-archive` avoids "
-"serving archives for commits and trees that are not reachable from the "
-"repository's refs.  However, because calculating object reachability is "
-"computationally expensive, `git-upload-archive` implements a stricter but "
-"easier-to-check set of rules:"
+"Only show the SHA-1 hash, not the reference name. When combined with --"
+"dereference the dereferenced tag will still be shown after the SHA-1."
 msgstr ""
 
 #. type: Plain text
-#: en/git-upload-archive.txt:35
+#: en/git-show-ref.txt:64
 msgid ""
-"Clients may request a commit or tree that is pointed to directly by a "
-"ref. E.g., `git archive --remote=origin v1.0`."
+"Enable stricter reference checking by requiring an exact ref path.  Aside "
+"from returning an error code of 1, it will also print an error message if `--"
+"quiet` was not specified."
 msgstr ""
 
 #. type: Plain text
-#: en/git-upload-archive.txt:38
+#: en/git-show-ref.txt:69
 msgid ""
-"Clients may request a sub-tree within a commit or tree using the `ref:path` "
-"syntax. E.g., `git archive --remote=origin v1.0:Documentation`."
+"Abbreviate the object name.  When using `--hash`, you do not have to say `--"
+"hash --abbrev`; `--hash=n` would do."
 msgstr ""
 
 #. type: Plain text
-#: en/git-upload-archive.txt:43
+#: en/git-show-ref.txt:75
 msgid ""
-"Clients may _not_ use other sha1 expressions, even if the end result is "
-"reachable. E.g., neither a relative commit like `master^` nor a literal sha1 "
-"like `abcd1234` is allowed, even if the result is reachable from the refs."
+"Do not print any results to stdout. When combined with `--verify` this can "
+"be used to silently check if a reference exists."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-show-ref.txt:76
+#, no-wrap
+msgid "--exclude-existing[=<pattern>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-upload-archive.txt:48
+#: en/git-show-ref.txt:81
 msgid ""
-"Note that rule 3 disallows many cases that do not have any privacy "
-"implications. These rules are subject to change in future versions of git, "
-"and the server accessed by `git archive --remote` may or may not follow "
-"these exact rules."
+"Make 'git show-ref' act as a filter that reads refs from stdin of the form "
+"\"`^(?:<anything>\\s)?<refname>(?:\\^{})?$`\" and performs the following "
+"actions on each:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-upload-archive.txt:54
-msgid ""
-"If the config option `uploadArchive.allowUnreachable` is true, these rules "
-"are ignored, and clients may use arbitrary sha1 expressions.  This is useful "
-"if you do not care about the privacy of unreachable objects, or if your "
-"object database is already publicly available for access via non-smart-http."
+#: en/git-show-ref.txt:82
+msgid "strip \"{caret}{}\" at the end of line if any;"
 msgstr ""
 
 #. type: Plain text
-#: en/git-upload-archive.txt:59
-msgid "The repository to get a tar archive from."
+#: en/git-show-ref.txt:83
+msgid "ignore if pattern is provided and does not head-match refname;"
 msgstr ""
 
-#. type: Title =
-#: en/git-upload-pack.txt:2
-#, no-wrap
-msgid "git-upload-pack(1)"
+#. type: Plain text
+#: en/git-show-ref.txt:84
+msgid "warn if refname is not a well-formed refname and skip;"
 msgstr ""
 
 #. type: Plain text
-#: en/git-upload-pack.txt:7
-msgid "git-upload-pack - Send objects packed back to git-fetch-pack"
+#: en/git-show-ref.txt:85
+msgid "ignore if refname is a ref that exists in the local repository;"
 msgstr ""
 
 #. type: Plain text
-#: en/git-upload-pack.txt:15
-#, no-wrap
+#: en/git-show-ref.txt:86
+msgid "otherwise output the line."
+msgstr ""
+
+#. type: Plain text
+#: en/git-show-ref.txt:95
 msgid ""
-"'git-upload-pack' [--[no-]strict] [--timeout=<n>] [--stateless-rpc]\n"
-"\t\t  [--advertise-refs] <directory>\n"
-"DESCRIPTION\n"
+"Show references matching one or more patterns. Patterns are matched from the "
+"end of the full name, and only complete parts are matched, e.g.  'master' "
+"matches 'refs/heads/master', 'refs/remotes/origin/master', 'refs/tags/jedi/"
+"master' but not 'refs/heads/mymaster' or 'refs/remotes/master/jedi'."
+msgstr ""
+
+#. type: Plain text
+#: en/git-show-ref.txt:100
+msgid "The output is in the format: '<SHA-1 ID>' '<space>' '<reference name>'."
 msgstr ""
 
 #. type: delimited block -
-#: en/git-upload-pack.txt:18
+#: en/git-show-ref.txt:111
 #, no-wrap
 msgid ""
-"Invoked by 'git fetch-pack', learns what\n"
-"objects the other side is missing, and sends them after packing.\n"
+"$ git show-ref --head --dereference\n"
+"832e76a9899f560a90ffd62ae2ce83bbeff58f54 HEAD\n"
+"832e76a9899f560a90ffd62ae2ce83bbeff58f54 refs/heads/master\n"
+"832e76a9899f560a90ffd62ae2ce83bbeff58f54 refs/heads/origin\n"
+"3521017556c5de4159da4615a39fa4d5d2c279b5 refs/tags/v0.99.9c\n"
+"6ddc0964034342519a87fe013781abf31c6db6ad refs/tags/v0.99.9c^{}\n"
+"055e4ae3ae6eb344cbabf2a5256a49ea66040131 refs/tags/v1.0rc4\n"
+"423325a2d24638ddcc82ce47be5e40be550f4507 refs/tags/v1.0rc4^{}\n"
+"...\n"
+msgstr ""
+
+#. type: Plain text
+#: en/git-show-ref.txt:114
+msgid ""
+"When using --hash (and not --dereference) the output format is: '<SHA-1 ID>'"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-upload-pack.txt:23
+#: en/git-show-ref.txt:121
 #, no-wrap
 msgid ""
-"This command is usually not invoked directly by the end user.\n"
-"The UI for the protocol is on the 'git fetch-pack' side, and the\n"
-"program pair is meant to be used to pull updates from a remote\n"
-"repository.  For push operations, see 'git send-pack'.\n"
+"$ git show-ref --heads --hash\n"
+"2e3ba0114a1f52b47df29743d6915d056be13278\n"
+"185008ae97960c8d551adcd9e23565194651b5d1\n"
+"03adf42c988195b50e1a1935ba5fcbc39b2b029b\n"
+"...\n"
+msgstr ""
+
+#. type: Plain text
+#: en/git-show-ref.txt:129
+msgid ""
+"To show all references called \"master\", whether tags or heads or anything "
+"else, and regardless of how deep in the reference naming hierarchy they are, "
+"use:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-upload-pack.txt:26
+#: en/git-show-ref.txt:132
 #, no-wrap
-msgid "OPTIONS\n"
+msgid "\tgit show-ref master\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-upload-pack.txt:28
+#. type: Plain text
+#: en/git-show-ref.txt:136
+msgid ""
+"This will show \"refs/heads/master\" but also \"refs/remote/other-repo/master"
+"\", if such references exists."
+msgstr ""
+
+#. type: Plain text
+#: en/git-show-ref.txt:138
+msgid "When using the `--verify` flag, the command requires an exact path:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-show-ref.txt:141
 #, no-wrap
-msgid "--[no-]strict"
+msgid "\tgit show-ref --verify refs/heads/master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-upload-pack.txt:30
-msgid "Do not try <directory>/.git/ if <directory> is no Git directory."
+#: en/git-show-ref.txt:144
+msgid "will only match the exact branch called \"master\"."
 msgstr ""
 
 #. type: Plain text
-#: en/git-upload-pack.txt:33
-msgid "Interrupt transfer after <n> seconds of inactivity."
+#: en/git-show-ref.txt:147
+msgid ""
+"If nothing matches, 'git show-ref' will return an error code of 1, and in "
+"the case of verification, it will show an error message."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-upload-pack.txt:34
+#. type: Plain text
+#: en/git-show-ref.txt:150
+msgid ""
+"For scripting, you can ask it to be quiet with the \"--quiet\" flag, which "
+"allows you to do things like"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-show-ref.txt:154
 #, no-wrap
-msgid "--stateless-rpc"
+msgid ""
+"\tgit show-ref --quiet --verify -- \"refs/heads/$headname\" ||\n"
+"\t\techo \"$headname is not a valid branch\"\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-upload-pack.txt:38
+#: en/git-show-ref.txt:159
 msgid ""
-"Perform only a single read-write cycle with stdin and stdout.  This fits "
-"with the HTTP POST request processing model where a program may read the "
-"request, write a response, and must exit."
+"to check whether a particular branch exists or not (notice how we don't "
+"actually want to show any results, and we want to use the full refname for "
+"it in order to not trigger the problem with ambiguous partial matches)."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-upload-pack.txt:39
-#, no-wrap
-msgid "--advertise-refs"
+#. type: Plain text
+#: en/git-show-ref.txt:163
+msgid ""
+"To show only tags, or only proper branch heads, use \"--tags\" and/or \"--"
+"heads\" respectively (using both means that it shows tags and heads, but not "
+"other random references under the refs/ subdirectory)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-upload-pack.txt:43
+#: en/git-show-ref.txt:166
 msgid ""
-"Only the initial ref advertisement is output, and the program exits "
-"immediately. This fits with the HTTP GET request model, where no request "
-"content is received but a response must be produced."
+"To do automatic tag object dereferencing, use the \"-d\" or \"--dereference"
+"\" flag, so you can do"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-show-ref.txt:169
+#, no-wrap
+msgid "\tgit show-ref --tags --dereference\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-upload-pack.txt:46
-msgid "The repository to sync from."
+#: en/git-show-ref.txt:172
+msgid "to get a listing of all tags together with what they dereference."
 msgstr ""
 
 #. type: Plain text
-#: en/git-upload-pack.txt:50
-msgid "linkgit:gitnamespaces[7]"
+#: en/git-show-ref.txt:176
+msgid "`.git/refs/*`, `.git/packed-refs`"
+msgstr ""
+
+#. type: Plain text
+#: en/git-show-ref.txt:183
+msgid ""
+"linkgit:git-for-each-ref[1], linkgit:git-ls-remote[1], linkgit:git-update-"
+"ref[1], linkgit:gitrepository-layout[5]"
 msgstr ""
 
 #. type: Title =
-#: en/git-var.txt:2
+#: en/git-show.txt:2
 #, no-wrap
-msgid "git-var(1)"
+msgid "git-show(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-var.txt:7
-msgid "git-var - Show a Git logical variable"
+#: en/git-show.txt:7
+msgid "git-show - Show various types of objects"
 msgstr ""
 
 #. type: Plain text
-#: en/git-var.txt:13
+#: en/git-show.txt:13
 #, no-wrap
-msgid "'git var' ( -l | <variable> )\n"
+msgid "'git show' [<options>] [<object>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-var.txt:17
-msgid "Prints a Git logical variable."
+#: en/git-show.txt:17
+msgid "Shows one or more objects (blobs, trees, tags and commits)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-var.txt:25
+#: en/git-show.txt:21
 msgid ""
-"Cause the logical variables to be listed. In addition, all the variables of "
-"the Git configuration file .git/config are listed as well. (However, the "
-"configuration variables listing functionality is deprecated in favor of `git "
-"config -l`.)"
+"For commits it shows the log message and textual diff. It also presents the "
+"merge commit in a special format as produced by 'git diff-tree --cc'."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-var.txt:30
-#, no-wrap
+#. type: Plain text
+#: en/git-show.txt:23
+msgid "For tags, it shows the tag message and the referenced objects."
+msgstr ""
+
+#. type: Plain text
+#: en/git-show.txt:26
 msgid ""
-"\t$ git var GIT_AUTHOR_IDENT\n"
-"\tEric W. Biederman <ebiederm@lnxi.com> 1121223278 -0600\n"
+"For trees, it shows the names (equivalent to 'git ls-tree' with --name-only)."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-var.txt:33
-#, no-wrap
-msgid "VARIABLES\n"
+#. type: Plain text
+#: en/git-show.txt:28
+msgid "For plain blobs, it shows the plain contents."
+msgstr ""
+
+#. type: Plain text
+#: en/git-show.txt:31
+msgid ""
+"The command takes options applicable to the 'git diff-tree' command to "
+"control how the changes the commit introduces are shown."
+msgstr ""
+
+#. type: Plain text
+#: en/git-show.txt:33
+msgid "This manual page describes only the most frequently used options."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-var.txt:34
+#: en/git-show.txt:37
 #, no-wrap
-msgid "GIT_AUTHOR_IDENT"
+msgid "<object>..."
 msgstr ""
 
 #. type: Plain text
-#: en/git-var.txt:36
-msgid "The author of a piece of code."
+#: en/git-show.txt:41
+msgid ""
+"The names of objects to show (defaults to 'HEAD').  For a more complete list "
+"of ways to spell object names, see \"SPECIFYING REVISIONS\" section in "
+"linkgit:gitrevisions[7]."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-var.txt:37
+#: en/git-show.txt:60
 #, no-wrap
-msgid "GIT_COMMITTER_IDENT"
+msgid "`git show v1.0.0`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-var.txt:39
-msgid "The person who put a piece of code into Git."
+#: en/git-show.txt:63
+msgid "Shows the tag `v1.0.0`, along with the object the tags points at."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-var.txt:40
+#: en/git-show.txt:64
 #, no-wrap
-msgid "GIT_EDITOR"
+msgid "`git show v1.0.0^{tree}`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-var.txt:48
-msgid ""
-"Text editor for use by Git commands.  The value is meant to be interpreted "
-"by the shell when it is used.  Examples: `~/bin/vi`, "
-"`$SOME_ENVIRONMENT_VARIABLE`, `\"C:\\Program Files\\Vim\\gvim.exe\" "
-"--nofork`.  The order of preference is the `$GIT_EDITOR` environment "
-"variable, then `core.editor` configuration, then `$VISUAL`, then `$EDITOR`, "
-"and then the default chosen at compile time, which is usually 'vi'."
+#: en/git-show.txt:66
+msgid "Shows the tree pointed to by the tag `v1.0.0`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-var.txt:50
+#. type: Labeled list
+#: en/git-show.txt:67
 #, no-wrap
-msgid "    The build you are using chose '{git-default-editor}' as the default.\n"
+msgid "`git show -s --format=%s v1.0.0^{commit}`"
+msgstr ""
+
+#. type: Plain text
+#: en/git-show.txt:70
+msgid "Shows the subject of the commit pointed to by the tag `v1.0.0`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-var.txt:52
+#: en/git-show.txt:71
 #, no-wrap
-msgid "GIT_PAGER"
+msgid "`git show next~10:Documentation/README`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-var.txt:58 en/config.txt:772
+#: en/git-show.txt:75
 msgid ""
-"Text viewer for use by Git commands (e.g., 'less').  The value is meant to "
-"be interpreted by the shell.  The order of preference is the `$GIT_PAGER` "
-"environment variable, then `core.pager` configuration, then `$PAGER`, and "
-"then the default chosen at compile time (usually 'less')."
+"Shows the contents of the file `Documentation/README` as they were current "
+"in the 10th last commit of the branch `next`."
 msgstr ""
 
-#. type: Plain text
-#: en/git-var.txt:60
+#. type: Labeled list
+#: en/git-show.txt:76
 #, no-wrap
-msgid "    The build you are using chose '{git-default-pager}' as the default.\n"
+msgid "`git show master:Makefile master:t/Makefile`"
 msgstr ""
 
 #. type: Plain text
-#: en/git-var.txt:67
-msgid "linkgit:git-commit-tree[1] linkgit:git-tag[1] linkgit:git-config[1]"
+#: en/git-show.txt:79
+msgid ""
+"Concatenates the contents of said Makefiles in the head of the branch "
+"`master`."
 msgstr ""
 
 #. type: Title =
-#: en/git-verify-commit.txt:2
+#: en/git-sh-setup.txt:2
 #, no-wrap
-msgid "git-verify-commit(1)"
+msgid "git-sh-setup(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-verify-commit.txt:7
-msgid "git-verify-commit - Check the GPG signature of commits"
+#: en/git-sh-setup.txt:7
+msgid "git-sh-setup - Common Git shell script setup code"
 msgstr ""
 
 #. type: Plain text
-#: en/git-verify-commit.txt:12
+#: en/git-sh-setup.txt:12
 #, no-wrap
-msgid "'git verify-commit' <commit>...\n"
+msgid "'. \"$(git --exec-path)/git-sh-setup\"'\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-verify-commit.txt:16
-msgid "Validates the GPG signature created by 'git commit -S'."
+#: en/git-sh-setup.txt:23
+msgid ""
+"The 'git sh-setup' scriptlet is designed to be sourced (using `.`) by other "
+"shell scripts to set up some variables pointing at the normal Git "
+"directories and a few helper shell functions."
 msgstr ""
 
 #. type: Plain text
-#: en/git-verify-commit.txt:22 en/git-verify-tag.txt:22
+#: en/git-sh-setup.txt:29
 msgid ""
-"Print the raw gpg status output to standard error instead of the normal "
-"human-readable output."
+"Before sourcing it, your script should set up a few variables; `USAGE` (and "
+"`LONG_USAGE`, if any) is used to define message given by `usage()` shell "
+"function.  `SUBDIRECTORY_OK` can be set if the script can run from a "
+"subdirectory of the working tree (some commands do not)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-verify-commit.txt:26
-msgid "Print the contents of the commit object before validating it."
+#: en/git-sh-setup.txt:32
+msgid ""
+"The scriptlet sets `GIT_DIR` and `GIT_OBJECT_DIRECTORY` shell variables, but "
+"does *not* export them to the environment."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-sh-setup.txt:36
+#, no-wrap
+msgid "die"
 msgstr ""
 
 #. type: Plain text
-#: en/git-verify-commit.txt:29
-msgid "SHA-1 identifiers of Git commit objects."
+#: en/git-sh-setup.txt:39
+msgid ""
+"exit after emitting the supplied error message to the standard error stream."
 msgstr ""
 
-#. type: Title =
-#: en/git-verify-pack.txt:2
+#. type: Labeled list
+#: en/git-sh-setup.txt:40
 #, no-wrap
-msgid "git-verify-pack(1)"
+msgid "usage"
 msgstr ""
 
 #. type: Plain text
-#: en/git-verify-pack.txt:7
-msgid "git-verify-pack - Validate packed Git archive files"
+#: en/git-sh-setup.txt:42
+msgid "die with the usage message."
 msgstr ""
 
-#. type: Plain text
-#: en/git-verify-pack.txt:13
+#. type: Labeled list
+#: en/git-sh-setup.txt:43
 #, no-wrap
-msgid "'git verify-pack' [-v|--verbose] [-s|--stat-only] [--] <pack>.idx ...\n"
+msgid "set_reflog_action"
 msgstr ""
 
 #. type: Plain text
-#: en/git-verify-pack.txt:20
+#: en/git-sh-setup.txt:49
 msgid ""
-"Reads given idx file for packed Git archive created with the 'git "
-"pack-objects' command and verifies idx file and the corresponding pack file."
+"Set `GIT_REFLOG_ACTION` environment to a given string (typically the name of "
+"the program) unless it is already set.  Whenever the script runs a `git` "
+"command that updates refs, a reflog entry is created using the value of this "
+"string to leave the record of what command updated the ref."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-verify-pack.txt:23
+#: en/git-sh-setup.txt:50
 #, no-wrap
-msgid "<pack>.idx ..."
-msgstr ""
-
-#. type: Plain text
-#: en/git-verify-pack.txt:25
-msgid "The idx files to verify."
+msgid "git_editor"
 msgstr ""
 
 #. type: Plain text
-#: en/git-verify-pack.txt:30
+#: en/git-sh-setup.txt:54
 msgid ""
-"After verifying the pack, show list of objects contained in the pack and a "
-"histogram of delta chain length."
+"runs an editor of user's choice (GIT_EDITOR, core.editor, VISUAL or EDITOR) "
+"on a given file, but error out if no editor is specified and the terminal is "
+"dumb."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-verify-pack.txt:32
+#: en/git-sh-setup.txt:55
 #, no-wrap
-msgid "--stat-only"
+msgid "is_bare_repository"
 msgstr ""
 
 #. type: Plain text
-#: en/git-verify-pack.txt:35
+#: en/git-sh-setup.txt:59
 msgid ""
-"Do not verify the pack contents; only show the histogram of delta chain "
-"length.  With `--verbose`, list of objects is also shown."
+"outputs `true` or `false` to the standard output stream to indicate if the "
+"repository is a bare repository (i.e. without an associated working tree)."
 msgstr ""
 
-#. type: Title -
-#: en/git-verify-pack.txt:40
+#. type: Labeled list
+#: en/git-sh-setup.txt:60
 #, no-wrap
-msgid "OUTPUT FORMAT"
+msgid "cd_to_toplevel"
 msgstr ""
 
 #. type: Plain text
-#: en/git-verify-pack.txt:42
-msgid "When specifying the -v option the format used is:"
+#: en/git-sh-setup.txt:62
+msgid "runs chdir to the toplevel of the working tree."
 msgstr ""
 
-#. type: Plain text
-#: en/git-verify-pack.txt:44
+#. type: Labeled list
+#: en/git-sh-setup.txt:63
 #, no-wrap
-msgid "\tSHA-1 type size size-in-packfile offset-in-packfile\n"
+msgid "require_work_tree"
 msgstr ""
 
 #. type: Plain text
-#: en/git-verify-pack.txt:46
-msgid "for objects that are not deltified in the pack, and"
+#: en/git-sh-setup.txt:66
+msgid ""
+"checks if the current directory is within the working tree of the "
+"repository, and otherwise dies."
 msgstr ""
 
-#. type: Plain text
-#: en/git-verify-pack.txt:48
+#. type: Labeled list
+#: en/git-sh-setup.txt:67
 #, no-wrap
-msgid "\tSHA-1 type size size-in-packfile offset-in-packfile depth base-SHA-1\n"
+msgid "require_work_tree_exists"
 msgstr ""
 
 #. type: Plain text
-#: en/git-verify-pack.txt:50
-msgid "for objects that are deltified."
+#: en/git-sh-setup.txt:72
+msgid ""
+"checks if the working tree associated with the repository exists, and "
+"otherwise dies.  Often done before calling cd_to_toplevel, which is "
+"impossible to do if there is no working tree."
 msgstr ""
 
-#. type: Title =
-#: en/git-verify-tag.txt:2
+#. type: Labeled list
+#: en/git-sh-setup.txt:73
 #, no-wrap
-msgid "git-verify-tag(1)"
+msgid "require_clean_work_tree <action> [<hint>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-verify-tag.txt:7
-msgid "git-verify-tag - Check the GPG signature of tags"
+#: en/git-sh-setup.txt:78
+msgid ""
+"checks that the working tree and index associated with the repository have "
+"no uncommitted changes to tracked files.  Otherwise it emits an error "
+"message of the form `Cannot <action>: <reason>. <hint>`, and dies.  Example:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-verify-tag.txt:12
+#. type: delimited block -
+#: en/git-sh-setup.txt:81
 #, no-wrap
-msgid "'git verify-tag' [--format=<format>] <tag>...\n"
+msgid "require_clean_work_tree rebase \"Please commit or stash them.\"\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-verify-tag.txt:16
-msgid "Validates the gpg signature created by 'git tag'."
+#. type: Labeled list
+#: en/git-sh-setup.txt:83
+#, no-wrap
+msgid "get_author_ident_from_commit"
 msgstr ""
 
 #. type: Plain text
-#: en/git-verify-tag.txt:26
-msgid "Print the contents of the tag object before validating it."
+#: en/git-sh-setup.txt:86
+msgid ""
+"outputs code for use with eval to set the GIT_AUTHOR_NAME, GIT_AUTHOR_EMAIL "
+"and GIT_AUTHOR_DATE variables for a given commit."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-verify-tag.txt:27
+#: en/git-sh-setup.txt:87
 #, no-wrap
-msgid "<tag>..."
+msgid "create_virtual_base"
 msgstr ""
 
 #. type: Plain text
-#: en/git-verify-tag.txt:29
-msgid "SHA-1 identifiers of Git tag objects."
+#: en/git-sh-setup.txt:92
+msgid ""
+"modifies the first file so only lines in common with the second file remain. "
+"If there is insufficient common material, then the first file is left empty. "
+"The result is suitable as a virtual base input for a 3-way merge."
 msgstr ""
 
 #. type: Title =
-#: en/git-web--browse.txt:2
+#: en/git-stage.txt:2
 #, no-wrap
-msgid "git-web{litdd}browse(1)"
+msgid "git-stage(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:7
-msgid "git-web--browse - Git helper script to launch a web browser"
+#: en/git-stage.txt:7
+msgid "git-stage - Add file contents to the staging area"
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:12
+#: en/git-stage.txt:13
 #, no-wrap
-msgid "'git web{litdd}browse' [OPTIONS] URL/FILE ...\n"
+msgid "'git stage' args...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:19
+#: en/git-stage.txt:20
 msgid ""
-"This script tries, as much as possible, to display the URLs and FILEs that "
-"are passed as arguments, as HTML pages in new tabs on an already opened web "
-"browser."
+"This is a synonym for linkgit:git-add[1].  Please refer to the documentation "
+"of that command."
+msgstr ""
+
+#. type: Title =
+#: en/git-stash.txt:2
+#, no-wrap
+msgid "git-stash(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:21
-msgid "The following browsers (or commands) are currently supported:"
+#: en/git-stash.txt:7
+msgid "git-stash - Stash the changes in a dirty working directory away"
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:23
-msgid "firefox (this is the default under X Window when not using KDE)"
+#: en/git-stash.txt:22
+#, no-wrap
+msgid ""
+"'git stash' list [<options>]\n"
+"'git stash' show [<stash>]\n"
+"'git stash' drop [-q|--quiet] [<stash>]\n"
+"'git stash' ( pop | apply ) [--index] [-q|--quiet] [<stash>]\n"
+"'git stash' branch <branchname> [<stash>]\n"
+"'git stash' [push [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]\n"
+"\t     [-u|--include-untracked] [-a|--all] [-m|--message <message>]\n"
+"\t     [--] [<pathspec>...]]\n"
+"'git stash' clear\n"
+"'git stash' create [<message>]\n"
+"'git stash' store [-m|--message <message>] [-q|--quiet] <commit>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:24
-msgid "iceweasel"
+#: en/git-stash.txt:30
+msgid ""
+"Use `git stash` when you want to record the current state of the working "
+"directory and the index, but want to go back to a clean working directory.  "
+"The command saves your local modifications away and reverts the working "
+"directory to match the `HEAD` commit."
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:25
-msgid "seamonkey"
+#: en/git-stash.txt:38
+msgid ""
+"The modifications stashed away by this command can be listed with `git stash "
+"list`, inspected with `git stash show`, and restored (potentially on top of "
+"a different commit) with `git stash apply`.  Calling `git stash` without any "
+"arguments is equivalent to `git stash push`.  A stash is by default listed "
+"as \"WIP on 'branchname' ...\", but you can give a more descriptive message "
+"on the command line when you create one."
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:26
-msgid "iceape"
+#: en/git-stash.txt:45
+msgid ""
+"The latest stash you created is stored in `refs/stash`; older stashes are "
+"found in the reflog of this reference and can be named using the usual "
+"reflog syntax (e.g. `stash@{0}` is the most recently created stash, "
+"`stash@{1}` is the one before it, `stash@{2.hours.ago}` is also possible). "
+"Stashes may also be referenced by specifying just the stash index (e.g. the "
+"integer `n` is equivalent to `stash@{n}`)."
 msgstr ""
 
-#. type: Plain text
-#: en/git-web--browse.txt:27
-msgid "chromium (also supported as chromium-browser)"
+#. type: Labeled list
+#: en/git-stash.txt:49
+#, no-wrap
+msgid "push [-p|--patch] [-k|--[no-]keep-index] [-u|--include-untracked] [-a|--all] [-q|--quiet] [-m|--message <message>] [--] [<pathspec>...]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:28
-msgid "google-chrome (also supported as chrome)"
+#: en/git-stash.txt:55
+msgid ""
+"Save your local modifications to a new 'stash entry' and roll them back to "
+"HEAD (in the working tree and in the index).  The <message> part is optional "
+"and gives the description along with the stashed state."
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:29
-msgid "konqueror (this is the default under KDE, see 'Note about konqueror' below)"
+#: en/git-stash.txt:61
+msgid ""
+"For quickly making a snapshot, you can omit \"push\".  In this mode, non-"
+"option arguments are not allowed to prevent a misspelled subcommand from "
+"making an unwanted stash entry.  The two exceptions to this are `stash -p` "
+"which acts as alias for `stash push -p` and pathspecs, which are allowed "
+"after a double hyphen `--` for disambiguation."
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:30
-msgid "opera"
+#: en/git-stash.txt:67
+msgid ""
+"When pathspec is given to 'git stash push', the new stash entry records the "
+"modified states only for the files that match the pathspec.  The index "
+"entries and working tree files are then rolled back to the state in HEAD "
+"only for these files, too, leaving files that do not match the pathspec "
+"intact."
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:31
-msgid "w3m (this is the default outside graphical environments)"
+#: en/git-stash.txt:70
+msgid ""
+"If the `--keep-index` option is used, all changes already added to the index "
+"are left intact."
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:32
-msgid "elinks"
+#: en/git-stash.txt:75
+msgid ""
+"If the `--include-untracked` option is used, all untracked files are also "
+"stashed and then cleaned up with `git clean`, leaving the working directory "
+"in a very clean state. If the `--all` option is used instead then the "
+"ignored files are stashed and cleaned in addition to the untracked files."
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:33
-msgid "links"
+#: en/git-stash.txt:83
+msgid ""
+"With `--patch`, you can interactively select hunks from the diff between "
+"HEAD and the working tree to be stashed.  The stash entry is constructed "
+"such that its index state is the same as the index state of your repository, "
+"and its worktree contains only the changes you selected interactively.  The "
+"selected changes are then rolled back from your worktree. See the "
+"``Interactive Mode'' section of linkgit:git-add[1] to learn how to operate "
+"the `--patch` mode."
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:34
-msgid "lynx"
+#: en/git-stash.txt:86
+msgid ""
+"The `--patch` option implies `--keep-index`.  You can use `--no-keep-index` "
+"to override this."
 msgstr ""
 
-#. type: Plain text
-#: en/git-web--browse.txt:35
-msgid "dillo"
+#. type: Labeled list
+#: en/git-stash.txt:87
+#, no-wrap
+msgid "save [-p|--patch] [-k|--[no-]keep-index] [-u|--include-untracked] [-a|--all] [-q|--quiet] [<message>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:36
-msgid "open (this is the default under Mac OS X GUI)"
+#: en/git-stash.txt:92
+msgid ""
+"This option is deprecated in favour of 'git stash push'.  It differs from "
+"\"stash push\" in that it cannot take pathspecs, and any non-option "
+"arguments form the message."
 msgstr ""
 
-#. type: Plain text
-#: en/git-web--browse.txt:37
-msgid "start (this is the default under MinGW)"
+#. type: Labeled list
+#: en/git-stash.txt:93
+#, no-wrap
+msgid "list [<options>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:38
-msgid "cygstart (this is the default under Cygwin)"
+#: en/git-stash.txt:100
+msgid ""
+"List the stash entries that you currently have.  Each 'stash entry' is "
+"listed with its name (e.g. `stash@{0}` is the latest entry, `stash@{1}` is "
+"the one before, etc.), the name of the branch that was current when the "
+"entry was made, and a short description of the commit the entry was based on."
 msgstr ""
 
-#. type: Plain text
-#: en/git-web--browse.txt:39
-msgid "xdg-open"
+#. type: delimited block -
+#: en/git-stash.txt:104
+#, no-wrap
+msgid ""
+"stash@{0}: WIP on submit: 6ebd0e2... Update git-stash documentation\n"
+"stash@{1}: On master: 9cc0589... Add git-stash\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:41
-msgid "Custom commands may also be specified."
+#: en/git-stash.txt:108
+msgid ""
+"The command takes options applicable to the 'git log' command to control "
+"what is shown and how. See linkgit:git-log[1]."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-web--browse.txt:44
+#: en/git-stash.txt:109
 #, no-wrap
-msgid "-b <browser>"
+msgid "show [<stash>]"
+msgstr ""
+
+#. type: Plain text
+#: en/git-stash.txt:119
+msgid ""
+"Show the changes recorded in the stash entry as a diff between the stashed "
+"contents and the commit back when the stash entry was first created. When no "
+"`<stash>` is given, it shows the latest one.  By default, the command shows "
+"the diffstat, but it will accept any format known to 'git diff' (e.g., `git "
+"stash show -p stash@{1}` to view the second most recent entry in patch "
+"form).  You can use stash.showStat and/or stash.showPatch config variables "
+"to change the default behavior."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-web--browse.txt:45
+#: en/git-stash.txt:120
 #, no-wrap
-msgid "--browser=<browser>"
+msgid "pop [--index] [-q|--quiet] [<stash>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:48
-msgid "Use the specified browser. It must be in the list of supported browsers."
+#: en/git-stash.txt:126
+msgid ""
+"Remove a single stashed state from the stash list and apply it on top of the "
+"current working tree state, i.e., do the inverse operation of `git stash "
+"push`. The working directory must match the index."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-web--browse.txt:49
-#, no-wrap
-msgid "-t <browser>"
+#. type: Plain text
+#: en/git-stash.txt:130
+msgid ""
+"Applying the state can fail with conflicts; in this case, it is not removed "
+"from the stash list. You need to resolve the conflicts by hand and call `git "
+"stash drop` manually afterwards."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-web--browse.txt:50
-#, no-wrap
-msgid "--tool=<browser>"
+#. type: Plain text
+#: en/git-stash.txt:135
+msgid ""
+"If the `--index` option is used, then tries to reinstate not only the "
+"working tree's changes, but also the index's ones. However, this can fail, "
+"when you have conflicts (which are stored in the index, where you therefore "
+"can no longer apply the changes as they were originally)."
+msgstr ""
+
+#. type: Plain text
+#: en/git-stash.txt:138
+msgid ""
+"When no `<stash>` is given, `stash@{0}` is assumed, otherwise `<stash>` must "
+"be a reference of the form `stash@{<revision>}`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-web--browse.txt:53
+#: en/git-stash.txt:139
 #, no-wrap
-msgid "-c <conf.var>"
+msgid "apply [--index] [-q|--quiet] [<stash>]"
+msgstr ""
+
+#. type: Plain text
+#: en/git-stash.txt:144
+msgid ""
+"Like `pop`, but do not remove the state from the stash list. Unlike `pop`, "
+"`<stash>` may be any commit that looks like a commit created by `stash push` "
+"or `stash create`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-web--browse.txt:54
+#: en/git-stash.txt:145
 #, no-wrap
-msgid "--config=<conf.var>"
+msgid "branch <branchname> [<stash>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:57
+#: en/git-stash.txt:153
 msgid ""
-"CONF.VAR is looked up in the Git config files. If it's set, then its value "
-"specifies the browser that should be used."
+"Creates and checks out a new branch named `<branchname>` starting from the "
+"commit at which the `<stash>` was originally created, applies the changes "
+"recorded in `<stash>` to the new working tree and index.  If that succeeds, "
+"and `<stash>` is a reference of the form `stash@{<revision>}`, it then drops "
+"the `<stash>`. When no `<stash>` is given, applies the latest one."
 msgstr ""
 
-#. type: Title ~
-#: en/git-web--browse.txt:62
+#. type: Plain text
+#: en/git-stash.txt:159
+msgid ""
+"This is useful if the branch on which you ran `git stash push` has changed "
+"enough that `git stash apply` fails due to conflicts. Since the stash entry "
+"is applied on top of the commit that was HEAD at the time `git stash` was "
+"run, it restores the originally stashed state with no conflicts."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-stash.txt:160
 #, no-wrap
-msgid "CONF.VAR (from -c option) and web.browser"
+msgid "clear"
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:67
+#: en/git-stash.txt:164
 msgid ""
-"The web browser can be specified using a configuration variable passed with "
-"the -c (or --config) command-line option, or the `web.browser` configuration "
-"variable if the former is not used."
+"Remove all the stash entries. Note that those entries will then be subject "
+"to pruning, and may be impossible to recover (see 'Examples' below for a "
+"possible strategy)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-web--browse.txt:69 en/config.txt:1018
+#: en/git-stash.txt:165
 #, no-wrap
-msgid "browser.<tool>.path"
+msgid "drop [-q|--quiet] [<stash>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:76
+#: en/git-stash.txt:171
 msgid ""
-"You can explicitly provide a full path to your preferred browser by setting "
-"the configuration variable `browser.<tool>.path`. For example, you can "
-"configure the absolute path to firefox by setting "
-"'browser.firefox.path'. Otherwise, 'git web{litdd}browse' assumes the tool "
-"is available in PATH."
+"Remove a single stash entry from the list of stash entries.  When no "
+"`<stash>` is given, it removes the latest one.  i.e. `stash@{0}`, otherwise "
+"`<stash>` must be a valid stash log reference of the form `stash@{<revision>}"
+"`."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-web--browse.txt:78 en/config.txt:1013
+#: en/git-stash.txt:172 en/git-update-ref.txt:100
 #, no-wrap
-msgid "browser.<tool>.cmd"
+msgid "create"
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:86
+#: en/git-stash.txt:179
 msgid ""
-"When the browser, specified by options or configuration variables, is not "
-"among the supported ones, then the corresponding `browser.<tool>.cmd` "
-"configuration variable will be looked up. If this variable exists then 'git "
-"web{litdd}browse' will treat the specified tool as a custom command and will "
-"use a shell eval to run the command with the URLs passed as arguments."
+"Create a stash entry (which is a regular commit object) and return its "
+"object name, without storing it anywhere in the ref namespace.  This is "
+"intended to be useful for scripts.  It is probably not the command you want "
+"to use; see \"push\" above."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-stash.txt:180
+#, no-wrap
+msgid "store"
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:93
+#: en/git-stash.txt:186
 msgid ""
-"When 'konqueror' is specified by a command-line option or a configuration "
-"variable, we launch 'kfmclient' to try to open the HTML man page on an "
-"already opened konqueror in a new tab if possible."
+"Store a given stash created via 'git stash create' (which is a dangling "
+"merge commit) in the stash ref, updating the stash reflog.  This is intended "
+"to be useful for scripts.  It is probably not the command you want to use; "
+"see \"push\" above."
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:97
+#: en/git-stash.txt:195
 msgid ""
-"For consistency, we also try such a trick if 'browser.konqueror.path' is set "
-"to something like 'A_PATH_TO/konqueror'. That means we will try to launch "
-"'A_PATH_TO/kfmclient' instead."
+"A stash entry is represented as a commit whose tree records the state of the "
+"working directory, and its first parent is the commit at `HEAD` when the "
+"entry was created.  The tree of the second parent records the state of the "
+"index when the entry is made, and it is made a child of the `HEAD` commit.  "
+"The ancestry graph looks like this:"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-web--browse.txt:104
+#. type: Plain text
+#: en/git-stash.txt:199
 #, no-wrap
 msgid ""
-"\t[web]\n"
-"\t\tbrowser = konq\n"
+"            .----W\n"
+"           /    /\n"
+"     -----H----I\n"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-web--browse.txt:107
-#, no-wrap
+#. type: Plain text
+#: en/git-stash.txt:203
 msgid ""
-"\t[browser \"konq\"]\n"
-"\t\tcmd = A_PATH_TO/konqueror\n"
+"where `H` is the `HEAD` commit, `I` is a commit that records the state of "
+"the index, and `W` is a commit that records the state of the working tree."
 msgstr ""
 
-#. type: Title ~
-#: en/git-web--browse.txt:110
+#. type: Labeled list
+#: en/git-stash.txt:208
 #, no-wrap
-msgid "Note about git-config --global"
+msgid "Pulling into a dirty tree"
 msgstr ""
 
 #. type: Plain text
-#: en/git-web--browse.txt:114
+#: en/git-stash.txt:214
 msgid ""
-"Note that these configuration variables should probably be set using the "
-"`--global` flag, for example like this:"
+"When you are in the middle of something, you learn that there are upstream "
+"changes that are possibly relevant to what you are doing.  When your local "
+"changes do not conflict with the changes in the upstream, a simple `git "
+"pull` will let you move forward."
+msgstr ""
+
+#. type: Plain text
+#: en/git-stash.txt:219
+msgid ""
+"However, there are cases in which your local changes do conflict with the "
+"upstream changes, and `git pull` refuses to overwrite your changes.  In such "
+"a case, you can stash your changes away, perform a pull, and then unstash, "
+"like this:"
 msgstr ""
 
 #. type: delimited block -
-#: en/git-web--browse.txt:117
+#: en/git-stash.txt:227
 #, no-wrap
-msgid "$ git config --global web.browser firefox\n"
+msgid ""
+"$ git pull\n"
+" ...\n"
+"file foobar not up to date, cannot merge.\n"
+"$ git stash\n"
+"$ git pull\n"
+"$ git stash pop\n"
 msgstr ""
 
-#. type: Title =
-#: en/git-whatchanged.txt:2
+#. type: Plain text
+#: en/git-stash.txt:235
+msgid ""
+"When you are in the middle of something, your boss comes in and demands that "
+"you fix something immediately.  Traditionally, you would make a commit to a "
+"temporary branch to store your changes away, and return to your original "
+"branch to make the emergency fix, like this:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-stash.txt:246
 #, no-wrap
-msgid "git-whatchanged(1)"
+msgid ""
+"# ... hack hack hack ...\n"
+"$ git checkout -b my_wip\n"
+"$ git commit -a -m \"WIP\"\n"
+"$ git checkout master\n"
+"$ edit emergency fix\n"
+"$ git commit -a -m \"Fix in a hurry\"\n"
+"$ git checkout my_wip\n"
+"$ git reset --soft HEAD^\n"
+"# ... continue hacking ...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-whatchanged.txt:7
-msgid "git-whatchanged - Show logs with difference each commit introduces"
+#: en/git-stash.txt:249
+msgid "You can use 'git stash' to simplify the above, like this:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-whatchanged.txt:13
+#. type: delimited block -
+#: en/git-stash.txt:257
 #, no-wrap
-msgid "'git whatchanged' <option>...\n"
+msgid ""
+"# ... hack hack hack ...\n"
+"$ git stash\n"
+"$ edit emergency fix\n"
+"$ git commit -a -m \"Fix in a hurry\"\n"
+"$ git stash pop\n"
+"# ... continue hacking ...\n"
 msgstr ""
 
-#. type: Plain text
-#: en/git-whatchanged.txt:18
-msgid "Shows commit logs and diff output each commit introduces."
+#. type: Labeled list
+#: en/git-stash.txt:259
+#, no-wrap
+msgid "Testing partial commits"
 msgstr ""
 
 #. type: Plain text
-#: en/git-whatchanged.txt:22
+#: en/git-stash.txt:264
 msgid ""
-"New users are encouraged to use linkgit:git-log[1] instead.  The "
-"`whatchanged` command is essentially the same as linkgit:git-log[1] but "
-"defaults to show the raw format diff output and to skip merges."
+"You can use `git stash push --keep-index` when you want to make two or more "
+"commits out of the changes in the work tree, and you want to test each "
+"change before committing:"
 msgstr ""
 
-#. type: Plain text
-#: en/git-whatchanged.txt:26
+#. type: delimited block -
+#: en/git-stash.txt:275
+#, no-wrap
 msgid ""
-"The command is kept primarily for historical reasons; fingers of many people "
-"who learned Git long before `git log` was invented by reading Linux kernel "
-"mailing list are trained to type it."
+"# ... hack hack hack ...\n"
+"$ git add --patch foo            # add just first part to the index\n"
+"$ git stash push --keep-index    # save all other changes to the stash\n"
+"$ edit/build/test first part\n"
+"$ git commit -m 'First part'     # commit fully tested change\n"
+"$ git stash pop                  # prepare to work on all other changes\n"
+"# ... repeat above five steps until one commit remains ...\n"
+"$ edit/build/test remaining parts\n"
+"$ git commit foo -m 'Remaining parts'\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/git-whatchanged.txt:30
+#: en/git-stash.txt:277
 #, no-wrap
-msgid "`git whatchanged -p v2.6.12.. include/scsi drivers/scsi`"
+msgid "Recovering stash entries that were cleared/dropped erroneously"
 msgstr ""
 
 #. type: Plain text
-#: en/git-whatchanged.txt:34
+#: en/git-stash.txt:283
 msgid ""
-"Show as patches the commits since version 'v2.6.12' that changed any file in "
-"the include/scsi or drivers/scsi subdirectories"
+"If you mistakenly drop or clear stash entries, they cannot be recovered "
+"through the normal safety mechanisms.  However, you can try the following "
+"incantation to get a list of stash entries that are still in your "
+"repository, but not reachable any more:"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-whatchanged.txt:35
+#. type: delimited block -
+#: en/git-stash.txt:288
 #, no-wrap
-msgid "`git whatchanged --since=\"2 weeks ago\" -- gitk`"
+msgid ""
+"git fsck --unreachable |\n"
+"grep commit | cut -d\\  -f3 |\n"
+"xargs git log --merges --no-walk --grep=WIP\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-whatchanged.txt:40
+#: en/git-stash.txt:297
 msgid ""
-"Show the changes during the last two weeks to the file 'gitk'.  The \"--\" "
-"is necessary to avoid confusion with the *branch* named 'gitk'"
+"linkgit:git-checkout[1], linkgit:git-commit[1], linkgit:git-reflog[1], "
+"linkgit:git-reset[1]"
 msgstr ""
 
 #. type: Title =
-#: en/git-worktree.txt:2
+#: en/git-status.txt:2
 #, no-wrap
-msgid "git-worktree(1)"
+msgid "git-status(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:7
-msgid "git-worktree - Manage multiple working trees"
+#: en/git-status.txt:7
+msgid "git-status - Show the working tree status"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:17
+#: en/git-status.txt:13
 #, no-wrap
-msgid ""
-"'git worktree add' [-f] [--detach] [--checkout] [-b <new-branch>] <path> "
-"[<branch>]\n"
-"'git worktree list' [--porcelain]\n"
-"'git worktree lock' [--reason <string>] <worktree>\n"
-"'git worktree prune' [-n] [-v] [--expire <expire>]\n"
-"'git worktree unlock' <worktree>\n"
-msgstr ""
-
-#. type: Plain text
-#: en/git-worktree.txt:22
-msgid "Manage multiple working trees attached to the same repository."
+msgid "'git status' [<options>...] [--] [<pathspec>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:29
+#: en/git-status.txt:23
 msgid ""
-"A git repository can support multiple working trees, allowing you to check "
-"out more than one branch at a time.  With `git worktree add` a new working "
-"tree is associated with the repository.  This new working tree is called a "
-"\"linked working tree\" as opposed to the \"main working tree\" prepared by "
-"\"git init\" or \"git clone\".  A repository has one main working tree (if "
-"it's not a bare repository) and zero or more linked working trees."
+"Displays paths that have differences between the index file and the current "
+"HEAD commit, paths that have differences between the working tree and the "
+"index file, and paths in the working tree that are not tracked by Git (and "
+"are not ignored by linkgit:gitignore[5]). The first are what you _would_ "
+"commit by running `git commit`; the second and third are what you _could_ "
+"commit by running 'git add' before running `git commit`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:36
-msgid ""
-"When you are done with a linked working tree you can simply delete it.  The "
-"working tree's administrative files in the repository (see \"DETAILS\" "
-"below) will eventually be removed automatically (see "
-"`gc.worktreePruneExpire` in linkgit:git-config[1]), or you can run `git "
-"worktree prune` in the main or any linked working tree to clean up any stale "
-"administrative files."
+#: en/git-status.txt:30
+msgid "Give the output in the short-format."
 msgstr ""
 
-#. type: Plain text
-#: en/git-worktree.txt:40
-msgid ""
-"If you move a linked working tree, you need to manually update the "
-"administrative files so that they do not get pruned automatically. See "
-"section \"DETAILS\" for more information."
+#. type: Labeled list
+#: en/git-status.txt:35
+#, no-wrap
+msgid "--show-stash"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:45
-msgid ""
-"If a linked working tree is stored on a portable device or network share "
-"which is not always mounted, you can prevent its administrative files from "
-"being pruned by issuing the `git worktree lock` command, optionally "
-"specifying `--reason` to explain why the working tree is locked."
+#: en/git-status.txt:37
+msgid "Show the number of entries currently stashed away."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-worktree.txt:48
+#: en/git-status.txt:38
 #, no-wrap
-msgid "add <path> [<branch>]"
+msgid "--porcelain[=<version>]"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:54
+#: en/git-status.txt:43
 msgid ""
-"Create `<path>` and checkout `<branch>` into it. The new working directory "
-"is linked to the current repository, sharing everything except working "
-"directory specific files such as HEAD, index, etc. `-` may also be specified "
-"as `<branch>`; it is synonymous with `@{-1}`."
+"Give the output in an easy-to-parse format for scripts.  This is similar to "
+"the short output, but will remain stable across Git versions and regardless "
+"of user configuration. See below for details."
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:58
+#: en/git-status.txt:46
 msgid ""
-"If `<branch>` is omitted and neither `-b` nor `-B` nor `--detach` used, "
-"then, as a convenience, a new branch based at HEAD is created automatically, "
-"as if `-b $(basename <path>)` was specified."
+"The version parameter is used to specify the format version.  This is "
+"optional and defaults to the original version 'v1' format."
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:65
-msgid ""
-"List details of each worktree.  The main worktree is listed first, followed "
-"by each of the linked worktrees.  The output details include if the worktree "
-"is bare, the revision currently checked out, and the branch currently "
-"checked out (or 'detached HEAD' if none)."
+#: en/git-status.txt:49
+msgid "Give the output in the long-format. This is the default."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-worktree.txt:66
-#, no-wrap
-msgid "lock"
+#. type: Plain text
+#: en/git-status.txt:57
+msgid ""
+"In addition to the names of files that have been changed, also show the "
+"textual changes that are staged to be committed (i.e., like the output of "
+"`git diff --cached`). If `-v` is specified twice, then also show the changes "
+"in the working tree that have not yet been staged (i.e., like the output of "
+"`git diff`)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:73
+#: en/git-status.txt:65
 msgid ""
-"If a working tree is on a portable device or network share which is not "
-"always mounted, lock it to prevent its administrative files from being "
-"pruned automatically. This also prevents it from being moved or "
-"deleted. Optionally, specify a reason for the lock with `--reason`."
+"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`)."
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:77
-msgid "Prune working tree information in $GIT_DIR/worktrees."
+#: en/git-status.txt:69
+#, no-wrap
+msgid "'no'     - Show no untracked files.\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-worktree.txt:78
+#. type: Plain text
+#: en/git-status.txt:70
 #, no-wrap
-msgid "unlock"
+msgid "'normal' - Shows untracked files and directories.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:81
-msgid "Unlock a working tree, allowing it to be pruned, moved or deleted."
+#: en/git-status.txt:81
+msgid ""
+"When `-u` option is not used, untracked files and directories are shown (i."
+"e. the same as specifying `normal`), to help you avoid forgetting to add "
+"newly created files.  Because it takes extra work to find untracked files in "
+"the filesystem, this mode may take some time in a large working tree.  "
+"Consider enabling untracked cache and split index if supported (see `git "
+"update-index --untracked-cache` and `git update-index --split-index`), "
+"Otherwise you can use `no` to have `git status` return more quickly without "
+"showing untracked files."
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:90
+#: en/git-status.txt:99
 msgid ""
-"By default, `add` refuses to create a new working tree when `<branch>` is "
-"already checked out by another working tree. This option overrides that "
-"safeguard."
+"Ignore changes to submodules when looking for changes. <when> can be either "
+"\"none\", \"untracked\", \"dirty\" or \"all\", which is the default.  Using "
+"\"none\" will consider the submodule modified when it either contains "
+"untracked or modified files or its HEAD differs from the commit recorded in "
+"the superproject and can be used to override any settings of the 'ignore' "
+"option in linkgit:git-config[1] or linkgit:gitmodules[5]. When \"untracked\" "
+"is used submodules are not considered dirty when they only contain untracked "
+"content (but they are still scanned for modified content). Using \"dirty\" "
+"ignores all changes to the work tree of submodules, only changes to the "
+"commits stored in the superproject are shown (this was the behavior before "
+"1.7.0). Using \"all\" hides all changes to submodules (and suppresses the "
+"output of submodule summaries when the config option `status."
+"submoduleSummary` is set)."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-worktree.txt:91
+#: en/git-status.txt:100
 #, no-wrap
-msgid "-b <new-branch>"
+msgid "--ignored[=<mode>]"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-worktree.txt:92
-#, no-wrap
-msgid "-B <new-branch>"
+#. type: Plain text
+#: en/git-status.txt:102
+msgid "Show ignored files as well."
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:99
+#: en/git-status.txt:105
 msgid ""
-"With `add`, create a new branch named `<new-branch>` starting at `<branch>`, "
-"and check out `<new-branch>` into the new working tree.  If `<branch>` is "
-"omitted, it defaults to HEAD.  By default, `-b` refuses to create a new "
-"branch if it already exists. `-B` overrides this safeguard, resetting "
-"`<new-branch>` to `<branch>`."
+"The mode parameter is used to specify the handling of ignored files.  It is "
+"optional: it defaults to 'traditional'."
+msgstr ""
+
+#. type: Plain text
+#: en/git-status.txt:109
+msgid "'traditional' - Shows ignored files and directories, unless"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:103
+#: en/git-status.txt:112
+#, no-wrap
 msgid ""
-"With `add`, detach HEAD in the new working tree. See \"DETACHED HEAD\" in "
-"linkgit:git-checkout[1]."
+"--untracked-files=all is specified, in which case\n"
+"individual files in ignored directories are\n"
+"displayed.\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/git-worktree.txt:104
+#. type: Plain text
+#: en/git-status.txt:113
 #, no-wrap
-msgid "--[no-]checkout"
+msgid "'no'\t        - Show no ignored files.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:109
-msgid ""
-"By default, `add` checks out `<branch>`, however, `--no-checkout` can be "
-"used to suppress checkout in order to make customizations, such as "
-"configuring sparse-checkout. See \"Sparse checkout\" in "
-"linkgit:git-read-tree[1]."
+#: en/git-status.txt:114
+#, no-wrap
+msgid "'matching'    - Shows ignored files and directories matching an\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:114
-msgid "With `prune`, do not remove anything; just report what it would remove."
+#: en/git-status.txt:115
+#, no-wrap
+msgid "ignore pattern.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:119
+#: en/git-status.txt:121
 msgid ""
-"With `list`, output in an easy-to-parse format for scripts.  This format "
-"will remain stable across Git versions and regardless of user "
-"configuration.  See below for details."
+"When 'matching' mode is specified, paths that explicitly match an ignored "
+"pattern are shown. If a directory matches an ignore pattern, then it is "
+"shown, but not paths contained in the ignored directory. If a directory does "
+"not match an ignore pattern, but all contents are ignored, then the "
+"directory is not shown, but all contents are shown."
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:123
-msgid "With `prune`, report all removals."
+#: en/git-status.txt:125
+msgid ""
+"Terminate entries with NUL, instead of LF.  This implies the `--"
+"porcelain=v1` output format if no other format is given."
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:126
-msgid "With `prune`, only expire unused working trees older than <time>."
+#: en/git-status.txt:132
+msgid ""
+"Display untracked files in columns. See configuration variable column.status "
+"for option syntax.`--column` and `--no-column` without options are "
+"equivalent to 'always' and 'never' respectively."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-worktree.txt:127
+#: en/git-status.txt:133
 #, no-wrap
-msgid "--reason <string>"
+msgid "--ahead-behind"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-status.txt:134
+#, no-wrap
+msgid "--no-ahead-behind"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:129
-msgid "With `lock`, an explanation why the working tree is locked."
+#: en/git-status.txt:137
+msgid ""
+"Display or do not display detailed ahead/behind counts for the branch "
+"relative to its upstream branch.  Defaults to true."
 msgstr ""
 
 #. type: Labeled list
-#: en/git-worktree.txt:130
+#: en/git-status.txt:138
 #, no-wrap
-msgid "<worktree>"
+msgid "--renames"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:133
-msgid "Working trees can be identified by path, either relative or absolute."
+#: en/git-status.txt:142
+msgid ""
+"Turn on/off rename detection regardless of user configuration.  See also "
+"linkgit:git-diff[1] `--no-renames`."
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:138
+#: en/git-status.txt:147
 msgid ""
-"If the last path components in the working tree's path is unique among "
-"working trees, it can be used to identify worktrees. For example if you only "
-"have two working trees, at \"/abc/def/ghi\" and \"/abc/def/ggg\", then "
-"\"ghi\" or \"def/ghi\" is enough to point to the former working tree."
+"Turn on rename detection, optionally setting the similarity threshold.  See "
+"also linkgit:git-diff[1] `--find-renames`."
 msgstr ""
 
-#. type: Title -
-#: en/git-worktree.txt:140
-#, no-wrap
-msgid "DETAILS"
+#. type: Plain text
+#: en/git-status.txt:150
+msgid "See the 'pathspec' entry in linkgit:gitglossary[7]."
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:149
+#: en/git-status.txt:158
 msgid ""
-"Each linked working tree has a private sub-directory in the repository's "
-"$GIT_DIR/worktrees directory.  The private sub-directory's name is usually "
-"the base name of the linked working tree's path, possibly appended with a "
-"number to make it unique.  For example, when `$GIT_DIR=/path/main/.git` the "
-"command `git worktree add /path/other/test-next next` creates the linked "
-"working tree in `/path/other/test-next` and also creates a "
-"`$GIT_DIR/worktrees/test-next` directory (or `$GIT_DIR/worktrees/test-next1` "
-"if `test-next` is already taken)."
+"The output from this command is designed to be used as a commit template "
+"comment.  The default, long format, is designed to be human readable, "
+"verbose and descriptive.  Its contents and format are subject to change at "
+"any time."
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:155
+#: en/git-status.txt:163
 msgid ""
-"Within a linked working tree, $GIT_DIR is set to point to this private "
-"directory (e.g. `/path/main/.git/worktrees/test-next` in the example) and "
-"$GIT_COMMON_DIR is set to point back to the main working tree's $GIT_DIR "
-"(e.g. `/path/main/.git`). These settings are made in a `.git` file located "
-"at the top directory of the linked working tree."
+"The paths mentioned in the output, unlike many other Git commands, are made "
+"relative to the current directory if you are working in a subdirectory (this "
+"is on purpose, to help cutting and pasting). See the status.relativePaths "
+"config option below."
+msgstr ""
+
+#. type: Title ~
+#: en/git-status.txt:165
+#, no-wrap
+msgid "Short Format"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:164
+#: en/git-status.txt:169
 msgid ""
-"Path resolution via `git rev-parse --git-path` uses either $GIT_DIR or "
-"$GIT_COMMON_DIR depending on the path. For example, in the linked working "
-"tree `git rev-parse --git-path HEAD` returns "
-"`/path/main/.git/worktrees/test-next/HEAD` (not "
-"`/path/other/test-next/.git/HEAD` or `/path/main/.git/HEAD`) while `git "
-"rev-parse --git-path refs/heads/master` uses $GIT_COMMON_DIR and returns "
-"`/path/main/.git/refs/heads/master`, since refs are shared across all "
-"working trees."
+"In the short-format, the status of each path is shown as one of these forms"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:169
+#: en/git-status.txt:172
+#, no-wrap
 msgid ""
-"See linkgit:gitrepository-layout[5] for more information. The rule of thumb "
-"is do not make any assumption about whether a path belongs to $GIT_DIR or "
-"$GIT_COMMON_DIR when you need to directly access something inside "
-"$GIT_DIR. Use `git rev-parse --git-path` to get the final path."
+"\tXY PATH\n"
+"\tXY ORIG_PATH -> PATH\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:176
+#: en/git-status.txt:176
 msgid ""
-"If you move a linked working tree, you need to update the 'gitdir' file in "
-"the entry's directory. For example, if a linked working tree is moved to "
-"`/newpath/test-next` and its `.git` file points to "
-"`/path/main/.git/worktrees/test-next`, then update "
-"`/path/main/.git/worktrees/test-next/gitdir` to reference "
-"`/newpath/test-next` instead."
+"where `ORIG_PATH` is where the renamed/copied contents came from. "
+"`ORIG_PATH` is only shown when the entry is renamed or copied. The `XY` is a "
+"two-letter status code."
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:187
+#: en/git-status.txt:182
 msgid ""
-"To prevent a $GIT_DIR/worktrees entry from being pruned (which can be useful "
-"in some situations, such as when the entry's working tree is stored on a "
-"portable device), use the `git worktree lock` command, which adds a file "
-"named 'locked' to the entry's directory. The file contains the reason in "
-"plain text. For example, if a linked working tree's `.git` file points to "
-"`/path/main/.git/worktrees/test-next` then a file named "
-"`/path/main/.git/worktrees/test-next/locked` will prevent the `test-next` "
-"entry from being pruned.  See linkgit:gitrepository-layout[5] for details."
+"The fields (including the `->`) are separated from each other by a single "
+"space. If a filename contains whitespace or other nonprintable characters, "
+"that field will be quoted in the manner of a C string literal: surrounded by "
+"ASCII double quote (34) characters, and with interior special characters "
+"backslash-escaped."
 msgstr ""
 
-#. type: Title -
-#: en/git-worktree.txt:189
-#, no-wrap
-msgid "LIST OUTPUT FORMAT"
+#. type: Plain text
+#: en/git-status.txt:188
+msgid ""
+"For paths with merge conflicts, `X` and `Y` show the modification states of "
+"each side of the merge. For paths that do not have merge conflicts, `X` "
+"shows the status of the index, and `Y` shows the status of the work tree.  "
+"For untracked paths, `XY` are `??`.  Other status codes can be interpreted "
+"as follows:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:192
-msgid ""
-"The worktree list command has two output formats.  The default format shows "
-"the details on a single line with columns.  For example:"
+#: en/git-status.txt:190
+msgid "' ' = unmodified"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-worktree.txt:198
-#, no-wrap
-msgid ""
-"S git worktree list\n"
-"/path/to/bare-source            (bare)\n"
-"/path/to/linked-worktree        abcd1234 [master]\n"
-"/path/to/other-linked-worktree  1234abc  (detached HEAD)\n"
+#. type: Plain text
+#: en/git-status.txt:191
+msgid "'M' = modified"
 msgstr ""
 
-#. type: Title ~
-#: en/git-worktree.txt:201
-#, no-wrap
-msgid "Porcelain Format"
+#. type: Plain text
+#: en/git-status.txt:192
+msgid "'A' = added"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:207
-msgid ""
-"The porcelain format has a line per attribute.  Attributes are listed with a "
-"label and value separated by a single space.  Boolean attributes (like "
-"'bare' and 'detached') are listed as a label only, and are only present if "
-"and only if the value is true.  An empty line indicates the end of a "
-"worktree.  For example:"
+#: en/git-status.txt:193
+msgid "'D' = deleted"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-worktree.txt:212
-#, no-wrap
-msgid ""
-"S git worktree list --porcelain\n"
-"worktree /path/to/bare-source\n"
-"bare\n"
+#. type: Plain text
+#: en/git-status.txt:194
+msgid "'R' = renamed"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-worktree.txt:216
-#, no-wrap
-msgid ""
-"worktree /path/to/linked-worktree\n"
-"HEAD abcd1234abcd1234abcd1234abcd1234abcd1234\n"
-"branch refs/heads/master\n"
+#. type: Plain text
+#: en/git-status.txt:195
+msgid "'C' = copied"
 msgstr ""
 
-#. type: delimited block -
-#: en/git-worktree.txt:220
-#, no-wrap
-msgid ""
-"worktree /path/to/other-linked-worktree\n"
-"HEAD 1234abc1234abc1234abc1234abc1234abc1234a\n"
-"detached\n"
+#. type: Plain text
+#: en/git-status.txt:196
+msgid "'U' = updated but unmerged"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:233
+#: en/git-status.txt:199
 msgid ""
-"You are in the middle of a refactoring session and your boss comes in and "
-"demands that you fix something immediately. You might typically use "
-"linkgit:git-stash[1] to store your changes away temporarily, however, your "
-"working tree is in such a state of disarray (with new, moved, and removed "
-"files, and other bits and pieces strewn around) that you don't want to risk "
-"disturbing any of it. Instead, you create a temporary linked working tree to "
-"make the emergency fix, remove it when done, and then resume your earlier "
-"refactoring session."
+"Ignored files are not listed, unless `--ignored` option is in effect, in "
+"which case `XY` are `!!`."
 msgstr ""
 
-#. type: delimited block -
-#: en/git-worktree.txt:242
+#. type: delimited block .
+#: en/git-status.txt:226
 #, no-wrap
 msgid ""
-"$ git worktree add -b emergency-fix ../temp master\n"
-"$ pushd ../temp\n"
-"# ... hack hack hack ...\n"
-"$ git commit -a -m 'emergency fix for boss'\n"
-"$ popd\n"
-"$ rm -rf ../temp\n"
-"$ git worktree prune\n"
+"X          Y     Meaning\n"
+"-------------------------------------------------\n"
+"\t [AMD]   not updated\n"
+"M        [ MD]   updated in index\n"
+"A        [ MD]   added to index\n"
+"D                deleted from index\n"
+"R        [ MD]   renamed in index\n"
+"C        [ MD]   copied in index\n"
+"[MARC]           index and work tree matches\n"
+"[ MARC]     M    work tree changed since index\n"
+"[ MARC]     D    deleted in work tree\n"
+"[ D]        R    renamed in work tree\n"
+"[ D]        C    copied in work tree\n"
+"-------------------------------------------------\n"
+"D           D    unmerged, both deleted\n"
+"A           U    unmerged, added by us\n"
+"U           D    unmerged, deleted by them\n"
+"U           A    unmerged, added by them\n"
+"D           U    unmerged, deleted by us\n"
+"A           A    unmerged, both added\n"
+"U           U    unmerged, both modified\n"
+"-------------------------------------------------\n"
+"?           ?    untracked\n"
+"!           !    ignored\n"
+"-------------------------------------------------\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:249
+#: en/git-status.txt:235
+#, no-wrap
 msgid ""
-"Multiple checkout in general is still experimental, and the support for "
-"submodules is incomplete. It is NOT recommended to make multiple checkouts "
-"of a superproject."
+"Submodules have more state and instead report\n"
+"\t\tM    the submodule has a different HEAD than\n"
+"\t\t     recorded in the index\n"
+"\t\tm    the submodule has modified content\n"
+"\t\t?    the submodule has untracked files\n"
+"since modified content or untracked files in a submodule cannot be added\n"
+"via `git add` in the superproject to prepare a commit.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:252
+#: en/git-status.txt:238
 msgid ""
-"git-worktree could provide more automation for tasks currently performed "
-"manually, such as:"
+"'m' and '?' are applied recursively. For example if a nested submodule in a "
+"submodule contains an untracked file, this is reported as '?' as well."
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:255
-msgid ""
-"`remove` to remove a linked working tree and its administrative files (and "
-"warn if the working tree is dirty)"
+#: en/git-status.txt:240
+msgid "If -b is used the short-format status is preceded by a line"
 msgstr ""
 
 #. type: Plain text
-#: en/git-worktree.txt:256
-msgid "`mv` to move or rename a working tree and update its administrative files"
+#: en/git-status.txt:242
+#, no-wrap
+msgid "    ## branchname tracking info\n"
 msgstr ""
 
-#. type: Title =
-#: en/git-write-tree.txt:2
+#. type: Title ~
+#: en/git-status.txt:244
 #, no-wrap
-msgid "git-write-tree(1)"
+msgid "Porcelain Format Version 1"
 msgstr ""
 
 #. type: Plain text
-#: en/git-write-tree.txt:7
-msgid "git-write-tree - Create a tree object from the current index"
+#: en/git-status.txt:251
+msgid ""
+"Version 1 porcelain format is similar to the short format, but is guaranteed "
+"not to change in a backwards-incompatible way between Git versions or based "
+"on user configuration. This makes it ideal for parsing by scripts.  The "
+"description of the short format above also describes the porcelain format, "
+"with a few exceptions:"
 msgstr ""
 
 #. type: Plain text
-#: en/git-write-tree.txt:13
-#, no-wrap
-msgid "'git write-tree' [--missing-ok] [--prefix=<prefix>/]\n"
+#: en/git-status.txt:254
+msgid ""
+"The user's color.status configuration is not respected; color will always be "
+"off."
 msgstr ""
 
 #. type: Plain text
-#: en/git-write-tree.txt:18
+#: en/git-status.txt:257
 msgid ""
-"Creates a tree object using the current index. The name of the new tree "
-"object is printed to standard output."
+"The user's status.relativePaths configuration is not respected; paths shown "
+"will always be relative to the repository root."
 msgstr ""
 
 #. type: Plain text
-#: en/git-write-tree.txt:20
-msgid "The index must be in a fully merged state."
+#: en/git-status.txt:267
+msgid ""
+"There is also an alternate -z format recommended for machine parsing. In "
+"that format, the status field is the same, but some other things change.  "
+"First, the '\\->' is omitted from rename entries and the field order is "
+"reversed (e.g 'from \\-> to' becomes 'to from'). Second, a NUL (ASCII 0) "
+"follows each filename, replacing space as a field separator and the "
+"terminating newline (but a space still separates the status field from the "
+"first filename).  Third, filenames containing special characters are not "
+"specially formatted; no quoting or backslash-escaping is performed."
 msgstr ""
 
 #. type: Plain text
-#: en/git-write-tree.txt:26
+#: en/git-status.txt:269
 msgid ""
-"Conceptually, 'git write-tree' sync()s the current index contents into a set "
-"of tree files.  In order to have that match what is actually in your "
-"directory right now, you need to have done a 'git update-index' phase before "
-"you did the 'git write-tree'."
+"Any submodule changes are reported as modified `M` instead of `m` or single "
+"`?`."
 msgstr ""
 
-#. type: Labeled list
-#: en/git-write-tree.txt:30
+#. type: Title ~
+#: en/git-status.txt:271
 #, no-wrap
-msgid "--missing-ok"
+msgid "Porcelain Format Version 2"
 msgstr ""
 
 #. type: Plain text
-#: en/git-write-tree.txt:34
+#: en/git-status.txt:276
 msgid ""
-"Normally 'git write-tree' ensures that the objects referenced by the "
-"directory exist in the object database.  This option disables this check."
+"Version 2 format adds more detailed information about the state of the "
+"worktree and changed items.  Version 2 also defines an extensible set of "
+"easy to parse optional headers."
 msgstr ""
 
 #. type: Plain text
-#: en/git-write-tree.txt:39
+#: en/git-status.txt:280
 msgid ""
-"Writes a tree object that represents a subdirectory `<prefix>`.  This can be "
-"used to write the tree object for a subproject that is in the named "
-"subdirectory."
+"Header lines start with \"#\" and are added in response to specific command "
+"line arguments.  Parsers should ignore headers they don't recognize."
 msgstr ""
 
 #. type: Plain text
-#: en/blame-options.txt:4
-msgid ""
-"Show blank SHA-1 for boundary commits.  This can also be controlled via the "
-"`blame.blankboundary` config option."
+#: en/git-status.txt:282
+msgid "### Branch Headers"
 msgstr ""
 
 #. type: Plain text
-#: en/blame-options.txt:8
+#: en/git-status.txt:285
 msgid ""
-"Do not treat root commits as boundaries.  This can also be controlled via "
-"the `blame.showRoot` config option."
-msgstr ""
-
-#. type: Labeled list
-#: en/blame-options.txt:9
-#, no-wrap
-msgid "--show-stats"
-msgstr ""
-
-#. type: Plain text
-#: en/blame-options.txt:11
-msgid "Include additional statistics at the end of blame output."
-msgstr ""
-
-#. type: Labeled list
-#: en/blame-options.txt:12
-#, no-wrap
-msgid "-L <start>,<end>"
+"If `--branch` is given, a series of header lines are printed with "
+"information about the current branch."
 msgstr ""
 
-#. type: Labeled list
-#: en/blame-options.txt:13
+#. type: delimited block .
+#: en/git-status.txt:295
 #, no-wrap
-msgid "-L :<funcname>"
+msgid ""
+"Line                                     Notes\n"
+"------------------------------------------------------------\n"
+"# branch.oid <commit> | (initial)        Current commit.\n"
+"# branch.head <branch> | (detached)      Current branch.\n"
+"# branch.upstream <upstream_branch>      If upstream is set.\n"
+"# branch.ab +<ahead> -<behind>           If upstream is set and\n"
+"\t\t\t\t\t the commit is present.\n"
+"------------------------------------------------------------\n"
 msgstr ""
 
 #. type: Plain text
-#: en/blame-options.txt:16
-msgid ""
-"Annotate only the given line range. May be specified multiple times.  "
-"Overlapping ranges are allowed."
+#: en/git-status.txt:298
+msgid "### Changed Tracked Entries"
 msgstr ""
 
 #. type: Plain text
-#: en/blame-options.txt:19
+#: en/git-status.txt:304
 msgid ""
-"<start> and <end> are optional. ``-L <start>'' or ``-L <start>,'' spans from "
-"<start> to end of file. ``-L ,<end>'' spans from start of file to <end>."
+"Following the headers, a series of lines are printed for tracked entries.  "
+"One of three different line formats may be used to describe an entry "
+"depending on the type of change.  Tracked entries are printed in an "
+"undefined order; parsers should allow for a mixture of the 3 line types in "
+"any order."
 msgstr ""
 
 #. type: Plain text
-#: en/blame-options.txt:24
-msgid "Show long rev (Default: off)."
+#: en/git-status.txt:306
+msgid "Ordinary changed entries have the following format:"
 msgstr ""
 
 #. type: Plain text
-#: en/blame-options.txt:27
-msgid "Show raw timestamp (Default: off)."
-msgstr ""
-
-#. type: Labeled list
-#: en/blame-options.txt:28
+#: en/git-status.txt:308
 #, no-wrap
-msgid "-S <revs-file>"
+msgid "    1 <XY> <sub> <mH> <mI> <mW> <hH> <hI> <path>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/blame-options.txt:30
-msgid "Use revisions from revs-file instead of calling linkgit:git-rev-list[1]."
+#: en/git-status.txt:310
+msgid "Renamed or copied entries have the following format:"
 msgstr ""
 
-#. type: Labeled list
-#: en/blame-options.txt:31
+#. type: Plain text
+#: en/git-status.txt:312
 #, no-wrap
-msgid "--reverse <rev>..<rev>"
+msgid "    2 <XY> <sub> <mH> <mI> <mW> <hH> <hI> <X><score> <path><sep><origPath>\n"
 msgstr ""
 
-#. type: Plain text
-#: en/blame-options.txt:38
+#. type: delimited block .
+#: en/git-status.txt:343
+#, no-wrap
+msgid ""
+"Field       Meaning\n"
+"--------------------------------------------------------\n"
+"<XY>        A 2 character field containing the staged and\n"
+"\t    unstaged XY values described in the short format,\n"
+"\t    with unchanged indicated by a \".\" rather than\n"
+"\t    a space.\n"
+"<sub>       A 4 character field describing the submodule state.\n"
+"\t    \"N...\" when the entry is not a submodule.\n"
+"\t    \"S<c><m><u>\" when the entry is a submodule.\n"
+"\t    <c> is \"C\" if the commit changed; otherwise \".\".\n"
+"\t    <m> is \"M\" if it has tracked changes; otherwise \".\".\n"
+"\t    <u> is \"U\" if there are untracked changes; otherwise \".\".\n"
+"<mH>        The octal file mode in HEAD.\n"
+"<mI>        The octal file mode in the index.\n"
+"<mW>        The octal file mode in the worktree.\n"
+"<hH>        The object name in HEAD.\n"
+"<hI>        The object name in the index.\n"
+"<X><score>  The rename or copy score (denoting the percentage\n"
+"\t    of similarity between the source and target of the\n"
+"\t    move or copy). For example \"R100\" or \"C75\".\n"
+"<path>      The pathname.  In a renamed/copied entry, this\n"
+"\t    is the target path.\n"
+"<sep>       When the `-z` option is used, the 2 pathnames are separated\n"
+"\t    with a NUL (ASCII 0x00) byte; otherwise, a tab (ASCII 0x09)\n"
+"\t    byte separates them.\n"
+"<origPath>  The pathname in the commit at HEAD or in the index.\n"
+"\t    This is only present in a renamed/copied entry, and\n"
+"\t    tells where the renamed/copied contents came from.\n"
+"--------------------------------------------------------\n"
+msgstr ""
+
+#. type: Plain text
+#: en/git-status.txt:347
 msgid ""
-"Walk history forward instead of backward. Instead of showing the revision in "
-"which a line appeared, this shows the last revision in which a line has "
-"existed. This requires a range of revision like START..END where the path to "
-"blame exists in START.  `git blame --reverse START` is taken as `git blame "
-"--reverse START..HEAD` for convenience."
+"Unmerged entries have the following format; the first character is a \"u\" "
+"to distinguish from ordinary changed entries."
 msgstr ""
 
 #. type: Plain text
-#: en/blame-options.txt:42
-msgid "Show in a format designed for machine consumption."
-msgstr ""
-
-#. type: Labeled list
-#: en/blame-options.txt:43
+#: en/git-status.txt:349
 #, no-wrap
-msgid "--line-porcelain"
+msgid "    u <xy> <sub> <m1> <m2> <m3> <mW> <h1> <h2> <h3> <path>\n"
 msgstr ""
 
-#. type: Plain text
-#: en/blame-options.txt:47
+#. type: delimited block .
+#: en/git-status.txt:366
+#, no-wrap
 msgid ""
-"Show the porcelain format, but output commit information for each line, not "
-"just the first time a commit is referenced.  Implies --porcelain."
+"Field       Meaning\n"
+"--------------------------------------------------------\n"
+"<XY>        A 2 character field describing the conflict type\n"
+"\t    as described in the short format.\n"
+"<sub>       A 4 character field describing the submodule state\n"
+"\t    as described above.\n"
+"<m1>        The octal file mode in stage 1.\n"
+"<m2>        The octal file mode in stage 2.\n"
+"<m3>        The octal file mode in stage 3.\n"
+"<mW>        The octal file mode in the worktree.\n"
+"<h1>        The object name in stage 1.\n"
+"<h2>        The object name in stage 2.\n"
+"<h3>        The object name in stage 3.\n"
+"<path>      The pathname.\n"
+"--------------------------------------------------------\n"
 msgstr ""
 
 #. type: Plain text
-#: en/blame-options.txt:51
-msgid "Show the result incrementally in a format designed for machine consumption."
+#: en/git-status.txt:369
+msgid "### Other Items"
 msgstr ""
 
 #. type: Plain text
-#: en/blame-options.txt:58
+#: en/git-status.txt:373
 msgid ""
-"Specifies the encoding used to output author names and commit "
-"summaries. Setting it to `none` makes blame output unconverted data. For "
-"more information see the discussion about encoding in the linkgit:git-log[1] "
-"manual page."
-msgstr ""
-
-#. type: Labeled list
-#: en/blame-options.txt:59
-#, no-wrap
-msgid "--contents <file>"
+"Following the tracked entries (and if requested), a series of lines will be "
+"printed for untracked and then ignored items found in the worktree."
 msgstr ""
 
 #. type: Plain text
-#: en/blame-options.txt:65
-msgid ""
-"When <rev> is not specified, the command annotates the changes starting "
-"backwards from the working tree copy.  This flag makes the command pretend "
-"as if the working tree copy has the contents of the named file (specify `-` "
-"to make the command read from the standard input)."
+#: en/git-status.txt:375
+msgid "Untracked items have the following format:"
 msgstr ""
 
-#. type: Labeled list
-#: en/blame-options.txt:66
+#. type: Plain text
+#: en/git-status.txt:377
 #, no-wrap
-msgid "--date <format>"
+msgid "    ? <path>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/blame-options.txt:72
-msgid ""
-"Specifies the format used to output dates. If --date is not provided, the "
-"value of the blame.date config variable is used. If the blame.date config "
-"variable is also not set, the iso format is used. For supported values, see "
-"the discussion of the --date option at linkgit:git-log[1]."
+#: en/git-status.txt:379
+msgid "Ignored items have the following format:"
 msgstr ""
 
 #. type: Plain text
-#: en/blame-options.txt:79
-msgid ""
-"Progress status is reported on the standard error stream by default when it "
-"is attached to a terminal. This flag enables progress reporting even if not "
-"attached to a terminal. Can't use `--progress` together with `--porcelain` "
-"or `--incremental`."
-msgstr ""
-
-#. type: Labeled list
-#: en/blame-options.txt:80
+#: en/git-status.txt:381
 #, no-wrap
-msgid "-M[<num>]"
+msgid "    ! <path>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/blame-options.txt:90
-msgid ""
-"Detect moved or copied lines within a file. When a commit moves or copies a "
-"block of lines (e.g. the original file has A and then B, and the commit "
-"changes it to B and then A), the traditional 'blame' algorithm notices only "
-"half of the movement and typically blames the lines that were moved up "
-"(i.e. B) to the parent and assigns blame to the lines that were moved down "
-"(i.e. A) to the child commit.  With this option, both groups of lines are "
-"blamed on the parent by running extra passes of inspection."
+#: en/git-status.txt:383
+msgid "### Pathname Format Notes and -z"
 msgstr ""
 
 #. type: Plain text
-#: en/blame-options.txt:95
+#: en/git-status.txt:387
 msgid ""
-"<num> is optional but it is the lower bound on the number of alphanumeric "
-"characters that Git must detect as moving/copying within a file for it to "
-"associate those lines with the parent commit. The default value is 20."
+"When the `-z` option is given, pathnames are printed as is and without any "
+"quoting and lines are terminated with a NUL (ASCII 0x00)  byte."
 msgstr ""
 
-#. type: Labeled list
-#: en/blame-options.txt:96
-#, no-wrap
-msgid "-C[<num>]"
+#. type: Plain text
+#: en/git-status.txt:391
+msgid ""
+"Without the `-z` option, pathnames with \"unusual\" characters are quoted as "
+"explained for the configuration variable `core.quotePath` (see linkgit:git-"
+"config[1])."
 msgstr ""
 
 #. type: Plain text
-#: en/blame-options.txt:105
+#: en/git-status.txt:400
 msgid ""
-"In addition to `-M`, detect lines moved or copied from other files that were "
-"modified in the same commit.  This is useful when you reorganize your "
-"program and move code around across files.  When this option is given twice, "
-"the command additionally looks for copies from other files in the commit "
-"that creates the file. When this option is given three times, the command "
-"additionally looks for copies from other files in any commit."
+"The command honors `color.status` (or `status.color` -- they mean the same "
+"thing and the latter is kept for backward compatibility) and `color.status."
+"<slot>` configuration variables to colorize its output."
 msgstr ""
 
 #. type: Plain text
-#: en/blame-options.txt:112
+#: en/git-status.txt:404
 msgid ""
-"<num> is optional but it is the lower bound on the number of alphanumeric "
-"characters that Git must detect as moving/copying between files for it to "
-"associate those lines with the parent commit. And the default value is "
-"40. If there are more than one `-C` options given, the <num> argument of the "
-"last `-C` will take effect."
+"If the config variable `status.relativePaths` is set to false, then all "
+"paths shown are relative to the repository root, not to the current "
+"directory."
 msgstr ""
 
 #. type: Plain text
-#: en/blame-options.txt:114
-msgid "Show help message."
+#: en/git-status.txt:415
+msgid ""
+"If `status.submoduleSummary` is set to a non zero number or true (identical "
+"to -1 or an unlimited number), the submodule summary will be enabled for the "
+"long format and a summary of commits for modified submodules will be shown "
+"(see --summary-limit option of linkgit:git-submodule[1]). Please note that "
+"the summary output from the status command will be suppressed for all "
+"submodules when `diff.ignoreSubmodules` is set to 'all' or only for those "
+"submodules where `submodule.<name>.ignore=all`. To also view the summary for "
+"ignored submodules you can either use the --ignore-submodules=dirty command "
+"line option or the 'git submodule summary' command, which shows a similar "
+"output but does not honor these settings."
 msgstr ""
 
 #. type: Title -
-#: en/config.txt:2
+#: en/git-status.txt:417
 #, no-wrap
-msgid "CONFIGURATION FILE"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:10
-msgid ""
-"The Git configuration file contains a number of variables that affect the "
-"Git commands' behavior. The `.git/config` file in each repository is used to "
-"store the configuration for that repository, and `$HOME/.gitconfig` is used "
-"to store a per-user configuration as fallback values for the `.git/config` "
-"file. The file `/etc/gitconfig` can be used to store a system-wide default "
-"configuration."
+msgid "BACKGROUND REFRESH"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:19
+#: en/git-status.txt:428
 msgid ""
-"The configuration variables are used by both the Git plumbing and the "
-"porcelains. The variables are divided into sections, wherein the fully "
-"qualified variable name of the variable itself is the last dot-separated "
-"segment and the section name is everything before the last dot. The variable "
-"names are case-insensitive, allow only alphanumeric characters and `-`, and "
-"must start with an alphabetic character.  Some variables may appear multiple "
-"times; we say then that the variable is multivalued."
+"By default, `git status` will automatically refresh the index, updating the "
+"cached stat information from the working tree and writing out the result. "
+"Writing out the updated index is an optimization that isn't strictly "
+"necessary (`status` computes the values for itself, but writing them out is "
+"just to save subsequent programs from repeating our computation). When "
+"`status` is run in the background, the lock held during the write may "
+"conflict with other simultaneous processes, causing them to fail. Scripts "
+"running `status` in the background should consider using `git --no-optional-"
+"locks status` (see linkgit:git[1] for details)."
 msgstr ""
 
-#. type: Title ~
-#: en/config.txt:21
+#. type: Title =
+#: en/git-stripspace.txt:2
 #, no-wrap
-msgid "Syntax"
+msgid "git-stripspace(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:26
-msgid ""
-"The syntax is fairly flexible and permissive; whitespaces are mostly "
-"ignored.  The '#' and ';' characters begin comments to the end of line, "
-"blank lines are ignored."
+#: en/git-stripspace.txt:7
+msgid "git-stripspace - Remove unnecessary whitespace"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:33
+#: en/git-stripspace.txt:14
+#, no-wrap
 msgid ""
-"The file consists of sections and variables.  A section begins with the name "
-"of the section in square brackets and continues until the next section "
-"begins.  Section names are case-insensitive.  Only alphanumeric characters, "
-"`-` and `.` are allowed in section names.  Each variable must belong to some "
-"section, which means that there must be a section header before the first "
-"setting of a variable."
+"'git stripspace' [-s | --strip-comments]\n"
+"'git stripspace' [-c | --comment-lines]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:37
+#: en/git-stripspace.txt:21
 msgid ""
-"Sections can be further divided into subsections.  To begin a subsection put "
-"its name in double quotes, separated by space from the section name, in the "
-"section header, like in the example below:"
+"Read text, such as commit messages, notes, tags and branch descriptions, "
+"from the standard input and clean it in the manner used by Git."
 msgstr ""
 
-#. type: delimited block -
-#: en/config.txt:40
-#, no-wrap
-msgid "\t[section \"subsection\"]\n"
+#. type: Plain text
+#: en/git-stripspace.txt:23
+msgid "With no arguments, this will:"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:49
-msgid ""
-"Subsection names are case sensitive and can contain any characters except "
-"newline (doublequote `\"` and backslash can be included by escaping them as "
-"`\\\"` and `\\\\`, respectively).  Section headers cannot span multiple "
-"lines.  Variables may belong directly to a section or to a given "
-"subsection.  You can have `[section]` if you have `[section "
-"\"subsection\"]`, but you don't need to."
+#: en/git-stripspace.txt:25
+msgid "remove trailing whitespace from all lines"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:54
-msgid ""
-"There is also a deprecated `[section.subsection]` syntax. With this syntax, "
-"the subsection name is converted to lower-case and is also compared case "
-"sensitively. These subsection names follow the same restrictions as section "
-"names."
+#: en/git-stripspace.txt:26
+msgid "collapse multiple consecutive empty lines into one empty line"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:61
-msgid ""
-"All the other lines (and the remainder of the line after the section header) "
-"are recognized as setting variables, in the form 'name = value' (or just "
-"'name', which is a short-hand to say that the variable is the boolean "
-"\"true\").  The variable names are case-insensitive, allow only alphanumeric "
-"characters and `-`, and must start with an alphabetic character."
+#: en/git-stripspace.txt:27
+msgid "remove empty lines from the beginning and end of the input"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:69
-msgid ""
-"A line that defines a value can be continued to the next line by ending it "
-"with a `\\`; the backquote and the end-of-line are stripped.  Leading "
-"whitespaces after 'name =', the remainder of the line after the first "
-"comment character '#' or ';', and trailing whitespaces of the line are "
-"discarded unless they are enclosed in double quotes.  Internal whitespaces "
-"within the value are retained verbatim."
+#: en/git-stripspace.txt:28
+msgid "add a missing '\\n' to the last line if necessary."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:72
+#: en/git-stripspace.txt:31
 msgid ""
-"Inside double quotes, double quote `\"` and backslash `\\` characters must "
-"be escaped: use `\\\"` for `\"` and `\\\\` for `\\`."
+"In the case where the input consists entirely of whitespace characters, no "
+"output will be produced."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:77
+#: en/git-stripspace.txt:35
+#, no-wrap
 msgid ""
-"The following escape sequences (beside `\\\"` and `\\\\`) are recognized: "
-"`\\n` for newline character (NL), `\\t` for horizontal tabulation (HT, TAB)  "
-"and `\\b` for backspace (BS).  Other char escape sequences (including octal "
-"escape sequences) are invalid."
+"*NOTE*: This is intended for cleaning metadata, prefer the `--whitespace=fix`\n"
+"mode of linkgit:git-apply[1] for correcting whitespace of patches or files in\n"
+"the repository.\n"
 msgstr ""
 
-#. type: Title ~
-#: en/config.txt:80
+#. type: Labeled list
+#: en/git-stripspace.txt:39
 #, no-wrap
-msgid "Includes"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:86
-msgid ""
-"You can include a config file from another by setting the special "
-"`include.path` variable to the name of the file to be included. The variable "
-"takes a pathname as its value, and is subject to tilde "
-"expansion. `include.path` can be given multiple times."
+msgid "--strip-comments"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:92
+#: en/git-stripspace.txt:41
 msgid ""
-"The included file is expanded immediately, as if its contents had been found "
-"at the location of the include directive. If the value of the `include.path` "
-"variable is a relative path, the path is considered to be relative to the "
-"configuration file in which the include directive was found.  See below for "
-"examples."
+"Skip and remove all lines starting with comment character (default '#')."
 msgstr ""
 
-#. type: Title ~
-#: en/config.txt:94
+#. type: Labeled list
+#: en/git-stripspace.txt:43
 #, no-wrap
-msgid "Conditional includes"
+msgid "--comment-lines"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:100
+#: en/git-stripspace.txt:47
 msgid ""
-"You can include a config file from another conditionally by setting a "
-"`includeIf.<condition>.path` variable to the name of the file to be "
-"included. The variable's value is treated the same way as "
-"`include.path`. `includeIf.<condition>.path` can be given multiple times."
+"Prepend comment character and blank to each line. Lines will automatically "
+"be terminated with a newline. On empty lines, only the comment character "
+"will be prepended."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:104
-msgid ""
-"The condition starts with a keyword followed by a colon and some data whose "
-"format and meaning depends on the keyword. Supported keywords are:"
+#: en/git-stripspace.txt:52
+msgid "Given the following noisy input with '$' indicating the end of a line:"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:105
+#. type: delimited block -
+#: en/git-stripspace.txt:65
 #, no-wrap
-msgid "`gitdir`"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:110
 msgid ""
-"The data that follows the keyword `gitdir:` is used as a glob pattern. If "
-"the location of the .git directory matches the pattern, the include "
-"condition is met."
+"|A brief introduction   $\n"
+"|   $\n"
+"|$\n"
+"|A new paragraph$\n"
+"|# with a commented-out line    $\n"
+"|explaining lots of stuff.$\n"
+"|$\n"
+"|# An old paragraph, also commented-out. $\n"
+"|      $\n"
+"|The end.$\n"
+"|  $\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:115
-msgid ""
-"The .git location may be auto-discovered, or come from `$GIT_DIR` "
-"environment variable. If the repository is auto discovered via a .git file "
-"(e.g. from submodules, or a linked worktree), the .git location would be the "
-"final location where the .git directory is, not where the"
+#: en/git-stripspace.txt:68
+msgid "Use 'git stripspace' with no arguments to obtain:"
 msgstr ""
 
-#. type: Block title
-#: en/config.txt:115
+#. type: delimited block -
+#: en/git-stripspace.txt:79
 #, no-wrap
-msgid "git file is."
+msgid ""
+"|A brief introduction$\n"
+"|$\n"
+"|A new paragraph$\n"
+"|# with a commented-out line$\n"
+"|explaining lots of stuff.$\n"
+"|$\n"
+"|# An old paragraph, also commented-out.$\n"
+"|$\n"
+"|The end.$\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:120
-msgid ""
-"The pattern can contain standard globbing wildcards and two additional ones, "
-"`**/` and `/**`, that can match multiple path components. Please refer to "
-"linkgit:gitignore[5] for details. For convenience:"
+#: en/git-stripspace.txt:82
+msgid "Use 'git stripspace --strip-comments' to obtain:"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:123
+#. type: delimited block -
+#: en/git-stripspace.txt:90
+#, no-wrap
 msgid ""
-"If the pattern starts with `~/`, `~` will be substituted with the content of "
-"the environment variable `HOME`."
+"|A brief introduction$\n"
+"|$\n"
+"|A new paragraph$\n"
+"|explaining lots of stuff.$\n"
+"|$\n"
+"|The end.$\n"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:126
-msgid ""
-"If the pattern starts with `./`, it is replaced with the directory "
-"containing the current config file."
+#. type: Title =
+#: en/git-submodule.txt:2
+#, no-wrap
+msgid "git-submodule(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:130
-msgid ""
-"If the pattern does not start with either `~/`, `./` or `/`, `**/` will be "
-"automatically prepended. For example, the pattern `foo/bar` becomes "
-"`**/foo/bar` and would match `/any/path/to/foo/bar`."
+#: en/git-submodule.txt:7
+msgid "git-submodule - Initialize, update or inspect submodules"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:134
+#: en/git-submodule.txt:21
+#, no-wrap
 msgid ""
-"If the pattern ends with `/`, `**` will be automatically added. For example, "
-"the pattern `foo/` becomes `foo/**`. In other words, it matches \"foo\" and "
-"everything inside, recursively."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:135
-#, no-wrap
-msgid "`gitdir/i`"
+"'git submodule' [--quiet] add [<options>] [--] <repository> [<path>]\n"
+"'git submodule' [--quiet] status [--cached] [--recursive] [--] [<path>...]\n"
+"'git submodule' [--quiet] init [--] [<path>...]\n"
+"'git submodule' [--quiet] deinit [-f|--force] (--all|[--] <path>...)\n"
+"'git submodule' [--quiet] update [<options>] [--] [<path>...]\n"
+"'git submodule' [--quiet] summary [<options>] [--] [<path>...]\n"
+"'git submodule' [--quiet] foreach [--recursive] <command>\n"
+"'git submodule' [--quiet] sync [--recursive] [--] [<path>...]\n"
+"'git submodule' [--quiet] absorbgitdirs [--] [<path>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:138
-msgid ""
-"This is the same as `gitdir` except that matching is done case-insensitively "
-"(e.g. on case-insensitive file sytems)"
+#: en/git-submodule.txt:26
+msgid "Inspects, updates and manages submodules."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:140
-msgid "A few more notes on matching via `gitdir` and `gitdir/i`:"
+#: en/git-submodule.txt:28
+msgid "For more information about submodules, see linkgit:gitsubmodules[7]."
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:142
-msgid "Symlinks in `$GIT_DIR` are not resolved before matching."
+#. type: Labeled list
+#: en/git-submodule.txt:31
+#, no-wrap
+msgid "add [-b <branch>] [-f|--force] [--name <name>] [--reference <repository>] [--depth <depth>] [--] <repository> [<path>]"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:145
+#: en/git-submodule.txt:35
 msgid ""
-"Note that \"../\" is not special and will match literally, which is unlikely "
-"what you want."
+"Add the given repository as a submodule at the given path to the changeset "
+"to be committed next to the current project: the current project is termed "
+"the \"superproject\"."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:153
-#, no-wrap
+#: en/git-submodule.txt:44
 msgid ""
-"\t# Core variables\n"
-"\t[core]\n"
-"\t\t; Don't trust file modes\n"
-"\t\tfilemode = false\n"
+"<repository> is the URL of the new submodule's origin repository.  This may "
+"be either an absolute URL, or (if it begins with ./ or ../), the location "
+"relative to the superproject's default remote repository (Please note that "
+"to specify a repository 'foo.git' which is located right next to a "
+"superproject 'bar.git', you'll have to use '../foo.git' instead of './foo."
+"git' - as one might expect when following the rules for relative URLs - "
+"because the evaluation of relative URLs in Git is identical to that of "
+"relative directories)."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:158
-#, no-wrap
+#: en/git-submodule.txt:51
 msgid ""
-"\t# Our diff algorithm\n"
-"\t[diff]\n"
-"\t\texternal = /usr/local/bin/diff-wrapper\n"
-"\t\trenames = true\n"
+"The default remote is the remote of the remote-tracking branch of the "
+"current branch. If no such remote-tracking branch exists or the HEAD is "
+"detached, \"origin\" is assumed to be the default remote.  If the "
+"superproject doesn't have a default remote configured the superproject is "
+"its own authoritative upstream and the current working directory is used "
+"instead."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:162
-#, no-wrap
+#: en/git-submodule.txt:60
 msgid ""
-"\t[branch \"devel\"]\n"
-"\t\tremote = origin\n"
-"\t\tmerge = refs/heads/devel\n"
+"The optional argument <path> is the relative location for the cloned "
+"submodule to exist in the superproject. If <path> is not given, the "
+"canonical part of the source repository is used (\"repo\" for \"/path/to/"
+"repo.git\" and \"foo\" for \"host.xz:foo/.git\"). If <path> exists and is "
+"already a valid Git repository, then it is staged for commit without "
+"cloning. The <path> is also used as the submodule's logical name in its "
+"configuration entries unless `--name` is used to specify a logical name."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:167
-#, no-wrap
+#: en/git-submodule.txt:68
 msgid ""
-"\t# Proxy settings\n"
-"\t[core]\n"
-"\t\tgitProxy=\"ssh\" for \"kernel.org\"\n"
-"\t\tgitProxy=default-proxy ; for the rest\n"
+"The given URL is recorded into `.gitmodules` for use by subsequent users "
+"cloning the superproject. If the URL is given relative to the superproject's "
+"repository, the presumption is the superproject and submodule repositories "
+"will be kept together in the same relative location, and only the "
+"superproject's URL needs to be provided.  git-submodule will correctly "
+"locate the submodule using the relative URL in `.gitmodules`."
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:172
+#. type: Labeled list
+#: en/git-submodule.txt:69
 #, no-wrap
-msgid ""
-"\t[include]\n"
-"\t\tpath = /path/to/foo.inc ; include by absolute path\n"
-"\t\tpath = foo ; expand \"foo\" relative to the current file\n"
-"\t\tpath = ~/foo ; expand \"foo\" in your `$HOME` directory\n"
+msgid "status [--cached] [--recursive] [--] [<path>...]"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:176
-#, no-wrap
+#: en/git-submodule.txt:77
 msgid ""
-"\t; include if $GIT_DIR is /path/to/foo/.git\n"
-"\t[includeIf \"gitdir:/path/to/foo/.git\"]\n"
-"\t\tpath = /path/to/foo.inc\n"
+"Show the status of the submodules. This will print the SHA-1 of the "
+"currently checked out commit for each submodule, along with the submodule "
+"path and the output of 'git describe' for the SHA-1. Each SHA-1 will "
+"possibly be prefixed with `-` if the submodule is not initialized, `+` if "
+"the currently checked out submodule commit does not match the SHA-1 found in "
+"the index of the containing repository and `U` if the submodule has merge "
+"conflicts."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:180
-#, no-wrap
+#: en/git-submodule.txt:80
 msgid ""
-"\t; include for all repositories inside /path/to/group\n"
-"\t[includeIf \"gitdir:/path/to/group/\"]\n"
-"\t\tpath = /path/to/foo.inc\n"
+"If `--recursive` is specified, this command will recurse into nested "
+"submodules, and show their status as well."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:184
-#, no-wrap
+#: en/git-submodule.txt:85
 msgid ""
-"\t; include for all repositories inside $HOME/to/group\n"
-"\t[includeIf \"gitdir:~/to/group/\"]\n"
-"\t\tpath = /path/to/foo.inc\n"
+"If you are only interested in changes of the currently initialized "
+"submodules with respect to the commit recorded in the index or the HEAD, "
+"linkgit:git-status[1] and linkgit:git-diff[1] will provide that information "
+"too (and can also report changes to a submodule's work tree)."
 msgstr ""
 
-#. type: Title ~
-#: en/config.txt:186
+#. type: Labeled list
+#: en/git-submodule.txt:86
 #, no-wrap
-msgid "Values"
+msgid "init [--] [<path>...]"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:191
+#: en/git-submodule.txt:93
 msgid ""
-"Values of many variables are treated as a simple string, but there are "
-"variables that take values of specific types and there are rules as to how "
-"to spell them."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:192
-#, no-wrap
-msgid "boolean"
+"Initialize the submodules recorded in the index (which were added and "
+"committed elsewhere) by setting `submodule.$name.url` in .git/config. It "
+"uses the same setting from `.gitmodules` as a template. If the URL is "
+"relative, it will be resolved using the default remote. If there is no "
+"default remote, the current repository will be assumed to be upstream."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:197
+#: en/git-submodule.txt:98
 msgid ""
-"When a variable is said to take a boolean value, many synonyms are accepted "
-"for 'true' and 'false'; these are all case-insensitive."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:198
-#, no-wrap
-msgid "true"
+"Optional <path> arguments limit which submodules will be initialized.  If no "
+"path is specified and submodule.active has been configured, submodules "
+"configured to be active will be initialized, otherwise all submodules are "
+"initialized."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:199
-msgid "Boolean true can be spelled as `yes`, `on`, `true`,"
+#: en/git-submodule.txt:106
+msgid ""
+"When present, it will also copy the value of `submodule.$name.update`.  This "
+"command does not alter existing information in .git/config.  You can then "
+"customize the submodule clone URLs in .git/config for your local setup and "
+"proceed to `git submodule update`; you can also just use `git submodule "
+"update --init` without the explicit 'init' step if you do not intend to "
+"customize any submodule locations."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:201
-msgid "or `1`.  Also, a variable defined without `= <value>` is taken as true."
+#: en/git-submodule.txt:108
+msgid "See the add subcommand for the definition of default remote."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:202
+#: en/git-submodule.txt:109
 #, no-wrap
-msgid "false"
+msgid "deinit [-f|--force] (--all|[--] <path>...)"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:203
-msgid "Boolean false can be spelled as `no`, `off`,"
+#: en/git-submodule.txt:116
+msgid ""
+"Unregister the given submodules, i.e. remove the whole `submodule.$name` "
+"section from .git/config together with their work tree. Further calls to "
+"`git submodule update`, `git submodule foreach` and `git submodule sync` "
+"will skip any unregistered submodules until they are initialized again, so "
+"use this command if you don't want to have a local checkout of the submodule "
+"in your working tree anymore."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:204
-msgid "`false`, or `0`."
+#: en/git-submodule.txt:119
+msgid ""
+"When the command is run without pathspec, it errors out, instead of deinit-"
+"ing everything, to prevent mistakes."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:208
+#: en/git-submodule.txt:122
 msgid ""
-"When converting value to the canonical form using `--bool` type specifier; "
-"'git config' will ensure that the output is \"true\" or \"false\" (spelled "
-"in lowercase)."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:209
-#, no-wrap
-msgid "integer"
+"If `--force` is specified, the submodule's working tree will be removed even "
+"if it contains local modifications."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:213
+#: en/git-submodule.txt:126
 msgid ""
-"The value for many variables that specify various sizes can be suffixed with "
-"`k`, `M`,... to mean \"scale the number by 1024\", \"by 1024x1024\", etc."
+"If you really want to remove a submodule from the repository and commit that "
+"use linkgit:git-rm[1] instead. See linkgit:gitsubmodules[7] for removal "
+"options."
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:218
-msgid ""
-"The value for a variable that takes a color is a list of colors (at most "
-"two, one for foreground and one for background)  and attributes (as many as "
-"you want), separated by spaces."
+#. type: Labeled list
+#: en/git-submodule.txt:127
+#, no-wrap
+msgid "update [--init] [--remote] [-N|--no-fetch] [--[no-]recommend-shallow] [-f|--force] [--checkout|--rebase|--merge] [--reference <repository>] [--depth <depth>] [--recursive] [--jobs <n>] [--] [<path>...]"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:222
+#: en/git-submodule.txt:138
 msgid ""
-"The basic colors accepted are `normal`, `black`, `red`, `green`, `yellow`, "
-"`blue`, `magenta`, `cyan` and `white`.  The first color given is the "
-"foreground; the second is the background."
+"Update the registered submodules to match what the superproject expects by "
+"cloning missing submodules and updating the working tree of the submodules. "
+"The \"updating\" can be done in several ways depending on command line "
+"options and the value of `submodule.<name>.update` configuration variable. "
+"The command line option takes precedence over the configuration variable. If "
+"neither is given, a 'checkout' is performed.  The 'update' procedures "
+"supported both from the command line as well as through the `submodule."
+"<name>.update` configuration are:"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:227
-msgid ""
-"Colors may also be given as numbers between 0 and 255; these use ANSI "
-"256-color mode (but note that not all terminals may support this).  If your "
-"terminal supports it, you may also specify 24-bit RGB values as hex, like "
-"`#ff0ab3`."
+#. type: Labeled list
+#: en/git-submodule.txt:139
+#, no-wrap
+msgid "checkout"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:234
-msgid ""
-"The accepted attributes are `bold`, `dim`, `ul`, `blink`, `reverse`, "
-"`italic`, and `strike` (for crossed-out or \"strikethrough\" letters).  The "
-"position of any attributes with respect to the colors (before, after, or in "
-"between), doesn't matter. Specific attributes may be turned off by prefixing "
-"them with `no` or `no-` (e.g., `noreverse`, `no-ul`, etc)."
+#: en/git-submodule.txt:140
+msgid "the commit recorded in the superproject will be"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:237
-msgid ""
-"An empty color string produces no color effect at all. This can be used to "
-"avoid coloring specific elements without disabling color entirely."
+#: en/git-submodule.txt:141
+#, no-wrap
+msgid "checked out in the submodule on a detached HEAD.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:246
+#: en/git-submodule.txt:146
 msgid ""
-"For git's pre-defined color slots, the attributes are meant to be reset at "
-"the beginning of each item in the colored output. So setting "
-"`color.decorate.branch` to `black` will paint that branch name in a plain "
-"`black`, even if the previous thing on the same output line (e.g.  opening "
-"parenthesis before the list of branch names in `log --decorate` output) is "
-"set to be painted with `bold` or some other attribute.  However, custom log "
-"formats may do more complicated and layered coloring, and the negated forms "
-"may be useful there."
+"If `--force` is specified, the submodule will be checked out (using `git "
+"checkout --force`), even if the commit specified in the index of the "
+"containing repository already matches the commit checked out in the "
+"submodule."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:247
+#: en/git-submodule.txt:147
 #, no-wrap
-msgid "pathname"
+msgid "rebase"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:253
-msgid ""
-"A variable that takes a pathname value can be given a string that begins "
-"with \"`~/`\" or \"`~user/`\", and the usual tilde expansion happens to such "
-"a string: `~/` is expanded to the value of `$HOME`, and `~user/` to the "
-"specified user's home directory."
+#: en/git-submodule.txt:148
+msgid "the current branch of the submodule will be rebased"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:261
-msgid ""
-"Note that this list is non-comprehensive and not necessarily complete.  For "
-"command-specific variables, you will find a more detailed description in the "
-"appropriate manual page."
+#: en/git-submodule.txt:149
+#, no-wrap
+msgid "onto the commit recorded in the superproject.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:266
-msgid ""
-"Other git-related tools may and do use their own variables.  When inventing "
-"new variables for use in your own tool, make sure their names do not "
-"conflict with those that are used by Git itself and other popular tools, and "
-"describe them in your documentation."
+#: en/git-submodule.txt:151
+msgid "the commit recorded in the superproject will be merged"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:268
+#. type: Plain text
+#: en/git-submodule.txt:152
 #, no-wrap
-msgid "advice.*"
+msgid "into the current branch in the submodule.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:272
+#: en/git-submodule.txt:155
 msgid ""
-"These variables control various optional help messages designed to aid new "
-"users. All 'advice.*' variables default to 'true', and you can tell Git that "
-"you do not need help by setting these to 'false':"
+"The following 'update' procedures are only available via the `submodule."
+"<name>.update` configuration variable:"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:274
+#: en/git-submodule.txt:156
 #, no-wrap
-msgid "pushUpdateRejected"
+msgid "custom command"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:280
-#, no-wrap
-msgid ""
-"Set this variable to 'false' if you want to disable\n"
-"'pushNonFFCurrent',\n"
-"'pushNonFFMatching', 'pushAlreadyExists',\n"
-"'pushFetchFirst', and 'pushNeedsForce'\n"
-"simultaneously.\n"
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:280
-#, no-wrap
-msgid "pushNonFFCurrent"
+#: en/git-submodule.txt:157
+msgid "arbitrary shell command that takes a single"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:283
+#: en/git-submodule.txt:161
 #, no-wrap
 msgid ""
-"Advice shown when linkgit:git-push[1] fails due to a\n"
-"non-fast-forward update to the current branch.\n"
+"argument (the sha1 of the commit recorded in the\n"
+"superproject) is executed. When `submodule.<name>.update`\n"
+"is set to '!command', the remainder after the exclamation mark\n"
+"is the custom command.\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:283
-#, no-wrap
-msgid "pushNonFFMatching"
+#. type: Plain text
+#: en/git-submodule.txt:163
+msgid "the submodule is not updated."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:288
-#, no-wrap
+#: en/git-submodule.txt:167
 msgid ""
-"Advice shown when you ran linkgit:git-push[1] and pushed\n"
-"'matching refs' explicitly (i.e. you used ':', or\n"
-"specified a refspec that isn't your current branch) and\n"
-"it resulted in a non-fast-forward error.\n"
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:288
-#, no-wrap
-msgid "pushAlreadyExists"
+"If the submodule is not yet initialized, and you just want to use the "
+"setting as stored in `.gitmodules`, you can automatically initialize the "
+"submodule with the `--init` option."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:291
-#, no-wrap
+#: en/git-submodule.txt:170
 msgid ""
-"Shown when linkgit:git-push[1] rejects an update that\n"
-"does not qualify for fast-forwarding (e.g., a tag.)\n"
+"If `--recursive` is specified, this command will recurse into the registered "
+"submodules, and update any nested submodules within."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:291
+#: en/git-submodule.txt:171
 #, no-wrap
-msgid "pushFetchFirst"
+msgid "summary [--cached|--files] [(-n|--summary-limit) <n>] [commit] [--] [<path>...]"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:295
-#, no-wrap
+#: en/git-submodule.txt:180
 msgid ""
-"Shown when linkgit:git-push[1] rejects an update that\n"
-"tries to overwrite a remote ref that points at an\n"
-"object we do not have.\n"
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:295
-#, no-wrap
-msgid "pushNeedsForce"
+"Show commit summary between the given commit (defaults to HEAD) and working "
+"tree/index. For a submodule in question, a series of commits in the "
+"submodule between the given super project commit and the index or working "
+"tree (switched by `--cached`) are shown. If the option `--files` is given, "
+"show the series of commits in the submodule between the index of the super "
+"project and the working tree of the submodule (this option doesn't allow to "
+"use the `--cached` option or to provide an explicit commit)."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:300
-#, no-wrap
+#: en/git-submodule.txt:183
 msgid ""
-"Shown when linkgit:git-push[1] rejects an update that\n"
-"tries to overwrite a remote ref that points at an\n"
-"object that is not a commit-ish, or make the remote\n"
-"ref point at an object that is not a commit-ish.\n"
+"Using the `--submodule=log` option with linkgit:git-diff[1] will provide "
+"that information too."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:300
+#: en/git-submodule.txt:184
 #, no-wrap
-msgid "statusHints"
+msgid "foreach [--recursive] <command>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:306
-#, no-wrap
+#: en/git-submodule.txt:205
 msgid ""
-"Show directions on how to proceed from the current\n"
-"state in the output of linkgit:git-status[1], in\n"
-"the template shown when writing commit messages in\n"
-"linkgit:git-commit[1], and in the help message shown\n"
-"by linkgit:git-checkout[1] when switching branch.\n"
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:306
-#, no-wrap
-msgid "statusUoption"
+"Evaluates an arbitrary shell command in each checked out submodule.  The "
+"command has access to the variables $name, $sm_path, $displaypath, $sha1 and "
+"$toplevel: $name is the name of the relevant submodule section in `."
+"gitmodules`, $sm_path is the path of the submodule as recorded in the "
+"immediate superproject, $displaypath contains the relative path from the "
+"current working directory to the submodules root directory, $sha1 is the "
+"commit as recorded in the immediate superproject, and $toplevel is the "
+"absolute path to the top-level of the immediate superproject.  Note that to "
+"avoid conflicts with '$PATH' on Windows, the '$path' variable is now a "
+"deprecated synonym of '$sm_path' variable.  Any submodules defined in the "
+"superproject but not checked out are ignored by this command. Unless given "
+"`--quiet`, foreach prints the name of each submodule before evaluating the "
+"command.  If `--recursive` is given, submodules are traversed recursively (i."
+"e.  the given shell command is evaluated in nested submodules as well).  A "
+"non-zero return from the command in any submodule causes the processing to "
+"terminate. This can be overridden by adding '|| :' to the end of the command."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:310
-#, no-wrap
+#: en/git-submodule.txt:208
 msgid ""
-"Advise to consider using the `-u` option to linkgit:git-status[1]\n"
-"when the command takes more than 2 seconds to enumerate untracked\n"
-"files.\n"
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:310
-#, no-wrap
-msgid "commitBeforeMerge"
+"As an example, the command below will show the path and currently checked "
+"out commit for each submodule:"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:313
+#. type: delimited block -
+#: en/git-submodule.txt:211
 #, no-wrap
-msgid ""
-"Advice shown when linkgit:git-merge[1] refuses to\n"
-"merge to avoid overwriting local changes.\n"
+msgid "git submodule foreach 'echo $path `git rev-parse HEAD`'\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:313
+#: en/git-submodule.txt:213
 #, no-wrap
-msgid "resolveConflict"
+msgid "sync [--recursive] [--] [<path>...]"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:316
-#, no-wrap
+#: en/git-submodule.txt:220
 msgid ""
-"Advice shown by various commands when conflicts\n"
-"prevent the operation from being performed.\n"
+"Synchronizes submodules' remote URL configuration setting to the value "
+"specified in `.gitmodules`. It will only affect those submodules which "
+"already have a URL entry in .git/config (that is the case when they are "
+"initialized or freshly added). This is useful when submodule URLs change "
+"upstream and you need to update your local repositories accordingly."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:316
-#, no-wrap
-msgid "implicitIdentity"
+#. type: Plain text
+#: en/git-submodule.txt:223
+msgid ""
+"`git submodule sync` synchronizes all submodules while `git submodule sync "
+"-- A` synchronizes submodule \"A\" only."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:320
-#, no-wrap
+#: en/git-submodule.txt:226
 msgid ""
-"Advice on how to set your identity configuration when\n"
-"your information is guessed from the system username and\n"
-"domain name.\n"
+"If `--recursive` is specified, this command will recurse into the registered "
+"submodules, and sync any nested submodules within."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:320
+#: en/git-submodule.txt:227
 #, no-wrap
-msgid "detachedHead"
+msgid "absorbgitdirs"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:324
-#, no-wrap
+#: en/git-submodule.txt:234
 msgid ""
-"Advice shown when you used linkgit:git-checkout[1] to\n"
-"move to the detach HEAD state, to instruct how to create\n"
-"a local branch after the fact.\n"
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:324
-#, no-wrap
-msgid "amWorkDir"
+"If a git directory of a submodule is inside the submodule, move the git "
+"directory of the submodule into its superprojects `$GIT_DIR/modules` path "
+"and then connect the git directory and its working directory by setting the "
+"`core.worktree` and adding a .git file pointing to the git directory "
+"embedded in the superprojects git directory."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:327
-#, no-wrap
+#: en/git-submodule.txt:238
 msgid ""
-"Advice that shows the location of the patch file when\n"
-"linkgit:git-am[1] fails to apply it.\n"
+"A repository that was cloned independently and later added as a submodule or "
+"old setups have the submodules git directory inside the submodule instead of "
+"embedded into the superprojects git directory."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:327
-#, no-wrap
-msgid "rmHints"
+#. type: Plain text
+#: en/git-submodule.txt:240
+msgid "This command is recursive by default."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:330
-#, no-wrap
-msgid ""
-"In case of failure in the output of linkgit:git-rm[1],\n"
-"show directions on how to proceed from the current state.\n"
+#: en/git-submodule.txt:246
+msgid "Only print error messages."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:332
-#, no-wrap
-msgid "core.fileMode"
+#. type: Plain text
+#: en/git-submodule.txt:253
+msgid ""
+"This option is only valid for add and update commands.  Progress status is "
+"reported on the standard error stream by default when it is attached to a "
+"terminal, unless -q is specified. This flag forces progress status even if "
+"the standard error stream is not directed to a terminal."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:335
+#: en/git-submodule.txt:257
 msgid ""
-"Tells Git if the executable bit of files in the working tree is to be "
-"honored."
+"This option is only valid for the deinit command. Unregister all submodules "
+"in the working tree."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:342
+#: en/git-submodule.txt:265
 msgid ""
-"Some filesystems lose the executable bit when a file that is marked as "
-"executable is checked out, or checks out an non-executable file with "
-"executable bit on.  linkgit:git-clone[1] or linkgit:git-init[1] probe the "
-"filesystem to see if it handles the executable bit correctly and this "
-"variable is automatically set as necessary."
+"Branch of repository to add as submodule.  The name of the branch is "
+"recorded as `submodule.<name>.branch` in `.gitmodules` for `update --"
+"remote`.  A special value of `.` is used to indicate that the name of the "
+"branch in the submodule should be the same name as the current branch in the "
+"current repository."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:351
+#: en/git-submodule.txt:278
 msgid ""
-"A repository, however, may be on a filesystem that handles the filemode "
-"correctly, and this variable is set to 'true' when created, but later may be "
-"made accessible from another environment that loses the filemode "
-"(e.g. exporting ext4 via CIFS mount, visiting a Cygwin created repository "
-"with Git for Windows or Eclipse).  In such a case it may be necessary to set "
-"this variable to 'false'.  See linkgit:git-update-index[1]."
+"This option is only valid for add, deinit and update commands.  When running "
+"add, allow adding an otherwise ignored submodule path.  When running deinit "
+"the submodule working trees will be removed even if they contain local "
+"changes.  When running update (only effective with the checkout procedure), "
+"throw away local changes in submodules when switching to a different commit; "
+"and always run a checkout operation in the submodule, even if the commit "
+"listed in the index of the containing repository matches the commit checked "
+"out in the submodule."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:353
+#: en/git-submodule.txt:283
 msgid ""
-"The default is true (when core.filemode is not specified in the config "
-"file)."
+"This option is only valid for status and summary commands.  These commands "
+"typically use the commit found in the submodule HEAD, but with this option, "
+"the commit stored in the index is used instead."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:354
+#: en/git-submodule.txt:284
 #, no-wrap
-msgid "core.hideDotFiles"
+msgid "--files"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:359
+#: en/git-submodule.txt:288
 msgid ""
-"(Windows-only) If true, mark newly-created directories and files whose name "
-"starts with a dot as hidden.  If 'dotGitOnly', only the `.git/` directory is "
-"hidden, but no other files starting with a dot.  The default mode is "
-"'dotGitOnly'."
+"This option is only valid for the summary command. This command compares the "
+"commit in the index with that in the submodule HEAD when this option is used."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:360
+#: en/git-submodule.txt:290
 #, no-wrap
-msgid "core.ignoreCase"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:367
-msgid ""
-"If true, this option enables various workarounds to enable Git to work "
-"better on filesystems that are not case sensitive, like FAT. For example, if "
-"a directory listing finds \"makefile\" when Git expects \"Makefile\", Git "
-"will assume it is really the same file, and continue to remember it as "
-"\"Makefile\"."
+msgid "--summary-limit"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:371
+#: en/git-submodule.txt:296
 msgid ""
-"The default is false, except linkgit:git-clone[1] or linkgit:git-init[1] "
-"will probe and set core.ignoreCase true if appropriate when the repository "
-"is created."
+"This option is only valid for the summary command.  Limit the summary size "
+"(number of commits shown in total).  Giving 0 will disable the summary; a "
+"negative number means unlimited (the default). This limit only applies to "
+"modified submodules. The size is always limited to 1 for added/deleted/"
+"typechanged submodules."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:372
+#: en/git-submodule.txt:297
 #, no-wrap
-msgid "core.precomposeUnicode"
+msgid "--remote"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:380
+#: en/git-submodule.txt:306
 msgid ""
-"This option is only used by Mac OS implementation of Git.  When "
-"core.precomposeUnicode=true, Git reverts the unicode decomposition of "
-"filenames done by Mac OS. This is useful when sharing a repository between "
-"Mac OS and Linux or Windows.  (Git for Windows 1.7.10 or higher is needed, "
-"or Git under cygwin 1.7).  When false, file names are handled fully "
-"transparent by Git, which is backward compatible with older versions of Git."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:381
-#, no-wrap
-msgid "core.protectHFS"
+"This option is only valid for the update command.  Instead of using the "
+"superproject's recorded SHA-1 to update the submodule, use the status of the "
+"submodule's remote-tracking branch.  The remote used is branch's remote "
+"(`branch.<name>.remote`), defaulting to `origin`.  The remote branch used "
+"defaults to `master`, but the branch name may be overridden by setting the "
+"`submodule.<name>.branch` option in either `.gitmodules` or `.git/config` "
+"(with `.git/config` taking precedence)."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:385
+#: en/git-submodule.txt:312
 msgid ""
-"If set to true, do not allow checkout of paths that would be considered "
-"equivalent to `.git` on an HFS+ filesystem.  Defaults to `true` on Mac OS, "
-"and `false` elsewhere."
+"This works for any of the supported update procedures (`--checkout`, `--"
+"rebase`, etc.).  The only change is the source of the target SHA-1.  For "
+"example, `submodule update --remote --merge` will merge upstream submodule "
+"changes into the submodules, while `submodule update --merge` will merge "
+"superproject gitlink changes into the submodules."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:386
-#, no-wrap
-msgid "core.protectNTFS"
+#. type: Plain text
+#: en/git-submodule.txt:317
+msgid ""
+"In order to ensure a current tracking branch state, `update --remote` "
+"fetches the submodule's remote repository before calculating the SHA-1.  If "
+"you don't want to fetch, you should use `submodule update --remote --no-"
+"fetch`."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:391
+#: en/git-submodule.txt:327
 msgid ""
-"If set to true, do not allow checkout of paths that would cause problems "
-"with the NTFS filesystem, e.g. conflict with 8.3 \"short\" names.  Defaults "
-"to `true` on Windows, and `false` elsewhere."
+"Use this option to integrate changes from the upstream subproject with your "
+"submodule's current HEAD.  Alternatively, you can run `git pull` from the "
+"submodule, which is equivalent except for the remote branch name: `update --"
+"remote` uses the default upstream repository and `submodule.<name>.branch`, "
+"while `git pull` uses the submodule's `branch.<name>.merge`.  Prefer "
+"`submodule.<name>.branch` if you want to distribute the default upstream "
+"branch with the superproject and `branch.<name>.merge` if you want a more "
+"native feel while working in the submodule itself."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:392
+#: en/git-submodule.txt:329
 #, no-wrap
-msgid "core.trustctime"
+msgid "--no-fetch"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:398
+#: en/git-submodule.txt:332
 msgid ""
-"If false, the ctime differences between the index and the working tree are "
-"ignored; useful when the inode change time is regularly modified by "
-"something outside Git (file system crawlers and some backup systems).  See "
-"linkgit:git-update-index[1]. True by default."
+"This option is only valid for the update command.  Don't fetch new objects "
+"from the remote site."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:399
+#: en/git-submodule.txt:333
 #, no-wrap
-msgid "core.splitIndex"
+msgid "--checkout"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:402
+#: en/git-submodule.txt:341
 msgid ""
-"If true, the split-index feature of the index will be used.  See "
-"linkgit:git-update-index[1]. False by default."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:403
-#, no-wrap
-msgid "core.untrackedCache"
+"This option is only valid for the update command.  Checkout the commit "
+"recorded in the superproject on a detached HEAD in the submodule. This is "
+"the default behavior, the main use of this option is to override `submodule."
+"$name.update` when set to a value other than `checkout`.  If the key "
+"`submodule.$name.update` is either not explicitly set or set to `checkout`, "
+"this option is implicit."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:411
+#: en/git-submodule.txt:351
 msgid ""
-"Determines what to do about the untracked cache feature of the index. It "
-"will be kept, if this variable is unset or set to `keep`. It will "
-"automatically be added if set to `true`. And it will automatically be "
-"removed, if set to `false`. Before setting it to `true`, you should check "
-"that mtime is working properly on your system.  See "
-"linkgit:git-update-index[1]. `keep` by default."
+"This option is only valid for the update command.  Merge the commit recorded "
+"in the superproject into the current branch of the submodule. If this option "
+"is given, the submodule's HEAD will not be detached. If a merge failure "
+"prevents this process, you will have to resolve the resulting conflicts "
+"within the submodule with the usual conflict resolution tools.  If the key "
+"`submodule.$name.update` is set to `merge`, this option is implicit."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:412
+#: en/git-submodule.txt:352
 #, no-wrap
-msgid "core.checkStat"
+msgid "--rebase"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:417
+#: en/git-submodule.txt:360
 msgid ""
-"Determines which stat fields to match between the index and work tree. The "
-"user can set this to 'default' or 'minimal'. Default (or explicitly "
-"'default'), is to check all fields, including the sub-second part of mtime "
-"and ctime."
+"This option is only valid for the update command.  Rebase the current branch "
+"onto the commit recorded in the superproject. If this option is given, the "
+"submodule's HEAD will not be detached. If a merge failure prevents this "
+"process, you will have to resolve these failures with linkgit:git-"
+"rebase[1].  If the key `submodule.$name.update` is set to `rebase`, this "
+"option is implicit."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:418
+#: en/git-submodule.txt:361
 #, no-wrap
-msgid "core.quotePath"
+msgid "--init"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:432
+#: en/git-submodule.txt:365
 msgid ""
-"Commands that output paths (e.g. 'ls-files', 'diff'), will quote \"unusual\" "
-"characters in the pathname by enclosing the pathname in double-quotes and "
-"escaping those characters with backslashes in the same way C escapes control "
-"characters (e.g.  `\\t` for TAB, `\\n` for LF, `\\\\` for backslash) or "
-"bytes with values larger than 0x80 (e.g. octal `\\302\\265` for \"micro\" in "
-"UTF-8).  If this variable is set to false, bytes higher than 0x80 are not "
-"considered \"unusual\" any more. Double-quotes, backslash and control "
-"characters are always escaped regardless of the setting of this variable.  A "
-"simple space character is not considered \"unusual\".  Many commands can "
-"output pathnames completely verbatim using the `-z` option. The default "
-"value is true."
+"This option is only valid for the update command.  Initialize all submodules "
+"for which \"git submodule init\" has not been called so far before updating."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:433
+#: en/git-submodule.txt:366
 #, no-wrap
-msgid "core.eol"
+msgid "--name"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:440
+#: en/git-submodule.txt:370
 msgid ""
-"Sets the line ending type to use in the working directory for files that "
-"have the `text` property set when core.autocrlf is false.  Alternatives are "
-"'lf', 'crlf' and 'native', which uses the platform's native line ending.  "
-"The default value is `native`.  See linkgit:gitattributes[5] for more "
-"information on end-of-line conversion."
+"This option is only valid for the add command. It sets the submodule's name "
+"to the given string instead of defaulting to its path. The name must be "
+"valid as a directory name and may not end with a '/'."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:441
+#: en/git-submodule.txt:371
 #, no-wrap
-msgid "core.safecrlf"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:451
-msgid ""
-"If true, makes Git check if converting `CRLF` is reversible when end-of-line "
-"conversion is active.  Git will verify if a command modifies a file in the "
-"work tree either directly or indirectly.  For example, committing a file "
-"followed by checking out the same file should yield the original file in the "
-"work tree.  If this is not the case for the current setting of "
-"`core.autocrlf`, Git will reject the file.  The variable can be set to "
-"\"warn\", in which case Git will only warn about an irreversible conversion "
-"but continue the operation."
+msgid "--reference <repository>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:460
+#: en/git-submodule.txt:375 en/git-submodule.txt:384
 msgid ""
-"CRLF conversion bears a slight chance of corrupting data.  When it is "
-"enabled, Git will convert CRLF to LF during commit and LF to CRLF during "
-"checkout.  A file that contains a mixture of LF and CRLF before the commit "
-"cannot be recreated by Git.  For text files this is the right thing to do: "
-"it corrects line endings such that we have only LF line endings in the "
-"repository.  But for binary files that are accidentally classified as text "
-"the conversion can corrupt data."
+"This option is only valid for add and update commands.  These commands "
+"sometimes need to clone a remote repository. In this case, this option will "
+"be passed to the linkgit:git-clone[1] command."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:467
+#: en/git-submodule.txt:379
+#, no-wrap
 msgid ""
-"If you recognize such corruption early you can easily fix it by setting the "
-"conversion type explicitly in .gitattributes.  Right after committing you "
-"still have the original file in your work tree and this file is not yet "
-"corrupted.  You can explicitly tell Git that this file is binary and Git "
-"will handle the file appropriately."
+"*NOTE*: Do *not* use this option unless you have read the note\n"
+"for linkgit:git-clone[1]'s `--reference`, `--shared`, and `--dissociate`\n"
+"options carefully.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:474
-msgid ""
-"Unfortunately, the desired effect of cleaning up text files with mixed line "
-"endings and the undesired effect of corrupting binary files cannot be "
-"distinguished.  In both cases CRLFs are removed in an irreversible way.  For "
-"text files this is the right thing to do because CRLFs are line endings, "
-"while for binary files converting CRLFs corrupts data."
+#: en/git-submodule.txt:386
+#, no-wrap
+msgid "*NOTE*: see the NOTE for the `--reference` option.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:485
+#: en/git-submodule.txt:392
 msgid ""
-"Note, this safety check does not mean that a checkout will generate a file "
-"identical to the original file for a different setting of `core.eol` and "
-"`core.autocrlf`, but only for the current one.  For example, a text file "
-"with `LF` would be accepted with `core.eol=lf` and could later be checked "
-"out with `core.eol=crlf`, in which case the resulting file would contain "
-"`CRLF`, although the original file contained `LF`.  However, in both work "
-"trees the line endings would be consistent, that is either all `LF` or all "
-"`CRLF`, but never mixed.  A file with mixed line endings would be reported "
-"by the `core.safecrlf` mechanism."
+"This option is only valid for foreach, update, status and sync commands.  "
+"Traverse submodules recursively. The operation is performed not only in the "
+"submodules of the current repo, but also in any nested submodules inside "
+"those submodules (and so on)."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:486
+#: en/git-submodule.txt:393
 #, no-wrap
-msgid "core.autocrlf"
+msgid "--depth"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:493
+#: en/git-submodule.txt:397
 msgid ""
-"Setting this variable to \"true\" is the same as setting the `text` "
-"attribute to \"auto\" on all files and core.eol to \"crlf\".  Set to true if "
-"you want to have `CRLF` line endings in your working directory and the "
-"repository has LF line endings.  This variable can be set to 'input', in "
-"which case no output conversion is performed."
+"This option is valid for add and update commands. Create a 'shallow' clone "
+"with a history truncated to the specified number of revisions.  See linkgit:"
+"git-clone[1]"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:494
+#: en/git-submodule.txt:398
 #, no-wrap
-msgid "core.symlinks"
+msgid "--[no-]recommend-shallow"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:500
+#: en/git-submodule.txt:403
 msgid ""
-"If false, symbolic links are checked out as small plain files that contain "
-"the link text. linkgit:git-update-index[1] and linkgit:git-add[1] will not "
-"change the recorded type to regular file. Useful on filesystems like FAT "
-"that do not support symbolic links."
+"This option is only valid for the update command.  The initial clone of a "
+"submodule will use the recommended `submodule.<name>.shallow` as provided by "
+"the `.gitmodules` file by default. To ignore the suggestions use `--no-"
+"recommend-shallow`."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:504
+#: en/git-submodule.txt:409
 msgid ""
-"The default is true, except linkgit:git-clone[1] or linkgit:git-init[1] will "
-"probe and set core.symlinks false if appropriate when the repository is "
-"created."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:505
-#, no-wrap
-msgid "core.gitProxy"
+"This option is only valid for the update command.  Clone new submodules in "
+"parallel with as many jobs.  Defaults to the `submodule.fetchJobs` option."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:513
+#: en/git-submodule.txt:414
 msgid ""
-"A \"proxy command\" to execute (as 'command host port') instead of "
-"establishing direct connection to the remote server when using the Git "
-"protocol for fetching. If the variable value is in the \"COMMAND for "
-"DOMAIN\" format, the command is applied only on hostnames ending with the "
-"specified domain string. This variable may be set multiple times and is "
-"matched in the given order; the first match wins."
+"Paths to submodule(s). When specified this will restrict the command to only "
+"operate on the submodules found at the specified paths.  (This argument is "
+"required with add)."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:517
+#: en/git-submodule.txt:422
 msgid ""
-"Can be overridden by the `GIT_PROXY_COMMAND` environment variable (which "
-"always applies universally, without the special \"for\" handling)."
+"When initializing submodules, a `.gitmodules` file in the top-level "
+"directory of the containing repository is used to find the url of each "
+"submodule.  This file should be formatted in the same way as `$GIT_DIR/"
+"config`. The key to each submodule url is \"submodule.$name.url\".  See "
+"linkgit:gitmodules[5] for details."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:522
-msgid ""
-"The special string `none` can be used as the proxy command to specify that "
-"no proxy be used for a given domain pattern.  This is useful for excluding "
-"servers inside a firewall from proxy use, while defaulting to a common proxy "
-"for external domains."
+#: en/git-submodule.txt:426
+msgid "linkgit:gitsubmodules[7], linkgit:gitmodules[5]."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:523
+#. type: Title =
+#: en/git-svn.txt:2
 #, no-wrap
-msgid "core.sshCommand"
+msgid "git-svn(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:529
+#: en/git-svn.txt:7
 msgid ""
-"If this variable is set, `git fetch` and `git push` will use the specified "
-"command instead of `ssh` when they need to connect to a remote system. The "
-"command is in the same form as the `GIT_SSH_COMMAND` environment variable "
-"and is overridden when the environment variable is set."
+"git-svn - Bidirectional operation between a Subversion repository and Git"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:530
+#. type: Plain text
+#: en/git-svn.txt:12
 #, no-wrap
-msgid "core.ignoreStat"
+msgid "'git svn' <command> [<options>] [<arguments>]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:534
+#: en/git-svn.txt:18
 msgid ""
-"If true, Git will avoid using lstat() calls to detect if files have changed "
-"by setting the \"assume-unchanged\" bit for those tracked files which it has "
-"updated identically in both the index and working tree."
+"'git svn' is a simple conduit for changesets between Subversion and Git.  It "
+"provides a bidirectional flow of changes between a Subversion and a Git "
+"repository."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:539
+#: en/git-svn.txt:23
 msgid ""
-"When files are modified outside of Git, the user will need to stage the "
-"modified files explicitly (e.g. see 'Examples' section in "
-"linkgit:git-update-index[1]).  Git will not normally detect changes to those "
-"files."
+"'git svn' can track a standard Subversion repository, following the common "
+"\"trunk/branches/tags\" layout, with the --stdlayout option.  It can also "
+"follow branches and tags in any layout with the -T/-t/-b options (see "
+"options to 'init' below, and also the 'clone' command)."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:542
+#: en/git-svn.txt:27
 msgid ""
-"This is useful on systems where lstat() calls are very slow, such as "
-"CIFS/Microsoft Windows."
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:544
-msgid "False by default."
+"Once tracking a Subversion repository (with any of the above methods), the "
+"Git repository can be updated from Subversion by the 'fetch' command and "
+"Subversion updated from Git by the 'dcommit' command."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:545
+#: en/git-svn.txt:31
 #, no-wrap
-msgid "core.preferSymlinkRefs"
+msgid "'init'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:550
+#: en/git-svn.txt:39
 msgid ""
-"Instead of the default \"symref\" format for HEAD and other symbolic "
-"reference files, use symbolic links.  This is sometimes needed to work with "
-"old scripts that expect HEAD to be a symbolic link."
+"Initializes an empty Git repository with additional metadata directories for "
+"'git svn'.  The Subversion URL may be specified as a command-line argument, "
+"or as full URL arguments to -T/-t/-b.  Optionally, the target directory to "
+"operate on can be specified as a second argument.  Normally this command "
+"initializes the current directory."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:551
+#: en/git-svn.txt:40
 #, no-wrap
-msgid "core.bare"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:556
-msgid ""
-"If true this repository is assumed to be 'bare' and has no working directory "
-"associated with it.  If this is the case a number of commands that require a "
-"working directory will be disabled, such as linkgit:git-add[1] or "
-"linkgit:git-merge[1]."
+msgid "-T<trunk_subdir>"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:561
-msgid ""
-"This setting is automatically guessed by linkgit:git-clone[1] or "
-"linkgit:git-init[1] when the repository was created.  By default a "
-"repository that ends in \"/.git\" is assumed to be not bare (bare = false), "
-"while all other repositories are assumed to be bare (bare"
+#. type: Labeled list
+#: en/git-svn.txt:41
+#, no-wrap
+msgid "--trunk=<trunk_subdir>"
 msgstr ""
 
-#. type: Title =
-#: en/config.txt:561
+#. type: Labeled list
+#: en/git-svn.txt:42
 #, no-wrap
-msgid "true)."
+msgid "-t<tags_subdir>"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:563
+#: en/git-svn.txt:43
 #, no-wrap
-msgid "core.worktree"
+msgid "--tags=<tags_subdir>"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:576
-msgid ""
-"Set the path to the root of the working tree.  If `GIT_COMMON_DIR` "
-"environment variable is set, core.worktree is ignored and not used for "
-"determining the root of working tree.  This can be overridden by the "
-"`GIT_WORK_TREE` environment variable and the `--work-tree` command-line "
-"option.  The value can be an absolute path or relative to the path to the "
-".git directory, which is either specified by --git-dir or GIT_DIR, or "
-"automatically discovered.  If --git-dir or GIT_DIR is specified but none of "
-"--work-tree, GIT_WORK_TREE and core.worktree is specified, the current "
-"working directory is regarded as the top level of your working tree."
+#. type: Labeled list
+#: en/git-svn.txt:44
+#, no-wrap
+msgid "-b<branches_subdir>"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:586
-msgid ""
-"Note that this variable is honored even when set in a configuration file in "
-"a \".git\" subdirectory of a directory and its value differs from the latter "
-"directory (e.g. \"/path/to/.git/config\" has core.worktree set to "
-"\"/different/path\"), which is most likely a misconfiguration.  Running Git "
-"commands in the \"/path/to\" directory will still use \"/different/path\" as "
-"the root of the work tree and can cause confusion unless you know what you "
-"are doing (e.g. you are creating a read-only snapshot of the same index to a "
-"location different from the repository's usual working tree)."
+#. type: Labeled list
+#: en/git-svn.txt:45
+#, no-wrap
+msgid "--branches=<branches_subdir>"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:587
+#: en/git-svn.txt:47
 #, no-wrap
-msgid "core.logAllRefUpdates"
+msgid "--stdlayout"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:598
+#: en/git-svn.txt:58
 msgid ""
-"Enable the reflog. Updates to a ref <ref> is logged to the file "
-"\"`$GIT_DIR/logs/<ref>`\", by appending the new and old SHA-1, the date/time "
-"and the reason of the update, but only when the file exists.  If this "
-"configuration variable is set to `true`, missing \"`$GIT_DIR/logs/<ref>`\" "
-"file is automatically created for branch heads (i.e. under `refs/heads/`), "
-"remote refs (i.e. under `refs/remotes/`), note refs (i.e. under "
-"`refs/notes/`), and the symbolic ref `HEAD`.  If it is set to `always`, then "
-"a missing reflog is automatically created for any ref under `refs/`."
+"These are optional command-line options for init.  Each of these flags can "
+"point to a relative repository path (--tags=project/tags) or a full url (--"
+"tags=https://foo.org/project/tags).  You can specify more than one --tags "
+"and/or --branches options, in case your Subversion repository places tags or "
+"branches under multiple paths.  The option --stdlayout is a shorthand way of "
+"setting trunk,tags,branches as the relative paths, which is the Subversion "
+"default. If any of the other options are given as well, they take precedence."
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:601
-msgid ""
-"This information can be used to determine what commit was the tip of a "
-"branch \"2 days ago\"."
+#. type: Labeled list
+#: en/git-svn.txt:58
+#, no-wrap
+msgid "--no-metadata"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:605
+#: en/git-svn.txt:62
 msgid ""
-"This value is true by default in a repository that has a working directory "
-"associated with it, and false by default in a bare repository."
+"Set the 'noMetadata' option in the [svn-remote] config.  This option is not "
+"recommended, please read the 'svn.noMetadata' section of this manpage before "
+"using this option."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:606
+#: en/git-svn.txt:62
 #, no-wrap
-msgid "core.repositoryFormatVersion"
+msgid "--use-svm-props"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:609
-msgid "Internal variable identifying the repository format and layout version."
+#: en/git-svn.txt:64
+msgid "Set the 'useSvmProps' option in the [svn-remote] config."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:610
+#: en/git-svn.txt:64
 #, no-wrap
-msgid "core.sharedRepository"
+msgid "--use-svnsync-props"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:624
-msgid ""
-"When 'group' (or 'true'), the repository is made shareable between several "
-"users in a group (making sure all the files and objects are "
-"group-writable). When 'all' (or 'world' or 'everybody'), the repository will "
-"be readable by all users, additionally to being group-shareable. When "
-"'umask' (or 'false'), Git will use permissions reported by umask(2). When "
-"'0xxx', where '0xxx' is an octal number, files in the repository will have "
-"this mode value. '0xxx' will override user's umask value (whereas the other "
-"options will only override requested parts of the user's umask "
-"value). Examples: '0660' will make the repo read/write-able for the owner "
-"and group, but inaccessible to others (equivalent to 'group' unless umask is "
-"e.g. '0022'). '0640' is a repository that is group-readable but not "
-"group-writable.  See linkgit:git-init[1]. False by default."
+#: en/git-svn.txt:66
+msgid "Set the 'useSvnsyncProps' option in the [svn-remote] config."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:625
+#: en/git-svn.txt:66
 #, no-wrap
-msgid "core.warnAmbiguousRefs"
+msgid "--rewrite-root=<URL>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:628
-msgid ""
-"If true, Git will warn you if the ref name you passed it is ambiguous and "
-"might match multiple refs in the repository. True by default."
+#: en/git-svn.txt:68
+msgid "Set the 'rewriteRoot' option in the [svn-remote] config."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:629
+#: en/git-svn.txt:68
 #, no-wrap
-msgid "core.compression"
+msgid "--rewrite-uuid=<UUID>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:635
-msgid ""
-"An integer -1..9, indicating a default compression level.  -1 is the zlib "
-"default. 0 means no compression, and 1..9 are various speed/size tradeoffs, "
-"9 being slowest.  If set, this provides a default to other compression "
-"variables, such as `core.looseCompression` and `pack.compression`."
+#: en/git-svn.txt:70
+msgid "Set the 'rewriteUUID' option in the [svn-remote] config."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:636
+#: en/git-svn.txt:70
 #, no-wrap
-msgid "core.looseCompression"
+msgid "--username=<user>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:642
+#: en/git-svn.txt:75
 msgid ""
-"An integer -1..9, indicating the compression level for objects that are not "
-"in a pack file. -1 is the zlib default. 0 means no compression, and 1..9 are "
-"various speed/size tradeoffs, 9 being slowest.  If not set, defaults to "
-"core.compression.  If that is not set, defaults to 1 (best speed)."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:643
-#, no-wrap
-msgid "core.packedGitWindowSize"
+"For transports that SVN handles authentication for (http, https, and plain "
+"svn), specify the username.  For other transports (e.g. `svn+ssh://`), you "
+"must include the username in the URL, e.g. `svn+ssh://foo@svn.bar.com/"
+"project`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:651
+#: en/git-svn.txt:90
 msgid ""
-"Number of bytes of a pack file to map into memory in a single mapping "
-"operation.  Larger window sizes may allow your system to process a smaller "
-"number of large pack files more quickly.  Smaller window sizes will "
-"negatively affect performance due to increased calls to the operating "
-"system's memory manager, but may improve performance when accessing a large "
-"number of large pack files."
+"This allows one to specify a prefix which is prepended to the names of "
+"remotes if trunk/branches/tags are specified.  The prefix does not "
+"automatically include a trailing slash, so be sure you include one in the "
+"argument if that is what you want.  If --branches/-b is specified, the "
+"prefix must include a trailing slash.  Setting a prefix (with a trailing "
+"slash) is strongly encouraged in any case, as your SVN-tracking refs will "
+"then be located at \"refs/remotes/$prefix/*\", which is compatible with "
+"Git's own remote-tracking ref layout (refs/remotes/$remote/*). Setting a "
+"prefix is also useful if you wish to track multiple projects that share a "
+"common repository.  By default, the prefix is set to 'origin/'."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:656
+#: en/git-svn.txt:97
 msgid ""
-"Default is 1 MiB if NO_MMAP was set at compile time, otherwise 32 MiB on 32 "
-"bit platforms and 1 GiB on 64 bit platforms.  This should be reasonable for "
-"all users/operating systems.  You probably do not need to adjust this value."
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:658 en/config.txt:670 en/config.txt:683 en/config.txt:696
-msgid "Common unit suffixes of 'k', 'm', or 'g' are supported."
+"Before Git v2.0, the default prefix was \"\" (no prefix). This meant that "
+"SVN-tracking refs were put at \"refs/remotes/*\", which is incompatible with "
+"how Git's own remote-tracking refs are organized.  If you still want the old "
+"default, you can get it by passing `--prefix \"\"` on the command line (`--"
+"prefix=\"\"` may not work if your Perl's Getopt::Long is < v2.37)."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:659
+#: en/git-svn.txt:98 en/git-svn.txt:145
 #, no-wrap
-msgid "core.packedGitLimit"
+msgid "--ignore-refs=<regex>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:664
+#: en/git-svn.txt:102
 msgid ""
-"Maximum number of bytes to map simultaneously into memory from pack files.  "
-"If Git needs to access more than this many bytes at once to complete an "
-"operation it will unmap existing regions to reclaim virtual address space "
-"within the process."
+"When passed to 'init' or 'clone' this regular expression will be preserved "
+"as a config key.  See 'fetch' for a description of `--ignore-refs`."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-svn.txt:102 en/git-svn.txt:157
+#, no-wrap
+msgid "--ignore-paths=<regex>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:668
+#: en/git-svn.txt:106
 msgid ""
-"Default is 256 MiB on 32 bit platforms and 8 GiB on 64 bit platforms.  This "
-"should be reasonable for all users/operating systems, except on the largest "
-"projects.  You probably do not need to adjust this value."
+"When passed to 'init' or 'clone' this regular expression will be preserved "
+"as a config key.  See 'fetch' for a description of `--ignore-paths`."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:671
+#: en/git-svn.txt:106 en/git-svn.txt:186
 #, no-wrap
-msgid "core.deltaBaseCacheLimit"
+msgid "--include-paths=<regex>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:677
+#: en/git-svn.txt:110
 msgid ""
-"Maximum number of bytes to reserve for caching base objects that may be "
-"referenced by multiple deltified objects.  By storing the entire "
-"decompressed base objects in a cache Git is able to avoid unpacking and "
-"decompressing frequently used base objects multiple times."
+"When passed to 'init' or 'clone' this regular expression will be preserved "
+"as a config key.  See 'fetch' for a description of `--include-paths`."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-svn.txt:110
+#, no-wrap
+msgid "--no-minimize-url"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:681
+#: en/git-svn.txt:121
 msgid ""
-"Default is 96 MiB on all platforms.  This should be reasonable for all "
-"users/operating systems, except on the largest projects.  You probably do "
-"not need to adjust this value."
+"When tracking multiple directories (using --stdlayout, --branches, or --tags "
+"options), git svn will attempt to connect to the root (or highest allowed "
+"level) of the Subversion repository.  This default allows better tracking of "
+"history if entire projects are moved within a repository, but may cause "
+"issues on repositories where read access restrictions are in place.  Passing "
+"`--no-minimize-url` will allow git svn to accept URLs as-is without "
+"attempting to connect to a higher level directory.  This option is off by "
+"default when only one URL/branch is tracked (it would do little good)."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:684
+#: en/git-svn.txt:122
 #, no-wrap
-msgid "core.bigFileThreshold"
+msgid "'fetch'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:690
+#: en/git-svn.txt:127
 msgid ""
-"Files larger than this size are stored deflated, without attempting delta "
-"compression.  Storing large files without delta compression avoids excessive "
-"memory usage, at the slight expense of increased disk usage. Additionally "
-"files larger than this size are always treated as binary."
+"Fetch unfetched revisions from the Subversion remote we are tracking.  The "
+"name of the [svn-remote \"...\"] section in the $GIT_DIR/config file may be "
+"specified as an optional command-line argument."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:694
+#: en/git-svn.txt:130 en/git-svn.txt:243
 msgid ""
-"Default is 512 MiB on all platforms.  This should be reasonable for most "
-"projects as source code and other text files can still be delta compressed, "
-"but larger binary media files won't be."
+"This automatically updates the rev_map if needed (see '$GIT_DIR/svn/\\*\\*/."
+"rev_map.*' in the FILES section below for details)."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:697
+#: en/git-svn.txt:131
 #, no-wrap
-msgid "core.excludesFile"
+msgid "--localtime"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:704
+#: en/git-svn.txt:135
 msgid ""
-"Specifies the pathname to the file that contains patterns to describe paths "
-"that are not meant to be tracked, in addition to '.gitignore' "
-"(per-directory) and '.git/info/exclude'.  Defaults to "
-"`$XDG_CONFIG_HOME/git/ignore`.  If `$XDG_CONFIG_HOME` is either not set or "
-"empty, `$HOME/.config/git/ignore` is used instead. See linkgit:gitignore[5]."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:705
-#, no-wrap
-msgid "core.askPass"
+"Store Git commit times in the local time zone instead of UTC.  This makes "
+"'git log' (even without --date=local) show the same times that `svn log` "
+"would in the local time zone."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:713
+#: en/git-svn.txt:141
 msgid ""
-"Some commands (e.g. svn and http interfaces) that interactively ask for a "
-"password can be told to use an external program given via the value of this "
-"variable. Can be overridden by the `GIT_ASKPASS` environment variable. If "
-"not set, fall back to the value of the `SSH_ASKPASS` environment variable "
-"or, failing that, a simple password prompt. The external program shall be "
-"given a suitable prompt as command-line argument and write the password on "
-"its STDOUT."
+"This doesn't interfere with interoperating with the Subversion repository "
+"you cloned from, but if you wish for your local Git repository to be able to "
+"interoperate with someone else's local Git repository, either don't use this "
+"option or you should both use it in the same local time zone."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:714
+#: en/git-svn.txt:142 en/git-svn.txt:536
 #, no-wrap
-msgid "core.attributesFile"
+msgid "--parent"
+msgstr ""
+
+#. type: Plain text
+#: en/git-svn.txt:144
+msgid "Fetch only from the SVN parent of the current HEAD."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:721
+#: en/git-svn.txt:150
 msgid ""
-"In addition to '.gitattributes' (per-directory) and '.git/info/attributes', "
-"Git looks into this file for attributes (see linkgit:gitattributes[5]). Path "
-"expansions are made the same way as for `core.excludesFile`. Its default "
-"value is `$XDG_CONFIG_HOME/git/attributes`. If `$XDG_CONFIG_HOME` is either "
-"not set or empty, `$HOME/.config/git/attributes` is used instead."
+"Ignore refs for branches or tags matching the Perl regular expression. A "
+"\"negative look-ahead assertion\" like `^refs/remotes/origin/(?!tags/wanted-"
+"tag|wanted-branch).*$` can be used to allow only certain refs."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:722
+#. type: Plain text
+#: en/git-svn.txt:153
 #, no-wrap
-msgid "core.hooksPath"
+msgid "config key: svn-remote.<name>.ignore-refs\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:728
+#: en/git-svn.txt:156
 msgid ""
-"By default Git will look for your hooks in the '$GIT_DIR/hooks' "
-"directory. Set this to different path, e.g. '/etc/git/hooks', and Git will "
-"try to find your hooks in that directory, e.g. '/etc/git/hooks/pre-receive' "
-"instead of in '$GIT_DIR/hooks/pre-receive'."
+"If the ignore-refs configuration key is set, and the command-line option is "
+"also given, both regular expressions will be used."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:732
+#: en/git-svn.txt:163
 msgid ""
-"The path can be either absolute or relative. A relative path is taken as "
-"relative to the directory where the hooks are run (see the \"DESCRIPTION\" "
-"section of linkgit:githooks[5])."
+"This allows one to specify a Perl regular expression that will cause "
+"skipping of all matching paths from checkout from SVN.  The `--ignore-paths` "
+"option should match for every 'fetch' (including automatic fetches due to "
+"'clone', 'dcommit', 'rebase', etc) on a given repository."
+msgstr ""
+
+#. type: Plain text
+#: en/git-svn.txt:166
+#, no-wrap
+msgid "config key: svn-remote.<name>.ignore-paths\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:738
+#: en/git-svn.txt:169
 msgid ""
-"This configuration variable is useful in cases where you'd like to centrally "
-"configure your Git hooks instead of configuring them on a per-repository "
-"basis, or as a more flexible and centralized alternative to having an "
-"`init.templateDir` where you've changed default hooks."
+"If the ignore-paths configuration key is set, and the command-line option is "
+"also given, both regular expressions will be used."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:739
+#: en/git-svn.txt:173
 #, no-wrap
-msgid "core.editor"
+msgid "Skip \"doc*\" directory for every fetch"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:744
-msgid ""
-"Commands such as `commit` and `tag` that lets you edit messages by launching "
-"an editor uses the value of this variable when it is set, and the "
-"environment variable `GIT_EDITOR` is not set.  See linkgit:git-var[1]."
+#. type: delimited block -
+#: en/git-svn.txt:177
+#, no-wrap
+msgid "--ignore-paths=\"^doc\"\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:745
+#: en/git-svn.txt:179
+#, no-wrap
+msgid "Skip \"branches\" and \"tags\" of first level directories"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-svn.txt:183
 #, no-wrap
-msgid "core.commentChar"
+msgid "--ignore-paths=\"^[^/]+/(?:branches|tags)\"\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:750
+#: en/git-svn.txt:193
 msgid ""
-"Commands such as `commit` and `tag` that lets you edit messages consider a "
-"line that begins with this character commented, and removes them after the "
-"editor returns (default '#')."
+"This allows one to specify a Perl regular expression that will cause the "
+"inclusion of only matching paths from checkout from SVN.  The `--include-"
+"paths` option should match for every 'fetch' (including automatic fetches "
+"due to 'clone', 'dcommit', 'rebase', etc) on a given repository. `--ignore-"
+"paths` takes precedence over `--include-paths`."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:753
-msgid ""
-"If set to \"auto\", `git-commit` would select a character that is not the "
-"beginning character of any line in existing commit messages."
+#: en/git-svn.txt:196
+#, no-wrap
+msgid "config key: svn-remote.<name>.include-paths\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:754
+#: en/git-svn.txt:197
 #, no-wrap
-msgid "core.packedRefsTimeout"
+msgid "--log-window-size=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:759
+#: en/git-svn.txt:203
 msgid ""
-"The length of time, in milliseconds, to retry when trying to lock the "
-"`packed-refs` file. Value 0 means not to retry at all; -1 means to try "
-"indefinitely. Default is 1000 (i.e., retry for 1 second)."
+"Fetch <n> log entries per request when scanning Subversion history.  The "
+"default is 100. For very large Subversion repositories, larger values may be "
+"needed for 'clone'/'fetch' to complete in reasonable time. But overly large "
+"values may lead to higher memory usage and request timeouts."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:760
+#: en/git-svn.txt:204
 #, no-wrap
-msgid "sequence.editor"
+msgid "'clone'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:765
+#: en/git-svn.txt:214
 msgid ""
-"Text editor used by `git rebase -i` for editing the rebase instruction "
-"file.  The value is meant to be interpreted by the shell when it is used.  "
-"It can be overridden by the `GIT_SEQUENCE_EDITOR` environment variable.  "
-"When not configured the default commit message editor is used instead."
+"Runs 'init' and 'fetch'.  It will automatically create a directory based on "
+"the basename of the URL passed to it; or if a second argument is passed; it "
+"will create a directory and work within that.  It accepts all arguments that "
+"the 'init' and 'fetch' commands accept; with the exception of `--fetch-all` "
+"and `--parent`.  After a repository is cloned, the 'fetch' command will be "
+"able to update revisions without affecting the working tree; and the "
+"'rebase' command will be able to update the working tree with the latest "
+"changes."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:766
+#: en/git-svn.txt:215
 #, no-wrap
-msgid "core.pager"
+msgid "--preserve-empty-dirs"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:786
+#: en/git-svn.txt:221
 msgid ""
-"When the `LESS` environment variable is unset, Git sets it to `FRX` (if "
-"`LESS` environment variable is set, Git does not change it at all).  If you "
-"want to selectively override Git's default setting for `LESS`, you can set "
-"`core.pager` to e.g. `less -S`.  This will be passed to the shell by Git, "
-"which will translate the final command to `LESS=FRX less -S`. The "
-"environment does not set the `S` option but the command line does, "
-"instructing less to truncate long lines. Similarly, setting `core.pager` to "
-"`less -+F` will deactivate the `F` option specified by the environment from "
-"the command-line, deactivating the \"quit if one screen\" behavior of "
-"`less`.  One can specifically activate some flags for particular commands: "
-"for example, setting `pager.blame` to `less -S` enables line truncation only "
-"for `git blame`."
+"Create a placeholder file in the local Git repository for each empty "
+"directory fetched from Subversion.  This includes directories that become "
+"empty by removing all entries in the Subversion repository (but not the "
+"directory itself).  The placeholder files are also tracked and removed when "
+"no longer necessary."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-svn.txt:222
+#, no-wrap
+msgid "--placeholder-filename=<filename>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:790
+#: en/git-svn.txt:225
 msgid ""
-"Likewise, when the `LV` environment variable is unset, Git sets it to `-c`.  "
-"You can override this setting by exporting `LV` with another value or "
-"setting `core.pager` to `lv +c`."
+"Set the name of placeholder files created by --preserve-empty-dirs.  "
+"Default: \".gitignore\""
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:791
+#: en/git-svn.txt:226
 #, no-wrap
-msgid "core.whitespace"
+msgid "'rebase'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:797
+#: en/git-svn.txt:229
 msgid ""
-"A comma separated list of common whitespace problems to notice.  'git diff' "
-"will use `color.diff.whitespace` to highlight them, and 'git apply "
-"--whitespace=error' will consider them as errors.  You can prefix `-` to "
-"disable any of them (e.g. `-trailing-space`):"
+"This fetches revisions from the SVN parent of the current HEAD and rebases "
+"the current (uncommitted to SVN) work against it."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:800
+#: en/git-svn.txt:233
 msgid ""
-"`blank-at-eol` treats trailing whitespaces at the end of the line as an "
-"error (enabled by default)."
+"This works similarly to `svn update` or 'git pull' except that it preserves "
+"linear history with 'git rebase' instead of 'git merge' for ease of "
+"dcommitting with 'git svn'."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:803
+#: en/git-svn.txt:237
 msgid ""
-"`space-before-tab` treats a space character that appears immediately before "
-"a tab character in the initial indent part of the line as an error (enabled "
-"by default)."
+"This accepts all options that 'git svn fetch' and 'git rebase' accept.  "
+"However, `--fetch-all` only fetches from the current [svn-remote], and not "
+"all [svn-remote] definitions."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:806
+#: en/git-svn.txt:240
 msgid ""
-"`indent-with-non-tab` treats a line that is indented with space characters "
-"instead of the equivalent tabs as an error (not enabled by default)."
+"Like 'git rebase'; this requires that the working tree be clean and have no "
+"uncommitted changes."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:808
+#: en/git-svn.txt:248
 msgid ""
-"`tab-in-indent` treats a tab character in the initial indent part of the "
-"line as an error (not enabled by default)."
+"Do not fetch remotely; only run 'git rebase' against the last fetched commit "
+"from the upstream SVN."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-svn.txt:249
+#, no-wrap
+msgid "'dcommit'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:810
+#: en/git-svn.txt:254
 msgid ""
-"`blank-at-eof` treats blank lines added at the end of file as an error "
-"(enabled by default)."
+"Commit each diff from the current branch directly to the SVN repository, and "
+"then rebase or reset (depending on whether or not there is a diff between "
+"SVN and head).  This will create a revision in SVN for each commit in Git."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:812
+#: en/git-svn.txt:258
 msgid ""
-"`trailing-space` is a short-hand to cover both `blank-at-eol` and "
-"`blank-at-eof`."
+"When an optional Git branch name (or a Git commit object name)  is specified "
+"as an argument, the subcommand works on the specified branch, not on the "
+"current branch."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:816
-msgid ""
-"`cr-at-eol` treats a carriage-return at the end of line as part of the line "
-"terminator, i.e. with it, `trailing-space` does not trigger if the character "
-"before such a carriage-return is not a whitespace (not enabled by default)."
+#: en/git-svn.txt:260
+msgid "Use of 'dcommit' is preferred to 'set-tree' (below)."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:819
-msgid ""
-"`tabwidth=<n>` tells how many character positions a tab occupies; this is "
-"relevant for `indent-with-non-tab` and when Git fixes `tab-in-indent` "
-"errors. The default tab width is 8. Allowed values are 1 to 63."
+#: en/git-svn.txt:263
+msgid "After committing, do not rebase or reset."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:820
+#: en/git-svn.txt:263
 #, no-wrap
-msgid "core.fsyncObjectFiles"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:822
-msgid "This boolean will enable 'fsync()' when writing object files."
+msgid "--commit-url <URL>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:827
+#: en/git-svn.txt:269
 msgid ""
-"This is a total waste of time and effort on a filesystem that orders data "
-"writes properly, but can be useful for filesystems that do not use "
-"journalling (traditional UNIX filesystems) or that only journal metadata and "
-"not file contents (OS X's HFS+, or Linux ext3 with \"data=writeback\")."
+"Commit to this SVN URL (the full path).  This is intended to allow existing "
+"'git svn' repositories created with one transport method (e.g. `svn://` or "
+"`http://` for anonymous read) to be reused if a user is later given access "
+"to an alternate transport method (e.g. `svn+ssh://` or `https://`) for "
+"commit."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:828
+#. type: Plain text
+#: en/git-svn.txt:273
 #, no-wrap
-msgid "core.preloadIndex"
+msgid ""
+"config key: svn-remote.<name>.commiturl\n"
+"config key: svn.commiturl (overwrites all svn-remote.<name>.commiturl options)\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:830
-msgid "Enable parallel index preload for operations like 'git diff'"
+#: en/git-svn.txt:277
+msgid ""
+"Note that the SVN URL of the commiturl config key includes the SVN branch.  "
+"If you rather want to set the commit URL for an entire SVN repository use "
+"svn-remote.<name>.pushurl instead."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:836
+#: en/git-svn.txt:280
 msgid ""
-"This can speed up operations like 'git diff' and 'git status' especially on "
-"filesystems like NFS that have weak caching semantics and thus relatively "
-"high IO latencies.  When enabled, Git will do the index comparison to the "
-"filesystem data in parallel, allowing overlapping IO's.  Defaults to true."
+"Using this option for any other purpose (don't ask) is very strongly "
+"discouraged."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:837
+#: en/git-svn.txt:281
 #, no-wrap
-msgid "core.createObject"
+msgid "--mergeinfo=<mergeinfo>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:841
+#: en/git-svn.txt:288
 msgid ""
-"You can set this to 'link', in which case a hardlink followed by a delete of "
-"the source are used to make sure that object creation will not overwrite "
-"existing objects."
+"Add the given merge information during the dcommit (e.g. `--mergeinfo=\"/"
+"branches/foo:1-10\"`). All svn server versions can store this information "
+"(as a property), and svn clients starting from version 1.5 can make use of "
+"it. To specify merge information from multiple branches, use a single space "
+"character between the branches (`--mergeinfo=\"/branches/foo:1-10 /branches/"
+"bar:3,5-6,8\"`)"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:845
-msgid ""
-"On some file system/operating system combinations, this is unreliable.  Set "
-"this config setting to 'rename' there; However, This will remove the check "
-"that makes sure that existing object files will not get overwritten."
+#: en/git-svn.txt:291
+#, no-wrap
+msgid "config key: svn.pushmergeinfo\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:851
+#: en/git-svn.txt:296
 msgid ""
-"When showing commit messages, also show notes which are stored in the given "
-"ref.  The ref must be fully qualified.  If the given ref does not exist, it "
-"is not an error but means that no notes should be printed."
+"This option will cause git-svn to attempt to automatically populate the svn:"
+"mergeinfo property in the SVN repository when possible. Currently, this can "
+"only be done when dcommitting non-fast-forward merges where all parents but "
+"the first have already been pushed into SVN."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:854
+#: en/git-svn.txt:301
 msgid ""
-"This setting defaults to \"refs/notes/commits\", and it can be overridden by "
-"the `GIT_NOTES_REF` environment variable.  See linkgit:git-notes[1]."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:855
-#, no-wrap
-msgid "core.sparseCheckout"
+"Ask the user to confirm that a patch set should actually be sent to SVN.  "
+"For each patch, one may answer \"yes\" (accept this patch), \"no\" (discard "
+"this patch), \"all\" (accept all patches), or \"quit\"."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:858
+#: en/git-svn.txt:304
 msgid ""
-"Enable \"sparse checkout\" feature. See section \"Sparse checkout\" in "
-"linkgit:git-read-tree[1] for more information."
+"'git svn dcommit' returns immediately if answer is \"no\" or \"quit\", "
+"without committing anything to SVN."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:859
+#: en/git-svn.txt:305
 #, no-wrap
-msgid "core.abbrev"
+msgid "'branch'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:865
-msgid ""
-"Set the length object names are abbreviated to.  If unspecified or set to "
-"\"auto\", an appropriate value is computed based on the approximate number "
-"of packed objects in your repository, which hopefully is enough for "
-"abbreviated object names to stay unique for some time."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:866
-#, no-wrap
-msgid "add.ignoreErrors"
+#: en/git-svn.txt:307
+msgid "Create a branch in the SVN repository."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:867
+#: en/git-svn.txt:309
 #, no-wrap
-msgid "add.ignore-errors (deprecated)"
+msgid "--message"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:873
-msgid ""
-"Tells 'git add' to continue adding files when some files cannot be added due "
-"to indexing errors. Equivalent to the `--ignore-errors` option of "
-"linkgit:git-add[1].  `add.ignore-errors` is deprecated, as it does not "
-"follow the usual naming convention for configuration variables."
+#: en/git-svn.txt:311
+msgid "Allows to specify the commit message."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:874
+#: en/git-svn.txt:313
 #, no-wrap
-msgid "alias.*"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:882
-msgid ""
-"Command aliases for the linkgit:git[1] command wrapper - e.g.  after "
-"defining \"alias.last = cat-file commit HEAD\", the invocation \"git last\" "
-"is equivalent to \"git cat-file commit HEAD\". To avoid confusion and "
-"troubles with script usage, aliases that hide existing Git commands are "
-"ignored. Arguments are split by spaces, the usual shell quoting and escaping "
-"is supported.  A quote pair or a backslash can be used to quote them."
+msgid "--tag"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:892
+#: en/git-svn.txt:316
 msgid ""
-"If the alias expansion is prefixed with an exclamation point, it will be "
-"treated as a shell command.  For example, defining \"alias.new = !gitk --all "
-"--not ORIG_HEAD\", the invocation \"git new\" is equivalent to running the "
-"shell command \"gitk --all --not ORIG_HEAD\".  Note that shell commands will "
-"be executed from the top-level directory of a repository, which may not "
-"necessarily be the current directory.  `GIT_PREFIX` is set as returned by "
-"running 'git rev-parse --show-prefix' from the original current "
-"directory. See linkgit:git-rev-parse[1]."
+"Create a tag by using the tags_subdir instead of the branches_subdir "
+"specified during git svn init."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:893
+#: en/git-svn.txt:317
 #, no-wrap
-msgid "am.keepcr"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:899
-msgid ""
-"If true, git-am will call git-mailsplit for patches in mbox format with "
-"parameter `--keep-cr`. In this case git-mailsplit will not remove `\\r` from "
-"lines ending with `\\r\\n`. Can be overridden by giving `--no-keep-cr` from "
-"the command line.  See linkgit:git-am[1], linkgit:git-mailsplit[1]."
+msgid "-d<path>"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:900
+#: en/git-svn.txt:318
 #, no-wrap
-msgid "am.threeWay"
+msgid "--destination=<path>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:907
+#: en/git-svn.txt:326
 msgid ""
-"By default, `git am` will fail if the patch does not apply cleanly. When set "
-"to true, this setting tells `git am` to fall back on 3-way merge if the "
-"patch records the identity of blobs it is supposed to apply to and we have "
-"those blobs available locally (equivalent to giving the `--3way` option from "
-"the command line). Defaults to `false`.  See linkgit:git-am[1]."
+"If more than one --branches (or --tags) option was given to the 'init' or "
+"'clone' command, you must provide the location of the branch (or tag) you "
+"wish to create in the SVN repository.  <path> specifies which path to use to "
+"create the branch or tag and should match the pattern on the left-hand side "
+"of one of the configured branches or tags refspecs.  You can see these "
+"refspecs with the commands"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:915
+#: en/git-svn.txt:329
 msgid ""
-"When set to 'change', tells 'git apply' to ignore changes in whitespace, in "
-"the same way as the `--ignore-space-change` option.  When set to one of: no, "
-"none, never, false tells 'git apply' to respect all whitespace differences.  "
-"See linkgit:git-apply[1]."
+"git config --get-all svn-remote.<name>.branches git config --get-all svn-"
+"remote.<name>.tags"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:919
+#: en/git-svn.txt:332
 msgid ""
-"Tells 'git apply' how to handle whitespaces, in the same way as the "
-"`--whitespace` option. See linkgit:git-apply[1]."
+"where <name> is the name of the SVN repository as specified by the -R option "
+"to 'init' (or \"svn\" by default)."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:920
+#: en/git-svn.txt:333
 #, no-wrap
-msgid "branch.autoSetupMerge"
+msgid "--username"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:931
+#: en/git-svn.txt:336
 msgid ""
-"Tells 'git branch' and 'git checkout' to set up new branches so that "
-"linkgit:git-pull[1] will appropriately merge from the starting point "
-"branch. Note that even if this option is not set, this behavior can be "
-"chosen per-branch using the `--track` and `--no-track` options. The valid "
-"settings are: `false` -- no automatic setup is done; `true` -- automatic "
-"setup is done when the starting point is a remote-tracking branch; `always` "
-"-- automatic setup is done when the starting point is either a local branch "
-"or remote-tracking branch. This option defaults to true."
+"Specify the SVN username to perform the commit as.  This option overrides "
+"the 'username' configuration property."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:932
+#: en/git-svn.txt:337
 #, no-wrap
-msgid "branch.autoSetupRebase"
+msgid "--commit-url"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:946
+#: en/git-svn.txt:342
 msgid ""
-"When a new branch is created with 'git branch' or 'git checkout' that tracks "
-"another branch, this variable tells Git to set up pull to rebase instead of "
-"merge (see \"branch.<name>.rebase\").  When `never`, rebase is never "
-"automatically set to true.  When `local`, rebase is set to true for tracked "
-"branches of other local branches.  When `remote`, rebase is set to true for "
-"tracked branches of remote-tracking branches.  When `always`, rebase will be "
-"set to true for all tracking branches.  See \"branch.autoSetupMerge\" for "
-"details on how to set up a branch to track another branch.  This option "
-"defaults to never."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:947
-#, no-wrap
-msgid "branch.<name>.remote"
+"Use the specified URL to connect to the destination Subversion repository.  "
+"This is useful in cases where the source SVN repository is read-only.  This "
+"option overrides configuration property 'commiturl'."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:957
-msgid ""
-"When on branch <name>, it tells 'git fetch' and 'git push' which remote to "
-"fetch from/push to.  The remote to push to may be overridden with "
-"`remote.pushDefault` (for all branches).  The remote to push to, for the "
-"current branch, may be further overridden by `branch.<name>.pushRemote`.  If "
-"no remote is configured, or if you are not on any branch, it defaults to "
-"`origin` for fetching and `remote.pushDefault` for pushing.  Additionally, "
-"`.` (a period) is the current local repository (a dot-repository), see "
-"`branch.<name>.merge`'s final note below."
+#: en/git-svn.txt:344
+msgid "git config --get-all svn-remote.<name>.commiturl"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:958
+#: en/git-svn.txt:346 en/rev-list-options.txt:870
 #, no-wrap
-msgid "branch.<name>.pushRemote"
+msgid "--parents"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:966
+#: en/git-svn.txt:350
 msgid ""
-"When on branch <name>, it overrides `branch.<name>.remote` for pushing.  It "
-"also overrides `remote.pushDefault` for pushing from branch <name>.  When "
-"you pull from one place (e.g. your upstream) and push to another place "
-"(e.g. your own publishing repository), you would want to set "
-"`remote.pushDefault` to specify the remote to push to for all branches, and "
-"use this option to override it for a specific branch."
+"Create parent folders. This parameter is equivalent to the parameter --"
+"parents on svn cp commands and is useful for non-standard repository layouts."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:967
+#: en/git-svn.txt:351
 #, no-wrap
-msgid "branch.<name>.merge"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:984
-msgid ""
-"Defines, together with branch.<name>.remote, the upstream branch for the "
-"given branch. It tells 'git fetch'/'git pull'/'git rebase' which branch to "
-"merge and can also affect 'git push' (see push.default).  When in branch "
-"<name>, it tells 'git fetch' the default refspec to be marked for merging in "
-"FETCH_HEAD. The value is handled like the remote part of a refspec, and must "
-"match a ref which is fetched from the remote given by "
-"\"branch.<name>.remote\".  The merge information is used by 'git pull' "
-"(which at first calls 'git fetch') to lookup the default branch for "
-"merging. Without this option, 'git pull' defaults to merge the first refspec "
-"fetched.  Specify multiple values to get an octopus merge.  If you wish to "
-"setup 'git pull' so that it merges into <name> from another branch in the "
-"local repository, you can point branch.<name>.merge to the desired branch, "
-"and use the relative path setting `.` (a period) for branch.<name>.remote."
+msgid "'tag'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:990
+#: en/git-svn.txt:354
 msgid ""
-"Sets default options for merging into branch <name>. The syntax and "
-"supported options are the same as those of linkgit:git-merge[1], but option "
-"values containing whitespace characters are currently not supported."
+"Create a tag in the SVN repository. This is a shorthand for 'branch -t'."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:991
+#: en/git-svn.txt:355
 #, no-wrap
-msgid "branch.<name>.rebase"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:996
-msgid ""
-"When true, rebase the branch <name> on top of the fetched branch, instead of "
-"merging the default branch from the default remote when \"git pull\" is "
-"run. See \"pull.rebase\" for doing this in a non branch-specific manner."
+msgid "'log'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1000 en/config.txt:2487
+#: en/git-svn.txt:358
 msgid ""
-"When preserve, also pass `--preserve-merges` along to 'git rebase' so that "
-"locally committed merge commits will not be flattened by running 'git pull'."
+"This should make it easy to look up svn log messages when svn users refer to "
+"-r/--revision numbers."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1002 en/config.txt:2489
-msgid "When the value is `interactive`, the rebase is run in interactive mode."
+#: en/git-svn.txt:360
+msgid "The following features from `svn log' are supported:"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:1006 en/config.txt:2493
+#. type: Labeled list
+#: en/git-svn.txt:362
 #, no-wrap
-msgid ""
-"*NOTE*: this is a possibly dangerous operation; do *not* use\n"
-"it unless you understand the implications (see linkgit:git-rebase[1]\n"
-"for details).\n"
+msgid "-r <n>[:<n>]"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1007
+#: en/git-svn.txt:363
 #, no-wrap
-msgid "branch.<name>.description"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:1012
-msgid ""
-"Branch description, can be edited with `git branch "
-"--edit-description`. Branch description is automatically added in the "
-"format-patch cover letter or request-pull summary."
+msgid "--revision=<n>[:<n>]"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1017
-msgid ""
-"Specify the command to invoke the specified browser. The specified command "
-"is evaluated in shell with the URLs passed as arguments. (See "
-"linkgit:git-web{litdd}browse[1].)"
+#: en/git-svn.txt:366
+msgid "is supported, non-numeric args are not: HEAD, NEXT, BASE, PREV, etc ..."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1022
+#: en/git-svn.txt:370
 msgid ""
-"Override the path for the given tool that may be used to browse HTML help "
-"(see `-w` option in linkgit:git-help[1]) or a working repository in gitweb "
-"(see linkgit:git-instaweb[1])."
+"it's not completely compatible with the --verbose output in svn log, but "
+"reasonably close."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1023
+#: en/git-svn.txt:370
 #, no-wrap
-msgid "clean.requireForce"
+msgid "--limit=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1026
-#, no-wrap
-msgid ""
-"A boolean to make git-clean do nothing unless given -f,\n"
-"-i or -n.   Defaults to true.\n"
+#: en/git-svn.txt:373
+msgid "is NOT the same as --max-count, doesn't count merged/excluded commits"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1027
-#, no-wrap
-msgid "color.branch"
+#. type: Plain text
+#: en/git-svn.txt:375
+msgid "supported"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1033
-msgid ""
-"A boolean to enable/disable color in the output of "
-"linkgit:git-branch[1]. May be set to `always`, `false` (or `never`) or "
-"`auto` (or `true`), in which case colors are used only when the output is to "
-"a terminal. If unset, then the value of `color.ui` is used (`auto` by "
-"default)."
+#: en/git-svn.txt:378
+msgid "New features:"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1034
+#: en/git-svn.txt:380
 #, no-wrap
-msgid "color.branch.<slot>"
+msgid "--show-commit"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1040
-msgid ""
-"Use customized color for branch coloration. `<slot>` is one of `current` "
-"(the current branch), `local` (a local branch), `remote` (a remote-tracking "
-"branch in refs/remotes/), `upstream` (upstream tracking branch), `plain` "
-"(other refs)."
+#: en/git-svn.txt:382
+msgid "shows the Git commit sha1, as well"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1041
+#: en/git-svn.txt:382 en/pretty-options.txt:31
 #, no-wrap
-msgid "color.diff"
+msgid "--oneline"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1049
-msgid ""
-"Whether to use ANSI escape sequences to add color to patches.  If this is "
-"set to `always`, linkgit:git-diff[1], linkgit:git-log[1], and "
-"linkgit:git-show[1] will use color for all patches.  If it is set to `true` "
-"or `auto`, those commands will only use color when output is to the "
-"terminal.  If unset, then the value of `color.ui` is used (`auto` by "
-"default)."
+#: en/git-svn.txt:384
+msgid "our version of --pretty=oneline"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1053
+#: en/git-svn.txt:389
 msgid ""
-"This does not affect linkgit:git-format-patch[1] or the "
-"'git-diff-{asterisk}' plumbing commands.  Can be overridden on the command "
-"line with the `--color[=<when>]` option."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1054
-#, no-wrap
-msgid "color.diff.<slot>"
+"SVN itself only stores times in UTC and nothing else. The regular svn client "
+"converts the UTC time to the local time (or based on the TZ= environment). "
+"This command has the same behaviour."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1062
-msgid ""
-"Use customized color for diff colorization.  `<slot>` specifies which part "
-"of the patch to use the specified color, and is one of `context` (context "
-"text - `plain` is a historical synonym), `meta` (metainformation), `frag` "
-"(hunk header), 'func' (function in hunk header), `old` (removed lines), "
-"`new` (added lines), `commit` (commit headers), or `whitespace` "
-"(highlighting whitespace errors)."
+#: en/git-svn.txt:391
+msgid "Any other arguments are passed directly to 'git log'"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1063
+#: en/git-svn.txt:392
 #, no-wrap
-msgid "color.decorate.<slot>"
+msgid "'blame'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1067
+#: en/git-svn.txt:399
 msgid ""
-"Use customized color for 'git log --decorate' output.  `<slot>` is one of "
-"`branch`, `remoteBranch`, `tag`, `stash` or `HEAD` for local branches, "
-"remote-tracking branches, tags, stash and HEAD, respectively."
+"Show what revision and author last modified each line of a file. The output "
+"of this mode is format-compatible with the output of `svn blame' by default. "
+"Like the SVN blame command, local uncommitted changes in the working tree "
+"are ignored; the version of the file in the HEAD revision is annotated. "
+"Unknown arguments are passed directly to 'git blame'."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1068
+#: en/git-svn.txt:400
 #, no-wrap
-msgid "color.grep"
+msgid "--git-format"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1073
+#: en/git-svn.txt:405
 msgid ""
-"When set to `always`, always highlight matches.  When `false` (or `never`), "
-"never.  When set to `true` or `auto`, use color only when the output is "
-"written to the terminal.  If unset, then the value of `color.ui` is used "
-"(`auto` by default)."
+"Produce output in the same format as 'git blame', but with SVN revision "
+"numbers instead of Git commit hashes. In this mode, changes that haven't "
+"been committed to SVN (including local working-copy edits) are shown as "
+"revision 0."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1074
+#: en/git-svn.txt:406
 #, no-wrap
-msgid "color.grep.<slot>"
+msgid "'find-rev'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1077
+#: en/git-svn.txt:411
 msgid ""
-"Use customized color for grep colorization.  `<slot>` specifies which part "
-"of the line to use the specified color, and is one of"
+"When given an SVN revision number of the form 'rN', returns the "
+"corresponding Git commit hash (this can optionally be followed by a tree-ish "
+"to specify which branch should be searched).  When given a tree-ish, returns "
+"the corresponding SVN revision number."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1079
+#: en/git-svn.txt:412
 #, no-wrap
-msgid "`context`"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:1081
-msgid "non-matching text in context lines (when using `-A`, `-B`, or `-C`)"
+msgid "-B"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1081
+#: en/git-svn.txt:413
 #, no-wrap
-msgid "`filename`"
+msgid "--before"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1083
-msgid "filename prefix (when not using `-h`)"
+#: en/git-svn.txt:417
+msgid ""
+"Don't require an exact match if given an SVN revision, instead find the "
+"commit corresponding to the state of the SVN repository (on the current "
+"branch) at the specified revision."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1083
+#: en/git-svn.txt:419
 #, no-wrap
-msgid "`function`"
+msgid "--after"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1085
-msgid "function name lines (when using `-p`)"
+#: en/git-svn.txt:423
+msgid ""
+"Don't require an exact match if given an SVN revision; if there is not an "
+"exact match return the closest match searching forward in the history."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1085
+#: en/git-svn.txt:424
 #, no-wrap
-msgid "`linenumber`"
+msgid "'set-tree'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1087
-msgid "line number prefix (when using `-n`)"
+#: en/git-svn.txt:432
+msgid ""
+"You should consider using 'dcommit' instead of this command.  Commit "
+"specified commit or tree objects to SVN.  This relies on your imported fetch "
+"data being up to date.  This makes absolutely no attempts to do patching "
+"when committing to SVN, it simply overwrites files with those specified in "
+"the tree or commit.  All merging is assumed to have taken place "
+"independently of 'git svn' functions."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1087
+#: en/git-svn.txt:433
 #, no-wrap
-msgid "`match`"
+msgid "'create-ignore'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1089
-msgid "matching text (same as setting `matchContext` and `matchSelected`)"
+#: en/git-svn.txt:438
+msgid ""
+"Recursively finds the svn:ignore property on directories and creates "
+"matching .gitignore files. The resulting files are staged to be committed, "
+"but are not committed. Use -r/--revision to refer to a specific revision."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1089
+#: en/git-svn.txt:439
 #, no-wrap
-msgid "`matchContext`"
+msgid "'show-ignore'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1091
-msgid "matching text in context lines"
+#: en/git-svn.txt:443
+msgid ""
+"Recursively finds and lists the svn:ignore property on directories.  The "
+"output is suitable for appending to the $GIT_DIR/info/exclude file."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1091
+#: en/git-svn.txt:444
 #, no-wrap
-msgid "`matchSelected`"
+msgid "'mkdirs'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1093
-msgid "matching text in selected lines"
+#: en/git-svn.txt:452
+msgid ""
+"Attempts to recreate empty directories that core Git cannot track based on "
+"information in $GIT_DIR/svn/<refname>/unhandled.log files.  Empty "
+"directories are automatically recreated when using \"git svn clone\" and "
+"\"git svn rebase\", so \"mkdirs\" is intended for use after commands like "
+"\"git checkout\" or \"git reset\".  (See the svn-remote.<name>.automkdirs "
+"config file option for more information.)"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1093
+#: en/git-svn.txt:453
 #, no-wrap
-msgid "`selected`"
+msgid "'commit-diff'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1095
-msgid "non-matching text in selected lines"
+#: en/git-svn.txt:462
+msgid ""
+"Commits the diff of two tree-ish arguments from the command-line.  This "
+"command does not rely on being inside a `git svn init`-ed repository.  This "
+"command takes three arguments, (a) the original tree to diff against, (b) "
+"the new tree result, (c) the URL of the target Subversion repository.  The "
+"final argument (URL) may be omitted if you are working from a 'git svn'-"
+"aware repository (that has been `init`-ed with 'git svn').  The -r<revision> "
+"option is required for this."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1095
-#, no-wrap
-msgid "`separator`"
+#. type: Plain text
+#: en/git-svn.txt:467
+msgid ""
+"The commit message is supplied either directly with the `-m` or `-F` option, "
+"or indirectly from the tag or commit when the second tree-ish denotes such "
+"an object, or it is requested by invoking an editor (see `--edit` option "
+"below)."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1098
+#: en/git-svn.txt:472
 msgid ""
-"separators between fields on a line (`:`, `-`, and `=`)  and between hunks "
-"(`--`)"
+"Use the given `msg` as the commit message. This option disables the `--edit` "
+"option."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1100
+#: en/git-svn.txt:473
 #, no-wrap
-msgid "color.interactive"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:1107
-msgid ""
-"When set to `always`, always use colors for interactive prompts and displays "
-"(such as those used by \"git-add --interactive\" and \"git-clean "
-"--interactive\"). When false (or `never`), never.  When set to `true` or "
-"`auto`, use colors only when the output is to the terminal. If unset, then "
-"the value of `color.ui` is used (`auto` by default)."
+msgid "-F <filename>"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1108
+#: en/git-svn.txt:474
 #, no-wrap
-msgid "color.interactive.<slot>"
+msgid "--file=<filename>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1113
+#: en/git-svn.txt:477
 msgid ""
-"Use customized color for 'git add --interactive' and 'git clean "
-"--interactive' output. `<slot>` may be `prompt`, `header`, `help` or "
-"`error`, for four distinct types of normal output from interactive commands."
+"Take the commit message from the given file. This option disables the `--"
+"edit` option."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1114
+#: en/git-svn.txt:478
 #, no-wrap
-msgid "color.pager"
+msgid "'info'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1117
+#: en/git-svn.txt:483
 msgid ""
-"A boolean to enable/disable colored output when the pager is in use (default "
-"is true)."
+"Shows information about a file or directory similar to what `svn info' "
+"provides.  Does not currently support a -r/--revision argument.  Use the --"
+"url option to output only the value of the 'URL:' field."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1118
+#: en/git-svn.txt:484
 #, no-wrap
-msgid "color.showBranch"
+msgid "'proplist'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1124
+#: en/git-svn.txt:488
 msgid ""
-"A boolean to enable/disable color in the output of "
-"linkgit:git-show-branch[1]. May be set to `always`, `false` (or `never`) or "
-"`auto` (or `true`), in which case colors are used only when the output is to "
-"a terminal. If unset, then the value of `color.ui` is used (`auto` by "
-"default)."
+"Lists the properties stored in the Subversion repository about a given file "
+"or directory.  Use -r/--revision to refer to a specific Subversion revision."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1125
+#: en/git-svn.txt:489
 #, no-wrap
-msgid "color.status"
+msgid "'propget'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1131
+#: en/git-svn.txt:492
 msgid ""
-"A boolean to enable/disable color in the output of "
-"linkgit:git-status[1]. May be set to `always`, `false` (or `never`) or "
-"`auto` (or `true`), in which case colors are used only when the output is to "
-"a terminal. If unset, then the value of `color.ui` is used (`auto` by "
-"default)."
+"Gets the Subversion property given as the first argument, for a file.  A "
+"specific revision can be specified with -r/--revision."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1132
+#: en/git-svn.txt:493
 #, no-wrap
-msgid "color.status.<slot>"
+msgid "'propset'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1142
+#: en/git-svn.txt:497
 msgid ""
-"Use customized color for status colorization. `<slot>` is one of `header` "
-"(the header text of the status message), `added` or `updated` (files which "
-"are added but not committed), `changed` (files which are changed but not "
-"added in the index), `untracked` (files which are not tracked by Git), "
-"`branch` (the current branch), `nobranch` (the color the 'no branch' warning "
-"is shown in, defaulting to red), or `unmerged` (files which have unmerged "
-"changes)."
+"Sets the Subversion property given as the first argument, to the value given "
+"as the second argument for the file given as the third argument."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1143
+#. type: delimited block -
+#: en/git-svn.txt:502
 #, no-wrap
-msgid "color.ui"
+msgid "git svn propset svn:keywords \"FreeBSD=%H\" devel/py-tipper/Makefile\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1154
+#: en/git-svn.txt:506
 msgid ""
-"This variable determines the default value for variables such as "
-"`color.diff` and `color.grep` that control the use of color per command "
-"family. Its scope will expand as more commands learn configuration to set a "
-"default for the `--color` option.  Set it to `false` or `never` if you "
-"prefer Git commands not to use color unless enabled explicitly with some "
-"other configuration or the `--color` option. Set it to `always` if you want "
-"all output not intended for machine consumption to use color, to `true` or "
-"`auto` (this is the default since Git 1.8.4) if you want such output to use "
-"color when written to the terminal."
+"This will set the property 'svn:keywords' to 'FreeBSD=%H' for the file "
+"'devel/py-tipper/Makefile'."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1155
+#: en/git-svn.txt:507
 #, no-wrap
-msgid "column.ui"
+msgid "'show-externals'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1159
+#: en/git-svn.txt:510
 msgid ""
-"Specify whether supported commands should output in columns.  This variable "
-"consists of a list of tokens separated by spaces or commas:"
+"Shows the Subversion externals.  Use -r/--revision to specify a specific "
+"revision."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1162
+#: en/git-svn.txt:514
 msgid ""
-"These options control when the feature should be enabled (defaults to "
-"'never'):"
+"Compress $GIT_DIR/svn/<refname>/unhandled.log files and remove $GIT_DIR/svn/"
+"<refname>/index files."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1164
+#: en/git-svn.txt:515
 #, no-wrap
-msgid "`always`"
+msgid "'reset'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1166
-msgid "always show in columns"
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1166
-#, no-wrap
-msgid "`never`"
+#: en/git-svn.txt:525
+msgid ""
+"Undoes the effects of 'fetch' back to the specified revision.  This allows "
+"you to re-'fetch' an SVN revision.  Normally the contents of an SVN revision "
+"should never change and 'reset' should not be necessary.  However, if SVN "
+"permissions change, or if you alter your --ignore-paths option, a 'fetch' "
+"may fail with \"not found in commit\" (file not previously visible) or "
+"\"checksum mismatch\" (missed a modification).  If the problem file cannot "
+"be ignored forever (with --ignore-paths) the only way to repair the repo is "
+"to use 'reset'."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1168
-msgid "never show in columns"
+#: en/git-svn.txt:530
+msgid ""
+"Only the rev_map and refs/remotes/git-svn are changed (see '$GIT_DIR/svn/\\*"
+"\\*/.rev_map.*' in the FILES section below for details).  Follow 'reset' "
+"with a 'fetch' and then 'git reset' or 'git rebase' to move local branches "
+"onto the new tree."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1168
+#: en/git-svn.txt:531
 #, no-wrap
-msgid "`auto`"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:1170
-msgid "show in columns if the output is to the terminal"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:1175
-msgid ""
-"These options control layout (defaults to 'column').  Setting any of these "
-"implies 'always' if none of 'always', 'never', or 'auto' are specified."
+msgid "-r <n>"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1177
+#: en/git-svn.txt:532
 #, no-wrap
-msgid "`column`"
+msgid "--revision=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1179
-msgid "fill columns before rows"
+#: en/git-svn.txt:535
+msgid ""
+"Specify the most recent revision to keep.  All later revisions are discarded."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1179
-#, no-wrap
-msgid "`row`"
+#. type: Plain text
+#: en/git-svn.txt:539
+msgid ""
+"Discard the specified revision as well, keeping the nearest parent instead."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1181
-msgid "fill rows before columns"
+#: en/git-svn.txt:541
+msgid ""
+"Assume you have local changes in \"master\", but you need to refetch \"r2\"."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1181
+#. type: delimited block -
+#: en/git-svn.txt:546
 #, no-wrap
-msgid "`plain`"
+msgid ""
+"    r1---r2---r3 remotes/git-svn\n"
+"                \\\n"
+"                 A---B master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1183
-msgid "show in one column"
+#: en/git-svn.txt:550
+msgid ""
+"Fix the ignore-paths or SVN permissions problem that caused \"r2\" to be "
+"incomplete in the first place.  Then:"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1187
+#: en/git-svn.txt:554
+#, no-wrap
 msgid ""
-"Finally, these options can be combined with a layout option (defaults to "
-"'nodense'):"
+"git svn reset -r2 -p\n"
+"git svn fetch\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1189
+#. type: delimited block -
+#: en/git-svn.txt:559
 #, no-wrap
-msgid "`dense`"
+msgid ""
+"    r1---r2'--r3' remotes/git-svn\n"
+"      \\\n"
+"       r2---r3---A---B master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1191
-msgid "make unequal size columns to utilize more space"
+#: en/git-svn.txt:564
+msgid ""
+"Then fixup \"master\" with 'git rebase'.  Do NOT use 'git merge' or your "
+"history will not be compatible with a future 'dcommit'!"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1191
+#. type: Plain text
+#: en/git-svn.txt:567
 #, no-wrap
-msgid "`nodense`"
+msgid "git rebase --onto remotes/git-svn A^ master\n"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:1193
-msgid "make equal size columns"
+#. type: delimited block -
+#: en/git-svn.txt:572
+#, no-wrap
+msgid ""
+"    r1---r2'--r3' remotes/git-svn\n"
+"                \\\n"
+"                 A'--B' master\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1195
+#: en/git-svn.txt:577
 #, no-wrap
-msgid "column.branch"
+msgid "--shared[=(false|true|umask|group|all|world|everybody)]"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1198
+#: en/git-svn.txt:581
 msgid ""
-"Specify whether to output branch listing in `git branch` in columns.  See "
-"`column.ui` for details."
+"Only used with the 'init' command.  These are passed directly to 'git init'."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1199
+#: en/git-svn.txt:582
 #, no-wrap
-msgid "column.clean"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:1202
-msgid ""
-"Specify the layout when list items in `git clean -i`, which always shows "
-"files and directories in columns. See `column.ui` for details."
+msgid "-r <arg>"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1203
+#: en/git-svn.txt:583
 #, no-wrap
-msgid "column.status"
+msgid "--revision <arg>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1206
-msgid ""
-"Specify whether to output untracked files in `git status` in columns.  See "
-"`column.ui` for details."
+#: en/git-svn.txt:585
+msgid "Used with the 'fetch' command."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1207
-#, no-wrap
-msgid "column.tag"
+#. type: Plain text
+#: en/git-svn.txt:589
+msgid ""
+"This allows revision ranges for partial/cauterized history to be supported.  "
+"$NUMBER, $NUMBER1:$NUMBER2 (numeric ranges), $NUMBER:HEAD, and BASE:$NUMBER "
+"are all supported."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1210
+#: en/git-svn.txt:593
 msgid ""
-"Specify whether to output tag listing in `git tag` in columns.  See "
-"`column.ui` for details."
+"This can allow you to make partial mirrors when running fetch; but is "
+"generally not recommended because history will be skipped and lost."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1211
+#: en/git-svn.txt:594
 #, no-wrap
-msgid "commit.cleanup"
+msgid "-"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1219
-msgid ""
-"This setting overrides the default of the `--cleanup` option in `git "
-"commit`. See linkgit:git-commit[1] for details. Changing the default can be "
-"useful when you always want to keep lines that begin with comment character "
-"`#` in your log message, in which case you would do `git config "
-"commit.cleanup whitespace` (note that you will have to remove the help lines "
-"that begin with `#` in the commit log template yourself, if you do this)."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1220
-#, no-wrap
-msgid "commit.gpgSign"
+#: en/git-svn.txt:597
+msgid "Only used with the 'set-tree' command."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1227
+#: en/git-svn.txt:601
 msgid ""
-"A boolean to specify whether all commits should be GPG signed.  Use of this "
-"option when doing operations such as rebase can result in a large number of "
-"commits being signed. It may be convenient to use an agent to avoid typing "
-"your GPG passphrase several times."
+"Read a list of commits from stdin and commit them in reverse order.  Only "
+"the leading sha1 is read from each line, so 'git rev-list --pretty=oneline' "
+"output can be used."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1228
+#: en/git-svn.txt:602
 #, no-wrap
-msgid "commit.status"
+msgid "--rmdir"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1232
-msgid ""
-"A boolean to enable/disable inclusion of status information in the commit "
-"message template when using an editor to prepare the commit message.  "
-"Defaults to true."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1233
-#, no-wrap
-msgid "commit.template"
+#: en/git-svn.txt:604 en/git-svn.txt:617 en/git-svn.txt:628
+msgid "Only used with the 'dcommit', 'set-tree' and 'commit-diff' commands."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1236
+#: en/git-svn.txt:610
 msgid ""
-"Specify the pathname of a file to use as the template for new commit "
-"messages."
+"Remove directories from the SVN tree if there are no files left behind.  SVN "
+"can version empty directories, and they are not removed by default if there "
+"are no files left in them.  Git cannot version empty directories.  Enabling "
+"this flag will make the commit to SVN act like Git."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1237
+#. type: Plain text
+#: en/git-svn.txt:613
 #, no-wrap
-msgid "commit.verbose"
+msgid "config key: svn.rmdir\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1240
+#: en/git-svn.txt:621
 msgid ""
-"A boolean or int to specify the level of verbose with `git commit`.  See "
-"linkgit:git-commit[1]."
+"Edit the commit message before committing to SVN.  This is off by default "
+"for objects that are commits, and forced on when committing tree objects."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1241
+#. type: Plain text
+#: en/git-svn.txt:624
 #, no-wrap
-msgid "credential.helper"
+msgid "config key: svn.edit\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1247
+#: en/git-svn.txt:631
 msgid ""
-"Specify an external helper to be called when a username or password "
-"credential is needed; the helper may consult external storage to avoid "
-"prompting the user for the credentials. Note that multiple helpers may be "
-"defined. See linkgit:gitcredentials[7] for details."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1248
-#, no-wrap
-msgid "credential.useHttpPath"
+"They are both passed directly to 'git diff-tree'; see linkgit:git-diff-"
+"tree[1] for more information."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1252
+#: en/git-svn.txt:635
+#, no-wrap
 msgid ""
-"When acquiring credentials, consider the \"path\" component of an http or "
-"https URL to be important. Defaults to false. See linkgit:gitcredentials[7] "
-"for more information."
+"config key: svn.l\n"
+"config key: svn.findcopiesharder\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1253
+#: en/git-svn.txt:636
 #, no-wrap
-msgid "credential.username"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:1257
-msgid ""
-"If no username is set for a network authentication, use this username by "
-"default. See credential.<context>.* below, and linkgit:gitcredentials[7]."
+msgid "-A<filename>"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1258
+#: en/git-svn.txt:637
 #, no-wrap
-msgid "credential.<url>.*"
+msgid "--authors-file=<filename>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1264
+#: en/git-svn.txt:640
 msgid ""
-"Any of the credential.* options above can be applied selectively to some "
-"credentials. For example \"credential.https://example.com.username\" would "
-"set the default username only for https connections to example.com. See "
-"linkgit:gitcredentials[7] for details on how URLs are matched."
+"Syntax is compatible with the file used by 'git cvsimport' but an empty "
+"email address can be supplied with '<>':"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1265
+#. type: delimited block -
+#: en/git-svn.txt:643
 #, no-wrap
-msgid "credentialCache.ignoreSIGHUP"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:1267
-msgid "Tell git-credential-cache--daemon to ignore SIGHUP, instead of quitting."
+msgid "\tloginname = Joe User <user@example.com>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1281
+#: en/git-svn.txt:650
 msgid ""
-"Specify the command to invoke the specified diff tool.  The specified "
-"command is evaluated in shell with the following variables available: "
-"'LOCAL' is set to the name of the temporary file containing the contents of "
-"the diff pre-image and 'REMOTE' is set to the name of the temporary file "
-"containing the contents of the diff post-image."
+"If this option is specified and 'git svn' encounters an SVN committer name "
+"that does not exist in the authors-file, 'git svn' will abort operation. The "
+"user will then have to add the appropriate entry.  Re-running the previous "
+"'git svn' command after the authors-file is modified should continue "
+"operation."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1293
-msgid ""
-"If the number of objects imported by linkgit:git-fast-import[1] is below "
-"this limit, then the objects will be unpacked into loose object files.  "
-"However if the number of imported objects equals or exceeds this limit then "
-"the pack will be stored as a pack.  Storing the pack from a fast-import can "
-"make the import operation complete faster, especially on slow filesystems.  "
-"If not set, the value of `transfer.unpackLimit` is used instead."
+#: en/git-svn.txt:653
+#, no-wrap
+msgid "config key: svn.authorsfile\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1294
+#: en/git-svn.txt:654
 #, no-wrap
-msgid "fetch.recurseSubmodules"
+msgid "--authors-prog=<filename>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1302
+#: en/git-svn.txt:661
 msgid ""
-"This option can be either set to a boolean value or to 'on-demand'.  Setting "
-"it to a boolean changes the behavior of fetch and pull to unconditionally "
-"recurse into submodules when set to true or to not recurse at all when set "
-"to false. When set to 'on-demand' (the default value), fetch and pull will "
-"only recurse into a populated submodule when its superproject retrieves a "
-"commit that updates the submodule's reference."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1303
-#, no-wrap
-msgid "fetch.fsckObjects"
+"If this option is specified, for each SVN committer name that does not exist "
+"in the authors file, the given file is executed with the committer name as "
+"the first argument.  The program is expected to return a single line of the "
+"form \"Name <email>\" or \"Name <>\", which will be treated as if included "
+"in the authors file."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1309
+#: en/git-svn.txt:666
 msgid ""
-"If it is set to true, git-fetch-pack will check all fetched objects. It will "
-"abort in the case of a malformed object or a broken link. The result of an "
-"abort are only dangling objects.  Defaults to false. If not set, the value "
-"of `transfer.fsckObjects` is used instead."
+"Due to historical reasons a relative 'filename' is first searched relative "
+"to the current directory for 'init' and 'clone' and relative to the root of "
+"the working tree for 'fetch'. If 'filename' is not found, it is searched "
+"like any other command in '$PATH'."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1310
+#. type: Plain text
+#: en/git-svn.txt:669
 #, no-wrap
-msgid "fetch.unpackLimit"
+msgid "config key: svn.authorsProg\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1320
+#: en/git-svn.txt:674
 msgid ""
-"If the number of objects fetched over the Git native transfer is below this "
-"limit, then the objects will be unpacked into loose object files. However if "
-"the number of received objects equals or exceeds this limit then the "
-"received pack will be stored as a pack, after adding any missing delta "
-"bases.  Storing the pack from a push can make the push operation complete "
-"faster, especially on slow filesystems.  If not set, the value of "
-"`transfer.unpackLimit` is used instead."
+"Make 'git svn' less verbose. Specify a second time to make it even less "
+"verbose."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1321
+#: en/git-svn.txt:677
 #, no-wrap
-msgid "fetch.prune"
+msgid "-s<strategy>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1324
-msgid ""
-"If true, fetch will automatically behave as if the `--prune` option was "
-"given on the command line.  See also `remote.<name>.prune`."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1325
-#, no-wrap
-msgid "fetch.output"
+#: en/git-svn.txt:682
+msgid "These are only used with the 'dcommit' and 'rebase' commands."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1329
+#: en/git-svn.txt:685
 msgid ""
-"Control how ref update status is printed. Valid values are `full` and "
-"`compact`. Default value is `full`. See section OUTPUT in "
-"linkgit:git-fetch[1] for detail."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1330
-#, no-wrap
-msgid "format.attach"
+"Passed directly to 'git rebase' when using 'dcommit' if a 'git reset' cannot "
+"be used (see 'dcommit')."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1336
+#: en/git-svn.txt:690
 msgid ""
-"Enable multipart/mixed attachments as the default for 'format-patch'.  The "
-"value can also be a double quoted string which will enable attachments as "
-"the default and set the value as the boundary.  See the --attach option in "
-"linkgit:git-format-patch[1]."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1337
-#, no-wrap
-msgid "format.from"
+"This can be used with the 'dcommit', 'rebase', 'branch' and 'tag' commands."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1346
+#: en/git-svn.txt:693
 msgid ""
-"Provides the default value for the `--from` option to format-patch.  Accepts "
-"a boolean value, or a name and email address.  If false, format-patch "
-"defaults to `--no-from`, using commit authors directly in the \"From:\" "
-"field of patch mails.  If true, format-patch defaults to `--from`, using "
-"your committer identity in the \"From:\" field of patch mails and including "
-"a \"From:\" field in the body of the patch mail if different.  If set to a "
-"non-boolean value, format-patch uses that value instead of your committer "
-"identity.  Defaults to false."
+"For 'dcommit', print out the series of Git arguments that would show which "
+"diffs would be committed to SVN."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1347
-#, no-wrap
-msgid "format.numbered"
+#. type: Plain text
+#: en/git-svn.txt:697
+msgid ""
+"For 'rebase', display the local branch associated with the upstream svn "
+"repository associated with the current branch and the URL of svn repository "
+"that will be fetched from."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1353
+#: en/git-svn.txt:700
 msgid ""
-"A boolean which can enable or disable sequence numbers in patch subjects.  "
-"It defaults to \"auto\" which enables it only if there is more than one "
-"patch.  It can be enabled or disabled for all messages by setting it to "
-"\"true\" or \"false\".  See --numbered option in "
-"linkgit:git-format-patch[1]."
+"For 'branch' and 'tag', display the urls that will be used for copying when "
+"creating the branch or tag."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1354
+#: en/git-svn.txt:701
 #, no-wrap
-msgid "format.headers"
+msgid "--use-log-author"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1357
+#: en/git-svn.txt:705
 msgid ""
-"Additional email headers to include in a patch to be submitted by mail.  See "
-"linkgit:git-format-patch[1]."
+"When retrieving svn commits into Git (as part of 'fetch', 'rebase', or "
+"'dcommit' operations), look for the first `From:` or `Signed-off-by:` line "
+"in the log message and use that as the author string."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1358
+#. type: Plain text
+#: en/git-svn.txt:708
 #, no-wrap
-msgid "format.to"
+msgid "config key: svn.useLogAuthor\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1359
+#: en/git-svn.txt:709
 #, no-wrap
-msgid "format.cc"
+msgid "--add-author-from"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1363
+#: en/git-svn.txt:715
 msgid ""
-"Additional recipients to include in a patch to be submitted by mail.  See "
-"the --to and --cc options in linkgit:git-format-patch[1]."
+"When committing to svn from Git (as part of 'set-tree' or 'dcommit' "
+"operations), if the existing log message doesn't already have a `From:` or "
+"`Signed-off-by:` line, append a `From:` line based on the Git commit's "
+"author string.  If you use this, then `--use-log-author` will retrieve a "
+"valid author string for all commits."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1364
+#. type: Plain text
+#: en/git-svn.txt:718
 #, no-wrap
-msgid "format.subjectPrefix"
+msgid "config key: svn.addAuthorFrom\n"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:1367
-msgid ""
-"The default for format-patch is to output files with the '[PATCH]' subject "
-"prefix. Use this variable to change that prefix."
+#. type: Title -
+#: en/git-svn.txt:720
+#, no-wrap
+msgid "ADVANCED OPTIONS"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1368
+#: en/git-svn.txt:722
 #, no-wrap
-msgid "format.signature"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:1373
-msgid ""
-"The default for format-patch is to output a signature containing the Git "
-"version number. Use this variable to change that default.  Set this variable "
-"to the empty string (\"\") to suppress signature generation."
+msgid "-i<GIT_SVN_ID>"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1374
+#: en/git-svn.txt:723
 #, no-wrap
-msgid "format.signatureFile"
+msgid "--id <GIT_SVN_ID>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1377
+#: en/git-svn.txt:728
 msgid ""
-"Works just like format.signature except the contents of the file specified "
-"by this variable will be used as the signature."
+"This sets GIT_SVN_ID (instead of using the environment).  This allows the "
+"user to override the default refname to fetch from when tracking a single "
+"URL.  The 'log' and 'dcommit' commands no longer require this switch as an "
+"argument."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1378
+#: en/git-svn.txt:729
 #, no-wrap
-msgid "format.suffix"
+msgid "-R<remote name>"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:1382
-msgid ""
-"The default for format-patch is to output files with the suffix "
-"`.patch`. Use this variable to change that suffix (make sure to include the "
-"dot if you want it)."
+#. type: Labeled list
+#: en/git-svn.txt:730
+#, no-wrap
+msgid "--svn-remote <remote name>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1387
+#: en/git-svn.txt:734
 msgid ""
-"The default pretty format for log/show/whatchanged command, See "
-"linkgit:git-log[1], linkgit:git-show[1], linkgit:git-whatchanged[1]."
+"Specify the [svn-remote \"<remote name>\"] section to use, this allows SVN "
+"multiple repositories to be tracked.  Default: \"svn\""
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1388
+#: en/git-svn.txt:735
 #, no-wrap
-msgid "format.thread"
+msgid "--follow-parent"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1397
+#: en/git-svn.txt:750
 msgid ""
-"The default threading style for 'git format-patch'.  Can be a boolean value, "
-"or `shallow` or `deep`.  `shallow` threading makes every mail a reply to the "
-"head of the series, where the head is chosen from the cover letter, the "
-"`--in-reply-to`, and the first patch mail, in this order.  `deep` threading "
-"makes every mail a reply to the previous one.  A true boolean value is the "
-"same as `shallow`, and a false value disables threading."
+"This option is only relevant if we are tracking branches (using one of the "
+"repository layout options --trunk, --tags, --branches, --stdlayout). For "
+"each tracked branch, try to find out where its revision was copied from, and "
+"set a suitable parent in the first Git commit for the branch.  This is "
+"especially helpful when we're tracking a directory that has been moved "
+"around within the repository.  If this feature is disabled, the branches "
+"created by 'git svn' will all be linear and not share any history, meaning "
+"that there will be no information on where branches were branched off or "
+"merged.  However, following long/convoluted histories can take a long time, "
+"so disabling this feature may speed up the cloning process. This feature is "
+"enabled by default, use --no-follow-parent to disable it."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1398
+#. type: Plain text
+#: en/git-svn.txt:753
 #, no-wrap
-msgid "format.signOff"
+msgid "config key: svn.followparent\n"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:1404
-msgid ""
-"A boolean value which lets you enable the `-s/--signoff` option of "
-"format-patch by default. *Note:* Adding the Signed-off-by: line to a patch "
-"should be a conscious act and means that you certify you have the rights to "
-"submit this work under the same open source license.  Please see the "
-"'SubmittingPatches' document for further discussion."
+#. type: Title -
+#: en/git-svn.txt:755
+#, no-wrap
+msgid "CONFIG FILE-ONLY OPTIONS"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1405
+#: en/git-svn.txt:757
 #, no-wrap
-msgid "format.coverLetter"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:1409
-msgid ""
-"A boolean that controls whether to generate a cover-letter when format-patch "
-"is invoked, but in addition can be set to \"auto\", to generate a "
-"cover-letter only when there's more than one patch."
+msgid "svn.noMetadata"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1410
+#: en/git-svn.txt:758
 #, no-wrap
-msgid "format.outputDirectory"
+msgid "svn-remote.<name>.noMetadata"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1413
-msgid ""
-"Set a custom directory to store the resulting files instead of the current "
-"working directory."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1414
-#, no-wrap
-msgid "format.useAutoBase"
+#: en/git-svn.txt:760
+msgid "This gets rid of the 'git-svn-id:' lines at the end of every commit."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1417
+#: en/git-svn.txt:765
 msgid ""
-"A boolean value which lets you enable the `--base=auto` option of "
-"format-patch by default."
+"This option can only be used for one-shot imports as 'git svn' will not be "
+"able to fetch again without metadata. Additionally, if you lose your "
+"'$GIT_DIR/svn/\\*\\*/.rev_map.*' files, 'git svn' will not be able to "
+"rebuild them."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1418
-#, no-wrap
-msgid "filter.<driver>.clean"
+#. type: Plain text
+#: en/git-svn.txt:769
+msgid ""
+"The 'git svn log' command will not work on repositories using this, either.  "
+"Using this conflicts with the 'useSvmProps' option for (hopefully) obvious "
+"reasons."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1422
+#: en/git-svn.txt:777
 msgid ""
-"The command which is used to convert the content of a worktree file to a "
-"blob upon checkin.  See linkgit:gitattributes[5] for details."
+"This option is NOT recommended as it makes it difficult to track down old "
+"references to SVN revision numbers in existing documentation, bug reports "
+"and archives.  If you plan to eventually migrate from SVN to Git and are "
+"certain about dropping SVN history, consider linkgit:git-filter-branch[1] "
+"instead.  filter-branch also allows reformatting of metadata for ease-of-"
+"reading and rewriting authorship info for non-\"svn.authorsFile\" users."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1423
+#: en/git-svn.txt:778
 #, no-wrap
-msgid "filter.<driver>.smudge"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:1427
-msgid ""
-"The command which is used to convert the content of a blob object to a "
-"worktree file upon checkout.  See linkgit:gitattributes[5] for details."
+msgid "svn.useSvmProps"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1428
+#: en/git-svn.txt:779
 #, no-wrap
-msgid "fsck.<msg-id>"
+msgid "svn-remote.<name>.useSvmProps"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1431
+#: en/git-svn.txt:782
 msgid ""
-"Allows overriding the message type (error, warn or ignore) of a specific "
-"message ID such as `missingEmail`."
+"This allows 'git svn' to re-map repository URLs and UUIDs from mirrors "
+"created using SVN::Mirror (or svk) for metadata."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1435
+#: en/git-svn.txt:790
 msgid ""
-"For convenience, fsck prefixes the error/warning with the message ID, e.g.  "
-"\"missingEmail: invalid author/committer line - missing email\" means that "
-"setting `fsck.missingEmail = ignore` will hide that issue."
+"If an SVN revision has a property, \"svm:headrev\", it is likely that the "
+"revision was created by SVN::Mirror (also used by SVK).  The property "
+"contains a repository UUID and a revision.  We want to make it look like we "
+"are mirroring the original URL, so introduce a helper function that returns "
+"the original identity URL and UUID, and use it when generating metadata in "
+"commit messages."
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:1438
-msgid ""
-"This feature is intended to support working with legacy repositories which "
-"cannot be repaired without disruptive changes."
+#. type: Labeled list
+#: en/git-svn.txt:791
+#, no-wrap
+msgid "svn.useSvnsyncProps"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1439
+#: en/git-svn.txt:792
 #, no-wrap
-msgid "fsck.skipList"
+msgid "svn-remote.<name>.useSvnsyncprops"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1446 en/config.txt:2679
+#: en/git-svn.txt:796
 msgid ""
-"The path to a sorted list of object names (i.e. one SHA-1 per line) that are "
-"known to be broken in a non-fatal way and should be ignored. This feature is "
-"useful when an established project should be accepted despite early commits "
-"containing errors that can be safely ignored such as invalid committer email "
-"addresses.  Note: corrupt objects cannot be skipped with this setting."
+"Similar to the useSvmProps option; this is for users of the svnsync(1) "
+"command distributed with SVN 1.4.x and later."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1447
+#: en/git-svn.txt:797
 #, no-wrap
-msgid "gc.aggressiveDepth"
+msgid "svn-remote.<name>.rewriteRoot"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1451
+#: en/git-svn.txt:803
 msgid ""
-"The depth parameter used in the delta compression algorithm used by 'git gc "
-"--aggressive'.  This defaults to 50."
+"This allows users to create repositories from alternate URLs.  For example, "
+"an administrator could run 'git svn' on the server locally (accessing via "
+"file://) but wish to distribute the repository with a public http:// or "
+"svn:// URL in the metadata so users of it will see the public URL."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1452
+#: en/git-svn.txt:804
 #, no-wrap
-msgid "gc.aggressiveWindow"
+msgid "svn-remote.<name>.rewriteUUID"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1456
+#: en/git-svn.txt:809
 msgid ""
-"The window size parameter used in the delta compression algorithm used by "
-"'git gc --aggressive'.  This defaults to 250."
+"Similar to the useSvmProps option; this is for users who need to remap the "
+"UUID manually. This may be useful in situations where the original UUID is "
+"not available via either useSvmProps or useSvnsyncProps."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1457
+#: en/git-svn.txt:810
 #, no-wrap
-msgid "gc.auto"
+msgid "svn-remote.<name>.pushurl"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1463
+#: en/git-svn.txt:819
 msgid ""
-"When there are approximately more than this many loose objects in the "
-"repository, `git gc --auto` will pack them.  Some Porcelain commands use "
-"this command to perform a light-weight garbage collection from time to "
-"time.  The default value is 6700.  Setting this to 0 disables it."
+"Similar to Git's `remote.<name>.pushurl`, this key is designed to be used in "
+"cases where 'url' points to an SVN repository via a read-only transport, to "
+"provide an alternate read/write transport. It is assumed that both keys "
+"point to the same repository. Unlike 'commiturl', 'pushurl' is a base path. "
+"If either 'commiturl' or 'pushurl' could be used, 'commiturl' takes "
+"precedence."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1464
+#: en/git-svn.txt:820
 #, no-wrap
-msgid "gc.autoPackLimit"
+msgid "svn.brokenSymlinkWorkaround"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1469
+#: en/git-svn.txt:828
 msgid ""
-"When there are more than this many packs that are not marked with `*.keep` "
-"file in the repository, `git gc --auto` consolidates them into one larger "
-"pack.  The default\tvalue is 50.  Setting this to 0 disables it."
+"This disables potentially expensive checks to workaround broken symlinks "
+"checked into SVN by broken clients.  Set this option to \"false\" if you "
+"track a SVN repository with many empty blobs that are not symlinks.  This "
+"option may be changed while 'git svn' is running and take effect on the next "
+"revision fetched.  If unset, 'git svn' assumes this option to be \"true\"."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1470
+#: en/git-svn.txt:829
 #, no-wrap
-msgid "gc.autoDetach"
+msgid "svn.pathnameencoding"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1473
+#: en/git-svn.txt:834
 msgid ""
-"Make `git gc --auto` return immediately and run in background if the system "
-"supports it. Default is true."
+"This instructs git svn to recode pathnames to a given encoding.  It can be "
+"used by windows users and by those who work in non-utf8 locales to avoid "
+"corrupted file names with non-ASCII characters.  Valid encodings are the "
+"ones supported by Perl's Encode module."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1474
+#: en/git-svn.txt:835
 #, no-wrap
-msgid "gc.logExpiry"
+msgid "svn-remote.<name>.automkdirs"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1479
+#: en/git-svn.txt:842
 msgid ""
-"If the file gc.log exists, then `git gc --auto` won't run unless that file "
-"is more than 'gc.logExpiry' old.  Default is \"1.day\".  See "
-"`gc.pruneExpire` for more ways to specify its value."
+"Normally, the \"git svn clone\" and \"git svn rebase\" commands attempt to "
+"recreate empty directories that are in the Subversion repository.  If this "
+"option is set to \"false\", then empty directories will only be created if "
+"the \"git svn mkdirs\" command is run explicitly.  If unset, 'git svn' "
+"assumes this option to be \"true\"."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1480
-#, no-wrap
-msgid "gc.packRefs"
+#. type: Plain text
+#: en/git-svn.txt:847
+msgid ""
+"Since the noMetadata, rewriteRoot, rewriteUUID, useSvnsyncProps and "
+"useSvmProps options all affect the metadata generated and used by 'git svn'; "
+"they *must* be set in the configuration file before any history is imported "
+"and these settings should never be changed once they are set."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1487
+#: en/git-svn.txt:851
 msgid ""
-"Running `git pack-refs` in a repository renders it unclonable by Git "
-"versions prior to 1.5.1.2 over dumb transports such as HTTP.  This variable "
-"determines whether 'git gc' runs `git pack-refs`. This can be set to "
-"`notbare` to enable it within all non-bare repos or it can be set to a "
-"boolean value.  The default is `true`."
+"Additionally, only one of these options can be used per svn-remote section "
+"because they affect the 'git-svn-id:' metadata line, except for rewriteRoot "
+"and rewriteUUID which can be used together."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1488
+#. type: Title -
+#: en/git-svn.txt:854
 #, no-wrap
-msgid "gc.pruneExpire"
+msgid "BASIC EXAMPLES"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1496
+#: en/git-svn.txt:858
 msgid ""
-"When 'git gc' is run, it will call 'prune --expire 2.weeks.ago'.  Override "
-"the grace period with this config variable.  The value \"now\" may be used "
-"to disable this grace period and always prune unreachable objects "
-"immediately, or \"never\" may be used to suppress pruning.  This feature "
-"helps prevent corruption when 'git gc' runs concurrently with another "
-"process writing to the repository; see the \"NOTES\" section of "
-"linkgit:git-gc[1]."
+"Tracking and contributing to the trunk of a Subversion-managed project "
+"(ignoring tags and branches):"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1497
+#. type: delimited block -
+#: en/git-svn.txt:876
 #, no-wrap
-msgid "gc.worktreePruneExpire"
+msgid ""
+"# Clone a repo (like git clone):\n"
+"\tgit svn clone http://svn.example.com/project/trunk\n"
+"# Enter the newly cloned directory:\n"
+"\tcd trunk\n"
+"# You should be on master branch, double-check with 'git branch'\n"
+"\tgit branch\n"
+"# Do some work and commit locally to Git:\n"
+"\tgit commit ...\n"
+"# Something is committed to SVN, rebase your local changes against the\n"
+"# latest changes in SVN:\n"
+"\tgit svn rebase\n"
+"# Now commit your changes (that were committed previously using Git) to SVN,\n"
+"# as well as automatically updating your working HEAD:\n"
+"\tgit svn dcommit\n"
+"# Append svn:ignore settings to the default Git exclude file:\n"
+"\tgit svn show-ignore >> .git/info/exclude\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1504
+#: en/git-svn.txt:880
 msgid ""
-"When 'git gc' is run, it calls 'git worktree prune --expire 3.months.ago'.  "
-"This config variable can be used to set a different grace period. The value "
-"\"now\" may be used to disable the grace period and prune "
-"`$GIT_DIR/worktrees` immediately, or \"never\" may be used to suppress "
-"pruning."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1505
-#, no-wrap
-msgid "gc.reflogExpire"
+"Tracking and contributing to an entire Subversion-managed project (complete "
+"with a trunk, tags and branches):"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1506
+#. type: delimited block -
+#: en/git-svn.txt:895
 #, no-wrap
-msgid "gc.<pattern>.reflogExpire"
+msgid ""
+"# Clone a repo with standard SVN directory layout (like git clone):\n"
+"\tgit svn clone http://svn.example.com/project --stdlayout --prefix svn/\n"
+"# Or, if the repo uses a non-standard directory layout:\n"
+"\tgit svn clone http://svn.example.com/project -T tr -b branch -t tag --prefix svn/\n"
+"# View all branches and tags you have cloned:\n"
+"\tgit branch -r\n"
+"# Create a new branch in SVN\n"
+"\tgit svn branch waldo\n"
+"# Reset your master to trunk (or any other branch, replacing 'trunk'\n"
+"# with the appropriate name):\n"
+"\tgit reset --hard svn/trunk\n"
+"# You may only dcommit to one branch/tag/trunk at a time.  The usage\n"
+"# of dcommit/rebase/show-ignore should be the same as above.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1513
+#: en/git-svn.txt:903
 msgid ""
-"'git reflog expire' removes reflog entries older than this time; defaults to "
-"90 days. The value \"now\" expires all entries immediately, and \"never\" "
-"suppresses expiration altogether. With \"<pattern>\" (e.g.  \"refs/stash\") "
-"in the middle the setting applies only to the refs that match the <pattern>."
+"The initial 'git svn clone' can be quite time-consuming (especially for "
+"large Subversion repositories). If multiple people (or one person with "
+"multiple machines) want to use 'git svn' to interact with the same "
+"Subversion repository, you can do the initial 'git svn clone' to a "
+"repository on a server and have each person clone that repository with 'git "
+"clone':"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1514
+#. type: delimited block -
+#: en/git-svn.txt:924
 #, no-wrap
-msgid "gc.reflogExpireUnreachable"
+msgid ""
+"# Do the initial import on a server\n"
+"\tssh server \"cd /pub && git svn clone http://svn.example.com/project [options...]\"\n"
+"# Clone locally - make sure the refs/remotes/ space matches the server\n"
+"\tmkdir project\n"
+"\tcd project\n"
+"\tgit init\n"
+"\tgit remote add origin server:/pub/project\n"
+"\tgit config --replace-all remote.origin.fetch '+refs/remotes/*:refs/remotes/*'\n"
+"\tgit fetch\n"
+"# Prevent fetch/pull from remote Git server in the future,\n"
+"# we only want to use git svn for future updates\n"
+"\tgit config --remove-section remote.origin\n"
+"# Create a local branch from one of the branches just fetched\n"
+"\tgit checkout -b master FETCH_HEAD\n"
+"# Initialize 'git svn' locally (be sure to use the same URL and\n"
+"# --stdlayout/-T/-b/-t/--prefix options as were used on server)\n"
+"\tgit svn init http://svn.example.com/project [options...]\n"
+"# Pull the latest changes from Subversion\n"
+"\tgit svn rebase\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1515
+#. type: Title -
+#: en/git-svn.txt:927
 #, no-wrap
-msgid "gc.<pattern>.reflogExpireUnreachable"
+msgid "REBASE VS. PULL/MERGE"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1523
+#: en/git-svn.txt:933
 msgid ""
-"'git reflog expire' removes reflog entries older than this time and are not "
-"reachable from the current tip; defaults to 30 days. The value \"now\" "
-"expires all entries immediately, and \"never\" suppresses expiration "
-"altogether.  With \"<pattern>\" (e.g. \"refs/stash\")  in the middle, the "
-"setting applies only to the refs that match the <pattern>."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1524
-#, no-wrap
-msgid "gc.rerereResolved"
+"Prefer to use 'git svn rebase' or 'git rebase', rather than 'git pull' or "
+"'git merge' to synchronize unintegrated commits with a 'git svn' branch. "
+"Doing so will keep the history of unintegrated commits linear with respect "
+"to the upstream SVN repository and allow the use of the preferred 'git svn "
+"dcommit' subcommand to push unintegrated commits back into SVN."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1528
+#: en/git-svn.txt:941
 msgid ""
-"Records of conflicted merge you resolved earlier are kept for this many days "
-"when 'git rerere gc' is run.  The default is 60 days.  See "
-"linkgit:git-rerere[1]."
+"Originally, 'git svn' recommended that developers pulled or merged from the "
+"'git svn' branch.  This was because the author favored `git svn set-tree B` "
+"to commit a single head rather than the `git svn set-tree A..B` notation to "
+"commit multiple commits. Use of 'git pull' or 'git merge' with `git svn set-"
+"tree A..B` will cause non-linear history to be flattened when committing "
+"into SVN and this can lead to merge commits unexpectedly reversing previous "
+"commits in SVN."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1529
+#. type: Title -
+#: en/git-svn.txt:943
 #, no-wrap
-msgid "gc.rerereUnresolved"
+msgid "MERGE TRACKING"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1533
+#: en/git-svn.txt:950
 msgid ""
-"Records of conflicted merge you have not resolved are kept for this many "
-"days when 'git rerere gc' is run.  The default is 15 days.  See "
-"linkgit:git-rerere[1]."
+"While 'git svn' can track copy history (including branches and tags) for "
+"repositories adopting a standard layout, it cannot yet represent merge "
+"history that happened inside git back upstream to SVN users.  Therefore it "
+"is advised that users keep history as linear as possible inside Git to ease "
+"compatibility with SVN (see the CAVEATS section below)."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1534
+#. type: Title -
+#: en/git-svn.txt:952
 #, no-wrap
-msgid "gitcvs.commitMsgAnnotation"
+msgid "HANDLING OF SVN BRANCHES"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1537
+#: en/git-svn.txt:960
 msgid ""
-"Append this string to each commit message. Set to empty string to disable "
-"this feature. Defaults to \"via git-CVS emulator\"."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1538
-#, no-wrap
-msgid "gitcvs.enabled"
+"If 'git svn' is configured to fetch branches (and --follow-branches is in "
+"effect), it sometimes creates multiple Git branches for one SVN branch, "
+"where the additional branches have names of the form 'branchname@nnn' (with "
+"nnn an SVN revision number).  These additional branches are created if 'git "
+"svn' cannot find a parent commit for the first commit in an SVN branch, to "
+"connect the branch to the history of the other branches."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1541
+#: en/git-svn.txt:976
 msgid ""
-"Whether the CVS server interface is enabled for this repository.  See "
-"linkgit:git-cvsserver[1]."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1542
-#, no-wrap
-msgid "gitcvs.logFile"
+"Normally, the first commit in an SVN branch consists of a copy operation. "
+"'git svn' will read this commit to get the SVN revision the branch was "
+"created from. It will then try to find the Git commit that corresponds to "
+"this SVN revision, and use that as the parent of the branch. However, it is "
+"possible that there is no suitable Git commit to serve as parent.  This will "
+"happen, among other reasons, if the SVN branch is a copy of a revision that "
+"was not fetched by 'git svn' (e.g. because it is an old revision that was "
+"skipped with `--revision`), or if in SVN a directory was copied that is not "
+"tracked by 'git svn' (such as a branch that is not tracked at all, or a "
+"subdirectory of a tracked branch). In these cases, 'git svn' will still "
+"create a Git branch, but instead of using an existing Git commit as the "
+"parent of the branch, it will read the SVN history of the directory the "
+"branch was copied from and create appropriate Git commits.  This is "
+"indicated by the message \"Initializing parent: <branchname>\"."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1545
+#: en/git-svn.txt:983
 msgid ""
-"Path to a log file where the CVS server interface well... logs various "
-"stuff. See linkgit:git-cvsserver[1]."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1546
-#, no-wrap
-msgid "gitcvs.usecrlfattr"
+"Additionally, it will create a special branch named '<branchname>@<SVN-"
+"Revision>', where <SVN-Revision> is the SVN revision number the branch was "
+"copied from.  This branch will point to the newly created parent commit of "
+"the branch.  If in SVN the branch was deleted and later recreated from a "
+"different version, there will be multiple such branches with an '@'."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1556
+#: en/git-svn.txt:986
 msgid ""
-"If true, the server will look up the end-of-line conversion attributes for "
-"files to determine the `-k` modes to use. If the attributes force Git to "
-"treat a file as text, the `-k` mode will be left blank so CVS clients will "
-"treat it as text. If they suppress text conversion, the file will be set "
-"with '-kb' mode, which suppresses any newline munging the client might "
-"otherwise do. If the attributes do not allow the file type to be determined, "
-"then `gitcvs.allBinary` is used. See linkgit:gitattributes[5]."
+"Note that this may mean that multiple Git commits are created for a single "
+"SVN revision."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1557
-#, no-wrap
-msgid "gitcvs.allBinary"
+#. type: Plain text
+#: en/git-svn.txt:996
+msgid ""
+"An example: in an SVN repository with a standard trunk/tags/branches layout, "
+"a directory trunk/sub is created in r.100.  In r.200, trunk/sub is branched "
+"by copying it to branches/. 'git svn clone -s' will then create a branch "
+"'sub'. It will also create new Git commits for r.100 through r.199 and use "
+"these as the history of branch 'sub'. Thus there will be two Git commits for "
+"each revision from r.100 to r.199 (one containing trunk/, one containing "
+"trunk/sub/). Finally, it will create a branch 'sub@200' pointing to the new "
+"parent commit of branch 'sub' (i.e. the commit for r.200 and trunk/sub/)."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1566
+#: en/git-svn.txt:1006
 msgid ""
-"This is used if `gitcvs.usecrlfattr` does not resolve the correct '-kb' mode "
-"to use. If true, all unresolved files are sent to the client in mode "
-"'-kb'. This causes the client to treat them as binary files, which "
-"suppresses any newline munging it otherwise might do. Alternatively, if it "
-"is set to \"guess\", then the contents of the file are examined to decide if "
-"it is binary, similar to `core.autocrlf`."
+"For the sake of simplicity and interoperating with Subversion, it is "
+"recommended that all 'git svn' users clone, fetch and dcommit directly from "
+"the SVN server, and avoid all 'git clone'/'pull'/'merge'/'push' operations "
+"between Git repositories and branches.  The recommended method of exchanging "
+"code between Git branches and users is 'git format-patch' and 'git am', or "
+"just 'dcommit'ing to the SVN repository."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1574
+#: en/git-svn.txt:1012
 msgid ""
-"Database used by git-cvsserver to cache revision information derived from "
-"the Git repository. The exact meaning depends on the used database driver, "
-"for SQLite (which is the default driver) this is a filename. Supports "
-"variable substitution (see linkgit:git-cvsserver[1] for details). May not "
-"contain semicolons (`;`).  Default: '%Ggitcvs.%m.sqlite'"
+"Running 'git merge' or 'git pull' is NOT recommended on a branch you plan to "
+"'dcommit' from because Subversion users cannot see any merges you've made.  "
+"Furthermore, if you merge or pull from a Git branch that is a mirror of an "
+"SVN branch, 'dcommit' may commit to the wrong branch."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1582
+#: en/git-svn.txt:1015
 msgid ""
-"Used Perl DBI driver. You can specify any available driver for this here, "
-"but it might not work. git-cvsserver is tested with 'DBD::SQLite', reported "
-"to work with 'DBD::Pg', and reported *not* to work with "
-"'DBD::mysql'. Experimental feature.  May not contain double colons "
-"(`:`). Default: 'SQLite'.  See linkgit:git-cvsserver[1]."
+"If you do merge, note the following rule: 'git svn dcommit' will attempt to "
+"commit on top of the SVN commit named in"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1583
+#. type: delimited block -
+#: en/git-svn.txt:1017
 #, no-wrap
-msgid "gitcvs.dbUser, gitcvs.dbPass"
+msgid "git log --grep=^git-svn-id: --first-parent -1\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1588
+#: en/git-svn.txt:1022
 msgid ""
-"Database user and password. Only useful if setting `gitcvs.dbDriver`, since "
-"SQLite has no concept of database users and/or passwords.  'gitcvs.dbUser' "
-"supports variable substitution (see linkgit:git-cvsserver[1] for details)."
+"You 'must' therefore ensure that the most recent commit of the branch you "
+"want to dcommit to is the 'first' parent of the merge.  Chaos will ensue "
+"otherwise, especially if the first parent is an older commit on the same SVN "
+"branch."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1595
+#: en/git-svn.txt:1027
 msgid ""
-"Database table name prefix.  Prepended to the names of any database tables "
-"used, allowing a single database to be used for several repositories.  "
-"Supports variable substitution (see linkgit:git-cvsserver[1] for details).  "
-"Any non-alphabetic characters will be replaced with underscores."
+"'git clone' does not clone branches under the refs/remotes/ hierarchy or any "
+"'git svn' metadata, or config.  So repositories created and managed with "
+"using 'git svn' should use 'rsync' for cloning, if cloning is to be done at "
+"all."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1601
+#: en/git-svn.txt:1032
 msgid ""
-"All gitcvs variables except for `gitcvs.usecrlfattr` and `gitcvs.allBinary` "
-"can also be specified as 'gitcvs.<access_method>.<varname>' (where "
-"'access_method' is one of \"ext\" and \"pserver\") to make them apply only "
-"for the given access method."
+"Since 'dcommit' uses rebase internally, any Git branches you 'git push' to "
+"before 'dcommit' on will require forcing an overwrite of the existing ref on "
+"the remote repository.  This is generally considered bad practice, see the "
+"linkgit:git-push[1] documentation for details."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1602
-#, no-wrap
-msgid "gitweb.category"
+#. type: Plain text
+#: en/git-svn.txt:1037
+msgid ""
+"Do not use the --amend option of linkgit:git-commit[1] on a change you've "
+"already dcommitted.  It is considered bad practice to --amend commits you've "
+"already pushed to a remote repository for other users, and dcommit with SVN "
+"is analogous to that."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1603
-#, no-wrap
-msgid "gitweb.description"
+#. type: Plain text
+#: en/git-svn.txt:1052
+msgid ""
+"When cloning an SVN repository, if none of the options for describing the "
+"repository layout is used (--trunk, --tags, --branches, --stdlayout), 'git "
+"svn clone' will create a Git repository with completely linear history, "
+"where branches and tags appear as separate directories in the working copy.  "
+"While this is the easiest way to get a copy of a complete repository, for "
+"projects with many branches it will lead to a working copy many times larger "
+"than just the trunk. Thus for projects using the standard directory "
+"structure (trunk/branches/tags), it is recommended to clone with option `--"
+"stdlayout`. If the project uses a non-standard structure, and/or if branches "
+"and tags are not required, it is easiest to only clone one directory "
+"(typically trunk), without giving any repository layout options.  If the "
+"full history with branches and tags is required, the options `--trunk` / `--"
+"branches` / `--tags` must be used."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1604
-#, no-wrap
-msgid "gitweb.owner"
+#. type: Plain text
+#: en/git-svn.txt:1059
+msgid ""
+"When using multiple --branches or --tags, 'git svn' does not automatically "
+"handle name collisions (for example, if two branches from different paths "
+"have the same name, or if a branch and a tag have the same name).  In these "
+"cases, use 'init' to set up your Git repository then, before your first "
+"'fetch', edit the $GIT_DIR/config file so that the branches and tags are "
+"associated with different name spaces.  For example:"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1605
+#. type: Plain text
+#: en/git-svn.txt:1062
 #, no-wrap
-msgid "gitweb.url"
+msgid ""
+"\tbranches = stable/*:refs/remotes/svn/stable/*\n"
+"\tbranches = debug/*:refs/remotes/svn/debug/*\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1607
-msgid "See linkgit:gitweb[1] for description."
+#: en/git-svn.txt:1068
+msgid ""
+"We ignore all SVN properties except svn:executable.  Any unhandled "
+"properties are logged to $GIT_DIR/svn/<refname>/unhandled.log"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1608
-#, no-wrap
-msgid "gitweb.avatar"
+#. type: Plain text
+#: en/git-svn.txt:1075
+msgid ""
+"Renamed and copied directories are not detected by Git and hence not tracked "
+"when committing to SVN.  I do not plan on adding support for this as it's "
+"quite difficult and time-consuming to get working for all the possible "
+"corner cases (Git doesn't do it, either).  Committing renamed and copied "
+"files is fully supported if they're similar enough for Git to detect them."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1609
-#, no-wrap
-msgid "gitweb.blame"
+#. type: Plain text
+#: en/git-svn.txt:1081
+msgid ""
+"In SVN, it is possible (though discouraged) to commit changes to a tag "
+"(because a tag is just a directory copy, thus technically the same as a "
+"branch). When cloning an SVN repository, 'git svn' cannot know if such a "
+"commit to a tag will happen in the future. Thus it acts conservatively and "
+"imports all SVN tags as branches, prefixing the tag name with 'tags/'."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1610
-#, no-wrap
-msgid "gitweb.grep"
+#. type: Plain text
+#: en/git-svn.txt:1092
+msgid ""
+"'git svn' stores [svn-remote] configuration information in the repository "
+"$GIT_DIR/config file.  It is similar the core Git [remote] sections except "
+"'fetch' keys do not accept glob arguments; but they are instead handled by "
+"the 'branches' and 'tags' keys.  Since some SVN repositories are oddly "
+"configured with multiple projects glob expansions such those listed below "
+"are allowed:"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1611
+#. type: delimited block -
+#: en/git-svn.txt:1101
 #, no-wrap
-msgid "gitweb.highlight"
+msgid ""
+"[svn-remote \"project-a\"]\n"
+"\turl = http://server.org/svn\n"
+"\tfetch = trunk/project-a:refs/remotes/project-a/trunk\n"
+"\tbranches = branches/*/project-a:refs/remotes/project-a/branches/*\n"
+"\tbranches = branches/release_*:refs/remotes/project-a/branches/release_*\n"
+"\tbranches = branches/re*se:refs/remotes/project-a/branches/*\n"
+"\ttags = tags/*/project-a:refs/remotes/project-a/tags/*\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1612
+#. type: Plain text
+#: en/git-svn.txt:1109
 #, no-wrap
-msgid "gitweb.patches"
+msgid ""
+"Keep in mind that the '\\*' (asterisk) wildcard of the local ref\n"
+"(right of the ':') *must* be the farthest right path component;\n"
+"however the remote wildcard may be anywhere as long as it's an\n"
+"independent path component (surrounded by '/' or EOL).   This\n"
+"type of configuration is not automatically created by 'init' and\n"
+"should be manually entered with a text-editor or using 'git config'.\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1613
-#, no-wrap
-msgid "gitweb.pickaxe"
+#. type: Plain text
+#: en/git-svn.txt:1111
+msgid "Also note that only one asterisk is allowed per word. For example:"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1614
+#. type: Plain text
+#: en/git-svn.txt:1113
 #, no-wrap
-msgid "gitweb.remote_heads"
+msgid "\tbranches = branches/re*se:refs/remotes/project-a/branches/*\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1615
-#, no-wrap
-msgid "gitweb.showSizes"
+#. type: Plain text
+#: en/git-svn.txt:1115
+msgid "will match branches 'release', 'rese', 're123se', however"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1616
+#. type: Plain text
+#: en/git-svn.txt:1117
 #, no-wrap
-msgid "gitweb.snapshot"
+msgid "\tbranches = branches/re*s*e:refs/remotes/project-a/branches/*\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1618
-msgid "See linkgit:gitweb.conf[5] for description."
+#: en/git-svn.txt:1119
+msgid "will produce an error."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1636
+#: en/git-svn.txt:1122
 msgid ""
-"Number of grep worker threads to use.  See `grep.threads` in "
-"linkgit:git-grep[1] for more information."
+"It is also possible to fetch a subset of branches or tags by using a comma-"
+"separated list of names within braces. For example:"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1641
+#. type: delimited block -
+#: en/git-svn.txt:1129
 #, no-wrap
-msgid "gpg.program"
+msgid ""
+"[svn-remote \"huge-project\"]\n"
+"\turl = http://server.org/svn\n"
+"\tfetch = trunk/src:refs/remotes/trunk\n"
+"\tbranches = branches/{red,green}/src:refs/remotes/project-a/branches/*\n"
+"\ttags = tags/{1.0,2.0}/src:refs/remotes/project-a/tags/*\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1651
-msgid ""
-"Use this custom program instead of \"`gpg`\" found on `$PATH` when making or "
-"verifying a PGP signature. The program must support the same command-line "
-"interface as GPG, namely, to verify a detached signature, \"`gpg --verify "
-"$file - <$signature`\" is run, and the program is expected to signal a good "
-"signature by exiting with code 0, and to generate an ASCII-armored detached "
-"signature, the standard input of \"`gpg -bsau $key`\" is fed with the "
-"contents to be signed, and the program is expected to send the result to its "
-"standard output."
+#: en/git-svn.txt:1132
+msgid "Multiple fetch, branches, and tags keys are supported:"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1652
+#. type: delimited block -
+#: en/git-svn.txt:1141
 #, no-wrap
-msgid "gui.commitMsgWidth"
+msgid ""
+"[svn-remote \"messy-repo\"]\n"
+"\turl = http://server.org/svn\n"
+"\tfetch = trunk/project-a:refs/remotes/project-a/trunk\n"
+"\tfetch = branches/demos/june-project-a-demo:refs/remotes/project-a/demos/june-demo\n"
+"\tbranches = branches/server/*:refs/remotes/project-a/branches/*\n"
+"\tbranches = branches/demos/2011/*:refs/remotes/project-a/2011-demos/*\n"
+"\ttags = tags/server/*:refs/remotes/project-a/tags/*\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1655
+#: en/git-svn.txt:1145
 msgid ""
-"Defines how wide the commit message window is in the "
-"linkgit:git-gui[1]. \"75\" is the default."
+"Creating a branch in such a configuration requires disambiguating which "
+"location to use using the -d or --destination flag:"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1656
+#. type: delimited block -
+#: en/git-svn.txt:1148
 #, no-wrap
-msgid "gui.diffContext"
+msgid "$ git svn branch -d branches/server release-2-3-0\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1659
+#: en/git-svn.txt:1154
 msgid ""
-"Specifies how many context lines should be used in calls to diff made by the "
-"linkgit:git-gui[1]. The default is \"5\"."
+"Note that git-svn keeps track of the highest revision in which a branch or "
+"tag has appeared. If the subset of branches or tags is changed after "
+"fetching, then $GIT_DIR/svn/.metadata must be manually edited to remove (or "
+"reset) branches-maxRev and/or tags-maxRev as appropriate."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1660
+#: en/git-svn.txt:1157
 #, no-wrap
-msgid "gui.displayUntracked"
+msgid "$GIT_DIR/svn/\\*\\*/.rev_map.*"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1663
+#: en/git-svn.txt:1163
 msgid ""
-"Determines if linkgit:git-gui[1] shows untracked files in the file list. The "
-"default is \"true\"."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1664
-#, no-wrap
-msgid "gui.encoding"
+"Mapping between Subversion revision numbers and Git commit names.  In a "
+"repository where the noMetadata option is not set, this can be rebuilt from "
+"the git-svn-id: lines that are at the end of every commit (see the 'svn."
+"noMetadata' section above for details)."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1671
+#: en/git-svn.txt:1167
 msgid ""
-"Specifies the default encoding to use for displaying of file contents in "
-"linkgit:git-gui[1] and linkgit:gitk[1].  It can be overridden by setting the "
-"'encoding' attribute for relevant files (see linkgit:gitattributes[5]).  If "
-"this option is not set, the tools default to the locale encoding."
+"'git svn fetch' and 'git svn rebase' automatically update the rev_map if it "
+"is missing or not up to date.  'git svn reset' automatically rewinds it."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1672
+#. type: Title =
+#: en/git-symbolic-ref.txt:2
 #, no-wrap
-msgid "gui.matchTrackingBranch"
+msgid "git-symbolic-ref(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1676
-msgid ""
-"Determines if new branches created with linkgit:git-gui[1] should default to "
-"tracking remote branches with matching names or not. Default: \"false\"."
+#: en/git-symbolic-ref.txt:7
+msgid "git-symbolic-ref - Read, modify and delete symbolic refs"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1677
+#. type: Plain text
+#: en/git-symbolic-ref.txt:14
 #, no-wrap
-msgid "gui.newBranchTemplate"
+msgid ""
+"'git symbolic-ref' [-m <reason>] <name> <ref>\n"
+"'git symbolic-ref' [-q] [--short] <name>\n"
+"'git symbolic-ref' --delete [-q] <name>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1680
+#: en/git-symbolic-ref.txt:21
 msgid ""
-"Is used as suggested name when creating new branches using the "
-"linkgit:git-gui[1]."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1681
-#, no-wrap
-msgid "gui.pruneDuringFetch"
+"Given one argument, reads which branch head the given symbolic ref refers to "
+"and outputs its path, relative to the `.git/` directory.  Typically you "
+"would give `HEAD` as the <name> argument to see which branch your working "
+"tree is on."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1684
+#: en/git-symbolic-ref.txt:24
 msgid ""
-"\"true\" if linkgit:git-gui[1] should prune remote-tracking branches when "
-"performing a fetch. The default value is \"false\"."
+"Given two arguments, creates or updates a symbolic ref <name> to point at "
+"the given branch <ref>."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1685
-#, no-wrap
-msgid "gui.trustmtime"
+#. type: Plain text
+#: en/git-symbolic-ref.txt:27
+msgid ""
+"Given `--delete` and an additional argument, deletes the given symbolic ref."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1688
+#: en/git-symbolic-ref.txt:31
 msgid ""
-"Determines if linkgit:git-gui[1] should trust the file modification "
-"timestamp or not. By default the timestamps are not trusted."
+"A symbolic ref is a regular file that stores a string that begins with `ref: "
+"refs/`.  For example, your `.git/HEAD` is a regular file whose contents is "
+"`ref: refs/heads/master`."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1689
-#, no-wrap
-msgid "gui.spellingDictionary"
+#. type: Plain text
+#: en/git-symbolic-ref.txt:38
+msgid "Delete the symbolic ref <name>."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1693
+#: en/git-symbolic-ref.txt:44
 msgid ""
-"Specifies the dictionary used for spell checking commit messages in the "
-"linkgit:git-gui[1]. When set to \"none\" spell checking is turned off."
+"Do not issue an error message if the <name> is not a symbolic ref but a "
+"detached HEAD; instead exit with non-zero status silently."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1694
-#, no-wrap
-msgid "gui.fastCopyBlame"
+#. type: Plain text
+#: en/git-symbolic-ref.txt:48
+msgid ""
+"When showing the value of <name> as a symbolic ref, try to shorten the "
+"value, e.g. from `refs/heads/master` to `master`."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1698
+#: en/git-symbolic-ref.txt:52
 msgid ""
-"If true, 'git gui blame' uses `-C` instead of `-C -C` for original location "
-"detection. It makes blame significantly faster on huge repositories at the "
-"expense of less thorough copy detection."
+"Update the reflog for <name> with <reason>.  This is valid only when "
+"creating or updating a symbolic ref."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1699
-#, no-wrap
-msgid "gui.copyBlameThreshold"
+#. type: Plain text
+#: en/git-symbolic-ref.txt:62
+msgid ""
+"In the past, `.git/HEAD` was a symbolic link pointing at `refs/heads/"
+"master`.  When we wanted to switch to another branch, we did `ln -sf refs/"
+"heads/newbranch .git/HEAD`, and when we wanted to find out which branch we "
+"are on, we did `readlink .git/HEAD`.  But symbolic links are not entirely "
+"portable, so they are now deprecated and symbolic refs (as described above) "
+"are used by default."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1703
+#: en/git-symbolic-ref.txt:66
 msgid ""
-"Specifies the threshold to use in 'git gui blame' original location "
-"detection, measured in alphanumeric characters. See the linkgit:git-blame[1] "
-"manual for more information on copy detection."
+"'git symbolic-ref' will exit with status 0 if the contents of the symbolic "
+"ref were printed correctly, with status 1 if the requested name is not a "
+"symbolic ref, or 128 if another error occurs."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1704
+#. type: Title =
+#: en/git-tag.txt:2
 #, no-wrap
-msgid "gui.blamehistoryctx"
+msgid "git-tag(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1709
-msgid ""
-"Specifies the radius of history context in days to show in linkgit:gitk[1] "
-"for the selected commit, when the `Show History Context` menu item is "
-"invoked from 'git gui blame'. If this variable is set to zero, the whole "
-"history is shown."
+#: en/git-tag.txt:7
+msgid "git-tag - Create, list, delete or verify a tag object signed with GPG"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1710
+#. type: Plain text
+#: en/git-tag.txt:20
 #, no-wrap
-msgid "guitool.<name>.cmd"
+msgid ""
+"'git tag' [-a | -s | -u <keyid>] [-f] [-m <msg> | -F <file>] [-e]\n"
+"\t<tagname> [<commit> | <object>]\n"
+"'git tag' -d <tagname>...\n"
+"'git tag' [-n[<num>]] -l [--contains <commit>] [--no-contains <commit>]\n"
+"\t[--points-at <object>] [--column[=<options>] | --no-column]\n"
+"\t[--create-reflog] [--sort=<key>] [--format=<format>]\n"
+"\t[--[no-]merged [<commit>]] [<pattern>...]\n"
+"'git tag' -v [--format=<format>] <tagname>...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1718
+#: en/git-tag.txt:26
 msgid ""
-"Specifies the shell command line to execute when the corresponding item of "
-"the linkgit:git-gui[1] `Tools` menu is invoked. This option is mandatory for "
-"every tool. The command is executed from the root of the working directory, "
-"and in the environment it receives the name of the tool as `GIT_GUITOOL`, "
-"the name of the currently selected file as 'FILENAME', and the name of the "
-"current branch as 'CUR_BRANCH' (if the head is detached, 'CUR_BRANCH' is "
-"empty)."
+"Add a tag reference in `refs/tags/`, unless `-d/-l/-v` is given to delete, "
+"list or verify tags."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1719
-#, no-wrap
-msgid "guitool.<name>.needsFile"
+#. type: Plain text
+#: en/git-tag.txt:28
+msgid "Unless `-f` is given, the named tag must not yet exist."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1722
+#: en/git-tag.txt:33
 msgid ""
-"Run the tool only if a diff is selected in the GUI. It guarantees that "
-"'FILENAME' is not empty."
+"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."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1723
-#, no-wrap
-msgid "guitool.<name>.noConsole"
+#. type: Plain text
+#: en/git-tag.txt:36
+msgid ""
+"If `-m <msg>` or `-F <file>` is given and `-a`, `-s`, and `-u <keyid>` are "
+"absent, `-a` is implied."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1726
-msgid "Run the command silently, without creating a window to display its output."
+#: en/git-tag.txt:39
+msgid ""
+"Otherwise, a tag reference that points directly at the given object (i.e., a "
+"lightweight tag) is created."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1727
-#, no-wrap
-msgid "guitool.<name>.noRescan"
+#. type: Plain text
+#: en/git-tag.txt:45
+msgid ""
+"A GnuPG signed tag object will be created when `-s` or `-u <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. \tThe configuration variable "
+"`gpg.program` is used to specify custom GnuPG binary."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1730
+#: en/git-tag.txt:51
 msgid ""
-"Don't rescan the working directory for changes after the tool finishes "
-"execution."
+"Tag objects (created with `-a`, `-s`, or `-u`) are called \"annotated\" "
+"tags; they contain a creation date, the tagger name and e-mail, a tagging "
+"message, and an optional GnuPG signature. Whereas a \"lightweight\" tag is "
+"simply a name for an object (usually a commit object)."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1731
-#, no-wrap
-msgid "guitool.<name>.confirm"
+#. type: Plain text
+#: en/git-tag.txt:56
+msgid ""
+"Annotated tags are meant for release while lightweight tags are meant for "
+"private or temporary object labels. For this reason, some git commands for "
+"naming objects (like `git describe`) will ignore lightweight tags by default."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1733
-msgid "Show a confirmation dialog before actually running the tool."
+#: en/git-tag.txt:63
+msgid "Make an unsigned, annotated tag object"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1734
+#: en/git-tag.txt:65
 #, no-wrap
-msgid "guitool.<name>.argPrompt"
+msgid "--sign"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1741
-msgid ""
-"Request a string argument from the user, and pass it to the tool through the "
-"`ARGS` environment variable. Since requesting an argument implies "
-"confirmation, the 'confirm' option has no effect if this is enabled. If the "
-"option is set to 'true', 'yes', or '1', the dialog uses a built-in generic "
-"prompt; otherwise the exact value of the variable is used."
+#: en/git-tag.txt:67
+msgid "Make a GPG-signed tag, using the default e-mail address's key."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1742
+#: en/git-tag.txt:68
 #, no-wrap
-msgid "guitool.<name>.revPrompt"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:1746
-msgid ""
-"Request a single valid revision from the user, and set the `REVISION` "
-"environment variable. In other aspects this option is similar to "
-"'argPrompt', and can be used together with it."
+msgid "-u <keyid>"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1747
+#: en/git-tag.txt:69
 #, no-wrap
-msgid "guitool.<name>.revUnmerged"
+msgid "--local-user=<keyid>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1751
-msgid ""
-"Show only unmerged branches in the 'revPrompt' subdialog.  This is useful "
-"for tools similar to merge or rebase, but not for things like checkout or "
-"reset."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1752
-#, no-wrap
-msgid "guitool.<name>.title"
+#: en/git-tag.txt:71
+msgid "Make a GPG-signed tag, using the given key."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1755
-msgid ""
-"Specifies the title to use for the prompt dialog. The default is the tool "
-"name."
+#: en/git-tag.txt:75
+msgid "Replace an existing tag with the given name (instead of failing)"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1756
-#, no-wrap
-msgid "guitool.<name>.prompt"
+#. type: Plain text
+#: en/git-tag.txt:79
+msgid "Delete existing tags with the given names."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1760
-msgid ""
-"Specifies the general prompt string to display at the top of the dialog, "
-"before subsections for 'argPrompt' and 'revPrompt'.  The default value "
-"includes the actual command."
+#: en/git-tag.txt:83
+msgid "Verify the GPG signature of the given tag names."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1761
+#: en/git-tag.txt:84
 #, no-wrap
-msgid "help.browser"
+msgid "-n<num>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1764
+#: en/git-tag.txt:87
 msgid ""
-"Specify the browser that will be used to display help in the 'web' "
-"format. See linkgit:git-help[1]."
+"<num> specifies how many lines from the annotation, if any, are printed when "
+"using -l. Implies `--list`."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1769
+#: en/git-tag.txt:91
 msgid ""
-"Override the default help format used by linkgit:git-help[1].  Values 'man', "
-"'info', 'web' and 'html' are supported. 'man' is the default. 'web' and "
-"'html' are the same."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1770
-#, no-wrap
-msgid "help.autoCorrect"
+"The default is not to print any annotation lines.  If no number is given to "
+"`-n`, only the first line is printed.  If the tag is not annotated, the "
+"commit message is displayed instead."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1778
+#: en/git-tag.txt:96
 msgid ""
-"Automatically correct and execute mistyped commands after waiting for the "
-"given number of deciseconds (0.1 sec). If more than one command can be "
-"deduced from the entered text, nothing will be executed.  If the value of "
-"this option is negative, the corrected command will be executed "
-"immediately. If the value is 0 - the command will be just shown but not "
-"executed.  This is the default."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1779
-#, no-wrap
-msgid "help.htmlPath"
+"List tags. With optional `<pattern>...`, e.g. `git tag --list 'v-*'`, list "
+"only the tags that match the pattern(s)."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1784
+#: en/git-tag.txt:100
 msgid ""
-"Specify the path where the HTML documentation resides. File system paths and "
-"URLs are supported. HTML pages will be prefixed with this path when help is "
-"displayed in the 'web' format. This defaults to the documentation path of "
-"your Git installation."
+"Running \"git tag\" without arguments also lists all tags. The pattern is a "
+"shell wildcard (i.e., matched using fnmatch(3)). Multiple patterns may be "
+"given; if any of them matches, the tag is shown."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1785
-#, no-wrap
-msgid "http.proxy"
+#. type: Plain text
+#: en/git-tag.txt:104
+msgid ""
+"This option is implicitly supplied if any other list-like option such as `--"
+"contains` is provided. See the documentation for each of those options for "
+"details."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1794
+#: en/git-tag.txt:117
 msgid ""
-"Override the HTTP proxy, normally configured using the 'http_proxy', "
-"'https_proxy', and 'all_proxy' environment variables (see `curl(1)`). In "
-"addition to the syntax understood by curl, it is possible to specify a proxy "
-"string with a user name but no password, in which case git will attempt to "
-"acquire one in the same way it does for other credentials. See "
-"linkgit:gitcredentials[7] for more information. The syntax thus is "
-"'[protocol://][user[:password]@]proxyhost[:port]'. This can be overridden on "
-"a per-remote basis; see remote.<name>.proxy"
+"Sort based on the key given.  Prefix `-` to sort in descending order of the "
+"value. You may use the --sort=<key> option multiple times, in which case the "
+"last key becomes the primary key. Also supports \"version:refname\" or \"v:"
+"refname\" (tag names are treated as versions). The \"version:refname\" sort "
+"order can also be affected by the \"versionsort.suffix\" configuration "
+"variable.  The keys supported are the same as those in `git for-each-ref`.  "
+"Sort order defaults to the value configured for the `tag.sort` variable if "
+"it exists, or lexicographic order otherwise. See linkgit:git-config[1]."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1795
-#, no-wrap
-msgid "http.proxyAuthMethod"
+#. type: Plain text
+#: en/git-tag.txt:126
+msgid "Sorting and filtering tags are case insensitive."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1802
+#: en/git-tag.txt:132
 msgid ""
-"Set the method with which to authenticate against the HTTP proxy. This only "
-"takes effect if the configured proxy string contains a user name part "
-"(i.e. is of the form 'user@host' or 'user@host:port'). This can be "
-"overridden on a per-remote basis; see `remote.<name>.proxyAuthMethod`.  Both "
-"can be overridden by the `GIT_HTTP_PROXY_AUTHMETHOD` environment variable.  "
-"Possible values are:"
+"Display tag listing in columns. See configuration variable column.tag for "
+"option syntax.`--column` and `--no-column` without options are equivalent to "
+"'always' and 'never' respectively."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1808
+#: en/git-tag.txt:134
 msgid ""
-"`anyauth` - Automatically pick a suitable authentication method. It is "
-"assumed that the proxy answers an unauthenticated request with a 407 status "
-"code and one or more Proxy-authenticate headers with supported "
-"authentication methods. This is the default."
+"This option is only applicable when listing tags without annotation lines."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1809
-msgid "`basic` - HTTP Basic authentication"
+#: en/git-tag.txt:138
+msgid ""
+"Only list tags which contain the specified commit (HEAD if not specified). "
+"Implies `--list`."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1811
+#: en/git-tag.txt:142
 msgid ""
-"`digest` - HTTP Digest authentication; this prevents the password from being "
-"transmitted to the proxy in clear text"
+"Only list tags which don't contain the specified commit (HEAD if not "
+"specified). Implies `--list`."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1813
+#: en/git-tag.txt:146
 msgid ""
-"`negotiate` - GSS-Negotiate authentication (compare the --negotiate option "
-"of `curl(1)`)"
+"Only list tags whose commits are reachable from the specified commit (`HEAD` "
+"if not specified), incompatible with `--no-merged`."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1814
-msgid "`ntlm` - NTLM authentication (compare the --ntlm option of `curl(1)`)"
+#: en/git-tag.txt:150
+msgid ""
+"Only list tags whose commits are not reachable from the specified commit "
+"(`HEAD` if not specified), incompatible with `--merged`."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1816
-#, no-wrap
-msgid "http.emptyAuth"
+#. type: Plain text
+#: en/git-tag.txt:154
+msgid ""
+"Only list tags of the given object (HEAD if not specified). Implies `--list`."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1821
+#: en/git-tag.txt:162
 msgid ""
-"Attempt authentication without seeking a username or password.  This can be "
-"used to attempt GSS-Negotiate authentication without specifying a username "
-"in the URL, as libcurl normally requires a username for authentication."
+"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 <keyid>` is given."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1822
-#, no-wrap
-msgid "http.delegation"
+#. type: Plain text
+#: en/git-tag.txt:169
+msgid ""
+"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 <keyid>` is "
+"given."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1827
+#: en/git-tag.txt:175
 msgid ""
-"Control GSSAPI credential delegation. The delegation is disabled by default "
-"in libcurl since version 7.21.7. Set parameter to tell the server what it is "
-"allowed to delegate when it comes to user credentials. Used with "
-"GSS/kerberos. Possible values are:"
+"The message taken from file with `-F` and command line with `-m` are usually "
+"used as the tag message unmodified.  This option lets you further edit the "
+"message taken from these sources."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1830
-msgid "`none` - Don't allow any delegation."
+#: en/git-tag.txt:182
+msgid ""
+"This option sets how the tag message is cleaned up.  The '<mode>' can be one "
+"of 'verbatim', 'whitespace' and 'strip'.  The 'strip' mode is default. The "
+"'verbatim' mode does not change message at all, 'whitespace' removes just "
+"leading/trailing whitespace lines and 'strip' removes both whitespace and "
+"commentary."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1832
+#: en/git-tag.txt:189
 msgid ""
-"`policy` - Delegates if and only if the OK-AS-DELEGATE flag is set in the "
-"Kerberos service ticket, which is a matter of realm policy."
+"Create a reflog for the tag. To globally enable reflogs for tags, see `core."
+"logAllRefUpdates` in linkgit:git-config[1].  The negated form `--no-create-"
+"reflog` only overrides an earlier `--create-reflog`, but currently does not "
+"negate the setting of `core.logAllRefUpdates`."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1833
-msgid "`always` - Unconditionally allow the server to delegate."
+#: en/git-tag.txt:195
+msgid ""
+"A string that interpolates `%(fieldname)` from a tag ref being shown and the "
+"object it points at.  The format is the same as that of linkgit:git-for-each-"
+"ref[1].  When unspecified, defaults to `%(refname:strip=2)`."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1836
+#: en/git-tag.txt:196
 #, no-wrap
-msgid "http.extraHeader"
+msgid "<tagname>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1841
+#: en/git-tag.txt:201
 msgid ""
-"Pass an additional HTTP header when communicating with a server.  If more "
-"than one such entry exists, all of them are added as extra headers.  To "
-"allow overriding the settings inherited from the system config, an empty "
-"value will reset the extra headers to the empty list."
+"The name of the tag to create, delete, or describe.  The new tag name must "
+"pass all checks defined by linkgit:git-check-ref-format[1].  Some of these "
+"checks may restrict the characters allowed in a tag name."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:1842
+#: en/git-tag.txt:202 en/git.txt:312
 #, no-wrap
-msgid "http.cookieFile"
+msgid "<commit>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1850
+#: en/git-tag.txt:206
 msgid ""
-"The pathname of a file containing previously stored cookie lines, which "
-"should be used in the Git http session, if they match the server. The file "
-"format of the file to read cookies from should be plain HTTP headers or the "
-"Netscape/Mozilla cookie file format (see `curl(1)`).  NOTE that the file "
-"specified with http.cookieFile is used only as input unless http.saveCookies "
-"is set."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1851
-#, no-wrap
-msgid "http.saveCookies"
+"The object that the new tag will refer to, usually a commit.  Defaults to "
+"HEAD."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1854
+#: en/git-tag.txt:213
 msgid ""
-"If set, store cookies received during requests to the file specified by "
-"http.cookieFile. Has no effect if http.cookieFile is unset."
+"By default, 'git tag' in sign-with-default mode (-s) will use your committer "
+"identity (of the form `Your Name <your@email.address>`) to find a key.  If "
+"you want to use a different default key, you can specify it in the "
+"repository configuration as follows:"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1855
+#. type: delimited block -
+#: en/git-tag.txt:217
 #, no-wrap
-msgid "http.sslVersion"
+msgid ""
+"[user]\n"
+"    signingKey = <gpg-keyid>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1864
+#: en/git-tag.txt:222
 msgid ""
-"The SSL version to use when negotiating an SSL connection, if you want to "
-"force the default.  The available and default version depend on whether "
-"libcurl was built against NSS or OpenSSL and the particular configuration of "
-"the crypto library in use. Internally this sets the 'CURLOPT_SSL_VERSION' "
-"option; see the libcurl documentation for more details on the format of this "
-"option and for the ssl version supported. Actually the possible values of "
-"this option are:"
+"`pager.tag` is only respected when listing tags, i.e., when `-l` is used or "
+"implied. The default is to use a pager.  See linkgit:git-config[1]."
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:1866
-msgid "sslv2"
+#. type: Title ~
+#: en/git-tag.txt:227
+#, no-wrap
+msgid "On Re-tagging"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1867
-msgid "sslv3"
+#: en/git-tag.txt:231
+msgid ""
+"What should you do when you tag a wrong commit and you would want to re-tag?"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1868
-msgid "tlsv1"
+#: en/git-tag.txt:234
+msgid ""
+"If you never pushed anything out, just re-tag it. Use \"-f\" to replace the "
+"old one. And you're done."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1869
-msgid "tlsv1.0"
+#: en/git-tag.txt:238
+msgid ""
+"But if you have pushed things out (or others could just read your repository "
+"directly), then others will have already seen the old tag. In that case you "
+"can do one of two things:"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1870
-msgid "tlsv1.1"
+#: en/git-tag.txt:245
+msgid ""
+"The sane thing.  Just admit you screwed up, and use a different name. Others "
+"have already seen one tag-name, and if you keep the same name, you may be in "
+"the situation that two people both have \"version X\", but they actually "
+"have 'different' \"X\"'s.  So just call it \"X.1\" and be done with it."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1871
-msgid "tlsv1.2"
+#: en/git-tag.txt:250
+msgid ""
+"The insane thing.  You really want to call the new version \"X\" too, 'even "
+"though' others have already seen the old one. So just use 'git tag -f' "
+"again, as if you hadn't already published the old one."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1877
+#: en/git-tag.txt:255
 msgid ""
-"Can be overridden by the `GIT_SSL_VERSION` environment variable.  To force "
-"git to use libcurl's default ssl version and ignore any explicit "
-"http.sslversion option, set `GIT_SSL_VERSION` to the empty string."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1878
-#, no-wrap
-msgid "http.sslCipherList"
+"However, Git does *not* (and it should not) change tags behind users back. "
+"So if somebody already got the old tag, doing a 'git pull' on your tree "
+"shouldn't just make them overwrite the old one."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1885
+#: en/git-tag.txt:262
 msgid ""
-"A list of SSL ciphers to use when negotiating an SSL connection.  The "
-"available ciphers depend on whether libcurl was built against NSS or OpenSSL "
-"and the particular configuration of the crypto library in use.  Internally "
-"this sets the 'CURLOPT_SSL_CIPHER_LIST' option; see the libcurl "
-"documentation for more details on the format of this list."
+"If somebody got a release tag from you, you cannot just change the tag for "
+"them by updating your own one. This is a big security issue, in that people "
+"MUST be able to trust their tag-names.  If you really want to do the insane "
+"thing, you need to just fess up to it, and tell people that you messed up. "
+"You can do that by making a very public announcement saying:"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:1890
+#. type: delimited block -
+#: en/git-tag.txt:266
+#, no-wrap
 msgid ""
-"Can be overridden by the `GIT_SSL_CIPHER_LIST` environment variable.  To "
-"force git to use libcurl's default cipher list and ignore any explicit "
-"http.sslCipherList option, set `GIT_SSL_CIPHER_LIST` to the empty string."
+"Ok, I messed up, and I pushed out an earlier version tagged as X. I\n"
+"then fixed something, and retagged the *fixed* tree as X again.\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1891
+#. type: delimited block -
+#: en/git-tag.txt:269
 #, no-wrap
-msgid "http.sslVerify"
+msgid ""
+"If you got the wrong tag, and want the new one, please delete\n"
+"the old one and fetch the new one by doing:\n"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:1895
+#. type: delimited block -
+#: en/git-tag.txt:272
+#, no-wrap
 msgid ""
-"Whether to verify the SSL certificate when fetching or pushing over "
-"HTTPS. Can be overridden by the `GIT_SSL_NO_VERIFY` environment variable."
+"\tgit tag -d X\n"
+"\tgit fetch origin tag X\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1896
+#. type: delimited block -
+#: en/git-tag.txt:274
 #, no-wrap
-msgid "http.sslCert"
+msgid "to get my updated tag.\n"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:1900
-msgid ""
-"File containing the SSL certificate when fetching or pushing over HTTPS. Can "
-"be overridden by the `GIT_SSL_CERT` environment variable."
+#. type: delimited block -
+#: en/git-tag.txt:276
+#, no-wrap
+msgid "You can test which tag you have by doing\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1901
+#. type: delimited block -
+#: en/git-tag.txt:278
 #, no-wrap
-msgid "http.sslKey"
+msgid "\tgit rev-parse X\n"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:1905
-msgid ""
-"File containing the SSL private key when fetching or pushing over HTTPS. Can "
-"be overridden by the `GIT_SSL_KEY` environment variable."
+#. type: delimited block -
+#: en/git-tag.txt:280
+#, no-wrap
+msgid "which should return 0123456789abcdef.. if you have the new version.\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1906
+#. type: delimited block -
+#: en/git-tag.txt:282
 #, no-wrap
-msgid "http.sslCertPasswordProtected"
+msgid "Sorry for the inconvenience.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1911
+#: en/git-tag.txt:287
 msgid ""
-"Enable Git's password prompt for the SSL certificate.  Otherwise OpenSSL "
-"will prompt the user, possibly many times, if the certificate or private key "
-"is encrypted.  Can be overridden by the `GIT_SSL_CERT_PASSWORD_PROTECTED` "
-"environment variable."
+"Does this seem a bit complicated? It *should* be. There is no way that it "
+"would be correct to just \"fix\" it automatically.  People need to know that "
+"their tags might have been changed."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1912
+#. type: Title ~
+#: en/git-tag.txt:290
 #, no-wrap
-msgid "http.sslCAInfo"
+msgid "On Automatic following"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1916
+#: en/git-tag.txt:295
 msgid ""
-"File containing the certificates to verify the peer with when fetching or "
-"pushing over HTTPS. Can be overridden by the `GIT_SSL_CAINFO` environment "
-"variable."
+"If you are following somebody else's tree, you are most likely using remote-"
+"tracking branches (eg. `refs/remotes/origin/master`).  You usually want the "
+"tags from the other end."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1917
-#, no-wrap
-msgid "http.sslCAPath"
+#. type: Plain text
+#: en/git-tag.txt:302
+msgid ""
+"On the other hand, if you are fetching because you would want a one-shot "
+"merge from somebody else, you typically do not want to get tags from there.  "
+"This happens more often for people near the toplevel but not limited to "
+"them.  Mere mortals when pulling from each other do not necessarily want to "
+"automatically get private anchor point tags from the other person."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1921
+#: en/git-tag.txt:307
 msgid ""
-"Path containing files with the CA certificates to verify the peer with when "
-"fetching or pushing over HTTPS. Can be overridden by the `GIT_SSL_CAPATH` "
-"environment variable."
+"Often, \"please pull\" messages on the mailing list just provide two pieces "
+"of information: a repo URL and a branch name; this is designed to be easily "
+"cut&pasted at the end of a 'git fetch' command line:"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1922
+#. type: delimited block -
+#: en/git-tag.txt:310
 #, no-wrap
-msgid "http.pinnedpubkey"
+msgid "Linus, please pull from\n"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:1929
-msgid ""
-"Public key of the https service. It may either be the filename of a PEM or "
-"DER encoded public key file or a string starting with 'sha256//' followed by "
-"the base64 encoded sha256 hash of the public key. See also libcurl "
-"'CURLOPT_PINNEDPUBLICKEY'. git will exit with an error if this option is set "
-"but not supported by cURL."
+#. type: delimited block -
+#: en/git-tag.txt:312
+#, no-wrap
+msgid "\tgit://git..../proj.git master\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1930
+#. type: delimited block -
+#: en/git-tag.txt:314
 #, no-wrap
-msgid "http.sslTry"
+msgid "to get the following updates...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1937
-msgid ""
-"Attempt to use AUTH SSL/TLS and encrypted data transfers when connecting via "
-"regular FTP protocol. This might be needed if the FTP server requires it for "
-"security reasons or you wish to connect securely whenever remote FTP server "
-"supports it.  Default is false since it might trigger certificate "
-"verification errors on misconfigured servers."
+#: en/git-tag.txt:317
+msgid "becomes:"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1938
+#. type: delimited block -
+#: en/git-tag.txt:320
 #, no-wrap
-msgid "http.maxRequests"
+msgid "$ git pull git://git..../proj.git master\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1941
+#: en/git-tag.txt:324
 msgid ""
-"How many HTTP requests to launch in parallel. Can be overridden by the "
-"`GIT_HTTP_MAX_REQUESTS` environment variable. Default is 5."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1942
-#, no-wrap
-msgid "http.minSessions"
+"In such a case, you do not want to automatically follow the other person's "
+"tags."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1947
+#: en/git-tag.txt:332
 msgid ""
-"The number of curl sessions (counted across slots) to be kept across "
-"requests. They will not be ended with curl_easy_cleanup() until "
-"http_cleanup() is invoked. If USE_CURL_MULTI is not defined, this value will "
-"be capped at 1. Defaults to 1."
+"One important aspect of Git is its distributed nature, which largely means "
+"there is no inherent \"upstream\" or \"downstream\" in the system.  On the "
+"face of it, the above example might seem to indicate that the tag namespace "
+"is owned by the upper echelon of people and that tags only flow downwards, "
+"but that is not the case.  It only shows that the usage pattern determines "
+"who are interested in whose tags."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1948
-#, no-wrap
-msgid "http.postBuffer"
+#. type: Plain text
+#: en/git-tag.txt:344
+msgid ""
+"A one-shot pull is a sign that a commit history is now crossing the boundary "
+"between one circle of people (e.g. \"people who are primarily interested in "
+"the networking part of the kernel\") who may have their own set of tags (e."
+"g. \"this is the third release candidate from the networking group to be "
+"proposed for general consumption with 2.6.21 release\") to another circle of "
+"people (e.g. \"people who integrate various subsystem improvements\").  The "
+"latter are usually not interested in the detailed tags used internally in "
+"the former group (that is what \"internal\" means).  That is why it is "
+"desirable not to follow tags automatically in this case."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1955
+#: en/git-tag.txt:350
 msgid ""
-"Maximum size in bytes of the buffer used by smart HTTP transports when "
-"POSTing data to the remote system.  For requests larger than this buffer "
-"size, HTTP/1.1 and Transfer-Encoding: chunked is used to avoid creating a "
-"massive pack file locally.  Default is 1 MiB, which is sufficient for most "
-"requests."
+"It may well be that among networking people, they may want to exchange the "
+"tags internal to their group, but in that workflow they are most likely "
+"tracking each other's progress by having remote-tracking branches.  Again, "
+"the heuristic to automatically follow such tags is a good thing."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1956
+#. type: Title ~
+#: en/git-tag.txt:353
 #, no-wrap
-msgid "http.lowSpeedLimit, http.lowSpeedTime"
+msgid "On Backdating Tags"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1961
+#: en/git-tag.txt:360
 msgid ""
-"If the HTTP transfer speed is less than 'http.lowSpeedLimit' for longer than "
-"'http.lowSpeedTime' seconds, the transfer is aborted.  Can be overridden by "
-"the `GIT_HTTP_LOW_SPEED_LIMIT` and `GIT_HTTP_LOW_SPEED_TIME` environment "
-"variables."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1962
-#, no-wrap
-msgid "http.noEPSV"
+"If you have imported some changes from another VCS and would like to add "
+"tags for major releases of your work, it is useful to be able to specify the "
+"date to embed inside of the tag object; such data in the tag object affects, "
+"for example, the ordering of tags in the gitweb interface."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1967
+#: en/git-tag.txt:364
 msgid ""
-"A boolean which disables using of EPSV ftp command by curl.  This can "
-"helpful with some \"poor\" ftp servers which don't support EPSV mode. Can be "
-"overridden by the `GIT_CURL_FTP_NO_EPSV` environment variable. Default is "
-"false (curl will use EPSV)."
+"To set the date used in future tag objects, set the environment variable "
+"GIT_COMMITTER_DATE (see the later discussion of possible values; the most "
+"common form is \"YYYY-MM-DD HH:MM\")."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1968
+#. type: delimited block -
+#: en/git-tag.txt:369
 #, no-wrap
-msgid "http.userAgent"
+msgid "$ GIT_COMMITTER_DATE=\"2006-10-02 10:31\" git tag -s v1.0.1\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1976
-msgid ""
-"The HTTP USER_AGENT string presented to an HTTP server.  The default value "
-"represents the version of the client Git such as git/1.7.1.  This option "
-"allows you to override this value to a more common value such as "
-"Mozilla/4.0.  This may be necessary, for instance, if connecting through a "
-"firewall that restricts HTTP connections to a set of common USER_AGENT "
-"strings (but not including those like git/1.7.1).  Can be overridden by the "
-"`GIT_HTTP_USER_AGENT` environment variable."
+#: en/git-tag.txt:377
+msgid "linkgit:git-check-ref-format[1].  linkgit:git-config[1]."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:1977
+#. type: Title =
+#: en/git.txt:2
 #, no-wrap
-msgid "http.followRedirects"
+msgid "git(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1986
-msgid ""
-"Whether git should follow HTTP redirects. If set to `true`, git will "
-"transparently follow any redirect issued by a server it encounters. If set "
-"to `false`, git will treat all redirects as errors. If set to `initial`, git "
-"will follow redirects only for the initial request to a remote, but not for "
-"subsequent follow-up HTTP requests. Since git uses the redirected URL as the "
-"base for the follow-up requests, this is generally sufficient. The default "
-"is `initial`."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:1987
-#, no-wrap
-msgid "http.<url>.*"
+#: en/git.txt:7
+msgid "git - the stupid content tracker"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1991
+#: en/git.txt:18
+#, no-wrap
 msgid ""
-"Any of the http.* options above can be applied selectively to some URLs.  "
-"For a config key to match a URL, each element of the config key is compared "
-"to that of the URL, in the following order:"
+"'git' [--version] [--help] [-C <path>] [-c <name>=<value>]\n"
+"    [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]\n"
+"    [-p|--paginate|-P|--no-pager] [--no-replace-objects] [--bare]\n"
+"    [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]\n"
+"    [--super-prefix=<path>]\n"
+"    <command> [<args>]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:1995
+#: en/git.txt:24
 msgid ""
-"Scheme (e.g., `https` in `https://example.com/`). This field must match "
-"exactly between the config key and the URL."
+"Git is a fast, scalable, distributed revision control system with an "
+"unusually rich command set that provides both high-level operations and full "
+"access to internals."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2001
+#: en/git.txt:29
 msgid ""
-"Host/domain name (e.g., `example.com` in `https://example.com/`).  This "
-"field must match between the config key and the URL. It is possible to "
-"specify a `*` as part of the host name to match all subdomains at this "
-"level. `https://*.example.com/` for example would match "
-"`https://foo.example.com/`, but not `https://foo.bar.example.com/`."
+"See linkgit:gittutorial[7] to get started, then see linkgit:giteveryday[7] "
+"for a useful minimum set of commands.  The link:user-manual.html[Git User's "
+"Manual] has a more in-depth introduction."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2006
+#: en/git.txt:34
 msgid ""
-"Port number (e.g., `8080` in `http://example.com:8080/`).  This field must "
-"match exactly between the config key and the URL.  Omitted port numbers are "
-"automatically converted to the correct default for the scheme before "
-"matching."
+"After you mastered the basic concepts, you can come back to this page to "
+"learn what commands Git offers.  You can learn more about individual Git "
+"commands with \"git help command\".  linkgit:gitcli[7] manual page gives you "
+"an overview of the command-line command syntax."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2014
+#: en/git.txt:37
 msgid ""
-"Path (e.g., `repo.git` in `https://example.com/repo.git`). The path field of "
-"the config key must match the path field of the URL either exactly or as a "
-"prefix of slash-delimited path elements.  This means a config key with path "
-"`foo/` matches URL path `foo/bar`.  A prefix can only match on a slash (`/`) "
-"boundary.  Longer matches take precedence (so a config key with path "
-"`foo/bar` is a better match to URL path `foo/bar` than a config key with "
-"just path `foo/`)."
+"A formatted and hyperlinked copy of the latest Git documentation can be "
+"viewed at `https://git.github.io/htmldocs/git.html`."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2020
-msgid ""
-"User name (e.g., `user` in `https://user@example.com/repo.git`). If the "
-"config key has a user name it must match the user name in the URL "
-"exactly. If the config key does not have a user name, that config key will "
-"match a URL with any user name (including none), but at a lower precedence "
-"than a config key with a user name."
+#: en/git.txt:43
+msgid "Prints the Git suite version that the 'git' program came from."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2027
+#: en/git.txt:49
 msgid ""
-"The list above is ordered by decreasing precedence; a URL that matches a "
-"config key's path is preferred to one that matches its user name. For "
-"example, if the URL is `https://user@example.com/foo/bar` a config key match "
-"of `https://example.com/foo` will be preferred over a config key match of "
-"`https://user@example.com`."
+"Prints the synopsis and a list of the most commonly used commands. If the "
+"option `--all` or `-a` is given then all available commands are printed. If "
+"a Git command is named this option will bring up the manual page for that "
+"command."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2034
+#: en/git.txt:54
 msgid ""
-"All URLs are normalized before attempting any matching (the password part, "
-"if embedded in the URL, is always ignored for matching purposes) so that "
-"equivalent URLs that are simply spelled differently will match properly.  "
-"Environment variable settings always override any matches.  The URLs that "
-"are matched against are those given directly to Git commands.  This means "
-"any URLs visited as a result of a redirection do not participate in "
-"matching."
+"Other options are available to control how the manual page is displayed. See "
+"linkgit:git-help[1] for more information, because `git --help ...` is "
+"converted internally into `git help ...`."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2035
+#: en/git.txt:55
 #, no-wrap
-msgid "ssh.variant"
+msgid "-C <path>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2040
+#: en/git.txt:60
 msgid ""
-"Depending on the value of the environment variables `GIT_SSH` or "
-"`GIT_SSH_COMMAND`, or the config setting `core.sshCommand`, Git auto-detects "
-"whether to adjust its command-line parameters for use with plink or "
-"tortoiseplink, as opposed to the default (OpenSSH)."
+"Run as if git was started in '<path>' instead of the current working "
+"directory.  When multiple `-C` options are given, each subsequent non-"
+"absolute `-C <path>` is interpreted relative to the preceding `-C <path>`."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2045
+#: en/git.txt:65
 msgid ""
-"The config variable `ssh.variant` can be set to override this "
-"auto-detection; valid values are `ssh`, `plink`, `putty` or "
-"`tortoiseplink`. Any other value will be treated as normal ssh. This setting "
-"can be overridden via the environment variable `GIT_SSH_VARIANT`."
+"This option affects options that expect path name like `--git-dir` and `--"
+"work-tree` in that their interpretations of the path names would be made "
+"relative to the working directory caused by the `-C` option. For example the "
+"following invocations are equivalent:"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2046
+#. type: Plain text
+#: en/git.txt:68
 #, no-wrap
-msgid "i18n.commitEncoding"
+msgid ""
+"    git --git-dir=a.git --work-tree=b -C c status\n"
+"    git --git-dir=c/a.git --work-tree=c/b status\n"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2052
-msgid ""
-"Character encoding the commit messages are stored in; Git itself does not "
-"care per se, but this information is necessary e.g. when importing commits "
-"from emails or in the gitk graphical history browser (and possibly at other "
-"places in the future or in other porcelains). See "
-"e.g. linkgit:git-mailinfo[1]. Defaults to 'utf-8'."
+#. type: Labeled list
+#: en/git.txt:69
+#, no-wrap
+msgid "-c <name>=<value>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2056
+#: en/git.txt:74
 msgid ""
-"Character encoding the commit messages are converted to when running 'git "
-"log' and friends."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:2057
-#, no-wrap
-msgid "imap"
+"Pass a configuration parameter to the command. The value given will override "
+"values from configuration files.  The <name> is expected in the same format "
+"as listed by 'git config' (subkeys separated by dots)."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2060
+#: en/git.txt:80
 msgid ""
-"The configuration variables in the 'imap' section are described in "
-"linkgit:git-imap-send[1]."
+"Note that omitting the `=` in `git -c foo.bar ...` is allowed and sets `foo."
+"bar` to the boolean true value (just like `[foo]bar` would in a config "
+"file). Including the equals but with an empty value (like `git -c foo."
+"bar= ...`) sets `foo.bar` to the empty string which `git config --type=bool` "
+"will convert to `false`."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2061
+#: en/git.txt:81
 #, no-wrap
-msgid "index.version"
+msgid "--exec-path[=<path>]"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2064
+#: en/git.txt:86
 msgid ""
-"Specify the version with which new index files should be initialized.  This "
-"does not affect existing repositories."
+"Path to wherever your core Git programs are installed.  This can also be "
+"controlled by setting the GIT_EXEC_PATH environment variable. If no path is "
+"given, 'git' will print the current setting and then exit."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2065
+#: en/git.txt:87
 #, no-wrap
-msgid "init.templateDir"
+msgid "--html-path"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2068
+#: en/git.txt:90
 msgid ""
-"Specify the directory from which templates will be copied.  (See the "
-"\"TEMPLATE DIRECTORY\" section of linkgit:git-init[1].)"
+"Print the path, without trailing slash, where Git's HTML documentation is "
+"installed and exit."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2069
+#: en/git.txt:91
 #, no-wrap
-msgid "instaweb.browser"
+msgid "--man-path"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2072
+#: en/git.txt:94
 msgid ""
-"Specify the program that will be used to browse your working repository in "
-"gitweb. See linkgit:git-instaweb[1]."
+"Print the manpath (see `man(1)`) for the man pages for this version of Git "
+"and exit."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2073
+#: en/git.txt:95
 #, no-wrap
-msgid "instaweb.httpd"
+msgid "--info-path"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2076
+#: en/git.txt:98
 msgid ""
-"The HTTP daemon command-line to start gitweb on your working repository. See "
-"linkgit:git-instaweb[1]."
+"Print the path where the Info files documenting this version of Git are "
+"installed and exit."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2077
+#: en/git.txt:100
 #, no-wrap
-msgid "instaweb.local"
+msgid "--paginate"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2080
+#: en/git.txt:105
 msgid ""
-"If true the web server started by linkgit:git-instaweb[1] will be bound to "
-"the local IP (127.0.0.1)."
+"Pipe all output into 'less' (or if set, $PAGER) if standard output is a "
+"terminal.  This overrides the `pager.<cmd>` configuration options (see the "
+"\"Configuration Mechanism\" section below)."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2081
+#: en/git.txt:107
 #, no-wrap
-msgid "instaweb.modulePath"
+msgid "--no-pager"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2085
-msgid ""
-"The default module path for linkgit:git-instaweb[1] to use instead of "
-"/usr/lib/apache2/modules.  Only used if httpd is Apache."
+#: en/git.txt:109
+msgid "Do not pipe Git output into a pager."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2086
+#: en/git.txt:110
 #, no-wrap
-msgid "instaweb.port"
+msgid "--git-dir=<path>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2089
-msgid "The port number to bind the gitweb httpd to. See linkgit:git-instaweb[1]."
+#: en/git.txt:114
+msgid ""
+"Set the path to the repository. This can also be controlled by setting the "
+"`GIT_DIR` environment variable. It can be an absolute path or relative path "
+"to current working directory."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2090
+#: en/git.txt:115
 #, no-wrap
-msgid "interactive.singleKey"
+msgid "--work-tree=<path>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2098
+#: en/git.txt:122
 msgid ""
-"In interactive commands, allow the user to provide one-letter input with a "
-"single key (i.e., without hitting enter).  Currently this is used by the "
-"`--patch` mode of linkgit:git-add[1], linkgit:git-checkout[1], "
-"linkgit:git-commit[1], linkgit:git-reset[1], and linkgit:git-stash[1]. Note "
-"that this setting is silently ignored if portable keystroke input is not "
-"available; requires the Perl module Term::ReadKey."
+"Set the path to the working tree. It can be an absolute path or a path "
+"relative to the current working directory.  This can also be controlled by "
+"setting the GIT_WORK_TREE environment variable and the core.worktree "
+"configuration variable (see core.worktree in linkgit:git-config[1] for a "
+"more detailed discussion)."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2099
+#: en/git.txt:123
 #, no-wrap
-msgid "interactive.diffFilter"
+msgid "--namespace=<path>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2106
+#: en/git.txt:127
 msgid ""
-"When an interactive command (such as `git add --patch`) shows a colorized "
-"diff, git will pipe the diff through the shell command defined by this "
-"configuration variable. The command may mark up the diff further for human "
-"consumption, provided that it retains a one-to-one correspondence with the "
-"lines in the original diff. Defaults to disabled (no filtering)."
+"Set the Git namespace.  See linkgit:gitnamespaces[7] for more details.  "
+"Equivalent to setting the `GIT_NAMESPACE` environment variable."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2107
+#: en/git.txt:128
 #, no-wrap
-msgid "log.abbrevCommit"
+msgid "--super-prefix=<path>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2111
+#: en/git.txt:132
 msgid ""
-"If true, makes linkgit:git-log[1], linkgit:git-show[1], and "
-"linkgit:git-whatchanged[1] assume `--abbrev-commit`. You may override this "
-"option with `--no-abbrev-commit`."
+"Currently for internal use only.  Set a prefix which gives a path from above "
+"a repository down to its root.  One use is to give submodules context about "
+"the superproject that invoked it."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2116
+#: en/git.txt:137
 msgid ""
-"Set the default date-time mode for the 'log' command.  Setting a value for "
-"log.date is similar to using 'git log''s `--date` option.  See "
-"linkgit:git-log[1] for details."
+"Treat the repository as a bare repository.  If GIT_DIR environment is not "
+"set, it is set to the current working directory."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2117
+#: en/git.txt:138
 #, no-wrap
-msgid "log.decorate"
+msgid "--no-replace-objects"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2126
+#: en/git.txt:141
 msgid ""
-"Print out the ref names of any commits that are shown by the log command. If "
-"'short' is specified, the ref name prefixes 'refs/heads/', 'refs/tags/' and "
-"'refs/remotes/' will not be printed. If 'full' is specified, the full ref "
-"name (including prefix) will be printed.  If 'auto' is specified, then if "
-"the output is going to a terminal, the ref names are shown as if 'short' "
-"were given, otherwise no ref names are shown. This is the same as the "
-"`--decorate` option of the `git log`."
+"Do not use replacement refs to replace Git objects. See linkgit:git-"
+"replace[1] for more information."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2133
+#: en/git.txt:142
 #, no-wrap
-msgid "log.graphColors"
+msgid "--literal-pathspecs"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2136
+#: en/git.txt:146
 msgid ""
-"A list of colors, separated by commas, that can be used to draw history "
-"lines in `git log --graph`."
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:2142
-msgid ""
-"If true, the initial commit will be shown as a big creation event.  This is "
-"equivalent to a diff against an empty tree.  Tools like linkgit:git-log[1] "
-"or linkgit:git-whatchanged[1], which normally hide the root commit will now "
-"show it. True by default."
+"Treat pathspecs literally (i.e. no globbing, no pathspec magic).  This is "
+"equivalent to setting the `GIT_LITERAL_PATHSPECS` environment variable to "
+"`1`."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2143
+#: en/git.txt:147
 #, no-wrap
-msgid "log.mailmap"
+msgid "--glob-pathspecs"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2146
+#: en/git.txt:152
 msgid ""
-"If true, makes linkgit:git-log[1], linkgit:git-show[1], and "
-"linkgit:git-whatchanged[1] assume `--use-mailmap`."
+"Add \"glob\" magic to all pathspec. This is equivalent to setting the "
+"`GIT_GLOB_PATHSPECS` environment variable to `1`. Disabling globbing on "
+"individual pathspecs can be done using pathspec magic \":(literal)\""
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2147
+#: en/git.txt:153
 #, no-wrap
-msgid "mailinfo.scissors"
+msgid "--noglob-pathspecs"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2153
+#: en/git.txt:158
 msgid ""
-"If true, makes linkgit:git-mailinfo[1] (and therefore linkgit:git-am[1]) act "
-"by default as if the --scissors option was provided on the "
-"command-line. When active, this features removes everything from the message "
-"body before a scissors line (i.e. consisting mainly of \">8\", \"8<\" and "
-"\"-\")."
+"Add \"literal\" magic to all pathspec. This is equivalent to setting the "
+"`GIT_NOGLOB_PATHSPECS` environment variable to `1`. Enabling globbing on "
+"individual pathspecs can be done using pathspec magic \":(glob)\""
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2154
+#: en/git.txt:159
 #, no-wrap
-msgid "mailmap.file"
+msgid "--icase-pathspecs"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2161
+#: en/git.txt:162
 msgid ""
-"The location of an augmenting mailmap file. The default mailmap, located in "
-"the root of the repository, is loaded first, then the mailmap file pointed "
-"to by this variable.  The location of the mailmap file may be in a "
-"repository subdirectory, or somewhere outside of the repository itself.  See "
-"linkgit:git-shortlog[1] and linkgit:git-blame[1]."
+"Add \"icase\" magic to all pathspec. This is equivalent to setting the "
+"`GIT_ICASE_PATHSPECS` environment variable to `1`."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2162
+#: en/git.txt:163
 #, no-wrap
-msgid "mailmap.blob"
+msgid "--no-optional-locks"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2169
+#: en/git.txt:166
 msgid ""
-"Like `mailmap.file`, but consider the value as a reference to a blob in the "
-"repository. If both `mailmap.file` and `mailmap.blob` are given, both are "
-"parsed, with entries from `mailmap.file` taking precedence. In a bare "
-"repository, this defaults to `HEAD:.mailmap`. In a non-bare repository, it "
-"defaults to empty."
+"Do not perform optional operations that require locks. This is equivalent to "
+"setting the `GIT_OPTIONAL_LOCKS` to `0`."
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2173
-msgid ""
-"Specify the programs that may be used to display help in the 'man' "
-"format. See linkgit:git-help[1]."
+#. type: Labeled list
+#: en/git.txt:167
+#, no-wrap
+msgid "--list-cmds=group[,group...]"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2178
+#: en/git.txt:176
 msgid ""
-"Specify the command to invoke the specified man viewer. The specified "
-"command is evaluated in shell with the man page passed as argument. (See "
-"linkgit:git-help[1].)"
+"List commands by group. This is an internal/experimental option and may "
+"change or be removed in the future. Supported groups are: builtins, parseopt "
+"(builtin commands that use parse-options), main (all commands in libexec "
+"directory), others (all other commands in `$PATH` that have git- prefix), "
+"list-<category> (see categories in command-list.txt), nohelpers (exclude "
+"helper commands), alias and config (retrieve command list from config "
+"variable completion.commands)"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2182
-msgid ""
-"Override the path for the given tool that may be used to display help in the "
-"'man' format. See linkgit:git-help[1]."
+#. type: Title -
+#: en/git.txt:178
+#, no-wrap
+msgid "GIT COMMANDS"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2185
-#, no-wrap
-msgid "mergetool.<tool>.path"
+#. type: Plain text
+#: en/git.txt:182
+msgid ""
+"We divide Git into high level (\"porcelain\") commands and low level "
+"(\"plumbing\") commands."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2189
+#. type: Title -
+#: en/git.txt:184
 #, no-wrap
-msgid "mergetool.<tool>.cmd"
+msgid "High-level commands (porcelain)"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2199
+#: en/git.txt:188
 msgid ""
-"Specify the command to invoke the specified merge tool.  The specified "
-"command is evaluated in shell with the following variables available: 'BASE' "
-"is the name of a temporary file containing the common base of the files to "
-"be merged, if available; 'LOCAL' is the name of a temporary file containing "
-"the contents of the file on the current branch; 'REMOTE' is the name of a "
-"temporary file containing the contents of the file from the branch being "
-"merged; 'MERGED' contains the name of the file to which the merge tool "
-"should write the results of a successful merge."
+"We separate the porcelain commands into the main commands and some ancillary "
+"user utilities."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2200
+#. type: Title ~
+#: en/git.txt:190
 #, no-wrap
-msgid "mergetool.<tool>.trustExitCode"
+msgid "Main porcelain commands"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2207
-msgid ""
-"For a custom merge command, specify whether the exit code of the merge "
-"command can be used to determine whether the merge was successful.  If this "
-"is not set to true then the merge target file timestamp is checked and the "
-"merge assumed to have been successful if the file has been updated, "
-"otherwise the user is prompted to indicate the success of the merge."
+#. type: Title ~
+#: en/git.txt:195
+#, no-wrap
+msgid "Ancillary Commands"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2208
-#, no-wrap
-msgid "mergetool.meld.hasOutput"
+#. type: Plain text
+#: en/git.txt:197
+msgid "Manipulators:"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2216
-msgid ""
-"Older versions of `meld` do not support the `--output` option.  Git will "
-"attempt to detect whether `meld` supports `--output` by inspecting the "
-"output of `meld --help`.  Configuring `mergetool.meld.hasOutput` will make "
-"Git skip these checks and use the configured value instead.  Setting "
-"`mergetool.meld.hasOutput` to `true` tells Git to unconditionally use the "
-"`--output` option, and `false` avoids using `--output`."
+#: en/git.txt:201
+msgid "Interrogators:"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2217
+#. type: Title ~
+#: en/git.txt:206
 #, no-wrap
-msgid "mergetool.keepBackup"
+msgid "Interacting with Others"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2222
+#: en/git.txt:210
 msgid ""
-"After performing a merge, the original file with conflict markers can be "
-"saved as a file with a `.orig` extension.  If this variable is set to "
-"`false` then this file is not preserved.  Defaults to `true` (i.e. keep the "
-"backup files)."
+"These commands are to interact with foreign SCM and with other people via "
+"patch over e-mail."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2223
+#. type: Title -
+#: en/git.txt:215
 #, no-wrap
-msgid "mergetool.keepTemporaries"
+msgid "Low-level commands (plumbing)"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2229
+#: en/git.txt:222
 msgid ""
-"When invoking a custom merge tool, Git uses a set of temporary files to pass "
-"to the tool. If the tool returns an error and this variable is set to "
-"`true`, then these temporary files will be preserved, otherwise they will be "
-"removed after the tool has exited. Defaults to `false`."
+"Although Git includes its own porcelain layer, its low-level commands are "
+"sufficient to support development of alternative porcelains.  Developers of "
+"such porcelains might start by reading about linkgit:git-update-index[1] and "
+"linkgit:git-read-tree[1]."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2230
-#, no-wrap
-msgid "mergetool.writeToTemp"
+#. type: Plain text
+#: en/git.txt:229
+msgid ""
+"The interface (input, output, set of options and the semantics)  to these "
+"low-level commands are meant to be a lot more stable than Porcelain level "
+"commands, because these commands are primarily for scripted use.  The "
+"interface to Porcelain commands on the other hand are subject to change in "
+"order to improve the end user experience."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2235
+#: en/git.txt:235
 msgid ""
-"Git writes temporary 'BASE', 'LOCAL', and 'REMOTE' versions of conflicting "
-"files in the worktree by default.  Git will attempt to use a temporary "
-"directory for these files when set `true`.  Defaults to `false`."
+"The following description divides the low-level commands into commands that "
+"manipulate objects (in the repository, index, and working tree), commands "
+"that interrogate and compare objects, and commands that move objects and "
+"references between repositories."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2236
+#. type: Title ~
+#: en/git.txt:238
 #, no-wrap
-msgid "mergetool.prompt"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:2238
-msgid "Prompt before each invocation of the merge resolution program."
+msgid "Manipulation commands"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2244
-msgid ""
-"Which merge strategy to choose by default when resolving notes conflicts.  "
-"Must be one of `manual`, `ours`, `theirs`, `union`, or `cat_sort_uniq`.  "
-"Defaults to `manual`.  See \"NOTES MERGE STRATEGIES\" section of "
-"linkgit:git-notes[1] for more information on each strategy."
+#. type: Title ~
+#: en/git.txt:244
+#, no-wrap
+msgid "Interrogation commands"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2250
+#: en/git.txt:250
 msgid ""
-"Which merge strategy to choose when doing a notes merge into "
-"refs/notes/<name>.  This overrides the more general "
-"\"notes.mergeStrategy\".  See the \"NOTES MERGE STRATEGIES\" section in "
-"linkgit:git-notes[1] for more information on the available strategies."
+"In general, the interrogate commands do not touch the files in the working "
+"tree."
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2259
-msgid ""
-"The (fully qualified) refname from which to show notes when showing commit "
-"messages.  The value of this variable can be set to a glob, in which case "
-"notes from all matching refs will be shown.  You may also specify this "
-"configuration variable several times.  A warning will be issued for refs "
-"that do not exist, but a glob that does not match any refs is silently "
-"ignored."
+#. type: Title ~
+#: en/git.txt:253
+#, no-wrap
+msgid "Synching repositories"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2263
+#: en/git.txt:259
 msgid ""
-"This setting can be overridden with the `GIT_NOTES_DISPLAY_REF` environment "
-"variable, which must be a colon separated list of refs or globs."
+"The following are helper commands used by the above; end users typically do "
+"not use them directly."
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2267
-msgid ""
-"The effective value of \"core.notesRef\" (possibly overridden by "
-"GIT_NOTES_REF) is also implicitly added to the list of refs to be displayed."
+#. type: Title ~
+#: en/git.txt:264
+#, no-wrap
+msgid "Internal helper commands"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2274
+#: en/git.txt:268
 msgid ""
-"When rewriting commits with <command> (currently `amend` or `rebase`) and "
-"this variable is set to `true`, Git automatically copies your notes from the "
-"original to the rewritten commit.  Defaults to `true`, but see "
-"\"notes.rewriteRef\" below."
+"These are internal helper commands used by other commands; end users "
+"typically do not use them directly."
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2281
-msgid ""
-"When copying notes during a rewrite (see the \"notes.rewrite.<command>\" "
-"option), determines what to do if the target commit already has a note.  "
-"Must be one of `overwrite`, `concatenate`, `cat_sort_uniq`, or `ignore`.  "
-"Defaults to `concatenate`."
+#. type: Title -
+#: en/git.txt:273
+#, no-wrap
+msgid "Configuration Mechanism"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2290
+#: en/git.txt:278
 msgid ""
-"When copying notes during a rewrite, specifies the (fully qualified) ref "
-"whose notes should be copied.  The ref may be a glob, in which case notes in "
-"all matching refs will be copied.  You may also specify this configuration "
-"several times."
+"Git uses a simple text format to store customizations that are per "
+"repository and are per user.  Such a configuration file may look like this:"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2294
+#. type: delimited block -
+#: en/git.txt:283
+#, no-wrap
 msgid ""
-"Does not have a default value; you must configure this variable to enable "
-"note rewriting.  Set it to `refs/notes/commits` to enable rewriting for the "
-"default commit notes."
+"#\n"
+"# A '#' or ';' character indicates a comment.\n"
+"#\n"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2298
+#. type: delimited block -
+#: en/git.txt:288
+#, no-wrap
 msgid ""
-"This setting can be overridden with the `GIT_NOTES_REWRITE_REF` environment "
-"variable, which must be a colon separated list of refs or globs."
+"; core variables\n"
+"[core]\n"
+"\t; Don't trust file modes\n"
+"\tfilemode = false\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2299
+#. type: delimited block -
+#: en/git.txt:293
 #, no-wrap
-msgid "pack.window"
+msgid ""
+"; user identity\n"
+"[user]\n"
+"\tname = \"Junio C Hamano\"\n"
+"\temail = \"gitster@pobox.com\"\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2302
+#: en/git.txt:299
 msgid ""
-"The size of the window used by linkgit:git-pack-objects[1] when no window "
-"size is given on the command line. Defaults to 10."
+"Various commands read from the configuration file and adjust their operation "
+"accordingly.  See linkgit:git-config[1] for a list and more details about "
+"the configuration mechanism."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2303
+#. type: Title -
+#: en/git.txt:302
 #, no-wrap
-msgid "pack.depth"
+msgid "Identifier Terminology"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2306
-msgid ""
-"The maximum delta depth used by linkgit:git-pack-objects[1] when no maximum "
-"depth is given on the command line. Defaults to 50."
+#: en/git.txt:305
+msgid "Indicates the object name for any type of object."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2307
+#: en/git.txt:306 en/git-unpack-file.txt:23
 #, no-wrap
-msgid "pack.windowMemory"
+msgid "<blob>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2313
-msgid ""
-"The maximum size of memory that is consumed by each thread in "
-"linkgit:git-pack-objects[1] for pack window memory when no limit is given on "
-"the command line.  The value can be suffixed with \"k\", \"m\", or \"g\".  "
-"When left unconfigured (or set explicitly to 0), there will be no limit."
+#: en/git.txt:308
+msgid "Indicates a blob object name."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2314
-#, no-wrap
-msgid "pack.compression"
+#. type: Plain text
+#: en/git.txt:311
+msgid "Indicates a tree object name."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2322
-msgid ""
-"An integer -1..9, indicating the compression level for objects in a pack "
-"file. -1 is the zlib default. 0 means no compression, and 1..9 are various "
-"speed/size tradeoffs, 9 being slowest.  If not set, defaults to "
-"core.compression.  If that is not set, defaults to -1, the zlib default, "
-"which is \"a default compromise between speed and compression (currently "
-"equivalent to level 6).\""
+#: en/git.txt:314
+msgid "Indicates a commit object name."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2326
+#: en/git.txt:320
 msgid ""
-"Note that changing the compression level will not automatically recompress "
-"all existing objects. You can force recompression by passing the -F option "
-"to linkgit:git-repack[1]."
+"Indicates a tree, commit or tag object name.  A command that takes a <tree-"
+"ish> argument ultimately wants to operate on a <tree> object but "
+"automatically dereferences <commit> and <tag> objects that point at a <tree>."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2327
+#: en/git.txt:321
 #, no-wrap
-msgid "pack.deltaCacheSize"
+msgid "<commit-ish>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2337
+#: en/git.txt:326
 msgid ""
-"The maximum memory in bytes used for caching deltas in "
-"linkgit:git-pack-objects[1] before writing them out to a pack.  This cache "
-"is used to speed up the writing object phase by not having to recompute the "
-"final delta result once the best match for all objects is found.  Repacking "
-"large repositories on machines which are tight with memory might be badly "
-"impacted by this though, especially if this cache pushes the system into "
-"swapping.  A value of 0 means no limit. The smallest size of 1 byte may be "
-"used to virtually disable this cache. Defaults to 256 MiB."
+"Indicates a commit or tag object name.  A command that takes a <commit-ish> "
+"argument ultimately wants to operate on a <commit> object but automatically "
+"dereferences <tag> objects that point at a <commit>."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2338
-#, no-wrap
-msgid "pack.deltaCacheLimit"
+#. type: Plain text
+#: en/git.txt:330
+msgid ""
+"Indicates that an object type is required.  Currently one of: `blob`, "
+"`tree`, `commit`, or `tag`."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2343
+#: en/git.txt:334
 msgid ""
-"The maximum size of a delta, that is cached in "
-"linkgit:git-pack-objects[1]. This cache is used to speed up the writing "
-"object phase by not having to recompute the final delta result once the best "
-"match for all objects is found. Defaults to 1000."
+"Indicates a filename - almost always relative to the root of the tree "
+"structure `GIT_INDEX_FILE` describes."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2344
+#. type: Title -
+#: en/git.txt:336
 #, no-wrap
-msgid "pack.threads"
+msgid "Symbolic Identifiers"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2353
+#: en/git.txt:339
 msgid ""
-"Specifies the number of threads to spawn when searching for best delta "
-"matches.  This requires that linkgit:git-pack-objects[1] be compiled with "
-"pthreads otherwise this option is ignored with a warning. This is meant to "
-"reduce packing time on multiprocessor machines. The required amount of "
-"memory for the delta search window is however multiplied by the number of "
-"threads.  Specifying 0 will cause Git to auto-detect the number of CPU's and "
-"set the number of threads accordingly."
+"Any Git command accepting any <object> can also use the following symbolic "
+"notation:"
+msgstr ""
+
+#. type: Plain text
+#: en/git.txt:342
+msgid "indicates the head of the current branch."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2354
+#: en/git.txt:343
 #, no-wrap
-msgid "pack.indexVersion"
+msgid "<tag>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2362
-msgid ""
-"Specify the default pack index version.  Valid values are 1 for legacy pack "
-"index used by Git versions prior to 1.5.2, and 2 for the new pack index with "
-"capabilities for packs larger than 4 GB as well as proper protection against "
-"the repacking of corrupted packs.  Version 2 is the default.  Note that "
-"version 2 is enforced and this config option ignored whenever the "
-"corresponding pack is larger than 2 GB."
+#: en/git.txt:346
+msgid "a valid tag 'name' (i.e. a `refs/tags/<tag>` reference)."
+msgstr ""
+
+#. type: Plain text
+#: en/git.txt:350
+msgid "a valid head 'name' (i.e. a `refs/heads/<head>` reference)."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2370
+#: en/git.txt:353
 msgid ""
-"If you have an old Git that does not understand the version 2 `*.idx` file, "
-"cloning or fetching over a non native protocol (e.g. \"http\")  that will "
-"copy both `*.pack` file and corresponding `*.idx` file from the other side "
-"may give you a repository that cannot be accessed with your older version of "
-"Git. If the `*.pack` file is smaller than 2 GB, however, you can use "
-"linkgit:git-index-pack[1] on the *.pack file to regenerate the `*.idx` file."
+"For a more complete list of ways to spell object names, see \"SPECIFYING "
+"REVISIONS\" section in linkgit:gitrevisions[7]."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2371
+#. type: Title -
+#: en/git.txt:356
 #, no-wrap
-msgid "pack.packSizeLimit"
+msgid "File/Directory Structure"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2382
-msgid ""
-"The maximum size of a pack.  This setting only affects packing to a file "
-"when repacking, i.e. the git:// protocol is unaffected.  It can be "
-"overridden by the `--max-pack-size` option of linkgit:git-repack[1].  "
-"Reaching this limit results in the creation of multiple packfiles; which in "
-"turn prevents bitmaps from being created.  The minimum size allowed is "
-"limited to 1 MiB.  The default is unlimited.  Common unit suffixes of 'k', "
-"'m', or 'g' are supported."
+#: en/git.txt:359
+msgid "Please see the linkgit:gitrepository-layout[5] document."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2383
-#, no-wrap
-msgid "pack.useBitmaps"
+#. type: Plain text
+#: en/git.txt:361
+msgid "Read linkgit:githooks[5] for more details about each hook."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2388
+#: en/git.txt:364
 msgid ""
-"When true, git will use pack bitmaps (if available) when packing to stdout "
-"(e.g., during the server side of a fetch). Defaults to true. You should not "
-"generally need to turn this off unless you are debugging pack bitmaps."
+"Higher level SCMs may provide and manage additional information in the `"
+"$GIT_DIR`."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2389
+#. type: Title -
+#: en/git.txt:367
 #, no-wrap
-msgid "pack.writeBitmaps (deprecated)"
+msgid "Terminology"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2391
-msgid "This is a deprecated synonym for `repack.writeBitmaps`."
+#: en/git.txt:369
+msgid "Please see linkgit:gitglossary[7]."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2392
+#. type: Plain text
+#: en/git.txt:374
+msgid "Various Git commands use the following environment variables:"
+msgstr ""
+
+#. type: Title ~
+#: en/git.txt:376
 #, no-wrap
-msgid "pack.writeBitmapHashCache"
+msgid "The Git Repository"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2402
+#: en/git.txt:380
 msgid ""
-"When true, git will include a \"hash cache\" section in the bitmap index (if "
-"one is written). This cache can be used to feed git's delta heuristics, "
-"potentially leading to better deltas between bitmapped and non-bitmapped "
-"objects (e.g., when serving a fetch between an older, bitmapped pack and "
-"objects that have been pushed since the last gc). The downside is that it "
-"consumes 4 bytes per object of disk space, and that JGit's bitmap "
-"implementation does not understand it, causing it to complain if Git and "
-"JGit are used on the same repository. Defaults to false."
+"These environment variables apply to 'all' core Git commands. Nb: it is "
+"worth noting that they may be used/overridden by SCMS sitting above Git so "
+"take care if using a foreign front-end."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2403
+#: en/git.txt:381
 #, no-wrap
-msgid "pager.<cmd>"
+msgid "`GIT_INDEX_FILE`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2411
+#: en/git.txt:385
 msgid ""
-"If the value is boolean, turns on or off pagination of the output of a "
-"particular Git subcommand when writing to a tty.  Otherwise, turns on "
-"pagination for the subcommand using the pager specified by the value of "
-"`pager.<cmd>`.  If `--paginate` or `--no-pager` is specified on the command "
-"line, it takes precedence over this option.  To disable pagination for all "
-"commands, set `core.pager` or `GIT_PAGER` to `cat`."
+"This environment allows the specification of an alternate index file. If not "
+"specified, the default of `$GIT_DIR/index` is used."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2412
+#: en/git.txt:386
 #, no-wrap
-msgid "pretty.<name>"
+msgid "`GIT_INDEX_VERSION`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2421
+#: en/git.txt:391
 msgid ""
-"Alias for a --pretty= format string, as specified in linkgit:git-log[1]. Any "
-"aliases defined here can be used just as the built-in pretty formats "
-"could. For example, running `git config pretty.changelog \"format:* %H %s\"` "
-"would cause the invocation `git log --pretty=changelog` to be equivalent to "
-"running `git log \"--pretty=format:* %H %s\"`.  Note that an alias with the "
-"same name as a built-in format will be silently ignored."
+"This environment variable allows the specification of an index version for "
+"new repositories.  It won't affect existing index files.  By default index "
+"file version 2 or 3 is used. See linkgit:git-update-index[1] for more "
+"information."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2422
+#: en/git.txt:392
 #, no-wrap
-msgid "protocol.allow"
+msgid "`GIT_OBJECT_DIRECTORY`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2429
+#: en/git.txt:397
 msgid ""
-"If set, provide a user defined default policy for all protocols which don't "
-"explicitly have a policy (`protocol.<name>.allow`).  By default, if unset, "
-"known-safe protocols (http, https, git, ssh, file) have a default policy of "
-"`always`, known-dangerous protocols (ext) have a default policy of `never`, "
-"and all other protocols have a default policy of `user`.  Supported "
-"policies:"
+"If the object storage directory is specified via this environment variable "
+"then the sha1 directories are created underneath - otherwise the default `"
+"$GIT_DIR/objects` directory is used."
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2433
-msgid "`always` - protocol is always able to be used."
+#. type: Labeled list
+#: en/git.txt:398
+#, no-wrap
+msgid "`GIT_ALTERNATE_OBJECT_DIRECTORIES`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2435
-msgid "`never` - protocol is never able to be used."
+#: en/git.txt:404
+msgid ""
+"Due to the immutable nature of Git objects, old objects can be archived into "
+"shared, read-only directories. This variable specifies a \":\" separated (on "
+"Windows \";\" separated) list of Git object directories which can be used to "
+"search for Git objects. New objects will not be written to these directories."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2441
+#: en/git.txt:410
 msgid ""
-"`user` - protocol is only able to be used when `GIT_PROTOCOL_FROM_USER` is "
-"either unset or has a value of 1.  This policy should be used when you want "
-"a protocol to be directly usable by the user but don't want it used by "
-"commands which execute clone/fetch/push commands without user input, "
-"e.g. recursive submodule initialization."
+"Entries that begin with `\"` (double-quote) will be interpreted as C-style "
+"quoted paths, removing leading and trailing double-quotes and respecting "
+"backslash escapes. E.g., the value `\"path-with-\\\"-and-:-in-it\":vanilla-"
+"path` has two paths: `path-with-\"-and-:-in-it` and `vanilla-path`."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2444
+#: en/git.txt:411
 #, no-wrap
-msgid "protocol.<name>.allow"
+msgid "`GIT_DIR`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2447
+#: en/git.txt:416
 msgid ""
-"Set a policy to be used by protocol `<name>` with clone/fetch/push "
-"commands. See `protocol.allow` above for the available policies."
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:2449
-msgid "The protocol names currently used by git are:"
+"If the `GIT_DIR` environment variable is set then it specifies a path to use "
+"instead of the default `.git` for the base of the repository.  The `--git-"
+"dir` command-line option also sets this value."
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2453
-msgid "`file`: any local file-based path (including `file://` URLs, or local paths)"
+#. type: Labeled list
+#: en/git.txt:417
+#, no-wrap
+msgid "`GIT_WORK_TREE`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2456
+#: en/git.txt:421
 msgid ""
-"`git`: the anonymous git protocol over a direct TCP connection (or proxy, if "
-"configured)"
+"Set the path to the root of the working tree.  This can also be controlled "
+"by the `--work-tree` command-line option and the core.worktree configuration "
+"variable."
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2459
-msgid "`ssh`: git over ssh (including `host:path` syntax, `ssh://`, etc)."
+#. type: Labeled list
+#: en/git.txt:422
+#, no-wrap
+msgid "`GIT_NAMESPACE`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2463
+#: en/git.txt:425
 msgid ""
-"`http`: git over http, both \"smart http\" and \"dumb http\".  Note that "
-"this does _not_ include `https`; if you want to configure both, you must do "
-"so individually."
+"Set the Git namespace; see linkgit:gitnamespaces[7] for details.  The `--"
+"namespace` command-line option also sets this value."
+msgstr ""
+
+#. type: Labeled list
+#: en/git.txt:426
+#, no-wrap
+msgid "`GIT_CEILING_DIRECTORIES`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2466
+#: en/git.txt:440
 msgid ""
-"any external helpers are named by their protocol (e.g., use `hg` to allow "
-"the `git-remote-hg` helper)"
+"This should be a colon-separated list of absolute paths.  If set, it is a "
+"list of directories that Git should not chdir up into while looking for a "
+"repository directory (useful for excluding slow-loading network "
+"directories).  It will not exclude the current working directory or a "
+"GIT_DIR set on the command line or in the environment.  Normally, Git has to "
+"read the entries in this list and resolve any symlink that might be present "
+"in order to compare them with the current directory.  However, if even this "
+"access is slow, you can add an empty entry to the list to tell Git that the "
+"subsequent entries are not symlinks and needn't be resolved; e.g., "
+"`GIT_CEILING_DIRECTORIES=/maybe/symlink::/very/slow/non/symlink`."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2468
+#: en/git.txt:441
 #, no-wrap
-msgid "pull.ff"
+msgid "`GIT_DISCOVERY_ACROSS_FILESYSTEM`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2477
+#: en/git.txt:450
 msgid ""
-"By default, Git does not create an extra merge commit when merging a commit "
-"that is a descendant of the current commit. Instead, the tip of the current "
-"branch is fast-forwarded. When set to `false`, this variable tells Git to "
-"create an extra merge commit in such a case (equivalent to giving the "
-"`--no-ff` option from the command line). When set to `only`, only such "
-"fast-forward merges are allowed (equivalent to giving the `--ff-only` option "
-"from the command line). This setting overrides `merge.ff` when pulling."
+"When run in a directory that does not have \".git\" repository directory, "
+"Git tries to find such a directory in the parent directories to find the top "
+"of the working tree, but by default it does not cross filesystem "
+"boundaries.  This environment variable can be set to true to tell Git not to "
+"stop at filesystem boundaries.  Like `GIT_CEILING_DIRECTORIES`, this will "
+"not affect an explicit repository directory set via `GIT_DIR` or on the "
+"command line."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2478
+#: en/git.txt:451
 #, no-wrap
-msgid "pull.rebase"
+msgid "`GIT_COMMON_DIR`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2483
+#: en/git.txt:459
 msgid ""
-"When true, rebase branches on top of the fetched branch, instead of merging "
-"the default branch from the default remote when \"git pull\" is run. See "
-"\"branch.<name>.rebase\" for setting this on a per-branch basis."
+"If this variable is set to a path, non-worktree files that are normally in "
+"$GIT_DIR will be taken from this path instead. Worktree-specific files such "
+"as HEAD or index are taken from $GIT_DIR. See linkgit:gitrepository-"
+"layout[5] and linkgit:git-worktree[1] for details. This variable has lower "
+"precedence than other path variables such as GIT_INDEX_FILE, "
+"GIT_OBJECT_DIRECTORY..."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2494
+#. type: Title ~
+#: en/git.txt:461
 #, no-wrap
-msgid "pull.octopus"
+msgid "Git Commits"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2497
-msgid "The default merge strategy to use when pulling multiple branches at once."
+#. type: Labeled list
+#: en/git.txt:462
+#, no-wrap
+msgid "`GIT_AUTHOR_NAME`"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2498
+#: en/git.txt:463
 #, no-wrap
-msgid "pull.twohead"
+msgid "`GIT_AUTHOR_EMAIL`"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2500
-msgid "The default merge strategy to use when pulling a single branch."
+#. type: Labeled list
+#: en/git.txt:464
+#, no-wrap
+msgid "`GIT_AUTHOR_DATE`"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2501
+#: en/git.txt:465
 #, no-wrap
-msgid "push.default"
+msgid "`GIT_COMMITTER_NAME`"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2507
-msgid ""
-"Defines the action `git push` should take if no refspec is explicitly "
-"given.  Different values are well-suited for specific workflows; for "
-"instance, in a purely central workflow (i.e. the fetch source is equal to "
-"the push destination), `upstream` is probably what you want.  Possible "
-"values are:"
+#. type: Labeled list
+#: en/git.txt:466
+#, no-wrap
+msgid "`GIT_COMMITTER_EMAIL`"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2513
-msgid ""
-"`nothing` - do not push anything (error out) unless a refspec is explicitly "
-"given. This is primarily meant for people who want to avoid mistakes by "
-"always being explicit."
+#. type: Labeled list
+#: en/git.txt:467
+#, no-wrap
+msgid "`GIT_COMMITTER_DATE`"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2517
-msgid ""
-"`current` - push the current branch to update a branch with the same name on "
-"the receiving end.  Works in both central and non-central workflows."
+#. type: Labeled list
+#: en/git.txt:468
+#, no-wrap
+msgid "'EMAIL'"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2523
-msgid ""
-"`upstream` - push the current branch back to the branch whose changes are "
-"usually integrated into the current branch (which is called `@{upstream}`).  "
-"This mode only makes sense if you are pushing to the same repository you "
-"would normally pull from (i.e. central workflow)."
+#: en/git.txt:470
+msgid "see linkgit:git-commit-tree[1]"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2525
-msgid "`tracking` - This is a deprecated synonym for `upstream`."
+#. type: Title ~
+#: en/git.txt:472
+#, no-wrap
+msgid "Git Diffs"
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2529
-msgid ""
-"`simple` - in centralized workflow, work like `upstream` with an added "
-"safety to refuse to push if the upstream branch's name is different from the "
-"local one."
+#. type: Labeled list
+#: en/git.txt:473
+#, no-wrap
+msgid "`GIT_DIFF_OPTS`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2533
+#: en/git.txt:478
 msgid ""
-"When pushing to a remote that is different from the remote you normally pull "
-"from, work as `current`.  This is the safest option and is suited for "
-"beginners."
+"Only valid setting is \"--unified=??\" or \"-u??\" to set the number of "
+"context lines shown when a unified diff is created.  This takes precedence "
+"over any \"-U\" or \"--unified\" option value passed on the Git diff command "
+"line."
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:2535
-msgid "This mode has become the default in Git 2.0."
+#. type: Labeled list
+#: en/git.txt:479
+#, no-wrap
+msgid "`GIT_EXTERNAL_DIFF`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2542
+#: en/git.txt:484
 msgid ""
-"`matching` - push all branches having the same name on both ends.  This "
-"makes the repository you are pushing to remember the set of branches that "
-"will be pushed out (e.g. if you always push 'maint' and 'master' there and "
-"no other branches, the repository you push to will have these two branches, "
-"and your local 'maint' and 'master' will be pushed there)."
+"When the environment variable `GIT_EXTERNAL_DIFF` is set, the program named "
+"by it is called, instead of the diff invocation described above.  For a path "
+"that is added, removed, or modified, `GIT_EXTERNAL_DIFF` is called with 7 "
+"parameters:"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2552
-msgid ""
-"To use this mode effectively, you have to make sure _all_ the branches you "
-"would push out are ready to be pushed out before running 'git push', as the "
-"whole point of this mode is to allow you to push all of the branches in one "
-"go.  If you usually finish work on only one branch and push out the result, "
-"while other branches are unfinished, this mode is not for you.  Also this "
-"mode is not suitable for pushing into a shared central repository, as other "
-"people may add new branches there, or update the tip of existing branches "
-"outside your control."
+#: en/git.txt:486
+msgid "path old-file old-hex old-mode new-file new-hex new-mode"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2555
-msgid ""
-"This used to be the default, but not since Git 2.0 (`simple` is the new "
-"default)."
+#: en/git.txt:488
+msgid "where:"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2558
+#: en/git.txt:489
 #, no-wrap
-msgid "push.followTags"
+msgid "<old|new>-file"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2562
-msgid ""
-"If set to true enable `--follow-tags` option by default.  You may override "
-"this configuration at time of push by specifying `--no-follow-tags`."
+#: en/git.txt:490
+msgid "are files GIT_EXTERNAL_DIFF can use to read the"
+msgstr ""
+
+#. type: Plain text
+#: en/git.txt:491
+#, no-wrap
+msgid "contents of <old|new>,\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2563
+#: en/git.txt:491
 #, no-wrap
-msgid "push.gpgSign"
+msgid "<old|new>-hex"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2571
-msgid ""
-"May be set to a boolean value, or the string 'if-asked'. A true value causes "
-"all pushes to be GPG signed, as if `--signed` is passed to "
-"linkgit:git-push[1]. The string 'if-asked' causes pushes to be signed if the "
-"server supports it, as if `--signed=if-asked` is passed to 'git push'. A "
-"false value may override a value from a lower-priority config file. An "
-"explicit command-line flag always overrides this config option."
+#: en/git.txt:492
+msgid "are the 40-hexdigit SHA-1 hashes,"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2572
+#: en/git.txt:492
 #, no-wrap
-msgid "push.recurseSubmodules"
+msgid "<old|new>-mode"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2585
-msgid ""
-"Make sure all submodule commits used by the revisions to be pushed are "
-"available on a remote-tracking branch. If the value is 'check' then Git will "
-"verify that all submodule commits that changed in the revisions to be pushed "
-"are available on at least one remote of the submodule. If any commits are "
-"missing, the push will be aborted and exit with non-zero status. If the "
-"value is 'on-demand' then all submodules that changed in the revisions to be "
-"pushed will be pushed. If on-demand was not able to push all necessary "
-"revisions it will also be aborted and exit with non-zero status. If the "
-"value is 'no' then default behavior of ignoring submodules when pushing is "
-"retained. You may override this configuration at time of push by specifying "
-"'--recurse-submodules=check|on-demand|no'."
+#: en/git.txt:493
+msgid "are the octal representation of the file modes."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2600
+#: en/git.txt:499
 msgid ""
-"When set to true, automatically create a temporary stash before the "
-"operation begins, and apply it after the operation ends.  This means that "
-"you can run rebase on a dirty worktree.  However, use with care: the final "
-"stash application after a successful rebase might result in non-trivial "
-"conflicts.  Defaults to false."
+"The file parameters can point at the user's working file (e.g. `new-file` in "
+"\"git-diff-files\"), `/dev/null` (e.g. `old-file` when a new file is added), "
+"or a temporary file (e.g. `old-file` in the index).  `GIT_EXTERNAL_DIFF` "
+"should not worry about unlinking the temporary file --- it is removed when "
+"`GIT_EXTERNAL_DIFF` exits."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2611
+#: en/git.txt:502
 msgid ""
-"If set to \"warn\", git rebase -i will print a warning if some commits are "
-"removed (e.g. a line was deleted), however the rebase will still proceed. If "
-"set to \"error\", it will print the previous warning and stop the rebase, "
-"'git rebase --edit-todo' can then be used to correct the error. If set to "
-"\"ignore\", no checking is done.  To drop a commit without warning or error, "
-"use the `drop` command in the todo-list.  Defaults to \"ignore\"."
+"For a path that is unmerged, `GIT_EXTERNAL_DIFF` is called with 1 parameter, "
+"<path>."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2616
+#: en/git.txt:505
 msgid ""
-"A format string, as specified in linkgit:git-log[1], to be used for the "
-"instruction list during an interactive rebase.  The format will "
-"automatically have the long commit hash prepended to the format."
+"For each path `GIT_EXTERNAL_DIFF` is called, two environment variables, "
+"`GIT_DIFF_PATH_COUNTER` and `GIT_DIFF_PATH_TOTAL` are set."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2617
+#: en/git.txt:506
 #, no-wrap
-msgid "receive.advertiseAtomic"
+msgid "`GIT_DIFF_PATH_COUNTER`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2621
-msgid ""
-"By default, git-receive-pack will advertise the atomic push capability to "
-"its clients. If you don't want to advertise this capability, set this "
-"variable to false."
+#: en/git.txt:508
+msgid "A 1-based counter incremented by one for every path."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2622
+#: en/git.txt:509
 #, no-wrap
-msgid "receive.advertisePushOptions"
+msgid "`GIT_DIFF_PATH_TOTAL`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2626
-msgid ""
-"By default, git-receive-pack will advertise the push options capability to "
-"its clients. If you don't want to advertise this capability, set this "
-"variable to false."
+#: en/git.txt:511
+msgid "The total number of paths."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2627
+#: en/git.txt:514
 #, no-wrap
-msgid "receive.autogc"
+msgid "`GIT_MERGE_VERBOSITY`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2631
+#: en/git.txt:518
 msgid ""
-"By default, git-receive-pack will run \"git-gc --auto\" after receiving data "
-"from git-push and updating refs.  You can stop it by setting this variable "
-"to false."
+"A number controlling the amount of output shown by the recursive merge "
+"strategy.  Overrides merge.verbosity.  See linkgit:git-merge[1]"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2632
+#: en/git.txt:519
 #, no-wrap
-msgid "receive.certNonceSeed"
+msgid "`GIT_PAGER`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2637
+#: en/git.txt:524
 msgid ""
-"By setting this variable to a string, `git receive-pack` will accept a `git "
-"push --signed` and verifies it by using a \"nonce\" protected by HMAC using "
-"this string as a secret key."
+"This environment variable overrides `$PAGER`. If it is set to an empty "
+"string or to the value \"cat\", Git will not launch a pager.  See also the "
+"`core.pager` option in linkgit:git-config[1]."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2638
+#: en/git.txt:525
 #, no-wrap
-msgid "receive.certNonceSlop"
+msgid "`GIT_EDITOR`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2650
+#: en/git.txt:530
 msgid ""
-"When a `git push --signed` sent a push certificate with a \"nonce\" that was "
-"issued by a receive-pack serving the same repository within this many "
-"seconds, export the \"nonce\" found in the certificate to "
-"`GIT_PUSH_CERT_NONCE` to the hooks (instead of what the receive-pack asked "
-"the sending side to include).  This may allow writing checks in "
-"`pre-receive` and `post-receive` a bit easier.  Instead of checking "
-"`GIT_PUSH_CERT_NONCE_SLOP` environment variable that records by how many "
-"seconds the nonce is stale to decide if they want to accept the certificate, "
-"they only can check `GIT_PUSH_CERT_NONCE_STATUS` is `OK`."
+"This environment variable overrides `$EDITOR` and `$VISUAL`.  It is used by "
+"several Git commands when, on interactive mode, an editor is to be launched. "
+"See also linkgit:git-var[1] and the `core.editor` option in linkgit:git-"
+"config[1]."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2651
+#: en/git.txt:531
 #, no-wrap
-msgid "receive.fsckObjects"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:2657
-msgid ""
-"If it is set to true, git-receive-pack will check all received objects. It "
-"will abort in the case of a malformed object or a broken link. The result of "
-"an abort are only dangling objects.  Defaults to false. If not set, the "
-"value of `transfer.fsckObjects` is used instead."
+msgid "`GIT_SSH`"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2658
+#: en/git.txt:532
 #, no-wrap
-msgid "receive.fsck.<msg-id>"
+msgid "`GIT_SSH_COMMAND`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2666
+#: en/git.txt:539
 msgid ""
-"When `receive.fsckObjects` is set to true, errors can be switched to "
-"warnings and vice versa by configuring the `receive.fsck.<msg-id>` setting "
-"where the `<msg-id>` is the fsck message ID and the value is one of `error`, "
-"`warn` or `ignore`. For convenience, fsck prefixes the error/warning with "
-"the message ID, e.g. \"missingEmail: invalid author/committer line - missing "
-"email\" means that setting `receive.fsck.missingEmail = ignore` will hide "
-"that issue."
+"If either of these environment variables is set then 'git fetch' and 'git "
+"push' will use the specified command instead of 'ssh' when they need to "
+"connect to a remote system.  The command-line parameters passed to the "
+"configured command are determined by the ssh variant.  See `ssh.variant` "
+"option in linkgit:git-config[1] for details."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2671
+#: en/git.txt:546
 msgid ""
-"This feature is intended to support working with legacy repositories which "
-"would not pass pushing when `receive.fsckObjects = true`, allowing the host "
-"to accept repositories with certain known issues but still catch other "
-"issues."
+"`$GIT_SSH_COMMAND` takes precedence over `$GIT_SSH`, and is interpreted by "
+"the shell, which allows additional arguments to be included.  `$GIT_SSH` on "
+"the other hand must be just the path to a program (which can be a wrapper "
+"shell script, if additional arguments are needed)."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2672
-#, no-wrap
-msgid "receive.fsck.skipList"
+#. type: Plain text
+#: en/git.txt:550
+msgid ""
+"Usually it is easier to configure any desired options through your personal "
+"`.ssh/config` file.  Please consult your ssh documentation for further "
+"details."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2680
+#: en/git.txt:551
 #, no-wrap
-msgid "receive.keepAlive"
+msgid "`GIT_SSH_VARIANT`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2688
+#: en/git.txt:556
 msgid ""
-"After receiving the pack from the client, `receive-pack` may produce no "
-"output (if `--quiet` was specified) while processing the pack, causing some "
-"networks to drop the TCP connection.  With this option set, if "
-"`receive-pack` does not transmit any data in this phase for "
-"`receive.keepAlive` seconds, it will send a short keepalive packet.  The "
-"default is 5 seconds; set to 0 to disable keepalives entirely."
+"If this environment variable is set, it overrides Git's autodetection "
+"whether `GIT_SSH`/`GIT_SSH_COMMAND`/`core.sshCommand` refer to OpenSSH, "
+"plink or tortoiseplink. This variable overrides the config setting `ssh."
+"variant` that serves the same purpose."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2689
+#: en/git.txt:557
 #, no-wrap
-msgid "receive.unpackLimit"
+msgid "`GIT_ASKPASS`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2698
+#: en/git.txt:563
 msgid ""
-"If the number of objects received in a push is below this limit then the "
-"objects will be unpacked into loose object files. However if the number of "
-"received objects equals or exceeds this limit then the received pack will be "
-"stored as a pack, after adding any missing delta bases.  Storing the pack "
-"from a push can make the push operation complete faster, especially on slow "
-"filesystems.  If not set, the value of `transfer.unpackLimit` is used "
-"instead."
+"If this environment variable is set, then Git commands which need to acquire "
+"passwords or passphrases (e.g. for HTTP or IMAP authentication)  will call "
+"this program with a suitable prompt as command-line argument and read the "
+"password from its STDOUT. See also the `core.askPass` option in linkgit:git-"
+"config[1]."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2699
+#: en/git.txt:564
 #, no-wrap
-msgid "receive.maxInputSize"
+msgid "`GIT_TERMINAL_PROMPT`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2704
+#: en/git.txt:567
 msgid ""
-"If the size of the incoming pack stream is larger than this limit, then "
-"git-receive-pack will error out, instead of accepting the pack file. If not "
-"set or set to 0, then the size is unlimited."
+"If this environment variable is set to `0`, git will not prompt on the "
+"terminal (e.g., when asking for HTTP authentication)."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2705
+#: en/git.txt:568
 #, no-wrap
-msgid "receive.denyDeletes"
+msgid "`GIT_CONFIG_NOSYSTEM`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2708
+#: en/git.txt:575
 msgid ""
-"If set to true, git-receive-pack will deny a ref update that deletes the "
-"ref. Use this to prevent such a ref deletion via a push."
+"Whether to skip reading settings from the system-wide `$(prefix)/etc/"
+"gitconfig` file.  This environment variable can be used along with `$HOME` "
+"and `$XDG_CONFIG_HOME` to create a predictable environment for a picky "
+"script, or you can set it temporarily to avoid using a buggy `/etc/"
+"gitconfig` file while waiting for someone with sufficient permissions to fix "
+"it."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2709
+#: en/git.txt:576
 #, no-wrap
-msgid "receive.denyDeleteCurrent"
+msgid "`GIT_FLUSH`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2712
+#: en/git.txt:586
+#, no-wrap
 msgid ""
-"If set to true, git-receive-pack will deny a ref update that deletes the "
-"currently checked out branch of a non-bare repository."
+"If this environment variable is set to \"1\", then commands such\n"
+"as 'git blame' (in incremental mode), 'git rev-list', 'git log',\n"
+"'git check-attr' and 'git check-ignore' will\n"
+"force a flush of the output stream after each record have been\n"
+"flushed. If this\n"
+"variable is set to \"0\", the output of these commands will be done\n"
+"using completely buffered I/O.   If this environment variable is\n"
+"not set, Git will choose buffered or record-oriented flushing\n"
+"based on whether stdout appears to be redirected to a file or not.\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2713
+#: en/git.txt:587
 #, no-wrap
-msgid "receive.denyCurrentBranch"
+msgid "`GIT_TRACE`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2721
+#: en/git.txt:590
 msgid ""
-"If set to true or \"refuse\", git-receive-pack will deny a ref update to the "
-"currently checked out branch of a non-bare repository.  Such a push is "
-"potentially dangerous because it brings the HEAD out of sync with the index "
-"and working tree. If set to \"warn\", print a warning of such a push to "
-"stderr, but allow the push to proceed. If set to false or \"ignore\", allow "
-"such pushes with no message. Defaults to \"refuse\"."
+"Enables general trace messages, e.g. alias expansion, built-in command "
+"execution and external command execution."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2728
+#: en/git.txt:594
 msgid ""
-"Another option is \"updateInstead\" which will update the working tree if "
-"pushing into the current branch.  This option is intended for synchronizing "
-"working directories when one side is not easily accessible via interactive "
-"ssh (e.g. a live web site, hence the requirement that the working directory "
-"be clean). This mode also comes in handy when developing inside a VM to test "
-"and fix code on different Operating Systems."
+"If this variable is set to \"1\", \"2\" or \"true\" (comparison is case "
+"insensitive), trace messages will be printed to stderr."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2732
+#: en/git.txt:599
 msgid ""
-"By default, \"updateInstead\" will refuse the push if the working tree or "
-"the index have any difference from the HEAD, but the `push-to-checkout` hook "
-"can be used to customize this.  See linkgit:githooks[5]."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:2733
-#, no-wrap
-msgid "receive.denyNonFastForwards"
+"If the variable is set to an integer value greater than 2 and lower than 10 "
+"(strictly) then Git will interpret this value as an open file descriptor and "
+"will try to write the trace messages into this file descriptor."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2738
+#: en/git.txt:604
 msgid ""
-"If set to true, git-receive-pack will deny a ref update which is not a "
-"fast-forward. Use this to prevent such an update via a push, even if that "
-"push is forced. This configuration variable is set when initializing a "
-"shared repository."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:2739
-#, no-wrap
-msgid "receive.hideRefs"
+"Alternatively, if the variable is set to an absolute path (starting with a "
+"'/' character), Git will interpret this as a file path and will try to "
+"append the trace messages to it."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2744
+#: en/git.txt:607
 msgid ""
-"This variable is the same as `transfer.hideRefs`, but applies only to "
-"`receive-pack` (and so affects pushes, but not fetches).  An attempt to "
-"update or delete a hidden ref by `git push` is rejected."
+"Unsetting the variable, or setting it to empty, \"0\" or \"false\" (case "
+"insensitive) disables trace messages."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2745
+#: en/git.txt:608
 #, no-wrap
-msgid "receive.updateServerInfo"
+msgid "`GIT_TRACE_FSMONITOR`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2748
+#: en/git.txt:611
 msgid ""
-"If set to true, git-receive-pack will run git-update-server-info after "
-"receiving data from git-push and updating refs."
+"Enables trace messages for the filesystem monitor extension.  See "
+"`GIT_TRACE` for available trace output options."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2749
+#: en/git.txt:612
 #, no-wrap
-msgid "receive.shallowUpdate"
+msgid "`GIT_TRACE_PACK_ACCESS`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2752
+#: en/git.txt:618
 msgid ""
-"If set to true, .git/shallow can be updated when new refs require new "
-"shallow roots. Otherwise those refs are rejected."
+"Enables trace messages for all accesses to any packs. For each access, the "
+"pack file name and an offset in the pack is recorded. This may be helpful "
+"for troubleshooting some pack-related performance problems.  See `GIT_TRACE` "
+"for available trace output options."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2753
+#: en/git.txt:619
 #, no-wrap
-msgid "remote.pushDefault"
+msgid "`GIT_TRACE_PACKET`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2757
+#: en/git.txt:625
 msgid ""
-"The remote to push to by default.  Overrides `branch.<name>.remote` for all "
-"branches, and is overridden by `branch.<name>.pushRemote` for specific "
-"branches."
+"Enables trace messages for all packets coming in or out of a given program. "
+"This can help with debugging object negotiation or other protocol issues. "
+"Tracing is turned off at a packet starting with \"PACK\" (but see "
+"`GIT_TRACE_PACKFILE` below).  See `GIT_TRACE` for available trace output "
+"options."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2758
+#: en/git.txt:626
 #, no-wrap
-msgid "remote.<name>.url"
+msgid "`GIT_TRACE_PACKFILE`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2761
+#: en/git.txt:633
 msgid ""
-"The URL of a remote repository.  See linkgit:git-fetch[1] or "
-"linkgit:git-push[1]."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:2762
-#, no-wrap
-msgid "remote.<name>.pushurl"
+"Enables tracing of packfiles sent or received by a given program. Unlike "
+"other trace output, this trace is verbatim: no headers, and no quoting of "
+"binary data. You almost certainly want to direct into a file (e.g., "
+"`GIT_TRACE_PACKFILE=/tmp/my.pack`) rather than displaying it on the terminal "
+"or mixing it with other trace output."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2764
-msgid "The push URL of a remote repository.  See linkgit:git-push[1]."
+#: en/git.txt:636
+msgid ""
+"Note that this is currently only implemented for the client side of clones "
+"and fetches."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2765
+#: en/git.txt:637
 #, no-wrap
-msgid "remote.<name>.proxy"
+msgid "`GIT_TRACE_PERFORMANCE`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2769
+#: en/git.txt:641
 msgid ""
-"For remotes that require curl (http, https and ftp), the URL to the proxy to "
-"use for that remote.  Set to the empty string to disable proxying for that "
-"remote."
+"Enables performance related trace messages, e.g. total execution time of "
+"each Git command.  See `GIT_TRACE` for available trace output options."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2770
+#: en/git.txt:642
 #, no-wrap
-msgid "remote.<name>.proxyAuthMethod"
+msgid "`GIT_TRACE_SETUP`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2774
+#: en/git.txt:646
 msgid ""
-"For remotes that require curl (http, https and ftp), the method to use for "
-"authenticating against the proxy in use (probably set in "
-"`remote.<name>.proxy`). See `http.proxyAuthMethod`."
+"Enables trace messages printing the .git, working tree and current working "
+"directory after Git has completed its setup phase.  See `GIT_TRACE` for "
+"available trace output options."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2775
+#: en/git.txt:647
 #, no-wrap
-msgid "remote.<name>.fetch"
+msgid "`GIT_TRACE_SHALLOW`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2778
+#: en/git.txt:651
 msgid ""
-"The default set of \"refspec\" for linkgit:git-fetch[1]. See "
-"linkgit:git-fetch[1]."
+"Enables trace messages that can help debugging fetching / cloning of shallow "
+"repositories.  See `GIT_TRACE` for available trace output options."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2779
+#: en/git.txt:652
 #, no-wrap
-msgid "remote.<name>.push"
+msgid "`GIT_TRACE_CURL`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2782
+#: en/git.txt:659
 msgid ""
-"The default set of \"refspec\" for linkgit:git-push[1]. See "
-"linkgit:git-push[1]."
+"Enables a curl full trace dump of all incoming and outgoing data, including "
+"descriptive information, of the git transport protocol.  This is similar to "
+"doing curl `--trace-ascii` on the command line.  This option overrides "
+"setting the `GIT_CURL_VERBOSE` environment variable.  See `GIT_TRACE` for "
+"available trace output options."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2783
+#: en/git.txt:660
 #, no-wrap
-msgid "remote.<name>.mirror"
+msgid "`GIT_TRACE_CURL_NO_DATA`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2786
+#: en/git.txt:663
 msgid ""
-"If true, pushing to this remote will automatically behave as if the "
-"`--mirror` option was given on the command line."
+"When a curl trace is enabled (see `GIT_TRACE_CURL` above), do not dump data "
+"(that is, only dump info lines and headers)."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2787
+#: en/git.txt:664
 #, no-wrap
-msgid "remote.<name>.skipDefaultUpdate"
+msgid "`GIT_REDACT_COOKIES`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2791 en/config.txt:2796
+#: en/git.txt:669
 msgid ""
-"If true, this remote will be skipped by default when updating using "
-"linkgit:git-fetch[1] or the `update` subcommand of linkgit:git-remote[1]."
+"This can be set to a comma-separated list of strings. When a curl trace is "
+"enabled (see `GIT_TRACE_CURL` above), whenever a \"Cookies:\" header sent by "
+"the client is dumped, values of cookies whose key is in that list (case-"
+"sensitive) are redacted."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2792
+#: en/git.txt:670
 #, no-wrap
-msgid "remote.<name>.skipFetchAll"
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:2797
-#, no-wrap
-msgid "remote.<name>.receivepack"
+msgid "`GIT_LITERAL_PATHSPECS`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2800
+#: en/git.txt:678
 msgid ""
-"The default program to execute on the remote side when pushing.  See option "
-"--receive-pack of linkgit:git-push[1]."
+"Setting this variable to `1` will cause Git to treat all pathspecs "
+"literally, rather than as glob patterns. For example, running "
+"`GIT_LITERAL_PATHSPECS=1 git log -- '*.c'` will search for commits that "
+"touch the path `*.c`, not any paths that the glob `*.c` matches. You might "
+"want this if you are feeding literal paths to Git (e.g., paths previously "
+"given to you by `git ls-tree`, `--raw` diff output, etc)."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2801
+#: en/git.txt:679
 #, no-wrap
-msgid "remote.<name>.uploadpack"
+msgid "`GIT_GLOB_PATHSPECS`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2804
+#: en/git.txt:682
 msgid ""
-"The default program to execute on the remote side when fetching.  See option "
-"--upload-pack of linkgit:git-fetch-pack[1]."
+"Setting this variable to `1` will cause Git to treat all pathspecs as glob "
+"patterns (aka \"glob\" magic)."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2805
+#: en/git.txt:683
 #, no-wrap
-msgid "remote.<name>.tagOpt"
+msgid "`GIT_NOGLOB_PATHSPECS`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2812
+#: en/git.txt:686
 msgid ""
-"Setting this value to --no-tags disables automatic tag following when "
-"fetching from remote <name>. Setting it to --tags will fetch every tag from "
-"remote <name>, even if they are not reachable from remote branch "
-"heads. Passing these flags directly to linkgit:git-fetch[1] can override "
-"this setting. See options --tags and --no-tags of linkgit:git-fetch[1]."
+"Setting this variable to `1` will cause Git to treat all pathspecs as "
+"literal (aka \"literal\" magic)."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2813
+#: en/git.txt:687
 #, no-wrap
-msgid "remote.<name>.vcs"
+msgid "`GIT_ICASE_PATHSPECS`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2816
+#: en/git.txt:690
 msgid ""
-"Setting this to a value <vcs> will cause Git to interact with the remote "
-"with the git-remote-<vcs> helper."
+"Setting this variable to `1` will cause Git to treat all pathspecs as case-"
+"insensitive."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2817
+#: en/git.txt:691
 #, no-wrap
-msgid "remote.<name>.prune"
+msgid "`GIT_REFLOG_ACTION`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2822
+#: en/git.txt:700
 msgid ""
-"When set to true, fetching from this remote by default will also remove any "
-"remote-tracking references that no longer exist on the remote (as if the "
-"`--prune` option was given on the command line).  Overrides `fetch.prune` "
-"settings, if any."
+"When a ref is updated, reflog entries are created to keep track of the "
+"reason why the ref was updated (which is typically the name of the high-"
+"level command that updated the ref), in addition to the old and new values "
+"of the ref.  A scripted Porcelain command can use set_reflog_action helper "
+"function in `git-sh-setup` to set its name to this variable when it is "
+"invoked as the top level command by the end user, to be recorded in the body "
+"of the reflog."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2823
+#: en/git.txt:701
 #, no-wrap
-msgid "remotes.<group>"
+msgid "`GIT_REF_PARANOIA`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2826
+#: en/git.txt:711
 msgid ""
-"The list of remotes which are fetched by \"git remote update <group>\".  See "
-"linkgit:git-remote[1]."
+"If set to `1`, include broken or badly named refs when iterating over lists "
+"of refs. In a normal, non-corrupted repository, this does nothing. However, "
+"enabling it may help git to detect and abort some operations in the presence "
+"of broken refs. Git sets this variable automatically when performing "
+"destructive operations like linkgit:git-prune[1]. You should not need to set "
+"it yourself unless you want to be paranoid about making sure an operation "
+"has touched every ref (e.g., because you are cloning a repository to make a "
+"backup)."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2827
+#: en/git.txt:712
 #, no-wrap
-msgid "repack.useDeltaBaseOffset"
+msgid "`GIT_ALLOW_PROTOCOL`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2834
+#: en/git.txt:720
 msgid ""
-"By default, linkgit:git-repack[1] creates packs that use delta-base "
-"offset. If you need to share your repository with Git older than version "
-"1.4.4, either directly or via a dumb protocol such as http, then you need to "
-"set this option to \"false\" and repack. Access from old Git versions over "
-"the native protocol are unaffected by this option."
+"If set to a colon-separated list of protocols, behave as if `protocol.allow` "
+"is set to `never`, and each of the listed protocols has `protocol.<name>."
+"allow` set to `always` (overriding any existing configuration). In other "
+"words, any protocol not mentioned will be disallowed (i.e., this is a "
+"whitelist, not a blacklist). See the description of `protocol.allow` in "
+"linkgit:git-config[1] for more details."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2835
+#: en/git.txt:721
 #, no-wrap
-msgid "repack.packKeptObjects"
+msgid "`GIT_PROTOCOL_FROM_USER`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2841
+#: en/git.txt:727
 msgid ""
-"If set to true, makes `git repack` act as if `--pack-kept-objects` was "
-"passed. See linkgit:git-repack[1] for details. Defaults to `false` normally, "
-"but `true` if a bitmap index is being written (either via "
-"`--write-bitmap-index` or `repack.writeBitmaps`)."
+"Set to 0 to prevent protocols used by fetch/push/clone which are configured "
+"to the `user` state.  This is useful to restrict recursive submodule "
+"initialization from an untrusted repository or for programs which feed "
+"potentially-untrusted URLS to git commands.  See linkgit:git-config[1] for "
+"more details."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2842
+#: en/git.txt:728
 #, no-wrap
-msgid "repack.writeBitmaps"
+msgid "`GIT_PROTOCOL`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2850
+#: en/git.txt:733
 msgid ""
-"When true, git will write a bitmap index when packing all objects to disk "
-"(e.g., when `git repack -a` is run).  This index can speed up the \"counting "
-"objects\" phase of subsequent packs created for clones and fetches, at the "
-"cost of some disk space and extra time spent on the initial repack.  This "
-"has no effect if multiple packfiles are created.  Defaults to false."
+"For internal use only.  Used in handshaking the wire protocol.  Contains a "
+"colon ':' separated list of keys with optional values 'key[=value]'.  "
+"Presence of unknown keys and values must be ignored."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2851
+#: en/git.txt:734
 #, no-wrap
-msgid "rerere.autoUpdate"
+msgid "`GIT_OPTIONAL_LOCKS`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2855
+#: en/git.txt:741
 msgid ""
-"When set to true, `git-rerere` updates the index with the resulting contents "
-"after it cleanly resolves conflicts using previously recorded resolution.  "
-"Defaults to false."
+"If set to `0`, Git will complete any requested operation without performing "
+"any optional sub-operations that require taking a lock.  For example, this "
+"will prevent `git status` from refreshing the index as a side effect. This "
+"is useful for processes running in the background which do not want to cause "
+"lock contention with other operations on the repository.  Defaults to `1`."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2856
+#: en/git.txt:742
 #, no-wrap
-msgid "rerere.enabled"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:2863
-msgid ""
-"Activate recording of resolved conflicts, so that identical conflict hunks "
-"can be resolved automatically, should they be encountered again.  By "
-"default, linkgit:git-rerere[1] is enabled if there is an `rr-cache` "
-"directory under the `$GIT_DIR`, e.g. if \"rerere\" was previously used in "
-"the repository."
+msgid "`GIT_REDIRECT_STDIN`"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2864
+#: en/git.txt:743
 #, no-wrap
-msgid "sendemail.identity"
+msgid "`GIT_REDIRECT_STDOUT`"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2870
+#: en/git.txt:744
 #, no-wrap
-msgid "sendemail.smtpEncryption"
+msgid "`GIT_REDIRECT_STDERR`"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2873
+#: en/git.txt:754
 msgid ""
-"See linkgit:git-send-email[1] for description.  Note that this setting is "
-"not subject to the 'identity' mechanism."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:2874
-#, no-wrap
-msgid "sendemail.smtpssl (deprecated)"
+"Windows-only: allow redirecting the standard input/output/error handles to "
+"paths specified by the environment variables. This is particularly useful in "
+"multi-threaded applications where the canonical way to pass standard handles "
+"via `CreateProcess()` is not an option because it would require the handles "
+"to be marked inheritable (and consequently *every* spawned process would "
+"inherit them, possibly blocking regular Git operations). The primary "
+"intended use case is to use named pipes for communication (e.g. `\\\\.\\pipe"
+"\\my-git-stdin-123`)."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2876
-msgid "Deprecated alias for 'sendemail.smtpEncryption = ssl'."
+#: en/git.txt:759
+msgid ""
+"Two special values are supported: `off` will simply close the corresponding "
+"standard handle, and if `GIT_REDIRECT_STDERR` is `2>&1`, standard error will "
+"be redirected to the same handle as standard output."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2877
+#: en/git.txt:760
 #, no-wrap
-msgid "sendemail.smtpsslcertpath"
+msgid "`GIT_PRINT_SHA1_ELLIPSIS` (deprecated)"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2880
+#: en/git.txt:768
 msgid ""
-"Path to ca-certificates (either a directory or a single file).  Set it to an "
-"empty string to disable certificate verification."
+"If set to `yes`, print an ellipsis following an (abbreviated) SHA-1 value.  "
+"This affects indications of detached HEADs (linkgit:git-checkout[1]) and the "
+"raw diff output (linkgit:git-diff[1]).  Printing an ellipsis in the cases "
+"mentioned is no longer considered adequate and support for it is likely to "
+"be removed in the foreseeable future (along with the variable)."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2881
+#. type: Title -
+#: en/git.txt:770
 #, no-wrap
-msgid "sendemail.<identity>.*"
+msgid "Discussion[[Discussion]]"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2886
+#: en/git.txt:775
 msgid ""
-"Identity-specific versions of the 'sendemail.*' parameters found below, "
-"taking precedence over those when the this identity is selected, through "
-"command-line or `sendemail.identity`."
+"More detail on the following is available from the link:user-manual.html#git-"
+"concepts[Git concepts chapter of the user-manual] and linkgit:gitcore-"
+"tutorial[7]."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2889
-#, no-wrap
-msgid "sendemail.annotate"
+#. type: Plain text
+#: en/git.txt:782
+msgid ""
+"A Git project normally consists of a working directory with a \".git\" "
+"subdirectory at the top level.  The .git directory contains, among other "
+"things, a compressed object database representing the complete history of "
+"the project, an \"index\" file which links that history to the current "
+"contents of the working tree, and named pointers into that history such as "
+"tags and branch heads."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2890
-#, no-wrap
-msgid "sendemail.bcc"
+#. type: Plain text
+#: en/git.txt:787
+msgid ""
+"The object database contains objects of three main types: blobs, which hold "
+"file data; trees, which point to blobs and other trees to build up directory "
+"hierarchies; and commits, which each reference a single tree and some number "
+"of parent commits."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2891
-#, no-wrap
-msgid "sendemail.cc"
+#. type: Plain text
+#: en/git.txt:792
+msgid ""
+"The commit, equivalent to what other systems call a \"changeset\" or "
+"\"version\", represents a step in the project's history, and each parent "
+"represents an immediately preceding step.  Commits with more than one parent "
+"represent merges of independent lines of development."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2892
-#, no-wrap
-msgid "sendemail.ccCmd"
+#. type: Plain text
+#: en/git.txt:798
+msgid ""
+"All objects are named by the SHA-1 hash of their contents, normally written "
+"as a string of 40 hex digits.  Such names are globally unique.  The entire "
+"history leading up to a commit can be vouched for by signing just that "
+"commit.  A fourth object type, the tag, is provided for this purpose."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2893
-#, no-wrap
-msgid "sendemail.chainReplyTo"
+#. type: Plain text
+#: en/git.txt:801
+msgid ""
+"When first created, objects are stored in individual files, but for "
+"efficiency may later be compressed together into \"pack files\"."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2895
-#, no-wrap
-msgid "sendemail.envelopeSender"
+#. type: Plain text
+#: en/git.txt:808
+msgid ""
+"Named pointers called refs mark interesting points in history.  A ref may "
+"contain the SHA-1 name of an object or the name of another ref.  Refs with "
+"names beginning `ref/head/` contain the SHA-1 name of the most recent commit "
+"(or \"head\") of a branch under development.  SHA-1 names of tags of "
+"interest are stored under `ref/tags/`.  A special ref named `HEAD` contains "
+"the name of the currently checked-out branch."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2896
-#, no-wrap
-msgid "sendemail.from"
+#. type: Plain text
+#: en/git.txt:817
+msgid ""
+"The index file is initialized with a list of all paths and, for each path, a "
+"blob object and a set of attributes.  The blob object represents the "
+"contents of the file as of the head of the current branch.  The attributes "
+"(last modified time, size, etc.) are taken from the corresponding file in "
+"the working tree.  Subsequent changes to the working tree can be found by "
+"comparing these attributes.  The index may be updated with new content, and "
+"new commits may be created from the content stored in the index."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2898
-#, no-wrap
-msgid "sendemail.signedoffbycc"
+#. type: Plain text
+#: en/git.txt:821
+msgid ""
+"The index is also capable of storing multiple entries (called \"stages\")  "
+"for a given pathname.  These stages are used to hold the various unmerged "
+"version of a file when a merge is in progress."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2899
+#. type: Title -
+#: en/git.txt:823
 #, no-wrap
-msgid "sendemail.smtpPass"
+msgid "FURTHER DOCUMENTATION"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2900
-#, no-wrap
-msgid "sendemail.suppresscc"
+#. type: Plain text
+#: en/git.txt:828
+msgid ""
+"See the references in the \"description\" section to get started using Git.  "
+"The following is probably more detail than necessary for a first-time user."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2901
-#, no-wrap
-msgid "sendemail.suppressFrom"
+#. type: Plain text
+#: en/git.txt:832
+msgid ""
+"The link:user-manual.html#git-concepts[Git concepts chapter of the user-"
+"manual] and linkgit:gitcore-tutorial[7] both provide introductions to the "
+"underlying Git architecture."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2902
-#, no-wrap
-msgid "sendemail.to"
+#. type: Plain text
+#: en/git.txt:834
+msgid "See linkgit:gitworkflows[7] for an overview of recommended workflows."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2903
-#, no-wrap
-msgid "sendemail.smtpDomain"
+#. type: Plain text
+#: en/git.txt:837
+msgid ""
+"See also the link:howto-index.html[howto] documents for some useful examples."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2904
-#, no-wrap
-msgid "sendemail.smtpServer"
+#. type: Plain text
+#: en/git.txt:840
+msgid ""
+"The internals are documented in the link:technical/api-index.html[Git API "
+"documentation]."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2905
-#, no-wrap
-msgid "sendemail.smtpServerPort"
+#. type: Plain text
+#: en/git.txt:843
+msgid ""
+"Users migrating from CVS may also want to read linkgit:gitcvs-migration[7]."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2906
+#. type: Title -
+#: en/git.txt:846
 #, no-wrap
-msgid "sendemail.smtpServerOption"
+msgid "Authors"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2907
-#, no-wrap
-msgid "sendemail.smtpUser"
+#. type: Plain text
+#: en/git.txt:851
+msgid ""
+"Git was started by Linus Torvalds, and is currently maintained by Junio C "
+"Hamano. Numerous contributions have come from the Git mailing list <git@vger."
+"kernel.org>.  http://www.openhub.net/p/git/contributors/summary gives you a "
+"more complete list of contributors."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2908
-#, no-wrap
-msgid "sendemail.thread"
+#. type: Plain text
+#: en/git.txt:855
+msgid ""
+"If you have a clone of git.git itself, the output of linkgit:git-shortlog[1] "
+"and linkgit:git-blame[1] can show you the authors for specific parts of the "
+"project."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2909
+#. type: Title -
+#: en/git.txt:857
 #, no-wrap
-msgid "sendemail.transferEncoding"
+msgid "Reporting Bugs"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2910
-#, no-wrap
-msgid "sendemail.validate"
+#. type: Plain text
+#: en/git.txt:864
+msgid ""
+"Report bugs to the Git mailing list <git@vger.kernel.org> where the "
+"development and maintenance is primarily done.  You do not have to be "
+"subscribed to the list to send a message there.  See the list archive at "
+"https://public-inbox.org/git for previous bug reports and other discussions."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2911
-#, no-wrap
-msgid "sendemail.xmailer"
+#. type: Plain text
+#: en/git.txt:867
+msgid ""
+"Issues which are security relevant should be disclosed privately to the Git "
+"Security mailing list <git-security@googlegroups.com>."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2913
-msgid "See linkgit:git-send-email[1] for description."
+#: en/git.txt:875
+msgid ""
+"linkgit:gittutorial[7], linkgit:gittutorial-2[7], linkgit:giteveryday[7], "
+"linkgit:gitcvs-migration[7], linkgit:gitglossary[7], linkgit:gitcore-"
+"tutorial[7], linkgit:gitcli[7], link:user-manual.html[The Git User's "
+"Manual], linkgit:gitworkflows[7]"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2914
+#. type: Title =
+#: en/git-unpack-file.txt:2
 #, no-wrap
-msgid "sendemail.signedoffcc (deprecated)"
+msgid "git-unpack-file(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2916
-msgid "Deprecated alias for `sendemail.signedoffbycc`."
+#: en/git-unpack-file.txt:7
+msgid "git-unpack-file - Creates a temporary file with a blob's contents"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2917
+#. type: Plain text
+#: en/git-unpack-file.txt:14
 #, no-wrap
-msgid "showbranch.default"
+msgid "'git unpack-file' <blob>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2920
+#: en/git-unpack-file.txt:20
+#, no-wrap
 msgid ""
-"The default set of branches for linkgit:git-show-branch[1].  See "
-"linkgit:git-show-branch[1]."
+"Creates a file holding the contents of the blob specified by sha1. It\n"
+"returns the name of the temporary file in the following format:\n"
+"\t.merge_file_XXXXX\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2921
+#. type: Plain text
+#: en/git-unpack-file.txt:25
+msgid "Must be a blob id"
+msgstr ""
+
+#. type: Title =
+#: en/git-unpack-objects.txt:2
 #, no-wrap
-msgid "splitIndex.maxPercentChange"
+msgid "git-unpack-objects(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2933
-msgid ""
-"When the split index feature is used, this specifies the percent of entries "
-"the split index can contain compared to the total number of entries in both "
-"the split index and the shared index before a new shared index is written.  "
-"The value should be between 0 and 100. If the value is 0 then a new shared "
-"index is always written, if it is 100 a new shared index is never written.  "
-"By default the value is 20, so a new shared index is written if the number "
-"of entries in the split index would be greater than 20 percent of the total "
-"number of entries.  See linkgit:git-update-index[1]."
+#: en/git-unpack-objects.txt:7
+msgid "git-unpack-objects - Unpack objects from a packed archive"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2934
+#. type: Plain text
+#: en/git-unpack-objects.txt:13
 #, no-wrap
-msgid "splitIndex.sharedIndexExpire"
+msgid "'git unpack-objects' [-n] [-q] [-r] [--strict]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2945
+#: en/git-unpack-objects.txt:20
 msgid ""
-"When the split index feature is used, shared index files that were not "
-"modified since the time this variable specifies will be removed when a new "
-"shared index file is created. The value \"now\" expires all entries "
-"immediately, and \"never\" suppresses expiration altogether.  The default "
-"value is \"2.weeks.ago\".  Note that a shared index file is considered "
-"modified (for the purpose of expiration) each time a new split-index file is "
-"either created based on it or read from it.  See "
-"linkgit:git-update-index[1]."
+"Read a packed archive (.pack) from the standard input, expanding the objects "
+"contained within and writing them into the repository in \"loose\" (one "
+"object per file) format."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2946
-#, no-wrap
-msgid "status.relativePaths"
+#. type: Plain text
+#: en/git-unpack-objects.txt:24
+msgid ""
+"Objects that already exist in the repository will *not* be unpacked from the "
+"packfile.  Therefore, nothing will be unpacked if you use this command on a "
+"packfile that exists within the target repository."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2951
+#: en/git-unpack-objects.txt:27
 msgid ""
-"By default, linkgit:git-status[1] shows paths relative to the current "
-"directory. Setting this variable to `false` shows paths relative to the "
-"repository root (this was the default for Git prior to v1.5.4)."
+"See linkgit:git-repack[1] for options to generate new packs and replace "
+"existing ones."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2952
-#, no-wrap
-msgid "status.short"
+#. type: Plain text
+#: en/git-unpack-objects.txt:32
+msgid "Dry run.  Check the pack file without actually unpacking"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2955
-msgid ""
-"Set to true to enable --short by default in linkgit:git-status[1].  The "
-"option --no-short takes precedence over this variable."
+#: en/git-unpack-objects.txt:33
+msgid "the objects."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2956
-#, no-wrap
-msgid "status.branch"
+#. type: Plain text
+#: en/git-unpack-objects.txt:37
+msgid ""
+"The command usually shows percentage progress.  This flag suppresses it."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2959
+#: en/git-unpack-objects.txt:43
 msgid ""
-"Set to true to enable --branch by default in linkgit:git-status[1].  The "
-"option --no-branch takes precedence over this variable."
+"When unpacking a corrupt packfile, the command dies at the first "
+"corruption.  This flag tells it to keep going and make the best effort to "
+"recover as many objects as possible."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:2960
+#. type: Plain text
+#: en/git-unpack-objects.txt:46
+msgid "Don't write objects with broken content or links."
+msgstr ""
+
+#. type: Title =
+#: en/git-update-index.txt:2
 #, no-wrap
-msgid "status.displayCommentPrefix"
+msgid "git-update-index(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2966
+#: en/git-update-index.txt:7
 msgid ""
-"If set to true, linkgit:git-status[1] will insert a comment prefix before "
-"each output line (starting with `core.commentChar`, i.e. `#` by "
-"default). This was the behavior of linkgit:git-status[1] in Git 1.8.4 and "
-"previous.  Defaults to false."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:2967
-#, no-wrap
-msgid "status.showUntrackedFiles"
+"git-update-index - Register file contents in the working tree to the index"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2975
+#: en/git-update-index.txt:29
+#, no-wrap
 msgid ""
-"By default, linkgit:git-status[1] and linkgit:git-commit[1] show files which "
-"are not currently tracked by Git. Directories which contain only untracked "
-"files, are shown with the directory name only. Showing untracked files means "
-"that Git needs to lstat() all the files in the whole repository, which might "
-"be slow on some systems. So, this variable controls how the commands "
-"displays the untracked files. Possible values are:"
+"'git update-index'\n"
+"\t     [--add] [--remove | --force-remove] [--replace]\n"
+"\t     [--refresh] [-q] [--unmerged] [--ignore-missing]\n"
+"\t     [(--cacheinfo <mode>,<object>,<file>)...]\n"
+"\t     [--chmod=(+|-)x]\n"
+"\t     [--[no-]assume-unchanged]\n"
+"\t     [--[no-]skip-worktree]\n"
+"\t     [--[no-]fsmonitor-valid]\n"
+"\t     [--ignore-submodules]\n"
+"\t     [--[no-]split-index]\n"
+"\t     [--[no-|test-|force-]untracked-cache]\n"
+"\t     [--[no-]fsmonitor]\n"
+"\t     [--really-refresh] [--unresolve] [--again | -g]\n"
+"\t     [--info-only] [--index-info]\n"
+"\t     [-z] [--stdin] [--index-version <n>]\n"
+"\t     [--verbose]\n"
+"\t     [--] [<file>...]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2978
-msgid "`no` - Show no untracked files."
+#: en/git-update-index.txt:35
+msgid ""
+"Modifies the index or directory cache. Each file mentioned is updated into "
+"the index and any 'unmerged' or 'needs updating' state is cleared."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2979
-msgid "`normal` - Show untracked files and directories."
+#: en/git-update-index.txt:38
+msgid ""
+"See also linkgit:git-add[1] for a more user-friendly way to do some of the "
+"most common operations on the index."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2980
-msgid "`all` - Show also individual files in untracked directories."
+#: en/git-update-index.txt:41
+msgid ""
+"The way 'git update-index' handles files it is told about can be modified "
+"using the various options:"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:2985
+#: en/git-update-index.txt:48
 msgid ""
-"If this variable is not specified, it defaults to 'normal'.  This variable "
-"can be overridden with the -u|--untracked-files option of "
-"linkgit:git-status[1] and linkgit:git-commit[1]."
+"If a specified file isn't in the index already then it's added.  Default "
+"behaviour is to ignore new files."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:2986
+#: en/git-update-index.txt:49
 #, no-wrap
-msgid "status.submoduleSummary"
+msgid "--remove"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3001
+#: en/git-update-index.txt:53
 msgid ""
-"Defaults to false.  If this is set to a non zero number or true (identical "
-"to -1 or an unlimited number), the submodule summary will be enabled and a "
-"summary of commits for modified submodules will be shown (see "
-"--summary-limit option of linkgit:git-submodule[1]). Please note that the "
-"summary output command will be suppressed for all submodules when "
-"`diff.ignoreSubmodules` is set to 'all' or only for those submodules where "
-"`submodule.<name>.ignore=all`. The only exception to that rule is that "
-"status and commit will show staged submodule changes. To also view the "
-"summary for ignored submodules you can either use the "
-"--ignore-submodules=dirty command-line option or the 'git submodule summary' "
-"command, which shows a similar output but does not honor these settings."
+"If a specified file is in the index but is missing then it's removed.  "
+"Default behavior is to ignore removed file."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:3002
-#, no-wrap
-msgid "stash.showPatch"
+#. type: Plain text
+#: en/git-update-index.txt:57
+msgid ""
+"Looks at the current index and checks to see if merges or updates are needed "
+"by checking stat() information."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3006
+#: en/git-update-index.txt:61
 msgid ""
-"If this is set to true, the `git stash show` command without an option will "
-"show the stash in patch form.  Defaults to false.  See description of 'show' "
-"command in linkgit:git-stash[1]."
+"Quiet.  If --refresh finds that the index needs an update, the default "
+"behavior is to error out.  This option makes"
+msgstr ""
+
+#. type: Plain text
+#: en/git-update-index.txt:62
+msgid "'git update-index' continue anyway."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:3007
+#: en/git-update-index.txt:63
 #, no-wrap
-msgid "stash.showStat"
+msgid "--ignore-submodules"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3011
+#: en/git-update-index.txt:66
 msgid ""
-"If this is set to true, the `git stash show` command without an option will "
-"show diffstat of the stash.  Defaults to true.  See description of 'show' "
-"command in linkgit:git-stash[1]."
+"Do not try to update submodules.  This option is only respected when passed "
+"before --refresh."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:3012
+#. type: Plain text
+#: en/git-update-index.txt:69
+msgid "If --refresh finds unmerged changes in the index, the default"
+msgstr ""
+
+#. type: Plain text
+#: en/git-update-index.txt:70
+msgid "behavior is to error out.  This option makes 'git update-index'"
+msgstr ""
+
+#. type: Plain text
+#: en/git-update-index.txt:71
 #, no-wrap
-msgid "submodule.<name>.url"
+msgid "continue anyway.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3019
-msgid ""
-"The URL for a submodule. This variable is copied from the .gitmodules file "
-"to the git config via 'git submodule init'. The user can change the "
-"configured URL before obtaining the submodule via 'git submodule "
-"update'. After obtaining the submodule, the presence of this variable is "
-"used as a sign whether the submodule is of interest to git commands.  See "
-"linkgit:git-submodule[1] and linkgit:gitmodules[5] for details."
+#: en/git-update-index.txt:74
+msgid "Ignores missing files during a --refresh"
+msgstr ""
+
+#. type: Labeled list
+#: en/git-update-index.txt:75
+#, no-wrap
+msgid "--cacheinfo <mode>,<object>,<path>"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:3020
+#: en/git-update-index.txt:76
 #, no-wrap
-msgid "submodule.<name>.update"
+msgid "--cacheinfo <mode> <object> <path>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3025
+#: en/git-update-index.txt:81
 msgid ""
-"The default update procedure for a submodule. This variable is populated by "
-"`git submodule init` from the linkgit:gitmodules[5] file. See description of "
-"'update' command in linkgit:git-submodule[1]."
+"Directly insert the specified info into the index.  For backward "
+"compatibility, you can also give these three arguments as three separate "
+"parameters, but new users are encouraged to use a single-parameter form."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:3026
+#: en/git-update-index.txt:82
 #, no-wrap
-msgid "submodule.<name>.branch"
+msgid "--index-info"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3031
-msgid ""
-"The remote branch name for a submodule, used by `git submodule update "
-"--remote`.  Set this option to override the value found in the `.gitmodules` "
-"file.  See linkgit:git-submodule[1] and linkgit:gitmodules[5] for details."
+#: en/git-update-index.txt:84
+msgid "Read index information from stdin."
+msgstr ""
+
+#. type: Plain text
+#: en/git-update-index.txt:87
+msgid "Set the execute permissions on the updated files."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:3032
+#: en/git-update-index.txt:88
 #, no-wrap
-msgid "submodule.<name>.fetchRecurseSubmodules"
+msgid "--[no-]assume-unchanged"
+msgstr ""
+
+#. type: Plain text
+#: en/git-update-index.txt:100
+msgid ""
+"When this flag is specified, the object names recorded for the paths are not "
+"updated.  Instead, this option sets/unsets the \"assume unchanged\" bit for "
+"the paths.  When the \"assume unchanged\" bit is on, the user promises not "
+"to change the file and allows Git to assume that the working tree file "
+"matches what is recorded in the index.  If you want to change the working "
+"tree file, you need to unset the bit to tell Git.  This is sometimes helpful "
+"when working with a big project on a filesystem that has very slow lstat(2) "
+"system call (e.g. cifs)."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3038
+#: en/git-update-index.txt:105
 msgid ""
-"This option can be used to control recursive fetching of this submodule. It "
-"can be overridden by using the --[no-]recurse-submodules command-line option "
-"to \"git fetch\" and \"git pull\".  This setting will override that from in "
-"the linkgit:gitmodules[5] file."
+"Git will fail (gracefully) in case it needs to modify this file in the index "
+"e.g. when merging in a commit; thus, in case the assumed-untracked file is "
+"changed upstream, you will need to handle the situation manually."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:3039
+#: en/git-update-index.txt:106
 #, no-wrap
-msgid "submodule.<name>.ignore"
+msgid "--really-refresh"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3054
+#: en/git-update-index.txt:109
 msgid ""
-"Defines under what circumstances \"git status\" and the diff family show a "
-"submodule as modified. When set to \"all\", it will never be considered "
-"modified (but it will nonetheless show up in the output of status and commit "
-"when it has been staged), \"dirty\" will ignore all changes to the "
-"submodules work tree and takes only differences between the HEAD of the "
-"submodule and the commit recorded in the superproject into "
-"account. \"untracked\" will additionally let submodules with modified "
-"tracked files in their work tree show up.  Using \"none\" (the default when "
-"this option is not set) also shows submodules that have untracked files in "
-"their work tree as changed.  This setting overrides any setting made in "
-".gitmodules for this submodule, both settings can be overridden on the "
-"command line by using the \"--ignore-submodules\" option. The 'git "
-"submodule' commands are not affected by this setting."
+"Like `--refresh`, but checks stat information unconditionally, without "
+"regard to the \"assume unchanged\" setting."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:3055
+#: en/git-update-index.txt:110
 #, no-wrap
-msgid "submodule.fetchJobs"
+msgid "--[no-]skip-worktree"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3060
+#: en/git-update-index.txt:115
 msgid ""
-"Specifies how many submodules are fetched/cloned at the same time.  A "
-"positive integer allows up to that number of submodules fetched in "
-"parallel. A value of 0 will give some reasonable default.  If unset, it "
-"defaults to 1."
+"When one of these flags is specified, the object name recorded for the paths "
+"are not updated. Instead, these options set and unset the \"skip-worktree\" "
+"bit for the paths. See section \"Skip-worktree bit\" below for more "
+"information."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:3061
+#: en/git-update-index.txt:116
 #, no-wrap
-msgid "submodule.alternateLocation"
+msgid "--[no-]fsmonitor-valid"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3067
+#: en/git-update-index.txt:121
 msgid ""
-"Specifies how the submodules obtain alternates when submodules are "
-"cloned. Possible values are `no`, `superproject`.  By default `no` is "
-"assumed, which doesn't add references. When the value is set to "
-"`superproject` the submodule to be cloned computes its alternates location "
-"relative to the superprojects alternate."
+"When one of these flags is specified, the object name recorded for the paths "
+"are not updated. Instead, these options set and unset the \"fsmonitor valid"
+"\" bit for the paths. See section \"File System Monitor\" below for more "
+"information."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:3068
+#: en/git-update-index.txt:123
 #, no-wrap
-msgid "submodule.alternateErrorStrategy"
+msgid "--again"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3072
+#: en/git-update-index.txt:126
 msgid ""
-"Specifies how to treat errors with the alternates for a submodule as "
-"computed via `submodule.alternateLocation`. Possible values are `ignore`, "
-"`info`, `die`. Default is `die`."
+"Runs 'git update-index' itself on the paths whose index entries are "
+"different from those from the `HEAD` commit."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:3073
+#: en/git-update-index.txt:127
 #, no-wrap
-msgid "tag.forceSignAnnotated"
+msgid "--unresolve"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3077
+#: en/git-update-index.txt:130
 msgid ""
-"A boolean to specify whether annotated tags created should be GPG signed.  "
-"If `--annotate` is specified on the command line, it takes precedence over "
-"this option."
+"Restores the 'unmerged' or 'needs updating' state of a file during a merge "
+"if it was cleared by accident."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:3078
+#: en/git-update-index.txt:131
 #, no-wrap
-msgid "tag.sort"
+msgid "--info-only"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3082
+#: en/git-update-index.txt:135
 msgid ""
-"This variable controls the sort ordering of tags when displayed by "
-"linkgit:git-tag[1]. Without the \"--sort=<value>\" option provided, the "
-"value of this variable will be used as the default."
+"Do not create objects in the object database for all <file> arguments that "
+"follow this flag; just insert their object IDs into the index."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-update-index.txt:136
+#, no-wrap
+msgid "--force-remove"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3089
+#: en/git-update-index.txt:139
 msgid ""
-"This variable can be used to restrict the permission bits of tar archive "
-"entries.  The default is 0002, which turns off the world write bit.  The "
-"special value \"user\" indicates that the archiving user's umask will be "
-"used instead.  See umask(2) and linkgit:git-archive[1]."
+"Remove the file from the index even when the working directory still has "
+"such a file. (Implies --remove.)"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:3090
+#: en/git-update-index.txt:140
 #, no-wrap
-msgid "transfer.fsckObjects"
+msgid "--replace"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3094
+#: en/git-update-index.txt:147
 msgid ""
-"When `fetch.fsckObjects` or `receive.fsckObjects` are not set, the value of "
-"this variable is used instead.  Defaults to false."
+"By default, when a file `path` exists in the index, 'git update-index' "
+"refuses an attempt to add `path/file`.  Similarly if a file `path/file` "
+"exists, a file `path` cannot be added.  With --replace flag, existing "
+"entries that conflict with the entry being added are automatically removed "
+"with warning messages."
+msgstr ""
+
+#. type: Plain text
+#: en/git-update-index.txt:155
+msgid "Report what is being added and removed from index."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:3095
+#: en/git-update-index.txt:156
 #, no-wrap
-msgid "transfer.hideRefs"
+msgid "--index-version <n>"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3103
+#: en/git-update-index.txt:161
 msgid ""
-"String(s) `receive-pack` and `upload-pack` use to decide which refs to omit "
-"from their initial advertisements.  Use more than one definition to specify "
-"multiple prefix strings. A ref that is under the hierarchies listed in the "
-"value of this variable is excluded, and is hidden when responding to `git "
-"push` or `git fetch`.  See `receive.hideRefs` and `uploadpack.hideRefs` for "
-"program-specific versions of this config."
+"Write the resulting index out in the named on-disk format version.  "
+"Supported versions are 2, 3 and 4. The current default version is 2 or 3, "
+"depending on whether extra features are used, such as `git add -N`."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3108
+#: en/git-update-index.txt:167
 msgid ""
-"You may also include a `!` in front of the ref name to negate the entry, "
-"explicitly exposing it, even if an earlier entry marked it as hidden.  If "
-"you have multiple hideRefs values, later entries override earlier ones (and "
-"entries in more-specific config files override less-specific ones)."
+"Version 4 performs a simple pathname compression that reduces index size by "
+"30%-50% on large repositories, which results in faster load time. Version 4 "
+"is relatively young (first released in 1.8.0 in October 2012). Other Git "
+"implementations such as JGit and libgit2 may not support it yet."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3117
+#: en/git-update-index.txt:171
 msgid ""
-"If a namespace is in use, the namespace prefix is stripped from each "
-"reference before it is matched against `transfer.hiderefs` patterns.  For "
-"example, if `refs/heads/master` is specified in `transfer.hideRefs` and the "
-"current namespace is `foo`, then `refs/namespaces/foo/refs/heads/master` is "
-"omitted from the advertisements but `refs/heads/master` and "
-"`refs/namespaces/bar/refs/heads/master` are still advertised as so-called "
-"\"have\" lines. In order to match refs before stripping, add a `^` in front "
-"of the ref name. If you combine `!` and `^`, `!` must be specified first."
+"Only meaningful with `--stdin` or `--index-info`; paths are separated with "
+"NUL character instead of LF."
 msgstr ""
 
-#. type: Plain text
-#: en/config.txt:3122
-msgid ""
-"Even if you hide refs, a client may still be able to steal the target "
-"objects via the techniques described in the \"SECURITY\" section of the "
-"linkgit:gitnamespaces[7] man page; it's best to keep private data in a "
-"separate repository."
+#. type: Labeled list
+#: en/git-update-index.txt:172
+#, no-wrap
+msgid "--split-index"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:3123
+#: en/git-update-index.txt:173
 #, no-wrap
-msgid "transfer.unpackLimit"
+msgid "--no-split-index"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3127
+#: en/git-update-index.txt:178
 msgid ""
-"When `fetch.unpackLimit` or `receive.unpackLimit` are not set, the value of "
-"this variable is used instead.  The default value is 100."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:3128
-#, no-wrap
-msgid "uploadarchive.allowUnreachable"
+"Enable or disable split index mode. If split-index mode is already enabled "
+"and `--split-index` is given again, all changes in $GIT_DIR/index are pushed "
+"back to the shared index file."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3134
+#: en/git-update-index.txt:184
 msgid ""
-"If true, allow clients to use `git archive --remote` to request any tree, "
-"whether reachable from the ref tips or not. See the discussion in the "
-"\"SECURITY\" section of linkgit:git-upload-archive[1] for more "
-"details. Defaults to `false`."
+"These options take effect whatever the value of the `core.splitIndex` "
+"configuration variable (see linkgit:git-config[1]). But a warning is emitted "
+"when the change goes against the configured value, as the configured value "
+"will take effect next time the index is read and this will remove the "
+"intended effect of the option."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:3135
+#: en/git-update-index.txt:185
 #, no-wrap
-msgid "uploadpack.hideRefs"
-msgstr ""
-
-#. type: Plain text
-#: en/config.txt:3140
-msgid ""
-"This variable is the same as `transfer.hideRefs`, but applies only to "
-"`upload-pack` (and so affects only fetches, not pushes).  An attempt to "
-"fetch a hidden ref by `git fetch` will fail.  See also "
-"`uploadpack.allowTipSHA1InWant`."
+msgid "--untracked-cache"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:3141
+#: en/git-update-index.txt:186
 #, no-wrap
-msgid "uploadpack.allowTipSHA1InWant"
+msgid "--no-untracked-cache"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3149
+#: en/git-update-index.txt:189
 msgid ""
-"When `uploadpack.hideRefs` is in effect, allow `upload-pack` to accept a "
-"fetch request that asks for an object at the tip of a hidden ref (by "
-"default, such a request is rejected).  See also `uploadpack.hideRefs`.  Even "
-"if this is false, a client may be able to steal objects via the techniques "
-"described in the \"SECURITY\" section of the linkgit:gitnamespaces[7] man "
-"page; it's best to keep private data in a separate repository."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:3150
-#, no-wrap
-msgid "uploadpack.allowReachableSHA1InWant"
+"Enable or disable untracked cache feature. Please use `--test-untracked-"
+"cache` before enabling it."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3158
+#: en/git-update-index.txt:195
 msgid ""
-"Allow `upload-pack` to accept a fetch request that asks for an object that "
-"is reachable from any ref tip. However, note that calculating object "
-"reachability is computationally expensive.  Defaults to `false`.  Even if "
-"this is false, a client may be able to steal objects via the techniques "
-"described in the \"SECURITY\" section of the linkgit:gitnamespaces[7] man "
-"page; it's best to keep private data in a separate repository."
+"These options take effect whatever the value of the `core.untrackedCache` "
+"configuration variable (see linkgit:git-config[1]). But a warning is emitted "
+"when the change goes against the configured value, as the configured value "
+"will take effect next time the index is read and this will remove the "
+"intended effect of the option."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:3159
+#: en/git-update-index.txt:196
 #, no-wrap
-msgid "uploadpack.allowAnySHA1InWant"
+msgid "--test-untracked-cache"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3163
+#: en/git-update-index.txt:205
 msgid ""
-"Allow `upload-pack` to accept a fetch request that asks for any object at "
-"all.  Defaults to `false`."
+"Only perform tests on the working directory to make sure untracked cache can "
+"be used. You have to manually enable untracked cache using `--untracked-"
+"cache` or `--force-untracked-cache` or the `core.untrackedCache` "
+"configuration variable afterwards if you really want to use it. If a test "
+"fails the exit code is 1 and a message explains what is not working as "
+"needed, otherwise the exit code is 0 and OK is printed."
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:3164
+#: en/git-update-index.txt:206
 #, no-wrap
-msgid "uploadpack.keepAlive"
+msgid "--force-untracked-cache"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3174
+#: en/git-update-index.txt:211
 msgid ""
-"When `upload-pack` has started `pack-objects`, there may be a quiet period "
-"while `pack-objects` prepares the pack. Normally it would output progress "
-"information, but if `--quiet` was used for the fetch, `pack-objects` will "
-"output nothing at all until the pack data begins. Some clients and networks "
-"may consider the server to be hung and give up. Setting this option "
-"instructs `upload-pack` to send an empty keepalive packet every "
-"`uploadpack.keepAlive` seconds. Setting this option to 0 disables keepalive "
-"packets entirely. The default is 5 seconds."
+"Same as `--untracked-cache`. Provided for backwards compatibility with older "
+"versions of Git where `--untracked-cache` used to imply `--test-untracked-"
+"cache` but this option would enable the extension unconditionally."
+msgstr ""
+
+#. type: Labeled list
+#: en/git-update-index.txt:212
+#, no-wrap
+msgid "--fsmonitor"
 msgstr ""
 
 #. type: Labeled list
-#: en/config.txt:3175
+#: en/git-update-index.txt:213
 #, no-wrap
-msgid "uploadpack.packObjectsHook"
+msgid "--no-fsmonitor"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3185
+#: en/git-update-index.txt:220
 msgid ""
-"If this option is set, when `upload-pack` would run `git pack-objects` to "
-"create a packfile for a client, it will run this shell command instead.  The "
-"`pack-objects` command and arguments it _would_ have run (including the `git "
-"pack-objects` at the beginning) are appended to the shell command. The stdin "
-"and stdout of the hook are treated as if `pack-objects` itself was "
-"run. I.e., `upload-pack` will feed input intended for `pack-objects` to the "
-"hook, and expects a completed packfile on stdout."
+"Enable or disable files system monitor feature. These options take effect "
+"whatever the value of the `core.fsmonitor` configuration variable (see "
+"linkgit:git-config[1]). But a warning is emitted when the change goes "
+"against the configured value, as the configured value will take effect next "
+"time the index is read and this will remove the intended effect of the "
+"option."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3189
+#: en/git-update-index.txt:230
 msgid ""
-"Note that this configuration variable is ignored if it is seen in the "
-"repository-level config (this is a safety measure against fetching from "
-"untrusted repositories)."
+"Files to act on.  Note that files beginning with '.' are discarded. This "
+"includes `./file` and `dir/./file`. If you don't want this, then use cleaner "
+"names.  The same applies to directories ending '/' and paths with '//'"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:3190
+#. type: Title -
+#: en/git-update-index.txt:232
 #, no-wrap
-msgid "url.<base>.insteadOf"
+msgid "USING --REFRESH"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3200
+#: en/git-update-index.txt:238
 msgid ""
-"Any URL that starts with this value will be rewritten to start, instead, "
-"with <base>. In cases where some site serves a large number of repositories, "
-"and serves them with multiple access methods, and some users need to use "
-"different access methods, this feature allows people to specify any of the "
-"equivalent URLs and have Git automatically rewrite the URL to the best "
-"alternative for the particular user, even for a never-before-seen repository "
-"on the site.  When more than one insteadOf strings match a given URL, the "
-"longest match is used."
-msgstr ""
-
-#. type: Labeled list
-#: en/config.txt:3201
-#, no-wrap
-msgid "url.<base>.pushInsteadOf"
+"`--refresh` does not calculate a new sha1 file or bring the index up to date "
+"for mode/content changes. But what it *does* do is to \"re-match\" the stat "
+"information of a file with the index, so that you can refresh the index for "
+"a file that hasn't been changed but where the stat entry is out of date."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3213
+#: en/git-update-index.txt:241
 msgid ""
-"Any URL that starts with this value will not be pushed to; instead, it will "
-"be rewritten to start with <base>, and the resulting URL will be pushed "
-"to. In cases where some site serves a large number of repositories, and "
-"serves them with multiple access methods, some of which do not allow push, "
-"this feature allows people to specify a pull-only URL and have Git "
-"automatically use an appropriate URL to push, even for a never-before-seen "
-"repository on the site.  When more than one pushInsteadOf strings match a "
-"given URL, the longest match is used.  If a remote has an explicit pushurl, "
-"Git will ignore this setting for that remote."
+"For example, you'd want to do this after doing a 'git read-tree', to link up "
+"the stat index details with the proper files."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:3214
+#. type: Title -
+#: en/git-update-index.txt:243
 #, no-wrap
-msgid "user.email"
+msgid "USING --CACHEINFO OR --INFO-ONLY"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3218
+#: en/git-update-index.txt:247
 msgid ""
-"Your email address to be recorded in any newly created commits.  Can be "
-"overridden by the `GIT_AUTHOR_EMAIL`, `GIT_COMMITTER_EMAIL`, and `EMAIL` "
-"environment variables.  See linkgit:git-commit-tree[1]."
+"`--cacheinfo` is used to register a file that is not in the current working "
+"directory.  This is useful for minimum-checkout merging."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:3219
+#. type: Plain text
+#: en/git-update-index.txt:249
+msgid "To pretend you have a file at path with mode and sha1, say:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-update-index.txt:252
 #, no-wrap
-msgid "user.name"
+msgid "$ git update-index --add --cacheinfo <mode>,<sha1>,<path>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3223
+#: en/git-update-index.txt:256
 msgid ""
-"Your full name to be recorded in any newly created commits.  Can be "
-"overridden by the `GIT_AUTHOR_NAME` and `GIT_COMMITTER_NAME` environment "
-"variables.  See linkgit:git-commit-tree[1]."
+"`--info-only` is used to register files without placing them in the object "
+"database.  This is useful for status-only repositories."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:3224
+#. type: Plain text
+#: en/git-update-index.txt:262
+msgid ""
+"Both `--cacheinfo` and `--info-only` behave similarly: the index is updated "
+"but the object database isn't.  `--cacheinfo` is useful when the object is "
+"in the database but the file isn't available locally.  `--info-only` is "
+"useful when the file is available, but you do not wish to update the object "
+"database."
+msgstr ""
+
+#. type: Title -
+#: en/git-update-index.txt:265
 #, no-wrap
-msgid "user.useConfigOnly"
+msgid "USING --INDEX-INFO"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3233
+#: en/git-update-index.txt:270
 msgid ""
-"Instruct Git to avoid trying to guess defaults for `user.email` and "
-"`user.name`, and instead retrieve the values only from the "
-"configuration. For example, if you have multiple email addresses and would "
-"like to use a different one for each repository, then with this "
-"configuration option set to `true` in the global config along with a name, "
-"Git will prompt you to set up an email before making new commits in a newly "
-"cloned repository.  Defaults to `false`."
+"`--index-info` is a more powerful mechanism that lets you feed multiple "
+"entry definitions from the standard input, and designed specifically for "
+"scripts.  It can take inputs of three formats:"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:3234
+#. type: Plain text
+#: en/git-update-index.txt:272
 #, no-wrap
-msgid "user.signingKey"
+msgid "mode SP type SP sha1          TAB path\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3240
-msgid ""
-"If linkgit:git-tag[1] or linkgit:git-commit[1] is not selecting the key you "
-"want it to automatically when creating a signed tag or commit, you can "
-"override the default selection with this variable.  This option is passed "
-"unchanged to gpg's --local-user parameter, so you may specify a key using "
-"any method that gpg supports."
+#: en/git-update-index.txt:274
+msgid "This format is to stuff `git ls-tree` output into the index."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:3241
+#. type: Plain text
+#: en/git-update-index.txt:276
 #, no-wrap
-msgid "versionsort.prereleaseSuffix (deprecated)"
+msgid "mode         SP sha1 SP stage TAB path\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3244
+#: en/git-update-index.txt:279
 msgid ""
-"Deprecated alias for `versionsort.suffix`.  Ignored if `versionsort.suffix` "
-"is set."
+"This format is to put higher order stages into the index file and matches "
+"'git ls-files --stage' output."
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:3245
+#. type: Plain text
+#: en/git-update-index.txt:281
 #, no-wrap
-msgid "versionsort.suffix"
+msgid "mode         SP sha1          TAB path\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3252
+#: en/git-update-index.txt:284
 msgid ""
-"Even when version sort is used in linkgit:git-tag[1], tagnames with the same "
-"base version but different suffixes are still sorted lexicographically, "
-"resulting e.g. in prerelease tags appearing after the main release "
-"(e.g. \"1.0-rc1\" after \"1.0\").  This variable can be specified to "
-"determine the sorting order of tags with different suffixes."
+"This format is no longer produced by any Git command, but is and will "
+"continue to be supported by `update-index --index-info`."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3266
+#: en/git-update-index.txt:288
 msgid ""
-"By specifying a single suffix in this variable, any tagname containing that "
-"suffix will appear before the corresponding main release.  E.g. if the "
-"variable is set to \"-rc\", then all \"1.0-rcX\" tags will appear before "
-"\"1.0\".  If specified multiple times, once per suffix, then the order of "
-"suffixes in the configuration will determine the sorting order of tagnames "
-"with those suffixes.  E.g. if \"-pre\" appears before \"-rc\" in the "
-"configuration, then all \"1.0-preX\" tags will be listed before any "
-"\"1.0-rcX\" tags.  The placement of the main release tag relative to tags "
-"with various suffixes can be determined by specifying the empty suffix among "
-"those other suffixes.  E.g. if the suffixes \"-rc\", \"\", \"-ck\" and "
-"\"-bfs\" appear in the configuration in this order, then all \"v4.8-rcX\" "
-"tags are listed first, followed by \"v4.8\", then \"v4.8-ckX\" and finally "
-"\"v4.8-bfsX\"."
+"To place a higher stage entry to the index, the path should first be removed "
+"by feeding a mode=0 entry for the path, and then feeding necessary input "
+"lines in the third format."
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3274
-msgid ""
-"If more than one suffixes match the same tagname, then that tagname will be "
-"sorted according to the suffix which starts at the earliest position in the "
-"tagname.  If more than one different matching suffixes start at that "
-"earliest position, then that tagname will be sorted according to the longest "
-"of those suffixes.  The sorting order between different suffixes is "
-"undefined if they are in multiple config files."
+#: en/git-update-index.txt:290
+msgid "For example, starting with this index:"
 msgstr ""
 
-#. type: Labeled list
-#: en/config.txt:3275
+#. type: delimited block -
+#: en/git-update-index.txt:294
 #, no-wrap
-msgid "web.browser"
+msgid ""
+"$ git ls-files -s\n"
+"100644 8a1218a1024a212bb3db30becd860315f9f3ac52 0       frotz\n"
 msgstr ""
 
 #. type: Plain text
-#: en/config.txt:3278
-msgid ""
-"Specify a web browser that may be used by some commands.  Currently only "
-"linkgit:git-instaweb[1] and linkgit:git-help[1] may use it."
+#: en/git-update-index.txt:297
+msgid "you can feed the following input to `--index-info`:"
 msgstr ""
 
-#. type: Title -
-#: en/date-formats.txt:2
+#. type: delimited block -
+#: en/git-update-index.txt:303
 #, no-wrap
-msgid "DATE FORMATS"
-msgstr ""
-
-#. type: Plain text
-#: en/date-formats.txt:5
-msgid "The `GIT_AUTHOR_DATE`, `GIT_COMMITTER_DATE` environment variables"
+msgid ""
+"$ git update-index --index-info\n"
+"0 0000000000000000000000000000000000000000\tfrotz\n"
+"100644 8a1218a1024a212bb3db30becd860315f9f3ac52 1\tfrotz\n"
+"100755 8a1218a1024a212bb3db30becd860315f9f3ac52 2\tfrotz\n"
 msgstr ""
 
 #. type: Plain text
-#: en/date-formats.txt:7
-msgid "and the `--date` option"
+#: en/git-update-index.txt:309
+msgid ""
+"The first line of the input feeds 0 as the mode to remove the path; the "
+"SHA-1 does not matter as long as it is well formatted.  Then the second and "
+"third line feeds stage 1 and stage 2 entries for that path.  After the "
+"above, we would end up with this:"
 msgstr ""
 
-#. type: Plain text
-#: en/date-formats.txt:9
-msgid "support the following date formats:"
+#. type: delimited block -
+#: en/git-update-index.txt:314
+#, no-wrap
+msgid ""
+"$ git ls-files -s\n"
+"100644 8a1218a1024a212bb3db30becd860315f9f3ac52 1\tfrotz\n"
+"100755 8a1218a1024a212bb3db30becd860315f9f3ac52 2\tfrotz\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/date-formats.txt:10
+#. type: Title -
+#: en/git-update-index.txt:318
 #, no-wrap
-msgid "Git internal format"
+msgid "USING ``ASSUME UNCHANGED'' BIT"
 msgstr ""
 
 #. type: Plain text
-#: en/date-formats.txt:15
+#: en/git-update-index.txt:333
 msgid ""
-"It is `<unix timestamp> <time zone offset>`, where `<unix timestamp>` is the "
-"number of seconds since the UNIX epoch.  `<time zone offset>` is a positive "
-"or negative offset from UTC.  For example CET (which is 1 hour ahead of UTC) "
-"is `+0100`."
+"Many operations in Git depend on your filesystem to have an efficient "
+"`lstat(2)` implementation, so that `st_mtime` information for working tree "
+"files can be cheaply checked to see if the file contents have changed from "
+"the version recorded in the index file.  Unfortunately, some filesystems "
+"have inefficient `lstat(2)`.  If your filesystem is one of them, you can set "
+"\"assume unchanged\" bit to paths you have not changed to cause Git not to "
+"do this check.  Note that setting this bit on a path does not mean Git will "
+"check the contents of the file to see if it has changed -- it makes Git to "
+"omit any checking and assume it has *not* changed.  When you make changes to "
+"working tree files, you have to explicitly tell Git about it by dropping "
+"\"assume unchanged\" bit, either before or after you modify them."
 msgstr ""
 
-#. type: Labeled list
-#: en/date-formats.txt:16
-#, no-wrap
-msgid "RFC 2822"
+#. type: Plain text
+#: en/git-update-index.txt:338
+msgid ""
+"In order to set \"assume unchanged\" bit, use `--assume-unchanged` option.  "
+"To unset, use `--no-assume-unchanged`. To see which files have the \"assume "
+"unchanged\" bit set, use `git ls-files -v` (see linkgit:git-ls-files[1])."
 msgstr ""
 
 #. type: Plain text
-#: en/date-formats.txt:19
+#: en/git-update-index.txt:348
 msgid ""
-"The standard email format as described by RFC 2822, for example `Thu, 07 Apr "
-"2005 22:13:13 +0200`."
+"The command looks at `core.ignorestat` configuration variable.  When this is "
+"true, paths updated with `git update-index paths...` and paths updated with "
+"other Git commands that update both index and working tree (e.g. 'git apply "
+"--index', 'git checkout-index -u', and 'git read-tree -u') are automatically "
+"marked as \"assume unchanged\".  Note that \"assume unchanged\" bit is *not* "
+"set if `git update-index --refresh` finds the working tree file matches the "
+"index (use `git update-index --really-refresh` if you want to mark them as "
+"\"assume unchanged\")."
+msgstr ""
+
+#. type: Plain text
+#: en/git-update-index.txt:353
+msgid "To update and refresh only the files already checked out:"
 msgstr ""
 
 #. type: Labeled list
-#: en/date-formats.txt:20
+#: en/git-update-index.txt:358
 #, no-wrap
-msgid "ISO 8601"
+msgid "On an inefficient filesystem with `core.ignorestat` set"
 msgstr ""
 
-#. type: Plain text
-#: en/date-formats.txt:24
+#. type: delimited block -
+#: en/git-update-index.txt:374
+#, no-wrap
 msgid ""
-"Time and date specified by the ISO 8601 standard, for example "
-"`2005-04-07T22:13:13`. The parser accepts a space instead of the `T` "
-"character as well."
+"$ git update-index --really-refresh              <1>\n"
+"$ git update-index --no-assume-unchanged foo.c   <2>\n"
+"$ git diff --name-only                           <3>\n"
+"$ edit foo.c\n"
+"$ git diff --name-only                           <4>\n"
+"M foo.c\n"
+"$ git update-index foo.c                         <5>\n"
+"$ git diff --name-only                           <6>\n"
+"$ edit foo.c\n"
+"$ git diff --name-only                           <7>\n"
+"$ git update-index --no-assume-unchanged foo.c   <8>\n"
+"$ git diff --name-only                           <9>\n"
+"M foo.c\n"
 msgstr ""
 
 #. type: Plain text
-#: en/date-formats.txt:26
+#: en/git-update-index.txt:377
 msgid ""
-"In addition, the date part is accepted in the following formats: "
-"`YYYY.MM.DD`, `MM/DD/YYYY` and `DD.MM.YYYY`."
-msgstr ""
-
-#. type: Title -
-#: en/diff-format.txt:2
-#, no-wrap
-msgid "Raw output format"
+"forces lstat(2) to set \"assume unchanged\" bits for paths that match index."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:6
-msgid ""
-"The raw output format from \"git-diff-index\", \"git-diff-tree\", "
-"\"git-diff-files\" and \"git diff --raw\" are very similar."
+#: en/git-update-index.txt:378
+msgid "mark the path to be edited."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:9
-msgid "These commands all compare two sets of things; what is compared differs:"
+#: en/git-update-index.txt:379
+msgid "this does lstat(2) and finds index matches the path."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-format.txt:10
-#, no-wrap
-msgid "git-diff-index <tree-ish>"
+#. type: Plain text
+#: en/git-update-index.txt:380
+msgid "this does lstat(2) and finds index does *not* match the path."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:12
-msgid "compares the <tree-ish> and the files on the filesystem."
+#: en/git-update-index.txt:381
+msgid "registering the new version to index sets \"assume unchanged\" bit."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-format.txt:13
-#, no-wrap
-msgid "git-diff-index --cached <tree-ish>"
+#. type: Plain text
+#: en/git-update-index.txt:382
+msgid "and it is assumed unchanged."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:15
-msgid "compares the <tree-ish> and the index."
+#: en/git-update-index.txt:383
+msgid "even after you edit it."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-format.txt:16
-#, no-wrap
-msgid "git-diff-tree [-r] <tree-ish-1> <tree-ish-2> [<pattern>...]"
+#. type: Plain text
+#: en/git-update-index.txt:384
+msgid "you can tell about the change after the fact."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:18
-msgid "compares the trees named by the two arguments."
+#: en/git-update-index.txt:385
+msgid "now it checks with lstat(2) and finds it has been changed."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-format.txt:19
+#. type: Title -
+#: en/git-update-index.txt:388
 #, no-wrap
-msgid "git-diff-files [<pattern>...]"
+msgid "SKIP-WORKTREE BIT"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:21
-msgid "compares the index and the files on the filesystem."
+#: en/git-update-index.txt:394
+msgid ""
+"Skip-worktree bit can be defined in one (long) sentence: When reading an "
+"entry, if it is marked as skip-worktree, then Git pretends its working "
+"directory version is up to date and read the index version instead."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:25
+#: en/git-update-index.txt:402
 msgid ""
-"The \"git-diff-tree\" command begins its output by printing the hash of what "
-"is being compared. After that, all the commands print one output line per "
-"changed file."
+"To elaborate, \"reading\" means checking for file existence, reading file "
+"attributes or file content. The working directory version may be present or "
+"absent. If present, its content may match against the index version or not. "
+"Writing is not affected by this bit, content safety is still first priority. "
+"Note that Git _can_ update working directory file, that is marked skip-"
+"worktree, if it is safe to do so (i.e.  working directory version matches "
+"index version)"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:27
-msgid "An output line is formatted this way:"
+#: en/git-update-index.txt:406
+msgid ""
+"Although this bit looks similar to assume-unchanged bit, its goal is "
+"different from assume-unchanged bit's. Skip-worktree also takes precedence "
+"over assume-unchanged bit when both are set."
 msgstr ""
 
-#. type: delimited block -
-#: en/diff-format.txt:35
+#. type: Title -
+#: en/git-update-index.txt:408
 #, no-wrap
-msgid ""
-"in-place edit  :100644 100644 bcd1234... 0123456... M file0\n"
-"copy-edit      :100644 100644 abcd123... 1234567... C68 file1 file2\n"
-"rename-edit    :100644 100644 abcd123... 1234567... R86 file1 file3\n"
-"create         :000000 100644 0000000... 1234567... A file4\n"
-"delete         :100644 000000 1234567... 0000000... D file5\n"
-"unmerged       :000000 000000 0000000... 0000000... U file6\n"
+msgid "SPLIT INDEX"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:38
-msgid "That is, from the left to the right:"
+#: en/git-update-index.txt:412
+msgid ""
+"This mode is designed for repositories with very large indexes, and aims at "
+"reducing the time it takes to repeatedly write these indexes."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:40
-msgid "a colon."
+#: en/git-update-index.txt:417
+msgid ""
+"In this mode, the index is split into two files, $GIT_DIR/index and $GIT_DIR/"
+"sharedindex.<SHA-1>. Changes are accumulated in $GIT_DIR/index, the split "
+"index, while the shared index file contains all index entries and stays "
+"unchanged."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:41
-msgid "mode for \"src\"; 000000 if creation or unmerged."
+#: en/git-update-index.txt:422
+msgid ""
+"All changes in the split index are pushed back to the shared index file when "
+"the number of entries in the split index reaches a level specified by the "
+"splitIndex.maxPercentChange config variable (see linkgit:git-config[1])."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:42 en/diff-format.txt:44 en/diff-format.txt:46 en/diff-format.txt:48
-msgid "a space."
+#: en/git-update-index.txt:427
+msgid ""
+"Each time a new shared index file is created, the old shared index files are "
+"deleted if their modification time is older than what is specified by the "
+"splitIndex.sharedIndexExpire config variable (see linkgit:git-config[1])."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:43
-msgid "mode for \"dst\"; 000000 if deletion or unmerged."
+#: en/git-update-index.txt:431
+msgid ""
+"To avoid deleting a shared index file that is still used, its modification "
+"time is updated to the current time everytime a new split index based on the "
+"shared index file is either created or read from."
 msgstr ""
 
-#. type: Plain text
-#: en/diff-format.txt:45
-msgid "sha1 for \"src\"; 0\\{40\\} if creation or unmerged."
+#. type: Title -
+#: en/git-update-index.txt:433
+#, no-wrap
+msgid "UNTRACKED CACHE"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:47
-msgid "sha1 for \"dst\"; 0\\{40\\} if creation, unmerged or \"look at work tree\"."
+#: en/git-update-index.txt:437
+msgid ""
+"This cache is meant to speed up commands that involve determining untracked "
+"files such as `git status`."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:49
-msgid "status, followed by optional \"score\" number."
+#: en/git-update-index.txt:444
+msgid ""
+"This feature works by recording the mtime of the working tree directories "
+"and then omitting reading directories and stat calls against files in those "
+"directories whose mtime hasn't changed. For this to work the underlying "
+"operating system and file system must change the `st_mtime` field of "
+"directories if files in the directory are added, modified or deleted."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:50
-msgid "a tab or a NUL when `-z` option is used."
+#: en/git-update-index.txt:449
+msgid ""
+"You can test whether the filesystem supports that with the `--test-untracked-"
+"cache` option. The `--untracked-cache` option used to implicitly perform "
+"that test in older versions of Git, but that's no longer the case."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:51
-msgid "path for \"src\""
+#: en/git-update-index.txt:457
+msgid ""
+"If you want to enable (or disable) this feature, it is easier to use the "
+"`core.untrackedCache` configuration variable (see linkgit:git-config[1]) "
+"than using the `--untracked-cache` option to `git update-index` in each "
+"repository, especially if you want to do so across all repositories you use, "
+"because you can set the configuration variable to `true` (or `false`) in "
+"your `$HOME/.gitconfig` just once and have it affect all repositories you "
+"touch."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:52
-msgid "a tab or a NUL when `-z` option is used; only exists for C or R."
+#: en/git-update-index.txt:463
+msgid ""
+"When the `core.untrackedCache` configuration variable is changed, the "
+"untracked cache is added to or removed from the index the next time a "
+"command reads the index; while when `--[no-|force-]untracked-cache` are "
+"used, the untracked cache is immediately added to or removed from the index."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:53
-msgid "path for \"dst\"; only exists for C or R."
+#: en/git-update-index.txt:470
+msgid ""
+"Before 2.17, the untracked cache had a bug where replacing a directory with "
+"a symlink to another directory could cause it to incorrectly show files "
+"tracked by git as untracked. See the \"status: add a failing test showing a "
+"core.untrackedCache bug\" commit to git.git. A workaround for that is (and "
+"this might work for other undiscovered bugs in the future):"
 msgstr ""
 
-#. type: Plain text
-#: en/diff-format.txt:54
-msgid "an LF or a NUL when `-z` option is used, to terminate the record."
+#. type: delimited block -
+#: en/git-update-index.txt:473
+#, no-wrap
+msgid "$ git -c core.untrackedCache=false status\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:56
-msgid "Possible status letters are:"
+#: en/git-update-index.txt:479
+msgid ""
+"This bug has also been shown to affect non-symlink cases of replacing a "
+"directory with a file when it comes to the internal structures of the "
+"untracked cache, but no case has been reported where this resulted in wrong "
+"\"git status\" output."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:58
-msgid "A: addition of a file"
+#: en/git-update-index.txt:485
+msgid ""
+"There are also cases where existing indexes written by git versions before "
+"2.17 will reference directories that don't exist anymore, potentially "
+"causing many \"could not open directory\" warnings to be printed on \"git "
+"status\". These are new warnings for existing issues that were previously "
+"silently discarded."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:59
-msgid "C: copy of a file into a new one"
+#: en/git-update-index.txt:489
+msgid ""
+"As with the bug described above the solution is to one-off do a \"git status"
+"\" run with `core.untrackedCache=false` to flush out the leftover bad data."
 msgstr ""
 
-#. type: Plain text
-#: en/diff-format.txt:60
-msgid "D: deletion of a file"
+#. type: Title -
+#: en/git-update-index.txt:491
+#, no-wrap
+msgid "FILE SYSTEM MONITOR"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:61
-msgid "M: modification of the contents or mode of a file"
+#: en/git-update-index.txt:495
+msgid ""
+"This feature is intended to speed up git operations for repos that have "
+"large working directories."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:62
-msgid "R: renaming of a file"
+#: en/git-update-index.txt:500
+msgid ""
+"It enables git to work together with a file system monitor (see the "
+"\"fsmonitor-watchman\" section of linkgit:githooks[5]) that can inform it as "
+"to what files have been modified. This enables git to avoid having to "
+"lstat() every file to find modified files."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:63
-msgid "T: change in the type of the file"
+#: en/git-update-index.txt:504
+msgid ""
+"When used in conjunction with the untracked cache, it can further improve "
+"performance by avoiding the cost of scanning the entire working directory "
+"looking for new files."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:65
-msgid "U: file is unmerged (you must complete the merge before it can be committed)"
+#: en/git-update-index.txt:512
+msgid ""
+"If you want to enable (or disable) this feature, it is easier to use the "
+"`core.fsmonitor` configuration variable (see linkgit:git-config[1]) than "
+"using the `--fsmonitor` option to `git update-index` in each repository, "
+"especially if you want to do so across all repositories you use, because you "
+"can set the configuration variable in your `$HOME/.gitconfig` just once and "
+"have it affect all repositories you touch."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:66
-msgid "X: \"unknown\" change type (most probably a bug, please report it)"
+#: en/git-update-index.txt:517
+msgid ""
+"When the `core.fsmonitor` configuration variable is changed, the file system "
+"monitor is added to or removed from the index the next time a command reads "
+"the index. When `--[no-]fsmonitor` are used, the file system monitor is "
+"immediately added to or removed from the index."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:71
+#: en/git-update-index.txt:528
+#, no-wrap
 msgid ""
-"Status letters C and R are always followed by a score (denoting the "
-"percentage of similarity between the source and target of the move or "
-"copy).  Status letter M may be followed by a score (denoting the percentage "
-"of dissimilarity) for file rewrites."
+"The command honors `core.filemode` configuration variable.  If\n"
+"your repository is on a filesystem whose executable bits are\n"
+"unreliable, this should be set to 'false' (see linkgit:git-config[1]).\n"
+"This causes the command to ignore differences in file modes recorded\n"
+"in the index and the file mode on the filesystem if they differ only on\n"
+"executable bit.   On such an unfortunate filesystem, you may\n"
+"need to use 'git update-index --chmod='.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:74
+#: en/git-update-index.txt:533
 msgid ""
-"<sha1> is shown as all 0's if a file is new on the filesystem and it is out "
-"of sync with the index."
-msgstr ""
-
-#. type: delimited block -
-#: en/diff-format.txt:79
-#, no-wrap
-msgid ":100644 100644 5be4a4...... 000000...... M file.c\n"
-msgstr ""
-
-#. type: Title -
-#: en/diff-format.txt:87
-#, no-wrap
-msgid "diff format for merges"
+"Quite similarly, if `core.symlinks` configuration variable is set to "
+"'false' (see linkgit:git-config[1]), symbolic links are checked out as plain "
+"files, and this command does not modify a recorded file mode from symbolic "
+"link to regular file."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:93
+#: en/git-update-index.txt:536
 msgid ""
-"\"git-diff-tree\", \"git-diff-files\" and \"git-diff --raw\" can take `-c` "
-"or `--cc` option to generate diff output also for merge commits.  The output "
-"differs from the format described above in the following way:"
+"The command looks at `core.ignorestat` configuration variable.  See 'Using "
+"\"assume unchanged\" bit' section above."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:95
-msgid "there is a colon for each parent"
+#: en/git-update-index.txt:541
+msgid ""
+"The command also looks at `core.trustctime` configuration variable.  It can "
+"be useful when the inode change time is regularly modified by something "
+"outside Git (file system crawlers and backup systems use ctime for marking "
+"files processed) (see linkgit:git-config[1])."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:96
-msgid "there are more \"src\" modes and \"src\" sha1"
+#: en/git-update-index.txt:545
+msgid ""
+"The untracked cache extension can be enabled by the `core.untrackedCache` "
+"configuration variable (see linkgit:git-config[1])."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:97
-msgid "status is concatenated status characters for each parent"
+#: en/git-update-index.txt:551
+msgid "linkgit:git-config[1], linkgit:git-add[1], linkgit:git-ls-files[1]"
 msgstr ""
 
-#. type: Plain text
-#: en/diff-format.txt:98
-msgid "no optional \"score\" number"
+#. type: Title =
+#: en/git-update-ref.txt:2
+#, no-wrap
+msgid "git-update-ref(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:99
-msgid "single path, only for \"dst\""
+#: en/git-update-ref.txt:7
+msgid "git-update-ref - Update the object name stored in a ref safely"
 msgstr ""
 
-#. type: delimited block -
-#: en/diff-format.txt:104
+#. type: Plain text
+#: en/git-update-ref.txt:12
 #, no-wrap
-msgid "::100644 100644 100644 fabadb8... cc95eb0... 4866510... MM\tdescribe.c\n"
+msgid "'git update-ref' [-m <reason>] [--no-deref] (-d <ref> [<oldvalue>] | [--create-reflog] <ref> <newvalue> [<oldvalue>] | --stdin [-z])\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:108
+#: en/git-update-ref.txt:18
 msgid ""
-"Note that 'combined diff' lists only files which were modified from all "
-"parents."
-msgstr ""
-
-#. type: Title -
-#: en/diff-format.txt:114
-#, no-wrap
-msgid "other diff formats"
+"Given two arguments, stores the <newvalue> in the <ref>, possibly "
+"dereferencing the symbolic refs.  E.g. `git update-ref HEAD <newvalue>` "
+"updates the current branch head to the new object."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:120
+#: en/git-update-ref.txt:27
 msgid ""
-"The `--summary` option describes newly added, deleted, renamed and copied "
-"files.  The `--stat` option adds diffstat(1) graph to the output.  These "
-"options can be combined with other options, such as `-p`, and are meant for "
-"human consumption."
+"Given three arguments, stores the <newvalue> in the <ref>, possibly "
+"dereferencing the symbolic refs, after verifying that the current value of "
+"the <ref> matches <oldvalue>.  E.g. `git update-ref refs/heads/master "
+"<newvalue> <oldvalue>` updates the master branch head to <newvalue> only if "
+"its current value is <oldvalue>.  You can specify 40 \"0\" or an empty "
+"string as <oldvalue> to make sure that the ref you are creating does not "
+"exist."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:125
+#: en/git-update-ref.txt:31
 msgid ""
-"When showing a change that involves a rename or a copy, `--stat` output "
-"formats the pathnames compactly by combining common prefix and suffix of the "
-"pathnames.  For example, a change that moves `arch/i386/Makefile` to "
-"`arch/x86/Makefile` while modifying 4 lines will be shown like this:"
-msgstr ""
-
-#. type: delimited block -
-#: en/diff-format.txt:128
-#, no-wrap
-msgid "arch/{i386 => x86}/Makefile    |   4 +--\n"
+"It also allows a \"ref\" file to be a symbolic pointer to another ref file "
+"by starting with the four-byte header sequence of \"ref:\"."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:133
+#: en/git-update-ref.txt:39
 msgid ""
-"The `--numstat` option gives the diffstat(1) information but is designed for "
-"easier machine consumption.  An entry in `--numstat` output looks like this:"
+"More importantly, it allows the update of a ref file to follow these "
+"symbolic pointers, whether they are symlinks or these \"regular file "
+"symbolic refs\".  It follows *real* symlinks only if they start with \"refs/"
+"\": otherwise it will just try to read them and update them as a regular "
+"file (i.e. it will allow the filesystem to follow them, but will overwrite "
+"such a symlink to somewhere else with a regular filename)."
 msgstr ""
 
-#. type: delimited block -
-#: en/diff-format.txt:137
-#, no-wrap
+#. type: Plain text
+#: en/git-update-ref.txt:42
 msgid ""
-"1\t2\tREADME\n"
-"3\t1\tarch/{i386 => x86}/Makefile\n"
+"If --no-deref is given, <ref> itself is overwritten, rather than the result "
+"of following the symbolic pointers."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:140
-msgid "That is, from left to right:"
+#: en/git-update-ref.txt:44
+msgid "In general, using"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:142 en/diff-format.txt:158
-msgid "the number of added lines;"
+#: en/git-update-ref.txt:46
+#, no-wrap
+msgid "\tgit update-ref HEAD \"$head\"\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:143 en/diff-format.txt:145 en/diff-format.txt:159 en/diff-format.txt:161
-msgid "a tab;"
+#: en/git-update-ref.txt:48
+msgid "should be a _lot_ safer than doing"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:144 en/diff-format.txt:160
-msgid "the number of deleted lines;"
+#: en/git-update-ref.txt:50
+#, no-wrap
+msgid "\techo \"$head\" > \"$GIT_DIR/HEAD\"\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:146
-msgid "pathname (possibly with rename/copy information);"
+#: en/git-update-ref.txt:57
+msgid ""
+"both from a symlink following standpoint *and* an error checking "
+"standpoint.  The \"refs/\" rule for symlinks means that symlinks that point "
+"to \"outside\" the tree are safe: they'll be followed for reading but not "
+"for writing (so we'll never write through a ref symlink to some other tree, "
+"if you have copied a whole archive by creating a symlink tree)."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:147
-msgid "a newline."
+#: en/git-update-ref.txt:60
+msgid ""
+"With `-d` flag, it deletes the named <ref> after verifying it still contains "
+"<oldvalue>."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:149
-msgid "When `-z` output option is in effect, the output is formatted this way:"
+#: en/git-update-ref.txt:63
+msgid ""
+"With `--stdin`, update-ref reads instructions from standard input and "
+"performs all modifications together.  Specify commands of the form:"
 msgstr ""
 
-#. type: delimited block -
-#: en/diff-format.txt:153
+#. type: Plain text
+#: en/git-update-ref.txt:69
 #, no-wrap
 msgid ""
-"1\t2\tREADME NUL\n"
-"3\t1\tNUL arch/i386/Makefile NUL arch/x86/Makefile NUL\n"
+"\tupdate SP <ref> SP <newvalue> [SP <oldvalue>] LF\n"
+"\tcreate SP <ref> SP <newvalue> LF\n"
+"\tdelete SP <ref> [SP <oldvalue>] LF\n"
+"\tverify SP <ref> [SP <oldvalue>] LF\n"
+"\toption SP <opt> LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:156
-msgid "That is:"
+#: en/git-update-ref.txt:72
+msgid ""
+"With `--create-reflog`, update-ref will create a reflog for each ref even if "
+"one would not ordinarily be created."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:162 en/diff-format.txt:164
-msgid "a NUL (only exists if renamed/copied);"
+#: en/git-update-ref.txt:77
+msgid ""
+"Quote fields containing whitespace as if they were strings in C source code; "
+"i.e., surrounded by double-quotes and with backslash escapes.  Use 40 \"0\" "
+"characters or the empty string to specify a zero value.  To specify a "
+"missing value, omit the value and its preceding SP entirely."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:163
-msgid "pathname in preimage;"
+#: en/git-update-ref.txt:80
+msgid ""
+"Alternatively, use `-z` to specify in NUL-terminated format, without quoting:"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:165
-msgid "pathname in postimage (only exists if renamed/copied);"
+#: en/git-update-ref.txt:86
+#, no-wrap
+msgid ""
+"\tupdate SP <ref> NUL <newvalue> NUL [<oldvalue>] NUL\n"
+"\tcreate SP <ref> NUL <newvalue> NUL\n"
+"\tdelete SP <ref> NUL [<oldvalue>] NUL\n"
+"\tverify SP <ref> NUL [<oldvalue>] NUL\n"
+"\toption SP <opt> NUL\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:166
-msgid "a NUL."
+#: en/git-update-ref.txt:89
+msgid ""
+"In this format, use 40 \"0\" to specify a zero value, and use the empty "
+"string to specify a missing value."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-format.txt:171
+#: en/git-update-ref.txt:93
 msgid ""
-"The extra `NUL` before the preimage path in renamed case is to allow scripts "
-"that read the output to tell if the current record being read is a "
-"single-path record or a rename/copy record without reading ahead.  After "
-"reading added and deleted lines, reading up to `NUL` would yield the "
-"pathname, but if that is `NUL`, the record will show two paths."
+"In either format, values can be specified in any form that Git recognizes as "
+"an object name.  Commands in any other format or a repeated <ref> produce an "
+"error.  Command meanings are:"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-config.txt:1
-#, no-wrap
-msgid "diff.autoRefreshIndex"
+#. type: Plain text
+#: en/git-update-ref.txt:99
+msgid ""
+"Set <ref> to <newvalue> after verifying <oldvalue>, if given.  Specify a "
+"zero <newvalue> to ensure the ref does not exist after the update and/or a "
+"zero <oldvalue> to make sure the ref does not exist before the update."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:10
+#: en/git-update-ref.txt:103
 msgid ""
-"When using 'git diff' to compare with work tree files, do not consider "
-"stat-only change as changed.  Instead, silently run `git update-index "
-"--refresh` to update the cached stat information for paths whose contents in "
-"the work tree match the contents in the index.  This option defaults to "
-"true.  Note that this affects only 'git diff' Porcelain, and not lower level "
-"'diff' commands such as 'git diff-files'."
+"Create <ref> with <newvalue> after verifying it does not exist.  The given "
+"<newvalue> may not be zero."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-config.txt:11
+#: en/git-update-ref.txt:104
 #, no-wrap
-msgid "diff.dirstat"
+msgid "delete"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:18
+#: en/git-update-ref.txt:107
 msgid ""
-"A comma separated list of `--dirstat` parameters specifying the default "
-"behavior of the `--dirstat` option to linkgit:git-diff[1]` and friends. The "
-"defaults can be overridden on the command line (using "
-"`--dirstat=<param1,param2,...>`). The fallback defaults (when not changed by "
-"`diff.dirstat`) are `changes,noncumulative,3`.  The following parameters are "
-"available:"
+"Delete <ref> after verifying it exists with <oldvalue>, if given.  If given, "
+"<oldvalue> may not be zero."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-config.txt:20 en/diff-options.txt:137
+#: en/git-update-ref.txt:108
 #, no-wrap
-msgid "`changes`"
+msgid "verify"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:26 en/diff-options.txt:143
+#: en/git-update-ref.txt:111
 msgid ""
-"Compute the dirstat numbers by counting the lines that have been removed "
-"from the source, or added to the destination. This ignores the amount of "
-"pure code movements within a file.  In other words, rearranging lines in a "
-"file is not counted as much as other changes.  This is the default behavior "
-"when no parameter is given."
+"Verify <ref> against <oldvalue> but do not change it.  If <oldvalue> zero or "
+"missing, the ref must not exist."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-config.txt:26 en/diff-options.txt:143
+#: en/git-update-ref.txt:112
 #, no-wrap
-msgid "`lines`"
+msgid "option"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:34 en/diff-options.txt:151
+#: en/git-update-ref.txt:116
 msgid ""
-"Compute the dirstat numbers by doing the regular line-based diff analysis, "
-"and summing the removed/added line counts. (For binary files, count 64-byte "
-"chunks instead, since binary files have no natural concept of lines). This "
-"is a more expensive `--dirstat` behavior than the `changes` behavior, but it "
-"does count rearranged lines within a file as much as other changes. The "
-"resulting output is consistent with what you get from the other `--*stat` "
-"options."
-msgstr ""
-
-#. type: Labeled list
-#: en/diff-config.txt:34 en/diff-options.txt:151
-#, no-wrap
-msgid "`files`"
+"Modify behavior of the next command naming a <ref>.  The only valid option "
+"is `no-deref` to avoid dereferencing a symbolic ref."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:39 en/diff-options.txt:156
+#: en/git-update-ref.txt:122
 msgid ""
-"Compute the dirstat numbers by counting the number of files changed.  Each "
-"changed file counts equally in the dirstat analysis. This is the "
-"computationally cheapest `--dirstat` behavior, since it does not have to "
-"look at the file contents at all."
+"If all <ref>s can be locked with matching <oldvalue>s simultaneously, all "
+"modifications are performed.  Otherwise, no modifications are performed.  "
+"Note that while each individual <ref> is updated or deleted atomically, a "
+"concurrent reader may still see a subset of the modifications."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-config.txt:39 en/diff-options.txt:156
+#. type: Title -
+#: en/git-update-ref.txt:124
 #, no-wrap
-msgid "`cumulative`"
+msgid "LOGGING UPDATES"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:44 en/diff-options.txt:161
+#: en/git-update-ref.txt:131
 msgid ""
-"Count changes in a child directory for the parent directory as well.  Note "
-"that when using `cumulative`, the sum of the percentages reported may exceed "
-"100%. The default (non-cumulative) behavior can be specified with the "
-"`noncumulative` parameter."
+"If config parameter \"core.logAllRefUpdates\" is true and the ref is one "
+"under \"refs/heads/\", \"refs/remotes/\", \"refs/notes/\", or the symbolic "
+"ref HEAD; or the file \"$GIT_DIR/logs/<ref>\" exists then `git update-ref` "
+"will append a line to the log file \"$GIT_DIR/logs/<ref>\" (dereferencing "
+"all symbolic refs before creating the log name) describing the change in ref "
+"value.  Log lines are formatted as:"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:48 en/diff-options.txt:165
-msgid ""
-"An integer parameter specifies a cut-off percent (3% by default).  "
-"Directories contributing less than this percentage of the changes are not "
-"shown in the output."
+#: en/git-update-ref.txt:133
+#, no-wrap
+msgid "    oldsha1 SP newsha1 SP committer LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:54
+#: en/git-update-ref.txt:138
 msgid ""
-"Example: The following will count changed files, while ignoring directories "
-"with less than 10% of the total amount of changed files, and accumulating "
-"child directory counts in the parent directories: `files,10,cumulative`."
-msgstr ""
-
-#. type: Labeled list
-#: en/diff-config.txt:55
-#, no-wrap
-msgid "diff.statGraphWidth"
+"Where \"oldsha1\" is the 40 character hexadecimal value previously stored in "
+"<ref>, \"newsha1\" is the 40 character hexadecimal value of <newvalue> and "
+"\"committer\" is the committer's name, email address and date in the "
+"standard Git committer ident format."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:58
-msgid ""
-"Limit the width of the graph part in --stat output. If set, applies to all "
-"commands generating --stat output except format-patch."
+#: en/git-update-ref.txt:140
+msgid "Optionally with -m:"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-config.txt:59
+#. type: Plain text
+#: en/git-update-ref.txt:142
 #, no-wrap
-msgid "diff.context"
+msgid "    oldsha1 SP newsha1 SP committer TAB message LF\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:62
+#: en/git-update-ref.txt:145
 msgid ""
-"Generate diffs with <n> lines of context instead of the default of 3. This "
-"value is overridden by the -U option."
-msgstr ""
-
-#. type: Labeled list
-#: en/diff-config.txt:63
-#, no-wrap
-msgid "diff.interHunkContext"
+"Where all fields are as described above and \"message\" is the value "
+"supplied to the -m option."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:68
+#: en/git-update-ref.txt:149
 msgid ""
-"Show the context between diff hunks, up to the specified number of lines, "
-"thereby fusing the hunks that are close to each other.  This value serves as "
-"the default for the `--inter-hunk-context` command line option."
+"An update will fail (without changing <ref>) if the current user is unable "
+"to create a new log file, append to the existing log file or does not have "
+"committer information available."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-config.txt:69
+#. type: Title =
+#: en/git-update-server-info.txt:2
 #, no-wrap
-msgid "diff.external"
+msgid "git-update-server-info(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:77
+#: en/git-update-server-info.txt:7
 msgid ""
-"If this config variable is set, diff generation is not performed using the "
-"internal diff machinery, but using the given command.  Can be overridden "
-"with the `GIT_EXTERNAL_DIFF' environment variable.  The command is called "
-"with parameters as described under \"git Diffs\" in linkgit:git[1].  Note: "
-"if you want to use an external diff program only on a subset of your files, "
-"you\tmight want to use linkgit:gitattributes[5] instead."
+"git-update-server-info - Update auxiliary info file to help dumb servers"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-config.txt:78
+#. type: Plain text
+#: en/git-update-server-info.txt:13
 #, no-wrap
-msgid "diff.ignoreSubmodules"
+msgid "'git update-server-info' [--force]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:87
+#: en/git-update-server-info.txt:21
 msgid ""
-"Sets the default value of --ignore-submodules. Note that this affects only "
-"'git diff' Porcelain, and not lower level 'diff' commands such as 'git "
-"diff-files'. 'git checkout' also honors this setting when reporting "
-"uncommitted changes. Setting it to 'all' disables the submodule summary "
-"normally shown by 'git commit' and 'git status' when "
-"`status.submoduleSummary` is set unless it is overridden by using the "
-"--ignore-submodules command-line option.  The 'git submodule' commands are "
-"not affected by this setting."
+"A dumb server that does not do on-the-fly pack generations must have some "
+"auxiliary information files in $GIT_DIR/info and $GIT_OBJECT_DIRECTORY/info "
+"directories to help clients discover what references and packs the server "
+"has.  This command generates such auxiliary files."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-config.txt:88
-#, no-wrap
-msgid "diff.mnemonicPrefix"
+#. type: Plain text
+#: en/git-update-server-info.txt:29
+msgid "Update the info files from scratch."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:93
+#: en/git-update-server-info.txt:37
 msgid ""
-"If set, 'git diff' uses a prefix pair that is different from the standard "
-"\"a/\" and \"b/\" depending on what is being compared.  When this "
-"configuration is in effect, reverse diff output also swaps the order of the "
-"prefixes:"
+"Currently the command updates the following files.  Please see linkgit:"
+"gitrepository-layout[5] for description of what they are for:"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-config.txt:93
-#, no-wrap
-msgid "`git diff`"
+#. type: Plain text
+#: en/git-update-server-info.txt:39
+msgid "objects/info/packs"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:95
-msgid "compares the (i)ndex and the (w)ork tree;"
+#: en/git-update-server-info.txt:41
+msgid "info/refs"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-config.txt:95
+#. type: Title =
+#: en/git-upload-archive.txt:2
 #, no-wrap
-msgid "`git diff HEAD`"
+msgid "git-upload-archive(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:97
-msgid "compares a (c)ommit and the (w)ork tree;"
+#: en/git-upload-archive.txt:7
+msgid "git-upload-archive - Send archive back to git-archive"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-config.txt:97
+#. type: Plain text
+#: en/git-upload-archive.txt:13
 #, no-wrap
-msgid "`git diff --cached`"
+msgid "'git upload-archive' <directory>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:99
-msgid "compares a (c)ommit and the (i)ndex;"
-msgstr ""
-
-#. type: Labeled list
-#: en/diff-config.txt:99
-#, no-wrap
-msgid "`git diff HEAD:file1 file2`"
+#: en/git-upload-archive.txt:18
+msgid ""
+"Invoked by 'git archive --remote' and sends a generated archive to the other "
+"end over the Git protocol."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:101
-msgid "compares an (o)bject and a (w)ork tree entity;"
+#: en/git-upload-archive.txt:22
+msgid ""
+"This command is usually not invoked directly by the end user.  The UI for "
+"the protocol is on the 'git archive' side, and the program pair is meant to "
+"be used to get an archive from a remote repository."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-config.txt:101
+#. type: Title -
+#: en/git-upload-archive.txt:24 en/transfer-data-leaks.txt:2
 #, no-wrap
-msgid "`git diff --no-index a b`"
+msgid "SECURITY"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:103
-msgid "compares two non-git things (1) and (2)."
+#: en/git-upload-archive.txt:32
+msgid ""
+"In order to protect the privacy of objects that have been removed from "
+"history but may not yet have been pruned, `git-upload-archive` avoids "
+"serving archives for commits and trees that are not reachable from the "
+"repository's refs.  However, because calculating object reachability is "
+"computationally expensive, `git-upload-archive` implements a stricter but "
+"easier-to-check set of rules:"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-config.txt:104
-#, no-wrap
-msgid "diff.noprefix"
+#. type: Plain text
+#: en/git-upload-archive.txt:35
+msgid ""
+"Clients may request a commit or tree that is pointed to directly by a ref. E."
+"g., `git archive --remote=origin v1.0`."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:106
-msgid "If set, 'git diff' does not show any source or destination prefix."
+#: en/git-upload-archive.txt:38
+msgid ""
+"Clients may request a sub-tree within a commit or tree using the `ref:path` "
+"syntax. E.g., `git archive --remote=origin v1.0:Documentation`."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-config.txt:107
-#, no-wrap
-msgid "diff.orderFile"
+#. type: Plain text
+#: en/git-upload-archive.txt:43
+msgid ""
+"Clients may _not_ use other sha1 expressions, even if the end result is "
+"reachable. E.g., neither a relative commit like `master^` nor a literal sha1 "
+"like `abcd1234` is allowed, even if the result is reachable from the refs."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:112
+#: en/git-upload-archive.txt:48
 msgid ""
-"File indicating how to order files within a diff.  See the '-O' option to "
-"linkgit:git-diff[1] for details.  If `diff.orderFile` is a relative "
-"pathname, it is treated as relative to the top of the working tree."
+"Note that rule 3 disallows many cases that do not have any privacy "
+"implications. These rules are subject to change in future versions of git, "
+"and the server accessed by `git archive --remote` may or may not follow "
+"these exact rules."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-config.txt:113
-#, no-wrap
-msgid "diff.renameLimit"
+#. type: Plain text
+#: en/git-upload-archive.txt:54
+msgid ""
+"If the config option `uploadArchive.allowUnreachable` is true, these rules "
+"are ignored, and clients may use arbitrary sha1 expressions.  This is useful "
+"if you do not care about the privacy of unreachable objects, or if your "
+"object database is already publicly available for access via non-smart-http."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:116
-msgid ""
-"The number of files to consider when performing the copy/rename detection; "
-"equivalent to the 'git diff' option `-l`."
+#: en/git-upload-archive.txt:59
+msgid "The repository to get a tar archive from."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-config.txt:117
+#. type: Title =
+#: en/git-upload-pack.txt:2
 #, no-wrap
-msgid "diff.renames"
+msgid "git-upload-pack(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:125
-msgid ""
-"Whether and how Git detects renames.  If set to \"false\", rename detection "
-"is disabled. If set to \"true\", basic rename detection is enabled.  If set "
-"to \"copies\" or \"copy\", Git will detect copies, as well.  Defaults to "
-"true.  Note that this affects only 'git diff' Porcelain like "
-"linkgit:git-diff[1] and linkgit:git-log[1], and not lower level commands "
-"such as linkgit:git-diff-files[1]."
+#: en/git-upload-pack.txt:7
+msgid "git-upload-pack - Send objects packed back to git-fetch-pack"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-config.txt:126
+#. type: Plain text
+#: en/git-upload-pack.txt:14
 #, no-wrap
-msgid "diff.suppressBlankEmpty"
+msgid ""
+"'git-upload-pack' [--[no-]strict] [--timeout=<n>] [--stateless-rpc]\n"
+"\t\t  [--advertise-refs] <directory>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:129
+#: en/git-upload-pack.txt:19
 msgid ""
-"A boolean to inhibit the standard behavior of printing a space before each "
-"empty output line. Defaults to false."
-msgstr ""
-
-#. type: Labeled list
-#: en/diff-config.txt:130
-#, no-wrap
-msgid "diff.submodule"
+"Invoked by 'git fetch-pack', learns what objects the other side is missing, "
+"and sends them after packing."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:137
+#: en/git-upload-pack.txt:24
 msgid ""
-"Specify the format in which differences in submodules are shown.  The "
-"\"short\" format just shows the names of the commits at the beginning and "
-"end of the range. The \"log\" format lists the commits in the range like "
-"linkgit:git-submodule[1] `summary` does. The \"diff\" format shows an inline "
-"diff of the changed contents of the submodule. Defaults to \"short\"."
+"This command is usually not invoked directly by the end user.  The UI for "
+"the protocol is on the 'git fetch-pack' side, and the program pair is meant "
+"to be used to pull updates from a remote repository.  For push operations, "
+"see 'git send-pack'."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-config.txt:138
+#: en/git-upload-pack.txt:28
 #, no-wrap
-msgid "diff.wordRegex"
+msgid "--[no-]strict"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:143
-msgid ""
-"A POSIX Extended Regular Expression used to determine what is a \"word\" "
-"when performing word-by-word difference calculations.  Character sequences "
-"that match the regular expression are \"words\", all other characters are "
-"*ignorable* whitespace."
-msgstr ""
-
-#. type: Labeled list
-#: en/diff-config.txt:144
-#, no-wrap
-msgid "diff.<driver>.command"
+#: en/git-upload-pack.txt:30
+msgid "Do not try <directory>/.git/ if <directory> is no Git directory."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:147
-msgid "The custom diff driver command.  See linkgit:gitattributes[5] for details."
+#: en/git-upload-pack.txt:33
+msgid "Interrupt transfer after <n> seconds of inactivity."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-config.txt:148
+#: en/git-upload-pack.txt:34
 #, no-wrap
-msgid "diff.<driver>.xfuncname"
+msgid "--stateless-rpc"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:152
+#: en/git-upload-pack.txt:38
 msgid ""
-"The regular expression that the diff driver should use to recognize the hunk "
-"header.  A built-in pattern may also be used.  See linkgit:gitattributes[5] "
-"for details."
+"Perform only a single read-write cycle with stdin and stdout.  This fits "
+"with the HTTP POST request processing model where a program may read the "
+"request, write a response, and must exit."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-config.txt:153
+#: en/git-upload-pack.txt:39
 #, no-wrap
-msgid "diff.<driver>.binary"
+msgid "--advertise-refs"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:156
+#: en/git-upload-pack.txt:43
 msgid ""
-"Set this option to true to make the diff driver treat files as binary.  See "
-"linkgit:gitattributes[5] for details."
+"Only the initial ref advertisement is output, and the program exits "
+"immediately. This fits with the HTTP GET request model, where no request "
+"content is received but a response must be produced."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-config.txt:157
-#, no-wrap
-msgid "diff.<driver>.textconv"
+#. type: Plain text
+#: en/git-upload-pack.txt:46
+msgid "The repository to sync from."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:162
-msgid ""
-"The command that the diff driver should call to generate the text-converted "
-"version of a file.  The result of the conversion is used to generate a "
-"human-readable diff.  See linkgit:gitattributes[5] for details."
+#: en/git-upload-pack.txt:50
+msgid "linkgit:gitnamespaces[7]"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-config.txt:163
+#. type: Title =
+#: en/git-var.txt:2
 #, no-wrap
-msgid "diff.<driver>.wordRegex"
+msgid "git-var(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:167
-msgid ""
-"The regular expression that the diff driver should use to split words in a "
-"line.  See linkgit:gitattributes[5] for details."
+#: en/git-var.txt:7
+msgid "git-var - Show a Git logical variable"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-config.txt:168
+#. type: Plain text
+#: en/git-var.txt:13
 #, no-wrap
-msgid "diff.<driver>.cachetextconv"
+msgid "'git var' ( -l | <variable> )\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:171
-msgid ""
-"Set this option to true to make the diff driver cache the text conversion "
-"outputs.  See linkgit:gitattributes[5] for details."
+#: en/git-var.txt:17
+msgid "Prints a Git logical variable."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:178
+#: en/git-var.txt:25
 msgid ""
-"Controls which diff tool is used by linkgit:git-difftool[1].  This variable "
-"overrides the value configured in `merge.tool`.  The list below shows the "
-"valid built-in values.  Any other value is treated as a custom diff tool and "
-"requires that a corresponding difftool.<tool>.cmd variable is defined."
-msgstr ""
-
-#. type: Labeled list
-#: en/diff-config.txt:181
-#, no-wrap
-msgid "diff.indentHeuristic"
+"Cause the logical variables to be listed. In addition, all the variables of "
+"the Git configuration file .git/config are listed as well. (However, the "
+"configuration variables listing functionality is deprecated in favor of `git "
+"config -l`.)"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:184
+#: en/git-var.txt:30
+#, no-wrap
 msgid ""
-"Set this option to `true` to enable experimental heuristics that shift diff "
-"hunk boundaries to make patches easier to read."
+"\t$ git var GIT_AUTHOR_IDENT\n"
+"\tEric W. Biederman <ebiederm@lnxi.com> 1121223278 -0600\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-config.txt:185
+#. type: Title -
+#: en/git-var.txt:33
 #, no-wrap
-msgid "diff.algorithm"
-msgstr ""
-
-#. type: Plain text
-#: en/diff-config.txt:187
-msgid "Choose a diff algorithm.  The variants are as follows:"
+msgid "VARIABLES"
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-config.txt:189 en/diff-options.txt:82
+#: en/git-var.txt:34
 #, no-wrap
-msgid "`default`, `myers`"
+msgid "GIT_AUTHOR_IDENT"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:191 en/diff-options.txt:84
-msgid "The basic greedy diff algorithm. Currently, this is the default."
+#: en/git-var.txt:36
+msgid "The author of a piece of code."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-config.txt:191 en/diff-options.txt:84
+#: en/git-var.txt:37
 #, no-wrap
-msgid "`minimal`"
+msgid "GIT_COMMITTER_IDENT"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:194 en/diff-options.txt:71 en/diff-options.txt:87
-msgid "Spend extra time to make sure the smallest possible diff is produced."
+#: en/git-var.txt:39
+msgid "The person who put a piece of code into Git."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-config.txt:194 en/diff-options.txt:87
+#: en/git-var.txt:40
 #, no-wrap
-msgid "`patience`"
+msgid "GIT_EDITOR"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:196 en/diff-options.txt:89
-msgid "Use \"patience diff\" algorithm when generating patches."
-msgstr ""
-
-#. type: Labeled list
-#: en/diff-config.txt:196 en/diff-options.txt:89
-#, no-wrap
-msgid "`histogram`"
+#: en/git-var.txt:48
+msgid ""
+"Text editor for use by Git commands.  The value is meant to be interpreted "
+"by the shell when it is used.  Examples: `~/bin/vi`, `"
+"$SOME_ENVIRONMENT_VARIABLE`, `\"C:\\Program Files\\Vim\\gvim.exe\" --"
+"nofork`.  The order of preference is the `$GIT_EDITOR` environment variable, "
+"then `core.editor` configuration, then `$VISUAL`, then `$EDITOR`, and then "
+"the default chosen at compile time, which is usually 'vi'."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:199 en/diff-options.txt:92
-msgid ""
-"This algorithm extends the patience algorithm to \"support low-occurrence "
-"common elements\"."
+#: en/git-var.txt:50
+#, no-wrap
+msgid "    The build you are using chose '{git-default-editor}' as the default.\n"
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-config.txt:202
+#: en/git-var.txt:52
 #, no-wrap
-msgid "diff.wsErrorHighlight"
+msgid "GIT_PAGER"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-config.txt:206
+#: en/git-var.txt:58
 msgid ""
-"A comma separated list of `old`, `new`, `context`, that specifies how "
-"whitespace errors on lines are highlighted with `color.diff.whitespace`.  "
-"Can be overridden by the command line option `--ws-error-highlight=<kind>`"
+"Text viewer for use by Git commands (e.g., 'less').  The value is meant to "
+"be interpreted by the shell.  The order of preference is the `$GIT_PAGER` "
+"environment variable, then `core.pager` configuration, then `$PAGER`, and "
+"then the default chosen at compile time (usually 'less')."
 msgstr ""
 
-#. type: Title -
-#: en/diff-generate-patch.txt:2
+#. type: Plain text
+#: en/git-var.txt:60
 #, no-wrap
-msgid "Generating patches with -p"
+msgid "    The build you are using chose '{git-default-pager}' as the default.\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:10
-msgid ""
-"When \"git-diff-index\", \"git-diff-tree\", or \"git-diff-files\" are run "
-"with a `-p` option, \"git diff\" without the `--raw` option, or \"git log\" "
-"with the \"-p\" option, they do not produce the output described above; "
-"instead they produce a patch file.  You can customize the creation of such "
-"patches via the `GIT_EXTERNAL_DIFF` and the `GIT_DIFF_OPTS` environment "
-"variables."
+#: en/git-var.txt:67
+msgid "linkgit:git-commit-tree[1] linkgit:git-tag[1] linkgit:git-config[1]"
 msgstr ""
 
-#. type: Plain text
-#: en/diff-generate-patch.txt:13
-msgid ""
-"What the -p option produces is slightly different from the traditional diff "
-"format:"
+#. type: Title =
+#: en/git-verify-commit.txt:2
+#, no-wrap
+msgid "git-verify-commit(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:15
-msgid "It is preceded with a \"git diff\" header that looks like this:"
+#: en/git-verify-commit.txt:7
+msgid "git-verify-commit - Check the GPG signature of commits"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:17
+#: en/git-verify-commit.txt:12
 #, no-wrap
-msgid "diff --git a/file1 b/file2\n"
+msgid "'git verify-commit' <commit>...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:21
-msgid ""
-"The `a/` and `b/` filenames are the same unless rename/copy is involved.  "
-"Especially, even for a creation or a deletion, `/dev/null` is _not_ used in "
-"place of the `a/` or `b/` filenames."
+#: en/git-verify-commit.txt:16
+msgid "Validates the GPG signature created by 'git commit -S'."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:25
+#: en/git-verify-commit.txt:22 en/git-verify-tag.txt:22
 msgid ""
-"When rename/copy is involved, `file1` and `file2` show the name of the "
-"source file of the rename/copy and the name of the file that rename/copy "
-"produces, respectively."
+"Print the raw gpg status output to standard error instead of the normal "
+"human-readable output."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:27
-msgid "It is followed by one or more extended header lines:"
+#: en/git-verify-commit.txt:26
+msgid "Print the contents of the commit object before validating it."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:39
-#, no-wrap
-msgid ""
-"old mode <mode>\n"
-"new mode <mode>\n"
-"deleted file mode <mode>\n"
-"new file mode <mode>\n"
-"copy from <path>\n"
-"copy to <path>\n"
-"rename from <path>\n"
-"rename to <path>\n"
-"similarity index <number>\n"
-"dissimilarity index <number>\n"
-"index <hash>..<hash> <mode>\n"
+#: en/git-verify-commit.txt:29
+msgid "SHA-1 identifiers of Git commit objects."
 msgstr ""
 
-#. type: Plain text
-#: en/diff-generate-patch.txt:42
-msgid ""
-"File modes are printed as 6-digit octal numbers including the file type and "
-"file permission bits."
+#. type: Title =
+#: en/git-verify-pack.txt:2
+#, no-wrap
+msgid "git-verify-pack(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:44
-msgid "Path names in extended headers do not include the `a/` and `b/` prefixes."
+#: en/git-verify-pack.txt:7
+msgid "git-verify-pack - Validate packed Git archive files"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:51
-msgid ""
-"The similarity index is the percentage of unchanged lines, and the "
-"dissimilarity index is the percentage of changed lines.  It is a rounded "
-"down integer, followed by a percent sign.  The similarity index value of "
-"100% is thus reserved for two equal files, while 100% dissimilarity means "
-"that no line from the old file made it into the new one."
+#: en/git-verify-pack.txt:13
+#, no-wrap
+msgid "'git verify-pack' [-v|--verbose] [-s|--stat-only] [--] <pack>.idx ...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:55
+#: en/git-verify-pack.txt:20
 msgid ""
-"The index line includes the SHA-1 checksum before and after the change.  The "
-"<mode> is included if the file mode does not change; otherwise, separate "
-"lines indicate the old and the new mode."
+"Reads given idx file for packed Git archive created with the 'git pack-"
+"objects' command and verifies idx file and the corresponding pack file."
 msgstr ""
 
-#. type: Plain text
-#: en/diff-generate-patch.txt:59
-msgid ""
-"Pathnames with \"unusual\" characters are quoted as explained for the "
-"configuration variable `core.quotePath` (see linkgit:git-config[1])."
+#. type: Labeled list
+#: en/git-verify-pack.txt:23
+#, no-wrap
+msgid "<pack>.idx ..."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:64
-msgid ""
-"All the `file1` files in the output refer to files before the commit, and "
-"all the `file2` files refer to files after the commit.  It is incorrect to "
-"apply each change to each file sequentially.  For example, this patch will "
-"swap a and b:"
+#: en/git-verify-pack.txt:25
+msgid "The idx files to verify."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:71
-#, no-wrap
+#: en/git-verify-pack.txt:30
 msgid ""
-"diff --git a/a b/b\n"
-"rename from a\n"
-"rename to b\n"
-"diff --git a/b b/a\n"
-"rename from b\n"
-"rename to a\n"
+"After verifying the pack, show list of objects contained in the pack and a "
+"histogram of delta chain length."
 msgstr ""
 
-#. type: Title -
-#: en/diff-generate-patch.txt:74
+#. type: Labeled list
+#: en/git-verify-pack.txt:32
 #, no-wrap
-msgid "combined diff format"
+msgid "--stat-only"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:82
+#: en/git-verify-pack.txt:35
 msgid ""
-"Any diff-generating command can take the `-c` or `--cc` option to produce a "
-"'combined diff' when showing a merge. This is the default format when "
-"showing merges with linkgit:git-diff[1] or linkgit:git-show[1]. Note also "
-"that you can give the `-m` option to any of these commands to force "
-"generation of diffs with individual parents of a merge."
-msgstr ""
-
-#. type: Plain text
-#: en/diff-generate-patch.txt:84
-msgid "A 'combined diff' format looks like this:"
+"Do not verify the pack contents; only show the histogram of delta chain "
+"length.  With `--verbose`, list of objects is also shown."
 msgstr ""
 
-#. type: delimited block -
-#: en/diff-generate-patch.txt:93
+#. type: Title -
+#: en/git-verify-pack.txt:40
 #, no-wrap
-msgid ""
-"diff --combined describe.c\n"
-"index fabadb8,cc95eb0..4866510\n"
-"--- a/describe.c\n"
-"+++ b/describe.c\n"
-"@@@ -98,20 -98,12 +98,20 @@@\n"
-"\treturn (a_date > b_date) ? -1 : (a_date == b_date) ? 0 : 1;\n"
-"  }\n"
+msgid "OUTPUT FORMAT"
 msgstr ""
 
-#. type: delimited block -
-#: en/diff-generate-patch.txt:103
-#, no-wrap
-msgid ""
-"- static void describe(char *arg)\n"
-" -static void describe(struct commit *cmit, int last_one)\n"
-"++static void describe(char *arg, int last_one)\n"
-"  {\n"
-" +\tunsigned char sha1[20];\n"
-" +\tstruct commit *cmit;\n"
-"\tstruct commit_list *list;\n"
-"\tstatic int initialized = 0;\n"
-"\tstruct commit_name *n;\n"
+#. type: Plain text
+#: en/git-verify-pack.txt:42
+msgid "When specifying the -v option the format used is:"
 msgstr ""
 
-#. type: delimited block -
-#: en/diff-generate-patch.txt:113
+#. type: Plain text
+#: en/git-verify-pack.txt:44
 #, no-wrap
-msgid ""
-" +\tif (get_sha1(arg, sha1) < 0)\n"
-" +\t\tusage(describe_usage);\n"
-" +\tcmit = lookup_commit_reference(sha1);\n"
-" +\tif (!cmit)\n"
-" +\t\tusage(describe_usage);\n"
-" +\n"
-"\tif (!initialized) {\n"
-"\t\tinitialized = 1;\n"
-"\t\tfor_each_ref(get_name);\n"
+msgid "\tSHA-1 type size size-in-packfile offset-in-packfile\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:117
-msgid ""
-"It is preceded with a \"git diff\" header, that looks like this (when `-c` "
-"option is used):"
+#: en/git-verify-pack.txt:46
+msgid "for objects that are not deltified in the pack, and"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:119
+#: en/git-verify-pack.txt:48
 #, no-wrap
-msgid "diff --combined file\n"
+msgid "\tSHA-1 type size size-in-packfile offset-in-packfile depth base-SHA-1\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:121
-msgid "or like this (when `--cc` option is used):"
+#: en/git-verify-pack.txt:50
+msgid "for objects that are deltified."
 msgstr ""
 
-#. type: Plain text
-#: en/diff-generate-patch.txt:123
+#. type: Title =
+#: en/git-verify-tag.txt:2
 #, no-wrap
-msgid "       diff --cc file\n"
+msgid "git-verify-tag(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:126
-msgid ""
-"It is followed by one or more extended header lines (this example shows a "
-"merge with two parents):"
+#: en/git-verify-tag.txt:7
+msgid "git-verify-tag - Check the GPG signature of tags"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:131
+#: en/git-verify-tag.txt:12
 #, no-wrap
-msgid ""
-"index <hash>,<hash>..<hash>\n"
-"mode <mode>,<mode>..<mode>\n"
-"new file mode <mode>\n"
-"deleted file mode <mode>,<mode>\n"
+msgid "'git verify-tag' [--format=<format>] <tag>...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:137
-msgid ""
-"The `mode <mode>,<mode>..<mode>` line appears only if at least one of the "
-"<mode> is different from the rest. Extended headers with information about "
-"detected contents movement (renames and copying detection) are designed to "
-"work with diff of two <tree-ish> and are not used by combined diff format."
+#: en/git-verify-tag.txt:16
+msgid "Validates the gpg signature created by 'git tag'."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:139
-msgid "It is followed by two-line from-file/to-file header"
+#: en/git-verify-tag.txt:26
+msgid "Print the contents of the tag object before validating it."
 msgstr ""
 
-#. type: Plain text
-#: en/diff-generate-patch.txt:141
-msgid "a/file"
+#. type: Labeled list
+#: en/git-verify-tag.txt:27
+#, no-wrap
+msgid "<tag>..."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:142
-msgid "b/file"
+#: en/git-verify-tag.txt:29
+msgid "SHA-1 identifiers of Git tag objects."
 msgstr ""
 
-#. type: Plain text
-#: en/diff-generate-patch.txt:146
-msgid ""
-"Similar to two-line header for traditional 'unified' diff format, "
-"`/dev/null` is used to signal created or deleted files."
+#. type: Title =
+#: en/git-web--browse.txt:2
+#, no-wrap
+msgid "git-web{litdd}browse(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:152
-msgid ""
-"Chunk header format is modified to prevent people from accidentally feeding "
-"it to `patch -p1`. Combined diff format was created for review of merge "
-"commit changes, and was not meant for apply. The change is similar to the "
-"change in the extended 'index' header:"
+#: en/git-web--browse.txt:7
+msgid "git-web--browse - Git helper script to launch a web browser"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:154
+#: en/git-web--browse.txt:12
 #, no-wrap
-msgid "@@@ <from-file-range> <from-file-range> <to-file-range> @@@\n"
+msgid "'git web{litdd}browse' [<options>] <url|file>...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:157
+#: en/git-web--browse.txt:19
 msgid ""
-"There are (number of parents + 1) `@` characters in the chunk header for "
-"combined diff format."
+"This script tries, as much as possible, to display the URLs and FILEs that "
+"are passed as arguments, as HTML pages in new tabs on an already opened web "
+"browser."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:166
-msgid ""
-"Unlike the traditional 'unified' diff format, which shows two files A and B "
-"with a single column that has `-` (minus -- appears in A but removed in B), "
-"`+` (plus -- missing in A but added to B), or `\" \"` (space -- unchanged) "
-"prefix, this format compares two or more files file1, file2,... with one "
-"file X, and shows how X differs from each of fileN.  One column for each of "
-"fileN is prepended to the output line to note how X's line is different from "
-"it."
+#: en/git-web--browse.txt:21
+msgid "The following browsers (or commands) are currently supported:"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:172
-msgid ""
-"A `-` character in the column N means that the line appears in fileN but it "
-"does not appear in the result.  A `+` character in the column N means that "
-"the line appears in the result, and fileN does not have that line (in other "
-"words, the line was added, from the point of view of that parent)."
+#: en/git-web--browse.txt:23
+msgid "firefox (this is the default under X Window when not using KDE)"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:178
-msgid ""
-"In the above example output, the function signature was changed from both "
-"files (hence two `-` removals from both file1 and file2, plus `++` to mean "
-"one line that was added does not appear in either file1 or file2).  Also "
-"eight other lines are the same from file1 but do not appear in file2 (hence "
-"prefixed with `+`)."
+#: en/git-web--browse.txt:24
+msgid "iceweasel"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-generate-patch.txt:184
-msgid ""
-"When shown by `git diff-tree -c`, it compares the parents of a merge commit "
-"with the merge result (i.e. file1..fileN are the parents).  When shown by "
-"`git diff-files -c`, it compares the two unresolved merge parents with the "
-"working tree file (i.e. file1 is stage 2 aka \"our version\", file2 is stage "
-"3 aka \"their version\")."
+#: en/git-web--browse.txt:25
+msgid "seamonkey"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:19
-msgid "Generate plain patches without any diffstats."
+#: en/git-web--browse.txt:26
+msgid "iceape"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:26
-msgid "Generate patch (see section on generating patches)."
+#: en/git-web--browse.txt:27
+msgid "chromium (also supported as chromium-browser)"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:28 en/diff-options.txt:50
-#, no-wrap
-msgid "\tThis is the default.\n"
-msgstr ""
-
-#. type: Labeled list
-#: en/diff-options.txt:31
-#, no-wrap
-msgid "--no-patch"
+#: en/git-web--browse.txt:28
+msgid "google-chrome (also supported as chrome)"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:34
+#: en/git-web--browse.txt:29
 msgid ""
-"Suppress diff output. Useful for commands like `git show` that show the "
-"patch by default, or to cancel the effect of `--patch`."
+"konqueror (this is the default under KDE, see 'Note about konqueror' below)"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:36
-#, no-wrap
-msgid "-U<n>"
+#. type: Plain text
+#: en/git-web--browse.txt:30
+msgid "opera"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:37
-#, no-wrap
-msgid "--unified=<n>"
+#. type: Plain text
+#: en/git-web--browse.txt:31
+msgid "w3m (this is the default outside graphical environments)"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:40
-msgid "Generate diffs with <n> lines of context instead of the usual three."
+#: en/git-web--browse.txt:32
+msgid "elinks"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:42
-#, no-wrap
-msgid "\tImplies `-p`.\n"
+#: en/git-web--browse.txt:33
+msgid "links"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:48
-#, no-wrap
-msgid "\tGenerate the diff in raw format.\n"
+#: en/git-web--browse.txt:34
+msgid "lynx"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:58
-#, no-wrap
-msgid ""
-"\tFor each commit, show a summary of changes using the raw diff\n"
-"\tformat. See the \"RAW OUTPUT FORMAT\" section of\n"
-"\tlinkgit:git-diff[1]. This is different from showing the log\n"
-"\titself in raw format, which you can achieve with\n"
-"\t`--format=raw`.\n"
+#: en/git-web--browse.txt:35
+msgid "dillo"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:62
-#, no-wrap
-msgid "--patch-with-raw"
+#. type: Plain text
+#: en/git-web--browse.txt:36
+msgid "open (this is the default under Mac OS X GUI)"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:64
-msgid "Synonym for `-p --raw`."
+#: en/git-web--browse.txt:37
+msgid "start (this is the default under MinGW)"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:68
-#, no-wrap
-msgid "--minimal"
+#. type: Plain text
+#: en/git-web--browse.txt:38
+msgid "cygstart (this is the default under Cygwin)"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:72
-#, no-wrap
-msgid "--patience"
+#. type: Plain text
+#: en/git-web--browse.txt:39
+msgid "xdg-open"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:74
-msgid "Generate a diff using the \"patience diff\" algorithm."
+#: en/git-web--browse.txt:41
+msgid "Custom commands may also be specified."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-options.txt:75
+#: en/git-web--browse.txt:44
 #, no-wrap
-msgid "--histogram"
-msgstr ""
-
-#. type: Plain text
-#: en/diff-options.txt:77
-msgid "Generate a diff using the \"histogram diff\" algorithm."
+msgid "-b <browser>"
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-options.txt:78
+#: en/git-web--browse.txt:45
 #, no-wrap
-msgid "--diff-algorithm={patience|minimal|histogram|myers}"
-msgstr ""
-
-#. type: Plain text
-#: en/diff-options.txt:80
-msgid "Choose a diff algorithm. The variants are as follows:"
+msgid "--browser=<browser>"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:97
+#: en/git-web--browse.txt:48
 msgid ""
-"For instance, if you configured diff.algorithm variable to a non-default "
-"value and want to use the default one, then you have to use "
-"`--diff-algorithm=default` option."
+"Use the specified browser. It must be in the list of supported browsers."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-options.txt:98
+#: en/git-web--browse.txt:49
 #, no-wrap
-msgid "--stat[=<width>[,<name-width>[,<count>]]]"
-msgstr ""
-
-#. type: Plain text
-#: en/diff-options.txt:112
-msgid ""
-"Generate a diffstat. By default, as much space as necessary will be used for "
-"the filename part, and the rest for the graph part. Maximum width defaults "
-"to terminal width, or 80 columns if not connected to a terminal, and can be "
-"overridden by `<width>`. The width of the filename part can be limited by "
-"giving another width `<name-width>` after a comma. The width of the graph "
-"part can be limited by using `--stat-graph-width=<width>` (affects all "
-"commands generating a stat graph) or by setting "
-"`diff.statGraphWidth=<width>` (does not affect `git format-patch`).  By "
-"giving a third parameter `<count>`, you can limit the output to the first "
-"`<count>` lines, followed by `...` if there are more."
+msgid "-t <browser>"
 msgstr ""
 
-#. type: Plain text
-#: en/diff-options.txt:115
-msgid ""
-"These parameters can also be set individually with `--stat-width=<width>`, "
-"`--stat-name-width=<name-width>` and `--stat-count=<count>`."
+#. type: Labeled list
+#: en/git-web--browse.txt:50
+#, no-wrap
+msgid "--tool=<browser>"
 msgstr ""
 
-#. type: Plain text
-#: en/diff-options.txt:122
-msgid ""
-"Similar to `--stat`, but shows number of added and deleted lines in decimal "
-"notation and pathname without abbreviation, to make it more machine "
-"friendly.  For binary files, outputs two `-` instead of saying `0 0`."
+#. type: Labeled list
+#: en/git-web--browse.txt:53
+#, no-wrap
+msgid "-c <conf.var>"
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-options.txt:123
+#: en/git-web--browse.txt:54
 #, no-wrap
-msgid "--shortstat"
+msgid "--config=<conf.var>"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:127
+#: en/git-web--browse.txt:57
 msgid ""
-"Output only the last line of the `--stat` format containing total number of "
-"modified files, as well as number of added and deleted lines."
+"CONF.VAR is looked up in the Git config files. If it's set, then its value "
+"specifies the browser that should be used."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:128
+#. type: Title ~
+#: en/git-web--browse.txt:62
 #, no-wrap
-msgid "--dirstat[=<param1,param2,...>]"
+msgid "CONF.VAR (from -c option) and web.browser"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:135
+#: en/git-web--browse.txt:67
 msgid ""
-"Output the distribution of relative amount of changes for each "
-"sub-directory. The behavior of `--dirstat` can be customized by passing it a "
-"comma separated list of parameters.  The defaults are controlled by the "
-"`diff.dirstat` configuration variable (see linkgit:git-config[1]).  The "
-"following parameters are available:"
+"The web browser can be specified using a configuration variable passed with "
+"the -c (or --config) command-line option, or the `web.browser` configuration "
+"variable if the former is not used."
 msgstr ""
 
-#. type: Plain text
-#: en/diff-options.txt:171
-msgid ""
-"Example: The following will count changed files, while ignoring directories "
-"with less than 10% of the total amount of changed files, and accumulating "
-"child directory counts in the parent directories: "
-"`--dirstat=files,10,cumulative`."
+#. type: Title ~
+#: en/git-web--browse.txt:69
+#, no-wrap
+msgid "browser.<tool>.path"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:175
+#: en/git-web--browse.txt:76
 msgid ""
-"Output a condensed summary of extended header information such as creations, "
-"renames and mode changes."
+"You can explicitly provide a full path to your preferred browser by setting "
+"the configuration variable `browser.<tool>.path`. For example, you can "
+"configure the absolute path to firefox by setting 'browser.firefox.path'. "
+"Otherwise, 'git web{litdd}browse' assumes the tool is available in PATH."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:177
+#. type: Title ~
+#: en/git-web--browse.txt:78
 #, no-wrap
-msgid "--patch-with-stat"
+msgid "browser.<tool>.cmd"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:179
-msgid "Synonym for `-p --stat`."
+#: en/git-web--browse.txt:86
+msgid ""
+"When the browser, specified by options or configuration variables, is not "
+"among the supported ones, then the corresponding `browser.<tool>.cmd` "
+"configuration variable will be looked up. If this variable exists then 'git "
+"web{litdd}browse' will treat the specified tool as a custom command and will "
+"use a shell eval to run the command with the URLs passed as arguments."
 msgstr ""
 
-#. type: Plain text
-#: en/diff-options.txt:186
+#. type: Title -
+#: en/git-web--browse.txt:88
 #, no-wrap
-msgid "\tSeparate the commits with NULs instead of with new newlines.\n"
+msgid "NOTE ABOUT KONQUEROR"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:189
+#: en/git-web--browse.txt:93
 msgid ""
-"Also, when `--raw` or `--numstat` has been given, do not munge pathnames and "
-"use NULs as output field terminators."
+"When 'konqueror' is specified by a command-line option or a configuration "
+"variable, we launch 'kfmclient' to try to open the HTML man page on an "
+"already opened konqueror in a new tab if possible."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:193
-#, no-wrap
+#: en/git-web--browse.txt:97
 msgid ""
-"\tWhen `--raw`, `--numstat`, `--name-only` or `--name-status` has been\n"
-"\tgiven, do not munge pathnames and use NULs as output field terminators.\n"
+"For consistency, we also try such a trick if 'browser.konqueror.path' is set "
+"to something like 'A_PATH_TO/konqueror'. That means we will try to launch "
+"'A_PATH_TO/kfmclient' instead."
 msgstr ""
 
-#. type: Plain text
-#: en/diff-options.txt:201
-msgid "Show only names of changed files."
+#. type: delimited block -
+#: en/git-web--browse.txt:104
+#, no-wrap
+msgid ""
+"\t[web]\n"
+"\t\tbrowser = konq\n"
 msgstr ""
 
-#. type: Plain text
-#: en/diff-options.txt:205
+#. type: delimited block -
+#: en/git-web--browse.txt:107
+#, no-wrap
 msgid ""
-"Show only names and status of changed files. See the description of the "
-"`--diff-filter` option on what the status letters mean."
+"\t[browser \"konq\"]\n"
+"\t\tcmd = A_PATH_TO/konqueror\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:206
+#. type: Title ~
+#: en/git-web--browse.txt:110
 #, no-wrap
-msgid "--submodule[=<format>]"
+msgid "Note about git-config --global"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:217
+#: en/git-web--browse.txt:114
 msgid ""
-"Specify how differences in submodules are shown.  When specifying "
-"`--submodule=short` the 'short' format is used.  This format just shows the "
-"names of the commits at the beginning and end of the range.  When "
-"`--submodule` or `--submodule=log` is specified, the 'log' format is used.  "
-"This format lists the commits in the range like linkgit:git-submodule[1] "
-"`summary` does.  When `--submodule=diff` is specified, the 'diff' format is "
-"used.  This format shows an inline diff of the changes in the submodule "
-"contents between the commit range.  Defaults to `diff.submodule` or the "
-"'short' format if the config option is unset."
+"Note that these configuration variables should probably be set using the `--"
+"global` flag, for example like this:"
 msgstr ""
 
-#. type: Plain text
-#: en/diff-options.txt:222
-msgid ""
-"Show colored diff.  `--color` (i.e. without '=<when>') is the same as "
-"`--color=always`.  '<when>' can be one of `always`, `never`, or `auto`."
+#. type: delimited block -
+#: en/git-web--browse.txt:117
+#, no-wrap
+msgid "$ git config --global web.browser firefox\n"
 msgstr ""
 
-#. type: Plain text
-#: en/diff-options.txt:225
+#. type: Title =
+#: en/git-whatchanged.txt:2
 #, no-wrap
-msgid ""
-"\tIt can be changed by the `color.ui` and `color.diff`\n"
-"\tconfiguration settings.\n"
+msgid "git-whatchanged(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:229
-msgid "Turn off colored diff."
+#: en/git-whatchanged.txt:7
+msgid "git-whatchanged - Show logs with difference each commit introduces"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:231
+#: en/git-whatchanged.txt:13
 #, no-wrap
-msgid "\tThis can be used to override configuration settings.\n"
+msgid "'git whatchanged' <option>...\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:233
-#, no-wrap
-msgid "\tIt is the same as `--color=never`.\n"
-msgstr ""
-
-#. type: Labeled list
-#: en/diff-options.txt:234
-#, no-wrap
-msgid "--word-diff[=<mode>]"
+#: en/git-whatchanged.txt:18
+msgid "Shows commit logs and diff output each commit introduces."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:239
+#: en/git-whatchanged.txt:22
 msgid ""
-"Show a word diff, using the <mode> to delimit changed words.  By default, "
-"words are delimited by whitespace; see `--word-diff-regex` below.  The "
-"<mode> defaults to 'plain', and must be one of:"
+"New users are encouraged to use linkgit:git-log[1] instead.  The "
+"`whatchanged` command is essentially the same as linkgit:git-log[1] but "
+"defaults to show the raw format diff output and to skip merges."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:243
-msgid "Highlight changed words using only colors.  Implies `--color`."
+#: en/git-whatchanged.txt:26
+msgid ""
+"The command is kept primarily for historical reasons; fingers of many people "
+"who learned Git long before `git log` was invented by reading Linux kernel "
+"mailing list are trained to type it."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-options.txt:243
+#: en/git-whatchanged.txt:30
 #, no-wrap
-msgid "plain"
+msgid "`git whatchanged -p v2.6.12.. include/scsi drivers/scsi`"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:247
+#: en/git-whatchanged.txt:34
 msgid ""
-"Show words as `[-removed-]` and `{+added+}`.  Makes no attempts to escape "
-"the delimiters if they appear in the input, so the output may be ambiguous."
+"Show as patches the commits since version 'v2.6.12' that changed any file in "
+"the include/scsi or drivers/scsi subdirectories"
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-options.txt:247
+#: en/git-whatchanged.txt:35
 #, no-wrap
-msgid "porcelain"
+msgid "`git whatchanged --since=\"2 weeks ago\" -- gitk`"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:254
+#: en/git-whatchanged.txt:40
 msgid ""
-"Use a special line-based format intended for script consumption.  "
-"Added/removed/unchanged runs are printed in the usual unified diff format, "
-"starting with a `+`/`-`/` ` character at the beginning of the line and "
-"extending to the end of the line.  Newlines in the input are represented by "
-"a tilde `~` on a line of its own."
+"Show the changes during the last two weeks to the file 'gitk'.  The \"--\" "
+"is necessary to avoid confusion with the *branch* named 'gitk'"
 msgstr ""
 
-#. type: Plain text
-#: en/diff-options.txt:256
-msgid "Disable word diff again."
+#. type: Title =
+#: en/git-worktree.txt:2
+#, no-wrap
+msgid "git-worktree(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:260
-msgid ""
-"Note that despite the name of the first mode, color is used to highlight the "
-"changed parts in all modes if enabled."
+#: en/git-worktree.txt:7
+msgid "git-worktree - Manage multiple working trees"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:261
+#. type: Plain text
+#: en/git-worktree.txt:19
 #, no-wrap
-msgid "--word-diff-regex=<regex>"
+msgid ""
+"'git worktree add' [-f] [--detach] [--checkout] [--lock] [-b <new-branch>] <path> [<commit-ish>]\n"
+"'git worktree list' [--porcelain]\n"
+"'git worktree lock' [--reason <string>] <worktree>\n"
+"'git worktree move' <worktree> <new-path>\n"
+"'git worktree prune' [-n] [-v] [--expire <expire>]\n"
+"'git worktree remove' [-f] <worktree>\n"
+"'git worktree unlock' <worktree>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:265
-msgid ""
-"Use <regex> to decide what a word is, instead of considering runs of "
-"non-whitespace to be a word.  Also implies `--word-diff` unless it was "
-"already enabled."
+#: en/git-worktree.txt:24
+msgid "Manage multiple working trees attached to the same repository."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:273
+#: en/git-worktree.txt:32
 msgid ""
-"Every non-overlapping match of the <regex> is considered a word.  Anything "
-"between these matches is considered whitespace and ignored(!) for the "
-"purposes of finding differences.  You may want to append `|[^[:space:]]` to "
-"your regular expression to make sure that it matches all non-whitespace "
-"characters.  A match that contains a newline is silently truncated(!) at the "
-"newline."
+"A git repository can support multiple working trees, allowing you to check "
+"out more than one branch at a time.  With `git worktree add` a new working "
+"tree is associated with the repository.  This new working tree is called a "
+"\"linked working tree\" as opposed to the \"main working tree\" prepared by "
+"\"git init\" or \"git clone\".  A repository has one main working tree (if "
+"it's not a bare repository) and zero or more linked working trees. When you "
+"are done with a linked working tree, remove it with `git worktree remove`."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:276
+#: en/git-worktree.txt:39
 msgid ""
-"For example, `--word-diff-regex=.` will treat each character as a word and, "
-"correspondingly, show differences character by character."
+"If a working tree is deleted without using `git worktree remove`, then its "
+"associated administrative files, which reside in the repository (see "
+"\"DETAILS\" below), will eventually be removed automatically (see `gc."
+"worktreePruneExpire` in linkgit:git-config[1]), or you can run `git worktree "
+"prune` in the main or any linked working tree to clean up any stale "
+"administrative files."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:281
+#: en/git-worktree.txt:44
 msgid ""
-"The regex can also be set via a diff driver or configuration option, see "
-"linkgit:gitattributes[5] or linkgit:git-config[1].  Giving it explicitly "
-"overrides any diff driver or configuration setting.  Diff drivers override "
-"configuration settings."
+"If a linked working tree is stored on a portable device or network share "
+"which is not always mounted, you can prevent its administrative files from "
+"being pruned by issuing the `git worktree lock` command, optionally "
+"specifying `--reason` to explain why the working tree is locked."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-options.txt:282
+#: en/git-worktree.txt:47
 #, no-wrap
-msgid "--color-words[=<regex>]"
+msgid "add <path> [<commit-ish>]"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:285
+#: en/git-worktree.txt:53
 msgid ""
-"Equivalent to `--word-diff=color` plus (if a regex was specified) "
-"`--word-diff-regex=<regex>`."
+"Create `<path>` and checkout `<commit-ish>` into it. The new working "
+"directory is linked to the current repository, sharing everything except "
+"working directory specific files such as HEAD, index, etc. `-` may also be "
+"specified as `<commit-ish>`; it is synonymous with `@{-1}`."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:287
+#. type: Plain text
+#: en/git-worktree.txt:58
+msgid ""
+"If <commit-ish> is a branch name (call it `<branch>`) and is not found, and "
+"neither `-b` nor `-B` nor `--detach` are used, but there does exist a "
+"tracking branch in exactly one remote (call it `<remote>`)  with a matching "
+"name, treat as equivalent to:"
+msgstr ""
+
+#. type: delimited block -
+#: en/git-worktree.txt:61
 #, no-wrap
-msgid "--no-renames"
+msgid "$ git worktree add --track -b <branch> <path> <remote>/<branch>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:290
+#: en/git-worktree.txt:80
 msgid ""
-"Turn off rename detection, even when the configuration file gives the "
-"default to do so."
+"If `<commit-ish>` is omitted and neither `-b` nor `-B` nor `--detach` used, "
+"then, as a convenience, the new worktree is associated with a branch (call "
+"it `<branch>`) named after `$(basename <path>)`.  If `<branch>` doesn't "
+"exist, a new branch based on HEAD is automatically created as if `-b "
+"<branch>` was given.  If `<branch>` does exist, it will be checked out in "
+"the new worktree, if it's not checked out anywhere else, otherwise the "
+"command will refuse to create the worktree (unless `--force` is used)."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:301
+#: en/git-worktree.txt:87
 msgid ""
-"Warn if changes introduce conflict markers or whitespace errors.  What are "
-"considered whitespace errors is controlled by `core.whitespace` "
-"configuration.  By default, trailing whitespaces (including lines that "
-"solely consist of whitespaces) and a space character that is immediately "
-"followed by a tab character inside the initial indent of the line are "
-"considered whitespace errors.  Exits with non-zero status if problems are "
-"found. Not compatible with --exit-code."
+"List details of each worktree.  The main worktree is listed first, followed "
+"by each of the linked worktrees.  The output details include if the worktree "
+"is bare, the revision currently checked out, and the branch currently "
+"checked out (or 'detached HEAD' if none)."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-options.txt:302
+#: en/git-worktree.txt:88
 #, no-wrap
-msgid "--ws-error-highlight=<kind>"
+msgid "lock"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:312
+#: en/git-worktree.txt:95
 msgid ""
-"Highlight whitespace errors on lines specified by <kind> in the color "
-"specified by `color.diff.whitespace`.  <kind> is a comma separated list of "
-"`old`, `new`, `context`.  When this option is not given, only whitespace "
-"errors in `new` lines are highlighted.  E.g. `--ws-error-highlight=new,old` "
-"highlights whitespace errors on both deleted and added lines.  `all` can be "
-"used as a short-hand for `old,new,context`.  The `diff.wsErrorHighlight` "
-"configuration variable can be used to specify the default behaviour."
+"If a working tree is on a portable device or network share which is not "
+"always mounted, lock it to prevent its administrative files from being "
+"pruned automatically. This also prevents it from being moved or deleted. "
+"Optionally, specify a reason for the lock with `--reason`."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-options.txt:315
+#: en/git-worktree.txt:96
 #, no-wrap
-msgid "--full-index"
+msgid "move"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:319
+#: en/git-worktree.txt:100
 msgid ""
-"Instead of the first handful of characters, show the full pre- and "
-"post-image blob object names on the \"index\" line when generating patch "
-"format output."
+"Move a working tree to a new location. Note that the main working tree or "
+"linked working trees containing submodules cannot be moved."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:323
-msgid ""
-"In addition to `--full-index`, output a binary diff that can be applied with "
-"`git-apply`."
+#: en/git-worktree.txt:104
+msgid "Prune working tree information in $GIT_DIR/worktrees."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:331
+#: en/git-worktree.txt:111
 msgid ""
-"Instead of showing the full 40-byte hexadecimal object name in diff-raw "
-"format output and diff-tree header lines, show only a partial prefix.  This "
-"is independent of the `--full-index` option above, which controls the "
-"diff-patch output format.  Non default number of digits can be specified "
-"with `--abbrev=<n>`."
+"Remove a working tree. Only clean working trees (no untracked files and no "
+"modification in tracked files) can be removed. Unclean working trees or ones "
+"with submodules can be removed with `--force`. The main working tree cannot "
+"be removed."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-options.txt:332
+#: en/git-worktree.txt:112
 #, no-wrap
-msgid "-B[<n>][/<m>]"
+msgid "unlock"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:333
-#, no-wrap
-msgid "--break-rewrites[=[<n>][/<m>]]"
+#. type: Plain text
+#: en/git-worktree.txt:115
+msgid "Unlock a working tree, allowing it to be pruned, moved or deleted."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:336
+#: en/git-worktree.txt:127
 msgid ""
-"Break complete rewrite changes into pairs of delete and create. This serves "
-"two purposes:"
+"By default, `add` refuses to create a new working tree when `<commit-ish>` "
+"is a branch name and is already checked out by another working tree, or if "
+"`<path>` is already assigned to some working tree but is missing (for "
+"instance, if `<path>` was deleted manually). This option overrides these "
+"safeguards. To add a missing but locked working tree path, specify `--force` "
+"twice."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:346
+#: en/git-worktree.txt:130
 msgid ""
-"It affects the way a change that amounts to a total rewrite of a file not as "
-"a series of deletion and insertion mixed together with a very few lines that "
-"happen to match textually as the context, but as a single deletion of "
-"everything old followed by a single insertion of everything new, and the "
-"number `m` controls this aspect of the -B option (defaults to 60%). `-B/70%` "
-"specifies that less than 30% of the original should remain in the result for "
-"Git to consider it a total rewrite (i.e. otherwise the resulting patch will "
-"be a series of deletion and insertion mixed together with context lines)."
+"`move` refuses to move a locked working tree unless `--force` is specified "
+"twice."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:354
+#: en/git-worktree.txt:133
 msgid ""
-"When used with -M, a totally-rewritten file is also considered as the source "
-"of a rename (usually -M only considers a file that disappeared as the source "
-"of a rename), and the number `n` controls this aspect of the -B option "
-"(defaults to 50%). `-B20%` specifies that a change with addition and "
-"deletion compared to 20% or more of the file's size are eligible for being "
-"picked up as a possible source of a rename to another file."
+"`remove` refuses to remove an unclean working tree unless `--force` is "
+"used.  To remove a locked working tree, specify `--force` twice."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-options.txt:355
+#: en/git-worktree.txt:134
 #, no-wrap
-msgid "-M[<n>]"
+msgid "-b <new-branch>"
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-options.txt:356
+#: en/git-worktree.txt:135
 #, no-wrap
-msgid "--find-renames[=<n>]"
-msgstr ""
-
-#. type: Plain text
-#: en/diff-options.txt:359
-#, no-wrap
-msgid "\tDetect renames.\n"
+msgid "-B <new-branch>"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:364
-#, no-wrap
+#: en/git-worktree.txt:142
 msgid ""
-"\tIf generating diffs, detect and report renames for each commit.\n"
-"\tFor following files across renames while traversing history, see\n"
-"\t`--follow`.\n"
+"With `add`, create a new branch named `<new-branch>` starting at `<commit-"
+"ish>`, and check out `<new-branch>` into the new working tree.  If `<commit-"
+"ish>` is omitted, it defaults to HEAD.  By default, `-b` refuses to create a "
+"new branch if it already exists. `-B` overrides this safeguard, resetting "
+"`<new-branch>` to `<commit-ish>`."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:374
-#, no-wrap
+#: en/git-worktree.txt:146
 msgid ""
-"\tIf `n` is specified, it is a threshold on the similarity\n"
-"\tindex (i.e. amount of addition/deletions compared to the\n"
-"\tfile's size). For example, `-M90%` means Git should consider a\n"
-"\tdelete/add pair to be a rename if more than 90% of the file\n"
-"\thasn't changed.  Without a `%` sign, the number is to be read as\n"
-"\ta fraction, with a decimal point before it.  I.e., `-M5` becomes\n"
-"\t0.5, and is thus the same as `-M50%`.  Similarly, `-M05` is\n"
-"\tthe same as `-M5%`.  To limit detection to exact renames, use\n"
-"\t`-M100%`.  The default similarity index is 50%.\n"
+"With `add`, detach HEAD in the new working tree. See \"DETACHED HEAD\" in "
+"linkgit:git-checkout[1]."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-options.txt:375
+#: en/git-worktree.txt:147
 #, no-wrap
-msgid "-C[<n>]"
+msgid "--[no-]checkout"
+msgstr ""
+
+#. type: Plain text
+#: en/git-worktree.txt:152
+msgid ""
+"By default, `add` checks out `<commit-ish>`, however, `--no-checkout` can be "
+"used to suppress checkout in order to make customizations, such as "
+"configuring sparse-checkout. See \"Sparse checkout\" in linkgit:git-read-"
+"tree[1]."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-options.txt:376
+#: en/git-worktree.txt:153
 #, no-wrap
-msgid "--find-copies[=<n>]"
+msgid "--[no-]guess-remote"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:379
+#: en/git-worktree.txt:159
 msgid ""
-"Detect copies as well as renames.  See also `--find-copies-harder`.  If `n` "
-"is specified, it has the same meaning as for `-M<n>`."
+"With `worktree add <path>`, without `<commit-ish>`, instead of creating a "
+"new branch from HEAD, if there exists a tracking branch in exactly one "
+"remote matching the basename of `<path>`, base the new branch on the remote-"
+"tracking branch, and mark the remote-tracking branch as \"upstream\" from "
+"the new branch."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:388
+#: en/git-worktree.txt:162
 msgid ""
-"For performance reasons, by default, `-C` option finds copies only if the "
-"original file of the copy was modified in the same changeset.  This flag "
-"makes the command inspect unmodified files as candidates for the source of "
-"copy.  This is a very expensive operation for large projects, so use it with "
-"caution.  Giving more than one `-C` option has the same effect."
+"This can also be set up as the default behaviour by using the `worktree."
+"guessRemote` config option."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-options.txt:390
+#: en/git-worktree.txt:163
 #, no-wrap
-msgid "--irreversible-delete"
+msgid "--[no-]track"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:398
+#: en/git-worktree.txt:168
 msgid ""
-"Omit the preimage for deletes, i.e. print only the header but not the diff "
-"between the preimage and `/dev/null`. The resulting patch is not meant to be "
-"applied with `patch` or `git apply`; this is solely for people who want to "
-"just concentrate on reviewing the text after the change. In addition, the "
-"output obviously lack enough information to apply such a patch in reverse, "
-"even manually, hence the name of the option."
+"When creating a new branch, if `<commit-ish>` is a branch, mark it as "
+"\"upstream\" from the new branch.  This is the default if `<commit-ish>` is "
+"a remote-tracking branch.  See \"--track\" in linkgit:git-branch[1] for "
+"details."
 msgstr ""
 
-#. type: Plain text
-#: en/diff-options.txt:401
-msgid ""
-"When used together with `-B`, omit also the preimage in the deletion part of "
-"a delete/create pair."
+#. type: Labeled list
+#: en/git-worktree.txt:169
+#, no-wrap
+msgid "--lock"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:408
+#: en/git-worktree.txt:173
 msgid ""
-"The `-M` and `-C` options require O(n^2) processing time where n is the "
-"number of potential rename/copy targets.  This option prevents rename/copy "
-"detection from running if the number of rename/copy targets exceeds the "
-"specified number."
-msgstr ""
-
-#. type: Labeled list
-#: en/diff-options.txt:410
-#, no-wrap
-msgid "--diff-filter=[(A|C|D|M|R|T|U|X|B)...[*]]"
+"Keep the working tree locked after creation. This is the equivalent of `git "
+"worktree lock` after `git worktree add`, but without race condition."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:421
-msgid ""
-"Select only files that are Added (`A`), Copied (`C`), Deleted (`D`), "
-"Modified (`M`), Renamed (`R`), have their type (i.e. regular file, symlink, "
-"submodule, ...) changed (`T`), are Unmerged (`U`), are Unknown (`X`), or "
-"have had their pairing Broken (`B`).  Any combination of the filter "
-"characters (including none) can be used.  When `*` (All-or-none) is added to "
-"the combination, all paths are selected if there is any file that matches "
-"other criteria in the comparison; if there is no file that matches other "
-"criteria, nothing is selected."
+#: en/git-worktree.txt:178
+msgid "With `prune`, do not remove anything; just report what it would remove."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:424
+#: en/git-worktree.txt:183
 msgid ""
-"Also, these upper-case letters can be downcased to exclude.  E.g.  "
-"`--diff-filter=ad` excludes added and deleted paths."
+"With `list`, output in an easy-to-parse format for scripts.  This format "
+"will remain stable across Git versions and regardless of user "
+"configuration.  See below for details."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:425
-#, no-wrap
-msgid "-S<string>"
+#. type: Plain text
+#: en/git-worktree.txt:187
+msgid "With 'add', suppress feedback messages."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:429
-msgid ""
-"Look for differences that change the number of occurrences of the specified "
-"string (i.e. addition/deletion) in a file.  Intended for the scripter's use."
+#: en/git-worktree.txt:191
+msgid "With `prune`, report all removals."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:435
-msgid ""
-"It is useful when you're looking for an exact block of code (like a struct), "
-"and want to know the history of that block since it first came into being: "
-"use the feature iteratively to feed the interesting block in the preimage "
-"back into `-S`, and keep going until you get the very first version of the "
-"block."
+#: en/git-worktree.txt:194
+msgid "With `prune`, only expire unused working trees older than <time>."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-options.txt:436
+#: en/git-worktree.txt:195
 #, no-wrap
-msgid "-G<regex>"
-msgstr ""
-
-#. type: Plain text
-#: en/diff-options.txt:439
-msgid ""
-"Look for differences whose patch text contains added/removed lines that "
-"match <regex>."
+msgid "--reason <string>"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:443
-msgid ""
-"To illustrate the difference between `-S<regex> --pickaxe-regex` and "
-"`-G<regex>`, consider a commit with the following diff in the same file:"
+#: en/git-worktree.txt:197
+msgid "With `lock`, an explanation why the working tree is locked."
 msgstr ""
 
-#. type: delimited block -
-#: en/diff-options.txt:448
+#. type: Labeled list
+#: en/git-worktree.txt:198
 #, no-wrap
-msgid ""
-"+    return !regexec(regexp, two->ptr, 1, &regmatch, 0);\n"
-"...\n"
-"-    hit = !regexec(regexp, mf2.ptr, 1, &regmatch, 0);\n"
+msgid "<worktree>"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:453
-msgid ""
-"While `git log -G\"regexec\\(regexp\"` will show this commit, `git log "
-"-S\"regexec\\(regexp\" --pickaxe-regex` will not (because the number of "
-"occurrences of that string did not change)."
+#: en/git-worktree.txt:201
+msgid "Working trees can be identified by path, either relative or absolute."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:456
-msgid "See the 'pickaxe' entry in linkgit:gitdiffcore[7] for more information."
+#: en/git-worktree.txt:206
+msgid ""
+"If the last path components in the working tree's path is unique among "
+"working trees, it can be used to identify worktrees. For example if you only "
+"have two working trees, at \"/abc/def/ghi\" and \"/abc/def/ggg\", then \"ghi"
+"\" or \"def/ghi\" is enough to point to the former working tree."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:457
+#. type: Title -
+#: en/git-worktree.txt:208
 #, no-wrap
-msgid "--pickaxe-all"
+msgid "REFS"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:461
+#: en/git-worktree.txt:213
 msgid ""
-"When `-S` or `-G` finds a change, show all the changes in that changeset, "
-"not just the files that contain the change in <string>."
-msgstr ""
-
-#. type: Labeled list
-#: en/diff-options.txt:462
-#, no-wrap
-msgid "--pickaxe-regex"
+"In multiple working trees, some refs may be shared between all working "
+"trees, some refs are local. One example is HEAD is different for all working "
+"trees. This section is about the sharing rules and how to access refs of one "
+"working tree from another."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:465
+#: en/git-worktree.txt:219
 msgid ""
-"Treat the <string> given to `-S` as an extended POSIX regular expression to "
-"match."
+"In general, all pseudo refs are per working tree and all refs starting with "
+"\"refs/\" are shared. Pseudo refs are ones like HEAD which are directly "
+"under GIT_DIR instead of inside GIT_DIR/refs. There are one exception to "
+"this: refs inside refs/bisect and refs/worktree is not shared."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:472
+#: en/git-worktree.txt:224
 msgid ""
-"Control the order in which files appear in the output.  This overrides the "
-"`diff.orderFile` configuration variable (see linkgit:git-config[1]).  To "
-"cancel `diff.orderFile`, use `-O/dev/null`."
+"Refs that are per working tree can still be accessed from another working "
+"tree via two special paths, main-worktree and worktrees. The former gives "
+"access to per-worktree refs of the main working tree, while the latter to "
+"all linked working trees."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:484
+#: en/git-worktree.txt:231
 msgid ""
-"The output order is determined by the order of glob patterns in "
-"<orderfile>.  All files with pathnames that match the first pattern are "
-"output first, all files with pathnames that match the second pattern (but "
-"not the first) are output next, and so on.  All files with pathnames that do "
-"not match any pattern are output last, as if there was an implicit match-all "
-"pattern at the end of the file.  If multiple pathnames have the same rank "
-"(they match the same pattern but no earlier patterns), their output order "
-"relative to each other is the normal order."
+"For example, main-worktree/HEAD or main-worktree/refs/bisect/good resolve to "
+"the same value as the main working tree's HEAD and refs/bisect/good "
+"respectively. Similarly, worktrees/foo/HEAD or worktrees/bar/refs/bisect/bad "
+"are the same as GIT_COMMON_DIR/worktrees/foo/HEAD and GIT_COMMON_DIR/"
+"worktrees/bar/refs/bisect/bad."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:486
-msgid "<orderfile> is parsed as follows:"
+#: en/git-worktree.txt:235
+msgid ""
+"To access refs, it's best not to look inside GIT_DIR directly. Instead use "
+"commands such as linkgit:git-rev-parse[1] or linkgit:git-update-ref[1] which "
+"will handle refs correctly."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:490
-msgid "Blank lines are ignored, so they can be used as separators for readability."
+#: en/git-worktree.txt:242
+msgid ""
+"By default, the repository \"config\" file is shared across all working "
+"trees. If the config variables `core.bare` or `core.worktree` are already "
+"present in the config file, they will be applied to the main working trees "
+"only."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:494
+#: en/git-worktree.txt:245
 msgid ""
-"Lines starting with a hash (\"`#`\") are ignored, so they can be used for "
-"comments.  Add a backslash (\"`\\`\") to the beginning of the pattern if it "
-"starts with a hash."
+"In order to have configuration specific to working trees, you can turn on "
+"\"worktreeConfig\" extension, e.g.:"
 msgstr ""
 
-#. type: Plain text
-#: en/diff-options.txt:496
-msgid "Each other line contains a single pattern."
+#. type: delimited block -
+#: en/git-worktree.txt:248
+#, no-wrap
+msgid "$ git config extensions.worktreeConfig true\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:503
+#: en/git-worktree.txt:254
 msgid ""
-"Patterns have the same syntax and semantics as patterns used for fnmantch(3) "
-"without the FNM_PATHNAME flag, except a pathname also matches a pattern if "
-"removing any number of the final pathname components matches the pattern.  "
-"For example, the pattern \"`foo*bar`\" matches \"`fooasdfbar`\" and "
-"\"`foo/bar/baz/asdf`\" but not \"`foobarx`\"."
+"In this mode, specific configuration stays in the path pointed by `git rev-"
+"parse --git-path config.worktree`. You can add or update configuration in "
+"this file with `git config --worktree`. Older Git versions will refuse to "
+"access repositories with this extension."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:508
+#: en/git-worktree.txt:260
 msgid ""
-"Swap two inputs; that is, show differences from index or on-disk file to "
-"tree contents."
-msgstr ""
-
-#. type: Labeled list
-#: en/diff-options.txt:509
-#, no-wrap
-msgid "--relative[=<path>]"
+"Note that in this file, the exception for `core.bare` and `core.worktree` is "
+"gone. If you have them in $GIT_DIR/config before, you must move them to the "
+"`config.worktree` of the main working tree. You may also take this "
+"opportunity to review and move other configuration that you do not want to "
+"share to all working trees:"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:516
-msgid ""
-"When run from a subdirectory of the project, it can be told to exclude "
-"changes outside the directory and show pathnames relative to it with this "
-"option.  When you are not in a subdirectory (e.g. in a bare repository), you "
-"can name which subdirectory to make the output relative to by giving a "
-"<path> as an argument."
+#: en/git-worktree.txt:262
+msgid "`core.worktree` and `core.bare` should never be shared"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:521
-msgid "Treat all files as text."
+#: en/git-worktree.txt:265
+msgid ""
+"`core.sparseCheckout` is recommended per working tree, unless you are sure "
+"you always use sparse checkout for all working trees."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:522
+#. type: Title -
+#: en/git-worktree.txt:267
 #, no-wrap
-msgid "--ignore-space-at-eol"
+msgid "DETAILS"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:524
-msgid "Ignore changes in whitespace at EOL."
+#: en/git-worktree.txt:276
+msgid ""
+"Each linked working tree has a private sub-directory in the repository's "
+"$GIT_DIR/worktrees directory.  The private sub-directory's name is usually "
+"the base name of the linked working tree's path, possibly appended with a "
+"number to make it unique.  For example, when `$GIT_DIR=/path/main/.git` the "
+"command `git worktree add /path/other/test-next next` creates the linked "
+"working tree in `/path/other/test-next` and also creates a `$GIT_DIR/"
+"worktrees/test-next` directory (or `$GIT_DIR/worktrees/test-next1` if `test-"
+"next` is already taken)."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:530
+#: en/git-worktree.txt:282
 msgid ""
-"Ignore changes in amount of whitespace.  This ignores whitespace at line "
-"end, and considers all other sequences of one or more whitespace characters "
-"to be equivalent."
-msgstr ""
-
-#. type: Labeled list
-#: en/diff-options.txt:532
-#, no-wrap
-msgid "--ignore-all-space"
+"Within a linked working tree, $GIT_DIR is set to point to this private "
+"directory (e.g. `/path/main/.git/worktrees/test-next` in the example) and "
+"$GIT_COMMON_DIR is set to point back to the main working tree's $GIT_DIR (e."
+"g. `/path/main/.git`). These settings are made in a `.git` file located at "
+"the top directory of the linked working tree."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:536
+#: en/git-worktree.txt:292
 msgid ""
-"Ignore whitespace when comparing lines.  This ignores differences even if "
-"one line has whitespace where the other line has none."
+"Path resolution via `git rev-parse --git-path` uses either $GIT_DIR or "
+"$GIT_COMMON_DIR depending on the path. For example, in the linked working "
+"tree `git rev-parse --git-path HEAD` returns `/path/main/.git/worktrees/test-"
+"next/HEAD` (not `/path/other/test-next/.git/HEAD` or `/path/main/.git/HEAD`) "
+"while `git rev-parse --git-path refs/heads/master` uses $GIT_COMMON_DIR and "
+"returns `/path/main/.git/refs/heads/master`, since refs are shared across "
+"all working trees, except refs/bisect and refs/worktree."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:537
-#, no-wrap
-msgid "--ignore-blank-lines"
+#. type: Plain text
+#: en/git-worktree.txt:297
+msgid ""
+"See linkgit:gitrepository-layout[5] for more information. The rule of thumb "
+"is do not make any assumption about whether a path belongs to $GIT_DIR or "
+"$GIT_COMMON_DIR when you need to directly access something inside $GIT_DIR. "
+"Use `git rev-parse --git-path` to get the final path."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:539
-msgid "Ignore changes whose lines are all blank."
+#: en/git-worktree.txt:304
+msgid ""
+"If you manually move a linked working tree, you need to update the 'gitdir' "
+"file in the entry's directory. For example, if a linked working tree is "
+"moved to `/newpath/test-next` and its `.git` file points to `/path/main/.git/"
+"worktrees/test-next`, then update `/path/main/.git/worktrees/test-next/"
+"gitdir` to reference `/newpath/test-next` instead."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:540
-#, no-wrap
-msgid "--inter-hunk-context=<lines>"
+#. type: Plain text
+#: en/git-worktree.txt:315
+msgid ""
+"To prevent a $GIT_DIR/worktrees entry from being pruned (which can be useful "
+"in some situations, such as when the entry's working tree is stored on a "
+"portable device), use the `git worktree lock` command, which adds a file "
+"named 'locked' to the entry's directory. The file contains the reason in "
+"plain text. For example, if a linked working tree's `.git` file points to `/"
+"path/main/.git/worktrees/test-next` then a file named `/path/main/.git/"
+"worktrees/test-next/locked` will prevent the `test-next` entry from being "
+"pruned.  See linkgit:gitrepository-layout[5] for details."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:545
+#: en/git-worktree.txt:318
 msgid ""
-"Show the context between diff hunks, up to the specified number of lines, "
-"thereby fusing hunks that are close to each other.  Defaults to "
-"`diff.interHunkContext` or 0 if the config option is unset."
+"When extensions.worktreeConfig is enabled, the config file `.git/worktrees/"
+"<id>/config.worktree` is read after `.git/config` is."
 msgstr ""
 
-#. type: Plain text
-#: en/diff-options.txt:549
-msgid "Show whole surrounding functions of changes."
+#. type: Title -
+#: en/git-worktree.txt:320
+#, no-wrap
+msgid "LIST OUTPUT FORMAT"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:556
+#: en/git-worktree.txt:323
 msgid ""
-"Make the program exit with codes similar to diff(1).  That is, it exits with "
-"1 if there were differences and 0 means no differences."
+"The worktree list command has two output formats.  The default format shows "
+"the details on a single line with columns.  For example:"
 msgstr ""
 
-#. type: Plain text
-#: en/diff-options.txt:559
-msgid "Disable all output of the program. Implies `--exit-code`."
+#. type: delimited block -
+#: en/git-worktree.txt:329
+#, no-wrap
+msgid ""
+"$ git worktree list\n"
+"/path/to/bare-source            (bare)\n"
+"/path/to/linked-worktree        abcd1234 [master]\n"
+"/path/to/other-linked-worktree  1234abc  (detached HEAD)\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:562
+#. type: Title ~
+#: en/git-worktree.txt:332
 #, no-wrap
-msgid "--ext-diff"
+msgid "Porcelain Format"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:566
+#: en/git-worktree.txt:338
 msgid ""
-"Allow an external diff helper to be executed. If you set an external diff "
-"driver with linkgit:gitattributes[5], you need to use this option with "
-"linkgit:git-log[1] and friends."
+"The porcelain format has a line per attribute.  Attributes are listed with a "
+"label and value separated by a single space.  Boolean attributes (like "
+"'bare' and 'detached') are listed as a label only, and are only present if "
+"and only if the value is true.  The first attribute of a worktree is always "
+"`worktree`, an empty line indicates the end of the record.  For example:"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:567
+#. type: delimited block -
+#: en/git-worktree.txt:343
 #, no-wrap
-msgid "--no-ext-diff"
+msgid ""
+"$ git worktree list --porcelain\n"
+"worktree /path/to/bare-source\n"
+"bare\n"
 msgstr ""
 
-#. type: Plain text
-#: en/diff-options.txt:569
-msgid "Disallow external diff drivers."
+#. type: delimited block -
+#: en/git-worktree.txt:347
+#, no-wrap
+msgid ""
+"worktree /path/to/linked-worktree\n"
+"HEAD abcd1234abcd1234abcd1234abcd1234abcd1234\n"
+"branch refs/heads/master\n"
 msgstr ""
 
-#. type: Plain text
-#: en/diff-options.txt:580
+#. type: delimited block -
+#: en/git-worktree.txt:351
+#, no-wrap
 msgid ""
-"Allow (or disallow) external text conversion filters to be run when "
-"comparing binary files. See linkgit:gitattributes[5] for details. Because "
-"textconv filters are typically a one-way conversion, the resulting diff is "
-"suitable for human consumption, but cannot be applied. For this reason, "
-"textconv filters are enabled by default only for linkgit:git-diff[1] and "
-"linkgit:git-log[1], but not for linkgit:git-format-patch[1] or diff plumbing "
-"commands."
+"worktree /path/to/other-linked-worktree\n"
+"HEAD 1234abc1234abc1234abc1234abc1234abc1234a\n"
+"detached\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:593
+#: en/git-worktree.txt:364
 msgid ""
-"Ignore changes to submodules in the diff generation. <when> can be either "
-"\"none\", \"untracked\", \"dirty\" or \"all\", which is the default.  Using "
-"\"none\" will consider the submodule modified when it either contains "
-"untracked or modified files or its HEAD differs from the commit recorded in "
-"the superproject and can be used to override any settings of the 'ignore' "
-"option in linkgit:git-config[1] or linkgit:gitmodules[5]. When \"untracked\" "
-"is used submodules are not considered dirty when they only contain untracked "
-"content (but they are still scanned for modified content). Using \"dirty\" "
-"ignores all changes to the work tree of submodules, only changes to the "
-"commits stored in the superproject are shown (this was the behavior until "
-"1.7.0). Using \"all\" hides all changes to submodules."
+"You are in the middle of a refactoring session and your boss comes in and "
+"demands that you fix something immediately. You might typically use linkgit:"
+"git-stash[1] to store your changes away temporarily, however, your working "
+"tree is in such a state of disarray (with new, moved, and removed files, and "
+"other bits and pieces strewn around) that you don't want to risk disturbing "
+"any of it. Instead, you create a temporary linked working tree to make the "
+"emergency fix, remove it when done, and then resume your earlier refactoring "
+"session."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:594
+#. type: delimited block -
+#: en/git-worktree.txt:372
 #, no-wrap
-msgid "--src-prefix=<prefix>"
+msgid ""
+"$ git worktree add -b emergency-fix ../temp master\n"
+"$ pushd ../temp\n"
+"# ... hack hack hack ...\n"
+"$ git commit -a -m 'emergency fix for boss'\n"
+"$ popd\n"
+"$ git worktree remove ../temp\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:596
-msgid "Show the given source prefix instead of \"a/\"."
+#: en/git-worktree.txt:379
+msgid ""
+"Multiple checkout in general is still experimental, and the support for "
+"submodules is incomplete. It is NOT recommended to make multiple checkouts "
+"of a superproject."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:597
+#. type: Title =
+#: en/git-write-tree.txt:2
 #, no-wrap
-msgid "--dst-prefix=<prefix>"
+msgid "git-write-tree(1)"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:599
-msgid "Show the given destination prefix instead of \"b/\"."
+#: en/git-write-tree.txt:7
+msgid "git-write-tree - Create a tree object from the current index"
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:600
+#. type: Plain text
+#: en/git-write-tree.txt:13
 #, no-wrap
-msgid "--no-prefix"
+msgid "'git write-tree' [--missing-ok] [--prefix=<prefix>/]\n"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:602
-msgid "Do not show any source or destination prefix."
+#: en/git-write-tree.txt:18
+msgid ""
+"Creates a tree object using the current index. The name of the new tree "
+"object is printed to standard output."
 msgstr ""
 
-#. type: Labeled list
-#: en/diff-options.txt:603
-#, no-wrap
-msgid "--line-prefix=<prefix>"
+#. type: Plain text
+#: en/git-write-tree.txt:20
+msgid "The index must be in a fully merged state."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:605
-msgid "Prepend an additional prefix to every line of output."
+#: en/git-write-tree.txt:26
+msgid ""
+"Conceptually, 'git write-tree' sync()s the current index contents into a set "
+"of tree files.  In order to have that match what is actually in your "
+"directory right now, you need to have done a 'git update-index' phase before "
+"you did the 'git write-tree'."
 msgstr ""
 
 #. type: Labeled list
-#: en/diff-options.txt:606
+#: en/git-write-tree.txt:30
 #, no-wrap
-msgid "--ita-invisible-in-index"
+msgid "--missing-ok"
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:613
+#: en/git-write-tree.txt:34
 msgid ""
-"By default entries added by \"git add -N\" appear as an existing empty file "
-"in \"git diff\" and a new file in \"git diff --cached\".  This option makes "
-"the entry appear as a new file in \"git diff\" and non-existent in \"git "
-"diff --cached\". This option could be reverted with "
-"`--ita-visible-in-index`. Both options are experimental and could be removed "
-"in future."
+"Normally 'git write-tree' ensures that the objects referenced by the "
+"directory exist in the object database.  This option disables this check."
 msgstr ""
 
 #. type: Plain text
-#: en/diff-options.txt:615
+#: en/git-write-tree.txt:39
 msgid ""
-"For more detailed explanation on these common options, see also "
-"linkgit:gitdiffcore[7]."
+"Writes a tree object that represents a subdirectory `<prefix>`.  This can be "
+"used to write the tree object for a subproject that is in the named "
+"subdirectory."
 msgstr ""
 
 #. type: Plain text
-#: en/fetch-options.txt:3
-msgid "Fetch all remotes."
-msgstr ""
-
-#. type: Labeled list
-#: en/fetch-options.txt:5
-#, no-wrap
-msgid "--append"
+#: en/i18n.txt:2
+msgid "Git is to some extent character encoding agnostic."
 msgstr ""
 
 #. type: Plain text
-#: en/fetch-options.txt:9
+#: en/i18n.txt:6
 msgid ""
-"Append ref names and object names of fetched refs to the existing contents "
-"of `.git/FETCH_HEAD`.  Without this option old data in `.git/FETCH_HEAD` "
-"will be overwritten."
+"The contents of the blob objects are uninterpreted sequences of bytes.  "
+"There is no encoding translation at the core level."
 msgstr ""
 
-#. type: Labeled list
-#: en/fetch-options.txt:10
-#, no-wrap
-msgid "--depth=<depth>"
+#. type: Plain text
+#: en/i18n.txt:13
+msgid ""
+"Path names are encoded in UTF-8 normalization form C. This applies to tree "
+"objects, the index file, ref names, as well as path names in command line "
+"arguments, environment variables and config files (`.git/config` (see "
+"linkgit:git-config[1]), linkgit:gitignore[5], linkgit:gitattributes[5] and "
+"linkgit:gitmodules[5])."
 msgstr ""
 
 #. type: Plain text
-#: en/fetch-options.txt:16
+#: en/i18n.txt:23
 msgid ""
-"Limit fetching to the specified number of commits from the tip of each "
-"remote branch history. If fetching to a 'shallow' repository created by `git "
-"clone` with `--depth=<depth>` option (see linkgit:git-clone[1]), deepen or "
-"shorten the history to the specified number of commits. Tags for the "
-"deepened commits are not fetched."
+"Note that Git at the core level treats path names simply as sequences of non-"
+"NUL bytes, there are no path name encoding conversions (except on Mac and "
+"Windows). Therefore, using non-ASCII path names will mostly work even on "
+"platforms and file systems that use legacy extended ASCII encodings. "
+"However, repositories created on such systems will not work properly on "
+"UTF-8-based systems (e.g. Linux, Mac, Windows) and vice versa.  "
+"Additionally, many Git-based tools simply assume path names to be UTF-8 and "
+"will fail to display other encodings correctly."
 msgstr ""
 
-#. type: Labeled list
-#: en/fetch-options.txt:17
-#, no-wrap
-msgid "--deepen=<depth>"
+#. type: Plain text
+#: en/i18n.txt:29
+msgid ""
+"Commit log messages are typically encoded in UTF-8, but other extended ASCII "
+"encodings are also supported. This includes ISO-8859-x, CP125x and many "
+"others, but _not_ UTF-16/32, EBCDIC and CJK multi-byte encodings (GBK, Shift-"
+"JIS, Big5, EUC-x, CP9xx etc.)."
 msgstr ""
 
 #. type: Plain text
-#: en/fetch-options.txt:21
+#: en/i18n.txt:36
 msgid ""
-"Similar to --depth, except it specifies the number of commits from the "
-"current shallow boundary instead of from the tip of each remote branch "
-"history."
+"Although we encourage that the commit log messages are encoded in UTF-8, "
+"both the core and Git Porcelain are designed not to force UTF-8 on "
+"projects.  If all participants of a particular project find it more "
+"convenient to use legacy encodings, Git does not forbid it.  However, there "
+"are a few things to keep in mind."
 msgstr ""
 
 #. type: Plain text
-#: en/fetch-options.txt:25
+#: en/i18n.txt:42
 msgid ""
-"Deepen or shorten the history of a shallow repository to include all "
-"reachable commits after <date>."
+"'git commit' and 'git commit-tree' issues a warning if the commit log "
+"message given to it does not look like a valid UTF-8 string, unless you "
+"explicitly say your project uses a legacy encoding.  The way to say this is "
+"to have i18n.commitencoding in `.git/config` file, like this:"
 msgstr ""
 
-#. type: Labeled list
-#: en/fetch-options.txt:31
+#. type: delimited block -
+#: en/i18n.txt:46
 #, no-wrap
-msgid "--unshallow"
+msgid ""
+"[i18n]\n"
+"\tcommitEncoding = ISO-8859-1\n"
 msgstr ""
 
 #. type: Plain text
-#: en/fetch-options.txt:35
+#: en/i18n.txt:52
 msgid ""
-"If the source repository is complete, convert a shallow repository to a "
-"complete one, removing all the limitations imposed by shallow repositories."
+"Commit objects created with the above setting record the value of `i18n."
+"commitEncoding` in its `encoding` header.  This is to help other people who "
+"look at them later.  Lack of this header implies that the commit log message "
+"is encoded in UTF-8."
 msgstr ""
 
 #. type: Plain text
-#: en/fetch-options.txt:38
+#: en/i18n.txt:58
 msgid ""
-"If the source repository is shallow, fetch as much as possible so that the "
-"current repository has the same history as the source repository."
+"'git log', 'git show', 'git blame' and friends look at the `encoding` header "
+"of a commit object, and try to re-code the log message into UTF-8 unless "
+"otherwise specified.  You can specify the desired output encoding with `i18n."
+"logOutputEncoding` in `.git/config` file, like this:"
 msgstr ""
 
-#. type: Labeled list
-#: en/fetch-options.txt:39
+#. type: delimited block -
+#: en/i18n.txt:62
 #, no-wrap
-msgid "--update-shallow"
+msgid ""
+"[i18n]\n"
+"\tlogOutputEncoding = ISO-8859-1\n"
 msgstr ""
 
 #. type: Plain text
-#: en/fetch-options.txt:44
+#: en/i18n.txt:66
 msgid ""
-"By default when fetching from a shallow repository, `git fetch` refuses refs "
-"that require updating .git/shallow. This option updates .git/shallow and "
-"accept such refs."
+"If you do not have this configuration variable, the value of `i18n."
+"commitEncoding` is used instead."
 msgstr ""
 
 #. type: Plain text
-#: en/fetch-options.txt:48
-msgid "Show what would be done, without making any changes."
+#: en/i18n.txt:70
+msgid ""
+"Note that we deliberately chose not to re-code the commit log message when a "
+"commit is made to force UTF-8 at the commit object level, because re-coding "
+"to UTF-8 is not necessarily a reversible operation."
 msgstr ""
 
 #. type: Plain text
-#: en/fetch-options.txt:57
-msgid ""
-"When 'git fetch' is used with `<rbranch>:<lbranch>` refspec, it refuses to "
-"update the local branch `<lbranch>` unless the remote branch `<rbranch>` it "
-"fetches is a descendant of `<lbranch>`.  This option overrides that check."
+#: en/line-range-format.txt:2
+msgid "<start> and <end> can take one of these forms:"
 msgstr ""
 
 #. type: Plain text
-#: en/fetch-options.txt:61
-msgid "Keep downloaded pack."
+#: en/line-range-format.txt:4
+msgid "number"
 msgstr ""
 
-#. type: Labeled list
-#: en/fetch-options.txt:63
-#, no-wrap
-msgid "--multiple"
+#. type: Plain text
+#: en/line-range-format.txt:7
+msgid ""
+"If <start> or <end> is a number, it specifies an absolute line number (lines "
+"count from 1)."
 msgstr ""
 
 #. type: Plain text
-#: en/fetch-options.txt:66
-msgid ""
-"Allow several <repository> and <group> arguments to be specified. No "
-"<refspec>s may be specified."
+#: en/line-range-format.txt:10
+msgid "/regex/"
 msgstr ""
 
 #. type: Plain text
-#: en/fetch-options.txt:77
+#: en/line-range-format.txt:17
 msgid ""
-"Before fetching, remove any remote-tracking references that no longer exist "
-"on the remote.  Tags are not subject to pruning if they are fetched only "
-"because of the default tag auto-following or due to a --tags option.  "
-"However, if tags are fetched due to an explicit refspec (either on the "
-"command line or in the remote configuration, for example if the remote was "
-"cloned with the --mirror option), then they are also subject to pruning."
+"This form will use the first line matching the given POSIX regex. If <start> "
+"is a regex, it will search from the end of the previous `-L` range, if any, "
+"otherwise from the start of file.  If <start> is ``^/regex/'', it will "
+"search from the start of file.  If <end> is a regex, it will search starting "
+"at the line given by <start>."
 msgstr ""
 
-#. type: Labeled list
-#: en/fetch-options.txt:82
-#, no-wrap
-msgid "--no-tags"
+#. type: Plain text
+#: en/line-range-format.txt:20
+msgid "+offset or -offset"
 msgstr ""
 
 #. type: Plain text
-#: en/fetch-options.txt:88
+#: en/line-range-format.txt:23
 msgid ""
-"By default, tags that point at objects that are downloaded from the remote "
-"repository are fetched and stored locally.  This option disables this "
-"automatic tag following. The default behavior for a remote may be specified "
-"with the remote.<name>.tagOpt setting. See linkgit:git-config[1]."
+"This is only valid for <end> and will specify a number of lines before or "
+"after the line given by <start>."
 msgstr ""
 
-#. type: Labeled list
-#: en/fetch-options.txt:90
-#, no-wrap
-msgid "--refmap=<refspec>"
+#. type: Plain text
+#: en/line-range-format.txt:30
+msgid ""
+"If ``:<funcname>'' is given in place of <start> and <end>, it is a regular "
+"expression that denotes the range from the first funcname line that matches "
+"<funcname>, up to the next funcname line. ``:<funcname>'' searches from the "
+"end of the previous `-L` range, if any, otherwise from the start of file. "
+"``^:<funcname>'' searches from the start of file."
 msgstr ""
 
 #. type: Plain text
-#: en/fetch-options.txt:97
+#: en/mailmap.txt:6
 msgid ""
-"When fetching refs listed on the command line, use the specified refspec "
-"(can be given more than once) to map the refs to remote-tracking branches, "
-"instead of the values of `remote.*.fetch` configuration variables for the "
-"remote repository.  See section on \"Configured Remote-tracking Branches\" "
-"for details."
+"If the file `.mailmap` exists at the toplevel of the repository, or at the "
+"location pointed to by the mailmap.file or mailmap.blob configuration "
+"options, it is used to map author and committer names and email addresses to "
+"canonical real names and email addresses."
 msgstr ""
 
 #. type: Plain text
-#: en/fetch-options.txt:106
+#: en/mailmap.txt:10
 msgid ""
-"Fetch all tags from the remote (i.e., fetch remote tags `refs/tags/*` into "
-"local tags with the same name), in addition to whatever else would otherwise "
-"be fetched.  Using this option alone does not subject tags to pruning, even "
-"if --prune is used (though tags may be pruned anyway if they are also the "
-"destination of an explicit refspec; see `--prune`)."
+"In the simple form, each line in the file consists of the canonical real "
+"name of an author, whitespace, and an email address used in the commit "
+"(enclosed by '<' and '>') to map to the name. For example:"
 msgstr ""
 
-#. type: Labeled list
-#: en/fetch-options.txt:107
+#. type: Plain text
+#: en/mailmap.txt:12
 #, no-wrap
-msgid "--recurse-submodules[=yes|on-demand|no]"
+msgid "\tProper Name <commit@email.xx>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/fetch-options.txt:117
-msgid ""
-"This option controls if and under what conditions new commits of populated "
-"submodules should be fetched too. It can be used as a boolean option to "
-"completely disable recursion when set to 'no' or to unconditionally recurse "
-"into all populated submodules when set to 'yes', which is the default when "
-"this option is used without any value. Use 'on-demand' to only recurse into "
-"a populated submodule when the superproject retrieves a commit that updates "
-"the submodule's reference to a commit that isn't already in the local "
-"submodule clone."
+#: en/mailmap.txt:15
+msgid "The more complex forms are:"
 msgstr ""
 
-#. type: Labeled list
-#: en/fetch-options.txt:118
+#. type: Plain text
+#: en/mailmap.txt:17
 #, no-wrap
-msgid "-j"
+msgid "\t<proper@email.xx> <commit@email.xx>\n"
 msgstr ""
 
-#. type: Labeled list
-#: en/fetch-options.txt:119
+#. type: Plain text
+#: en/mailmap.txt:19
+msgid "which allows mailmap to replace only the email part of a commit, and:"
+msgstr ""
+
+#. type: Plain text
+#: en/mailmap.txt:21
 #, no-wrap
-msgid "--jobs=<n>"
+msgid "\tProper Name <proper@email.xx> <commit@email.xx>\n"
 msgstr ""
 
 #. type: Plain text
-#: en/fetch-options.txt:124
+#: en/mailmap.txt:24
 msgid ""
-"Number of parallel children to be used for fetching submodules.  Each will "
-"fetch from different submodules, such that fetching many submodules will be "
-"faster. By default submodules will be fetched one at a time."
-msgstr ""
-
-#. type: Plain text
-#: en/fetch-options.txt:128
-msgid ""
-"Disable recursive fetching of submodules (this has the same effect as using "
-"the `--recurse-submodules=no` option)."
-msgstr ""
-
-#. type: Labeled list
-#: en/fetch-options.txt:129
-#, no-wrap
-msgid "--submodule-prefix=<path>"
-msgstr ""
-
-#. type: Plain text
-#: en/fetch-options.txt:133
-msgid ""
-"Prepend <path> to paths printed in informative messages such as \"Fetching "
-"submodule foo\".  This option is used internally when recursing over "
-"submodules."
-msgstr ""
-
-#. type: Labeled list
-#: en/fetch-options.txt:134
-#, no-wrap
-msgid "--recurse-submodules-default=[yes|on-demand]"
-msgstr ""
-
-#. type: Plain text
-#: en/fetch-options.txt:141
-msgid ""
-"This option is used internally to temporarily provide a non-negative default "
-"value for the --recurse-submodules option.  All other methods of configuring "
-"fetch's submodule recursion (such as settings in linkgit:gitmodules[5] and "
-"linkgit:git-config[1]) override this option, as does specifying "
-"--[no-]recurse-submodules directly."
-msgstr ""
-
-#. type: Labeled list
-#: en/fetch-options.txt:144
-#, no-wrap
-msgid "--update-head-ok"
-msgstr ""
-
-#. type: Plain text
-#: en/fetch-options.txt:151
-msgid ""
-"By default 'git fetch' refuses to update the head which corresponds to the "
-"current branch.  This flag disables the check.  This is purely for the "
-"internal use for 'git pull' to communicate with 'git fetch', and unless you "
-"are implementing your own Porcelain you are not supposed to use it."
-msgstr ""
-
-#. type: Plain text
-#: en/fetch-options.txt:157
-msgid ""
-"When given, and the repository to fetch from is handled by 'git fetch-pack', "
-"`--exec=<upload-pack>` is passed to the command to specify non-default path "
-"for the command run on the other end."
-msgstr ""
-
-#. type: Plain text
-#: en/fetch-options.txt:164
-msgid ""
-"Pass --quiet to git-fetch-pack and silence any other internally used git "
-"commands. Progress is not reported to the standard error stream."
-msgstr ""
-
-#. type: Labeled list
-#: en/fmt-merge-msg-config.txt:1
-#, no-wrap
-msgid "merge.branchdesc"
-msgstr ""
-
-#. type: Plain text
-#: en/fmt-merge-msg-config.txt:5
-msgid ""
-"In addition to branch names, populate the log message with the branch "
-"description text associated with them.  Defaults to false."
-msgstr ""
-
-#. type: Labeled list
-#: en/fmt-merge-msg-config.txt:6
-#, no-wrap
-msgid "merge.log"
-msgstr ""
-
-#. type: Plain text
-#: en/fmt-merge-msg-config.txt:10
-msgid ""
-"In addition to branch names, populate the log message with at most the "
-"specified number of one-line descriptions from the actual commits that are "
-"being merged.  Defaults to false, and true is a synonym for 20."
-msgstr ""
-
-#. type: Plain text
-#: en/i18n.txt:2
-msgid "Git is to some extent character encoding agnostic."
-msgstr ""
-
-#. type: Plain text
-#: en/i18n.txt:6
-msgid ""
-"The contents of the blob objects are uninterpreted sequences of bytes.  "
-"There is no encoding translation at the core level."
-msgstr ""
-
-#. type: Plain text
-#: en/i18n.txt:13
-msgid ""
-"Path names are encoded in UTF-8 normalization form C. This applies to tree "
-"objects, the index file, ref names, as well as path names in command line "
-"arguments, environment variables and config files (`.git/config` (see "
-"linkgit:git-config[1]), linkgit:gitignore[5], linkgit:gitattributes[5] and "
-"linkgit:gitmodules[5])."
-msgstr ""
-
-#. type: Plain text
-#: en/i18n.txt:23
-msgid ""
-"Note that Git at the core level treats path names simply as sequences of "
-"non-NUL bytes, there are no path name encoding conversions (except on Mac "
-"and Windows). Therefore, using non-ASCII path names will mostly work even on "
-"platforms and file systems that use legacy extended ASCII "
-"encodings. However, repositories created on such systems will not work "
-"properly on UTF-8-based systems (e.g. Linux, Mac, Windows) and vice versa.  "
-"Additionally, many Git-based tools simply assume path names to be UTF-8 and "
-"will fail to display other encodings correctly."
-msgstr ""
-
-#. type: Plain text
-#: en/i18n.txt:29
-msgid ""
-"Commit log messages are typically encoded in UTF-8, but other extended ASCII "
-"encodings are also supported. This includes ISO-8859-x, CP125x and many "
-"others, but _not_ UTF-16/32, EBCDIC and CJK multi-byte encodings (GBK, "
-"Shift-JIS, Big5, EUC-x, CP9xx etc.)."
-msgstr ""
-
-#. type: Plain text
-#: en/i18n.txt:36
-msgid ""
-"Although we encourage that the commit log messages are encoded in UTF-8, "
-"both the core and Git Porcelain are designed not to force UTF-8 on "
-"projects.  If all participants of a particular project find it more "
-"convenient to use legacy encodings, Git does not forbid it.  However, there "
-"are a few things to keep in mind."
-msgstr ""
-
-#. type: Plain text
-#: en/i18n.txt:42
-msgid ""
-"'git commit' and 'git commit-tree' issues a warning if the commit log "
-"message given to it does not look like a valid UTF-8 string, unless you "
-"explicitly say your project uses a legacy encoding.  The way to say this is "
-"to have i18n.commitencoding in `.git/config` file, like this:"
-msgstr ""
-
-#. type: delimited block -
-#: en/i18n.txt:46
-#, no-wrap
-msgid ""
-"[i18n]\n"
-"\tcommitencoding = ISO-8859-1\n"
-msgstr ""
-
-#. type: Plain text
-#: en/i18n.txt:52
-msgid ""
-"Commit objects created with the above setting record the value of "
-"`i18n.commitencoding` in its `encoding` header.  This is to help other "
-"people who look at them later.  Lack of this header implies that the commit "
-"log message is encoded in UTF-8."
-msgstr ""
-
-#. type: Plain text
-#: en/i18n.txt:58
-msgid ""
-"'git log', 'git show', 'git blame' and friends look at the `encoding` header "
-"of a commit object, and try to re-code the log message into UTF-8 unless "
-"otherwise specified.  You can specify the desired output encoding with "
-"`i18n.logoutputencoding` in `.git/config` file, like this:"
-msgstr ""
-
-#. type: delimited block -
-#: en/i18n.txt:62
-#, no-wrap
-msgid ""
-"[i18n]\n"
-"\tlogoutputencoding = ISO-8859-1\n"
-msgstr ""
-
-#. type: Plain text
-#: en/i18n.txt:66
-msgid ""
-"If you do not have this configuration variable, the value of "
-"`i18n.commitencoding` is used instead."
-msgstr ""
-
-#. type: Plain text
-#: en/i18n.txt:70
-msgid ""
-"Note that we deliberately chose not to re-code the commit log message when a "
-"commit is made to force UTF-8 at the commit object level, because re-coding "
-"to UTF-8 is not necessarily a reversible operation."
-msgstr ""
-
-#. type: Plain text
-#: en/line-range-format.txt:2
-msgid "<start> and <end> can take one of these forms:"
-msgstr ""
-
-#. type: Plain text
-#: en/line-range-format.txt:4
-msgid "number"
-msgstr ""
-
-#. type: Plain text
-#: en/line-range-format.txt:7
-msgid ""
-"If <start> or <end> is a number, it specifies an absolute line number (lines "
-"count from 1)."
-msgstr ""
-
-#. type: Plain text
-#: en/line-range-format.txt:10
-msgid "/regex/"
-msgstr ""
-
-#. type: Plain text
-#: en/line-range-format.txt:17
-msgid ""
-"This form will use the first line matching the given POSIX regex. If <start> "
-"is a regex, it will search from the end of the previous `-L` range, if any, "
-"otherwise from the start of file.  If <start> is ``^/regex/'', it will "
-"search from the start of file.  If <end> is a regex, it will search starting "
-"at the line given by <start>."
-msgstr ""
-
-#. type: Plain text
-#: en/line-range-format.txt:20
-msgid "+offset or -offset"
-msgstr ""
-
-#. type: Plain text
-#: en/line-range-format.txt:23
-msgid ""
-"This is only valid for <end> and will specify a number of lines before or "
-"after the line given by <start>."
-msgstr ""
-
-#. type: Plain text
-#: en/line-range-format.txt:30
-msgid ""
-"If ``:<funcname>'' is given in place of <start> and <end>, it is a regular "
-"expression that denotes the range from the first funcname line that matches "
-"<funcname>, up to the next funcname line. ``:<funcname>'' searches from the "
-"end of the previous `-L` range, if any, otherwise from the start of "
-"file. ``^:<funcname>'' searches from the start of file."
-msgstr ""
-
-#. type: Plain text
-#: en/mailmap.txt:6
-msgid ""
-"If the file `.mailmap` exists at the toplevel of the repository, or at the "
-"location pointed to by the mailmap.file or mailmap.blob configuration "
-"options, it is used to map author and committer names and email addresses to "
-"canonical real names and email addresses."
-msgstr ""
-
-#. type: Plain text
-#: en/mailmap.txt:10
-msgid ""
-"In the simple form, each line in the file consists of the canonical real "
-"name of an author, whitespace, and an email address used in the commit "
-"(enclosed by '<' and '>') to map to the name. For example:"
-msgstr ""
-
-#. type: Plain text
-#: en/mailmap.txt:12
-#, no-wrap
-msgid "\tProper Name <commit@email.xx>\n"
-msgstr ""
-
-#. type: Plain text
-#: en/mailmap.txt:15
-msgid "The more complex forms are:"
-msgstr ""
-
-#. type: Plain text
-#: en/mailmap.txt:17
-#, no-wrap
-msgid "\t<proper@email.xx> <commit@email.xx>\n"
-msgstr ""
-
-#. type: Plain text
-#: en/mailmap.txt:19
-msgid "which allows mailmap to replace only the email part of a commit, and:"
-msgstr ""
-
-#. type: Plain text
-#: en/mailmap.txt:21
-#, no-wrap
-msgid "\tProper Name <proper@email.xx> <commit@email.xx>\n"
-msgstr ""
-
-#. type: Plain text
-#: en/mailmap.txt:24
-msgid ""
-"which allows mailmap to replace both the name and the email of a commit "
-"matching the specified commit email address, and:"
+"which allows mailmap to replace both the name and the email of a commit "
+"matching the specified commit email address, and:"
 msgstr ""
 
 #. type: Plain text
@@ -64369,174 +62421,6 @@ msgid ""
 "email address."
 msgstr ""
 
-#. type: Labeled list
-#: en/merge-config.txt:1
-#, no-wrap
-msgid "merge.conflictStyle"
-msgstr ""
-
-#. type: Plain text
-#: en/merge-config.txt:8
-msgid ""
-"Specify the style in which conflicted hunks are written out to working tree "
-"files upon merge.  The default is \"merge\", which shows a `<<<<<<<` "
-"conflict marker, changes made by one side, a `=======` marker, changes made "
-"by the other side, and then a `>>>>>>>` marker.  An alternate style, "
-"\"diff3\", adds a `|||||||` marker and the original text before the "
-"`=======` marker."
-msgstr ""
-
-#. type: Labeled list
-#: en/merge-config.txt:9
-#, no-wrap
-msgid "merge.defaultToUpstream"
-msgstr ""
-
-#. type: Plain text
-#: en/merge-config.txt:18
-msgid ""
-"If merge is called without any commit argument, merge the upstream branches "
-"configured for the current branch by using their last observed values stored "
-"in their remote-tracking branches.  The values of the `branch.<current "
-"branch>.merge` that name the branches at the remote named by "
-"`branch.<current branch>.remote` are consulted, and then they are mapped via "
-"`remote.<remote>.fetch` to their corresponding remote-tracking branches, and "
-"the tips of these tracking branches are merged."
-msgstr ""
-
-#. type: Labeled list
-#: en/merge-config.txt:19
-#, no-wrap
-msgid "merge.ff"
-msgstr ""
-
-#. type: Plain text
-#: en/merge-config.txt:28
-msgid ""
-"By default, Git does not create an extra merge commit when merging a commit "
-"that is a descendant of the current commit. Instead, the tip of the current "
-"branch is fast-forwarded. When set to `false`, this variable tells Git to "
-"create an extra merge commit in such a case (equivalent to giving the "
-"`--no-ff` option from the command line). When set to `only`, only such "
-"fast-forward merges are allowed (equivalent to giving the `--ff-only` option "
-"from the command line)."
-msgstr ""
-
-#. type: Labeled list
-#: en/merge-config.txt:31
-#, no-wrap
-msgid "merge.renameLimit"
-msgstr ""
-
-#. type: Plain text
-#: en/merge-config.txt:35
-msgid ""
-"The number of files to consider when performing rename detection during a "
-"merge; if not specified, defaults to the value of diff.renameLimit."
-msgstr ""
-
-#. type: Labeled list
-#: en/merge-config.txt:36
-#, no-wrap
-msgid "merge.renormalize"
-msgstr ""
-
-#. type: Plain text
-#: en/merge-config.txt:45
-msgid ""
-"Tell Git that canonical representation of files in the repository has "
-"changed over time (e.g. earlier commits record text files with CRLF line "
-"endings, but recent ones use LF line endings).  In such a repository, Git "
-"can convert the data recorded in commits to a canonical form before "
-"performing a merge to reduce unnecessary conflicts.  For more information, "
-"see section \"Merging branches with differing checkin/checkout attributes\" "
-"in linkgit:gitattributes[5]."
-msgstr ""
-
-#. type: Labeled list
-#: en/merge-config.txt:46
-#, no-wrap
-msgid "merge.stat"
-msgstr ""
-
-#. type: Plain text
-#: en/merge-config.txt:49
-msgid ""
-"Whether to print the diffstat between ORIG_HEAD and the merge result at the "
-"end of the merge.  True by default."
-msgstr ""
-
-#. type: Labeled list
-#: en/merge-config.txt:50
-#, no-wrap
-msgid "merge.tool"
-msgstr ""
-
-#. type: Plain text
-#: en/merge-config.txt:55
-msgid ""
-"Controls which merge tool is used by linkgit:git-mergetool[1].  The list "
-"below shows the valid built-in values.  Any other value is treated as a "
-"custom merge tool and requires that a corresponding mergetool.<tool>.cmd "
-"variable is defined."
-msgstr ""
-
-#. type: Labeled list
-#: en/merge-config.txt:58
-#, no-wrap
-msgid "merge.verbosity"
-msgstr ""
-
-#. type: Plain text
-#: en/merge-config.txt:65
-msgid ""
-"Controls the amount of output shown by the recursive merge strategy.  Level "
-"0 outputs nothing except a final error message if conflicts were "
-"detected. Level 1 outputs only conflicts, 2 outputs conflicts and file "
-"changes.  Level 5 and above outputs debugging information.  The default is "
-"level 2.  Can be overridden by the `GIT_MERGE_VERBOSITY` environment "
-"variable."
-msgstr ""
-
-#. type: Labeled list
-#: en/merge-config.txt:66
-#, no-wrap
-msgid "merge.<driver>.name"
-msgstr ""
-
-#. type: Plain text
-#: en/merge-config.txt:69
-msgid ""
-"Defines a human-readable name for a custom low-level merge driver.  See "
-"linkgit:gitattributes[5] for details."
-msgstr ""
-
-#. type: Labeled list
-#: en/merge-config.txt:70
-#, no-wrap
-msgid "merge.<driver>.driver"
-msgstr ""
-
-#. type: Plain text
-#: en/merge-config.txt:73
-msgid ""
-"Defines the command that implements a custom low-level merge driver.  See "
-"linkgit:gitattributes[5] for details."
-msgstr ""
-
-#. type: Labeled list
-#: en/merge-config.txt:74
-#, no-wrap
-msgid "merge.<driver>.recursive"
-msgstr ""
-
-#. type: Plain text
-#: en/merge-config.txt:77
-msgid ""
-"Names a low-level merge driver to be used when performing an internal merge "
-"between common ancestors.  See linkgit:gitattributes[5] for details."
-msgstr ""
-
 #. type: Plain text
 #: en/merge-options.txt:5
 msgid ""
@@ -64557,8 +62441,8 @@ msgstr ""
 msgid ""
 "Invoke an editor before committing successful mechanical merge to further "
 "edit the auto-generated merge message, so that the user can explain and "
-"justify the merge. The `--no-edit` option can be used to accept the "
-"auto-generated message (this is generally discouraged)."
+"justify the merge. The `--no-edit` option can be used to accept the auto-"
+"generated message (this is generally discouraged)."
 msgstr ""
 
 #. type: Plain text
@@ -64587,28 +62471,36 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/merge-options.txt:39
+#: en/merge-options.txt:40
 msgid ""
 "Create a merge commit even when the merge resolves as a fast-forward.  This "
-"is the default behaviour when merging an annotated (and possibly signed) "
-"tag."
+"is the default behaviour when merging an annotated (and possibly signed) tag "
+"that is not stored in its natural place in 'refs/tags/' hierarchy."
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-options.txt:40
+#: en/merge-options.txt:41
 #, no-wrap
 msgid "--ff-only"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-options.txt:44
+#: en/merge-options.txt:45
 msgid ""
 "Refuse to merge and exit with a non-zero status unless the current `HEAD` is "
-"already up-to-date or the merge can be resolved as a fast-forward."
+"already up to date or the merge can be resolved as a fast-forward."
+msgstr ""
+
+#. type: Plain text
+#: en/merge-options.txt:51
+msgid ""
+"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."
 msgstr ""
 
 #. type: Plain text
-#: en/merge-options.txt:50
+#: en/merge-options.txt:57
 msgid ""
 "In addition to branch names, populate the log message with one-line "
 "descriptions from at most <n> actual commits that are being merged. See also "
@@ -64616,38 +62508,49 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/merge-options.txt:53
+#: en/merge-options.txt:60
 msgid ""
 "With --no-log do not list one-line descriptions from the actual commits "
 "being merged."
 msgstr ""
 
+#. type: Labeled list
+#: en/merge-options.txt:62
+#, no-wrap
+msgid "--no-signoff"
+msgstr ""
+
 #. type: Plain text
-#: en/merge-options.txt:60
+#: en/merge-options.txt:71
+msgid "With --no-signoff do not add a Signed-off-by line."
+msgstr ""
+
+#. type: Plain text
+#: en/merge-options.txt:77
 msgid ""
 "Show a diffstat at the end of the merge. The diffstat is also controlled by "
 "the configuration option merge.stat."
 msgstr ""
 
 #. type: Plain text
-#: en/merge-options.txt:63
+#: en/merge-options.txt:80
 msgid "With -n or --no-stat do not show a diffstat at the end of the merge."
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-options.txt:64
+#: en/merge-options.txt:81
 #, no-wrap
 msgid "--squash"
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-options.txt:65
+#: en/merge-options.txt:82
 #, no-wrap
 msgid "--no-squash"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-options.txt:73
+#: en/merge-options.txt:90
 msgid ""
 "Produce the working tree and index state as if a real merge happened (except "
 "for the merge information), but do not actually make a commit, move the "
@@ -64658,14 +62561,14 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/merge-options.txt:76
+#: en/merge-options.txt:93
 msgid ""
 "With --no-squash perform the merge and commit the result. This option can be "
 "used to override --squash."
 msgstr ""
 
 #. type: Plain text
-#: en/merge-options.txt:84
+#: en/merge-options.txt:101
 msgid ""
 "Use the given merge strategy; can be supplied more than once to specify them "
 "in the order they should be tried.  If there is no `-s` option, a built-in "
@@ -64674,30 +62577,30 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-options.txt:85
+#: en/merge-options.txt:102
 #, no-wrap
 msgid "-X <option>"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-options.txt:89
+#: en/merge-options.txt:106
 msgid "Pass merge strategy specific option through to the merge strategy."
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-options.txt:90
+#: en/merge-options.txt:107
 #, no-wrap
 msgid "--verify-signatures"
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-options.txt:91
+#: en/merge-options.txt:108
 #, no-wrap
 msgid "--no-verify-signatures"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-options.txt:97
+#: en/merge-options.txt:114
 msgid ""
 "Verify that the tip commit of the side branch being merged is signed with a "
 "valid key, i.e. a key that has a valid uid: in the default trust model, this "
@@ -64706,25 +62609,25 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-options.txt:99
+#: en/merge-options.txt:116
 #, no-wrap
 msgid "--no-summary"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-options.txt:102
+#: en/merge-options.txt:119
 msgid ""
 "Synonyms to --stat and --no-stat; these are deprecated and will be removed "
 "in the future."
 msgstr ""
 
 #. type: Plain text
-#: en/merge-options.txt:107
+#: en/merge-options.txt:124
 msgid "Operate quietly. Implies --no-progress."
 msgstr ""
 
 #. type: Plain text
-#: en/merge-options.txt:118
+#: en/merge-options.txt:135
 msgid ""
 "Turn progress on/off explicitly. If neither is specified, progress is shown "
 "if standard error is connected to a terminal.  Note that not all merge "
@@ -64732,13 +62635,13 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-options.txt:121
+#: en/merge-options.txt:138
 #, no-wrap
 msgid "--allow-unrelated-histories"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-options.txt:127
+#: en/merge-options.txt:144
 msgid ""
 "By default, `git merge` command refuses to merge histories that do not share "
 "a common ancestor.  This option can be used to override this safety when "
@@ -64747,126 +62650,6 @@ msgid ""
 "default exists and will not be added."
 msgstr ""
 
-#. type: Plain text
-#: en/mergetools-merge.txt:2
-msgid "araxis"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:3
-msgid "bc"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:4
-msgid "bc3"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:5
-msgid "codecompare"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:6
-msgid "deltawalker"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:7
-msgid "diffmerge"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:8
-msgid "diffuse"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:9
-msgid "ecmerge"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:10
-msgid "emerge"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:11
-msgid "examdiff"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:12
-msgid "gvimdiff"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:13
-msgid "gvimdiff2"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:14
-msgid "gvimdiff3"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:15
-msgid "kdiff3"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:16
-msgid "meld"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:17
-msgid "opendiff"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:18
-msgid "p4merge"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:19
-msgid "tkdiff"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:20
-msgid "tortoisemerge"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:21
-msgid "vimdiff"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:22
-msgid "vimdiff2"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:23
-msgid "vimdiff3"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:24
-msgid "winmerge"
-msgstr ""
-
-#. type: Plain text
-#: en/mergetools-merge.txt:24
-msgid "xxdiff"
-msgstr ""
-
 #. type: Title -
 #: en/merge-strategies.txt:2
 #, no-wrap
@@ -64904,7 +62687,7 @@ msgid "recursive"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:28
+#: en/merge-strategies.txt:29
 msgid ""
 "This can only resolve two heads using a 3-way merge algorithm.  When there "
 "is more than one common ancestor that can be used for 3-way merge, it "
@@ -64912,23 +62695,24 @@ msgid ""
 "tree for the 3-way merge.  This has been reported to result in fewer merge "
 "conflicts without causing mismerges by tests done on actual merge commits "
 "taken from Linux 2.6 kernel development history.  Additionally this can "
-"detect and handle merges involving renames.  This is the default merge "
-"strategy when pulling or merging one branch."
+"detect and handle merges involving renames, but currently cannot make use of "
+"detected copies.  This is the default merge strategy when pulling or merging "
+"one branch."
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:30
+#: en/merge-strategies.txt:31
 msgid "The 'recursive' strategy can take the following options:"
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-strategies.txt:31 en/merge-strategies.txt:110
+#: en/merge-strategies.txt:32 en/merge-strategies.txt:115
 #, no-wrap
 msgid "ours"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:36
+#: en/merge-strategies.txt:37
 msgid ""
 "This option forces conflicting hunks to be auto-resolved cleanly by favoring "
 "'our' version.  Changes from the other tree that do not conflict with our "
@@ -64937,33 +62721,34 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:40
+#: en/merge-strategies.txt:41
 msgid ""
 "This should not be confused with the 'ours' merge strategy, which does not "
 "even look at what the other tree contains at all.  It discards everything "
-"the other tree did, declaring 'our' history contains all that happened in "
-"it."
+"the other tree did, declaring 'our' history contains all that happened in it."
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-strategies.txt:41
+#: en/merge-strategies.txt:42
 #, no-wrap
 msgid "theirs"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:43
-msgid "This is the opposite of 'ours'."
+#: en/merge-strategies.txt:45
+msgid ""
+"This is the opposite of 'ours'; note that, unlike 'ours', there is no "
+"'theirs' merge strategy to confuse this merge option with."
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-strategies.txt:44
+#: en/merge-strategies.txt:46
 #, no-wrap
 msgid "patience"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:50
+#: en/merge-strategies.txt:52
 msgid ""
 "With this option, 'merge-recursive' spends a little extra time to avoid "
 "mismerges that sometimes occur due to unimportant matching lines (e.g., "
@@ -64972,13 +62757,13 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-strategies.txt:51
+#: en/merge-strategies.txt:53
 #, no-wrap
 msgid "diff-algorithm=[patience|minimal|histogram|myers]"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:56
+#: en/merge-strategies.txt:58
 msgid ""
 "Tells 'merge-recursive' to use a different diff algorithm, which can help "
 "avoid mismerges that occur due to unimportant matching lines (such as braces "
@@ -64986,59 +62771,47 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-strategies.txt:57
+#: en/merge-strategies.txt:62
 #, no-wrap
-msgid "ignore-space-change"
-msgstr ""
-
-#. type: Labeled list
-#: en/merge-strategies.txt:58
-#, no-wrap
-msgid "ignore-all-space"
-msgstr ""
-
-#. type: Labeled list
-#: en/merge-strategies.txt:59
-#, no-wrap
-msgid "ignore-space-at-eol"
+msgid "ignore-cr-at-eol"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:65
+#: en/merge-strategies.txt:68
 msgid ""
 "Treats lines with the indicated type of whitespace change as unchanged for "
 "the sake of a three-way merge.  Whitespace changes mixed with other changes "
-"to a line are not ignored.  See also linkgit:git-diff[1] `-b`, `-w`, and "
-"`--ignore-space-at-eol`."
+"to a line are not ignored.  See also linkgit:git-diff[1] `-b`, `-w`, `--"
+"ignore-space-at-eol`, and `--ignore-cr-at-eol`."
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:68
+#: en/merge-strategies.txt:71
 msgid ""
 "If 'their' version only introduces whitespace changes to a line, 'our' "
 "version is used;"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:70
+#: en/merge-strategies.txt:73
 msgid ""
 "If 'our' version introduces whitespace changes but 'their' version includes "
 "a substantial change, 'their' version is used;"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:71
+#: en/merge-strategies.txt:74
 msgid "Otherwise, the merge proceeds in the usual way."
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-strategies.txt:72
+#: en/merge-strategies.txt:75
 #, no-wrap
 msgid "renormalize"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:79
+#: en/merge-strategies.txt:82
 msgid ""
 "This runs a virtual check-out and check-in of all three stages of a file "
 "when resolving a three-way merge.  This option is meant to be used when "
@@ -65048,61 +62821,64 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-strategies.txt:80
+#: en/merge-strategies.txt:83
 #, no-wrap
 msgid "no-renormalize"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:83
+#: en/merge-strategies.txt:86
 msgid ""
 "Disables the `renormalize` option.  This overrides the `merge.renormalize` "
 "configuration variable."
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-strategies.txt:84
+#: en/merge-strategies.txt:87
 #, no-wrap
 msgid "no-renames"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:87
-msgid "Turn off rename detection.  See also linkgit:git-diff[1] `--no-renames`."
+#: en/merge-strategies.txt:91
+msgid ""
+"Turn off rename detection. This overrides the `merge.renames` configuration "
+"variable.  See also linkgit:git-diff[1] `--no-renames`."
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-strategies.txt:88
+#: en/merge-strategies.txt:92
 #, no-wrap
 msgid "find-renames[=<n>]"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:92
+#: en/merge-strategies.txt:97
 msgid ""
 "Turn on rename detection, optionally setting the similarity threshold.  This "
-"is the default.  See also linkgit:git-diff[1] `--find-renames`."
+"is the default. This overrides the 'merge.renames' configuration variable.  "
+"See also linkgit:git-diff[1] `--find-renames`."
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-strategies.txt:93
+#: en/merge-strategies.txt:98
 #, no-wrap
 msgid "rename-threshold=<n>"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:95
+#: en/merge-strategies.txt:100
 msgid "Deprecated synonym for `find-renames=<n>`."
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-strategies.txt:96
+#: en/merge-strategies.txt:101
 #, no-wrap
 msgid "subtree[=<path>]"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:102
+#: en/merge-strategies.txt:107
 msgid ""
 "This option is a more advanced form of 'subtree' strategy, where the "
 "strategy makes a guess on how two trees must be shifted to match with each "
@@ -65111,13 +62887,13 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-strategies.txt:103
+#: en/merge-strategies.txt:108
 #, no-wrap
 msgid "octopus"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:109
+#: en/merge-strategies.txt:114
 msgid ""
 "This resolves cases with more than two heads, but refuses to do a complex "
 "merge that needs manual resolution.  It is primarily meant to be used for "
@@ -65126,23 +62902,23 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:117
+#: en/merge-strategies.txt:122
 msgid ""
 "This resolves any number of heads, but the resulting tree of the merge is "
 "always that of the current branch head, effectively ignoring all changes "
 "from all other branches.  It is meant to be used to supersede old "
-"development history of side branches.  Note that this is different from the "
-"-Xours option to the 'recursive' merge strategy."
+"development history of side branches.  Note that this is different from the -"
+"Xours option to the 'recursive' merge strategy."
 msgstr ""
 
 #. type: Labeled list
-#: en/merge-strategies.txt:118
+#: en/merge-strategies.txt:123
 #, no-wrap
 msgid "subtree"
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:124
+#: en/merge-strategies.txt:129
 msgid ""
 "This is a modified recursive strategy. When merging trees A and B, if B "
 "corresponds to a subtree of A, B is first adjusted to match the tree "
@@ -65151,7 +62927,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/merge-strategies.txt:131
+#: en/merge-strategies.txt:136
 msgid ""
 "With the strategies that use 3-way merge (including the default, "
 "'recursive'), if a change is made on both branches, but later reverted on "
@@ -65162,6 +62938,131 @@ msgid ""
 "change at all, and substitutes the changed version instead."
 msgstr ""
 
+#. type: Plain text
+#: en/mergetools-merge.txt:2
+msgid "araxis"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:3
+msgid "bc"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:4
+msgid "bc3"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:5
+msgid "codecompare"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:6
+msgid "deltawalker"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:7
+msgid "diffmerge"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:8
+msgid "diffuse"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:9
+msgid "ecmerge"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:10
+msgid "emerge"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:11
+msgid "examdiff"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:12
+msgid "guiffy"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:13
+msgid "gvimdiff"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:14
+msgid "gvimdiff2"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:15
+msgid "gvimdiff3"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:16
+msgid "kdiff3"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:17
+msgid "meld"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:18
+msgid "opendiff"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:19
+msgid "p4merge"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:20
+msgid "tkdiff"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:21
+msgid "tortoisemerge"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:22
+msgid "vimdiff"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:23
+msgid "vimdiff2"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:24
+msgid "vimdiff3"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:25
+msgid "winmerge"
+msgstr ""
+
+#. type: Plain text
+#: en/mergetools-merge.txt:25
+msgid "xxdiff"
+msgstr ""
+
 #. type: Title -
 #: en/pretty-formats.txt:2
 #, no-wrap
@@ -65219,7 +63120,8 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:33 en/pretty-formats.txt:41 en/pretty-formats.txt:51 en/pretty-formats.txt:63
+#: en/pretty-formats.txt:33 en/pretty-formats.txt:41 en/pretty-formats.txt:51
+#: en/pretty-formats.txt:63
 #, no-wrap
 msgid "<title line>\n"
 msgstr ""
@@ -65239,7 +63141,8 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:43 en/pretty-formats.txt:53 en/pretty-formats.txt:65 en/pretty-formats.txt:74
+#: en/pretty-formats.txt:43 en/pretty-formats.txt:53 en/pretty-formats.txt:65
+#: en/pretty-formats.txt:74
 msgid "<full commit message>"
 msgstr ""
 
@@ -65297,8 +63200,8 @@ msgstr ""
 #: en/pretty-formats.txt:86
 msgid ""
 "The 'raw' format shows the entire commit exactly as stored in the commit "
-"object.  Notably, the SHA-1s are displayed in full, regardless of whether "
-"--abbrev or --no-abbrev are used, and 'parents' information show the true "
+"object.  Notably, the SHA-1s are displayed in full, regardless of whether --"
+"abbrev or --no-abbrev are used, and 'parents' information show the true "
 "parent commits, without taking grafts or history simplification into "
 "account. Note that this format affects the way commits are displayed, but "
 "not the way the diff is shown e.g. with `git log --raw`. To get full object "
@@ -65330,8 +63233,7 @@ msgstr ""
 #, no-wrap
 msgid ""
 "The author of fe6e0ee was Junio C Hamano, 23 hours ago\n"
-"The title was >>t4119: test autocomputing -p<n> for traditional diff "
-"input.<<\n"
+"The title was >>t4119: test autocomputing -p<n> for traditional diff input.<<\n"
 msgstr ""
 
 #. type: Plain text
@@ -65488,42 +63390,49 @@ msgid "'%D': ref names without the \" (\", \")\" wrapping."
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:138
+#: en/pretty-formats.txt:139
+msgid ""
+"'%S': ref name given on the command line by which the commit was reached "
+"(like `git log --source`), only works with `git log`"
+msgstr ""
+
+#. type: Plain text
+#: en/pretty-formats.txt:140
 msgid "'%e': encoding"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:139
+#: en/pretty-formats.txt:141
 msgid "'%s': subject"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:140
+#: en/pretty-formats.txt:142
 msgid "'%f': sanitized subject line, suitable for a filename"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:141
+#: en/pretty-formats.txt:143
 msgid "'%b': body"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:142
+#: en/pretty-formats.txt:144
 msgid "'%B': raw body (unwrapped subject and body)"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:144
+#: en/pretty-formats.txt:146
 msgid "'%N': commit notes"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:146
+#: en/pretty-formats.txt:148
 msgid "'%GG': raw verification message from GPG for a signed commit"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:154
+#: en/pretty-formats.txt:156
 msgid ""
 "'%G?': show \"G\" for a good (valid) signature, \"B\" for a bad signature, "
 "\"U\" for a good signature with unknown validity, \"X\" for a good signature "
@@ -65533,18 +63442,30 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:155
+#: en/pretty-formats.txt:157
 msgid "'%GS': show the name of the signer for a signed commit"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:156
+#: en/pretty-formats.txt:158
 msgid "'%GK': show the key used to sign a signed commit"
 msgstr ""
 
+#. type: Plain text
+#: en/pretty-formats.txt:159
+msgid "'%GF': show the fingerprint of the key used to sign a signed commit"
+msgstr ""
+
 #. type: Plain text
 #: en/pretty-formats.txt:161
 msgid ""
+"'%GP': show the fingerprint of the primary key whose subkey was used to sign "
+"a signed commit"
+msgstr ""
+
+#. type: Plain text
+#: en/pretty-formats.txt:166
+msgid ""
 "'%gD': reflog selector, e.g., `refs/stash@{1}` or `refs/stash@{2 minutes "
 "ago`}; the format follows the rules described for the `-g` option. The "
 "portion before the `@` is the refname as given on the command line (so `git "
@@ -65552,7 +63473,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:164
+#: en/pretty-formats.txt:169
 msgid ""
 "'%gd': shortened reflog selector; same as `%gD`, but the refname portion is "
 "shortened for human readability (so `refs/heads/master` becomes just "
@@ -65560,95 +63481,99 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:165
+#: en/pretty-formats.txt:170
 msgid "'%gn': reflog identity name"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:167
+#: en/pretty-formats.txt:172
 msgid ""
-"'%gN': reflog identity name (respecting .mailmap, see "
-"linkgit:git-shortlog[1] or linkgit:git-blame[1])"
+"'%gN': reflog identity name (respecting .mailmap, see linkgit:git-"
+"shortlog[1] or linkgit:git-blame[1])"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:168
+#: en/pretty-formats.txt:173
 msgid "'%ge': reflog identity email"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:170
+#: en/pretty-formats.txt:175
 msgid ""
-"'%gE': reflog identity email (respecting .mailmap, see "
-"linkgit:git-shortlog[1] or linkgit:git-blame[1])"
+"'%gE': reflog identity email (respecting .mailmap, see linkgit:git-"
+"shortlog[1] or linkgit:git-blame[1])"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:171
+#: en/pretty-formats.txt:176
 msgid "'%gs': reflog subject"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:172
+#: en/pretty-formats.txt:177
 msgid "'%Cred': switch color to red"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:173
+#: en/pretty-formats.txt:178
 msgid "'%Cgreen': switch color to green"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:174
+#: en/pretty-formats.txt:179
 msgid "'%Cblue': switch color to blue"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:175
+#: en/pretty-formats.txt:180
 msgid "'%Creset': reset color"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:182
+#: en/pretty-formats.txt:192
 msgid ""
 "'%C(...)': color specification, as described under Values in the "
-"\"CONFIGURATION FILE\" section of linkgit:git-config[1]; adding `auto,` at "
-"the beginning will emit color only when colors are enabled for log output "
-"(by `color.diff`, `color.ui`, or `--color`, and respecting the `auto` "
-"settings of the former if we are going to a terminal). `auto` alone "
-"(i.e. `%C(auto)`) will turn on auto coloring on the next placeholders until "
-"the color is switched again."
+"\"CONFIGURATION FILE\" section of linkgit:git-config[1].  By default, colors "
+"are shown only when enabled for log output (by `color.diff`, `color.ui`, or "
+"`--color`, and respecting the `auto` settings of the former if we are going "
+"to a terminal). `%C(auto,...)` is accepted as a historical synonym for the "
+"default (e.g., `%C(auto,red)`). Specifying `%C(always,...)` will show the "
+"colors even when color is not otherwise enabled (though consider just using "
+"`--color=always` to enable color for the whole output, including this format "
+"and anything else git might color).  `auto` alone (i.e. `%C(auto)`) will "
+"turn on auto coloring on the next placeholders until the color is switched "
+"again."
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:183
+#: en/pretty-formats.txt:193
 msgid "'%m': left (`<`), right (`>`) or boundary (`-`) mark"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:184
+#: en/pretty-formats.txt:194
 msgid "'%n': newline"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:185
+#: en/pretty-formats.txt:195
 msgid "'%%': a raw '%'"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:186
+#: en/pretty-formats.txt:196
 msgid "'%x00': print a byte from a hex code"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:188
+#: en/pretty-formats.txt:198
 msgid ""
 "'%w([<w>[,<i1>[,<i2>]]])': switch line wrapping, like the -w option of "
 "linkgit:git-shortlog[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:193
+#: en/pretty-formats.txt:203
 msgid ""
 "'%<(<N>[,trunc|ltrunc|mtrunc])': make the next placeholder take at least N "
 "columns, padding spaces on the right if necessary.  Optionally truncate at "
@@ -65658,21 +63583,21 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:195
+#: en/pretty-formats.txt:205
 msgid ""
 "'%<|(<N>)': make the next placeholder take at least until Nth columns, "
 "padding spaces on the right if necessary"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:197
+#: en/pretty-formats.txt:207
 msgid ""
 "'%>(<N>)', '%>|(<N>)': similar to '%<(<N>)', '%<|(<N>)' respectively, but "
 "padding spaces on the left"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:200
+#: en/pretty-formats.txt:210
 msgid ""
 "'%>>(<N>)', '%>>|(<N>)': similar to '%>(<N>)', '%>|(<N>)' respectively, "
 "except that if the next placeholder takes more spaces than given and there "
@@ -65680,25 +63605,35 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:204
+#: en/pretty-formats.txt:212
+msgid ""
+"'%><(<N>)', '%><|(<N>)': similar to '%<(<N>)', '%<|(<N>)' respectively, but "
+"padding both sides (i.e. the text is centered)"
+msgstr ""
+
+#. type: Plain text
+#: en/pretty-formats.txt:219
 msgid ""
-"'%><(<N>)', '%><|(<N>)': similar to '% <(<N>)', '%<|(<N>)' respectively, but "
-"padding both sides (i.e. the text is centered)  -%(trailers): display the "
-"trailers of the body as interpreted by linkgit:git-interpret-trailers[1]"
+"%(trailers[:options]): display the trailers of the body as interpreted by "
+"linkgit:git-interpret-trailers[1]. The `trailers` string may be followed by "
+"a colon and zero or more comma-separated options. If the `only` option is "
+"given, omit non-trailer lines from the trailer block.  If the `unfold` "
+"option is given, behave as if interpret-trailer's `--unfold` option was "
+"given.  E.g., `%(trailers:only,unfold)` to do both."
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:211
+#: en/pretty-formats.txt:226
 msgid ""
 "Some placeholders may depend on other options given to the revision "
 "traversal engine. For example, the `%g*` reflog options will insert an empty "
-"string unless we are traversing reflog entries (e.g., by `git log -g`). The "
-"`%d` and `%D` placeholders will use the \"short\" decoration format if "
-"`--decorate` was not already provided on the command line."
+"string unless we are traversing reflog entries (e.g., by `git log -g`). The `"
+"%d` and `%D` placeholders will use the \"short\" decoration format if `--"
+"decorate` was not already provided on the command line."
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:215
+#: en/pretty-formats.txt:230
 msgid ""
 "If you add a `+` (plus sign) after '%' of a placeholder, a line-feed is "
 "inserted immediately before the expansion if and only if the placeholder "
@@ -65706,15 +63641,15 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:219
+#: en/pretty-formats.txt:234
 msgid ""
-"If you add a `-` (minus sign) after '%' of a placeholder, line-feeds that "
-"immediately precede the expansion are deleted if and only if the placeholder "
-"expands to an empty string."
+"If you add a `-` (minus sign) after '%' of a placeholder, all consecutive "
+"line-feeds immediately preceding the expansion are deleted if and only if "
+"the placeholder expands to an empty string."
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:223
+#: en/pretty-formats.txt:238
 msgid ""
 "If you add a ` ` (space) after '%' of a placeholder, a space is inserted "
 "immediately before the expansion if and only if the placeholder expands to a "
@@ -65722,12 +63657,12 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:225
+#: en/pretty-formats.txt:240
 msgid "'tformat:'"
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:233
+#: en/pretty-formats.txt:248
 msgid ""
 "The 'tformat:' format works exactly like 'format:', except that it provides "
 "\"terminator\" semantics instead of \"separator\" semantics. In other words, "
@@ -65738,7 +63673,7 @@ msgid ""
 msgstr ""
 
 #. type: delimited block -
-#: en/pretty-formats.txt:239
+#: en/pretty-formats.txt:254
 #, no-wrap
 msgid ""
 "$ git log -2 --pretty=format:%h 4da45bef \\\n"
@@ -65748,7 +63683,7 @@ msgid ""
 msgstr ""
 
 #. type: delimited block -
-#: en/pretty-formats.txt:244
+#: en/pretty-formats.txt:259
 #, no-wrap
 msgid ""
 "$ git log -2 --pretty=tformat:%h 4da45bef \\\n"
@@ -65758,14 +63693,14 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/pretty-formats.txt:249
+#: en/pretty-formats.txt:264
 msgid ""
 "In addition, any unrecognized string that has a `%` in it is interpreted as "
 "if it has `tformat:` in front of it.  For example, these two are equivalent:"
 msgstr ""
 
 #. type: delimited block -
-#: en/pretty-formats.txt:253
+#: en/pretty-formats.txt:268
 #, no-wrap
 msgid ""
 "$ git log -2 --pretty=tformat:%h 4da45bef\n"
@@ -65784,8 +63719,8 @@ msgid ""
 "Pretty-print the contents of the commit logs in a given format, where "
 "'<format>' can be one of 'oneline', 'short', 'medium', 'full', 'fuller', "
 "'email', 'raw', 'format:<string>' and 'tformat:<string>'.  When '<format>' "
-"is none of the above, and has '%placeholder' in it, it acts as if "
-"'--pretty=tformat:<format>' were given."
+"is none of the above, and has '%placeholder' in it, it acts as if '--"
+"pretty=tformat:<format>' were given."
 msgstr ""
 
 #. type: Plain text
@@ -65832,14 +63767,15 @@ msgstr ""
 #. type: Plain text
 #: en/pretty-options.txt:30
 msgid ""
-"Show the full 40-byte hexadecimal commit object name. This negates "
-"`--abbrev-commit` and those options which imply it such as \"--oneline\". It "
-"also overrides the `log.abbrevCommit` variable."
+"Show the full 40-byte hexadecimal commit object name. This negates `--abbrev-"
+"commit` and those options which imply it such as \"--oneline\". It also "
+"overrides the `log.abbrevCommit` variable."
 msgstr ""
 
 #. type: Plain text
 #: en/pretty-options.txt:34
-msgid "This is a shorthand for \"--pretty=oneline --abbrev-commit\" used together."
+msgid ""
+"This is a shorthand for \"--pretty=oneline --abbrev-commit\" used together."
 msgstr ""
 
 #. type: Plain text
@@ -65877,9 +63813,9 @@ msgstr ""
 msgid ""
 "Perform a tab expansion (replace each tab with enough spaces to fill to the "
 "next display column that is multiple of '<n>')  in the log message before "
-"showing it in the output.  `--expand-tabs` is a short-hand for "
-"`--expand-tabs=8`, and `--no-expand-tabs` is a short-hand for "
-"`--expand-tabs=0`, which disables tab expansion."
+"showing it in the output.  `--expand-tabs` is a short-hand for `--expand-"
+"tabs=8`, and `--no-expand-tabs` is a short-hand for `--expand-tabs=0`, which "
+"disables tab expansion."
 msgstr ""
 
 #. type: Plain text
@@ -65900,34 +63836,34 @@ msgstr ""
 msgid ""
 "Show the notes (see linkgit:git-notes[1]) that annotate the commit, when "
 "showing the commit log message.  This is the default for `git log`, `git "
-"show` and `git whatchanged` commands when there is no `--pretty`, "
-"`--format`, or `--oneline` option given on the command line."
+"show` and `git whatchanged` commands when there is no `--pretty`, `--"
+"format`, or `--oneline` option given on the command line."
 msgstr ""
 
 #. type: Plain text
 #: en/pretty-options.txt:70
 msgid ""
-"By default, the notes shown are from the notes refs listed in the "
-"`core.notesRef` and `notes.displayRef` variables (or corresponding "
-"environment overrides). See linkgit:git-config[1] for more details."
+"By default, the notes shown are from the notes refs listed in the `core."
+"notesRef` and `notes.displayRef` variables (or corresponding environment "
+"overrides). See linkgit:git-config[1] for more details."
 msgstr ""
 
 #. type: Plain text
 #: en/pretty-options.txt:75
 msgid ""
 "With an optional '<treeish>' argument, use the treeish to find the notes to "
-"display.  The treeish can specify 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."
+"display.  The treeish can specify 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."
 msgstr ""
 
 #. type: Plain text
 #: en/pretty-options.txt:80
 msgid ""
 "Multiple --notes options can be combined to control which notes are being "
-"displayed. Examples: \"--notes=foo\" will show only notes from "
-"\"refs/notes/foo\"; \"--notes=foo --notes\" will show both notes from "
-"\"refs/notes/foo\" and from the default notes ref(s)."
+"displayed. Examples: \"--notes=foo\" will show only notes from \"refs/notes/"
+"foo\"; \"--notes=foo --notes\" will show both notes from \"refs/notes/foo\" "
+"and from the default notes ref(s)."
 msgstr ""
 
 #. type: Labeled list
@@ -65941,8 +63877,8 @@ msgstr ""
 msgid ""
 "Do not show notes. This negates the above `--notes` option, by resetting the "
 "list of notes refs from which notes are shown.  Options are parsed in the "
-"order given on the command line, so e.g.  \"--notes --notes=foo --no-notes "
-"--notes=bar\" will only show notes from \"refs/notes/bar\"."
+"order given on the command line, so e.g.  \"--notes --notes=foo --no-notes --"
+"notes=bar\" will only show notes from \"refs/notes/bar\"."
 msgstr ""
 
 #. type: Labeled list
@@ -66025,31 +63961,79 @@ msgid "\t(see linkgit:git-fetch[1]).\n"
 msgstr ""
 
 #. type: Plain text
-#: en/pull-fetch-param.txt:29
+#: en/pull-fetch-param.txt:31
 msgid ""
 "The format of a <refspec> parameter is an optional plus `+`, followed by the "
-"source ref <src>, followed by a colon `:`, followed by the destination ref "
-"<dst>.  The colon can be omitted when <dst> is empty."
+"source <src>, followed by a colon `:`, followed by the destination ref "
+"<dst>.  The colon can be omitted when <dst> is empty.  <src> is typically a "
+"ref, but it can also be a fully spelled hex object name."
 msgstr ""
 
 #. type: Plain text
-#: en/pull-fetch-param.txt:32
+#: en/pull-fetch-param.txt:34
 msgid ""
 "`tag <tag>` means the same as `refs/tags/<tag>:refs/tags/<tag>`; it requests "
 "fetching everything up to the given tag."
 msgstr ""
 
 #. type: Plain text
-#: en/pull-fetch-param.txt:39
+#: en/pull-fetch-param.txt:38
+msgid ""
+"The remote ref that matches <src> is fetched, and if <dst> is not an empty "
+"string, an attempt is made to update the local ref that matches it."
+msgstr ""
+
+#. type: Plain text
+#: en/pull-fetch-param.txt:45
+msgid ""
+"Whether that update is allowed without `--force` depends on the ref "
+"namespace it's being fetched to, the type of object being fetched, and "
+"whether the update is considered to be a fast-forward. Generally, the same "
+"rules apply for fetching as when pushing, see the `<refspec>...` section of "
+"linkgit:git-push[1] for what those are. Exceptions to those rules particular "
+"to 'git fetch' are noted below."
+msgstr ""
+
+#. type: Plain text
+#: en/pull-fetch-param.txt:53
 msgid ""
-"The remote ref that matches <src> is fetched, and if <dst> is not empty "
-"string, the local ref that matches it is fast-forwarded using <src>.  If the "
-"optional plus `+` is used, the local ref is updated even if it does not "
-"result in a fast-forward update."
+"Until Git version 2.20, and unlike when pushing with linkgit:git-push[1], "
+"any updates to `refs/tags/*` would be accepted without `+` in the refspec "
+"(or `--force`). When fetching, we promiscuously considered all tag updates "
+"from a remote to be forced fetches.  Since Git version 2.20, fetching to "
+"update `refs/tags/*` works the same way as when pushing. I.e. any updates "
+"will be rejected without `+` in the refspec (or `--force`)."
 msgstr ""
 
 #. type: Plain text
-#: en/pull-fetch-param.txt:51
+#: en/pull-fetch-param.txt:59
+msgid ""
+"Unlike when pushing with linkgit:git-push[1], any updates outside of `refs/"
+"{tags,heads}/*` will be accepted without `+` in the refspec (or `--force`), "
+"whether that's swapping e.g. a tree object for a blob, or a commit for "
+"another commit that's doesn't have the previous commit as an ancestor etc."
+msgstr ""
+
+#. type: Plain text
+#: en/pull-fetch-param.txt:63
+msgid ""
+"Unlike when pushing with linkgit:git-push[1], there is no configuration "
+"which'll amend these rules, and nothing like a `pre-fetch` hook analogous to "
+"the `pre-receive` hook."
+msgstr ""
+
+#. type: Plain text
+#: en/pull-fetch-param.txt:70
+msgid ""
+"As with pushing with linkgit:git-push[1], all of the rules described above "
+"about what's not allowed as an update can be overridden by adding an the "
+"optional leading `+` to a refspec (or using `--force` command line option). "
+"The only exception to this is that no amount of forcing will make the `refs/"
+"heads/*` namespace accept a non-commit object."
+msgstr ""
+
+#. type: Plain text
+#: en/pull-fetch-param.txt:82
 msgid ""
 "When the remote branch you want to fetch is known to be rewound and rebased "
 "regularly, it is expected that its new tip will not be descendant of its "
@@ -66062,7 +64046,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/pull-fetch-param.txt:71
+#: en/pull-fetch-param.txt:102
 msgid ""
 "There is a difference between listing multiple <refspec> directly on 'git "
 "pull' command line and having multiple `remote.<repository>.fetch` entries "
@@ -66094,30 +64078,38 @@ msgid ""
 "list name trees and blobs contained in a commit."
 msgstr ""
 
+#. type: Plain text
+#: en/revisions.txt:13
+msgid ""
+"This document shows the \"raw\" syntax as seen by git. The shell and other "
+"UIs might require additional quoting to protect special characters and to "
+"avoid word splitting."
+msgstr ""
+
 #. type: Labeled list
-#: en/revisions.txt:10
+#: en/revisions.txt:14
 #, no-wrap
 msgid "'<sha1>', e.g. 'dae86e1950b1277e545cee180551750029cfe735', 'dae86e'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:16
+#: en/revisions.txt:20
 msgid ""
 "The full SHA-1 object name (40-byte hexadecimal string), or a leading "
-"substring that is unique within the repository.  "
-"E.g. dae86e1950b1277e545cee180551750029cfe735 and dae86e both name the same "
+"substring that is unique within the repository.  E.g. "
+"dae86e1950b1277e545cee180551750029cfe735 and dae86e both name the same "
 "commit object if there is no other object in your repository whose object "
 "name starts with dae86e."
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:17
+#: en/revisions.txt:21
 #, no-wrap
 msgid "'<describeOutput>', e.g. 'v1.7.4.2-679-g3bee7fb'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:21
+#: en/revisions.txt:25
 msgid ""
 "Output from `git describe`; i.e. a closest tag, optionally followed by a "
 "dash and a number of commits, followed by a dash, a 'g', and an abbreviated "
@@ -66125,23 +64117,23 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:22
+#: en/revisions.txt:26
 #, no-wrap
 msgid "'<refname>', e.g. 'master', 'heads/master', 'refs/heads/master'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:29
+#: en/revisions.txt:33
 msgid ""
 "A symbolic ref name.  E.g. 'master' typically means the commit object "
-"referenced by 'refs/heads/master'.  If you happen to have both "
-"'heads/master' and 'tags/master', you can explicitly say 'heads/master' to "
-"tell Git which one you mean.  When ambiguous, a '<refname>' is disambiguated "
-"by taking the first match in the following rules:"
+"referenced by 'refs/heads/master'.  If you happen to have both 'heads/"
+"master' and 'tags/master', you can explicitly say 'heads/master' to tell Git "
+"which one you mean.  When ambiguous, a '<refname>' is disambiguated by "
+"taking the first match in the following rules:"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:33
+#: en/revisions.txt:37
 msgid ""
 "If '$GIT_DIR/<refname>' exists, that is what you mean (this is usually "
 "useful only for `HEAD`, `FETCH_HEAD`, `ORIG_HEAD`, `MERGE_HEAD` and "
@@ -66149,32 +64141,32 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:35
+#: en/revisions.txt:39
 msgid "otherwise, 'refs/<refname>' if it exists;"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:37
+#: en/revisions.txt:41
 msgid "otherwise, 'refs/tags/<refname>' if it exists;"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:39
+#: en/revisions.txt:43
 msgid "otherwise, 'refs/heads/<refname>' if it exists;"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:41
+#: en/revisions.txt:45
 msgid "otherwise, 'refs/remotes/<refname>' if it exists;"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:43
+#: en/revisions.txt:47
 msgid "otherwise, 'refs/remotes/<refname>/HEAD' if it exists."
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:55
+#: en/revisions.txt:59
 msgid ""
 "`HEAD` names the commit on which you based the changes in the working tree.  "
 "`FETCH_HEAD` records the branch which you fetched from a remote repository "
@@ -66188,33 +64180,33 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:60
+#: en/revisions.txt:64
 msgid ""
-"Note that any of the 'refs/*' cases above may come either from the "
-"'$GIT_DIR/refs' directory or from the '$GIT_DIR/packed-refs' file.  While "
-"the ref name encoding is unspecified, UTF-8 is preferred as some output "
-"processing may assume ref names in UTF-8."
+"Note that any of the 'refs/*' cases above may come either from the '$GIT_DIR/"
+"refs' directory or from the '$GIT_DIR/packed-refs' file.  While the ref name "
+"encoding is unspecified, UTF-8 is preferred as some output processing may "
+"assume ref names in UTF-8."
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:61
+#: en/revisions.txt:65
 #, no-wrap
 msgid "'@'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:63
+#: en/revisions.txt:67
 msgid "'@' alone is a shortcut for `HEAD`."
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:64
+#: en/revisions.txt:68
 #, no-wrap
 msgid "'<refname>@{<date>}', e.g. 'master@\\{yesterday\\}', 'HEAD@{5 minutes ago}'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:75
+#: en/revisions.txt:79
 msgid ""
 "A ref followed by the suffix '@' with a date specification enclosed in a "
 "brace pair (e.g. '\\{yesterday\\}', '{1 month 2 weeks 3 days 1 hour 1 second "
@@ -66227,13 +64219,13 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:76
+#: en/revisions.txt:80
 #, no-wrap
 msgid "'<refname>@{<n>}', e.g. 'master@\\{1\\}'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:84
+#: en/revisions.txt:88
 msgid ""
 "A ref followed by the suffix '@' with an ordinal specification enclosed in a "
 "brace pair (e.g. '\\{1\\}', '\\{15\\}') specifies the n-th prior value of "
@@ -66244,13 +64236,13 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:85
+#: en/revisions.txt:89
 #, no-wrap
 msgid "'@{<n>}', e.g. '@\\{1\\}'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:89
+#: en/revisions.txt:93
 msgid ""
 "You can use the '@' construct with an empty ref part to get at a reflog "
 "entry of the current branch. For example, if you are on branch 'blabla' then "
@@ -66258,42 +64250,43 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:90
+#: en/revisions.txt:94
 #, no-wrap
 msgid "'@{-<n>}', e.g. '@{-1}'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:93
+#: en/revisions.txt:97
 msgid ""
 "The construct '@{-<n>}' means the <n>th branch/commit checked out before the "
 "current one."
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:94
+#: en/revisions.txt:98
 #, no-wrap
 msgid "'<branchname>@\\{upstream\\}', e.g. 'master@\\{upstream\\}', '@\\{u\\}'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:100
+#: en/revisions.txt:105
 msgid ""
-"The suffix '@\\{upstream\\}' to a branchname (short form "
-"'<branchname>@\\{u\\}')  refers to the branch that the branch specified by "
-"branchname is set to build on top of (configured with `branch.<name>.remote` "
-"and `branch.<name>.merge`).  A missing branchname defaults to the current "
-"one."
+"The suffix '@\\{upstream\\}' to a branchname (short form '<branchname>@\\{u"
+"\\}')  refers to the branch that the branch specified by branchname is set "
+"to build on top of (configured with `branch.<name>.remote` and `branch."
+"<name>.merge`).  A missing branchname defaults to the current one. These "
+"suffixes are also accepted when spelled in uppercase, and they mean the same "
+"thing no matter the case."
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:101
+#: en/revisions.txt:106
 #, no-wrap
 msgid "'<branchname>@\\{push\\}', e.g. 'master@\\{push\\}', '@\\{push\\}'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:107
+#: en/revisions.txt:112
 msgid ""
 "The suffix '@\\{push}' reports the branch \"where we would push to\" if `git "
 "push` were run while `branchname` was checked out (or the current `HEAD` if "
@@ -66303,12 +64296,12 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:109
+#: en/revisions.txt:114
 msgid "Here's an example to make it more clear:"
 msgstr ""
 
 #. type: delimited block -
-#: en/revisions.txt:114
+#: en/revisions.txt:119
 #, no-wrap
 msgid ""
 "$ git config push.default current\n"
@@ -66317,7 +64310,7 @@ msgid ""
 msgstr ""
 
 #. type: delimited block -
-#: en/revisions.txt:117
+#: en/revisions.txt:122
 #, no-wrap
 msgid ""
 "$ git rev-parse --symbolic-full-name @{upstream}\n"
@@ -66325,7 +64318,7 @@ msgid ""
 msgstr ""
 
 #. type: delimited block -
-#: en/revisions.txt:120
+#: en/revisions.txt:125
 #, no-wrap
 msgid ""
 "$ git rev-parse --symbolic-full-name @{push}\n"
@@ -66333,21 +64326,28 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:125
+#: en/revisions.txt:130
 msgid ""
 "Note in the example that we set up a triangular workflow, where we pull from "
 "one location and push to another. In a non-triangular workflow, '@\\{push}' "
 "is the same as '@\\{upstream}', and there is no need for it."
 msgstr ""
 
+#. type: Plain text
+#: en/revisions.txt:133
+msgid ""
+"This suffix is also accepted when spelled in uppercase, and means the same "
+"thing no matter the case."
+msgstr ""
+
 #. type: Labeled list
-#: en/revisions.txt:126
+#: en/revisions.txt:134
 #, no-wrap
 msgid "'<rev>{caret}', e.g. 'HEAD{caret}, v1.5.1{caret}0'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:133
+#: en/revisions.txt:141
 msgid ""
 "A suffix '{caret}' to a revision parameter means the first parent of that "
 "commit object.  '{caret}<n>' means the <n>th parent (i.e.  '<rev>{caret}' is "
@@ -66357,43 +64357,41 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:134
+#: en/revisions.txt:142
 #, no-wrap
 msgid "'<rev>{tilde}<n>', e.g. 'master{tilde}3'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:141
+#: en/revisions.txt:149
 msgid ""
 "A suffix '{tilde}<n>' to a revision parameter means the commit object that "
 "is the <n>th generation ancestor of the named commit object, following only "
-"the first parents.  I.e. '<rev>{tilde}3' is equivalent to "
-"'<rev>{caret}{caret}{caret}' which is equivalent to "
-"'<rev>{caret}1{caret}1{caret}1'.  See below for an illustration of the usage "
-"of this form."
+"the first parents.  I.e. '<rev>{tilde}3' is equivalent to '<rev>{caret}"
+"{caret}{caret}' which is equivalent to '<rev>{caret}1{caret}1{caret}1'.  See "
+"below for an illustration of the usage of this form."
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:142
+#: en/revisions.txt:150
 #, no-wrap
 msgid "'<rev>{caret}{<type>}', e.g. 'v0.99.8{caret}\\{commit\\}'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:153
+#: en/revisions.txt:161
 msgid ""
 "A suffix '{caret}' followed by an object type name enclosed in brace pair "
 "means dereference the object at '<rev>' recursively until an object of type "
 "'<type>' is found or the object cannot be dereferenced anymore (in which "
-"case, barf).  For example, if '<rev>' is a commit-ish, "
-"'<rev>{caret}\\{commit\\}' describes the corresponding commit object.  "
-"Similarly, if '<rev>' is a tree-ish, '<rev>{caret}\\{tree\\}' describes the "
-"corresponding tree object.  '<rev>{caret}0' is a short-hand for "
-"'<rev>{caret}\\{commit\\}'."
+"case, barf).  For example, if '<rev>' is a commit-ish, '<rev>{caret}\\{commit"
+"\\}' describes the corresponding commit object.  Similarly, if '<rev>' is a "
+"tree-ish, '<rev>{caret}\\{tree\\}' describes the corresponding tree object.  "
+"'<rev>{caret}0' is a short-hand for '<rev>{caret}\\{commit\\}'."
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:158
+#: en/revisions.txt:166
 msgid ""
 "'rev{caret}\\{object\\}' can be used to make sure 'rev' names an object that "
 "exists, without requiring 'rev' to be a tag, and without dereferencing "
@@ -66402,33 +64400,33 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:161
+#: en/revisions.txt:169
 msgid ""
 "'rev{caret}\\{tag\\}' can be used to ensure that 'rev' identifies an "
 "existing tag object."
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:162
+#: en/revisions.txt:170
 #, no-wrap
 msgid "'<rev>{caret}{}', e.g. 'v0.99.8{caret}{}'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:167
+#: en/revisions.txt:175
 msgid ""
 "A suffix '{caret}' followed by an empty brace pair means the object could be "
 "a tag, and dereference the tag recursively until a non-tag object is found."
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:168
+#: en/revisions.txt:176
 #, no-wrap
 msgid "'<rev>{caret}{/<text>}', e.g. 'HEAD^{/fix nasty bug}'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:174
+#: en/revisions.txt:182
 msgid ""
 "A suffix '{caret}' to a revision parameter, followed by a brace pair that "
 "contains a text led by a slash, is the same as the ':/fix nasty bug' syntax "
@@ -66437,32 +64435,34 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:175
+#: en/revisions.txt:183
 #, no-wrap
 msgid "':/<text>', e.g. ':/fix nasty bug'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:185
+#: en/revisions.txt:196
 msgid ""
 "A colon, followed by a slash, followed by a text, names a commit whose "
 "commit message matches the specified regular expression.  This name returns "
-"the youngest matching commit which is reachable from any ref. The regular "
-"expression can match any part of the commit message. To match messages "
-"starting with a string, one can use e.g. ':/^foo'. The special sequence "
-"':/!' is reserved for modifiers to what is matched. ':/!-foo' performs a "
-"negative match, while ':/!!foo' matches a literal '!' character, followed by "
-"'foo'. Any other sequence beginning with ':/!' is reserved for now."
+"the youngest matching commit which is reachable from any ref, including "
+"HEAD.  The regular expression can match any part of the commit message. To "
+"match messages starting with a string, one can use e.g. ':/^foo'. The "
+"special sequence ':/!' is reserved for modifiers to what is matched. ':/!-"
+"foo' performs a negative match, while ':/!!foo' matches a literal '!' "
+"character, followed by 'foo'. Any other sequence beginning with ':/!' is "
+"reserved for now.  Depending on the given text, the shell's word splitting "
+"rules might require additional quoting."
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:186
+#: en/revisions.txt:197
 #, no-wrap
 msgid "'<rev>:<path>', e.g. 'HEAD:README', ':README', 'master:./README'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:197
+#: en/revisions.txt:208
 msgid ""
 "A suffix ':' followed by a path names the blob or tree at the given path in "
 "the tree-ish object named by the part before the colon.  ':path' (with an "
@@ -66475,31 +64475,31 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:198
+#: en/revisions.txt:209
 #, no-wrap
 msgid "':<n>:<path>', e.g. ':0:README', ':README'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:206
+#: en/revisions.txt:217
 msgid ""
 "A colon, optionally followed by a stage number (0 to 3) and a colon, "
 "followed by a path, names a blob object in the index at the given path. A "
-"missing stage number (and the colon that follows it) names a stage 0 "
-"entry. During a merge, stage 1 is the common ancestor, stage 2 is the target "
+"missing stage number (and the colon that follows it) names a stage 0 entry. "
+"During a merge, stage 1 is the common ancestor, stage 2 is the target "
 "branch's version (typically the current branch), and stage 3 is the version "
 "from the branch which is being merged."
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:210
+#: en/revisions.txt:221
 msgid ""
 "Here is an illustration, by Jon Loeliger.  Both commit nodes B and C are "
 "parents of commit node A.  Parent commits are ordered left-to-right."
 msgstr ""
 
 #. type: delimited block .
-#: en/revisions.txt:222
+#: en/revisions.txt:233
 #, no-wrap
 msgid ""
 "G   H   I   J\n"
@@ -66515,7 +64515,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:234
+#: en/revisions.txt:245
 #, no-wrap
 msgid ""
 "    A =      = A^0\n"
@@ -66531,14 +64531,14 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:241
+#: en/revisions.txt:252
 msgid ""
 "History traversing commands such as `git log` operate on a set of commits, "
 "not just a single commit."
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:246
+#: en/revisions.txt:257
 msgid ""
 "For these commands, specifying a single revision, using the notation "
 "described in the previous section, means the set of commits `reachable` from "
@@ -66546,26 +64546,26 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:249
+#: en/revisions.txt:260
 msgid ""
 "A commit's reachable set is the commit itself and the commits in its "
 "ancestry chain."
 msgstr ""
 
 #. type: Title ~
-#: en/revisions.txt:252
+#: en/revisions.txt:263
 #, no-wrap
 msgid "Commit Exclusions"
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:254
+#: en/revisions.txt:265
 #, no-wrap
 msgid "'{caret}<rev>' (caret) Notation"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:259
+#: en/revisions.txt:270
 msgid ""
 "To exclude commits reachable from a commit, a prefix '{caret}' notation is "
 "used.  E.g. '{caret}r1 r2' means commits reachable from 'r2' but exclude the "
@@ -66573,19 +64573,19 @@ msgid ""
 msgstr ""
 
 #. type: Title ~
-#: en/revisions.txt:261
+#: en/revisions.txt:272
 #, no-wrap
 msgid "Dotted Range Notations"
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:263
+#: en/revisions.txt:274
 #, no-wrap
 msgid "The '..' (two-dot) Range Notation"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:269
+#: en/revisions.txt:280
 msgid ""
 "The '{caret}r1 r2' set operation appears so often that there is a shorthand "
 "for it.  When you have two commits 'r1' and 'r2' (named according to the "
@@ -66595,13 +64595,13 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:270
+#: en/revisions.txt:281
 #, no-wrap
-msgid "The '...' (three dot) Symmetric Difference Notation"
+msgid "The '...' (three-dot) Symmetric Difference Notation"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:276
+#: en/revisions.txt:287
 msgid ""
 "A similar notation 'r1\\...r2' is called symmetric difference of 'r1' and "
 "'r2' and is defined as 'r1 r2 --not $(git merge-base --all r1 r2)'.  It is "
@@ -66610,45 +64610,45 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:283
+#: en/revisions.txt:294
 msgid ""
 "In these two shorthand notations, you can omit one end and let it default to "
 "HEAD.  For example, 'origin..' is a shorthand for 'origin..HEAD' and asks "
-"\"What did I do since I forked from the origin branch?\" Similarly, "
-"'..origin' is a shorthand for 'HEAD..origin' and asks \"What did the origin "
-"do since I forked from them?\" Note that '..' would mean 'HEAD..HEAD' which "
-"is an empty range that is both reachable and unreachable from HEAD."
+"\"What did I do since I forked from the origin branch?\" Similarly, '.."
+"origin' is a shorthand for 'HEAD..origin' and asks \"What did the origin do "
+"since I forked from them?\" Note that '..' would mean 'HEAD..HEAD' which is "
+"an empty range that is both reachable and unreachable from HEAD."
 msgstr ""
 
 #. type: Title ~
-#: en/revisions.txt:285
+#: en/revisions.txt:296
 #, no-wrap
 msgid "Other <rev>{caret} Parent Shorthand Notations"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:288
+#: en/revisions.txt:299
 msgid ""
 "Three other shorthands exist, particularly useful for merge commits, for "
 "naming a set that is formed by a commit and its parent commits."
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:290
+#: en/revisions.txt:301
 msgid "The 'r1{caret}@' notation means all parents of 'r1'."
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:293
+#: en/revisions.txt:304
 msgid ""
 "The 'r1{caret}!' notation includes commit 'r1' but excludes all of its "
 "parents.  By itself, this notation denotes the single commit 'r1'."
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:300
+#: en/revisions.txt:311
 msgid ""
-"The '<rev>{caret}-{<n>}' notation includes '<rev>' but excludes the <n>th "
+"The '<rev>{caret}-<n>' notation includes '<rev>' but excludes the <n>th "
 "parent (i.e. a shorthand for '<rev>{caret}<n>..<rev>'), with '<n>' = 1 if "
 "not given. This is typically useful for merge commits where you can just "
 "pass '<commit>{caret}-' to get all the commits in the branch that was merged "
@@ -66656,7 +64656,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:304
+#: en/revisions.txt:315
 msgid ""
 "While '<rev>{caret}<n>' was about specifying a single commit parent, these "
 "three notations also consider its parents. For example you can say "
@@ -66664,45 +64664,43 @@ msgid ""
 msgstr ""
 
 #. type: Title -
-#: en/revisions.txt:306
+#: en/revisions.txt:317
 #, no-wrap
 msgid "Revision Range Summary"
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:308
+#: en/revisions.txt:319
 #, no-wrap
 msgid "'<rev>'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:311
+#: en/revisions.txt:322
 msgid ""
-"Include commits that are reachable from <rev> (i.e. <rev> and its "
-"ancestors)."
+"Include commits that are reachable from <rev> (i.e. <rev> and its ancestors)."
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:312
+#: en/revisions.txt:323
 #, no-wrap
 msgid "'{caret}<rev>'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:315
+#: en/revisions.txt:326
 msgid ""
-"Exclude commits that are reachable from <rev> (i.e. <rev> and its "
-"ancestors)."
+"Exclude commits that are reachable from <rev> (i.e. <rev> and its ancestors)."
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:316
+#: en/revisions.txt:327
 #, no-wrap
 msgid "'<rev1>..<rev2>'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:320
+#: en/revisions.txt:331
 msgid ""
 "Include commits that are reachable from <rev2> but exclude those that are "
 "reachable from <rev1>.  When either <rev1> or <rev2> is omitted, it defaults "
@@ -66710,13 +64708,13 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:321
+#: en/revisions.txt:332
 #, no-wrap
 msgid "'<rev1>\\...<rev2>'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:325
+#: en/revisions.txt:336
 msgid ""
 "Include commits that are reachable from either <rev1> or <rev2> but exclude "
 "those that are reachable from both.  When either <rev1> or <rev2> is "
@@ -66724,13 +64722,13 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:326
+#: en/revisions.txt:337
 #, no-wrap
 msgid "'<rev>{caret}@', e.g. 'HEAD{caret}@'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:330
+#: en/revisions.txt:341
 msgid ""
 "A suffix '{caret}' followed by an at sign is the same as listing all parents "
 "of '<rev>' (meaning, include anything reachable from its parents, but not "
@@ -66738,13 +64736,13 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:331
+#: en/revisions.txt:342
 #, no-wrap
 msgid "'<rev>{caret}!', e.g. 'HEAD{caret}!'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:335
+#: en/revisions.txt:346
 msgid ""
 "A suffix '{caret}' followed by an exclamation mark is the same as giving "
 "commit '<rev>' and then all its parents prefixed with '{caret}' to exclude "
@@ -66752,25 +64750,25 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/revisions.txt:336
+#: en/revisions.txt:347
 #, no-wrap
-msgid "'<rev>{caret}-{<n>}', e.g. 'HEAD{caret}-, HEAD{caret}-2'"
+msgid "'<rev>{caret}-<n>', e.g. 'HEAD{caret}-, HEAD{caret}-2'"
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:339
+#: en/revisions.txt:350
 msgid "Equivalent to '<rev>{caret}<n>..<rev>', with '<n>' = 1 if not given."
 msgstr ""
 
 #. type: Plain text
-#: en/revisions.txt:343
+#: en/revisions.txt:354
 msgid ""
 "Here are a handful of examples using the Loeliger illustration above, with "
 "each step in the notation's expansion and selection carefully spelt out:"
 msgstr ""
 
-#. type: Plain text
-#: en/revisions.txt:365
+#. type: delimited block .
+#: en/revisions.txt:378
 #, no-wrap
 msgid ""
 "   Args   Expanded arguments    Selected commits\n"
@@ -66814,10 +64812,10 @@ msgstr ""
 #. type: Plain text
 #: en/rev-list-options.txt:12
 msgid ""
-"Using more options generally further limits the output (e.g.  "
-"`--since=<date1>` limits to commits newer than `<date1>`, and using it with "
-"`--grep=<pattern>` further limits to commits whose log message has a line "
-"that matches `<pattern>`), unless otherwise noted."
+"Using more options generally further limits the output (e.g.  `--"
+"since=<date1>` limits to commits newer than `<date1>`, and using it with `--"
+"grep=<pattern>` further limits to commits whose log message has a line that "
+"matches `<pattern>`), unless otherwise noted."
 msgstr ""
 
 #. type: Plain text
@@ -66828,119 +64826,119 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:18
+#: en/rev-list-options.txt:16
 #, no-wrap
 msgid "-<number>"
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:19
+#: en/rev-list-options.txt:17
 #, no-wrap
 msgid "-n <number>"
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:20
+#: en/rev-list-options.txt:18
 #, no-wrap
 msgid "--max-count=<number>"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:22
+#: en/rev-list-options.txt:20
 msgid "Limit the number of commits to output."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:23
+#: en/rev-list-options.txt:21
 #, no-wrap
 msgid "--skip=<number>"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:25
+#: en/rev-list-options.txt:23
 msgid "Skip 'number' commits before starting to show the commit output."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:26
+#: en/rev-list-options.txt:24
 #, no-wrap
 msgid "--since=<date>"
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:27
+#: en/rev-list-options.txt:25
 #, no-wrap
 msgid "--after=<date>"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:29
+#: en/rev-list-options.txt:27
 msgid "Show commits more recent than a specific date."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:30
+#: en/rev-list-options.txt:28
 #, no-wrap
 msgid "--until=<date>"
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:31
+#: en/rev-list-options.txt:29
 #, no-wrap
 msgid "--before=<date>"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:33
+#: en/rev-list-options.txt:31
 msgid "Show commits older than a specific date."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:35
+#: en/rev-list-options.txt:33
 #, no-wrap
 msgid "--max-age=<timestamp>"
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:36
+#: en/rev-list-options.txt:34
 #, no-wrap
 msgid "--min-age=<timestamp>"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:38
+#: en/rev-list-options.txt:36
 msgid "Limit the commits output to specified time range."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:40
+#: en/rev-list-options.txt:38
 #, no-wrap
 msgid "--author=<pattern>"
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:41
+#: en/rev-list-options.txt:39
 #, no-wrap
 msgid "--committer=<pattern>"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:47
+#: en/rev-list-options.txt:45
 msgid ""
 "Limit the commits output to ones with author/committer header lines that "
-"match the specified pattern (regular expression).  With more than one "
-"`--author=<pattern>`, commits whose author matches any of the given patterns "
+"match the specified pattern (regular expression).  With more than one `--"
+"author=<pattern>`, commits whose author matches any of the given patterns "
 "are chosen (similarly for multiple `--committer=<pattern>`)."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:48
+#: en/rev-list-options.txt:46
 #, no-wrap
 msgid "--grep-reflog=<pattern>"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:54
+#: en/rev-list-options.txt:52
 msgid ""
 "Limit the commits output to ones with reflog entries that match the "
 "specified pattern (regular expression). With more than one `--grep-reflog`, "
@@ -66949,13 +64947,13 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:55
+#: en/rev-list-options.txt:53
 #, no-wrap
 msgid "--grep=<pattern>"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:61
+#: en/rev-list-options.txt:59
 msgid ""
 "Limit the commits output to ones with log message that matches the specified "
 "pattern (regular expression).  With more than one `--grep=<pattern>`, "
@@ -66964,143 +64962,142 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:65
+#: en/rev-list-options.txt:63
 msgid ""
 "When `--show-notes` is in effect, the message from the notes is matched as "
 "if it were part of the log message."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:70
+#: en/rev-list-options.txt:68
 msgid ""
 "Limit the commits output to ones that match all given `--grep`, instead of "
 "ones that match at least one."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:71
+#: en/rev-list-options.txt:69
 #, no-wrap
 msgid "--invert-grep"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:74
+#: en/rev-list-options.txt:72
 msgid ""
 "Limit the commits output to ones with log message that do not match the "
 "pattern specified with `--grep=<pattern>`."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:76
+#: en/rev-list-options.txt:74
 #, no-wrap
 msgid "--regexp-ignore-case"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:79
+#: en/rev-list-options.txt:77
 msgid ""
-"Match the regular expression limiting patterns without regard to letter "
-"case."
+"Match the regular expression limiting patterns without regard to letter case."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:83
+#: en/rev-list-options.txt:81
 msgid ""
 "Consider the limiting patterns to be basic regular expressions; this is the "
 "default."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:88
+#: en/rev-list-options.txt:86
 msgid ""
 "Consider the limiting patterns to be extended regular expressions instead of "
 "the default basic regular expressions."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:93
+#: en/rev-list-options.txt:91
 msgid ""
 "Consider the limiting patterns to be fixed strings (don't interpret pattern "
 "as a regular expression)."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:97
+#: en/rev-list-options.txt:96
 msgid ""
-"Consider the limiting patterns to be Perl-compatible regular expressions.  "
-"Requires libpcre to be compiled in."
+"Consider the limiting patterns to be Perl-compatible regular expressions."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:98
+#: en/rev-list-options.txt:101
 #, no-wrap
 msgid "--remove-empty"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:100
+#: en/rev-list-options.txt:103
 msgid "Stop when a given path disappears from the tree."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:101
+#: en/rev-list-options.txt:104
 #, no-wrap
 msgid "--merges"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:103
-msgid "Print only merge commits. This is exactly the same as `--min-parents=2`."
+#: en/rev-list-options.txt:106
+msgid ""
+"Print only merge commits. This is exactly the same as `--min-parents=2`."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:104
+#: en/rev-list-options.txt:107
 #, no-wrap
 msgid "--no-merges"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:107
+#: en/rev-list-options.txt:110
 msgid ""
 "Do not print commits with more than one parent. This is exactly the same as "
 "`--max-parents=1`."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:108
+#: en/rev-list-options.txt:111
 #, no-wrap
 msgid "--min-parents=<number>"
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:109
+#: en/rev-list-options.txt:112
 #, no-wrap
 msgid "--max-parents=<number>"
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:110
+#: en/rev-list-options.txt:113
 #, no-wrap
 msgid "--no-min-parents"
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:111
+#: en/rev-list-options.txt:114
 #, no-wrap
 msgid "--no-max-parents"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:116
+#: en/rev-list-options.txt:119
 msgid ""
-"Show only commits which have at least (or at most) that many parent "
-"commits. In particular, `--max-parents=1` is the same as `--no-merges`, "
-"`--min-parents=2` is the same as `--merges`.  `--max-parents=0` gives all "
-"root commits and `--min-parents=3` all octopus merges."
+"Show only commits which have at least (or at most) that many parent commits. "
+"In particular, `--max-parents=1` is the same as `--no-merges`, `--min-"
+"parents=2` is the same as `--merges`.  `--max-parents=0` gives all root "
+"commits and `--min-parents=3` all octopus merges."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:120
+#: en/rev-list-options.txt:123
 msgid ""
 "`--no-min-parents` and `--no-max-parents` reset these limits (to no limit)  "
 "again.  Equivalent forms are `--min-parents=0` (any commit has 0 or more "
@@ -67108,7 +65105,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:130
+#: en/rev-list-options.txt:133
 msgid ""
 "Follow only the first parent commit upon seeing a merge commit.  This option "
 "can give a better overview when viewing the evolution of a particular topic "
@@ -67119,27 +65116,27 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:134
+#: en/rev-list-options.txt:137
 msgid ""
 "Reverses the meaning of the '{caret}' prefix (or lack thereof)  for all "
 "following revision specifiers, up to the next `--not`."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:138
+#: en/rev-list-options.txt:141
 msgid ""
 "Pretend as if all the refs in `refs/`, along with `HEAD`, are listed on the "
 "command line as '<commit>'."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:139
+#: en/rev-list-options.txt:142
 #, no-wrap
 msgid "--branches[=<pattern>]"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:144
+#: en/rev-list-options.txt:147
 msgid ""
 "Pretend as if all the refs in `refs/heads` are listed on the command line as "
 "'<commit>'. If '<pattern>' is given, limit branches to ones matching given "
@@ -67148,13 +65145,13 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:145
+#: en/rev-list-options.txt:148
 #, no-wrap
 msgid "--tags[=<pattern>]"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:150
+#: en/rev-list-options.txt:153
 msgid ""
 "Pretend as if all the refs in `refs/tags` are listed on the command line as "
 "'<commit>'. If '<pattern>' is given, limit tags to ones matching given shell "
@@ -67163,13 +65160,13 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:151
+#: en/rev-list-options.txt:154
 #, no-wrap
 msgid "--remotes[=<pattern>]"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:156
+#: en/rev-list-options.txt:159
 msgid ""
 "Pretend as if all the refs in `refs/remotes` are listed on the command line "
 "as '<commit>'. If '<pattern>' is given, limit remote-tracking branches to "
@@ -67178,48 +65175,57 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:157
+#: en/rev-list-options.txt:160
 #, no-wrap
 msgid "--glob=<glob-pattern>"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:162
+#: en/rev-list-options.txt:165
 msgid ""
 "Pretend as if all the refs matching shell glob '<glob-pattern>' are listed "
 "on the command line as '<commit>'. Leading 'refs/', is automatically "
-"prepended if missing. If pattern lacks '?', '{asterisk}', or '[', "
-"'/{asterisk}' at the end is implied."
+"prepended if missing. If pattern lacks '?', '{asterisk}', or '[', '/"
+"{asterisk}' at the end is implied."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:178
+#: en/rev-list-options.txt:181
 #, no-wrap
 msgid "--reflog"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:181
+#: en/rev-list-options.txt:184
 msgid ""
 "Pretend as if all objects mentioned by reflogs are listed on the command "
 "line as `<commit>`."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:185
+#: en/rev-list-options.txt:192
+msgid ""
+"By default, all working trees will be examined by the following options when "
+"there are more than one (see linkgit:git-worktree[1]): `--all`, `--reflog` "
+"and `--indexed-objects`.  This option forces them to examine the current "
+"working tree only."
+msgstr ""
+
+#. type: Plain text
+#: en/rev-list-options.txt:196
 msgid ""
 "Upon seeing an invalid object name in the input, pretend as if the bad input "
 "was not given."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:187 en/rev-list-options.txt:569
+#: en/rev-list-options.txt:198 en/rev-list-options.txt:578
 #, no-wrap
 msgid "--bisect"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:192
+#: en/rev-list-options.txt:203
 msgid ""
 "Pretend as if the bad bisection ref `refs/bisect/bad` was listed and as if "
 "it was followed by `--not` and the good bisection refs `refs/bisect/good-*` "
@@ -67227,7 +65233,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:199
+#: en/rev-list-options.txt:210
 msgid ""
 "In addition to the '<commit>' listed on the command line, read them from the "
 "standard input. If a `--` separator is seen, stop reading commits and start "
@@ -67235,43 +65241,42 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:207
+#: en/rev-list-options.txt:218
 msgid ""
 "Don't print anything to standard output.  This form is primarily meant to "
 "allow the caller to test the exit status to see if a range of objects is "
-"fully connected (or not).  It is faster than redirecting stdout to "
-"`/dev/null` as the output does not have to be formatted."
+"fully connected (or not).  It is faster than redirecting stdout to `/dev/"
+"null` as the output does not have to be formatted."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:209
+#: en/rev-list-options.txt:220
 #, no-wrap
 msgid "--cherry-mark"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:212
+#: en/rev-list-options.txt:223
 msgid ""
 "Like `--cherry-pick` (see below) but mark equivalent commits with `=` rather "
 "than omitting them, and inequivalent ones with `+`."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:213
+#: en/rev-list-options.txt:224
 #, no-wrap
 msgid "--cherry-pick"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:217
+#: en/rev-list-options.txt:228
 msgid ""
 "Omit any commit that introduces the same change as another commit on the "
-"``other side'' when the set of commits are limited with symmetric "
-"difference."
+"``other side'' when the set of commits are limited with symmetric difference."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:225
+#: en/rev-list-options.txt:236
 msgid ""
 "For example, if you have two branches, `A` and `B`, a usual way to list all "
 "commits on only one side of them is with `--left-right` (see the example "
@@ -67282,56 +65287,56 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:226
+#: en/rev-list-options.txt:237
 #, no-wrap
 msgid "--left-only"
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:227
+#: en/rev-list-options.txt:238
 #, no-wrap
 msgid "--right-only"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:231
+#: en/rev-list-options.txt:242
 msgid ""
-"List only commits on the respective side of a symmetric difference, "
-"i.e. only those which would be marked `<` resp. `>` by `--left-right`."
+"List only commits on the respective side of a symmetric difference, i.e. "
+"only those which would be marked `<` resp. `>` by `--left-right`."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:237
+#: en/rev-list-options.txt:248
 msgid ""
 "For example, `--cherry-pick --right-only A...B` omits those commits from `B` "
 "which are in `A` or are patch-equivalent to a commit in `A`. In other words, "
-"this lists the `+` commits from `git cherry A B`.  More precisely, "
-"`--cherry-pick --right-only --no-merges` gives the exact list."
+"this lists the `+` commits from `git cherry A B`.  More precisely, `--cherry-"
+"pick --right-only --no-merges` gives the exact list."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:238
+#: en/rev-list-options.txt:249
 #, no-wrap
 msgid "--cherry"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:244
+#: en/rev-list-options.txt:255
 msgid ""
 "A synonym for `--right-only --cherry-mark --no-merges`; useful to limit the "
 "output to the commits on our side and mark those that have been applied to "
-"the other side of a forked history with `git log --cherry "
-"upstream...mybranch`, similar to `git cherry upstream mybranch`."
+"the other side of a forked history with `git log --cherry upstream..."
+"mybranch`, similar to `git cherry upstream mybranch`."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:246
+#: en/rev-list-options.txt:257
 #, no-wrap
 msgid "--walk-reflogs"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:252
+#: en/rev-list-options.txt:263
 msgid ""
 "Instead of walking the commit ancestry chain, walk reflog entries from the "
 "most recent one to older ones.  When this option is used you cannot specify "
@@ -67340,7 +65345,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:259
+#: en/rev-list-options.txt:270
 msgid ""
 "With `--pretty` format other than `oneline` (for obvious reasons), this "
 "causes the output to have two extra lines of information taken from the "
@@ -67351,63 +65356,65 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:263
-msgid "If the starting point is specified as `ref@{Nth}`, show the index format."
+#: en/rev-list-options.txt:274
+msgid ""
+"If the starting point is specified as `ref@{Nth}`, show the index format."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:266
+#: en/rev-list-options.txt:277
 msgid ""
 "If the starting point was specified as `ref@{now}`, show the timestamp "
 "format."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:269
+#: en/rev-list-options.txt:280
 msgid ""
 "If neither was used, but `--date` was given on the command line, show the "
 "timestamp in the format requested by `--date`."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:271
+#: en/rev-list-options.txt:282
 msgid "Otherwise, show the index format."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:277
+#: en/rev-list-options.txt:288
 msgid ""
 "Under `--pretty=oneline`, the commit message is prefixed with this "
-"information on the same line.  This option cannot be combined with "
-"`--reverse`.  See also linkgit:git-reflog[1]."
+"information on the same line.  This option cannot be combined with `--"
+"reverse`.  See also linkgit:git-reflog[1]."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:281
+#: en/rev-list-options.txt:292
 msgid ""
 "After a failed merge, show refs that touch files having a conflict and don't "
 "exist on all heads to merge."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:282
+#: en/rev-list-options.txt:293
 #, no-wrap
 msgid "--boundary"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:285
-msgid "Output excluded boundary commits. Boundary commits are prefixed with `-`."
+#: en/rev-list-options.txt:296
+msgid ""
+"Output excluded boundary commits. Boundary commits are prefixed with `-`."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:287
+#: en/rev-list-options.txt:298
 #, no-wrap
 msgid "--use-bitmap-index"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:292
+#: en/rev-list-options.txt:303
 msgid ""
 "Try to speed up the traversal using the pack bitmap index (if one is "
 "available). Note that when traversing with `--objects`, trees and blobs will "
@@ -67415,26 +65422,26 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:293
+#: en/rev-list-options.txt:304
 #, no-wrap
 msgid "--progress=<header>"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:296
+#: en/rev-list-options.txt:307
 msgid ""
 "Show progress reports on stderr as objects are considered. The `<header>` "
 "text will be printed with each progress update."
 msgstr ""
 
 #. type: Title ~
-#: en/rev-list-options.txt:301
+#: en/rev-list-options.txt:310
 #, no-wrap
 msgid "History Simplification"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:307
+#: en/rev-list-options.txt:316
 msgid ""
 "Sometimes you are only interested in parts of the history, for example the "
 "commits modifying a particular <path>. But there are two parts of 'History "
@@ -67443,50 +65450,50 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:309
+#: en/rev-list-options.txt:318
 msgid "The following options select the commits to be shown:"
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:310
+#: en/rev-list-options.txt:319
 #, no-wrap
 msgid "<paths>"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:312
+#: en/rev-list-options.txt:321
 msgid "Commits modifying the given <paths> are selected."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:313
+#: en/rev-list-options.txt:322
 #, no-wrap
 msgid "--simplify-by-decoration"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:315
+#: en/rev-list-options.txt:324
 msgid "Commits that are referred by some branch or tag are selected."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:317
+#: en/rev-list-options.txt:326
 msgid "Note that extra commits can be shown to give a meaningful history."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:319
+#: en/rev-list-options.txt:328
 msgid "The following options affect the way the simplification is performed:"
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:320 en/rev-list-options.txt:394
+#: en/rev-list-options.txt:329 en/rev-list-options.txt:403
 #, no-wrap
 msgid "Default mode"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:325
+#: en/rev-list-options.txt:334
 msgid ""
 "Simplifies the history to the simplest history explaining the final state of "
 "the tree. Simplest because it prunes some side branches if the end result is "
@@ -67494,40 +65501,41 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:326
+#: en/rev-list-options.txt:335
 #, no-wrap
 msgid "--full-history"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:328
+#: en/rev-list-options.txt:337
 msgid "Same as the default mode, but does not prune some history."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:329 en/rev-list-options.txt:462
+#: en/rev-list-options.txt:338 en/rev-list-options.txt:471
 #, no-wrap
 msgid "--dense"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:332
-msgid "Only the selected commits are shown, plus some to have a meaningful history."
+#: en/rev-list-options.txt:341
+msgid ""
+"Only the selected commits are shown, plus some to have a meaningful history."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:335
+#: en/rev-list-options.txt:344
 msgid "All commits in the simplified history are shown."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:336 en/rev-list-options.txt:473
+#: en/rev-list-options.txt:345 en/rev-list-options.txt:482
 #, no-wrap
 msgid "--simplify-merges"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:340
+#: en/rev-list-options.txt:349
 msgid ""
 "Additional option to `--full-history` to remove some needless merges from "
 "the resulting history, as there are no selected commits contributing to this "
@@ -67535,13 +65543,13 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:341 en/rev-list-options.txt:520
+#: en/rev-list-options.txt:350 en/rev-list-options.txt:529
 #, no-wrap
 msgid "--ancestry-path"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:347
+#: en/rev-list-options.txt:356
 msgid ""
 "When given a range of commits to display (e.g. 'commit1..commit2' or "
 "'commit2 {caret}commit1'), only display commits that exist directly on the "
@@ -67550,12 +65558,12 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:349
+#: en/rev-list-options.txt:358
 msgid "A more detailed explanation follows."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:353
+#: en/rev-list-options.txt:362
 msgid ""
 "Suppose you specified `foo` as the <paths>.  We shall call commits that "
 "modify `foo` !TREESAME, and the rest TREESAME.  (In a diff filtered for "
@@ -67563,7 +65571,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:357
+#: en/rev-list-options.txt:366
 msgid ""
 "In the following, we will always refer to the same example history to "
 "illustrate the differences between simplification settings.  We assume that "
@@ -67571,7 +65579,7 @@ msgid ""
 msgstr ""
 
 #. type: delimited block -
-#: en/rev-list-options.txt:363
+#: en/rev-list-options.txt:372
 #, no-wrap
 msgid ""
 "\t  .-A---M---N---O---P---Q\n"
@@ -67582,14 +65590,14 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:366
+#: en/rev-list-options.txt:375
 msgid ""
 "The horizontal line of history A---Q is taken to be the first parent of each "
 "merge.  The commits are:"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:370
+#: en/rev-list-options.txt:379
 msgid ""
 "`I` is the initial commit, in which `foo` exists with contents ``asdf'', and "
 "a file `quux` exists with contents ``quux''. Initial commits are compared to "
@@ -67597,40 +65605,40 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:372
+#: en/rev-list-options.txt:381
 msgid "In `A`, `foo` contains just ``foo''."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:375
+#: en/rev-list-options.txt:384
 msgid ""
 "`B` contains the same change as `A`.  Its merge `M` is trivial and hence "
 "TREESAME to all parents."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:378
+#: en/rev-list-options.txt:387
 msgid ""
 "`C` does not change `foo`, but its merge `N` changes it to ``foobar'', so it "
 "is not TREESAME to any parent."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:381
+#: en/rev-list-options.txt:390
 msgid ""
 "`D` sets `foo` to ``baz''. Its merge `O` combines the strings from `N` and "
 "`D` to ``foobarbaz''; i.e., it is not TREESAME to any parent."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:384
+#: en/rev-list-options.txt:393
 msgid ""
 "`E` changes `quux` to ``xyzzy'', and its merge `P` combines the strings to "
 "``quux xyzzy''. `P` is TREESAME to `O`, but not to `E`."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:388
+#: en/rev-list-options.txt:397
 msgid ""
 "`X` is an independent root commit that added a new file `side`, and `Y` "
 "modified it. `Y` is TREESAME to `X`. Its merge `Q` added `side` to `P`, and "
@@ -67638,7 +65646,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:393
+#: en/rev-list-options.txt:402
 msgid ""
 "`rev-list` walks backwards through history, including or excluding commits "
 "based on whether `--full-history` and/or parent rewriting (via `--parents` "
@@ -67646,7 +65654,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:401
+#: en/rev-list-options.txt:410
 msgid ""
 "Commits are included if they are not TREESAME to any parent (though this can "
 "be changed, see `--sparse` below).  If the commit was a merge, and it was "
@@ -67655,12 +65663,12 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:403
+#: en/rev-list-options.txt:412
 msgid "This results in:"
 msgstr ""
 
 #. type: delimited block -
-#: en/rev-list-options.txt:408
+#: en/rev-list-options.txt:417
 #, no-wrap
 msgid ""
 "\t  .-A---N---O\n"
@@ -67669,7 +65677,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:414
+#: en/rev-list-options.txt:423
 msgid ""
 "Note how the rule to only follow the TREESAME parent, if one is available, "
 "removed `B` from consideration entirely.  `C` was considered via `N`, but is "
@@ -67677,7 +65685,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:418
+#: en/rev-list-options.txt:427
 msgid ""
 "Parent/child relations are only visible with `--parents`, but that does not "
 "affect the commits selected in default mode, so we have shown the parent "
@@ -67685,13 +65693,13 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:419
+#: en/rev-list-options.txt:428
 #, no-wrap
 msgid "--full-history without parent rewriting"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:425
+#: en/rev-list-options.txt:434
 msgid ""
 "This mode differs from the default in one point: always follow all parents "
 "of a merge, even if it is TREESAME to one of them.  Even if more than one "
@@ -67700,20 +65708,20 @@ msgid ""
 msgstr ""
 
 #. type: delimited block -
-#: en/rev-list-options.txt:428
+#: en/rev-list-options.txt:437
 #, no-wrap
 msgid "\tI  A  B  N  D  O  P  Q\n"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:433
+#: en/rev-list-options.txt:442
 msgid ""
 "`M` was excluded because it is TREESAME to both parents.  `E`, `C` and `B` "
 "were all walked, but only `B` was !TREESAME, so the others do not appear."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:437
+#: en/rev-list-options.txt:446
 msgid ""
 "Note that without parent rewriting, it is not really possible to talk about "
 "the parent/child relationships between the commits, so we show them "
@@ -67721,20 +65729,20 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:438
+#: en/rev-list-options.txt:447
 #, no-wrap
 msgid "--full-history with parent rewriting"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:441
+#: en/rev-list-options.txt:450
 msgid ""
 "Ordinary commits are only included if they are !TREESAME (though this can be "
 "changed, see `--sparse` below)."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:445
+#: en/rev-list-options.txt:454
 msgid ""
 "Merges are always included.  However, their parent list is rewritten: Along "
 "each parent, prune away commits that are not included themselves.  This "
@@ -67742,7 +65750,7 @@ msgid ""
 msgstr ""
 
 #. type: delimited block -
-#: en/rev-list-options.txt:452
+#: en/rev-list-options.txt:461
 #, no-wrap
 msgid ""
 "\t  .-A---M---N---O---P---Q\n"
@@ -67753,7 +65761,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:458
+#: en/rev-list-options.txt:467
 msgid ""
 "Compare to `--full-history` without rewriting above.  Note that `E` was "
 "pruned away because it is TREESAME, but the parent list of P was rewritten "
@@ -67762,24 +65770,25 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:461
+#: en/rev-list-options.txt:470
 msgid ""
 "In addition to the above settings, you can change whether TREESAME affects "
 "inclusion:"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:465
-msgid "Commits that are walked are included if they are not TREESAME to any parent."
+#: en/rev-list-options.txt:474
+msgid ""
+"Commits that are walked are included if they are not TREESAME to any parent."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:468
+#: en/rev-list-options.txt:477
 msgid "All commits that are walked are included."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:472
+#: en/rev-list-options.txt:481
 msgid ""
 "Note that without `--full-history`, this still simplifies merges: if one of "
 "the parents is TREESAME, we follow only that one, so the other sides of the "
@@ -67787,26 +65796,26 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:476
+#: en/rev-list-options.txt:485
 msgid ""
 "First, build a history graph in the same way that `--full-history` with "
 "parent rewriting does (see above)."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:479
+#: en/rev-list-options.txt:488
 msgid ""
 "Then simplify each commit `C` to its replacement `C'` in the final history "
 "according to the following rules:"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:482
+#: en/rev-list-options.txt:491
 msgid "Set `C'` to `C`."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:487
+#: en/rev-list-options.txt:496
 msgid ""
 "Replace each parent `P` of `C'` with its simplification `P'`.  In the "
 "process, drop parents that are ancestors of other parents or that are root "
@@ -67815,7 +65824,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:491
+#: en/rev-list-options.txt:500
 msgid ""
 "If after this parent rewriting, `C'` is a root or merge commit (has zero or "
 ">1 parents), a boundary commit, or !TREESAME, it remains.  Otherwise, it is "
@@ -67823,14 +65832,14 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:495
+#: en/rev-list-options.txt:504
 msgid ""
 "The effect of this is best shown by way of comparing to `--full-history` "
 "with parent rewriting.  The example turns into:"
 msgstr ""
 
 #. type: delimited block -
-#: en/rev-list-options.txt:502
+#: en/rev-list-options.txt:511
 #, no-wrap
 msgid ""
 "\t  .-A---M---N---O\n"
@@ -67841,26 +65850,26 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:505
+#: en/rev-list-options.txt:514
 msgid "Note the major differences in `N`, `P`, and `Q` over `--full-history`:"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:509
+#: en/rev-list-options.txt:518
 msgid ""
 "`N`'s parent list had `I` removed, because it is an ancestor of the other "
 "parent `M`.  Still, `N` remained because it is !TREESAME."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:512
+#: en/rev-list-options.txt:521
 msgid ""
 "`P`'s parent list similarly had `I` removed.  `P` was then removed "
 "completely, because it had one parent and is TREESAME."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:516
+#: en/rev-list-options.txt:525
 msgid ""
 "`Q`'s parent list had `Y` simplified to `X`. `X` was then removed, because "
 "it was a TREESAME root. `Q` was then removed completely, because it had one "
@@ -67868,12 +65877,12 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:519
+#: en/rev-list-options.txt:528
 msgid "Finally, there is a fifth simplification mode available:"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:525
+#: en/rev-list-options.txt:534
 msgid ""
 "Limit the displayed commits to those directly on the ancestry chain between "
 "the ``from'' and ``to'' commits in the given commit range. I.e. only display "
@@ -67882,12 +65891,12 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:527
+#: en/rev-list-options.txt:536
 msgid "As an example use case, consider the following commit history:"
 msgstr ""
 
 #. type: delimited block -
-#: en/rev-list-options.txt:534
+#: en/rev-list-options.txt:543
 #, no-wrap
 msgid ""
 "\t    D---E-------F\n"
@@ -67898,7 +65907,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:542
+#: en/rev-list-options.txt:551
 msgid ""
 "A regular 'D..M' computes the set of commits that are ancestors of `M`, but "
 "excludes the ones that are ancestors of `D`. This is useful to see what "
@@ -67908,7 +65917,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:548
+#: en/rev-list-options.txt:557
 msgid ""
 "When we want to find out what commits in `M` are contaminated with the bug "
 "introduced by `D` and need fixing, however, we might want to view only the "
@@ -67918,7 +65927,7 @@ msgid ""
 msgstr ""
 
 #. type: delimited block -
-#: en/rev-list-options.txt:555
+#: en/rev-list-options.txt:564
 #, no-wrap
 msgid ""
 "\t\tE-------F\n"
@@ -67929,7 +65938,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:564
+#: en/rev-list-options.txt:573
 msgid ""
 "The `--simplify-by-decoration` option allows you to view only the big "
 "picture of the topology of the history, by omitting commits that are not "
@@ -67941,34 +65950,34 @@ msgid ""
 msgstr ""
 
 #. type: Title ~
-#: en/rev-list-options.txt:567
+#: en/rev-list-options.txt:576
 #, no-wrap
 msgid "Bisection Helpers"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:576
+#: en/rev-list-options.txt:585
 msgid ""
 "Limit output to the one commit object which is roughly halfway between "
-"included and excluded commits. Note that the bad bisection ref "
-"`refs/bisect/bad` is added to the included commits (if it exists) and the "
-"good bisection refs `refs/bisect/good-*` are added to the excluded commits "
-"(if they exist). Thus, supposing there are no refs in `refs/bisect/`, if"
+"included and excluded commits. Note that the bad bisection ref `refs/bisect/"
+"bad` is added to the included commits (if it exists) and the good bisection "
+"refs `refs/bisect/good-*` are added to the excluded commits (if they exist). "
+"Thus, supposing there are no refs in `refs/bisect/`, if"
 msgstr ""
 
 #. type: delimited block -
-#: en/rev-list-options.txt:579
+#: en/rev-list-options.txt:588
 #, no-wrap
 msgid "\t$ git rev-list --bisect foo ^bar ^baz\n"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:582
+#: en/rev-list-options.txt:591
 msgid "outputs 'midpoint', the output of the two commands"
 msgstr ""
 
 #. type: delimited block -
-#: en/rev-list-options.txt:586
+#: en/rev-list-options.txt:595
 #, no-wrap
 msgid ""
 "\t$ git rev-list foo ^midpoint\n"
@@ -67976,7 +65985,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:592
+#: en/rev-list-options.txt:601
 msgid ""
 "would be of roughly the same length.  Finding the change which introduces a "
 "regression is thus reduced to a binary search: repeatedly generate and test "
@@ -67985,13 +65994,13 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:593
+#: en/rev-list-options.txt:602
 #, no-wrap
 msgid "--bisect-vars"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:604
+#: en/rev-list-options.txt:613
 msgid ""
 "This calculates the same as `--bisect`, except that refs in `refs/bisect/` "
 "are not used, and except that this outputs text ready to be eval'ed by the "
@@ -68005,22 +66014,22 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:605
+#: en/rev-list-options.txt:614
 #, no-wrap
 msgid "--bisect-all"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:611
+#: en/rev-list-options.txt:620
 msgid ""
 "This outputs all the commit objects between the included and excluded "
-"commits, ordered by their distance to the included and excluded "
-"commits. Refs in `refs/bisect/` are not used. The farthest from them is "
-"displayed first. (This is the only one displayed by `--bisect`.)"
+"commits, ordered by their distance to the included and excluded commits. "
+"Refs in `refs/bisect/` are not used. The farthest from them is displayed "
+"first. (This is the only one displayed by `--bisect`.)"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:615
+#: en/rev-list-options.txt:624
 msgid ""
 "This is useful because it makes it easy to choose a good commit to test when "
 "you want to avoid to test some of them for some reason (they may not compile "
@@ -68028,7 +66037,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:619
+#: en/rev-list-options.txt:628
 msgid ""
 "This option can be used along with `--bisect-vars`, in this case, after all "
 "the sorted commit objects, there will be the same text as if `--bisect-vars` "
@@ -68036,50 +66045,50 @@ msgid ""
 msgstr ""
 
 #. type: Title ~
-#: en/rev-list-options.txt:623
+#: en/rev-list-options.txt:632
 #, no-wrap
 msgid "Commit Ordering"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:626
+#: en/rev-list-options.txt:635
 msgid "By default, the commits are shown in reverse chronological order."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:630
+#: en/rev-list-options.txt:639
 msgid ""
 "Show no parents before all of its children are shown, but otherwise show "
 "commits in the commit timestamp order."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:631
+#: en/rev-list-options.txt:640
 #, no-wrap
 msgid "--author-date-order"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:634
+#: en/rev-list-options.txt:643
 msgid ""
 "Show no parents before all of its children are shown, but otherwise show "
 "commits in the author timestamp order."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:639
+#: en/rev-list-options.txt:648
 msgid ""
 "Show no parents before all of its children are shown, and avoid showing "
 "commits on multiple lines of history intermixed."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:641
+#: en/rev-list-options.txt:650
 msgid "For example, in a commit history like this:"
 msgstr ""
 
 #. type: delimited block -
-#: en/rev-list-options.txt:647
+#: en/rev-list-options.txt:656
 #, no-wrap
 msgid ""
 "    ---1----2----4----7\n"
@@ -68088,7 +66097,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:653
+#: en/rev-list-options.txt:662
 msgid ""
 "where the numbers denote the order of commit timestamps, `git rev-list` and "
 "friends with `--date-order` show the commits in the timestamp order: 8 7 6 5 "
@@ -68096,7 +66105,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:658
+#: en/rev-list-options.txt:667
 msgid ""
 "With `--topo-order`, they would show 8 6 5 3 7 4 2 1 (or 8 7 4 2 6 5 3 1); "
 "some older commits are shown before newer ones in order to avoid showing the "
@@ -68104,45 +66113,58 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:663
+#: en/rev-list-options.txt:672
 msgid ""
 "Output the commits chosen to be shown (see Commit Limiting section above) in "
 "reverse order. Cannot be combined with `--walk-reflogs`."
 msgstr ""
 
 #. type: Title ~
-#: en/rev-list-options.txt:665
+#: en/rev-list-options.txt:674
 #, no-wrap
 msgid "Object Traversal"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:668
+#: en/rev-list-options.txt:677
 msgid "These options are mostly targeted for packing of Git repositories."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:670
+#: en/rev-list-options.txt:679
 #, no-wrap
 msgid "--objects"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:675
+#: en/rev-list-options.txt:684
 msgid ""
-"Print the object IDs of any object referenced by the listed commits.  "
-"`--objects foo ^bar` thus means ``send me all object IDs which I need to "
+"Print the object IDs of any object referenced by the listed commits.  `--"
+"objects foo ^bar` thus means ``send me all object IDs which I need to "
 "download if I have the commit object _bar_ but not _foo_''."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:676
+#: en/rev-list-options.txt:685
+#, no-wrap
+msgid "--in-commit-order"
+msgstr ""
+
+#. type: Plain text
+#: en/rev-list-options.txt:689
+msgid ""
+"Print tree and blob ids in order of the commits. The tree and blob ids are "
+"printed after they are first referenced by a commit."
+msgstr ""
+
+#. type: Labeled list
+#: en/rev-list-options.txt:690
 #, no-wrap
 msgid "--objects-edge"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:682
+#: en/rev-list-options.txt:696
 msgid ""
 "Similar to `--objects`, but also print the IDs of excluded commits prefixed "
 "with a ``-'' character.  This is used by linkgit:git-pack-objects[1] to "
@@ -68151,13 +66173,13 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:683
+#: en/rev-list-options.txt:697
 #, no-wrap
 msgid "--objects-edge-aggressive"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:687
+#: en/rev-list-options.txt:701
 msgid ""
 "Similar to `--objects-edge`, but it tries harder to find excluded commits at "
 "the cost of increased time.  This is used instead of `--objects-edge` to "
@@ -68165,84 +66187,186 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:688
+#: en/rev-list-options.txt:702
 #, no-wrap
 msgid "--indexed-objects"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:692
+#: en/rev-list-options.txt:706
 msgid ""
 "Pretend as if all trees and blobs used by the index are listed on the "
 "command line.  Note that you probably want to use `--objects`, too."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:696
-msgid "Only useful with `--objects`; print the object IDs that are not in packs."
+#: en/rev-list-options.txt:710
+msgid ""
+"Only useful with `--objects`; print the object IDs that are not in packs."
+msgstr ""
+
+#. type: Plain text
+#: en/rev-list-options.txt:715
+msgid ""
+"Only useful with one of the `--objects*`; omits objects (usually blobs) from "
+"the list of printed objects.  The '<filter-spec>' may be one of the "
+"following:"
+msgstr ""
+
+#. type: Plain text
+#: en/rev-list-options.txt:717
+msgid "The form '--filter=blob:none' omits all blobs."
+msgstr ""
+
+#. type: Plain text
+#: en/rev-list-options.txt:722
+msgid ""
+"The form '--filter=blob:limit=<n>[kmg]' omits blobs larger than n bytes or "
+"units.  n may be zero.  The suffixes k, m, and g can be used to name units "
+"in KiB, MiB, or GiB.  For example, 'blob:limit=1k' is the same as 'blob:"
+"limit=1024'."
+msgstr ""
+
+#. type: Plain text
+#: en/rev-list-options.txt:727
+msgid ""
+"The form '--filter=sparse:oid=<blob-ish>' uses a sparse-checkout "
+"specification contained in the blob (or blob-expression) '<blob-ish>' to "
+"omit blobs that would not be not required for a sparse checkout on the "
+"requested refs."
+msgstr ""
+
+#. type: Plain text
+#: en/rev-list-options.txt:730
+msgid ""
+"The form '--filter=sparse:path=<path>' similarly uses a sparse-checkout "
+"specification contained in <path>."
+msgstr ""
+
+#. type: Plain text
+#: en/rev-list-options.txt:740
+msgid ""
+"The form '--filter=tree:<depth>' omits all blobs and trees whose depth from "
+"the root tree is >= <depth> (minimum depth if an object is located at "
+"multiple depths in the commits traversed). <depth>=0 will not include any "
+"trees or blobs unless included explicitly in the command-line (or standard "
+"input when --stdin is used). <depth>=1 will include only the tree and blobs "
+"which are referenced directly by a commit reachable from <commit> or an "
+"explicitly-given object. <depth>=2 is like <depth>=1 while also including "
+"trees and blobs one more level removed from an explicitly-given commit or "
+"tree."
+msgstr ""
+
+#. type: Plain text
+#: en/rev-list-options.txt:743
+msgid "Turn off any previous `--filter=` argument."
+msgstr ""
+
+#. type: Labeled list
+#: en/rev-list-options.txt:744
+#, no-wrap
+msgid "--filter-print-omitted"
+msgstr ""
+
+#. type: Plain text
+#: en/rev-list-options.txt:747
+msgid ""
+"Only useful with `--filter=`; prints a list of the objects omitted by the "
+"filter.\tObject IDs are prefixed with a ``~'' character."
+msgstr ""
+
+#. type: Plain text
+#: en/rev-list-options.txt:754
+msgid ""
+"The form '--missing=error' requests that rev-list stop with an error if a "
+"missing object is encountered.  This is the default action."
+msgstr ""
+
+#. type: Plain text
+#: en/rev-list-options.txt:762
+msgid ""
+"The form '--missing=allow-promisor' is like 'allow-any', but will only allow "
+"object traversal to continue for EXPECTED promisor missing objects.  "
+"Unexpected missing objects will raise an error."
+msgstr ""
+
+#. type: Plain text
+#: en/rev-list-options.txt:765
+msgid ""
+"The form '--missing=print' is like 'allow-any', but will also print a list "
+"of the missing objects.  Object IDs are prefixed with a ``?'' character."
+msgstr ""
+
+#. type: Plain text
+#: en/rev-list-options.txt:772
+msgid ""
+"(For internal use only.)  Prefilter object traversal at promisor boundary.  "
+"This is used with partial clone.  This is stronger than `--missing=allow-"
+"promisor` because it limits the traversal, rather than just silencing errors "
+"about missing objects."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:698
+#: en/rev-list-options.txt:774
 #, no-wrap
 msgid "--no-walk[=(sorted|unsorted)]"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:706
+#: en/rev-list-options.txt:782
 msgid ""
 "Only show the given commits, but do not traverse their ancestors.  This has "
 "no effect if a range is specified. If the argument `unsorted` is given, the "
-"commits are shown in the order they were given on the command "
-"line. Otherwise (if `sorted` or no argument was given), the commits are "
-"shown in reverse chronological order by commit time.  Cannot be combined "
-"with `--graph`."
+"commits are shown in the order they were given on the command line. "
+"Otherwise (if `sorted` or no argument was given), the commits are shown in "
+"reverse chronological order by commit time.  Cannot be combined with `--"
+"graph`."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:707
+#: en/rev-list-options.txt:783
 #, no-wrap
 msgid "--do-walk"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:709
+#: en/rev-list-options.txt:785
 msgid "Overrides a previous `--no-walk`."
 msgstr ""
 
 #. type: Title ~
-#: en/rev-list-options.txt:711
+#: en/rev-list-options.txt:787
 #, no-wrap
 msgid "Commit Formatting"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:717
+#: en/rev-list-options.txt:793
 msgid ""
 "Using these options, linkgit:git-rev-list[1] will act similar to the more "
-"specialized family of commit log tools: linkgit:git-log[1], "
-"linkgit:git-show[1], and linkgit:git-whatchanged[1]"
+"specialized family of commit log tools: linkgit:git-log[1], linkgit:git-"
+"show[1], and linkgit:git-whatchanged[1]"
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:721
+#: en/rev-list-options.txt:797
 #, no-wrap
 msgid "--relative-date"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:723
+#: en/rev-list-options.txt:799
 msgid "Synonym for `--date=relative`."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:724
+#: en/rev-list-options.txt:800
 #, no-wrap
 msgid "--date=<format>"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:731
+#: en/rev-list-options.txt:807
 msgid ""
 "Only takes effect for dates shown in human-readable format, such as when "
 "using `--pretty`. `log.date` config variable sets a default value for the "
@@ -68252,74 +66376,83 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:735
+#: en/rev-list-options.txt:811
 msgid ""
 "`--date=relative` shows dates relative to the current time, e.g. ``2 hours "
 "ago''. The `-local` option has no effect for `--date=relative`."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:737
+#: en/rev-list-options.txt:813
 msgid "`--date=local` is an alias for `--date=default-local`."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:740
+#: en/rev-list-options.txt:816
 msgid ""
 "`--date=iso` (or `--date=iso8601`) shows timestamps in a ISO 8601-like "
 "format.  The differences to the strict ISO 8601 format are:"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:742
+#: en/rev-list-options.txt:818
 msgid "a space instead of the `T` date/time delimiter"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:743
+#: en/rev-list-options.txt:819
 msgid "a space between time and time zone"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:744
+#: en/rev-list-options.txt:820
 msgid "no colon between hours and minutes of the time zone"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:748
+#: en/rev-list-options.txt:824
 msgid ""
 "`--date=iso-strict` (or `--date=iso8601-strict`) shows timestamps in strict "
 "ISO 8601 format."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:751
+#: en/rev-list-options.txt:827
 msgid ""
 "`--date=rfc` (or `--date=rfc2822`) shows timestamps in RFC 2822 format, "
 "often found in email messages."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:753
+#: en/rev-list-options.txt:829
 msgid ""
-"`--date=short` shows only the date, but not the time, in `YYYY-MM-DD` "
-"format."
+"`--date=short` shows only the date, but not the time, in `YYYY-MM-DD` format."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:762
+#: en/rev-list-options.txt:838
 msgid ""
 "`--date=raw` shows the date as seconds since the epoch (1970-01-01 00:00:00 "
-"UTC), followed by a space, and then the timezone as an offset from UTC (a "
-"`+` or `-` with four digits; the first two are hours, and the second two are "
-"minutes). I.e., as if the timestamp were formatted with `strftime(\"%s "
-"%z\")`).  Note that the `-local` option does not affect the "
-"seconds-since-epoch value (which is always measured in UTC), but does switch "
-"the accompanying timezone value."
+"UTC), followed by a space, and then the timezone as an offset from UTC (a `"
+"+` or `-` with four digits; the first two are hours, and the second two are "
+"minutes). I.e., as if the timestamp were formatted with `strftime(\"%s %z"
+"\")`).  Note that the `-local` option does not affect the seconds-since-"
+"epoch value (which is always measured in UTC), but does switch the "
+"accompanying timezone value."
+msgstr ""
+
+#. type: Plain text
+#: en/rev-list-options.txt:845
+msgid ""
+"`--date=human` shows the timezone if the timezone does not match the current "
+"time-zone, and doesn't print the whole date if that matches (ie skip "
+"printing year for dates that are \"this year\", but also skip the whole date "
+"itself if it's in the last few days and we can just say what weekday it "
+"was).  For older dates the hour and minute is also omitted."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:766
+#: en/rev-list-options.txt:849
 msgid ""
 "`--date=unix` shows the date as a Unix epoch timestamp (seconds since "
 "1970).  As with `--raw`, this is always in UTC and therefore `-local` has no "
@@ -68327,98 +66460,98 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:772
+#: en/rev-list-options.txt:856
 msgid ""
-"`--date=format:...` feeds the format `...` to your system `strftime`.  Use "
-"`--date=format:%c` to show the date in your system locale's preferred "
-"format.  See the `strftime` manual for a complete list of format "
-"placeholders. When using `-local`, the correct syntax is "
-"`--date=format-local:...`."
+"`--date=format:...` feeds the format `...` to your system `strftime`, except "
+"for %z and %Z, which are handled internally.  Use `--date=format:%c` to show "
+"the date in your system locale's preferred format.  See the `strftime` "
+"manual for a complete list of format placeholders. When using `-local`, the "
+"correct syntax is `--date=format-local:...`."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:775
+#: en/rev-list-options.txt:859
 msgid ""
 "`--date=default` is the default format, and is similar to `--date=rfc2822`, "
 "with a few exceptions:"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:777
+#: en/rev-list-options.txt:861
 msgid "there is no comma after the day-of-week"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:779
+#: en/rev-list-options.txt:863
 msgid "the time zone is omitted when the local time zone is used"
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:781
+#: en/rev-list-options.txt:865
 #, no-wrap
 msgid "--header"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:784
+#: en/rev-list-options.txt:868
 msgid ""
 "Print the contents of the commit in raw-format; each record is separated "
 "with a NUL character."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:789
+#: en/rev-list-options.txt:873
 msgid ""
 "Print also the parents of the commit (in the form \"commit parent...\").  "
-"Also enables parent rewriting, see 'History Simplification' below."
+"Also enables parent rewriting, see 'History Simplification' above."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:790
+#: en/rev-list-options.txt:874
 #, no-wrap
 msgid "--children"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:793
+#: en/rev-list-options.txt:877
 msgid ""
 "Print also the children of the commit (in the form \"commit child...\").  "
-"Also enables parent rewriting, see 'History Simplification' below."
+"Also enables parent rewriting, see 'History Simplification' above."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:795
+#: en/rev-list-options.txt:879
 #, no-wrap
 msgid "--timestamp"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:797
+#: en/rev-list-options.txt:881
 msgid "Print the raw commit timestamp."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:799
+#: en/rev-list-options.txt:883
 #, no-wrap
 msgid "--left-right"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:804
+#: en/rev-list-options.txt:888
 msgid ""
 "Mark which side of a symmetric difference a commit is reachable from.  "
 "Commits from the left side are prefixed with `<` and those from the right "
-"with `>`.  If combined with `--boundary`, those commits are prefixed with "
-"`-`."
+"with `>`.  If combined with `--boundary`, those commits are prefixed with `-"
+"`."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:806
+#: en/rev-list-options.txt:890
 msgid "For example, if you have this topology:"
 msgstr ""
 
 #. type: delimited block -
-#: en/rev-list-options.txt:813
+#: en/rev-list-options.txt:897
 #, no-wrap
 msgid ""
 "\t     y---b---b  branch B\n"
@@ -68429,18 +66562,18 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:816
+#: en/rev-list-options.txt:900
 msgid "you would get an output like this:"
 msgstr ""
 
 #. type: delimited block -
-#: en/rev-list-options.txt:819
+#: en/rev-list-options.txt:903
 #, no-wrap
 msgid "\t$ git rev-list --left-right --boundary --pretty=oneline A...B\n"
 msgstr ""
 
 #. type: delimited block -
-#: en/rev-list-options.txt:826
+#: en/rev-list-options.txt:910
 #, no-wrap
 msgid ""
 "\t>bbbbbbb... 3rd on b\n"
@@ -68452,13 +66585,13 @@ msgid ""
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:828
+#: en/rev-list-options.txt:912
 #, no-wrap
 msgid "--graph"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:834
+#: en/rev-list-options.txt:918
 msgid ""
 "Draw a text-based graphical representation of the commit history on the left "
 "hand side of the output.  This may cause extra lines to be printed in "
@@ -68467,25 +66600,25 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:836
-msgid "This enables parent rewriting, see 'History Simplification' below."
+#: en/rev-list-options.txt:920
+msgid "This enables parent rewriting, see 'History Simplification' above."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:839
+#: en/rev-list-options.txt:923
 msgid ""
 "This implies the `--topo-order` option by default, but the `--date-order` "
 "option may also be specified."
 msgstr ""
 
 #. type: Labeled list
-#: en/rev-list-options.txt:840
+#: en/rev-list-options.txt:924
 #, no-wrap
 msgid "--show-linear-break[=<barrier>]"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:846
+#: en/rev-list-options.txt:930
 msgid ""
 "When --graph is not used, all history branches are flattened which can make "
 "it hard to see that the two consecutive commits do not belong to a linear "
@@ -68495,7 +66628,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:856
+#: en/rev-list-options.txt:940
 msgid ""
 "Print a number stating how many commits would have been listed, and suppress "
 "all other output.  When used together with `--left-right`, instead print the "
@@ -68505,13 +66638,13 @@ msgid ""
 msgstr ""
 
 #. type: Title ~
-#: en/rev-list-options.txt:860
+#: en/rev-list-options.txt:944
 #, no-wrap
 msgid "Diff Formatting"
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:865
+#: en/rev-list-options.txt:949
 msgid ""
 "Listed below are options that control the formatting of diff output.  Some "
 "of them are specific to linkgit:git-rev-list[1], however other diff options "
@@ -68519,7 +66652,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:872
+#: en/rev-list-options.txt:956
 msgid ""
 "With this option, diff output for a merge commit shows the differences from "
 "each of the parents to the merge result simultaneously instead of showing "
@@ -68528,7 +66661,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:878
+#: en/rev-list-options.txt:962
 msgid ""
 "This flag implies the `-c` option and further compresses the patch output by "
 "omitting uninteresting hunks whose contents in the parents have only two "
@@ -68536,31 +66669,31 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:886
+#: en/rev-list-options.txt:970
 msgid ""
 "This flag makes the merge commits show the full diff like regular commits; "
 "for each merge parent, a separate log entry and diff is generated. An "
-"exception is that only diff against the first parent is shown when "
-"`--first-parent` option is given; in that case, the output represents the "
-"changes the merge brought _into_ the then-current branch."
+"exception is that only diff against the first parent is shown when `--first-"
+"parent` option is given; in that case, the output represents the changes the "
+"merge brought _into_ the then-current branch."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:889
+#: en/rev-list-options.txt:973
 msgid "Show recursive diffs."
 msgstr ""
 
 #. type: Plain text
-#: en/rev-list-options.txt:892
+#: en/rev-list-options.txt:976
 msgid "Show the tree objects in the diff output. This implies `-r`."
 msgstr ""
 
 #. type: Plain text
 #: en/sequencer.txt:5
 msgid ""
-"Continue the operation in progress using the information in "
-"'.git/sequencer'.  Can be used to continue after resolving conflicts in a "
-"failed cherry-pick or revert."
+"Continue the operation in progress using the information in '.git/"
+"sequencer'.  Can be used to continue after resolving conflicts in a failed "
+"cherry-pick or revert."
 msgstr ""
 
 #. type: Plain text
@@ -68579,13 +66712,12 @@ msgstr ""
 #: en/transfer-data-leaks.txt:11
 msgid ""
 "The fetch and push protocols are not designed to prevent one side from "
-"stealing data from the other repository that was not intended to be "
-"shared. If you have private data that you need to protect from a malicious "
-"peer, your best option is to store it in another repository. This applies to "
-"both clients and servers. In particular, namespaces on a server are not "
-"effective for read access control; you should only grant read access to a "
-"namespace to clients that you would trust with read access to the entire "
-"repository."
+"stealing data from the other repository that was not intended to be shared. "
+"If you have private data that you need to protect from a malicious peer, "
+"your best option is to store it in another repository. This applies to both "
+"clients and servers. In particular, namespaces on a server are not effective "
+"for read access control; you should only grant read access to a namespace to "
+"clients that you would trust with read access to the entire repository."
 msgstr ""
 
 #. type: Plain text
@@ -68812,7 +66944,8 @@ msgstr ""
 
 #. type: Plain text
 #: en/urls.txt:19
-msgid "ssh://{startsb}user@{endsb}host.xz{startsb}:port{endsb}/path/to/repo.git/"
+msgid ""
+"ssh://{startsb}user@{endsb}host.xz{startsb}:port{endsb}/path/to/repo.git/"
 msgstr ""
 
 #. type: Plain text
@@ -68856,12 +66989,15 @@ msgstr ""
 
 #. type: Plain text
 #: en/urls.txt:36
-msgid "ssh://{startsb}user@{endsb}host.xz{startsb}:port{endsb}/~{startsb}user{endsb}/path/to/repo.git/"
+msgid ""
+"ssh://{startsb}user@{endsb}host.xz{startsb}:port{endsb}/~{startsb}"
+"user{endsb}/path/to/repo.git/"
 msgstr ""
 
 #. type: Plain text
 #: en/urls.txt:37
-msgid "git://host.xz{startsb}:port{endsb}/~{startsb}user{endsb}/path/to/repo.git/"
+msgid ""
+"git://host.xz{startsb}:port{endsb}/~{startsb}user{endsb}/path/to/repo.git/"
 msgstr ""
 
 #. type: Plain text
@@ -68917,8 +67053,8 @@ msgstr ""
 #: en/urls.txt:66
 msgid ""
 "where <address> may be a path, a server and path, or an arbitrary URL-like "
-"string recognized by the specific remote helper being invoked. See "
-"linkgit:gitremote-helpers[1] for details."
+"string recognized by the specific remote helper being invoked. See linkgit:"
+"gitremote-helpers[1] for details."
 msgstr ""
 
 #. type: Plain text
@@ -68956,8 +67092,8 @@ msgstr ""
 #: en/urls.txt:87
 msgid ""
 "a URL like \"work:repo.git\" or like \"host.xz:/path/to/repo.git\" will be "
-"rewritten in any context that takes a URL to be "
-"\"git://git.host.xz/repo.git\"."
+"rewritten in any context that takes a URL to be \"git://git.host.xz/repo.git"
+"\"."
 msgstr ""
 
 #. type: Plain text
@@ -68990,1413 +67126,3 @@ msgid ""
 "\"ssh://example.org/path/to/repo.git\" for pushes, but pulls will still use "
 "the original URL."
 msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:3
-msgid "Add file contents to the index."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:4
-#, no-wrap
-msgid "linkgit:git-am[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:6
-msgid "Apply a series of patches from a mailbox."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:7
-#, no-wrap
-msgid "linkgit:git-archive[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:9
-msgid "Create an archive of files from a named tree."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:10
-#, no-wrap
-msgid "linkgit:git-bisect[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:12
-msgid "Use binary search to find the commit that introduced a bug."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:13
-#, no-wrap
-msgid "linkgit:git-branch[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:15
-msgid "List, create, or delete branches."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:16
-#, no-wrap
-msgid "linkgit:git-bundle[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:18
-msgid "Move objects and refs by archive."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:19
-#, no-wrap
-msgid "linkgit:git-checkout[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:21
-msgid "Switch branches or restore working tree files."
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:24
-msgid "Apply the changes introduced by some existing commits."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:25
-#, no-wrap
-msgid "linkgit:git-citool[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:27
-msgid "Graphical alternative to git-commit."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:28
-#, no-wrap
-msgid "linkgit:git-clean[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:30
-msgid "Remove untracked files from the working tree."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:31
-#, no-wrap
-msgid "linkgit:git-clone[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:33
-msgid "Clone a repository into a new directory."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:34
-#, no-wrap
-msgid "linkgit:git-commit[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:36
-msgid "Record changes to the repository."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:37
-#, no-wrap
-msgid "linkgit:git-describe[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:39
-msgid "Give an object a human readable name based on an available ref."
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:42
-msgid "Show changes between commits, commit and working tree, etc."
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:45
-msgid "Download objects and refs from another repository."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:46
-#, no-wrap
-msgid "linkgit:git-format-patch[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:48
-msgid "Prepare patches for e-mail submission."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:49
-#, no-wrap
-msgid "linkgit:git-gc[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:51
-msgid "Cleanup unnecessary files and optimize the local repository."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:52
-#, no-wrap
-msgid "linkgit:git-grep[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:54
-msgid "Print lines matching a pattern."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:55
-#, no-wrap
-msgid "linkgit:git-gui[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:57
-msgid "A portable graphical interface to Git."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:58
-#, no-wrap
-msgid "linkgit:git-init[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:60
-msgid "Create an empty Git repository or reinitialize an existing one."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:61
-#, no-wrap
-msgid "linkgit:git-log[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:63
-msgid "Show commit logs."
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:66
-msgid "Join two or more development histories together."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:67
-#, no-wrap
-msgid "linkgit:git-mv[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:69
-msgid "Move or rename a file, a directory, or a symlink."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:70
-#, no-wrap
-msgid "linkgit:git-notes[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:72
-msgid "Add or inspect object notes."
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:75
-msgid "Fetch from and integrate with another repository or a local branch."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:76
-#, no-wrap
-msgid "linkgit:git-push[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:78
-msgid "Update remote refs along with associated objects."
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:81
-msgid "Reapply commits on top of another base tip."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:82
-#, no-wrap
-msgid "linkgit:git-reset[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:84
-msgid "Reset current HEAD to the specified state."
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:87
-msgid "Revert some existing commits."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:88
-#, no-wrap
-msgid "linkgit:git-rm[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:90
-msgid "Remove files from the working tree and from the index."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:91
-#, no-wrap
-msgid "linkgit:git-shortlog[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:93
-msgid "Summarize 'git log' output."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:94
-#, no-wrap
-msgid "linkgit:git-show[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:96
-msgid "Show various types of objects."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:97
-#, no-wrap
-msgid "linkgit:git-stash[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:99
-msgid "Stash the changes in a dirty working directory away."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:100
-#, no-wrap
-msgid "linkgit:git-status[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:102
-msgid "Show the working tree status."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:103
-#, no-wrap
-msgid "linkgit:git-submodule[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:105
-msgid "Initialize, update or inspect submodules."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:106
-#, no-wrap
-msgid "linkgit:git-tag[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:108
-msgid "Create, list, delete or verify a tag object signed with GPG."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-mainporcelain.txt:109
-#, no-wrap
-msgid "linkgit:git-worktree[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:111
-msgid "Manage multiple working trees."
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-mainporcelain.txt:114
-msgid "The Git repository browser."
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillarymanipulators.txt:3
-msgid "Get and set repository or global options."
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillarymanipulators.txt:6
-msgid "Git data exporter."
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillarymanipulators.txt:9
-msgid "Backend for fast Git data importers."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillarymanipulators.txt:10
-#, no-wrap
-msgid "linkgit:git-filter-branch[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillarymanipulators.txt:12
-msgid "Rewrite branches."
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillarymanipulators.txt:15
-msgid "Run merge conflict resolution tools to resolve merge conflicts."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillarymanipulators.txt:16
-#, no-wrap
-msgid "linkgit:git-pack-refs[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillarymanipulators.txt:18
-msgid "Pack heads and tags for efficient repository access."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillarymanipulators.txt:19
-#, no-wrap
-msgid "linkgit:git-prune[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillarymanipulators.txt:21
-msgid "Prune all unreachable objects from the object database."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillarymanipulators.txt:22
-#, no-wrap
-msgid "linkgit:git-reflog[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillarymanipulators.txt:24
-msgid "Manage reflog information."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillarymanipulators.txt:25
-#, no-wrap
-msgid "linkgit:git-remote[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillarymanipulators.txt:27
-msgid "Manage set of tracked repositories."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillarymanipulators.txt:28
-#, no-wrap
-msgid "linkgit:git-repack[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillarymanipulators.txt:30
-msgid "Pack unpacked objects in a repository."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillarymanipulators.txt:31
-#, no-wrap
-msgid "linkgit:git-replace[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillarymanipulators.txt:33
-msgid "Create, list, delete refs to replace objects."
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillaryinterrogators.txt:3
-msgid "Annotate file lines with commit information."
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillaryinterrogators.txt:6
-msgid "Show what revision and author last modified each line of a file."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillaryinterrogators.txt:7
-#, no-wrap
-msgid "linkgit:git-cherry[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillaryinterrogators.txt:9
-msgid "Find commits yet to be applied to upstream."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillaryinterrogators.txt:10
-#, no-wrap
-msgid "linkgit:git-count-objects[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillaryinterrogators.txt:12
-msgid "Count unpacked number of objects and their disk consumption."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillaryinterrogators.txt:13
-#, no-wrap
-msgid "linkgit:git-difftool[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillaryinterrogators.txt:15
-msgid "Show changes using common diff tools."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillaryinterrogators.txt:16
-#, no-wrap
-msgid "linkgit:git-fsck[1]"
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillaryinterrogators.txt:19
-#, no-wrap
-msgid "linkgit:git-get-tar-commit-id[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillaryinterrogators.txt:21
-msgid "Extract commit ID from an archive created using git-archive."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillaryinterrogators.txt:22
-#, no-wrap
-msgid "linkgit:git-help[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillaryinterrogators.txt:24
-msgid "Display help information about Git."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillaryinterrogators.txt:25
-#, no-wrap
-msgid "linkgit:git-instaweb[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillaryinterrogators.txt:27
-msgid "Instantly browse your working repository in gitweb."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillaryinterrogators.txt:28
-#, no-wrap
-msgid "linkgit:git-merge-tree[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillaryinterrogators.txt:30
-msgid "Show three-way merge without touching index."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillaryinterrogators.txt:31
-#, no-wrap
-msgid "linkgit:git-rerere[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillaryinterrogators.txt:33
-msgid "Reuse recorded resolution of conflicted merges."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillaryinterrogators.txt:34
-#, no-wrap
-msgid "linkgit:git-rev-parse[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillaryinterrogators.txt:36
-msgid "Pick out and massage parameters."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillaryinterrogators.txt:37
-#, no-wrap
-msgid "linkgit:git-show-branch[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillaryinterrogators.txt:39
-msgid "Show branches and their commits."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillaryinterrogators.txt:40
-#, no-wrap
-msgid "linkgit:git-verify-commit[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillaryinterrogators.txt:42
-msgid "Check the GPG signature of commits."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillaryinterrogators.txt:43
-#, no-wrap
-msgid "linkgit:git-verify-tag[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillaryinterrogators.txt:45
-msgid "Check the GPG signature of tags."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-ancillaryinterrogators.txt:46
-#, no-wrap
-msgid "linkgit:git-whatchanged[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillaryinterrogators.txt:48
-msgid "Show logs with difference each commit introduces."
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-ancillaryinterrogators.txt:51
-msgid "Git web interface (web frontend to Git repositories)."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-foreignscminterface.txt:1
-#, no-wrap
-msgid "linkgit:git-archimport[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-foreignscminterface.txt:3
-msgid "Import an Arch repository into Git."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-foreignscminterface.txt:4
-#, no-wrap
-msgid "linkgit:git-cvsexportcommit[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-foreignscminterface.txt:6
-msgid "Export a single commit to a CVS checkout."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-foreignscminterface.txt:7
-#, no-wrap
-msgid "linkgit:git-cvsimport[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-foreignscminterface.txt:9
-msgid "Salvage your data out of another SCM people love to hate."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-foreignscminterface.txt:10
-#, no-wrap
-msgid "linkgit:git-cvsserver[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-foreignscminterface.txt:12
-msgid "A CVS server emulator for Git."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-foreignscminterface.txt:13
-#, no-wrap
-msgid "linkgit:git-imap-send[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-foreignscminterface.txt:15
-msgid "Send a collection of patches from stdin to an IMAP folder."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-foreignscminterface.txt:16
-#, no-wrap
-msgid "linkgit:git-p4[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-foreignscminterface.txt:18
-msgid "Import from and submit to Perforce repositories."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-foreignscminterface.txt:19
-#, no-wrap
-msgid "linkgit:git-quiltimport[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-foreignscminterface.txt:21
-msgid "Applies a quilt patchset onto the current branch."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-foreignscminterface.txt:22
-#, no-wrap
-msgid "linkgit:git-request-pull[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-foreignscminterface.txt:24
-msgid "Generates a summary of pending changes."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-foreignscminterface.txt:25
-#, no-wrap
-msgid "linkgit:git-send-email[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-foreignscminterface.txt:27
-msgid "Send a collection of patches as emails."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-foreignscminterface.txt:28
-#, no-wrap
-msgid "linkgit:git-svn[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-foreignscminterface.txt:30
-msgid "Bidirectional operation between a Subversion repository and Git."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbingmanipulators.txt:1
-#, no-wrap
-msgid "linkgit:git-apply[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbingmanipulators.txt:3
-msgid "Apply a patch to files and/or to the index."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbingmanipulators.txt:4
-#, no-wrap
-msgid "linkgit:git-checkout-index[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbingmanipulators.txt:6
-msgid "Copy files from the index to the working tree."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbingmanipulators.txt:7
-#, no-wrap
-msgid "linkgit:git-commit-tree[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbingmanipulators.txt:9
-msgid "Create a new commit object."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbingmanipulators.txt:10
-#, no-wrap
-msgid "linkgit:git-hash-object[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbingmanipulators.txt:12
-msgid "Compute object ID and optionally creates a blob from a file."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbingmanipulators.txt:13
-#, no-wrap
-msgid "linkgit:git-index-pack[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbingmanipulators.txt:15
-msgid "Build pack index file for an existing packed archive."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbingmanipulators.txt:16
-#, no-wrap
-msgid "linkgit:git-merge-file[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbingmanipulators.txt:18
-msgid "Run a three-way file merge."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbingmanipulators.txt:19
-#, no-wrap
-msgid "linkgit:git-merge-index[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbingmanipulators.txt:21
-msgid "Run a merge for files needing merging."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbingmanipulators.txt:22
-#, no-wrap
-msgid "linkgit:git-mktag[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbingmanipulators.txt:24
-msgid "Creates a tag object."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbingmanipulators.txt:25
-#, no-wrap
-msgid "linkgit:git-mktree[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbingmanipulators.txt:27
-msgid "Build a tree-object from ls-tree formatted text."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbingmanipulators.txt:28
-#, no-wrap
-msgid "linkgit:git-pack-objects[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbingmanipulators.txt:30
-msgid "Create a packed archive of objects."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbingmanipulators.txt:31
-#, no-wrap
-msgid "linkgit:git-prune-packed[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbingmanipulators.txt:33
-msgid "Remove extra objects that are already in pack files."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbingmanipulators.txt:34
-#, no-wrap
-msgid "linkgit:git-read-tree[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbingmanipulators.txt:36
-msgid "Reads tree information into the index."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbingmanipulators.txt:37
-#, no-wrap
-msgid "linkgit:git-symbolic-ref[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbingmanipulators.txt:39
-msgid "Read, modify and delete symbolic refs."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbingmanipulators.txt:40
-#, no-wrap
-msgid "linkgit:git-unpack-objects[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbingmanipulators.txt:42
-msgid "Unpack objects from a packed archive."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbingmanipulators.txt:43
-#, no-wrap
-msgid "linkgit:git-update-index[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbingmanipulators.txt:45
-msgid "Register file contents in the working tree to the index."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbingmanipulators.txt:46
-#, no-wrap
-msgid "linkgit:git-update-ref[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbingmanipulators.txt:48
-msgid "Update the object name stored in a ref safely."
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbingmanipulators.txt:51
-msgid "Create a tree object from the current index."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbinginterrogators.txt:1
-#, no-wrap
-msgid "linkgit:git-cat-file[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbinginterrogators.txt:3
-msgid "Provide content or type and size information for repository objects."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbinginterrogators.txt:4
-#, no-wrap
-msgid "linkgit:git-diff-files[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbinginterrogators.txt:6
-msgid "Compares files in the working tree and the index."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbinginterrogators.txt:7
-#, no-wrap
-msgid "linkgit:git-diff-index[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbinginterrogators.txt:9
-msgid "Compare a tree to the working tree or index."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbinginterrogators.txt:10
-#, no-wrap
-msgid "linkgit:git-diff-tree[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbinginterrogators.txt:12
-msgid "Compares the content and mode of blobs found via two tree objects."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbinginterrogators.txt:13
-#, no-wrap
-msgid "linkgit:git-for-each-ref[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbinginterrogators.txt:15
-msgid "Output information on each ref."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbinginterrogators.txt:16
-#, no-wrap
-msgid "linkgit:git-ls-files[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbinginterrogators.txt:18
-msgid "Show information about files in the index and the working tree."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbinginterrogators.txt:19
-#, no-wrap
-msgid "linkgit:git-ls-remote[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbinginterrogators.txt:21
-msgid "List references in a remote repository."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbinginterrogators.txt:22
-#, no-wrap
-msgid "linkgit:git-ls-tree[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbinginterrogators.txt:24
-msgid "List the contents of a tree object."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbinginterrogators.txt:25
-#, no-wrap
-msgid "linkgit:git-merge-base[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbinginterrogators.txt:27
-msgid "Find as good common ancestors as possible for a merge."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbinginterrogators.txt:28
-#, no-wrap
-msgid "linkgit:git-name-rev[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbinginterrogators.txt:30
-msgid "Find symbolic names for given revs."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbinginterrogators.txt:31
-#, no-wrap
-msgid "linkgit:git-pack-redundant[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbinginterrogators.txt:33
-msgid "Find redundant pack files."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbinginterrogators.txt:34
-#, no-wrap
-msgid "linkgit:git-rev-list[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbinginterrogators.txt:36
-msgid "Lists commit objects in reverse chronological order."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbinginterrogators.txt:37
-#, no-wrap
-msgid "linkgit:git-show-index[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbinginterrogators.txt:39
-msgid "Show packed archive index."
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbinginterrogators.txt:42
-msgid "List references in a local repository."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbinginterrogators.txt:43
-#, no-wrap
-msgid "linkgit:git-unpack-file[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbinginterrogators.txt:45
-msgid "Creates a temporary file with a blob's contents."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbinginterrogators.txt:46
-#, no-wrap
-msgid "linkgit:git-var[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbinginterrogators.txt:48
-msgid "Show a Git logical variable."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-plumbinginterrogators.txt:49
-#, no-wrap
-msgid "linkgit:git-verify-pack[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-plumbinginterrogators.txt:51
-msgid "Validate packed Git archive files."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-synchingrepositories.txt:1
-#, no-wrap
-msgid "linkgit:git-daemon[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-synchingrepositories.txt:3
-msgid "A really simple server for Git repositories."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-synchingrepositories.txt:4
-#, no-wrap
-msgid "linkgit:git-fetch-pack[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-synchingrepositories.txt:6
-msgid "Receive missing objects from another repository."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-synchingrepositories.txt:7
-#, no-wrap
-msgid "linkgit:git-http-backend[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-synchingrepositories.txt:9
-msgid "Server side implementation of Git over HTTP."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-synchingrepositories.txt:10
-#, no-wrap
-msgid "linkgit:git-send-pack[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-synchingrepositories.txt:12
-msgid "Push objects over Git protocol to another repository."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-synchingrepositories.txt:13
-#, no-wrap
-msgid "linkgit:git-update-server-info[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-synchingrepositories.txt:15
-msgid "Update auxiliary info file to help dumb servers."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-synchelpers.txt:1
-#, no-wrap
-msgid "linkgit:git-http-fetch[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-synchelpers.txt:3
-msgid "Download from a remote Git repository via HTTP."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-synchelpers.txt:4
-#, no-wrap
-msgid "linkgit:git-http-push[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-synchelpers.txt:6
-msgid "Push objects over HTTP/DAV to another repository."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-synchelpers.txt:7
-#, no-wrap
-msgid "linkgit:git-parse-remote[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-synchelpers.txt:9
-msgid "Routines to help parsing remote repository access parameters."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-synchelpers.txt:10
-#, no-wrap
-msgid "linkgit:git-receive-pack[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-synchelpers.txt:12
-msgid "Receive what is pushed into the repository."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-synchelpers.txt:13
-#, no-wrap
-msgid "linkgit:git-shell[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-synchelpers.txt:15
-msgid "Restricted login shell for Git-only SSH access."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-synchelpers.txt:16
-#, no-wrap
-msgid "linkgit:git-upload-archive[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-synchelpers.txt:18
-msgid "Send archive back to git-archive."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-synchelpers.txt:19
-#, no-wrap
-msgid "linkgit:git-upload-pack[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-synchelpers.txt:21
-msgid "Send objects packed back to git-fetch-pack."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-purehelpers.txt:1
-#, no-wrap
-msgid "linkgit:git-check-attr[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-purehelpers.txt:3
-msgid "Display gitattributes information."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-purehelpers.txt:4
-#, no-wrap
-msgid "linkgit:git-check-ignore[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-purehelpers.txt:6
-msgid "Debug gitignore / exclude files."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-purehelpers.txt:7
-#, no-wrap
-msgid "linkgit:git-check-mailmap[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-purehelpers.txt:9
-msgid "Show canonical names and email addresses of contacts."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-purehelpers.txt:10
-#, no-wrap
-msgid "linkgit:git-check-ref-format[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-purehelpers.txt:12
-msgid "Ensures that a reference name is well formed."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-purehelpers.txt:13
-#, no-wrap
-msgid "linkgit:git-column[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-purehelpers.txt:15
-msgid "Display data in columns."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-purehelpers.txt:16
-#, no-wrap
-msgid "linkgit:git-credential[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-purehelpers.txt:18
-msgid "Retrieve and store user credentials."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-purehelpers.txt:19
-#, no-wrap
-msgid "linkgit:git-credential-cache[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-purehelpers.txt:21
-msgid "Helper to temporarily store passwords in memory."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-purehelpers.txt:22
-#, no-wrap
-msgid "linkgit:git-credential-store[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-purehelpers.txt:24
-msgid "Helper to store credentials on disk."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-purehelpers.txt:25
-#, no-wrap
-msgid "linkgit:git-fmt-merge-msg[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-purehelpers.txt:27
-msgid "Produce a merge commit message."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-purehelpers.txt:28
-#, no-wrap
-msgid "linkgit:git-interpret-trailers[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-purehelpers.txt:30
-msgid "add or parse structured information in commit messages."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-purehelpers.txt:31
-#, no-wrap
-msgid "linkgit:git-mailinfo[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-purehelpers.txt:33
-msgid "Extracts patch and authorship from a single e-mail message."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-purehelpers.txt:34
-#, no-wrap
-msgid "linkgit:git-mailsplit[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-purehelpers.txt:36
-msgid "Simple UNIX mbox splitter program."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-purehelpers.txt:37
-#, no-wrap
-msgid "linkgit:git-merge-one-file[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-purehelpers.txt:39
-msgid "The standard helper program to use with git-merge-index."
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-purehelpers.txt:42
-msgid "Compute unique ID for a patch."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-purehelpers.txt:43
-#, no-wrap
-msgid "linkgit:git-sh-i18n[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-purehelpers.txt:45
-msgid "Git's i18n setup code for shell scripts."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-purehelpers.txt:46
-#, no-wrap
-msgid "linkgit:git-sh-setup[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-purehelpers.txt:48
-msgid "Common Git shell script setup code."
-msgstr ""
-
-#. type: Labeled list
-#: en/cmds-purehelpers.txt:49
-#, no-wrap
-msgid "linkgit:git-stripspace[1]"
-msgstr ""
-
-#. type: Plain text
-#: en/cmds-purehelpers.txt:51
-msgid "Remove unnecessary whitespace."
-msgstr ""
-- 
GitLab