Git:手动合并藏匿到当前版本?

时间:2015-01-22 12:18:17

标签: git merge meld

在处理某个功能时,我有时会隐藏自己的更改,当时我认为有很多事情已经完成。

现在我意识到我需要一些代码,我已经实现,藏匿,然后删除并再次隐藏。所以我目前还没有它,但是我的一个shashed版本中有它。

所以我不能只应用那个藏匿的版本,因为有很多东西我不需要合并。有没有办法手动合并?

基本上,我可以看到当前版本之间的git diff,并用以下内容隐藏起来:

git diff stash@{n}

但是如何使用合并工具(我通常使用“meld”)来合并?

“Meld”不是必须的。

2 个答案:

答案 0 :(得分:0)

只需执行git stash apply(或pop),它就会将更改带到您的工作目录中。然后,您可以撤消不需要的更改并提交。

答案 1 :(得分:0)

这很简单

  • 结帐您的分行并确保没有未更改的文件
  • 使用"git stash apply stash@{n}"
  • 应用您需要的存储版本,例如n
  • 现在检查更改,保留您需要的更改并删除其他更改; Meld应该可以在这里工作
  • 一旦确定您拥有所需的更改子集,请添加并提交所有文件
PS:只是为了澄清,我认为你的意思是说使用Meld作为差异工具,而不是合并工具。问题中没有merge发生。