我经常处于要从git远程签出特定refspec而不在本地给它命名的位置。我通常用来执行此操作的命令的格式为:
MasterDetailPage
在大多数情况下,此操作都可以正常进行。也就是说,我最终在refspec所引用的提交上处于分离的头部状态。但是,该命令大约每周一次完成,没有错误,但是我最终在祖先链中某个我没有要求的地方进行了一次古怪的古老提交。
示例输出:
git fetch <remote-url> refs/x/y/z && git checkout FETCH_HEAD
在此之后立即执行完全相同的命令,这给了我希望首先获得的提交。
这里可能出什么问题了?考虑到它说它正在将FETCH_HEAD设置为我所要求的并且没有返回错误,即使从理论上我也什至不理解为什么它会在下一刻指向错误的提交。
建议调试哪些步骤?我能看到的唯一模式是,它总是完全相同的旧提交,一旦提交失败就会被检出。它看起来没有什么特别之处,只是看起来它是回购中带有标签的第一个更改之一。