gpt4 book ai didi

git - 'git diff' 文档指的是 'source' 和 'destination' 但没有说明哪个对应于索引

转载 作者:太空狗 更新时间:2023-10-29 14:45:46 33 4
gpt4 key购买 nike

“git diff”的文档引用“源”文件(默认输出前缀为“a/”)和“目标”文件(默认输出前缀为“b/”)。我的问题是,“源”指的是索引(暂存区)中的文件,“目标”指的是工作目录中的文件,还是相反?

最佳答案

答案既不是也不是。1

git diff 可以将事物与您的临时区域进行比较,但它并不总是这样做。让我们考虑这些常见情况:

  1. git diff , 没有额外的参数。这意味着“将与索引关联的树与当前工作目录中的树进行比较”。在这种情况下,“源”是索引。

  2. git diff HEAD , 没有额外的参数。这意味着“将 HEAD 中的树与工作目录中的树进行比较。”在这种情况下,根本不使用索引。如果您命名特定的修订版或分支,情况也是如此。

  3. git diff --cached , 没有额外的参数。这意味着“将 HEAD 中的树与索引中的树进行比较”。在这种情况下,“目的地”是索引。

  4. git diff --cached <rev> : 这与 #3 相同,但使用指定的修订作为源。

  5. git diff <rev1> <rev2> :这会比较两个指定修订版的树,同时忽略索引和工作树。

因此,有时暂存区是源或目标,有时根本不使用。


据说:不要向 Sprite 寻求答案,因为他们会同时说“否”和"is"。

关于git - 'git diff' 文档指的是 'source' 和 'destination' 但没有说明哪个对应于索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28183014/

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