应该将Ruby on Rails项目的哪些部分检入存储库?

时间:2011-05-09 21:06:56

标签: ruby-on-rails mercurial

我正在为Ruby on Rails项目设置一个新的源代码控制库。我正在使用Mercurial,我想知道我的本地目录的哪一部分要检查。

我在项目工作区中本地设置的方式是以下文件结构:

drwxr-xr-x 7 agenadinik agenadinik 4096 2011-04-27 09:58 app
drwxr-xr-x 5 agenadinik agenadinik 4096 2011-04-27 09:58 config
-rw-r--r-- 1 agenadinik agenadinik  154 2011-04-27 09:58 config.ru
drwxr-xr-x 3 agenadinik agenadinik 4096 2011-04-29 14:12 db
drwxr-xr-x 2 agenadinik agenadinik 4096 2011-04-27 09:58 doc
-rwxrwxrwx 1 agenadinik agenadinik  781 2011-05-05 18:57 Gemfile
-rw-r--r-- 1 agenadinik agenadinik 1745 2011-05-05 18:57 Gemfile.lock
drwxr-xr-x 3 agenadinik agenadinik 4096 2011-04-27 09:58 lib
drwxr-xr-x 2 agenadinik agenadinik 4096 2011-04-27 09:58 log
drwxr-xr-x 3 agenadinik agenadinik 4096 2011-05-02 17:16 mysql2
drwxr-xr-x 5 agenadinik agenadinik 4096 2011-04-29 13:17 public
-rw-r--r-- 1 agenadinik agenadinik  264 2011-04-27 09:58 Rakefile
-rw-r--r-- 1 agenadinik agenadinik 9126 2011-04-27 09:58 README
drwxr-xr-x 2 agenadinik agenadinik 4096 2011-04-27 09:58 script
drwxr-xr-x 7 agenadinik agenadinik 4096 2011-04-27 09:58 test
drwxr-xr-x 6 agenadinik agenadinik 4096 2011-04-27 09:58 tmp
drwxr-xr-x 3 agenadinik agenadinik 4096 2011-04-27 09:58 vendor

谢谢, 亚历

4 个答案:

答案 0 :(得分:5)

Gemfile.lock必须签入!

忽略

  • TMP /
  • 分贝/ *。源码
  • 公共/系统/ *
  • 登录/ *

答案 1 :(得分:3)

我相信你应该忽略

  • TMP /
  • 分贝/ *。源码
  • 公共/资产(系统等 - 附加)
  • 登录/ *

修改

@normalocity写道:
任何包含敏感信息的文件(特别是如果代码存储库位于公共场所,例如Git)。例如,我有一个应用程序将我的SMTP服务器密码存储在一个文件中,以便我的应用程序可以发送电子邮件。但是,包含该密码的文件不包含在我的存储库中。如果文件发生了变化,我会手动安全地复制它(这种情况非常罕见,而且在我的测试套件出现故障时很明显)。 - 正常速度

答案 2 :(得分:2)

这是一本很好的指南:http://railscasts.com/episodes/36-subversion-on-rails

您基本上想要忽略这些文件:

  • 登录/ *
  • TMP / *
  • 配置/ database.yml的

答案 3 :(得分:2)

Rails 3项目默认忽略这些文件(对于Git,但对于任何VCS都应该是相同的):

.bundle
db/*.sqlite3
log/*.log
tmp/

我建议您将Gemfile.lock保留在存储库中。如果其他人正在处理同一个项目,它将保证每个人都使用每个gem的完全相同的版本。查看更多here