相关疑难解决方法(0)

Git:忽略公共存储库的文件,但不是私有的

我正在通过git在Heroku(现在)上部署一个Rails应用程序,并且还希望有一个公共版本供人们查看.有些文件是敏感的,只能在"heroku"分支中提交和推送,而不是"公共"分支.最好的方法是什么?

(我确实知道Heroku的Config变量,这是一个很好的临时解决方案,但是当我需要切换主机时却没那么有趣.)

这两个分支不需要一直同步 - 我可以定期将"master"分支合并到"public"分支并将其分别推送到github.

我尝试了各种各样的事情:

  • 单独的.gitignore文件和"我们的"合并策略 - 这在一开始并不起作用,在搞乱了一段时间后我觉得它变得太复杂了,所以我可以实现一个看似简单的任务

  • 使用自定义exclude文件,并将以下内容添加到.git/config...这根本不起作用:

的.git /配置

[branch "public"]
  excludesfile = +info/exclude_from_public
Run Code Online (Sandbox Code Playgroud)

使私有和公共存储库共享相同代码但忽略公共存储库中的敏感文件的最佳方法是什么?

您可以假设没有提交或推送任何代码,即这是一个刚刚初始化的存储库.

(之前已经以各种形式提出了这个问题,但没有一个答案是直截了当的,或者答案看起来真的很笨拙.我只是在这里以非常简单的方式提出这个问题,希望得到一个非常简单的回答.)

git version-control

34
推荐指数
2
解决办法
5370
查看次数

在本地跟踪文件,但绝不允许将它们推送到远程存储库

我正在开发一个涉及使用非常敏感数据的项目,并且我已被指示仅通过自定义文件传输系统在线传输此数据.项目本身在git源代码控制之下,包含一个包含敏感数据的sqlite文件.

到目前为止,我只是忽略了通过该gitignore文件的sqlite 文件,这阻止了它被推送到远程存储库.但是,我现在已经达到了项目的一个点,我们有一个实时版本和一个开发版本,并且数据没有在本地跟踪这一事实使得使用分支非常困难.

所以我的问题是:有没有办法让我在本地跟踪sqlite文件,所以我可以在不同的分支上拥有不同的数据版本,但从未将它推送到远程存储库?

在阅读了这个问题后,我考虑过只使用本地的开发分支使用不同的gitignore文件,但是git merge远程共享分支中的a也会合并对gitignore文件的更改这一事实很快就会变得很麻烦.

git github

20
推荐指数
1
解决办法
3414
查看次数

标签 统计

git ×2

github ×1

version-control ×1