如何在Git中为存储添加进一步的更改

Cas*_*ash 22 git git-stash

假设我已经隐藏了一些更改,并且我想在同一个存储中添加更多更改(例如stash@{0}).是否有捷径可寻?将两个藏匿单合并成一个怎么样?

Von*_*onC 13

我没有看到任何git stash允许修改现有git存储的选项.

实现这一目标的可能方法是:

  • 存储您的其他更改(stash@{1})
  • 藏匿一切(stash@{2})
  • tmpHEAD您当前正在修改的commit()创建一个分支
  • git stash pop 两次
  • git stash,创建一个stash@{1}包含内容的新内容,
  • 删除你的临时分支并检查你在哪里的初始分支
  • git stash pop 一次(恢复所有挂起的更改)
  • 继续你的选择性藏匿

五年后,Powerslave提出的意见:

分支魔术是完全没必要的.
你可以简单地说

  1. 用你拥有的东西创建一个新的藏匿处.
  2. git stash apply两个变更集(你可以git stash pop改为,但在这种情况下,如果你不小心搞砸了,你会遇到麻烦).
  3. 使用这些合并的更改创建一个新的存储.
  4. git stash drop另外两个变更集如果你用apply而不是pop

  • 我相信这太复杂了.分支魔术是完全没必要的.你可以简单地1.用你拥有的东西创建一个新的藏匿处.2.`git stash apply`两个变换集(你可以改为使用'git stash pop`,但是在这种情况下,如果你不小心搞砸了就会遇到麻烦).3.使用这些合并的更改创建新的存储.4.`git stash drop`如果您使用`apply`而不是`pop`,那么另外两个更改集 (3认同)

小智 11

我认为我们不必遵循所有这些步骤,

git stash pop [这将应用你最后隐藏的更改stash {@ 0}]然后再说,git stash [这将创建新的存储将所有更改存储@ {0}]