忽略并删除本地Git主服务器中的文件,但强制推送时,更改不会反映在上游/主服务器中

时间:2013-05-25 16:04:59

标签: git heroku

我正在尝试从myoku repo上的app/assets/images分支中删除master个文件。我的.gitignore文件中有该目录,我的本地主文件是最新删除的文件。我成功地使用git rm -rf app/assets/images进行了删除。我已经尝试了git push heroku master --force但是app / assets / images目录仍然存在于远程仓库中。是否有命令用我的本地主人完全取代heroku master?

澄清我的问题:我正在尝试将我最新的主提交推送到heroku master。我的slu size尺寸太大了。我想删除app/assets/images目录,以便我可以有更多空间添加到public/assets。在更改为.gitignore并重新提交代码后,我的slug大小是相同的。我不确定我是否理解git足以回答评论中提出的问题。

感谢。

2 个答案:

答案 0 :(得分:3)

将文件名放在.gitignore中不会将它们从repo中删除。它只是告诉git将来忽略它们。如果要删除文件,只需按正常方式执行:

git rm -rf app/assets/images
git commit
git push

答案 1 :(得分:0)

据我所知 - 通过添加目录.gitignore,你告诉git不要跟踪,推送或打扰对它做出的更改。 [这不是你想做什么,直到它是空的]

据说这是在告诉你推动单独离开这个远程app / assets / images目录。

你想从[.gitignore文件中取出[DIR]的那一行(或者像这样评论)

的.gitignore

#app/assets/images/

然后从当地工作的图像中删除文件。

     git rm -rf app/assets/images/*

进行提交,然后使用包含目录空的提交进行推送...

    git commmit -m "removed the images from"
    git push [remote] master

然后你可以再次忽略它,只要没有其他进程改变远程工作目录

它就会保持不变