8

我正在使用 phpFog 并一直在部署 viagit 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

4

1 回答 1

0

我的一些部署来自完全不同的仓库

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

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

您也可以通过尝试从 git 列表中删除文本文件来成功:

git rm --cached random.txt

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

于 2012-02-10T03:00:52.403 回答