2

git stash show stash@{x}

x 可以取什么值(除了指向存储序列号的整数)?

4

2 回答 2

2

我知道的唯一值是以下所列的值:

git stash list

即您在问题中所指的“整数”(0、1、2、...)或基于时间的语法:

git stash手册页

您创建的最新存储存储在refs/stash; 较旧的存储可在此参考的 reflog 中找到,并且可以使用通常的 reflog 语法命名
(例如stash@{0},是最近创建的存储,stash@{1}是它之前的存储,
stash@{2.hours.ago}也是可能的)。

如果是这样,值列表是 中指定的值的一部分git rev-parse,主要受以下两个类别的启发:

  • 一个 ref 后跟@带有日期规范的后缀,括在大括号对(例如{yesterday}{1 month 2 weeks 3 days 1 hour 1 second ago}{1979-02-26 18:30:00})中,以指定 ref 在先前时间点的值。
    此后缀只能紧跟在 ref 名称之后使用,并且 ref 必须具有现有的日志 ( $GIT_DIR/logs/<ref>)。
    请注意,这会在给定时间查找本地 ref 的状态;例如,上周您当地的 master 分支中的内容。

  • 一个 ref 后跟@带有序号规范的后缀,包含在一个大括号对(例如{1}, {15})中,以指定该n-thref 的先前值。
    例如master@{1},是 master 的直接先验值,而是 mastermaster@{5}的第 5 个先验值。
    此后缀只能紧跟在 ref 名称之后使用,并且 ref 必须具有现有的日志 ( $GIT_DIR/logs/<ref>)。

于 2011-11-29T10:28:05.600 回答
0

git show stash@{0}向您显示存储条目的 sha1,应该是绝对唯一的。

于 2011-11-29T10:28:13.890 回答