我对我的分支做了一些更改,并意识到我忘记了我已经对该分支存储了一些其他必要的更改。我想要的是一种将我所存储的更改与当前更改合并的方法。
有办法做到这一点吗?
这更多的是为了方便,我最终放弃了,首先提交了我当前的更改,然后是我隐藏的更改,但我更喜欢一下子把它们弄进来。
我对我的分支做了一些更改,并意识到我忘记了我已经对该分支存储了一些其他必要的更改。我想要的是一种将我所存储的更改与当前更改合并的方法。
有办法做到这一点吗?
这更多的是为了方便,我最终放弃了,首先提交了我当前的更改,然后是我隐藏的更改,但我更喜欢一下子把它们弄进来。
当前回答
我这样做的方式是git先添加这个,然后git stash apply <stash code>。这是最简单的方法。
其他回答
也许,合并(通过difftool)从…是的……一个分支!
> current_branch=$(git status | head -n1 | cut -d' ' -f3)
> stash_branch="$current_branch-stash-$(date +%yy%mm%dd-%Hh%M)"
> git stash branch $stash_branch
> git checkout $current_branch
> git difftool $stash_branch
我这样做的方式是git先添加这个,然后git stash apply <stash code>。这是最简单的方法。
我找到了另一个解决办法。您可以提交当前的开放更改,然后弹出您的存储,然后软重置到上次提交之前。
git commit -am 'Open changes'
git stash pop
git reset --soft HEAD~1
我想要的是一种方法来合并我的存储更改与当前 变化
这里有另一个选择:
git stash show -p|git apply
git stash drop
Git stash show -p将显示最后保存的stash的补丁。Git apply会应用它。合并完成后,合并的stash可以使用git stash drop删除。
另一种选择是对本地未提交的更改进行另一个“git隐藏”,然后将两个git隐藏结合起来。不幸的是,git似乎没有办法轻松地组合两个存储。因此,一个选择是创建两个.diff文件并同时应用它们——至少这不是一个额外的提交,并且不涉及十步过程:|
如何获取:https://stackoverflow.com/a/9658688/32453