随机暂存文件会自动出现在git workdir中
我使用随机暂存文件会自动出现在git workdir中,git,Git,我使用git new workdir来分隔我的工作区域(git版本是2.1.2,git worktree不可用)。我保留了一个存储库的克隆副本(我知道workdirs通过符号链接指向它)。随着时间的推移,我从未接触过的随机文件会自动出现在克隆目录中(我不必接触该目录),有时也会出现在相关的workdirs中。许多这样的文件会出现,并且它们总是处于暂存状态(这些文件是合法的存储库对象,也就是说,它们不是完全随机的垃圾)。我一直找不到一个押韵或理由,除了我关心的工作通常不受影响;它似乎只影响我不经常
git new workdir
来分隔我的工作区域(git版本是2.1.2,git worktree
不可用)。我保留了一个存储库的克隆副本(我知道workdirs通过符号链接指向它)。随着时间的推移,我从未接触过的随机文件会自动出现在克隆目录中(我不必接触该目录),有时也会出现在相关的workdirs中。许多这样的文件会出现,并且它们总是处于暂存状态(这些文件是合法的存储库对象,也就是说,它们不是完全随机的垃圾)。我一直找不到一个押韵或理由,除了我关心的工作通常不受影响;它似乎只影响我不经常使用的目录。这已经持续了几个月了
样本工作顺序:
git new workdir repo TICKET
<代码>cd票<代码>git获取<代码>git
联席分行gitdelworkdir
命令
任何孤立这一点的提示或阐明情况的想法都将不胜感激;到目前为止,我还没有想出任何主意。虽然我已经使用git几年了,但我对git的了解还是相当有限的。我确实看到git new workdir
已被git worktree
取代;这是原因之一吗
虽然我试图搜索SO或互联网,但很难找到有效的症状关键词。我意识到我的写作有点欠缺,但很难在小范围内复制这个问题,因为这需要创建我自己的回购协议,而我没有办法这样做(也需要投入大量可能毫无结果的时间和精力)
环境是rhel6 AWS
编辑:我已经确定,在受影响的目录中,差异似乎与最近签入的内容相反,大概是因为我上次拉了一下workdir。添加的文件显示为已删除,已删除的文件显示为已添加,而已修改的文件将被反转。这与某些指数变得混乱的理论是一致的
常见问题
你能补充一些细节吗,“出现了一堆暂存文件,包括新的、修改的和删除的文件,与我在任何地方做过的任何事情都完全无关”?我猜这些不是随机文件中的随机数据。顺便说一句,我今天肯定会用
git worktree
来做这类事情。我们可以假设你没有使用子模块,也没有使用任何挂钩吗?谢谢,@Chris,我添加了一些额外的澄清细节。这些文件是合法的repo对象,而不是垃圾。它看起来类似于如果我在主线更改到我的工作DIDER的中间,可能会发生什么,除非没有合并指示,并且我没有合并。尝试将显示的更改与特定提交联系起来会很有趣。嗯,@K.A.Buhr,我不知道子模块是什么,但我使用的是我的组织提供的挂钩。我查看了这些脚本是否有任何可疑之处,但大多数情况下,它们会检查代码中的调试指示器,强制执行票证编号规范,更新cscope,诸如此类的良性内容。我没有使用旧的git new workdir
脚本,但它们会使用git使用的链接和(单数)索引文件来玩把戏。如果技巧出了问题,您将有不同的工作树相互碰撞对方的索引文件,这将导致您看到的症状。最好使用单独的克隆,这样可以避免这个问题,但显然会占用更多的空间。