问题标签 [hg-git]

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 投票
1 回答
435 浏览

git - 在 https 上使用 hg-git、TortoiseHg 和 github 会得到 401

我正在使用 hg-git 和 TortoiseHg 来尝试将我现有的存储库推送到 GitHub。我正在使用 HTTPS 而不是 SSH 进行身份验证。我将我的用户名和密码添加到 TortoiseHg,就像为 BitBucket 一样。

但是 TortoiseHg 说删除服务器给出了 401。

我能找到的所有使用 hg-git 进行身份验证的示例都使用 SSH 而不是 HTTPS。

如何说服 TortoiseHg 将我的用户名和密码提供给 GitHub?

0 投票
1 回答
89 浏览

git - 使用补丁维护 Hg 存储库的 Git Fork

我正在维护一个带有一些附加补丁的 hg 存储库的 git fork。这意味着我已经克隆了 hg 存储库,然后按照这些说明将该存储库推送到 git 存储库。

然后我克隆了 git 存储库,应用了一些提交,然后将这些提交推送到了 git 存储库。

我的历史看起来像:

F'我的G'补丁在哪里?

hg 开发人员现在将一些补丁推送到 hg 存储库,我想将这些更改合并到我的 fork 中。我想这样做保持汞历史完整。换句话说,我希望我在 git 中的最终历史看起来像:

Ehg 的新提交在哪里。

在 git 术语中,这将是说“我想将rebase我的 master 分支放到 origin/master 上”。

我的问题是我在 hg 和/或 git 中执行哪些命令来实现这一点?

0 投票
3 回答
2086 浏览

github - 未找到 hg-git 存储库

我想将我的 Mercurial 项目配置为能够将其推送到 gitHub 存储库中。

使用命令时:

hg push git+ssh://git@github.com/myusername/myproject.git

我收到一条消息:

中止:未找到存储库 git+ssh://git@github.com/myusername/myproject.git!

我已经检查并建立了 SSH 连接,看起来没问题:

嗨我的用户名!您已成功通过身份验证,但 GitHub 不提供 shell 访问权限。

我从 github 复制的存储库 url(它是来自其他开源项目的一个分支):https ://github.com/myusername/myproject.git

我还应该检查什么?为什么我有一个它不存在的信息,而事实上它确实存在?哪里可能有问题?

0 投票
1 回答
876 浏览

github - 将 mercurial 本地存储库导出到 GitHub/Bitbucket

我的办公桌上有一个本地 mercurial repo,我想将它上传到 bitbucket 或 github,以便可以在网络上查看。

到目前为止,我被困在导入阶段,GitHub 或 Bitbucket 都要求我为我的 repo 提供一个 URL(我更喜欢我的磁盘上的一个简单路径,而不是 repo)。

我已经启动了一个本地服务器,但是地址: http://localhost:8000/Myrepo/

未能加入。

我知道 tortoiseHg Hg-Git 插件,我尝试推送 git://... 但它也失败了。

所以我的第一个问题是:如何将我的 mercurial repo 放到网上以便可以导入?

我的第二个问题是:如果我必须在网络上设置一个在线、公共、善变的服务器来推送给他们,那么拥有一个 bitbucket / github 帐户有什么意义?

我想要的是继续在本地工作,然后推送到bitbucket / github,而不必设置一个mercurial服务器。

谢谢

0 投票
1 回答
240 浏览

github - 将本地 (hg-git) 克隆的上游从 (github) original 更改为 fork

我发现我贡献的一个 OSS 项目已经转移到了 github。我安装了 hg-git 并从 git:// URL 克隆了一个本地仓库;然后我做了改变。

然后我意识到我真的想要自己的 github 分支,所以我做了一个;但我一直无法弄清楚如何切换我现有的本地仓库。我已将本地 repo 设置更改为使用我的 fork 的 git:// URL,它可以拉取;但我不能推动我的改变。它告诉我使用 https:// URL,但是当我进行更改时,我既不能拉也不能推——我收到错误 406,“不可接受”。

在本地 repo 中完成的工作很少,所以我可以重做,但如果本地 repo 和我的 fork 现在可以连接会更简单。

更新

我已经为 Windows 安装了 Github,所以我可以管理 SSH 密钥。它生成了一个密钥(github_rsa)并将其附加到我的 Github 帐户中。

我编辑了 hgrc 文件并添加了一个[ui]ssh=指向本地 git 'ssh' 命令的设置(埋在 中%APPDATA%\Local\Github)。

有了这个,如果我进入一个“git-shell”窗口,我猜它会产生 ssh-agent,然后我可以输入诸如“hg incoming”之类的命令并建立连接。所以我得到了正确的远程 repo URL,并且在 git-shell 生态系统中,我已经正确设置了 SSH 密钥。

在常规 CMD.EXE 窗口中,相同的命令会产生“Permission denied (publickey)”。在 TortoiseHg 中,当我尝试“传入”操作时会出现相同的错误。我宁愿继续使用 TortoiseHg,但我不确定如何让它使用 SSH。

最后更新

出于某种原因,TortoisePlink 不想使用 github 的 SSH 服务器,至少不想使用 Github-for-Windows 生成的密钥。所以我仍然安装了适用于 Windows 的 Github(不一定是坏事,但对我想做的事情来说是多余的)。

为了让 hg 和 TortoiseHg 连接,我必须修改我的项目设置:

即:指向 SSH 命令,随便携式 GitHub 安装,在命令行中指定 github 生成的密钥。使用此配置,我不需要运行 ssh-agent。

0 投票
2 回答
480 浏览

git - 使用hg命令同时操作git和hg

我有一个 mercurial 存储库和一个 git 存储库。两者都使用相同的代码和相同的变更集。

当我对我的 hg 存储库进行任何更改、提交并将其推送到 hg 存储库时,相同的更改也应该被推送到 git 存储库。这可能吗?如何?

0 投票
2 回答
662 浏览

hg-git - hg-git 安装:缺少 dulwich.errors

我在使用 hg-git 时遇到问题。

在我的 hgrc 我有:

当我尝试 hgclone 时,我得到:

我已经通过运行 easy_install 'dulwich>=0.8.0' 安装了 dulwich.errors。

无法弄清楚发生了什么。

非常感谢!

0 投票
4 回答
2614 浏览

git - TotoiseHG:一个现有的连接被远程主机强行关闭

我想将一个项目从TortoiseHg推送到GitHub。我知道,TortoiseHg 是 Mercurial 分布式版本控制系统的前端;GitHub 与 Git 一起工作的地方。但我喜欢使用 TortoiseHg(而不是 TortoiseGit 或 GitGui),并希望将我的项目保留在 GitHub 中。

所以,我配置了 TortoiseHg ( File>Settings>Extensions>hggit ) 并且能够将一个测试项目推送到 GitHub (跟随这个精彩的博客)。但后来当我尝试用它推送一个C# MVC项目时,情况发生了变化。它很好地开始推送,然后要求身份验证,然后显示此错误-

现有连接被远程主机强行关闭

这是日志中显示的内容-

我不明白 - 为什么会发生这个错误。这是 GitHub 或 TortoiseHG 的问题,还是我做错了什么?如何解决?


编辑1:我能够推送到存储库,但只能通过“不添加”一些特定目录到我的存储库。是否有任何文件类型或名称导致此错误?


编辑2:这个问题再次发生在我身上,这次是一个Java项目。一切都很好,直到我在存储库中添加了一个*.jar文件。我做了一个提交,但是当我尝试将它推送到 GitHub 时,TortoiseHg 向我显示了相同的消息。我删除了*.jar,提交,并尝试再次推送,但不能。

现在,我又做了一次(编辑 1)——我将整个存储库从 GitHub 拉到另一个文件夹,从我的 PC 上的当前存储库替换更改的文件(没有添加*.jar),提交并推送;这次我成功了。所以,这次*jar文件没有添加到版本控制数据库中,这就是它起作用的原因。

0 投票
0 回答
77 浏览

git - hg-git push 导致重复的提交历史

我们最近在 Mercurial 中使用了一个存储库,并决定使用 Git 将其迁移到 Bitbucket。HG default 到 Git master 的初始转换是成功的。但是,现在我正在尝试将旧的错误修复分支从 HG 存储库迁移到 Git 存储库并遇到问题。我已经安装并运行了 HG-Git。

我运行此命令仅将此分支推送到我的 git 存储库:

这有效,但不是最佳的。具体来说,它创建了一个新分支;在我想要的提交之前,其中包含项目的整个历史。我最终在修复提交之前的每个提交中都有重复的提交条目,一个在主分支中,一个在我的 FIX-5021 分支中。

有什么方法可以将此 HG 分支迁移到转换后的 Git 存储库而无需重复提交条目?

0 投票
1 回答
59 浏览

git - 使用 hg-git 将 mercurial 存储库上传到 github 的问题

我安装了 hg-git 和一个 mercurial 存储库,我想将它上传到 github。我已经创建了一个项目,并且处于“快速设置”阶段,我可以在其中获得可以使用的 URI:

所以,我尝试的第一件事是.hg/hgrc在我的 mercurial 存储库中进行编辑并添加

并添加了一个主书签:

按照这里的说明。然后我尝试推动,但失败了:

我究竟做错了什么?