gpt4 book ai didi

git - 如何将 org 文件置于 git 控制之下,以便 git 忽略计算结果部分中的更改?

转载 作者:行者123 更新时间:2023-12-04 04:10:27 26 4
gpt4 key购买 nike

我喜欢使用 Git 对组织文件进行版本控制。我的大部分组织工作都使用 org-babel 来运行与文本集成的代码。每次我重新运行代码时,比如作为导出的一部分,git status 将代码块执行的结果视为对文件的更改,从而导致长时间且有时不太有用的提交日志。

有没有办法让 Git 检测所有更改(开箱即用的体验),或者,如果有人愿意,忽略 +RESULTS: 部分中发生的更改--文档中代码输出的任何内容,因此可能会在每次运行(导出到导出)之间发生变化?前者将记录特定的代码执行;后者将记录可以生成此类报告的“程序”(org/org-babel 文件),而无需专门记录一次执行的结果。

最佳答案

您可能会考虑一个 content filter driver ,特别是 clean 过滤器

clean filter

(图片显示在“Customizing Git - Git Attributes”中,来自“Pro Git book”)

它可以对特定文件或文件集执行您选择的脚本declared in a .gitattributes .

.gitattributes 是版本化的,所有开发人员都可以看到/使用。

但是内容过滤器必须由 git config 指令激活。

git config filter.xxx.clean 'script'

由于这是一个本地设置,需要所有开发人员重复,所以这可能不是理想的,但仍然适合您自己的个人设置。

该脚本可以是一个简单的 sed,它将删除任何 +RESULT: 部分,使文件从 Git 的角度看起来没有变化,即使在执行之后。

关于git - 如何将 org 文件置于 git 控制之下,以便 git 忽略计算结果部分中的更改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61830641/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com