问题标签 [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.

0 投票
2 回答
3776 浏览

windows - Mercurial 中不区分大小写的文件名处理

我在 Vista64 上使用 TortoiseHg 0.5(包括 Mercurial 1.0.2)。我对Mercurial Book的理解是 Mercurial 应该在不区分大小写的文件系统(例如我正在使用的 NTFS)上以不区分大小写的方式处理文件名。但是我发现我安装的 Mercurial 实际上对大小写敏感:

这可能是 Mercurial 中的错误,Mercurial 的 TortoiseHg 版本中的错误,还是其他原因?如何在 Windows 上通过 Mercurial 实现不区分大小写的文件名处理?

0 投票
2 回答
5642 浏览

version-control - Emacs 的最佳 Mercurial 模式?

Emacs Wiki列出了几种在Emacs 内部支持 mercurial 的模式,包括内置的 VC 模式。是否值得探索任何其他模式,例如与 mercurial 本身一起分发的模式?

0 投票
1 回答
395 浏览

ubuntu - 我将如何调查和解决 Mercurial 授权问题?

我有一个带有 bitbucket 的私有存储库。

我在 Ubuntu 上使用 Mercurial 分布式 SCM(版本 0.9.3)。

当我尝试克隆我的存储库时,系统会提示我输入正确输入的用户名和密码。

结果我得到:abort: authorization failed

这在 Windows 上工作得很好。

我只是想确保在提交错误之前我没有遗漏一些明显的东西。

我是分布式版本控制的新手。

0 投票
13 回答
1545 浏览

git - 如何在没有 IDE 集成的情况下使用源代码控制?

我目前使用 Subversion 作为我的源代码控制系统,主要是因为我发现 ANkhSVN 可以很好地集成到 Visual Studio 中。

但许多人似乎在使用 Git 或 Mercurial 等方面取得了巨大成功。

现在,我想知道如何在没有某种 IDE 集成的情况下使用像 Git 这样的系统。

去命令行做源代码控制对我来说似乎很尴尬,太麻烦了。

更新:这引起了相当多的讨论。

我只是想知道你的工作流程是什么样的,我知道如何学习和使用命令行工具。由于重命名/添加文件之类的事情,他们只是感觉不太舒服。我将坚持 AnkhSVN 作为我在 Visual Studio 中选择的 svn 客户端,并将 TortoiseSVN 用于 VS 之外的文件。无论如何,谢谢你的回答!

0 投票
6 回答
68879 浏览

version-control - 如何忽略 Mercurial 文件夹下的所有内容

我正在寻找 .hgignore 文件的表达式,以忽略指定文件夹下的所有文件。

例如:我想忽略 bin 下的所有文件和文件夹

实际上,任何关于如何形成表达式的建议都会很棒

0 投票
1 回答
537 浏览

java - apache common vfs和mercurial的集成

Apache common vfs api 可以从 Mercurial 版本控制系统检索/更新/添加文件吗?常见的 vfs 确实有访问 vcs 的接口 api。Mercurial 有供应商吗?

巴吉

0 投票
3 回答
6214 浏览

version-control - 我可以拆分 Mercurial 存储库吗?

我有一个较大的 Mercurial 存储库,我认为作为几个较小的存储库会更好。有没有办法可以拆分存储库并让每个部分保留其修订历史?

0 投票
5 回答
14273 浏览

mercurial - 在 Mercurial 上退出向后合并

你如何在不痛苦的情况下扭转合并对极化分支的影响?

这个问题困扰了我好几个月,终于放弃了。

您有 1 个存储库,有 2 个 命名分支。A和B。

发生在 A 上的变化将不可避免地发生在 B 上。

直接发生在 B 上的更改绝不能发生在 A 上。

在这样的配置中,将“B”合并到“A”中会在存储库中产生一个可怕的问题,因为对 B 的所有更改都出现在 A 中,就好像它们是在 A 中进行的一样。

从这种情况中恢复的唯一“正常”方法似乎是“退出”合并,即:

看起来一切都很好而且花花公子,直到你决定稍后在正确的方向上合并,你最终会发生各种令人讨厌的事情,并且在专门的分支 B 上被删除/注释掉的代码突然变得未删除或未注释。

到目前为止,除了“让它做它的事情,然后手动解决所有问题”之外,还没有一个可行的解决方案,老实说,这有点令人难以置信。

这是澄清问题的图像:

[原图丢失]

文件 C & E (或更改 C & E ) 必须只出现在分支 b 上,而不能出现在分支 a 上。此处的修订版 A9(分支 a,revno 9)是问题的开始。

修订 A10 和 A11 是“回退合并”和“合并回退”阶段。

修订版 B12 是反复无常的,错误地反复删除了一个不打算删除的更改。

这种困境引起了很多挫折和蓝烟,我想结束它。

笔记

尝试禁止反向合并发生可能是显而易见的答案,无论是使用钩子还是使用策略,我发现解决这个问题的能力相当高,而且发生这种情况的可能性很大,即使有对策,你仍然必须假设它不可避免地发生,以便您可以在它发生时解决它。

详细说明

在模型中,我使用了单独的文件。这些使问题听起来很简单。这些仅代表可能是单独的行的任意更改。

此外,雪上加霜的是,分支 A 发生了重大变化,这留下了长期存在的问题“分支 A 中的更改是否与分支 B 中刚刚出现(并退出)的变化相冲突,这看起来像是一个变化改为在分支 A 上“

关于历史重写技巧:

所有这些追溯解决方案的问题如下:

  1. 我们有 9000 个提交。
  2. 因此,新鲜克隆需要半小时
  3. 如果在某处甚至存在一个错误的存储库克隆,它就有可能重新与原始存储库联系,并再次将其撞毁。
  4. 每个人都已经克隆了这个存储库,现在已经过去了几天,正在进行提交。
  5. 一个这样的克隆恰好是一个实时站点,所以“擦除那个并从头开始”=“大诺诺”

(我承认,以上许多内容有点愚蠢,但它们不在我的控制范围内)。

唯一可行的解​​决方案是假设人们可以并且将会做错所有事情,并且有一种方法可以“消除”这种错误。

0 投票
2 回答
978 浏览

mercurial - mercurial 的 hgwebdir.cgi 中的图形更改日志

我有一组通过 hgwebdir.cgi 在线提供的 mercurial 存储库。我希望能够以与该站点相同的方式显示分支和合并的图形表示。我似乎找不到任何关于如何做到这一点的参考。该功能是否仅存在于 hgweb 而不是 hgwebdir 中?

0 投票
13 回答
6136 浏览

version-control - 作为一个单独的开发者,我应该如何使用 Mercurial?

我决定将 Mercurial 用于一个小型的个人项目。

我读过的大部分帮助都是关于合并多个用户之间的更改。因为我是独奏,这不会发生。

我应该有多个存储库吗?我的开发计算机已经每晚都备份到我的 Windows Home Server,所以在别处有第二个存储库只是为了备份目的似乎没有什么价值。

我应该每天分支吗?或者只是在发布附近?还是什么时候?

一般来说,您建议单独使用 Mercurial 的开发人员采取哪些做法?