gpt4 book ai didi

使用 git diff 时出现 Git 错误 "fatal: bad revision"

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

我正在尝试显示某个文件夹的来源之间的变化,我希望它仅显示使用以下命令添加和修改的文件夹的名称,但它返回错误。

命令:

git diff --name-only --relative --diff-filter AM origin -- foldername/

错误:

fatal: bad revision 'origin'

为什么会突然这样?我该如何解决?

编辑

使用不同的 repo 和 'origin/master' 只会返回不同的结果

C:\gitprojects\samplefolder (master -> origin)
λ git diff --name-only --relative --diff-filter AM origin/master
readme.md

C:\gitprojects\samplefolder (master -> origin)
λ git diff --name-only --relative --diff-filter AM master origin/master
readme.md

C:\gitprojects\samplefolder (master -> origin)
λ git diff --name-only --relative --diff-filter AM origin
Properties/sample.properties
readme.md

最佳答案

看看 man git diff 的页面(运行 man git-diff )。

描述部分,您可以识别调用 git diff 的第 4 个变体作为你正在使用的那个。 man页面详细说明了它的用法,如下所示:

git diff [--options] <commit> [--] [<path>...]
This form is to view the changes you have in your working tree relative to the named <commit>. You can
use HEAD to compare it with the latest commit, or a branch name to compare with the tip of a different
branch.

在您的例子中,您使用的是字符串 origin作为 <commit> (或修订)你想比较你的工作树。这行不通,因为 origin不是修订/提交。这就是错误消息告诉您的内容。

origin是一个“远程”。远程只是对存储库和 git diff 的另一个远程 克隆的引用。无法在整个存储库之间进行比较,只能在修订/提交之间进行比较。

您可以通过指定要比较的提交来解决此问题。一个例子是 origin/master , 意思是与 master 的尖端进行比较远程上的分支名为 origin .具体指定什么提交取决于您要具体查找的内容。

关于使用 git diff 时出现 Git 错误 "fatal: bad revision",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50064631/

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