问题标签 [git-reset]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
7 回答
42160 浏览

git - 是否仍然可以在 git 中恢复已删除的未跟踪文件?

假设昨天我在我的主分支上做了一些更改,但我忘了添加、提交它们。早上我做了

在这种情况下是否可以恢复已删除的文件?

0 投票
2 回答
2456 浏览

git - Git Reset - 远程/原点/主控与本地主控不同步

在我的一个存储库中,本地 master 领先于 remotes/origin/master

我所有其他本地存储库(基于相同的远程存储库)在相同的提交哈希(123)处具有远程/源/主。如何重置本地存储库,以便远程/源/主重新同步?

0 投票
1 回答
167 浏览

git - 'reset hard head' 和 'reset hard' 和有什么不一样?

git reset --hard HEAD我是 git 新手,所以问题可能很简单,和之间有什么区别git reset --hard

0 投票
3 回答
11465 浏览

git - 将推送的分支恢复为具体的提交

我已经将一个 dev 分支(具有恒定的,有时是不稳定的更改)合并到我们的 master 分支(我们存储已发布的稳定代码的地方)。我想将 master 分支恢复到之前的状态,就像从未发生与 dev 分支的合并一样(并且当将来我们合并 dev 分支时,我们现在将丢弃的所有更改都将“再次”合并)。

这是 master 分支的当前状态,我希望它在 HEAD 处具有“professional-1.1.2”提交/标记。

master 分支的状态

我试过了:

经过一番研究,我认为更好的选择是做 agit reset --hard professional-1.1.2git push --force作为Git 的答案:如何忽略快进并将原点 [分支] 恢复到较早的提交?恢复推送的 git commit。其他开发人员在同一个办公室,他们永远不应该向 master 提交任何东西(我也不应该,但是......是的,我们没有每个分支的权限),所以告诉他们并做任何事情都不是什么大问题需要采取的行动。

所以最后的问题是:git revert something还是git reset --hard <TAG>&& git push --force?如果git revert,我应该使用哪个命令行?

0 投票
2 回答
1153 浏览

git - Git 通过单个命令重置和签出

考虑一下我已经准备好提交一个db/schema.rb我不打算更改的文件(例如 )。我需要去做:

我可以通过单个命令来完成吗?

0 投票
1 回答
816 浏览

ruby-on-rails - 如何将'schema.rb'重置为最后一个git头?

我想摆脱自上次提交以来所做的一切,包括我创建的表,所以我做了

所以这摆脱了我创建的迁移,但在架构中看起来表仍然存在。我知道我可以创建新的迁移来删除这些表,但我只是想知道未来的参考如何即使在数据库级别上也可以重置到最后一次提交。

我需要删除数据库中的表的另一个原因是,当我尝试创建迁移(模型)以创建确切的表时,它给了我一个错误并说它们已经存在。因此,如果我将其推送到 github 和生产环境,它不会创建表,因为迁移不存在。因此,我认为有必要通过某种方式(最好是回滚)在本地删除创建的表,然后重新创建迁移。

(我正在使用 PostGreSQl)

0 投票
2 回答
7377 浏览

git - 恢复添加到索引但随后被 git reset 删除的文件

我在索引中添加了一些文件,但后来我错误地用git reset --hard. 我该如何恢复它们?这是发生的事情:

  1. 我使用添加了所有文件git add .
  2. 然后我承诺
  3. 当我检查状态时,仍然有文件未包含在 add 的提交中,这很奇怪
  4. 我再次添加了未跟踪的文件,这次成功了
  5. 但我希望所有内容都在 1 次提交中,所以我查找了如何取消我刚刚提交的内容
  6. 我用过git reset --hard HEAD^——显然是个坏主意,所有文件都被删除了
  7. 所以我过去常常git reflog找到我离开的地方
  8. 然后我过去常常git reflog ______回到我的最后一次提交。
  9. 然后我曾经git reset HEAD取消提交提交(我最初应该做的)但是我在提交之后添加的文件(见上文)仍然消失了。

我如何取回这些文件?

0 投票
1 回答
301 浏览

git - Git 在合并后恢复隐藏的更改 --no-ff

我经常使用“git stash”和“git stash pop”来保存和恢复工作树中的更改。这就是我所做的,我之前未提交的更改现在已经消失了。

然后我想我可以恢复合并,我做到了:

现在,我在 中的任何地方都看不到我以前隐藏的任何未提交的更改file.ext,只有合并的代码。我怎样才能恢复我最初隐藏的所有更改?

0 投票
1 回答
1291 浏览

git - git reset ---hard 返回错误

我是 git 新手。当我希望硬重置丢弃所有本地修改时,git返回合并冲突

HEAD 现在位于 3291a25 将创建合并冲突 1

我的操作:

  1. 大约半个月我承诺如下

    /li>
  2. 今天我希望重置 --hard 到这个 ref

    /li>
  3. 输出让我感到困惑。事实上,这只是我的旧评论。

0 投票
9 回答
105281 浏览

git - 为什么 git 不能通过路径进行硬/软重置?

$ git reset -- <file_path>可以通过路径重置。

但是,$ git reset (--hard|--soft) <file_path>会报如下错误: