2012-08-07 85 views
1

我在Github上有一個公共存儲庫。這是一個在線網絡服務。我們只是想分享我們web服務的源代碼。我們將所有連接數據和功能存儲在connect.php文件中。並在必要時將其包括到其他文件中。我們希望隱藏除存儲庫協作者以外的所有訪問者的文件。在Git存儲庫上隱藏mysql連接數據

可能嗎?或者有其他方法嗎?

回答

3

你想要做的就是停止Git跟蹤文件的變化。

  1. 移動從connect.php任何敏感字符串到一個新的文件名爲config.php
  2. 與樣本串填寫
  3. 包括config.phpconnect.php
  4. 提交到Git
  5. 使用git update-index --assume-unchanged <file>停止跟蹤更新此文件。
  6. 更新與生產字符串的文件
  7. 如果你需要跟蹤的變化再次使用git update-index --no-assume-unchanged <file>
+0

我們將它存儲在'connect.php'文件中,並在必要時將其包含到其他文件中。我可以將'connect.php'文件添加到'.gitignore',但是這會忽略它的提交。我的意思是,我們的connect.php文件不會被提交併推送到GitHub。所以,其他協作者無法看到該文件。 – Eray 2012-08-07 20:54:00

+0

您可以將任何敏感字符串分解爲新的包含文件。將此文件的示例版本上傳到Git,以便人們知道如何爲其服務器配置它。後話你只是不提交你的生產版本 – NSjonas 2012-08-07 20:57:14

+0

'git update-index --assume-unchanged '這正是我需要的!謝謝@NSjonas。 – Eray 2012-08-07 21:13:51

0

放在一個名爲的.gitignore文件夾內的文件,其中包含要忽略的文件名!

+0

但是這會忽略它的提交。我的意思是,我們的connect.php文件不會被提交併推送到GitHub。所以,其他協作者無法看到該文件。 – Eray 2012-08-07 20:52:59

+0

我明白你的觀點。那時我不知道,但我認爲我的方法仍然有效。正如NSjonas所說,你會爲配置文件提交一個模板,並且你的開發者將擁有該文件的一個靜態版本。畢竟,它可能永遠不會改變。 – djfm 2012-08-07 21:00:11