是";git rev parse——short";知道当前目录吗?

是";git rev parse——short";知道当前目录吗?,git,Git,一些git rev parse命令对从哪个目录运行命令很敏感。(这就是--前缀存在的原因) git rev parse--short HEAD是这些命令之一吗?Edit(每个编辑的问题):由于HEAD总是指定当前版本,并且不依赖于工作树中的路径,因此--prefix在这里没有作用 [以下原始答复(包括上述内容)。] 我不太清楚你想问什么 在内部,git rev parse定位当前工作树和其他项。但是,如果在没有附加参数的情况下运行,它就没有任何用处。例如: $ git rev-parse --

一些
git rev parse
命令对从哪个目录运行命令很敏感。(这就是
--前缀
存在的原因)

git rev parse--short HEAD
是这些命令之一吗?

Edit(每个编辑的问题):由于
HEAD
总是指定当前版本,并且不依赖于工作树中的路径,因此
--prefix
在这里没有作用

[以下原始答复(包括上述内容)。]


我不太清楚你想问什么

在内部,
git rev parse
定位当前工作树和其他项。但是,如果在没有附加参数的情况下运行,它就没有任何用处。例如:

$ git rev-parse --short
fatal: Needed a single revision
git rev-parse HEAD
$ git rev-parse --sq-quote --short --prefix x HEAD:./Documentation
 '--short' '--prefix' 'x' 'HEAD:./Documentation'
这个特定的
git rev parse
命令完全失败。无论是否有任何
--前缀
,它都会这样做

(如果没有Git存储库,它甚至会更早失败:

fatal: Not a git repository (or any parent up to mount point /)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
但这不是很有趣。)

--short
选项只会缩短成功时显示的哈希ID

通过解析修订说明符生成的哈希ID可以依赖于工作树,但并不总是如此。例如:

$ git rev-parse --short
fatal: Needed a single revision
git rev-parse HEAD
$ git rev-parse --sq-quote --short --prefix x HEAD:./Documentation
 '--short' '--prefix' 'x' 'HEAD:./Documentation'
生成当前(或
@
)提交哈希。使用
--前缀
不会影响它。但是:

git rev-parse HEAD:./path
为给定的
路径
参数生成相对于存储库中当前位置的树或blob散列;在这里,使用
--前缀将影响它

同时,
git rev parse
可以用来做除产生提交散列以外的事情。在这里,
--short
--prefix
可能变得完全不相关。例如:

$ git rev-parse --short
fatal: Needed a single revision
git rev-parse HEAD
$ git rev-parse --sq-quote --short --prefix x HEAD:./Documentation
 '--short' '--prefix' 'x' 'HEAD:./Documentation'
因此,您提供的其他参数和选项非常重要。

编辑(每个编辑过的问题):由于
标题始终指定当前修订,并且不依赖于工作树中的路径,
--prefix
在此处无效

[以下原始答复(包括上述内容)。]


我不太清楚你想问什么

在内部,
git rev parse
定位当前工作树和其他项。但是,如果在没有附加参数的情况下运行,它就没有任何用处。例如:

$ git rev-parse --short
fatal: Needed a single revision
git rev-parse HEAD
$ git rev-parse --sq-quote --short --prefix x HEAD:./Documentation
 '--short' '--prefix' 'x' 'HEAD:./Documentation'
这个特定的
git rev parse
命令完全失败。无论是否有任何
--前缀
,它都会这样做

(如果没有Git存储库,它甚至会更早失败:

fatal: Not a git repository (or any parent up to mount point /)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
但这不是很有趣。)

--short
选项只会缩短成功时显示的哈希ID

通过解析修订说明符生成的哈希ID可以依赖于工作树,但并不总是如此。例如:

$ git rev-parse --short
fatal: Needed a single revision
git rev-parse HEAD
$ git rev-parse --sq-quote --short --prefix x HEAD:./Documentation
 '--short' '--prefix' 'x' 'HEAD:./Documentation'
生成当前(或
@
)提交哈希。使用
--前缀
不会影响它。但是:

git rev-parse HEAD:./path
为给定的
路径
参数生成相对于存储库中当前位置的树或blob散列;在这里,使用
--前缀将影响它

同时,
git rev parse
可以用来做除产生提交散列以外的事情。在这里,
--short
--prefix
可能变得完全不相关。例如:

$ git rev-parse --short
fatal: Needed a single revision
git rev-parse HEAD
$ git rev-parse --sq-quote --short --prefix x HEAD:./Documentation
 '--short' '--prefix' 'x' 'HEAD:./Documentation'

因此,您提供的其他参数和选项非常重要。

是的,我的意思是
git rev parse--short HEAD
而不是
git rev parse--short
。我已经更新了这个问题。是的,我的意思是
git rev parse--short HEAD
而不是
git rev parse--short
。我已经更新了问题。