问题标签 [tortoisehg]
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.
visual-studio-2008 - 如何在 Visual Studio Publish 上自动标记 Mercurial?
我在 Visual Studio 2008 上使用 TortoiseHg + VisualHg。每当我从 VS 发布时,有没有人找到在 Mercurial 中自动创建标签(带有已发布版本号)的方法?
mercurial - 如何使用 TortoiseHG 进行分支
我下载了 TortoiseHg 1.0 进行评估。对于我的生活,我无法弄清楚如何制作分支。它似乎理解分支(例如在其存储库浏览器中),但我似乎无法找到创建分支的方法。这似乎是一项基本功能,因为 DVC 经常被吹捧的好处是轻量级分支。
我用谷歌搜索并找不到关于这个主题的太多讨论(至少对于最近的版本),所以我不得不假设我错过了一些东西,对吧?
更新:所以我在下面标记了 Chad Birch 的答案以回答“新分支”问题。正如他正确指出的那样,您进行提交,然后单击分支按钮以调出分支维护对话框,您可以在该对话框中创建新分支。我有点希望他们为此提供了一个上下文菜单选项。分支后,下一个自然问题是如何合并,这也不明显。事实证明,该选项隐藏在存储库资源管理器中。您需要选择另一个分支的头部,右键单击然后选择“与...合并”。
windows-7 - Mercurial 扩展在 Windows 7 x64 中不起作用?
我们正在工作中试驾 Mercurial。我们不想在每次与存储库交互时都输入我们的用户/密码,因此我们设置了 mercurial_keyring 扩展。我们:
- 已安装 Python 2.6.5(32 位或 64 位,取决于系统)
- 已安装 setuptools(用于 easy_install.exe)
- easy_install 密钥环
- easy_install mercurial_keyring
然后对该部分中的 %userprofile%/mercurial.ini 进行适当的更改[auth]
。它在我同事的计算机(32 位 xp sp3)上运行良好,但在我的机器(Windows 7 Ultimate x64)上无法运行。同样值得注意的是,setuptools 必须从 Win 7 x64 上的源代码构建(python setup.py bdist_wininst
然后运行生成的 setuptools-0.6c11.win-amd64.exe)。
仅使用 Mercurial 1.5 二进制安装(.msi)中的 hg.exe,运行 hg.exe 时出现此错误:
*** 未能导入扩展 mercurial_keyring:没有名为 mercurial_keyring 的模块
我试图更改我的 mercurial.ini,以指定 mercurial_keyring.py 文件的路径,而不是让 mercurial 找到它(因为它在 PYTHONPATH 中)。
老的:
新的:
错误变为:
中止:无法导入模块密钥环!
因此,在提供 mercurial_keyring 扩展的路径时,仍然无法找到依赖的密钥环模块。
经过进一步调查,似乎没有扩展工作。它们都产生错误:
*** 导入扩展 [扩展名] 失败:没有名为 [模块名] 的模块
似乎在运行 hg.exe 时,它不知道 PYTHONPATH。我试过了:
- Python 2.6.5 32 位
- Python 2.6.5 64 位
- 使用 MinGW 从源代码构建 Mercurial 1.5
- 使用 MSVC9 从源代码构建 Mercurial 1.5
- 使用 1.5 二进制 dist (.msi) 中的 hg.exe
- 从源代码构建时使用 c:\python26\scripts 中的 hg.py
- %userprofile%/mercurial.ini 中的各种配置
- 使用 setuptools (easy_install.exe) 安装 keyring 和 mercurial_keyring
- 从源代码构建密钥环和 mercurial_keyring (python setup.py bdist_wininst)
没有任何效果。我最接近的是从源代码构建时使用 hg.py 。它至少不会给我错误,并且在我输入凭据时实际上会创建 %userprofile%/wincrypto_pass.cfg 。但在后续请求中,它不会自动输入凭据。它再次提示我。
有趣的是,TortoiseHG正在使用钥匙圈。我只是无法让它在命令行上工作。我认为 Win 7 x64 出现了一些问题,阻止了 mercurial (hg.exe) 看到 PYTHONPATH,因此它找不到任何已安装的模块。
有没有人有在 Win 7 x64 中工作的扩展?特别是使用 mercurial 的二进制安装(不是 hg.py)?
更新 我现在找到了合适的解决方法。由于 TortoiseHG确实可以与 mercurial_keyring 一起使用,我只是更改了我的 PATH 设置以包含 tortoiseHG 文件夹,但不包含 c:\mercurial。现在,当我在命令行中键入“hg”时,它使用的是 tortoiseHG 文件夹中的 hg.exe,它工作正常。同样,这仍然是 Win 7 x64 上的 mercurial 扩展的问题。欢迎回答。
git - 使用 TortoiseHg 克隆一个读写 github 存储库
我正在尝试使用带有 TortoiseHg 的 git+ssh 协议在 github 上克隆我的个人 fork。它给了我一个相当奇怪的错误。这是命令
这是在我安装了 hg-git 模块之后,它可以很好地使用 git:// 语法进行克隆。但我相信 ssh 有问题。我得到的错误是这个。
我已经尝试像这样将 ssh 命令手动添加到 mercurial.ini 文件中
但我仍然得到同样的错误。有任何想法吗?
更新 1
如果我从 Git Bash shell 运行相同的命令,它就可以正常工作。我明白了。
我假设这是因为它可以找到 ssh.exe 并且我的密钥已经导入。我可以将 ssh.exe 的路径添加到 windows 命令提示路径,然后我得到这个错误,而不是之前的错误。
尽管我在 mercurial.ini 中指定了备用 ssh 路径,但它似乎专门寻找 ssh.exe。但我的猜测是,该配置仅适用于启用 ssh 的 mercurial 服务器,不适用于 hg-git 插件。
mercurial - Mercurial 仅合并某些变更集
好的,所以我们最近从 SVN 转换为 Mercurial。
我们正常使用 TortoiseHG。
在我们的一个存储库中,我们拥有所有项目,C++ / .NET / ASP。我们有大约 100 个项目,都使用通用库项目。
因此,为每个项目创建多个 repo 将是一项非常艰巨的任务。
现在,我们有了default
分支,假设branchA
.
我正在处理BranchA
并向它添加我的超级更改,并且我更改了一个公共库,比如说一个扩展方法
我想将其提交给branchA
and default
,我将如何处理?
但是,我不希望我的所有更改branchA
都合并到default
中,也不希望所有其他更改从default
希望这是足够的信息!
mercurial - 如何查看 Tortoise HG 发出的 Mercurial 命令?
我有办法查看 Tortoise HG 发出了哪些 Mercurial 命令?例如,如果我在 Tortoise 中使用 Shelve 命令,我想看看它如何(以及是否)在引擎盖下调用“hg shelve”。
mercurial - Mercurial中克隆和复制的区别
将 .hg 目录复制到另一个目录与在 Mercurial 中的克隆相同(使用 TortoiseHg 尽管我认为这无关紧要)还是在 Mercurial 中的克隆命令在该过程中做了一些特别的事情?
mercurial - 如何为我的本地 Mercurial 存储库提供服务?
我用 TortoiseHg 创建了一个存储库。是否可以与其他机器共享?还是我需要安装另一个应用程序?
svn - 使用 Mercurial 而不是 Subversion 的优缺点
我正在开始一个新项目。我熟悉 TortoiseSVN 及其所有缺点。我应该开始使用 Mercurial 吗?使用 Mercurial 而不是 Subversion 的优缺点是什么?
mercurial - 将更改推送到 TortoiseHG 的 Web 服务器失败并显示“Aborted Push”
我没有使用 TortoiseHG 身份验证,只是需要看看同事是否可以向我推送一些更改。他可以从 Web 服务器提供的 url 浏览我的 repo,并且可以很好地从我那里提取变更集。
他不能做的是通过内置的网络服务器将它们推送给我。我在 TortoiseHG 中将其配置为在设置中的“允许推送”旁边有“*”,这应该让任何人无需身份验证即可推送。
尽管如此,当 TortoiseHG 尝试推送时,我只是在状态栏中看到“Aborted Push”。
有谁知道如何获取有关它为什么会中止的更多信息?