从0到1参与Pro Git 2翻译:技术译者的开源协作实战指南
【免费下载链接】progit2-zh 项目地址: https://gitcode.com/gh_mirrors/pr/progit2-zh
你是否曾在学习Git时因术语翻译不一致而困惑?是否想为开源社区贡献力量却不知从何入手?本文将带你深入Pro Git第二版中文翻译项目的协作流程,掌握技术文档本地化的核心方法,完成从读者到贡献者的蜕变。
读完本文你将获得:
- 技术翻译项目的完整协作流程(5大阶段+12个关键节点)
- Asciidoc标记语言实战指南(含代码示例与避坑要点)
- 翻译质量保障体系(3级审校机制+7项验收标准)
- 开源协作工具链配置(Git+VSCode+翻译辅助工具)
- 真实案例解析:如何修复"变基"章节的3类典型错误
项目背景与价值
Pro Git(第二版)作为Git领域的权威著作,其英文原版由Git核心贡献者Scott Chacon与Ben Straub撰写,全球累计下载量超1000万次。中文翻译项目自2014年启动,历经8年迭代,已形成由156位贡献者共同维护的开源协作体系。
该项目采用知识共享署名-非商业性使用-相同方式共享4.0国际许可协议(CC BY-NC-SA 4.0),所有贡献者的工作将永久保留在贡献者列表中,并可能被收录至印刷版本。通过参与翻译,你不仅能深化对Git原理的理解,更能获得宝贵的技术写作与跨国协作经验。
协作流程全解析
Pro Git翻译项目采用分支驱动开发(BDD) 模式,整个协作流程分为5个阶段,每个阶段都有明确的交付物与质量标准。
1. 准备阶段
环境配置是参与翻译的第一步,需完成以下操作:
# 克隆项目仓库(使用国内加速地址)
git clone https://gitcode.com/gh_mirrors/pr/progit2-zh.git
cd progit2-zh
# 安装依赖(需要Ruby环境)
gem install bundler
bundle install
# 构建测试版本(生成HTML格式)
rake book:build_html
项目采用Asciidoc作为标记语言,相比Markdown提供更强大的文档结构化能力。核心文件结构如下:
progit2-zh/
├── book/ # 主文档目录
│ ├── 01-introduction/ # 章节内容
│ ├── contributors.asc # 贡献者列表
│ └── index.asc # 文档入口
├── theme/ # 样式模板
├── CONTRIBUTING.md # 贡献指南
└── TRANSLATING.md # 翻译规范
2. 翻译阶段
选择翻译内容时,建议优先查看状态跟踪表(status.json),筛选标注为"needs_translation"的章节。翻译过程中需遵循以下原则:
术语一致性:所有Git专业术语必须符合《Git术语表》规范,例如:
| 英文术语 | 标准译法 | 常见错误译法 |
|---|---|---|
| Commit | 提交 | 提交物/提交记录 |
| Branch | 分支 | 分支线/枝条 |
| Rebase | 变基 | 重定基/再基准 |
| Merge | 合并 | 归并/融合 |
代码块处理:保留原始代码格式,仅翻译注释内容:
# 英文原版
# List all branches
git branch
# 正确翻译
# 列出所有分支
git branch
# 错误示例(不要翻译命令本身)
# 列出所有分支
git 分支 # ❌ 命令翻译是严重错误
图表处理:项目使用Sketch创建矢量图,翻译时只需更新图注文本,无需修改图片文件。所有图片位于images/目录,对应Asciidoc中的引用格式:
image::basic-branching-1.png["创建新分支示意图",width=80%]
3. 审核阶段
翻译完成后需经过三级审校:
-
自我审校:使用以下命令生成HTML版本检查格式:
rake book:build_html && open output/html/index.html -
社区审校:提交Pull Request后,至少需要2位资深贡献者的批准。典型审核关注点包括:
- 技术准确性(如"fast-forward"译为"快进式"而非"快速向前")
- 语言流畅度(避免直译导致的"翻译腔")
- 格式规范性(Asciidoc标记是否正确)
-
集成测试:通过自动化构建检查PDF/EPUB格式是否正常渲染:
rake book:build_pdf # 需要PrinceXML支持
4. 发布阶段
通过审核的翻译将合并至main分支,触发自动化构建流程。项目使用Travis CI实现持续集成,每次提交会自动执行:
- 语法检查(asciidoctor-lint)
- 术语一致性检查(自定义脚本)
- 多格式构建(HTML/PDF/EPUB)
正式发布的版本会同步至Git中文社区网站,并更新贡献者列表。
5. 维护阶段
技术文档需要持续维护以跟进软件版本更新。例如Git 2.23引入的git switch命令,就需要在"分支操作"章节补充说明:
// 新增内容示例
[NOTE]
====
Git 2.23版本新增了`git switch`命令作为`git checkout`的替代方案,
用于更清晰地分离分支切换与文件检出功能:
git switch feature-branch // 切换到特性分支
git switch -c bugfix // 创建并切换到修复分支
====
常见问题与解决方案
格式处理
表格翻译是最容易出错的部分,Asciidoc表格使用|===界定,翻译时需保持表格结构完整性:
// 正确示例
[cols="2,3", options="header"]
|===
| 命令 | 描述
| git add | 将工作区修改添加到暂存区
| git commit | 将暂存区内容提交到本地仓库
|===
技术难点
复杂概念解释需要兼顾准确性与可读性。以"三棵树"模型为例,优秀的翻译应该:
// 推荐译法
Git通过维护三棵"树"来管理项目状态:
* 工作区(Working Directory):当前编辑的文件集合
* 暂存区(Staging Area/Index):准备提交的变更集合
* HEAD:最后一次提交的结果引用
[source,console]
----
git add <file> // 将工作区变更添加到暂存区
git commit // 将暂存区内容提交到HEAD
----
协作冲突
多人同时翻译同一章节时可能产生冲突,建议采用以下策略:
- 小批量提交(每个PR不超过500字)
- 定期同步主分支更新:
git fetch origin git rebase origin/main - 使用
git mergetool解决复杂冲突
工具链配置指南
编辑器设置
推荐使用VSCode配合以下插件:
- Asciidoctor.js Live Preview(实时预览)
- Asciidoc Table Editor(表格编辑)
- GitLens(提交历史查看)
配置用户片段(snippets)提高效率:
{
"Asciidoc Note": {
"prefix": "adoc-note",
"body": "[NOTE]\n====\n$1\n====",
"description": "插入Note块"
}
}
翻译辅助工具
术语管理推荐使用:
- GoldenDict + 自定义术语库
- OmegaT(开源计算机辅助翻译工具)
质量检查工具:
# 术语一致性检查
ruby script/check_terms.rb book/03-git-branching/sections/3.6-rebasing.asc
# 格式检查
asciidoctor-lint book/index.asc
贡献案例分析
以"变基"章节的翻译改进为例,展示完整贡献流程:
问题发现
原翻译将"interactive rebase"译为"交互式变基",但社区讨论认为"交互式变基"更符合技术文档规范。同时发现3处命令示例缺少中文注释。
解决方案
创建特性分支并修改:
git checkout -b improve-rebase-chapter
# 编辑文件...
git add book/03-git-branching/sections/3.6-rebasing.asc
git commit -m "改进变基章节翻译:
- 将'interactive rebase'统一译为'交互式变基'
- 为5个命令示例添加中文注释
- 修复2处格式错误"
提交PR
PR描述需包含:
- 修改内容概述
- 术语变更说明
- 相关Issue引用(如#1234)
审核过程
针对审核意见进行修订:
# 根据审核反馈修改
git commit --amend
git push --force-with-lease origin improve-rebase-chapter
合并完成
通过审核后,维护者将执行合并:
git checkout main
git merge --no-ff improve-rebase-chapter
git push origin main
参与方式与社区资源
新手入门路径
- 首次贡献:从文档勘误入手,如修正错别字、改进语句通顺度
- 小章节翻译:选择附录或工具章节(如"Git命令参考")
- 深度参与:申请成为章节负责人,主导完整章节的翻译与维护
社区支持
- 讨论群组:Git中文社区Discord频道(#progit-translation)
- 定期会议:每月第一个周六线上翻译工作坊
- 学习资源:项目Wiki包含《Asciidoc入门指南》与《技术翻译规范》
贡献者福利
- 技术写作作品集:可将贡献的翻译内容作为作品集展示
- 社区认可:优秀贡献者将受邀参与Git中文文档其他项目
- 实物奖励:年度贡献之星将获得Pro Git精装版与Git官方周边
总结与展望
参与Pro Git翻译项目不仅能提升技术文档写作能力,更能深入理解Git内部原理与开源协作文化。随着Git 3.0版本的规划,未来翻译工作将面临新的挑战:
- 新特性文档翻译(如partial clone增强)
- 云原生环境下的Git使用场景扩展
- AI辅助翻译工具的整合应用
我们欢迎所有对Git技术感兴趣的开发者加入翻译团队,共同打造高质量的中文技术文档。立即行动:
# 开始你的第一次贡献
git clone https://gitcode.com/gh_mirrors/pr/progit2-zh.git
如果你在贡献过程中遇到任何问题,可在项目Issue区提交问题,维护团队将在24小时内响应。
点赞+收藏+关注,获取最新翻译动态与技术文档写作技巧!下期预告:《Asciidoc高级排版技巧》。
【免费下载链接】progit2-zh 项目地址: https://gitcode.com/gh_mirrors/pr/progit2-zh
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



