Skip to content
Snippets Groups Projects
Unverified Commit d2a2978d authored by 秃头灯笼鱼's avatar 秃头灯笼鱼 Committed by Hosted Weblate
Browse files

Translated using Weblate (Chinese (Simplified))

Currently translated at 28.5% (3129 of 10953 strings)

Translation: Git Manpages/Translations
Translate-URL: https://hosted.weblate.org/projects/git-manpages/translations/zh_Hans/


Signed-off-by: default avatar秃头灯笼鱼 <ttdlyu@163.com>
parent b6b668db
No related branches found
No related tags found
No related merge requests found
......@@ -3,7 +3,7 @@
# This file is distributed under the same license as the Git package.
# Matthias Aßhauer <mha1993@live.de>, 2019.
msgid ""
msgstr "Project-Id-Version: git documentation\nReport-Msgid-Bugs-To: jn.avila@free.fr\nPOT-Creation-Date: 2022-11-26 21:11+0100\nPO-Revision-Date: 2023-02-16 02:48+0000\nLast-Translator: taotieren <admin@taotieren.com>\nLanguage-Team: LANGUAGE <LL@li.org>\nLanguage: zh_HANS-CN\nMIME-Version: 1.0\nContent-Type: text/plain; charset=UTF-8\nContent-Transfer-Encoding: 8bit\nPlural-Forms: nplurals=1; plural=0;\nX-Generator: Weblate 4.16-dev\n"
msgstr "Project-Id-Version: git documentation\nReport-Msgid-Bugs-To: jn.avila@free.fr\nPOT-Creation-Date: 2022-11-26 21:11+0100\nPO-Revision-Date: 2023-02-18 23:49+0000\nLast-Translator: 秃头灯笼鱼 <ttdlyu@163.com>\nLanguage-Team: LANGUAGE <LL@li.org>\nLanguage: zh_HANS-CN\nMIME-Version: 1.0\nContent-Type: text/plain; charset=UTF-8\nContent-Transfer-Encoding: 8bit\nPlural-Forms: nplurals=1; plural=0;\nX-Generator: Weblate 4.16-dev\n"
 
#. type: Labeled list
#: en/blame-options.txt:1 en/diff-options.txt:763 en/git-instaweb.txt:45 en/git-mailinfo.txt:49 en/git-mailsplit.txt:35 en/git-repack.txt:146 en/git-status.txt:31
......@@ -4518,9 +4518,9 @@ msgstr "例如,如果你将 `diff.algorithm` 变量配置为非默认值,但
 
#. type: Labeled list
#: en/diff-options.txt:198
#, fuzzy, no-wrap, priority:280
#, no-wrap, priority:280
msgid "--stat[=<width>[,<name-width>[,<count>]]]"
msgstr "--stat[=<width>[,<name-width>[,<count>]]]"
msgstr "--stat[=<宽度>[,<名称宽度>[,<数值>]]]"
 
#. type: Plain text
#: en/diff-options.txt:212
......@@ -4820,9 +4820,9 @@ msgstr "\t这和 `--color=never` 相同。\n"
 
#. type: Labeled list
#: en/diff-options.txt:352
#, fuzzy, no-wrap, priority:280
#, no-wrap, priority:280
msgid "--color-moved[=<mode>]"
msgstr "--color-moved[=<mode>]"
msgstr "--color-moved[=<模式>]"
 
#. type: Plain text
#: en/diff-options.txt:354
......@@ -4934,9 +4934,9 @@ msgstr "关闭移动检测。这可以用来覆盖配置设置。它与 `--color
 
#. type: Labeled list
#: en/diff-options.txt:395
#, fuzzy, no-wrap, priority:280
#, no-wrap, priority:280
msgid "--color-moved-ws=<modes>"
msgstr "--color-moved-ws=<modes>"
msgstr "--color-moved-ws=<模式>"
 
#. type: Plain text
#: en/diff-options.txt:398
......@@ -5108,9 +5108,9 @@ msgstr "正则表达式也可以通过差异程序或配置选项来设置,参
 
#. type: Labeled list
#: en/diff-options.txt:475
#, fuzzy, no-wrap, priority:280
#, no-wrap, priority:280
msgid "--color-words[=<regex>]"
msgstr "--color-words[=<regex>]"
msgstr "--color-words[=<正则表达式>]"
 
#. type: Plain text
#: en/diff-options.txt:478
......@@ -5315,7 +5315,7 @@ msgstr "出于性能考虑,默认情况下,`-C` 选项只在复制的原始
 
#. type: Labeled list
#: en/diff-options.txt:589 en/git-branch.txt:104 en/git-http-push.txt:45
#, fuzzy, no-wrap, priority:280
#, no-wrap, priority:280
msgid "-D"
msgstr "-D"
 
......@@ -5376,7 +5376,7 @@ msgstr "请注意,并不是所有的差异都能包含所有类型。例如,
 
#. type: Labeled list
#: en/diff-options.txt:634
#, fuzzy, no-wrap, priority:280
#, no-wrap, priority:280
msgid "-S<string>"
msgstr "-S<string>"
 
......@@ -5400,9 +5400,9 @@ msgstr "二进制文件也会被搜索到。"
 
#. type: Labeled list
#: en/diff-options.txt:647
#, fuzzy, no-wrap, priority:280
#, no-wrap, priority:280
msgid "-G<regex>"
msgstr "-G<regex>"
msgstr "-G<正则表达式>"
 
#. type: Plain text
#: en/diff-options.txt:650
......@@ -5448,9 +5448,9 @@ msgstr "更多信息请参见 linkgit:gitdiffcore[7] 中的 'pickaxe' 条目。"
 
#. type: Labeled list
#: en/diff-options.txt:671
#, fuzzy, no-wrap, priority:280
#, no-wrap, priority:280
msgid "--find-object=<object-id>"
msgstr "--find-object=<object-id>"
msgstr "--find-object=<对象ID>"
 
#. type: Plain text
#: en/diff-options.txt:676
......@@ -6506,25 +6506,14 @@ msgstr "概述"
 
#. type: Plain text
#: en/git-add.txt:16
#, fuzzy, ignore-ellipsis, no-wrap, priority:300
#| 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-from-file=<file> [--pathspec-file-nul]]\n"
#| "\t [--] [<pathspec>...]\n"
#, ignore-ellipsis, no-wrap, priority:300
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]] [--sparse]\n"
"\t [--intent-to-add | -N] [--refresh] [--ignore-errors] [--ignore-missing] [--renormalize]\n"
"\t [--chmod=(+|-)x] [--pathspec-from-file=<file> [--pathspec-file-nul]]\n"
"\t [--] [<pathspec>...]\n"
msgstr ""
"'git add' [--verbose | -v] [--dry-run | -n] [--force | -f] [--interactive | -i] [--patch | -p]\n"
"\t [--edit | -e] [--[no-]all | --[no-]ignore-removal | [--update | -u]] [--sparse]\n"
"\t [--intent-to-add | -N] [--refresh] [--ignore-errors] [--ignore-missing] [--renormalize]\n"
"\t [--chmod=(+|-)x] [--pathspec-from-file=<file> [--pathspec-file-nul]]\n"
"\t [--] [<pathspec>...]\n"
msgstr "'git add' [--verbose | -v] [--dry-run | -n] [--force | -f] [--interactive | -i] [--patch | -p]\n\t [--edit | -e] [--[no-]all | --[no-]ignore-removal | [--update | -u]] [--sparse]\n\t [--intent-to-add | -N] [--refresh] [--ignore-errors] [--ignore-missing] [--renormalize]\n\t [--chmod=(+|-)x] [--pathspec-from-file=<file> [--pathspec-file-nul]]\n\t [--] [<pathspec>...]\n"
 
#. type: Title -
#: en/git-add.txt:18 en/git-am.txt:24 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:18 en/git-branch.txt:29 en/git-bugreport.txt:15 en/git-bundle.txt:19 en/git-cat-file.txt:22 en/git-check-attr.txt:16 en/git-check-ignore.txt:16 en/git-check-mailmap.txt:16 en/git-checkout-index.txt:20 en/git-checkout.txt:20 en/git-check-ref-format.txt:17 en/git-cherry-pick.txt:16 en/git-cherry.txt:14 en/git-citool.txt:14 en/git-clean.txt:14 en/git-clone.txt:23 en/git-column.txt:15 en/git-commit-tree.txt:18 en/git-commit.txt:21 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:28 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:20 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:33 en/git-fmt-merge-msg.txt:16 en/git-for-each-ref.txt:18 en/git-format-patch.txt:37 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:35 en/git-gui.txt:14 en/git-hash-object.txt:17 en/git-help.txt:19 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:19 en/git-instaweb.txt:16 en/git-interpret-trailers.txt:16 en/git-log.txt:15 en/git-ls-files.txt:26 en/git-ls-remote.txt:17 en/git-ls-tree.txt:17 en/git-mailinfo.txt:18 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:17 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:22 en/git-pack-redundant.txt:15 en/git-pack-refs.txt:14 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-range-diff.txt:18 en/git-read-tree.txt:18 en/git-rebase.txt:18 en/git-receive-pack.txt:15 en/git-reflog.txt:21 en/git-remote-ext.txt:14 en/git-remote-fd.txt:13 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:17 en/git-restore.txt:16 en/git-revert.txt:15 en/git-rev-list.txt:15 en/git-rev-parse.txt:15 en/git-rm.txt:16 en/git-send-email.txt:18 en/git-send-pack.txt:19 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:28 en/git-status.txt:15 en/git-stripspace.txt:16 en/git-submodule.txt:27 en/git-svn.txt:14 en/git-switch.txt:17 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:32 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:23 en/git-write-tree.txt:15 en/gitglossary.txt:13
......@@ -6594,13 +6583,13 @@ msgstr "有关 <指定路径> 格式的更多细节,请参考 linkgit:gitgloss
 
#. type: Plain text
#: en/git-add.txt:73
#, fuzzy, priority:300
#, priority:300
msgid "Don't actually add the file(s), just show if they exist and/or will be ignored."
msgstr "实际上不添加文件,仅展示文件是否存在或是否忽略。"
 
#. type: Plain text
#: en/git-add.txt:81
#, fuzzy, priority:300
#, priority:300
msgid "Allow adding otherwise ignored files."
msgstr "允许添加已被忽略的文件。"
 
......@@ -15144,7 +15133,7 @@ msgstr "--also-filter-submodules"
#: en/git-clone.txt:189
#, priority:300
msgid "Also apply the partial clone filter to any submodules in the repository. Requires `--filter` and `--recurse-submodules`. This can be turned on by default by setting the `clone.filterSubmodules` config option."
msgstr ""
msgstr "同时对版本库中的任何子模块应用部分克隆过滤器。 需要`--fliter`和`--recurse-submodules`。这可以通过设置 `clone.filterSubmodules` 配置项来默认开启。"
 
#. type: Labeled list
#: en/git-clone.txt:190 en/git-push.txt:161
......@@ -15154,9 +15143,9 @@ msgstr "--mirror"
 
#. type: Plain text
#: en/git-clone.txt:197
#, fuzzy, priority:300
#, priority:300
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."
msgstr "建立源存储库的镜像。这含 `--bare` 选项。与 `--bare` 相比,`--mirror` 不仅将源的本地分支映射到目标的本地分支,还映射所有引用(包括远程跟踪分支,注释等)并设置了 refspec 配置,因而在目标存储库中执行 `git remote update` 时,所有这些引用都会被重写。"
msgstr "建立源存储库的镜像。这默认包含 `--bare` 选项。与 `--bare` 相比,`--mirror` 不仅将源的本地分支映射到目标的本地分支,还映射所有引用(包括远程跟踪分支,注释等)并设置了引用规范,因而在目标存储库中执行 `git remote update` 时,所有这些引用都会被覆盖。"
 
#. type: Labeled list
#: en/git-clone.txt:198
......@@ -15172,9 +15161,9 @@ msgstr "--origin <名称>"
 
#. type: Plain text
#: en/git-clone.txt:203
#, fuzzy, priority:300
#, priority:300
msgid "Instead of using the remote name `origin` to keep track of the upstream repository, use `<name>`. Overrides `clone.defaultRemoteName` from the config."
msgstr "不使用远程名称 `origin` 来跟踪上游存储库,而使用`<名称>`。"
msgstr "不使用远程名称`origin`来跟踪远程仓库,而使用`<name>`值。 这会覆盖配置中`clone.defaultRemoteName`的设置。"
 
#. type: Labeled list
#: en/git-clone.txt:204
......@@ -15391,13 +15380,13 @@ msgstr "要克隆到的新目录的名称。如果未明确指定目录,则使
#: en/git-clone.txt:326
#, no-wrap, priority:300
msgid "--bundle-uri=<uri>"
msgstr ""
msgstr "--bundle-uri=<uri>"
 
#. type: Plain text
#: en/git-clone.txt:332
#, priority:300
msgid "Before fetching from the remote, fetch a bundle from the given `<uri>` and unbundle the data into the local repository. The refs in the bundle will be stored under the hidden `refs/bundle/*` namespace. This option is incompatible with `--depth`, `--shallow-since`, and `--shallow-exclude`."
msgstr ""
msgstr "在从远程获取之前,从给定的`<uri>`中获取一个捆绑包,并将数据解绑到本地资源库中。捆绑包中的引用将被存储在隐藏的 `refs/bundle/*` 命名空间下。该选项不与`--depth`、`--shallow--scince`、`--shallow--exclude`兼容。"
 
#. type: Plain text
#: en/git-clone.txt:340
......@@ -15477,7 +15466,7 @@ msgstr "git-column(1)"
#: en/git-column.txt:7
#, priority:100
msgid "git-column - Display data in columns"
msgstr ""
msgstr "git-column - 以列展示数据"
 
#. type: Plain text
#: en/git-column.txt:13
......@@ -15485,37 +15474,37 @@ msgstr ""
msgid ""
"'git column' [--command=<name>] [--[raw-]mode=<mode>] [--width=<width>]\n"
"\t [--indent=<string>] [--nl=<string>] [--padding=<n>]\n"
msgstr ""
msgstr "'git column' [--command=<名称>] [--[raw-]mode=<模式>] [--width=<宽度>]\n\t [--indent=<字符串>] [--nl=<字符串>] [--padding=<n>]\n"
 
#. type: Plain text
#: en/git-column.txt:20
#, priority:100
msgid "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 ""
msgstr "该命令将其标准输入的行格式化为一个多列表格。每个输入行占据表格的一个单元。它被其他Git命令内部使用,以将输出信息格式化为列。"
 
#. type: Labeled list
#: en/git-column.txt:23
#, no-wrap, priority:100
msgid "--command=<name>"
msgstr ""
msgstr "--command=<名称>"
 
#. type: Plain text
#: en/git-column.txt:26
#, priority:100
msgid "Look up layout mode using configuration variable column.<name> and column.ui."
msgstr ""
msgstr "使用配置变量column.<名称>和column.ui查询布局模式。"
 
#. type: Labeled list
#: en/git-column.txt:27
#, fuzzy, no-wrap, priority:100
#, no-wrap, priority:100
msgid "--mode=<mode>"
msgstr "--mode=<mode>"
msgstr "--mode=<模式>"
 
#. type: Plain text
#: en/git-column.txt:30
#, priority:100
msgid "Specify layout mode. See configuration variable column.ui for option syntax in linkgit:git-config[1]."
msgstr ""
msgstr "指定布局模式。选项的语法见 linkgit:git-config[1] 中column.ui变量的配置。"
 
#. type: Labeled list
#: en/git-column.txt:31
......@@ -15527,43 +15516,43 @@ msgstr "--raw-mode=<n>"
#: en/git-column.txt:34
#, priority:100
msgid "Same as --mode but take mode encoded as a number. This is mainly used by other commands that have already parsed layout mode."
msgstr ""
msgstr "与--模式选项相同,但该选项将模式编码为一个数字。这主要是被其他已经解析了布局模式的命令使用。"
 
#. type: Labeled list
#: en/git-column.txt:35
#, fuzzy, no-wrap, priority:100
#, no-wrap, priority:100
msgid "--width=<width>"
msgstr "--width=<width>"
msgstr "--width=<宽度>"
 
#. type: Plain text
#: en/git-column.txt:38
#, priority:100
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 ""
msgstr "指定终端的宽度。默认情况下,'git column'会检测终端宽度,如果无法检测,则会将其宽度设置为80。"
 
#. type: Labeled list
#: en/git-column.txt:39
#, fuzzy, no-wrap, priority:100
#, no-wrap, priority:100
msgid "--indent=<string>"
msgstr "--indent=<string>"
msgstr "--indent=<字符串>"
 
#. type: Plain text
#: en/git-column.txt:41
#, priority:100
msgid "String to be printed at the beginning of each line."
msgstr ""
msgstr "设置要在每一行的开头打印的字符串。"
 
#. type: Labeled list
#: en/git-column.txt:42
#, fuzzy, no-wrap, priority:100
#, no-wrap, priority:100
msgid "--nl=<string>"
msgstr "--indent=<string>"
msgstr "--indent=<字符串>"
 
#. type: Plain text
#: en/git-column.txt:45
#, priority:100
msgid "String to be printed at the end of each line, including newline character."
msgstr ""
msgstr "在每一行的末尾要打印的字符串,包括换行符。"
 
#. type: Labeled list
#: en/git-column.txt:46
......@@ -15575,13 +15564,13 @@ msgstr "--padding=<N>"
#: en/git-column.txt:48
#, priority:100
msgid "The number of spaces between columns. One space by default."
msgstr ""
msgstr "列之间的空格数,默认为一个空格。"
 
#. type: Plain text
#: en/git-column.txt:53
#, priority:100
msgid "Format data by columns:"
msgstr ""
msgstr "按列格式化数据:"
 
#. type: delimited block -
#: en/git-column.txt:58
......@@ -15601,7 +15590,7 @@ msgstr ""
#: en/git-column.txt:61
#, priority:100
msgid "Format data by rows:"
msgstr ""
msgstr "按行格式化数据:"
 
#. type: delimited block -
#: en/git-column.txt:66
......@@ -15621,7 +15610,7 @@ msgstr ""
#: en/git-column.txt:69
#, priority:100
msgid "List some tags in a table with unequal column widths:"
msgstr ""
msgstr "在一个列宽不等的表格中列出一些标签:"
 
#. type: delimited block -
#: en/git-column.txt:75
......@@ -15722,9 +15711,9 @@ msgstr ""
 
#. type: Labeled list
#: en/git-commit-tree.txt:53 en/git-fmt-merge-msg.txt:42
#, fuzzy, no-wrap, priority:100
#, no-wrap, priority:100
msgid "-m <message>"
msgstr "-m <message>"
msgstr "-m <信息>"
 
#. type: Plain text
#: en/git-commit-tree.txt:56
......@@ -16676,7 +16665,7 @@ msgstr "git-config(1)"
#: en/git-config.txt:7
#, priority:100
msgid "git-config - Get and set repository or global options"
msgstr ""
msgstr "git-config - 获取和设置仓库或全局选项"
 
#. type: Plain text
#: en/git-config.txt:27
......@@ -16697,97 +16686,97 @@ msgid ""
"'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 ""
msgstr "'git config' [<file-option>] [--type=<type>] [--fixed-value] [--show-origin] [--show-scope] [-z|--null] <name> [<value> [<value-pattern>]]\n'git config' [<file-option>] [--type=<type>] --add <name> <value>\n'git config' [<file-option>] [--type=<type>] [--fixed-value] --replace-all <name> <value> [<value-pattern>]\n'git config' [<file-option>] [--type=<type>] [--show-origin] [--show-scope] [-z|--null] [--fixed-value] --get <name> [<value-pattern>]\n'git config' [<file-option>] [--type=<type>] [--show-origin] [--show-scope] [-z|--null] [--fixed-value] --get-all <name> [<value-pattern>]\n'git config' [<file-option>] [--type=<type>] [--show-origin] [--show-scope] [-z|--null] [--fixed-value] [--name-only] --get-regexp <name-regex> [<value-pattern>]\n'git config' [<file-option>] [--type=<type>] [-z|--null] --get-urlmatch <name> <URL>\n'git config' [<file-option>] [--fixed-value] --unset <name> [<value-pattern>]\n'git config' [<file-option>] [--fixed-value] --unset-all <name> [<value-pattern>]\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] [--show-scope] [-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# file-opon:配置文件;\n"
 
#. type: Plain text
#: en/git-config.txt:33
#, priority:100
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 ""
msgstr "你可以用这个命令查询/设置/替换/取消选项。名称(name)实际上是用点隔开的节和键,值(value)会被转义。"
 
#. type: Plain text
#: en/git-config.txt:43
#, priority:100
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 `value-pattern` (which is an extended regular expression, unless the `--fixed-value` option is given) needs to be given. Only the existing values that match the pattern are updated or unset. If you want to handle the lines that do *not* match the pattern, just prepend a single exclamation mark in front (see also <<EXAMPLES>>), but note that this only works when the `--fixed-value` option is not in use."
msgstr ""
msgstr "通过使用`--add`选项,可以为一个选项添加多行。 如果你想更新或取消一个可以出现在多行的选项,需要给出一个`value-pattern`(这是一个扩展的正则表达式,除非给出`--fixed-value`选项)。 只有符合该模式的现有值被更新或取消设置。 如果你想处理不符合模式的行,只需在前面加上一个感叹号(参见<<例子>>),但注意这只在没有使用`--fixed-value`选项时有效。"
 
#. type: Plain text
#: en/git-config.txt:48
#, priority:100
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 ""
msgstr "`--type=<类型>`选项指示'git config'确保传入和传出的值在给定的<类型>下是可以被规范化的。 如果没有给定`--type=<类型>`,将不执行规范化。调用者可以用`--no-type`取消现有的`--type`指定器。"
 
#. type: Plain text
#: en/git-config.txt:54
#, priority:100
msgid "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 ""
msgstr "读取配置时,默认从系统、全局和资源库的本地配置文件中读取数值,选项`--系统(system)`、`--全局(global)`、`--(local)`、`--工作区(worktree)`和`--文件(file)<文件名>`可以用来告诉命令只从选定的位置读取(见<<文件>>)。"
 
#. type: Plain text
#: en/git-config.txt:60
#, priority:100
msgid "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 ""
msgstr "写入时,新值默认写入版本库的本地配置文件,选项`--system(系统)`、`--global(全局)`、`--worktree(工作区)`、`--file(文件) <filename>`可以用来告诉命令写到那个位置(你可以给出`--local(本地)`选项,但是默认选项就是本地(local))。"
 
#. type: Plain text
#: en/git-config.txt:63
#, priority:100
msgid "This command will fail with non-zero status upon error. Some exit codes are:"
msgstr ""
msgstr "该命令出错时将以非零状态失败。 以下是一些退出代码:"
 
#. type: Plain text
#: en/git-config.txt:65
#, priority:100
msgid "The section or key is invalid (ret=1),"
msgstr ""
msgstr "该节或键无效(退出代码为1),"
 
#. type: Plain text
#: en/git-config.txt:66
#, priority:100
msgid "no section or name was provided (ret=2),"
msgstr ""
msgstr "没有提供节或键(退出值为2),"
 
#. type: Plain text
#: en/git-config.txt:67
#, priority:100
msgid "the config file is invalid (ret=3),"
msgstr ""
msgstr "配置文件无效(退出代码为3),"
 
#. type: Plain text
#: en/git-config.txt:68
#, priority:100
msgid "the config file cannot be written (ret=4),"
msgstr ""
msgstr "配置文件无法写入(退出代码为4),"
 
#. type: Plain text
#: en/git-config.txt:69
#, priority:100
msgid "you try to unset an option which does not exist (ret=5),"
msgstr ""
msgstr "你试图取消一个不存在的选项(退出代码为5),"
 
#. type: Plain text
#: en/git-config.txt:70
#, priority:100
msgid "you try to unset/set an option for which multiple lines match (ret=5), or"
msgstr ""
msgstr "你试图取消/设置一个多行匹配的选项(退出代码为5),或"
 
#. type: Plain text
#: en/git-config.txt:71
#, priority:100
msgid "you try to use an invalid regexp (ret=6)."
msgstr ""
msgstr "试图使用一个无效的正则表达式(退出代码为6)。"
 
#. type: Plain text
#: en/git-config.txt:73
#, priority:100
msgid "On success, the command returns the exit code 0."
msgstr ""
msgstr "执行成功时,该命令返回退出代码0。"
 
#. type: Plain text
#: en/git-config.txt:76
#, priority:100
msgid "A list of all available configuration variables can be obtained using the `git help --config` command."
msgstr ""
msgstr "所有可用配置变量的列表可以通过`git help --config`命令获取。"
 
#. type: Labeled list
#: en/git-config.txt:81
......@@ -16799,7 +16788,7 @@ msgstr "--replace-all"
#: en/git-config.txt:84
#, priority:100
msgid "Default behavior is to replace at most one line. This replaces all lines matching the key (and optionally the `value-pattern`)."
msgstr ""
msgstr "默认行为是最多替换一行。这将会替换所有与键(以及可选的`value-pattern`)匹配的行。"
 
#. type: Labeled list
#: en/git-config.txt:85 en/git-update-index.txt:44
......@@ -16811,7 +16800,7 @@ msgstr "--add"
#: en/git-config.txt:89
#, priority:100
msgid "Adds a new line to the option without altering any existing values. This is the same as providing '^$' as the `value-pattern` in `--replace-all`."
msgstr ""
msgstr "不改变任何现有的值的情况下,在选项中增加一个新的行。 这与在`--replace-all`中提供'^$'作为`value-pattern` 是一样的。"
 
#. type: Labeled list
#: en/git-config.txt:90
......@@ -16823,7 +16812,7 @@ msgstr "--get"
#: en/git-config.txt:94
#, priority:100
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 ""
msgstr "获取一个给定的键的值(可选择通过与该值相匹配的正则表达式进行过滤)。如果没有找到键值,返回错误代码1;如果找到多个键值,则返回最后一个值。"
 
#. type: Labeled list
#: en/git-config.txt:95
......@@ -16835,7 +16824,7 @@ msgstr "--get-all"
#: en/git-config.txt:97
#, priority:100
msgid "Like get, but returns all values for a multi-valued key."
msgstr ""
msgstr "和--get一样,但是返回一个多值键的所有值。"
 
#. type: Labeled list
#: en/git-config.txt:98
......@@ -16847,19 +16836,19 @@ msgstr "--get-regexp"
#: en/git-config.txt:104
#, priority:100
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 ""
msgstr "像 --get-all 一样,但是用正则表达式作为,并写出键名。 正则表达式匹配目前是区分大小写的,并且是针对一个规范化的键的版本进行的,其中节(section)和变量名称是小写的,但子节名称不是小写的。"
 
#. type: Labeled list
#: en/git-config.txt:105
#, fuzzy, no-wrap, priority:100
#, no-wrap, priority:100
msgid "--get-urlmatch <name> <URL>"
msgstr "--get-urlmatch name URL"
msgstr "--get-urlmatch <名称> <URL>"
 
#. type: Plain text
#: en/git-config.txt:112
#, priority:100
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."
msgstr ""
msgstr "当给定一个由两部分组成的名称section.key时,返回section.<URL>.key的值,其<URL>部分是给定的最相匹配的URL(如果没有这样的键存在,section.key的值将作为备用值)。 当只给出section的名称时,对section中的所有key进行处理,并将其列出。 如果没有找到值,返回错误代码1(section: 节,key:键;在配置文件中是这样的[section] key=value)。"
 
#. type: Labeled list
#: en/git-config.txt:113
......@@ -16871,19 +16860,19 @@ msgstr "--global"
#: en/git-config.txt:118
#, priority:100
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 ""
msgstr "对于写入选项:写入全局的`~/.gitconfig`文件而不是仓库的`.git/config`文件,如果该文件存在而`~/.gitconfig`文件不存在,则写入`$XDG_CONFIG_HOME/git/config`文件。"
 
#. type: Plain text
#: en/git-config.txt:121
#, priority:100
msgid "For reading options: read only from global `~/.gitconfig` and from `$XDG_CONFIG_HOME/git/config` rather than from all available files."
msgstr ""
msgstr "对于读取选项:只从全局的`~/.gitconfig`和`$XDG_CONFIG_HOME/git/config`中读取,而不是从所有可用文件中读取。"
 
#. type: Plain text
#: en/git-config.txt:123 en/git-config.txt:133 en/git-config.txt:142 en/git-config.txt:161 en/git-config.txt:409
#, priority:100
msgid "See also <<FILES>>."
msgstr ""
msgstr "另请参见<<文件>>。"
 
#. type: Labeled list
#: en/git-config.txt:124
......@@ -16895,25 +16884,25 @@ msgstr "--system"
#: en/git-config.txt:128
#, priority:100
msgid "For writing options: write to system-wide `$(prefix)/etc/gitconfig` rather than the repository `.git/config`."
msgstr ""
msgstr "对于写选项:写到系统范围内的`$(prefix)/etc/gitconfig`文件中,而不是仓库中的`.git/config`文件。"
 
#. type: Plain text
#: en/git-config.txt:131
#, priority:100
msgid "For reading options: read only from system-wide `$(prefix)/etc/gitconfig` rather than from all available files."
msgstr ""
msgstr "对于读取选项:只从系统范围内的`$(prefix)/etc/gitconfig`读取,而不是从所有可用文件中读取。"
 
#. type: Plain text
#: en/git-config.txt:137
#, priority:100
msgid "For writing options: write to the repository `.git/config` file. This is the default behavior."
msgstr ""
msgstr "对于写选项:写到版本库的`.git/config`文件中。 这是默认行为。"
 
#. type: Plain text
#: en/git-config.txt:140
#, priority:100
msgid "For reading options: read only from the repository `.git/config` rather than from all available files."
msgstr ""
msgstr "对于读取选项:只从存储库`.git/config`中读取,而不是从所有可用文件中读取。"
 
#. type: Labeled list
#: en/git-config.txt:143 en/git-restore.txt:59
......@@ -16925,43 +16914,43 @@ msgstr "--worktree"
#: en/git-config.txt:151
#, priority:100
msgid "Similar to `--local` except that `$GIT_DIR/config.worktree` is read from or written to if `extensions.worktreeConfig` is enabled. If not it's the same as `--local`. Note that `$GIT_DIR` is equal to `$GIT_COMMON_DIR` for the main working tree, but is of the form `$GIT_DIR/worktrees/<id>/` for other working trees. See linkgit:git-worktree[1] to learn how to enable `extensions.worktreeConfig`."
msgstr ""
msgstr "与`--local`类似,只是如果启用了`extensions.worktreeConfig`,则从`$GIT_DIR/config.worktree`读取或写入。如果没有,则与`--local`相同。注意,对于主工作区,`$GIT_DIR`等于`$GIT_COMMON_DIR`,但对于其他工作区,它的形式是`$GIT_DIR/worktrees/<id>/`。了解如何启用 `extensions.worktreeConfig`,参见 linkgit:git-worktree[1] 。"
 
#. type: Labeled list
#: en/git-config.txt:152
#, fuzzy, no-wrap, priority:100
#, no-wrap, priority:100
msgid "-f <config-file>"
msgstr "--file config-file"
msgstr "-f <配置文件>"
 
#. type: Labeled list
#: en/git-config.txt:153
#, fuzzy, no-wrap, priority:100
#, no-wrap, priority:100
msgid "--file <config-file>"
msgstr "--file config-file"
msgstr "--file <配置文件>"
 
#. type: Plain text
#: en/git-config.txt:156
#, priority:100
msgid "For writing options: write to the specified file rather than the repository `.git/config`."
msgstr ""
msgstr "对于写入选项:写到指定的文件,而不是仓库`.git/config`。"
 
#. type: Plain text
#: en/git-config.txt:159
#, priority:100
msgid "For reading options: read only from the specified file rather than from all available files."
msgstr ""
msgstr "对于读取选项:只从指定的文件而不是从所有可用的文件中读取。"
 
#. type: Labeled list
#: en/git-config.txt:162
#, fuzzy, no-wrap, priority:100
#, no-wrap, priority:100
msgid "--blob <blob>"
msgstr "--blob blob"
msgstr "--blob <二进制对象>"
 
#. type: Plain text
#: en/git-config.txt:168
#, priority:100
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."
msgstr ""
msgstr "类似于`--file`,但使用指定的二进制对象而不是文件。例如,你可以使用'master:.gitmodules'来读取主分支中'.gitmodules'文件中的值。参见 linkgit:gitrevisions[7] 中的 \"指定的修正\"部分,以获得更完整的二进制对象名称拼写方式。"
 
#. type: Labeled list
#: en/git-config.txt:169
......@@ -16973,7 +16962,7 @@ msgstr "--remove-section"
#: en/git-config.txt:171
#, priority:100
msgid "Remove the given section from the configuration file."
msgstr ""
msgstr "从配置文件中删除了该节。"
 
#. type: Labeled list
#: en/git-config.txt:172
......@@ -16985,7 +16974,7 @@ msgstr "--rename-section"
#: en/git-config.txt:174
#, priority:100
msgid "Rename the given section to a new name."
msgstr ""
msgstr "将给定的节重命名为一个新的名称。"
 
#. type: Labeled list
#: en/git-config.txt:175
......@@ -17009,13 +16998,13 @@ msgstr "--unset-all"
#: en/git-config.txt:180
#, priority:100
msgid "Remove all lines matching the key from config file."
msgstr ""
msgstr "从配置文件中删除所有匹配该键的行。"
 
#. type: Plain text
#: en/git-config.txt:184
#, priority:100
msgid "List all variables set in config file, along with their values."
msgstr ""
msgstr "列出配置文件中设置的所有变量,以及它们的值。"
 
#. type: Labeled list
#: en/git-config.txt:185
......@@ -17027,13 +17016,13 @@ msgstr "--fixed-value"
#: en/git-config.txt:190
#, priority:100
msgid "When used with the `value-pattern` argument, treat `value-pattern` as an exact string instead of a regular expression. This will restrict the name/value pairs that are matched to only those where the value is exactly equal to the `value-pattern`."
msgstr ""
msgstr "当与`value-pattern`参数一起使用时,将`value-pattern`视为精确的字符串,而不是正则表达式。这将使得被匹配的名称/值对,只有那些值与`value-pattern'完全相等的名称/值对。"
 
#. type: Labeled list
#: en/git-config.txt:191
#, fuzzy, no-wrap, priority:100
#, no-wrap, priority:100
msgid "--type <type>"
msgstr "--type <type>"
msgstr "--type <类型>"
 
#. type: Plain text
#: en/git-config.txt:195
......@@ -57677,19 +57666,19 @@ msgstr "path old-file old-hex old-mode new-file new-hex new-mode"
#: en/git.txt:612
#, priority:100
msgid "where:"
msgstr "位置:"
msgstr "使用:"
 
#. type: Labeled list
#: en/git.txt:613
#, no-wrap, priority:100
msgid "<old|new>-file"
msgstr ""
msgstr "<old|new>-file"
 
#. type: Plain text
#: en/git.txt:615
#, priority:100
msgid "are files GIT_EXTERNAL_DIFF can use to read the contents of <old|new>,"
msgstr ""
msgstr "是GIT_EXTERNAL_DIFF用来读取<old|new>内容的文件,"
 
#. type: Labeled list
#: en/git.txt:615
......@@ -57701,7 +57690,7 @@ msgstr "<old|new>-hex"
#: en/git.txt:616
#, priority:100
msgid "are the 40-hexdigit SHA-1 hashes,"
msgstr ""
msgstr "是40个十六进制的SHA-1哈希值,"
 
#. type: Labeled list
#: en/git.txt:616
......@@ -57713,19 +57702,19 @@ msgstr "<old|new>-mode"
#: en/git.txt:617
#, priority:100
msgid "are the octal representation of the file modes."
msgstr ""
msgstr "是文件模式的八进制表示法。"
 
#. type: Plain text
#: en/git.txt:623
#, priority:100
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."
msgstr ""
msgstr "文件参数可以指向用户的工作文件(例如 \"git-diff-files \"中的`new-file`),`/dev/null`(例如在添加新文件时的`old-file`),或一个临时文件(例如索引中的`old-file`)。 无需担心`GIT_EXTERNAL_DIFF`对临时文件的链接是否解除——当`GIT_EXTERNAL_DIFF`退出时,它会被删除。"
 
#. type: Plain text
#: en/git.txt:626
#, priority:100
msgid "For a path that is unmerged, `GIT_EXTERNAL_DIFF` is called with 1 parameter, <path>."
msgstr ""
msgstr "`GIT_EXTERNAL_DIFF`被调用时,对于未合并的路径可通过<path>进行设置。"
 
#. type: Plain text
#: en/git.txt:629
......@@ -62746,13 +62735,13 @@ msgstr "请注意,我们特意选择在提交对象层面上,不对提交日
#: en/includes/cmd-config-section-all.txt:3
#, priority:300
msgid "Everything below this line in this section is selectively included from the linkgit:git-config[1] documentation. The content is the same as what's found there:"
msgstr ""
msgstr "本节中这一行以下的内容都是从 linkgit:git-config[1] 文档中摘录的。其内容与那里的内容相同:"
 
#. type: Plain text
#: en/includes/cmd-config-section-rest.txt:3
#, priority:280
msgid "Everything above this line in this section isn't included from the linkgit:git-config[1] documentation. The content that follows is the same as what's found there:"
msgstr ""
msgstr "本节中这一行以上的内容并不包括在 linkgit:git-config[1] 文档中。下面的内容与那里的内容相同:"
 
#. type: Plain text
#: en/line-range-format.txt:2
......@@ -65932,7 +65921,7 @@ msgstr "--since=<date>"
#: en/rev-list-options.txt:32
#, priority:260
msgid "Show all commits more recent than a specific date. This visits all commits in the range, rather than stopping at the first commit which is older than a specific date."
msgstr ""
msgstr "显示所有比指定日期更近的提交。这将访问该范围内的所有提交,而不是停在第一个比指定日期更早的提交。"
 
#. type: Labeled list
#: en/rev-list-options.txt:33
......@@ -66167,7 +66156,7 @@ msgstr "--exclude-first-parent-only"
#: en/rev-list-options.txt:150
#, priority:260
msgid "When finding commits to exclude (with a '{caret}'), follow only the first parent commit upon seeing a merge commit. This can be used to find the set of changes in a topic branch from the point where it diverged from the remote branch, given that arbitrary merges can be valid topic branch changes."
msgstr ""
msgstr "在寻找要排除的提交(用'{caret}')时,在看到合并提交时只跟随第一个父提交。 考虑到任意的合并都可以成为有效的主题分支变化,这可以用来查找主题分支中从它与远程分支的分歧点开始的变化集合。"
 
#. type: Plain text
#: en/rev-list-options.txt:154
......@@ -66897,13 +66886,13 @@ msgstr "还有一种简化模式可用。"
#: en/rev-list-options.txt:587
#, priority:260
msgid "Limit the displayed commits to those which are an ancestor of <commit>, or which are a descendant of <commit>, or are <commit> itself."
msgstr ""
msgstr "将显示的提交限制在<提交>的祖先,或<提交>的后代,或<提交>本身。"
 
#. type: Plain text
#: en/rev-list-options.txt:589
#, priority:260
msgid "As an example use case, consider the following commit history:"
msgstr "作为一个用例,请考虑以下提交历史"
msgstr "作为一个用例,请考虑以下提交历史"
 
#. type: delimited block -
#: en/rev-list-options.txt:596
......@@ -66953,59 +66942,48 @@ msgstr ""
#: en/rev-list-options.txt:622
#, priority:260
msgid "We can also use `--ancestry-path=D` instead of `--ancestry-path` which means the same thing when applied to the 'D..M' range but is just more explicit."
msgstr ""
msgstr "我们也可以用`--ancestry-path=D`来代替`--ancestry-path`,这在应用于'D...M'范围时意思相同,只是更加明确。"
 
#. type: Plain text
#: en/rev-list-options.txt:627
#, priority:260
msgid "If we instead are interested in a given topic within this range, and all commits affected by that topic, we may only want to view the subset of `D..M` which contain that topic in their ancestry path. So, using `--ancestry-path=H D..M` for example would result in:"
msgstr ""
msgstr "如果我们感兴趣的是这个范围内的某个主题,以及受该主题影响的所有提交,我们可能只想查看祖先路径中包含该主题的`D...M`子集。 因此,以`--ancestry-path=H D...M`为例,会形成以下结果:"
 
#. type: delimited block -
#: en/rev-list-options.txt:634
#, fuzzy, no-wrap, priority:260
#| msgid ""
#| "\t\tE-------F\n"
#| "\t\t \\ \\\n"
#| "\t\t G---H---I---J\n"
#| "\t\t\t \\\n"
#| "\t\t\t\tL--M\n"
#, no-wrap, priority:260
msgid ""
"\t\tE\n"
"\t\t \\\n"
"\t\t G---H---I---J\n"
"\t\t\t \\\n"
"\t\t\t\tL--M\n"
msgstr ""
"\t\tE-------F\n"
"\t\t \\ \\\n"
"\t\t G--H--I--J\n"
"\t\t\t \\\n"
"\t\t\t\tL--M\n"
msgstr "\t\tE\n\t\t \\\n\t\t G---H---I---J\n\t\t\t \\\n\t\t\t\tL--M\n"
 
#. type: Plain text
#: en/rev-list-options.txt:637
#, priority:260
msgid "Whereas `--ancestry-path=K D..M` would result in"
msgstr ""
msgstr "而`--ancestry-path=K D...M`会形成以下结果"
 
#. type: delimited block -
#: en/rev-list-options.txt:640
#, no-wrap, priority:260
msgid "\t\tK---------------L--M\n"
msgstr ""
msgstr "\t\tK---------------L--M\n"
 
#. type: Plain text
#: en/rev-list-options.txt:644
#, priority:260
msgid "Before discussing another option, `--show-pulls`, we need to create a new example history."
msgstr "在讨论另一个选项,`--显示--推力'之前,我们需要创建一个新的历史实例。"
msgstr "在讨论另一个选项,`--show-pulls`之前,我们需要创建一个新的历史实例。"
 
#. type: Plain text
#: en/rev-list-options.txt:649
#, priority:260
msgid "A common problem users face when looking at simplified history is that a commit they know changed a file somehow does not appear in the file's simplified history. Let's demonstrate a new example and show how options such as `--full-history` and `--simplify-merges` works in that case:"
msgstr "用户在查看简化历史时经常遇到的一个问题是,他们知道的对某个文件的修改提交并没有出现在该文件的简化历史中。让我们演示一个新的例子,并说明`--full-history`和`--simplify-merges`等选项在这种情况下是如何工作的"
msgstr "用户在查看简化的提交历史时经常遇到的一个问题是,他们知道的对某个文件的修改提交并没有出现在该文件的简史中。让我们演示一个新的例子,并说明`--full-history`和`--simplify-merges`等选项在这种情况下是如何工作的"
 
#. type: delimited block -
#: en/rev-list-options.txt:657
......@@ -67029,13 +67007,13 @@ msgstr ""
#: en/rev-list-options.txt:670
#, priority:260
msgid "For this example, suppose `I` created `file.txt` which was modified by `A`, `B`, and `X` in different ways. The single-parent commits `C`, `Z`, and `Y` do not change `file.txt`. The merge commit `M` was created by resolving the merge conflict to include both changes from `A` and `B` and hence is not TREESAME to either. The merge commit `R`, however, was created by ignoring the contents of `file.txt` at `M` and taking only the contents of `file.txt` at `X`. Hence, `R` is TREESAME to `X` but not `M`. Finally, the natural merge resolution to create `N` is to take the contents of `file.txt` at `R`, so `N` is TREESAME to `R` but not `C`. The merge commits `O` and `P` are TREESAME to their first parents, but not to their second parents, `Z` and `Y` respectively."
msgstr "在这个例子中,假设`I`创建了`file.txt`,并被`A`、`B`和`X`以不同方式修改。单亲提交的`C`、`Z`和`Y`没有修改`file.txt`。合并提交 \"M \"是通过解决合并冲突而产生的,包括了 \"A \"和 \"B \"的修改,因此与其中任何一个都不是同源的。然而,合并提交`R`是通过忽略`M`处的`file.txt`的内容,而只采用`X`处的`file.txt`的内容而产生的。因此,`R`与`X`是同源的,但不是`M`。最后,创建`N'的自然合并决议是取`file.txt`在`R'的内容,所以`N'与`R'是同源的,但不是`C'。 合并提交的 \"O \"和 \"P \"与它们的第一代父母是同源的,但与它们的第二代父母 \"Z \"和 \"Y \"则不是同源的。"
msgstr "在这个例子中,假设`I`创建了`file.txt`,并被`A`、`B`和`X`以不同方式修改。单亲提交的`C`、`Z`和`Y`没有修改`file.txt`。合并提交 `M`是通过解决合并冲突而产生的,包括了 `A `和 `B `的修改,因此与其中任何一个都不是同源的。然而,合并提交`R`是通过忽略`M`处的`file.txt`的内容,而只采用`X`处的`file.txt`的内容而产生的。因此,`R`与`X`是同源的,但不是`M`。最后,创建`N'的自然合并决议是取`file.txt`在`R'的内容,所以`N'与`R`是同源的,但不是`C`。 合并提交的 `O` 和 `P` 与它们的第一代父母是同源的,但与它们的第二代父母 `Z` 和 `Y `则不是同源的。"
 
#. type: Plain text
#: en/rev-list-options.txt:674
#, priority:260
msgid "When using the default mode, `N` and `R` both have a TREESAME parent, so those edges are walked and the others are ignored. The resulting history graph is:"
msgstr "当使用默认模式时,`N'和`R'都有一个TREESAME父级,所以这些边被,其他被忽略。由此产生的历史图是"
msgstr "当使用默认模式时,`N'和`R`都有一个TREESAME父级,所以这些边被展示出来,其他被忽略。由此产生的历史图是"
 
#. type: delimited block -
#: en/rev-list-options.txt:677
......@@ -67875,25 +67853,25 @@ msgstr "打印一个数字,说明有多少提交会被列出,并抑制所有
#: en/sequencer.txt:5
#, priority:100
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."
msgstr ""
msgstr "使用`.git/sequencer`中的信息继续进行中的操作。 可以用来在解决拣选或还原失败的冲突后继续执行。"
 
#. type: Plain text
#: en/sequencer.txt:9
#, priority:100
msgid "Skip the current commit and continue with the rest of the sequence."
msgstr ""
msgstr "跳过当前的提交,继续进行队列中其余的命令。"
 
#. type: Plain text
#: en/sequencer.txt:14
#, priority:100
msgid "Forget about the current operation in progress. Can be used to clear the sequencer state after a failed cherry-pick or revert."
msgstr ""
msgstr "忽略当前正在进行的操作。 可以用来在拣选或还原失败之后清除序列器的状态。"
 
#. type: Plain text
#: en/sequencer.txt:16
#, priority:100
msgid "Cancel the operation and return to the pre-sequence state."
msgstr ""
msgstr "取消操作并返回到预排序状态。"
 
#. type: Labeled list
#: en/signoff-option.txt:5
......@@ -68314,7 +68292,7 @@ msgstr "类似于 \"git://example.org/path/to/repo.git\" 的 URL 会被重写为
#: en/git-bisect-lk2009.txt:2
#, no-wrap, priority:100
msgid "Fighting regressions with git bisect"
msgstr ""
msgstr "用Git二分查找解决回归问题"
 
#. type: Title -
#: en/git-bisect-lk2009.txt:8
......@@ -68326,7 +68304,7 @@ msgstr "摘要"
#: en/git-bisect-lk2009.txt:17
#, priority:100
msgid "\"git bisect\" enables software users and developers to easily find the commit that introduced a regression. We show why it is important to have good tools to fight regressions. We describe how \"git bisect\" works from the outside and the algorithms it uses inside. Then we explain how to take advantage of \"git bisect\" to improve current practices. And we discuss how \"git bisect\" could improve in the future."
msgstr ""
msgstr "\"Git二分查找\"使软件用户和开发者能够轻松找到引入回归的提交。我们展示了为什么拥有好的工具来对抗回归是很重要的。我们描述了 \"Git二分查找 \"从外部如何工作,以及它在内部使用的算法。然后我们解释如何利用 \"Git二分查找\"来改进当前的实践。我们还讨论了 \"Git二分查找\"在未来可以如何改进。"
 
#. type: Title -
#: en/git-bisect-lk2009.txt:20
......@@ -68338,151 +68316,151 @@ msgstr "Introduction to \"git bisect\""
#: en/git-bisect-lk2009.txt:24
#, priority:100
msgid "Git is a Distributed Version Control system (DVCS) created by Linus Torvalds and maintained by Junio Hamano."
msgstr ""
msgstr "Git是一个分布式版本控制系统(DVCS),由Linus Torvalds(一般指 林纳斯·本纳第克特·托瓦兹;Linux之父)创建,由Junio Hamano( Junio C Hamano;滨野 纯)维护。"
 
#. type: Plain text
#: en/git-bisect-lk2009.txt:30
#, priority:100
msgid "In Git like in many other Version Control Systems (VCS), the different states of the data that is managed by the system are called commits. And, as VCS are mostly used to manage software source code, sometimes \"interesting\" changes of behavior in the software are introduced in some commits."
msgstr ""
msgstr "在Git中,像许多其他版本控制系统(VCS)一样,由系统管理的数据的不同状态被称为提交。而且,由于版本控制系统主要用于管理软件源代码,有时会在一些提交中引入软件中 \"有趣 \"的行为变化。"
 
#. type: Plain text
#: en/git-bisect-lk2009.txt:37
#, priority:100
msgid "In fact people are specially interested in commits that introduce a \"bad\" behavior, called a bug or a regression. They are interested in these commits because a commit (hopefully) contains a very small set of source code changes. And it's much easier to understand and properly fix a problem when you only need to check a very small set of changes, than when you don't know where look in the first place."
msgstr ""
msgstr "事实上,人们对那些引入 \"坏 \"行为的提交特别感兴趣,这些行为被称为错误或回归。他们之所以对这些提交感兴趣,是因为一个提交(希望)只包含一组非常小的源代码改动。当你只需要检查很小的改动时,理解和正确修复一个问题要比你不知道从哪里找问题容易得多。"
 
#. type: Plain text
#: en/git-bisect-lk2009.txt:45
#, priority:100
msgid "So to help people find commits that introduce a \"bad\" behavior, the \"git bisect\" set of commands was invented. And it follows of course that in \"git bisect\" parlance, commits where the \"interesting behavior\" is present are called \"bad\" commits, while other commits are called \"good\" commits. And a commit that introduce the behavior we are interested in is called a \"first bad commit\". Note that there could be more than one \"first bad commit\" in the commit space we are searching."
msgstr ""
msgstr "所以为了帮助人们找到引入 \"坏 \"行为的提交,发明了 \"Git二分查找\"命令集。当然,在 \"Git二分查找\"的说法中,存在 \"有趣行为 \"的提交被称为 \"坏 \"提交,而其他提交被称为 \"好 \"提交。而引入我们感兴趣的行为的提交被称为 \"第一个坏提交\"。请注意,在我们搜索的提交空间中,可能存在不止一个 \"第一个坏提交\"。"
 
#. type: Plain text
#: en/git-bisect-lk2009.txt:48
#, priority:100
msgid "So \"git bisect\" is designed to help find a \"first bad commit\". And to be as efficient as possible, it tries to perform a binary search."
msgstr ""
msgstr "因此,\"Git二分查找\"被设计用来帮助找到 \"第一个坏提交\"。为了尽可能的高效,它试图进行二分查找。"
 
#. type: Title -
#: en/git-bisect-lk2009.txt:51
#, no-wrap, priority:100
msgid "Fighting regressions overview"
msgstr ""
msgstr "解决回归概述"
 
#. type: Title ~
#: en/git-bisect-lk2009.txt:54
#, no-wrap, priority:100
msgid "Regressions: a big problem"
msgstr ""
msgstr "回归:一个大问题"
 
#. type: Plain text
#: en/git-bisect-lk2009.txt:58
#, priority:100
msgid "Regressions are a big problem in the software industry. But it's difficult to put some real numbers behind that claim."
msgstr ""
msgstr "回归是软件行业的一个大问题。但是很难用数字来说明这个问题。"
 
#. type: Plain text
#: en/git-bisect-lk2009.txt:61
#, priority:100
msgid "There are some numbers about bugs in general, like a NIST study in 2002 <<1>> that said:"
msgstr ""
msgstr "有一些关于一般bug的数字,比如2002年NIST的一项研究<<1>>写道:"
 
#. type: delimited block _
#: en/git-bisect-lk2009.txt:78
#, priority:100
msgid "Software bugs, or errors, are so prevalent and so detrimental that they cost the U.S. economy an estimated $59.5 billion annually, or about 0.6 percent of the gross domestic product, according to a newly released study commissioned by the Department of Commerce's National Institute of Standards and Technology (NIST). At the national level, over half of the costs are borne by software users and the remainder by software developers/vendors. The study also found that, although all errors cannot be removed, more than a third of these costs, or an estimated $22.2 billion, could be eliminated by an improved testing infrastructure that enables earlier and more effective identification and removal of software defects. These are the savings associated with finding an increased percentage (but not 100 percent) of errors closer to the development stages in which they are introduced. Currently, over half of all errors are not found until \"downstream\" in the development process or during post-sale software use."
msgstr ""
msgstr "根据美国商务部国家标准与技术研究所(NIST)新近发布的一项研究,软件缺陷或错误是非常普遍且是灾难性的,以至于它们每年给美国经济造成约595亿美元的损失,或约占国内生产总值的0.6%。在全国范围内,超过一半的成本由软件用户承担,其余的由软件开发商/供应商承担。 该研究还发现,尽管所有的错误都无法消除,但通过改进测试基础架构,能够更早、更有效地识别和消除软件缺陷,可以消除这些成本的三分之一以上,即估计为222亿美元。这些都是在更接近错误发生的开发阶段发现更高比例(但不是100%)的错误所带来的节约。目前,超过一半的错误是在开发过程的 \"下游 \"或售后软件使用期间才被发现的。"
 
#. type: Plain text
#: en/git-bisect-lk2009.txt:81
#, priority:100
msgid "And then:"
msgstr ""
msgstr "然后:"
 
#. type: delimited block _
#: en/git-bisect-lk2009.txt:87
#, priority:100
msgid "Software developers already spend approximately 80 percent of development costs on identifying and correcting defects, and yet few products of any type other than software are shipped with such high levels of errors."
msgstr ""
msgstr "软件开发人员已经将大约80%的开发成本用于识别和纠正缺陷,然而,除了软件之外,很少有其他类型的产品在出厂时出现如此高的错误。"
 
#. type: Plain text
#: en/git-bisect-lk2009.txt:90
#, priority:100
msgid "Eventually the conclusion started with:"
msgstr ""
msgstr "最终结论是:"
 
#. type: delimited block _
#: en/git-bisect-lk2009.txt:94
#, priority:100
msgid "The path to higher software quality is significantly improved software testing."
msgstr ""
msgstr "改善软件测试是通往更高的软件质量的道路最为有效的方式。"
 
#. type: Plain text
#: en/git-bisect-lk2009.txt:98
#, priority:100
msgid "There are other estimates saying that 80% of the cost related to software is about maintenance <<2>>."
msgstr ""
msgstr "还有人估计说,与软件有关的成本中有80%是关于维护的<<2>>。"
 
#. type: Plain text
#: en/git-bisect-lk2009.txt:100
#, priority:100
msgid "Though, according to Wikipedia <<3>>:"
msgstr ""
msgstr "尽管,根据维基百科<<3>>的说法:"
 
#. type: delimited block _
#: en/git-bisect-lk2009.txt:108
#, priority:100
msgid "A common perception of maintenance is that it is merely fixing bugs. However, studies and surveys over the years have indicated that the majority, over 80%, of the maintenance effort is used for non-corrective actions (Pigosky 1997). This perception is perpetuated by users submitting problem reports that in reality are functionality enhancements to the system."
msgstr ""
msgstr "人们对维护工作的普遍看法是,它仅仅是在修复错误。然而,多年来的研究和调查表明,大部分(超过80%)的维护工作都是用于非纠正性的行动(Pigosky 1997)。用户提交的问题报告实际上是对系统功能的提升,这使得这种看法得以延续。"
 
#. type: Plain text
#: en/git-bisect-lk2009.txt:113
#, priority:100
msgid "But we can guess that improving on existing software is very costly because you have to watch out for regressions. At least this would make the above studies consistent among themselves."
msgstr ""
msgstr "但我们可以猜测,在现有软件上进行改进的代价是非常昂贵的,因为你必须注意功能退步的问题。至少这可以使上述研究之间保持一致。"
 
#. type: Plain text
#: en/git-bisect-lk2009.txt:121
#, priority:100
msgid "Of course some kind of software is developed, then used during some time without being improved on much, and then finally thrown away. In this case, of course, regressions may not be a big problem. But on the other hand, there is a lot of big software that is continually developed and maintained during years or even tens of years by a lot of people. And as there are often many people who depend (sometimes critically) on such software, regressions are a really big problem."
msgstr ""
msgstr "当然,有些软件被开发出来,然后在一段时间内使用中,没有得到很大的改进,最后被废弃。当然,在这种情况下,退步可能不是一个大问题。但另一方面,有很多大型软件是由很多人在几年甚至几十几年的时间里不断开发和维护的。由于经常有许多人依赖这种软件(有时是关键性的),所以回归是一个真正的大问题。"
 
#. type: Plain text
#: en/git-bisect-lk2009.txt:128
#, priority:100
msgid "One such software is the Linux kernel. And if we look at the Linux kernel, we can see that a lot of time and effort is spent to fight regressions. The release cycle start with a 2 weeks long merge window. Then the first release candidate (rc) version is tagged. And after that about 7 or 8 more rc versions will appear with around one week between each of them, before the final release."
msgstr ""
msgstr "Linux内核就是这样一个软件。如果我们看一下Linux内核,我们可以看到花了大量的时间和精力来对抗退步。发布周期从2周的合并窗口开始。然后,第一个候选版本(rc)被标记。在那之后,在最终发布之前,大约还有7到8个rc版本会出现,每个版本之间相隔一周左右。"
 
#. type: Plain text
#: en/git-bisect-lk2009.txt:134
#, priority:100
msgid "The time between the first rc release and the final release is supposed to be used to test rc versions and fight bugs and especially regressions. And this time is more than 80% of the release cycle time. But this is not the end of the fight yet, as of course it continues after the release."
msgstr ""
msgstr "从第一个rc版本到最终版本之间的时间应该是用来测试rc版本和解决bug,特别是回归bug。而这段时间占到了发布周期的80%以上。发布并不意味着战斗结束,因为bug在发布后还会继续出现。"
 
#. type: Plain text
#: en/git-bisect-lk2009.txt:137
#, priority:100
msgid "And then this is what Ingo Molnar (a well known Linux kernel developer) says about his use of git bisect:"
msgstr ""
msgstr "然后这是Ingo Molnar(一位知名的Linux内核开发者)对他正在使用的Git二分查找的评价:"
 
#. type: delimited block _
#: en/git-bisect-lk2009.txt:143
#, priority:100
msgid "I most actively use it during the merge window (when a lot of trees get merged upstream and when the influx of bugs is the highest) - and yes, there have been cases that i used it multiple times a day. My average is roughly once a day."
msgstr ""
msgstr "我在合并窗口期最积极地使用它(当大量的树被合并到上游时,也是bug涌入最多的时候),有一些情况下,我一天要多次使用。我的平均使用频率大约是每天一次。"
 
#. type: Plain text
#: en/git-bisect-lk2009.txt:149
#, priority:100
msgid "So regressions are fought all the time by developers, and indeed it is well known that bugs should be fixed as soon as possible, so as soon as they are found. That's why it is interesting to have good tools for this purpose."
msgstr ""
msgstr "因此,开发人员一直在与回归作斗争,事实上,众所周知,错误应该被尽快修复,所以一旦发现就应该尽快修复。这就是为什么有好的工具来达到这个目的是很有趣的。"
 
#. type: Title ~
#: en/git-bisect-lk2009.txt:151
#, no-wrap, priority:100
msgid "Other tools to fight regressions"
msgstr ""
msgstr "对抗回归的其他工具"
 
#. type: Plain text
#: en/git-bisect-lk2009.txt:156
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment