git - git apply stash 没有索引号
问题描述
有没有一种方法可以使用它的名称来应用存储?我得到了如下的存储列表,我想申请 stash@{0}。
stash@{0}: On support.1.5: NoGoMod
stash@{1}: On feature/WORK-7929: 6Aug
stash@{2}: On support.1.5: 17Jul
stash@{3}: On WORK-7739: temp
我可以用它的索引号(如(git stash apply "stash@{0}"
))应用它,但是有没有办法可以用它的名字应用它......例如。git stash apply "stash@{NoGoMod}" 或类似的东西?
我面临的问题是索引号随着我创建的每个新存储而变化。因此,如果添加了新的存储,列表将如下所示
stash@{0}: On support.1.5: NewStash
stash@{1}: On support.1.5: NoGoMod
stash@{2}: On feature/WORK-7929: 6Aug
stash@{3}: On support.1.5: 17Jul
stash@{4}: On WORK-7739: temp
如果 stash 不能用它的名字应用,那么有什么办法可以保持它的索引号不变?有没有一种方法可以将新的存储添加到列表底部并且我现有的存储索引号不会改变?
感谢期待
解决方案
存储列表是一个stack。这意味着每个新的存储都被“推”到堆栈上。所以不,没有办法阻止编号更改;根据堆栈的定义,最近的存储始终为零。
存储没有“名称”,就像您在提交中包含的消息是它的“名称”一样。如果分支或标签恰好指向它,则提交由名称唯一标识;否则,它由其 SHA 标识号标识。类似地,存储堆栈中的存储由其在堆栈中的位置标识。
(我很想补充:如果你不喜欢,不要使用 stash。在我看来,stash 是魔鬼的工作。它们不应该用于临时存储分支的状态;也就是说提交的用途。如果您想说“保留我的位置”,请创建一个临时分支并提交。现在您有了一个可以随时返回的名称。存储仅用于索引与索引不同的紧急情况工作树并且没有时间解决这个问题,因此您需要将工作树的状态与索引分开保存。)
推荐阅读
- javascript - selectpicker 值如何与其他页面发布 ajax
- android - 华为Awareness Kit抛出异常代码:907135701
- barcode - 使用 USB 扫描仪和手机摄像头扫描仪时,Code 39 条码扫描不同的值
- java - 如果 Applet 将被淘汰,如何在客户端虚拟机中执行 java 代码?
- azure-devops - 在 YAML 中为变量组使用管道变量?
- scala - 如何在Scala中使用动态键解析动态Json
- metal - 如何在 Metal Performance Shaders 中实现矩阵所有元素的标量运算?
- python - 如何使用此功能更改“项目”的值?这将是使用递归进行验证的示例
- firebase - 更改 Firebase 云规则
- inheritance - 从parameter.twig.html Drupal 8 中的node.twig.html 读取字段值