发布兼容git的版本控制系统 Got 0.80

OpenBSD项目的开发者已经发布了版本控制系统Got 0.80(Game of Trees),其开发重点是易于设计和使用。为了存储版本化数据,Got 使用与 Git 存储库的磁盘格式兼容的存储,这允许您使用 Got 和 Git 工具来处理存储库。例如,您可以使用 Git 完成 Got 中未实现的工作。该代码是根据免费的 ISC 许可证分发的。

该项目的主要目标是支持 OpenBSD 的开发,并着眼于项目的具体情况。除其他外,Got 使用 OpenBSD 安全规则(例如权限分离以及使用承诺和揭开调用)和编码风格。该工具包专为开发过程而设计,为开发人员提供通用的集中存储库和本地分支,通过 SSH 进行外部访问并通过电子邮件审查更改。

对于版本控制,got 实用程序提供了常用的命令集。为了简化工作,该实用程序仅支持所需的最少命令和选项集,足以执行基本操作,而不会出现不必要的复杂情况。对于高级操作,建议使用常规 git。存储库管理操作被移至单独的gotadmin实用程序,该实用程序执行初始化存储库、打包索引和清理数据等任务。为了浏览存储库中的数据,提供了 gotwebd Web 界面和 tog 实用程序,用于从命令行交互式查看存储库内容。

添加的更改包括:

  • gotd 服务器进程提供对存储库的网络访问,能够添加规则来授权与各个存储库相关的写入和读取操作。
  • gotd 添加了新的“监听”和“会话”进程来监视 unix 套接字调用并处理会话。身份验证操作也放置在单独的子进程中。
  • 将gotd 后台进程隔离从chroot 更改为使用unveve 系统调用。删除了仅对来自gotsh组的用户连接到gotd的限制。
  • gotd 实现了基于 uid 的连接数限制。
  • 管理连接的设置已添加到 gotd.conf,并且 unix_socket 参数已替换为“listen on”。
  • 现在仅限 root 用户访问运行“gotctl info”时显示的信息。
  • got 的 CGI 包装器 -gotweb - 的开发已停止,取而代之的是,gotwebd 的 FastCGI 实现(其功能已得到显着扩展)应该用于 Web 界面。例如,gotwebd 添加了一个模板引擎,以便更轻松地更改页面设计,添加了用于跟踪标签的 RSS 提要,并改进了 blob 和提交列表的显示。
  • got log、got diff 和 tog diff 命令现在支持 diffstat 输出。
  • 通过限制对象缓存中存储的标签数量,减少了内存消耗。
  • got补丁实现了二进制文件的删除。

来源: opennet.ru

添加评论