git stash在冲突中应用结果 - 为什么?

时间:2015-04-01 13:17:52

标签: git

我只是试图解除更改并且git报告了冲突:

Auto-merging core/scaldi/modules.scala
CONFLICT (content): Merge conflict in core/scaldi/modules.scala

我很好奇为什么会发生这种冲突,因为我在工作目录和索引中都没有变化:

git diff          #outputs nothing
git diff --cached #outputs nothing
git status        #outputs `nothing to commit, working directory clean`

2 个答案:

答案 0 :(得分:3)

  

很好奇为什么会发生这种冲突,因为我在工作目录和索引中都没有变化:

这还不够。 似乎你在一些提交前隐藏了变化。

假设您的树看起来像这样:

A------B------C------D[master]
        \                
         stashed -------^ (stash apply)
         sources

core/scaldi/modules.scala的隐藏文件更改与C或D中的某些更改冲突。

答案 1 :(得分:0)

对我有用的解决方案。

想象一下您在分支feature/abc中工作

  1. 切换到develop分支。从develop分支中提取并提取。
  2. 返回到feature/abc分支。将feature/abc的更改重新设置为开发。
  3. 再次应用隐藏。现在应该可以使用了。