当你使用 git commit -a ,Git构建了一个 新的和临时的 用于保存要提交的文件的索引。这个新临时索引的存在是通过环境变量传递的, GIT_INDEX_FILE 。
git commit -a
GIT_INDEX_FILE
当你使用 ssh 在另一台机器上运行命令(即使它是一台VM,它是另一台用于此目的的机器),其他机器也没有收到 GIT_INDEX_FILE 设置,所以它使用正常的日常指数。 那 index没有变化,所以你看到的行为是正确的:事实上,没有 是 上演。
ssh
请注意,索引文件的内容在Windows和Linux上有所不同(Git存储几乎是原始的 stat 系统调用数据),因此尝试以这种方式跨主机共享索引文件通常是不明智的。事实上,Virtualbox共享文件夹有许多......功能?错误?不合理的特性?无论你想叫什么, 事 在Git环境中表现不佳。我觉得将每个虚拟机视为一个真正独立的机器更加可靠,尽可能少地使用共享文件夹功能,特别是从不使用它来存储正在使用Git的工作。
stat