gpt4 book ai didi

mercurial - 在 Mercurial 中处理自定义的本地源文件

转载 作者:行者123 更新时间:2023-12-04 05:18:29 25 4
gpt4 key购买 nike

我们的 4 人团队目前使用 svn,但我正在测试 Mercurial。我们主要使用 .net 上的 C++ 和 C# 进行编码。我已经安装了 TortoiseHg,并使用 hgsubversion 对现有的 svn 存储库进行推/拉。团队中的其他开发人员暂时将继续使用 svn。

我倾向于以某种特定的方式自定义一些源文件(屠宰是更好的术语),我不想推送给其他开发人员。但我确实希望将这些自定义更改编译到我的项目版本中。普通文件与自定义文件的比例约为100:1

在 mercurial 中处理这些屠杀文件的最佳方法是什么?我可以在提交期间简单地取消选中屠宰的文件,但最终,我会忘记这一步。我简要介绍了搁置和忽略。

忽略似乎不对,因为这些是跟踪文件。我确实想从其他人那里提取对屠宰文件的更改。搁置很近,但它从我的工作副本中删除了屠宰的代码,所以这也不正确。

我不能成为唯一的代码屠夫。让我知道你如何处理这个问题。 Git 用户,我们也很高兴收到您的来信,我们还没有完全 promise 使用 hg。

最佳答案

如果它们是大多数人都会修改的文件(每个开发者数据库帐户信息等),正确的方法是跟踪 xxxxx.sample文件。例如让构建脚本使用 local-database.config这是在 .hgignore并提供 local-database.config.sample存储库中的文件。您可以在说明中包含“将示例复制到实际”,或者如果实际不存在,则让构建脚本自动执行此操作。我们让我们的配置包含 settings.local 当且仅当它存在时,并允许它覆盖主要设置。然后没有人需要本地配置,但可以选择使用它来更改任何没有提交风险的内容。

如果它们是只有您要修改的文件,那么最好的方法是学习 Mercurial 队列。那么你可以pop该变更集仅包含您的更改,推送到中央存储库,然后再次将其应用于您的构建。有各种扩展可以做类似的事情(例如 shelve),但 mq 更可取,因为您可以对正在弹出和应用的叠加层进行版本控制。

关于mercurial - 在 Mercurial 中处理自定义的本地源文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13942942/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com