git - 版本控制应该存储哪些文件,应该如何存储?

标签 git version-control documentation wiki diagram

<分区>

我发现了一些类似的问题(hereherehere),询问有关将文档存储到版本控制中的问题。我有一个更具体的要求和一般性问题。具体要求是我要使用Git。更普遍的问题是,文档(项目的设计、测试、一般实践、技巧等)应该如何存储在 Git 中?更广泛地说,应存储哪些文件?

我可以想到几个办法:

  1. Word/Open Office 文档。新的 Office Word 有 docx 格式,可以压缩文档,但它也有解压缩的 XML 格式,可以用来在 Git 中有效地存储差异。不过,diff 功能仍然存在问题,因为 XML 被压缩在一行中。这并不比将二进制文件存储到 Git 中更好。
  2. 维基。那里存在哪些分布式维基?它就像某种 Latex 东西,在其中编写和编译/查看文档作为 wiki。
  3. Latex - 但我发现它非常不适合用于文档。是否有等效的文档? (如何编写手册页?)
  4. 纯文本格式,但由于缺少图表,这相当缺乏,这又引出了另一点。

应如何存储视觉效果?他们应该首先组成什么?我在 Linux 环境上开发,但该项目的其他一些参与者在 Windows 上。有什么类似于 Visio 的跨平台解决方案?当然,它不应该创建要存储到 Git 中的二进制文件。那么这将如何与文档联系起来呢? (例如,类似于 Latex 在编译时如何引用其他图表。)

最佳答案

在决定选择哪种文档格式时,您应该确保团队成员(或者您是单独工作?)能够轻松地使用格式本身。

  1. 存储与其说是问题,不如说是能够看到版本和 merge 之间的差异。以我的经验,没有什么比可以在任何文本编辑器中自由编辑的文本格式更好的了。这不包括 HTML 和任何基于 XML 的格式。 DocBook 是一个几乎无法使用的异常(exception)。

  2. 一个可以使用任何流行的版本控制系统并以分布式方式设置的优秀 wiki 是 IkiWiki .使用 IkiWiki,标记解析在插件中完成,因此您可以在每个文档的基础上选择输入格式。 “默认”,Markdown非常接近纯文本格式。

  3. 如果您对使用 LaTeX 不满意,请不要使用它。我认为它不适合做快速笔记。手册页是用 nroff 编写的,但许多人使用其他格式,例如 POD .

一些努力成为 Visio 替代品的项目是 Kivio (KDE) 和 Dia (Gtk/Gnome)。我没有使用过 Visio 本身,所以我无法评论它们的功能集。这可能取决于您想要创建什么样的视觉效果/图表。统一语言?流程图?

关于git - 版本控制应该存储哪些文件,应该如何存储?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/608482/

相关文章:

GIT 忽略 CentOS 中的代理配置

git - 本地删除了文件但无法将更改推送到heroku

svn - 颠覆入门

java - Doxygen 与 Javadoc

git - 禁用 master (git) 中的功能

git - 如何让 diff 像 git-diff 一样工作?

python - PyCharm:同窗多项目,独立版本控制

svn - 如何通过FTP将多个多级(不同层次)文件从本地版本覆盖到在线版本

c++ - 如何编写出现在 Intellisense 中的 C++ 注释?

c++ - C/C++ 头文件文档