gpt4 book ai didi

Git 更改分支,但不更改工作区中的文件

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

这与我的另一个问题 (Switch to another branch without changing the workspace files) 类似,但在那里工作的解决方案现在不起作用。

我需要删除一些很久以前推送给远程主机的更改。所以我不想从 master 中删除提交,但我想像还原这些更改一样更改文件。所以我这样做了:

  1. 在硕士期间,git branch limits
  2. git checkout limits
  3. git rebase --interactive <commit before the ones I wanted to remove>
  4. 在交互式控制台中,我删除了包含我想还原的更改的提交

所以现在在 limits我有我想要的代码。我怎样才能“移动”它掌握?使用来自 limits 的代码我想换成master分支,但不更改工作区中的任何文件,因此我可以将更改作为新更改提交到 master .

最佳答案

您提出的问题的答案是:

$ git checkout master             # switch to master branch

$ git reset --hard limits # hard-reset it to the limits commit
$ git reset --soft master@{1} # move the reference back to where it was, but
# don't modify the working tree or index

这将使您的工作树和索引与您 check out limits 时完全一样,但您将位于其原始位置的 master 分支上。


但是,执行此类操作的正确方法是 git revert 您尝试撤消的每个更改。

关于Git 更改分支,但不更改工作区中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11473582/

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