我有一个文件A和2存储了两个修改过的文件A,然后我运行了命令' git stash pop'两次。
结果是第一个stash成功弹出,但第二个存储发生如下错误:
错误:合并后将覆盖对以下文件的本地更改: 甲
请在合并之前提交更改或存储更改。 中止
我需要两个存储,我不想在第一次存储弹出后提交。 那我怎么能解决这个问题呢?有没有办法让我合并这个2个藏品然后只弹出一次以满足我的要求?
答案 0 :(得分:2)
如果不提交更改,则无法执行此操作。
弹出第一个藏匿处。
git stash pop
添加并提交
git commit -m 'temp commit'
弹出第二个藏匿处
git stash pop
添加并修改上次提交
git commit --amend --no-edit
撤消上次提交并将上次提交更改带到非暂存区域
git reset HEAD~1
答案 1 :(得分:0)
当我退回以下内容时,我自己花了很多时间处理这个问题:
error: Your local changes to the following files would be overwritten by merge
发生这种情况的一个迹象是因为当有局部修改时无法合并。 Git试图保护你免于丢失这些变化。
我读过其中一个解决方案是(1)提交本地更改或(2)暂存或(3)丢弃它们。
或许请查看此链接以获取更多信息:Resolving Git merge conflicts。
答案 2 :(得分:0)
您首先需要处理来自第一个pop的文件A的更改。提交他们并做第二次pop。然后你可以修改以前提交的更改或者做一个新提交。