git push force,phpFog和随机文件不在我的repo中出现

时间:2012-02-05 20:17:39

标签: php git phpfog

我正在使用phpFog并且已经通过git push -f <repo>部署来覆盖服务器上的现有内容。我的一些部署来自完全不同的回购,因为我正在尝试一些事情。

我发现上一次推送的文件在当前推送的仓库中不再存在,在服务器上停留。我可以删除该文件(通过php脚本),但每次对服务器的新推送都将重新创建该文件 - 即使新推送的repo不包含它。

我学到的经验教训是不推力,但是为什么在推送不包含它的回购时会重新创建随机文件?!

这是我所看到的:

  • git push -f repo_1(包含random.txt)
  • random.txt存在
  • 我删除所有文件,random.txt现已消失
  • git push -f repo_2(不包含random.txt)
  • random.txt再次存在(为什么?!)

编辑:我假设强制更改repo会使旧文件仍然被跟踪,即使新的repo从未跟踪它们。我已经修改了我的部署方法,现在克隆phpFog上的内容,git删除所有内容,并在推送之前添加我的新文件。 https://github.com/swt83/phpfog-deploy

1 个答案:

答案 0 :(得分:0)

  

我的部分部署来自完全不同的回购

如果你有一个工作副本(一个没有borked),你可以简单地删除git源目录并CLONE / PULL你的工作副本吗?

提交时,git commit -am "Message here"始终找到已删除的文件等。这是您用来提交的命令吗?

尝试从git列表中删除文本文件也可能会成功:

git rm --cached random.txt

Github向您展示了如何防止该文件被跟踪。