问题标签 [mercurial]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
svn - 为什么在 Mercurial 中分支和合并比在 Subversion 中更容易?
在 Subversion 或 CVS 中处理对分支的多次合并只是必须经历的事情之一。在 Mercurial(以及可能任何其他分布式系统)中跟踪分支和合并非常容易,但我不知道为什么。还有人知道吗?
我的问题源于这样一个事实,即使用 Mercurial,您可以采用类似于 Subversions/CVS 中央存储库的工作实践,并且一切都会正常工作。您可以在同一个分支上进行多次合并,并且您不需要无休止的带有提交编号和标签名称的纸片。
我知道最新版本的 Subversion 能够跟踪分支的合并,所以你不会遇到同样程度的麻烦,但这是他们方面的一个巨大而重大的开发,它仍然不能完成开发团队会做的所有事情喜欢这样做。
这一切的运作方式必须有根本的不同。
mercurial - 如何在 Mercurial 中重复合并分支
我们在我工作的地方使用 Mercurial,我想要一个类似于我使用 SVN 的设置:
- 树干
- 标签
- 生产
- 分支机构
由于 Mercurial 本身支持分支,我知道如何创建命名分支,但我找不到任何关于如何重复合并“主干”和“生产”的文档。
很简单,我想要一个用于正常工作的开发分支和一个我经常从开发分支中提取更改的生产分支。如何使用 Mercurial 执行此操作?
python - 在松散连接的团队中,哪个是最有用的 Mercurial 钩子?
我最近在 Mercurial 中发现了通知扩展,它允许我在推送更改时快速发送电子邮件,但我很确定我仍然错过了许多可以让我的生活更轻松的功能。
哪个 Mercurial 挂钩或互操作挂钩的组合对于在松散连接的团队中工作最有用?
请添加指向您使用的非标准部件的链接和/或添加挂钩(或说明如何设置它),以便其他人可以轻松使用它。
svn - Git、Mercurial 和 Bazaar 的相对优势和劣势是什么?
这里的人们如何看待 Git、Mercurial 和 Bazaar 的相对优势和劣势?
在考虑它们中的每一个以及针对 SVN 和 Perforce 等版本控制系统时,应该考虑哪些问题?
在计划从 SVN 迁移到这些分布式版本控制系统之一时,您会考虑哪些因素?
python - 为 Mercurial Hook 设置环境变量
我正在尝试调用一个 shell 脚本,该脚本通过一个 mercurial 钩子在我们的服务器上设置一堆环境变量。当一个新的变更组进来时,shell 脚本会被很好地调用,但是环境变量并没有传递到对 shell 脚本的调用。
我在存储库上的 hgrc 文件如下所示:
我可以看到 shell 脚本的输出,然后是 env 命令的输出,但是 env 命令不包含 shell 脚本设置的新环境变量。
我已经验证了 shell 脚本在单独运行时可以正常工作,但是在 mercurial 钩子的上下文中运行时,它没有正确设置环境。
version-control - Mercurial 有哪些可用的 GUI 客户端?
另外,我在哪里可以找到它们?
visual-studio-2008 - Mercurial 可以集成到 Visual Studio 2008 中吗?
是否有将Mercurial集成到 Visual Studio 的工具?
我只是好奇。Mercurial 非常好,即使使用 'just' TortoiseHG,但与 Visual Studio 的集成会更好。
mercurial - 如何将 bitbucket 存储库与托管的 FogBugz 按需版本集成?
我使用 FogBugz 的按需(托管)版本。我想开始使用 Mercurial 进行源代码控制。我想集成 FogBugz 和 BitBucket 存储库。我试了一下,但事情进展并不顺利。
FogBugz 要求您将 Mercurial 客户端连接到 fogbugz.py python 脚本。TortoiseHg 似乎没有他们在说明中引用的 hgext 目录。
那么有没有人成功地做过类似的事情?
mercurial - 使用 mercurial 的 mq 管理本地更改
我有一个本地 mercurial 存储库,其中包含一些特定于站点的更改。我想做的是将几个文件设置为不可提交的,这样当我在hg commit
没有参数的情况下执行时它们不会自动提交。
现在,我正在用mq
和守卫做复杂的事情来实现这一点,推送和弹出并选择守卫以防止我的更改(已检查到 mq 补丁中)被提交。
有没有更简单的方法来做到这一点?mq
每次我想提交不包括我的站点特定更改的更改时,我都厌倦了阅读所有命令的帮助。
version-control - 提交和推送单个文件的最简单方法是什么,同时保留其他修改?
我对 Mercurial 比较陌生,我的团队现在正在尝试将它作为 Subversion 的替代品。
我如何提交单个文件并将其推送到另一个存储库,同时保留我的工作目录中的其他修改未提交(或至少不推送到另一个存储库)?
这发生在我们的数据库迁移中。我们希望将迁移提交到源代码控制,以便 DBA 可以在我们进行代码修改以进行数据库迁移时查看和编辑它。更改尚未准备好进行,因此我们不想将所有更改都推出。
在颠覆中,我会简单地做:
并继续在本地工作。
这不适用于 mercurial,因为当我将其推送到另一个存储库时,如果我没有拉下它的更改,它希望我将它们拉下,合并它们,并将合并提交到存储库。合并后的提交不允许您省略文件,因此它会强制您提交本地存储库中的所有内容。
我能想到的最简单的事情是将文件提交到我的本地存储库,克隆我的本地存储库,从实际存储库中获取任何新更改,合并它们并提交该合并,然后它们将我的更改推送出去。
这可行,但感觉就像我错过了一些更简单的东西,某种方式告诉 mercurial 忽略我的工作目录中已经存在的文件,只需进行合并并将文件一起发送。我怀疑 mercurial 队列可以做到这一点,但我还没有完全理解 mq。