3

我有一些我不想提交的已更改文件(例如 web.config)。在我拉取并更新到新的变更集之前,我必须搁置它们。拉取和更新后,我必须取消搁置它们。

我目前正在使用 TortoiseHG。有没有可以自动执行此操作的扩展程序?

4

4 回答 4

5

我建议其他的东西:你可以使用两个不同的配置文件,而不是总是搁置和取消搁置:一个是存储库的一部分,包含虚拟/示例数据,另一个是每个用户在本地真正使用的,被忽略水银。

查看这个答案以获得更详细的解释我的意思。
我给出的示例是针对 Visual Studio 的,我从您的其他问题和答案中看到您显然在使用 .net 和 Visual Studio,因此您可以完全按照所写的方式使用我的示例。

于 2012-02-10T19:40:45.957 回答
2

在 Mercurial 中,只需hg pull -u. 未提交的更改与提示合并。与搁置、拉取/更新、取消搁置的结果相同。使用 TortoiseHg 会弹出一个对话框,提示丢弃/搁置/合并。

您可能会以这种方式获得一个合并对话框,但对于搁置方法来说确实如此,因为 unshelve 可能也必须合并。如果没有冲突,您将不会从命令行获得提示。如果没有冲突,TortoiseHg 可能有一个选项来抑制对话框,但我没有检查。

于 2012-02-10T15:48:22.507 回答
0

我会尝试一些不同的东西。

特别是关于 Web.config 文件,您可能希望查看使用本地配置文件进行覆盖,而不是让本地更改未提交。(例如,引用 .hgignore 中的单独文件)。我过去从事的项目这样做是为了将测试/产品配置与开发设置分开,反之亦然。

我认为没有任何扩展可以为您执行此操作,但您最好编写一个快速批处理或 powershell 脚本来为您执行此工作流程。在以前的项目中,我有一个脚本可以执行类似的操作,因为它会执行拉取/更新/rebase 以使我的更改保持在最前沿(我正在使用 hg 对抗 SVN 服务器,这很重要。)

我知道我没有直接回答你的问题,但我希望这会有所帮助!

于 2012-02-10T15:07:21.570 回答
0

直接回答:https ://pypi.org/project/hg-autoshelve/

但是正如 Christian Specht 所建议的那样,配置文件的专用存储库似乎是一个更好的主意

于 2019-11-08T15:45:31.693 回答