git保持多久
假设我在我的本地存储库中根据master
创建了一个名为feature1
的分支,并添加了一个或两个提交。 然后我切换回master
并决定feature1
不会创建并删除分支。
我假设分支基本上是一个指向特定提交对象的“指针”。
现在谈谈实际的问题。
git checkout SHA1-HERE
)? 是否有某种“保留策略”会删除不属于任何现有分支历史记录或标记的提交(不确定在此使用的术语是否正确......)? 这个问题的原因:我目前正在开发一个项目,该项目的receive.denyNonFastForwards
执行的基础是避免丢失任何已完成的工作(我怀疑receive.denyDeletes
也被强制执行)。 我想确保没有更好的方法来保存有承诺的未拆除的工作,并且能够清理旧的分支以避免混乱。
默认的90天:
gc.reflogexpire
gc.<pattern>.reflogexpire
git reflog
expire会删除比此时更早的reflog条目; 默认为90天。 在中间,使用“ <pattern>
”(例如“ refs/stash
”),该设置仅适用于匹配<pattern>
的ref。
所以: