我该如何解决"fatal: ambiguous argument 'HEAD~1': unknown revision or path not in the working tree"?

How can I solve "fatal: ambiguous argument 'HEAD~1': unknown revision or path not in the working tree"?

我在 master 上只有 一个 提交并且没有将它合并到 remote 中。我想删除我的提交,保留我更改的文件,更改我的分支,然后提交它们。

现在我已经使用了git reset --soft HEAD~1,但是我遇到了这个错误:

fatal: ambiguous argument 'HEAD~1': unknown revision or path not in the working tree. Use '--' to separate paths from revisions, like this: 'git [...] -- [...]'

HEAD~1 是一种指向“当前提交的父级”的方法

在您的情况下:master 上的(唯一)提交没有父项...


如果您打算在另一个分支上进行此提交,只需创建另一个分支即可:

git checkout -b my/branch

# The above is a shortcut to:
git branch my/branch    # Create a new branch `my/branch` on the current commit
git checkout my/branch  # Switch to this branch

在其历史记录中只有一次提交,“从 master 中删除提交”等同于“删除 master”。

这样做没有坏处(您可以稍后重新创建它):git branch -d master,但您也可以使用本地 master 分支机构。

另一种方法是修改第一个提交:

# Make your change in the file(s)
git add file_changes
git commit --amend --no-edit

资源:

如果这是来自 flutter,那么问题就出在你的安装过程中。 检查你的 .git > refs ,如果 heads 和 remote 目录是空的,那么你只是有不完整的文件。 删除当前的 flutter 文件夹并重新下载。 确保 100% 的文件在提取期间 moved/copied