git藏匿问题

Jac*_*cko 5 git conflict git-stash

我正在运行msysgit 1.7.3.1.如果我运行stash apply,并且存在冲突,我的所有存储更改都会暂停.这是正确的行为吗?我发现它有点令人惊讶.

另一个问题:如果我存储了10个文件,并且其中一个文件存在冲突,则会在存在冲突时存储应用中止,或者是否应用所有非冲突文件.

最后,如果我执行以下操作:

git stash
git pull
git stash apply
Run Code Online (Sandbox Code Playgroud)

另一个开发人员删除了我藏匿的文件,然后我无法在此文件上应用存储.如何从藏匿处检索我的更改?

谢谢!

Ada*_*ruk 6

索引用于表示这些文件没有冲突.您的冲突文件不应该在索引中.

重新编写10个文件.Stash会将剩余的9添加到索引中.修复剩余文件中的冲突.将其添加到索引中.然后提交.

从缺少的藏匿处重新进行更改.您可以通过执行git checkout(stash-SHA1或其他对它的引用>)来获取文件 - filespecification

你也可以将你的藏匿处改为一个分支,然后你可以结账并做更多的事情.

希望这可以帮助

  • 应用中隐藏的更改位于索引中的事实是设计的.当您继续工作时,该工作将不会上演.通过这种方式,您可以区分自应用存储后所执行的操作. (7认同)
  • 我的工作流程通常是这样的:1)工作的东西,所以工作dir很脏2)想拉人的变化3)藏匿4)拉5)藏匿申请6继续工作.我通常不准备在存储应用后提交,这就是为什么我的存储文件暂停是意外的. (3认同)
  • 1)区分冲突和非冲突的变化,2)区分隐藏的变化和后续的变化.#1是有道理的,但如果#2为真,那么即使没有冲突,也会对变更进行索引,但这种情况不会发生.我希望文件解决这个问题...... (3认同)
  • 好的,我明白了.索引用于跟踪没有冲突的文件.但是,我的工作流程通常是这样的: (2认同)