Skip to content

Conversation

@dyrone
Copy link

@dyrone dyrone commented Nov 13, 2025

Thanks for taking the time to contribute to Git! Please be advised that the
Git community does not use github.com for their contributions. Instead, we use
a mailing list ([email protected]) for code submissions, code reviews, and
bug reports. Nevertheless, you can use GitGitGadget (https://gitgitgadget.github.io/)
to conveniently send your Pull Requests commits to our mailing list.

For a single-commit pull request, please leave the pull request description
empty
: your commit message itself should describe your changes.

Please read the "guidelines for contributing" linked above!

@github-actions
Copy link

github-actions bot commented Nov 13, 2025

Errors and warnings found by git-po-helper in workflow #1099:

------------------------------------------------------------------------------
ERROR [po/zh_CN.po@a9498f8]	/tmp/3850957075--zh_CN.po:7328: format specifications in 'msgid' and 'msgstr' for argument 1 are not the same 
ERROR [po/zh_CN.po@a9498f8]	/usr/bin/msgfmt: found 1 fatal error 
ERROR [po/zh_CN.po@a9498f8]	6065 translated messages. 
ERROR [po/zh_CN.po@a9498f8]	fail to check po: exit status 1 
INFO checking commits: 0 passed, 1 failed.        
------------------------------------------------------------------------------
INFO downloading pot file from https://github.com/git-l10n/pot-changes/raw/pot/master/po/git.pot 

ERROR: fail to execute "git-po-helper check-commits"

@dyrone dyrone force-pushed the tl/zh_CN_2.52_rnd branch 3 times, most recently from a9498f8 to 227144d Compare November 13, 2025 12:53
@jiangxin
Copy link
Member

@dyrone ,我用 AI 扫了一遍,这些可能有问题:

1. 术语统一性问题

  • <char> 翻译为 "<字符>" 但 depth 翻译为 "深度"(应为 "<深度>") - [line 3195]

2. 潜在问题

  • Reachable objects 翻译为 "显示不可达的对象" - 应为 "可达对象",翻译不准确 [line 7121]
  • References 翻译为 "参考仓库" - 应为 "引用" [line 7226]
  • Remotes 翻译为 "<远程>" - 应为 "远程仓库" [line 7311]
  • Repository structure 翻译为 "Git 仓库布局" - 应为 "仓库结构" [line 7367]

3. 具体错误翻译

  1. Retrieve information about the repository 翻译为 "将树信息读取到索引" - 应为 "检索仓库信息" [line 7429]

@dyrone dyrone marked this pull request as ready for review November 14, 2025 02:44
Copy link

@lilydjwg lilydjwg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

我还没看完,下午再接着看。

本次翻译中出现了很多完全对不上的翻译,请调查一下原因。

Copy link

@lilydjwg lilydjwg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

我还没看完,下午再接着看。

本次翻译中出现了很多完全对不上的翻译,请调查一下原因。

@dyrone
Copy link
Author

dyrone commented Nov 14, 2025

我还没看完,下午再接着看。

本次翻译中出现了很多完全对不上的翻译,请调查一下原因。

刚才我修复了一波, 应该是模型幻觉导致。

@dyrone
Copy link
Author

dyrone commented Nov 14, 2025

目前看claude sonnet 4.5的翻译能力很弱, gemini表现比较好

@dyrone dyrone requested a review from lilydjwg November 14, 2025 05:13
@dyrone
Copy link
Author

dyrone commented Nov 14, 2025

下午团建, 我晚上继续修复

@lilydjwg
Copy link

LLM 表现得再好也需要人类来审核确认的。幸亏 git 有审阅,不然就成了 fish 事件重演了 🤣。

@jiangxin
Copy link
Member

git repo structure 命令中文输出不对齐的问题,是上游代码问题,已经贡献补丁到社区:

https://lore.kernel.org/git/[email protected]/

@dyrone
Copy link
Author

dyrone commented Nov 15, 2025

LLM

是的 审核过程中发现的 这次内容比较多 当时就先提交pr了

@dyrone dyrone force-pushed the tl/zh_CN_2.52_rnd branch 2 times, most recently from 12a0fc7 to 7b0fb5b Compare November 15, 2025 05:41
Copy link

@lilydjwg lilydjwg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

应该都看完了。

@jiangxin
Copy link
Member

@dyrone ,修改了你的提交,差异如下:

1:  c01a9bc0d9 ! 1:  fbb776cdab l10n: zh_CN: updated translation for 2.52
    @@ Metadata
      ## Commit message ##
         l10n: zh_CN: updated translation for 2.52
     
    +    Reviewed-by: 依云 <[email protected]>
         Signed-off-by: Teng Long <[email protected]>
    +    Signed-off-by: Jiang Xin <[email protected]>
     
      ## po/zh_CN.po ##
     @@ po/zh_CN.po: msgid ""
    @@ po/zh_CN.po: msgid ""
      "Report-Msgid-Bugs-To: Git Mailing List <[email protected]>\n"
     -"POT-Creation-Date: 2025-08-12 20:20-0400\n"
     -"PO-Revision-Date: 2025-08-17 08:14-0400\n"
    -+"POT-Creation-Date: 2025-11-13 15:01+0800\n"
    ++"POT-Creation-Date: 2025-11-15 22:02+0800\n"
     +"PO-Revision-Date: 2025-11-16 01:03+0800\n"
      "Last-Translator: Teng Long <[email protected]>\n"
      "Language-Team: GitHub <https://github.com/dyrone/git/>\n"
    @@ po/zh_CN.po: msgstr "%s 必须至少有一个字符"
     +#: builtin/fast-import.c
     +#, c-format
     +msgid "%s not found: %s"
    -+msgstr "%s 未找到:%s"
    ++msgstr "未找到%s:%s"
     +
      #: builtin/fsck.c
      #, c-format
    @@ po/zh_CN.po: msgstr "<分支>"
     +
      #: diff.c
      msgid "<count>"
    - msgstr "<次数>"
    - 
    +-msgstr "<次数>"
    ++msgstr "<计数>"
    ++
     +#: diff.c
     +msgid "<depth>"
     +msgstr "<深度>"
    -+
    + 
      #: diff.c
      msgid "<file>"
    - msgstr "<文件>"
    +@@ po/zh_CN.po: msgstr "<宽度>"
    + 
    + #: diff.c
    + msgid "<width>[,<name-width>[,<count>]]"
    +-msgstr "<宽度>[,<文件名宽度>[,<次数>]]"
    ++msgstr "<宽度>[,<文件名宽度>[,<计数>]]"
    + 
    + #: command-list.h
    + msgid "A CVS server emulator for Git"
     @@ po/zh_CN.po: msgstr "二分查找中:合并基线必须是经过测试的\n"
      msgid "Blaming lines"
      msgstr "追踪代码行"
    @@ po/zh_CN.po: msgstr "不能写入新的索引文件。"
      
     +#: builtin/repo.c
     +msgid "Count"
    -+msgstr "次数"
    ++msgstr "计数"
     +
      #: command-list.h
      msgid "Count unpacked number of objects and their disk consumption"
    @@ po/zh_CN.po: msgstr "对象计数中"
      
     +#: builtin/repo.c
     +msgid "Counting references"
    -+msgstr "正在统计引用"
    ++msgstr "正在引用计数"
     +
      #: command-list.h
      msgid "Create a new commit object"
    @@ po/zh_CN.po: msgstr "移动或重命名一个文件、目录或符号链接"
     +#: builtin/fast-import.c
     +#, c-format
     +msgid "NUL in %s: %s"
    -+msgstr "%s 中存在 NUL:%s"
    ++msgstr "在 %s 中存在 NUL:%s"
     +
      #: builtin/bundle.c
      msgid "Need a repository to create a bundle."
    @@ po/zh_CN.po: msgstr "面向用户的仓库、命令和文件接口"
     +"\n"
     +"\tgit branch -m master\n"
     +msgstr ""
    -+"从 Git 3.0 开始,使用 '%s' 作为初始分支的名称。\n"
    -+"如果您期望 Git 创建 'master',刚刚创建的分支可以\n"
    -+"通过以下命令重命名:\n"
    ++"从 Git 3.0 开始,使用 '%s' 作为初始分支的名称。如果您期望 Git\n"
    ++"创建 'master',新创建的分支可以通过以下命令重命名:\n"
     +"\n"
     +"\tgit branch -m master\n"
     +
    @@ po/zh_CN.po: msgid ""
      msgstr ""
     -"使用 '%s' 作为初始分支的名称。这个默认分支名称可能会更改。要在新仓库中\n"
     -"配置使用初始分支名,并消除这条警告,请执行:\n"
    -+"使用 '%s' 作为初始分支的名称。这个默认分支名称在 Git 3.0\n"
    -+"中将会修改为 \"main\"。要为您的所有新仓库配置初始分支名称\n"
    -+"(这将禁用此警告),请运行::\n"
    ++"使用 '%s' 作为初始分支的名称。这个默认分支名称在 Git 3.0 中将会修改为\n"
    ++"\"main\"。要为您的所有新仓库配置初始分支名称(这将禁用此警告),请运行:\n"
      "\n"
      "\tgit config --global init.defaultBranch <名称>\n"
      "\n"
    + "除了 'master' 之外,通常选定的名字有 'main'、'trunk' 和 'development'。\n"
    +-"可以通过以下命令重命名刚创建的分支:\n"
    ++"可以通过以下命令重命名新创建的分支:\n"
    + "\n"
    + "\tgit branch -m <name>\n"
    + 
     @@ po/zh_CN.po: msgstr "使用 %s 策略以准备手工解决。\n"
      msgid "Validate packed Git archive files"
      msgstr "校验打包的Git存仓文件"
    @@ po/zh_CN.po: msgstr "无法找到提交 %s"
      #: builtin/worktree.c
      #, c-format
      msgid "could not find created worktree '%s'"
    +-msgstr "无法找到已创建的工作树 '%s'"
    ++msgstr "无法找到已创建的工作区 '%s'"
    + 
    + #: builtin/log.c
    + msgid "could not find exact merge base"
     @@ po/zh_CN.po: msgstr "不能结束 pack-objects"
      msgid "could not finish pack-objects to repack local links"
      msgstr "无法完成 pack-objects 来重新打包本地链接"
    @@ po/zh_CN.po: msgstr "无法清理位于 %s 的多包索引"
      
     +#: builtin/sparse-checkout.c
     +msgid "failed to convert index to a sparse index; resolve merge conflicts and try again"
    -+msgstr "转换索引为稀疏索引失败;解决合并冲突后重试"
    ++msgstr "无法将索引转换为稀疏索引;解决合并冲突后重试"
     +
      #: read-cache.c
      msgid "failed to convert to a sparse-index"
    @@ po/zh_CN.po: msgstr "如果冲突,使用他们的版本"
     -#: builtin/clean.c
     +#: builtin/sparse-checkout.c
     +msgid "for safety, refusing to clean without one of --force or --dry-run"
    -+msgstr "为了安全,拒绝在没有 --force 或 --dry-run 选项的情况下执行清理"
    ++msgstr "为了安全,在没有 --force 或 --dry-run 选项的情况下拒绝执行清理"
     +
     +#: builtin/clean.c builtin/sparse-checkout.c
      msgid "force"
    @@ po/zh_CN.po: msgstr "对 %s 调用 fstat 失败"
     +#: builtin/fast-import.c
     +#, c-format
     +msgid "garbage after %s: %s"
    -+msgstr "%s 后面有垃圾内容:%s"
    ++msgstr "在 %s 后面有垃圾内容:%s"
     +
     +#: builtin/fast-import.c
     +#, c-format
    @@ po/zh_CN.po: msgstr ""
     -"k - 维持该块未决状态,查看上一个未决块\n"
     -"K - 维持该块未决状态,查看上一个块\n"
     -"g - 选择跳转到一个块\n"
    -+"j - 跳转至下一个未决定块,滚动到底部时回到顶部\n"
    -+"J - 跳转至下一个块,滚动到底部时回到顶部\n"
    -+"k - 跳转至上一个未决定块,滚动到顶部时回到底部\n"
    -+"K - 跳转至上一个块,滚动到顶部时回到底部\n"
    ++"j - 跳转至下一个未决定块,在底部翻页\n"
    ++"J - 跳转至下一个块,在底部翻页\n"
    ++"k - 跳转至上一个未决定块,在顶部翻页\n"
    ++"K - 跳转至上一个块,在顶部翻页\n"
     +"g - 选择要跳转的块\n"
      "/ - 查找和给定正则表达式匹配的块\n"
      "s - 拆分当前块为更小的块\n"
    @@ po/zh_CN.po: msgstr "缺失 %2$s 的对象 %1$s"
     +#: builtin/fast-import.c
     +#, c-format
     +msgid "missing space after %s: %s"
    -+msgstr "%s 后面缺少空格:%s"
    ++msgstr "在 %s 后面缺少空格:%s"
     +
     +#: builtin/fast-import.c
     +#, c-format
    @@ po/zh_CN.po: msgstr "缺失 %2$s 的对象 %1$s"
     +#: builtin/fast-import.c
     +#, c-format
     +msgid "missing space after tree-ish: %s"
    -+msgstr "tree-ish 后面缺少空格:%s"
    ++msgstr "树对象后面缺少空格:%s"
     +
     +#: builtin/fast-import.c
     +#, c-format
    @@ po/zh_CN.po: msgstr "允许不正确的文件末尾换行符"
     +#: builtin/fast-import.c
     +#, c-format
     +msgid "too large fanout (%u)"
    -+msgstr "fanout 值过大 (%u)"
    ++msgstr "扇出值过大 (%u)"
     +
      #: setup.c
      #, c-format

@jiangxin jiangxin closed this Nov 16, 2025
@dyrone
Copy link
Author

dyrone commented Nov 17, 2025

@dyrone ,修改了你的提交,差异如下:

1:  c01a9bc0d9 ! 1:  fbb776cdab l10n: zh_CN: updated translation for 2.52
    @@ Metadata
      ## Commit message ##
         l10n: zh_CN: updated translation for 2.52
     
    +    Reviewed-by: 依云 <[email protected]>
         Signed-off-by: Teng Long <[email protected]>
    +    Signed-off-by: Jiang Xin <[email protected]>
     
      ## po/zh_CN.po ##
     @@ po/zh_CN.po: msgid ""
    @@ po/zh_CN.po: msgid ""
      "Report-Msgid-Bugs-To: Git Mailing List <[email protected]>\n"
     -"POT-Creation-Date: 2025-08-12 20:20-0400\n"
     -"PO-Revision-Date: 2025-08-17 08:14-0400\n"
    -+"POT-Creation-Date: 2025-11-13 15:01+0800\n"
    ++"POT-Creation-Date: 2025-11-15 22:02+0800\n"
     +"PO-Revision-Date: 2025-11-16 01:03+0800\n"
      "Last-Translator: Teng Long <[email protected]>\n"
      "Language-Team: GitHub <https://github.com/dyrone/git/>\n"
    @@ po/zh_CN.po: msgstr "%s 必须至少有一个字符"
     +#: builtin/fast-import.c
     +#, c-format
     +msgid "%s not found: %s"
    -+msgstr "%s 未找到:%s"
    ++msgstr "未找到%s:%s"
     +
      #: builtin/fsck.c
      #, c-format
    @@ po/zh_CN.po: msgstr "<分支>"
     +
      #: diff.c
      msgid "<count>"
    - msgstr "<次数>"
    - 
    +-msgstr "<次数>"
    ++msgstr "<计数>"
    ++
     +#: diff.c
     +msgid "<depth>"
     +msgstr "<深度>"
    -+
    + 
      #: diff.c
      msgid "<file>"
    - msgstr "<文件>"
    +@@ po/zh_CN.po: msgstr "<宽度>"
    + 
    + #: diff.c
    + msgid "<width>[,<name-width>[,<count>]]"
    +-msgstr "<宽度>[,<文件名宽度>[,<次数>]]"
    ++msgstr "<宽度>[,<文件名宽度>[,<计数>]]"
    + 
    + #: command-list.h
    + msgid "A CVS server emulator for Git"
     @@ po/zh_CN.po: msgstr "二分查找中:合并基线必须是经过测试的\n"
      msgid "Blaming lines"
      msgstr "追踪代码行"
    @@ po/zh_CN.po: msgstr "不能写入新的索引文件。"
      
     +#: builtin/repo.c
     +msgid "Count"
    -+msgstr "次数"
    ++msgstr "计数"
     +
      #: command-list.h
      msgid "Count unpacked number of objects and their disk consumption"
    @@ po/zh_CN.po: msgstr "对象计数中"
      
     +#: builtin/repo.c
     +msgid "Counting references"
    -+msgstr "正在统计引用"
    ++msgstr "正在引用计数"
     +
      #: command-list.h
      msgid "Create a new commit object"
    @@ po/zh_CN.po: msgstr "移动或重命名一个文件、目录或符号链接"
     +#: builtin/fast-import.c
     +#, c-format
     +msgid "NUL in %s: %s"
    -+msgstr "%s 中存在 NUL:%s"
    ++msgstr "在 %s 中存在 NUL:%s"
     +
      #: builtin/bundle.c
      msgid "Need a repository to create a bundle."
    @@ po/zh_CN.po: msgstr "面向用户的仓库、命令和文件接口"
     +"\n"
     +"\tgit branch -m master\n"
     +msgstr ""
    -+"从 Git 3.0 开始,使用 '%s' 作为初始分支的名称。\n"
    -+"如果您期望 Git 创建 'master',刚刚创建的分支可以\n"
    -+"通过以下命令重命名:\n"
    ++"从 Git 3.0 开始,使用 '%s' 作为初始分支的名称。如果您期望 Git\n"
    ++"创建 'master',新创建的分支可以通过以下命令重命名:\n"
     +"\n"
     +"\tgit branch -m master\n"
     +
    @@ po/zh_CN.po: msgid ""
      msgstr ""
     -"使用 '%s' 作为初始分支的名称。这个默认分支名称可能会更改。要在新仓库中\n"
     -"配置使用初始分支名,并消除这条警告,请执行:\n"
    -+"使用 '%s' 作为初始分支的名称。这个默认分支名称在 Git 3.0\n"
    -+"中将会修改为 \"main\"。要为您的所有新仓库配置初始分支名称\n"
    -+"(这将禁用此警告),请运行::\n"
    ++"使用 '%s' 作为初始分支的名称。这个默认分支名称在 Git 3.0 中将会修改为\n"
    ++"\"main\"。要为您的所有新仓库配置初始分支名称(这将禁用此警告),请运行:\n"
      "\n"
      "\tgit config --global init.defaultBranch <名称>\n"
      "\n"
    + "除了 'master' 之外,通常选定的名字有 'main'、'trunk' 和 'development'。\n"
    +-"可以通过以下命令重命名刚创建的分支:\n"
    ++"可以通过以下命令重命名新创建的分支:\n"
    + "\n"
    + "\tgit branch -m <name>\n"
    + 
     @@ po/zh_CN.po: msgstr "使用 %s 策略以准备手工解决。\n"
      msgid "Validate packed Git archive files"
      msgstr "校验打包的Git存仓文件"
    @@ po/zh_CN.po: msgstr "无法找到提交 %s"
      #: builtin/worktree.c
      #, c-format
      msgid "could not find created worktree '%s'"
    +-msgstr "无法找到已创建的工作树 '%s'"
    ++msgstr "无法找到已创建的工作区 '%s'"
    + 
    + #: builtin/log.c
    + msgid "could not find exact merge base"
     @@ po/zh_CN.po: msgstr "不能结束 pack-objects"
      msgid "could not finish pack-objects to repack local links"
      msgstr "无法完成 pack-objects 来重新打包本地链接"
    @@ po/zh_CN.po: msgstr "无法清理位于 %s 的多包索引"
      
     +#: builtin/sparse-checkout.c
     +msgid "failed to convert index to a sparse index; resolve merge conflicts and try again"
    -+msgstr "转换索引为稀疏索引失败;解决合并冲突后重试"
    ++msgstr "无法将索引转换为稀疏索引;解决合并冲突后重试"
     +
      #: read-cache.c
      msgid "failed to convert to a sparse-index"
    @@ po/zh_CN.po: msgstr "如果冲突,使用他们的版本"
     -#: builtin/clean.c
     +#: builtin/sparse-checkout.c
     +msgid "for safety, refusing to clean without one of --force or --dry-run"
    -+msgstr "为了安全,拒绝在没有 --force 或 --dry-run 选项的情况下执行清理"
    ++msgstr "为了安全,在没有 --force 或 --dry-run 选项的情况下拒绝执行清理"
     +
     +#: builtin/clean.c builtin/sparse-checkout.c
      msgid "force"
    @@ po/zh_CN.po: msgstr "对 %s 调用 fstat 失败"
     +#: builtin/fast-import.c
     +#, c-format
     +msgid "garbage after %s: %s"
    -+msgstr "%s 后面有垃圾内容:%s"
    ++msgstr "在 %s 后面有垃圾内容:%s"
     +
     +#: builtin/fast-import.c
     +#, c-format
    @@ po/zh_CN.po: msgstr ""
     -"k - 维持该块未决状态,查看上一个未决块\n"
     -"K - 维持该块未决状态,查看上一个块\n"
     -"g - 选择跳转到一个块\n"
    -+"j - 跳转至下一个未决定块,滚动到底部时回到顶部\n"
    -+"J - 跳转至下一个块,滚动到底部时回到顶部\n"
    -+"k - 跳转至上一个未决定块,滚动到顶部时回到底部\n"
    -+"K - 跳转至上一个块,滚动到顶部时回到底部\n"
    ++"j - 跳转至下一个未决定块,在底部翻页\n"
    ++"J - 跳转至下一个块,在底部翻页\n"
    ++"k - 跳转至上一个未决定块,在顶部翻页\n"
    ++"K - 跳转至上一个块,在顶部翻页\n"
     +"g - 选择要跳转的块\n"
      "/ - 查找和给定正则表达式匹配的块\n"
      "s - 拆分当前块为更小的块\n"
    @@ po/zh_CN.po: msgstr "缺失 %2$s 的对象 %1$s"
     +#: builtin/fast-import.c
     +#, c-format
     +msgid "missing space after %s: %s"
    -+msgstr "%s 后面缺少空格:%s"
    ++msgstr "在 %s 后面缺少空格:%s"
     +
     +#: builtin/fast-import.c
     +#, c-format
    @@ po/zh_CN.po: msgstr "缺失 %2$s 的对象 %1$s"
     +#: builtin/fast-import.c
     +#, c-format
     +msgid "missing space after tree-ish: %s"
    -+msgstr "tree-ish 后面缺少空格:%s"
    ++msgstr "树对象后面缺少空格:%s"
     +
     +#: builtin/fast-import.c
     +#, c-format
    @@ po/zh_CN.po: msgstr "允许不正确的文件末尾换行符"
     +#: builtin/fast-import.c
     +#, c-format
     +msgid "too large fanout (%u)"
    -+msgstr "fanout 值过大 (%u)"
    ++msgstr "扇出值过大 (%u)"
     +
      #: setup.c
      #, c-format

辛苦~

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants