【问题标题】:How to deal with custom configuration on versioned files? - git [duplicate]如何处理版本化文件的自定义配置? - 混帐 [重复]
【发布时间】:2012-04-25 16:15:09
【问题描述】:

这个问题How do you deal with configuration files in source control? 建议忽略它们,虽然这是另一种选择,但我真的不想让他们移动 .ignore 文件那么多,对我来说似乎很脏。

大多数团队成员在一些不提交到主分支的版本文件中都有某种配置。 IE。 app.config 文件与本地数据库等。

如何处理这些文件?他们需要他们让他们的环境运行,但总的来说,他们往往忘记向 repo 添加新文件,因为他们开始忽略修改过的文件。

我在想有某种脚本在编译时将它们从本地文件系统中删除,这样他们就可以判断整个解决方案在推入 repo 时是否仍然可以编译,但我想知道是否有更好的解决方案?

【问题讨论】:

  • 你已经找到了same question,即使你不喜欢那里提供的解决方案,我认为我们不需要关于这个主题的另一个问题。也许您可以在此处为您不喜欢的答案添加评论?

标签: git version-control mercurial


【解决方案1】:

我不确定您所说的“真的不想让他们移动太多 .ignore 文件”是什么意思,但是您应该坚持最初找到的建议并放置不应该添加的文件按预期在忽略文件中。这就是它的用途,用不是每个人都会拥有的文件来填充它根本没有害处。

您可以使用的其他一些工具是:

  • 提交配置文件的模板(例如config.sample)并让您的构建脚本从config.sample复制到被忽略的config,如果(且仅当)它不存在时
  • 增强您的配置系统以包含覆盖。例如,被忽略的 config.local 会覆盖从被跟踪的 config.shared 加载的设置。
  • 增强您的配置系统以允许包含。例如像%include ~/settings 这样的行,人们可以将自己的配置放入其中

然而,所有这些都假设您忽略了一个因用户而异的配置文件,因为这是您应该做的。 :)

【讨论】:

    猜你喜欢
    • 2015-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-20
    • 1970-01-01
    • 2021-11-08
    • 1970-01-01
    相关资源
    最近更新 更多