吉特rm';git pull上未删除的d文件
我在我的开发机器上有一个文件夹(其中包含一些文件),我做了一个吉特rm';git pull上未删除的d文件,git,Git,我在我的开发机器上有一个文件夹(其中包含一些文件),我做了一个git rm-r文件夹,它标记要删除的文件/文件夹。然后我git提交它们git推送它们 当我到达我的生产服务器(它已经有我从我的开发机器上删除的文件)并且我git pull时,这些文件不会被删除 如果我随后手动删除文件夹,git status不会告诉我现在丢失的文件 不知何故,gitrm正在阻止git跟踪文件,但是push-pull场景并没有导致它们按预期的方式运行。阅读让人相信它应该像我预期的那样工作,但事实并非如此,我现在已经测试
git rm-r文件夹
,它标记要删除的文件/文件夹。然后我git提交它们git推送它们
当我到达我的生产服务器(它已经有我从我的开发机器上删除的文件)并且我git pull
时,这些文件不会被删除
如果我随后手动删除文件夹,git status
不会告诉我现在丢失的文件
不知何故,gitrm
正在阻止git跟踪文件,但是push-pull
场景并没有导致它们按预期的方式运行。阅读让人相信它应该像我预期的那样工作,但事实并非如此,我现在已经测试了两次,只是想弄清楚到底发生了什么
我错过了什么
================编辑==============
开发和生产都在提交4bdd8627fdf22dab58d6e1de6ec6e6fc15d1ff5a
我从一个主版本到另一个主版本,有问题的文件已经进行了多次修订(数周)。您是否在生产服务器上合并了远程推送的版本?请参阅以获取快速参考 您是否在生产服务器上合并了远程推送的版本?请参阅以获取快速参考 这就是它的工作原理。在过去的几天里,我已经做了好几次了。我猜你无意中遗漏了一些干预步骤。可能它们以前在生产服务器上被删除,有人手动恢复了它们。可能它们在生产服务器上被修改过,甚至是一些看似无害的东西,比如备份还原或权限更改。也许你有一个非标准的配置设置。如果不知道您使用的命令的完整历史和完整顺序,很难说。如果您在删除之前对提交执行git重置--hard
,然后再次尝试拉取,那么它是否有效?这就是它的工作方式。在过去的几天里,我已经做了好几次了。我猜你无意中遗漏了一些干预步骤。可能它们以前在生产服务器上被删除,有人手动恢复了它们。可能它们在生产服务器上被修改过,甚至是一些看似无害的东西,比如备份还原或权限更改。也许你有一个非标准的配置设置。如果不知道您使用的命令的完整历史和完整顺序,很难说。如果您在删除之前对提交执行git重置--hard
,然后再次尝试拉取,那么它是否有效?您的开发机器上的存储库和生产服务器是否都肯定处于同一提交状态?(即,git show
的输出是否相同?)您的生产存储库中的这些文件在您提取之前的提交中是否在git中被明确跟踪?(即,它们是否列在git ls tree-r HEAD@{1}
中?)您的开发机器上的存储库和生产服务器是否确实处于同一提交位置?(即,git show
的输出是否相同?)您的生产存储库中的这些文件在您提取之前的提交中是否在git中被明确跟踪?(即,它们是否列在git ls tree-r HEAD@{1}
?)编辑问题回答您的问题。编辑问题回答您的问题。