【发布时间】:2012-02-05 20:17:38
【问题描述】:
我正在使用 phpFog 并且一直通过 git push -f <repo> 进行部署以覆盖服务器上的现有内容。我的一些部署来自完全不同的存储库,因为我正在尝试一些东西。
我发现以前推送的文件在当前推送的存储库中不再存在,并且在服务器上徘徊。我可以删除该文件(通过 php 脚本),但每次新推送到服务器都会重新创建该文件——即使新推送的 repo 不包含它。
我想,经验教训是不要用力推送——但为什么在推送不包含它的 repos 时会重新创建随机文件?!
这又是我所看到的:
- git push -f repo_1(包含random.txt)
- random.txt 存在
- 我删除了所有文件,random.txt 现在不见了
- git push -f repo_2(不包含random.txt)
- random.txt 再次存在(为什么?!)
编辑:我假设强制更改存储库会使旧文件仍然被跟踪,即使新存储库从未跟踪它们。我已经修改了我的部署方法,现在克隆 phpFog 上的内容,git 删除所有内容,并在推送之前添加我的新文件。 https://github.com/swt83/phpfog-deploy
【问题讨论】:
-
+1 用于使用 phpFog...即使对我来说似乎有点过于昂贵
-
你只是删除文件而不提交还是让git知道它已被删除?您可能需要将其从索引 (
git rm --cached random.txt) 中删除并提交。