security-force-monitor/research-handbook

GitHub: security-force-monitor/research-handbook

安全武力观察组织的研究方法论文档,提供安全部队调查的标准化方法和数据模型说明。

Stars: 5 | Forks: 2

# 安全武力观察组织:研究手册 本代码库包含安全武力观察组织的研究手册,该手册已公开部署在 `help.securityforcemonitor.org `_。研究手册记录了安全武力观察组织(SFM)用于调查据称违反人权法和国际刑法的警察、军队及其他安全与防御部队的研究方法。它概述了 SFM 的研究方法论,并对 SFM 的数据模型进行了说明。它还包含 SFM 的 `WhoWasInCommand.com `_。 ## 文档工具集 - 研究手册的文本使用 `reStructuredText `_ 编写。早期版本使用 Markdown 编写,并发布在 GitBook 上。 - `Sphinx Python 文档生成器 `_ 将其转换为美观的网页。使用 ``pip`` 进行安装。 - 研究手册托管在 `ReadTheDocs `_ 上,使用的是免费账户。这项服务令人惊叹,我们应该给他们捐款! - 当前的翻译工具是 `Transifex `_。使用 ``pip`` 安装本地客户端,并配置正确的凭据。 - 整个项目都在 git 下进行版本控制,并被推送到 Github,Github 通过 webhook 连接到 ReadTheDocs:推送到代码库 ``master`` 分支的更改将自动推送到 ReadTheDocs。 本系统的搭建使用了 ReadTheDocs 自身文档中描述的步骤。其中关于 `管理翻译 `_ 的页面特别有帮助。 ## 如何执行一些常见任务 以下是关于如何在此系统中完成一些任务的说明。 ## 如何对现有手册内容进行简单更新 - 创建并检出一个新的 git 分支以进行更改(例如:``git checkout -b mychanges``) - 在 ``/source`` 下的 .rst 文件中更新您想要进行的任何更改。 - 运行 ``make html``,这些更改将随即反映在 ``/build`` 目录的文件中。 - 解决此时 Sphinx 报出的任何错误;它的错误信息非常详尽且很有帮助。 - 为确保更改能被不同的翻译版本获取,请运行 ``sphinx-build -b gettext source/ build/gettext``。 - 使用 ``tx push --source`` 将更新后的源文件上传到 Transifex。 - 在 Transifex 中完成翻译,然后使用 ``tx pull --all`` 将它们拉取回代码库。 - 提交对代码库的更改;合并并推送到 ``master``。 - 您将惊叹于 ReadTheDocs 会使用这些新更改重新构建文档并将其发布到 ``latest`` 分支。如果这没有自动发生,请检查 webhook。 ## 如何向手册添加新页面 - 创建并检出一个新的 git 分支来完成此工作。 - 在 ``/source`` 目录下创建新页面 ``foo.rst`` 并添加内容。 - 更新 ``/source/index.rst`` 以确保新页面出现在文档树中。 - 完成上述 :ref:`如何对现有手册内容进行简单更新` 中描述的步骤,这将确保新页面被构建并推送到 Transifex 进行翻译。 ## 如何向手册添加完整的新翻译 - 将新语言添加到研究手册的 Transifex 项目页面中。 - 为此工作创建一个新的 git 代码库。 - 使用 ``tx pull --all`` 将其拉取到本地代码库。 - 新的翻译文件将在 ``/locales//`` 中创建。 - 合并并将新的翻译文件推送到 ``master``。 - 前往 ReadTheDocs 为该翻译创建一个新项目,并记得设置和确认连接 Github 和 ReadTheDocs 的 webhook。这里的关键在于,新项目从同一个 git 代码库拉取数据,但系统会将其视为主手册的一个翻译版本。为此,新项目的语言设置应与翻译语言相匹配。然后,在主手册的项目中,指定这个新项目是它的一个翻译。
标签:DNS解析, Git, IPv6支持, Python, ReadTheDocs, reStructuredText, RST, Sphinx, Transifex, Webhook, WhoWasInCommand, 人权法, 军队, 力导向图, 后端开发, 国际刑法, 国际法, 安全管理, 安全部队, 开源项目, 数据模型, 文档生成, 无后门, 研究方法论, 网络安全研究, 警察, 逆向工具