为啥 git reset --hard 不把我的本地文件改回原来的状态? [复制]
Posted
技术标签:
【中文标题】为啥 git reset --hard 不把我的本地文件改回原来的状态? [复制]【英文标题】:Why doesn't git reset --hard change my local files back to their original state? [duplicate]为什么 git reset --hard 不把我的本地文件改回原来的状态? [复制] 【发布时间】:2012-07-03 07:42:19 【问题描述】:我搞砸了,实际上将一个 git 存储库推送到我的另一个存储库的 url。我正在尝试撤消此操作,但遇到了问题,而且我之前没有使用过“git reset”。
假设最后一次良好提交的哈希值是 12345。我尝试执行 git reset --hard 12345
,这似乎成功且没有错误,但由于某种原因,它并没有更改我的本地文件。我的本地工作目录仍然包含所有意外推送的文件。我该如何恢复它们?
【问题讨论】:
让我明白,你想恢复推送?你在推送的仓库还是你推送到的仓库?git status
是否显示某些文件已被修改? (是什么让你认为 Git 没有恢复文件?)
只有 push 会影响另一个 repo。这是您的问题吗,在一个回购中进行重置不会影响另一个?如果是这样,无论您在哪个 repo 中进行了重置,都在另一个 repo 中执行相同的操作。
【参考方案1】:
这些是未跟踪的文件吗?您可以通过以下方式删除它们:
git clean -f -d
【讨论】:
不,所有文件都是意外推送到仓库的。而且我想要的文件都没有恢复。以上是关于为啥 git reset --hard 不把我的本地文件改回原来的状态? [复制]的主要内容,如果未能解决你的问题,请参考以下文章