2011-02-28 137 views
1

我在本地有一個rails 3應用程序。我創建了reposority,並且我知道像git這樣的git的基礎知識。我爲heroku使用git,但是我之前沒有將我的應用程序推送到公共場所。我想學的是:第一次推送到github

  1. 我應該添加到git的哪些文件忽略?因爲我在environments.rb中有一些個人密碼和密鑰,並且在初始化程序中也有一些密鑰。
  2. 如果我在git忽略中添加一些文件,我想這將是克隆它的人的問題,因爲一些文件將會丟失。
  3. 我也將繼續在我的應用程序上工作,我總是可以向environment.rb或其他地方添加新的密鑰。我是否需要克隆(分支)我的應用程序?我聽到了一些「分支,主人」,但我不知道這些條款?
+4

注意,如果如environments.rb目前由git跟蹤(也就是說,你確實在某個時候提交了它),從git中刪除它並忽略它並不會幫助; _你的密碼和密鑰在git歷史記錄中仍然可見!_ – 2011-02-28 12:10:31

回答

2

gitignore的想法是,經常有臨時文件,或特定於您的IDE文件。他們沒有向源代碼添加任何內容,有時它們包含您可能不想共享的關於您的機器的明智信息。

此回購GitHub上是gitignore模板好的收集:

https://github.com/github/gitignore

Rails的模板可供選擇:https://github.com/github/gitignore/blob/master/Rails.gitignore

編輯
如果你有你的文件當前配置,這對你的應用很重要,從它們中移除所有敏感信息,檢查它們,然後修改gitignore文件。

如果你已經在使用密碼文件中,就使用本手冊:http://help.github.com/removing-sensitive-data/

+0

+1爲「從歷史中刪除」鏈接;我不知道這是可能的。 – 2011-02-28 16:56:05

0

在你的根目錄下創建一個.gitignore文件,並添加你不想跟蹤的所有文件。確保這些文件尚未被追蹤。如果是,請刪除這些文件,將更改提交到git存儲庫,然後將這些文件添加到.gitignore文件中。

你的.gitignore文件可能看起來像這樣

 

log 
db/*.sqlite3 
db/*.sql 
*.tmproj 
tmp 
coverage 
config/database.yml 
*~ 
\#*\# 
.\#* 
target/* 
**/.DS_Store 
.DS_Store