git stash pop之后没有上演的文件

时间:2018-07-25 15:43:27

标签: git

我对使用git跟踪的代码进行了一些更改。这些更改已上演(添加)。然后我用$locations = Location::whereIn('id', $ids) ->latest() // like distinct, but is based on the primary key ->groupBy('device_id') // this is the piece you were missing with latest ->select('device_id', 'lat', 'lng') // only columns you want ->get(); return response()->json($location ? $location->toJson() : [], $location ? 200 : 204); 将它们藏起来。然后,我使用git stash取消了它们的身份。那时,更改已不再进行。这是预期的行为吗?如果是这样,它在git docs中有描述吗?

1 个答案:

答案 0 :(得分:3)

您可以告诉git try 恢复索引状态

git stash pop --index

乍一看,这不是默认行为,这很令人困惑,甚至可能看起来像个错误。尤其是当您仔细观察才能知道内部存储区确实保留了关于存储区创建时工作区和工作树中所存储内容的知识。但这是已记录的内容(请参见git stash下的pop文档)。

但是,问题是,如果在应用存储时存在冲突,则需要使用索引来解决冲突...因此--index操作必须失败。因此,不管是好是坏,默认行为是执行肯定会起作用的操作(即使必须使您处于“解决冲突”状态)。