Git
章节 ▾ 第二版

A2.1 附录 B:在应用程序中嵌入 Git - 命令行 Git

如果你的应用程序是为开发人员设计的,那么它很可能可以从与源代码管理的集成中受益。即使是非开发人员应用程序(例如文档编辑器)也可能从版本控制功能中受益,而 Git 的模型非常适合许多不同的场景。

如果你需要将 Git 与你的应用程序集成,那么你基本上有两个选择:生成一个 shell 并调用git命令行程序,或者将一个 Git 库嵌入到你的应用程序中。在这里,我们将介绍命令行集成和几个最流行的可嵌入 Git 库。

命令行 Git

一种选择是生成一个 shell 进程并使用 Git 命令行工具来完成这项工作。这样做的好处是它是规范的,并且支持 Git 的所有功能。这也恰好非常简单,因为大多数运行时环境都具有一个相对简单的工具,可以调用带有命令行参数的进程。但是,这种方法确实有一些缺点。

一个缺点是所有输出都是纯文本。这意味着你必须解析 Git 偶尔更改的输出格式才能读取进度和结果信息,这可能会导致效率低下和容易出错。

另一个缺点是缺乏错误恢复。如果存储库以某种方式损坏,或者用户具有格式错误的配置值,那么 Git 将简单地拒绝执行许多操作。

另一个是进程管理。Git 要求你在一个单独的进程中维护一个 shell 环境,这可能会增加不必要的复杂性。尝试协调这些进程中的许多进程(尤其是在可能从多个进程访问同一个存储库时)可能是一个很大的挑战。

scroll-to-top