贡献指南与开放任务
为什么不去建设《FreeBSD 手册》
我们意识到在现有框架内推动《FreeBSD 手册》的全面现代化改进存在较大困难。笔者提交的多个 PR 往往需要经历一年甚至更长时间才被接受,提交者普遍缺乏时间感和动力。在这样沉重的阻力下,传统路径难以奏效。
因此,我们决定探索一种更开放、高效的协作模式,创造一本更贴近用户需求、更新及时且易于维护的 FreeBSD 文档。这本书的出现,正是为了填补这一空白,服务更广泛的 FreeBSD 用户和社区。
方法论
使之成为“一本书”,而不仅仅是本字典或手册:
如果某一技术在最新版本被移除,则应及时移除其在本书的对应位置内容
使全书语气温柔而坚定
在最大化减少原文引用的前提下,重写各章节内容,删除冗余。
现代化、简化 BSD 中文文档协作方式:
自动化(CI 检查、预览、生成 HTML/PDF)
仅用最基础的 Markdown 语法,避免复杂扩展和繁琐流程
技术和选材与时俱进,确保内容现代化。
严格验证每一部分:
参考文献:不仅要求来源可查,而且要求来源可信:
原理性内容:
追溯到具体 FreeBSD 源码文件、提交记录或函数;
具体到相关标准、规范、法律文件等
分析其设计哲学与开发思路
操作性内容:在 FreeBSD 环境中亲自试验,确保可复现
审视原作者的开发哲学与理念,评价其合理性,并尝试简单参与相关项目。
指出并修正上游官方手册中的错误或已过时内容。
生成英文版本
贡献指南
如果你想让你的教程出现在本书中,你可以这样做:
如果你熟悉 GitHub,可以点击电脑端右侧的“编辑此页”,进入项目进行操作。整个项目使用 Markdown 语法 + Gitbook,简单易上手(具体详见项目 WiKi);
如果以上有困难,你还可以发 PDF、Word 或者 TXT 给我。请将文件发送至电子邮件
[email protected]
(我将在 3 天内回复。若我没有回复,请换个邮件再发一次,或者提交 issue);如果有视频教程,以各大云盘链接为宜。
本书现接受以下内容:
一切与 BSD 相关(包括不限于 FreeBSD,OpenBSD,NetBSD)以及各种体系结构的教程。你既可以扩充当前教程,也可以新建一节;
下方的 ToDo 列表;
你亦可在文学故事章节分享你与 BSD 的故事,你的个人心得体会。
你为什么要这样做?
可访问性:随处可见,无需再到处寻找;
可复现性:任何人都能轻松复现成果,显著提高工作和学习效率;
规模化测试:可以对教程进行系统化测试,找出最优解;
社区支持:社区将持续维护教程的可用性,并定期更新软件和教程版本;
节省时间:当本教程内容愈加丰富,你花在网络索引上的无效时间就会越少;
互惠互利:合并教程践行了开源哲学,惠及着无穷的远方,无数的人们;
增强协作:促进 FreeBSD 在中国乃至亚洲、全世界的发展;
便于反馈:快速迭代教程,并验证每一步骤的正确性与合理性;
易于分享:本项目既支持在线浏览亦支持 PDF 文档导出,宽松的许可证、简单的项目结构允许自由部署。
唯一要注意的是,你的教程会以本项目的开源许可证(CC-BY)进行发布。
基本原则
尽可能详细和基础,不要假定用户有任何使用背景。
有问题请在 issue 指出。
使用大型软件(如 IDE、JAVA)时,请注明软件版本号。
出于可靠性考虑,原则上禁止引用阮一峰(https://www.ruanyifeng.com/)相关内容
详细说明
非拉丁字符与拉丁字符间应该加空格(中英文/数字间应有一个半角空格),有许多 Markdown 格式化工具可以自动完成。
不应该使用 sudo
而应该用 #
代替,除非特例;普通用户权限请使用 $
表示。
安装软件时,给出 pkg 或 ports 两种方法,除非极不建议使用 pkg,如内核模块等。
请注意版权问题。引用或灵感受到启发时,请备注文章链接出处,必要时可使用互联网档案馆进行快照保存。
编辑时尽量以最新的 FreeBSD RELEASE 为基准,绝对避免出现 pkg_add
此类过时东西。如有必要,必须予以注明版本。
对于编写时长问题,理论上会一直持续下去,跟随每个 FreeBSD 大版本迭代。
由于种种原因,无法立即验证所写内容是否正确无误时,请编辑者打上“警告:以下内容为理论,未经实际测试,仅供参考,如果可以使用请提交 issue 以移除本标签。”标签以作区分。
不应该对文学故事章节进行除错字排版以外的删减。
请勿使用诸如 Gitee 等境内无法确保信息安全与数据稳定的平台(这类平台无法保证留存文件的长久可访问性,不适合存放适用于长期归档的内容,在未来会有极大风险无法获取该文件)。
当进行错别字修改时,请务必确认其真的是错别字,可参考《现代汉语词典》第 7 版等资料进行佐证。
重要:
新建章节等章节修改建议发邮件联系 ykla 来操作。自己操作时参见操作实例 Commit 6023cc8。
如何使用 git 拉取本项目
本项目太大,拉取时可能会导致缓冲区溢出,可改变 git 配置文件,以实现对缓冲区的扩大:
以下是一个可用的 ~/.gitconfig
(Windows 位置为 C:\Users\你的用户名\.gitconfig
) 的文件示例:
[filter "lfs"]
required = true
clean = git-lfs clean -- %f
smudge = git-lfs smudge -- %f
process = git-lfs filter-process
[user]
name = # 你的用户名
email = # 你的邮箱
signingkey = # 你的密钥 ID,使用密钥签名时需要
[commit]
gpgsign = true # 使用密钥签名时需要
[core]
autocrlf = true # 自动调整末尾回车与换行
[http]
proxy = http://localhost:7890 # 设置使用 http 代理
postBuffer = 1048576000 # 扩大缓冲区,约 1 GB
maxRequestBuffer = 1048576000 # 扩大缓冲区,约 1 GB
名词解释:
autocrlf
:配置 Git 自动处理(转换)行结束符的默认行为。参见配置 Git 处理行结束符 - Github Docssigningkey
:指设置带签名提交时默认使用的签名密钥。signingkey 既可指 GPG Key,亦可指 SSH Key。因为自 Git 2.34 起,Git 支持了 SSH 签名验证功能。参见关于提交签名验证 - Github Docs
拉取命令:
$ git clone https://github.com/FreeBSD-Ask/FreeBSD-Ask
故障排除
致命错误:无法访问 'https://github.com/FreeBSD-Ask/FreeBSD-Ask/': Recv failure: 连接被对方重置
请尝试拉取这个项目 https://github.com/FreeBSD-Ask/LDWG
。
如果报错类似,说明你的网络有问题。请使用代理。
开放任务
所有任务的排序都是随机的并无优先级之分,你可以选你喜欢的去做。
开源社区
维护百度百科、维基百科相关条目
如增补修订各大 BSD 中文条目。
帮助修订 USTC 镜像脚本
FreeBSD ToDo
不再需要 的内容(请 不要 撰写下列条目):
Just for fun(没有也行无关紧要)
需要重写 的内容(请撰写这些内容):
参见 Projects。
NetBSD ToDo
参见 Projects。
DragonFlyBSD ToDo
参见 Projects。
最后更新于