When you place a Rails project under version control, do you exclude anything? Log files, for example?
DHH just posted on Twitter that there will be a default .gitignore in Rails 3, which includes:
db/*.sqlite3
log/*.log
tmp/**/*
Which is usually what I exclude, some people also like to exclude the database.yml file if it's going on a public repo and you don't want to expose your database passwords.
From my current project: I am using apache + mod_rails + paperclip + sphinx + sitemap-generator
.DS_Store
log/*.log
log/*.pid
tmp/**/*
assets/**/*
db/sphinx/**/*
config/database.yml
config/staging.sphinx.conf
public/sitemap.xml
In addition, to what Dan and Sohan suggest, I also ignore any native extensions for gems. It's a bit of a hassle to have to delete the extensions every time you deploy. I find it easier to ignore them and then just run the rake tasks to build them after deploying.
Of course if you can always guarantee that your development and production environments are the same OS then you won't need to do this.