问题描述
|
假设我有一个位于公共开源回购和私有开发回购中的项目。开发仓库中的某些文件可能包含数据库密码之类的东西,而我不想公开这些东西。在两个遥控器之间共享安全文件的最佳方法是什么?我在考虑某种仅适用于公共仓库的.gitignore文件,这可能吗?如果没有,还有其他建议吗?
解决方法
也许将更敏感的文件放在另一个存储库中,在原始存储库中将其子模块化,并仅允许您的私有开发人员访问私有存储库。
, 如果确实有文件,那么为了安全起见,不要泄露给公众,请勿将其放入存储库中,也不要使用密码对文件进行加密!
最好的做法是,将未共享文件放在可以存在于私有开发版本中的单独存储库中时:
BASE_DIR/.git
BASE_DIR/private/.git
BASE_DIR包含所有公共文件。 BASE_DIR / private包含私有文件。
仅发布数据而不发布存储库(及其所有历史记录)时,您可以简单地
git --work-tree=PATH_TO_THE_PUBLIC checkout HEAD -- .
当新版本到来时。
, 请勿将密码放在源代码管理中。到处都是2英镑。通过其他方式分发私人密码文件。
(不,没有办法只在某些存储库中忽略文件。)