2012-03-04 60 views
4

由于Rails的tmp/cache/assets文件夹和git没有忽略tmp/*tmp/,我有一些部署问题。我的整个.gitignore是:Git忽略我的.gitignore在Rails项目上

*.rbc 
*.sassc 
.sass-cache 
capybara-*.html 
.rspec 
/.bundle 
/vendor/bundle 
/log/* 
/tmp/* 
/db/*.sqlite3 
/public/system/* 
/coverage/ 
/spec/tmp/* 
**.orig 
rerun.txt 
pickle-email-*.html 

它从GitHub gitignore repo拍摄。我能做些什么来解决它?我得到吨的错误是由于我的服务器上的局部变化(在tmp/文件夹),如error: Your local changes to 'tmp/cache/assets/D32/A10/sprockets%2F13fe41fee1fe35b49d145bcc06610705' would be overwritten by merge. Aborting.,所以我不能我开发机器:(上部署

+0

你能否证实该文件夹中的文件不会上演了吗?如果他们是你可能不得不取消他们。 – Dan 2012-03-04 10:53:40

回答

8

你有没有在项目开始后添加的.gitignore?你添加的.gitignore之前如果tmp/cache/assets/whatever已经存在,但它仍然会在回购。

  1. 尝试git rm -r tmp && git commit删除整个tmp目录中的代表O操作。

  2. 尝试在此处进行部署,以查看部署是否从已知良好状态运行。如果它仍然不起作用,你知道还有其他问题。

  3. 如果一切正常,则不应再对tmp进行新更改。

此外,作为@thenetimp指出,当前的的.gitignore只会忽略/tmp,但不something/tmp。我不确定这是否是你的意图。