我使用 FossilSCM 作为控制版本和票证的唯一解决方案。到目前为止,一切都很好。它的独立和简约的方法适合我的需要。但我想开始对项目的历史和发展进行一些分析,一个很好的来源是项目的时间表。我可以使用一些 html 解析来尝试将 Fossil 时间线输出转换为其他内容,但我想是否可以选择以其他结构化格式(例如 JSON 或类似格式)导出该信息。网络搜索在该问题上没有产生任何有用的发现。任何指向解决方案的指针?
谢谢,
离场
你试过fossil json timeline branch trunk
吗?
fossil help json
Usage: fossil json SUBCOMMAND ?OPTIONS?
In CLI mode, the -R REPO common option is supported. Due to limitations
in the argument dispatching code, any -FLAGS must come after the final
sub- (or subsub-) command.
The commands include:
anonymousPassword
artifact
branch
cap
config
diff
dir
g
login
logout
query
rebuild
report
resultCodes
stat
tag
timeline
user
version (alias: HAI)
whoami
wiki
Run 'fossil json' without any subcommand to see the full list (but be
aware that some listed might not yet be fully implemented).
从源代码构建时编译 json:
./configure --json
进行这项工作的关键是通过从源代码编译它来启用化石中的 json 支持。当前版本已将其禁用,因此在命令行帮助中寻找有关它的任何线索最初对我一无所获。感谢用户 2612611提供了有关它的初步线索。这是我遵循的程序:
/uncompress-folder
./configure --json
make
。sudo mv /uncompress-folder/fossil /usr/bin/fossil
.fossil ui
)。转到http://localhost:8080/json/timeline/checkin?limit=0,http://localhost:8080
你的本地机器界面的化石 ui 在哪里,并且json/timeline/checkin?limit=0
json API 调用说: json export of timeline ( /json/timeline
) chekins ( /checkin
) for all history ( ?limit=0
)。如果您在 url 末尾放置另一个整数而不是 0,则您将拥有最后 n 个签入。
在命令提示符下,您应该能够通过运行fossil json timeline checkin --limit=0 > timeline.json
存储在文件timeline.json
上而不是 Web 浏览器来获得相同的结果,但在本地测试中它不起作用。
API 仍然是一个移动的目标,但您可以在 [1] 找到关于这个优秀项目的文档,并在 [2] 找到用于测试参数的演示界面
[1] https://docs.google.com/document/d/1fXViveNhDbiXgCuE7QDXQOKeFzf2qNUkBEgiUvoqFN4/view?pli=1#