首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将忽略的配置文件添加到git repo作为示例

将忽略的配置文件添加到git repo作为示例
EN

Stack Overflow用户
提问于 2010-09-10 16:08:11
回答 4查看 1.3K关注 0票数 9

我有一个应用程序的存储库,我正在处理这个应用程序,其中包括一个配置文件。目前,我使用.dist扩展名进行分发,并让用户在编辑文件之前重命名它。

代码语言:javascript
运行
复制
nate:~/myAwesomeApp% git ls-files 
.gitignore
README
config.dist
glorious_support_lib.p
bestProgramEvar.f90

这很好,而且实际的配置被忽略了。

代码语言:javascript
运行
复制
nate:~/myAwesomeApp% cat .gitignore 
config

不过,如果我能将配置文件以其实名分发并随时编辑,而忽略它,使新克隆的存储库副本具有“功能”发行版,并且不会被覆盖、失败或受到其他干扰,用户就不必担心通过意外的将其超机密配置细节推送或发布到互联网络上,这将是一个甜蜜的

有办法这样做吗?让git保持在被克隆出的文件的单个原始版本附近,但之后会被忽略吗?

我敢肯定以前有人问过这个问题,但对我来说,我的google-fu失败了。把学校放在很深的地方所以。

EN

Stack Overflow用户

发布于 2010-09-16 20:32:37

正如其他人指出的那样,在Git中没有神奇的解决办法。据我所知,其他版本控制系统也是如此。

钩子在这里也没有解决方案,如果它们这样工作,那将是一个严重的安全威胁-只要克隆一个回购,一个邪恶的代码可以在您的机器上执行。

但是要使用你的应用程序,用户除了用git克隆它之外,至少还要做一件事:运行你的应用程序。

  • 如果修改配置文件不是运行应用程序所必需的,那么如果程序在启动时执行if [ ! -e config ] ; then cp config.dist config ; fi,那么这就足够了。此外,您还应该在config.dist内部发出警告,说明您不应该修改该文件,而是复制该文件。
  • 如果需要修改配置文件,那么在没有配置文件的情况下启动程序可以启动一些安装模式,这会要求用户输入所需的配置选项并保存它们。
  • 第三种可能是,当配置文件启动时,应用程序无法修改配置文件(可能只是一些JavaScript +文件)。在这种情况下,我看不出有其他选项,只有有一些单独的构建脚本,或者让用户手动完成。
票数 1
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3686270

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档