Tag: 善变

Mercurial(hg)等价于git reset(–mixed或–soft)

什么是一个等效的mercurial命令(或工作stream) git reset –mixed HEAD^ 要么 git reset –soft HEAD^ 即我想离开工作树完好无损,但获取存储库回到最后一次提交之前的状态。 令人惊讶的是,我没有发现任何有用的东西在stackoverflow或谷歌。 请注意,我无法使用 hg rollback 因为我在上次提交后使用HistEdit完成了一些历史重写。 补充说明:经过一些重新devise和历史编辑,我最终以A < – B < – C。 然后我用HistEdit来压缩B和C,得到A < – C'。 现在我想分割提交C'(我​​在B中犯了错误的文件)。 我认为最简单的方法就是将版本库恢复到状态A(从技术angular度来说,从未在版本库中存在,因为之前所有的重新编译和历史编辑)以及工作树状态为C',然后执行两个提交。

Mercurial可以使用.hgignore来忘记文件吗?

我忘记把正确的.hgignore放到我的项目中,现在我的仓库中正面临着许多无用的文件。 由于这些文件已经在源代码控制之下.hgignore不会select它。 有没有办法让hg忘记所有.hgignore匹配的文件?

Mercurial在另一个分支移动提交

我的同事偶然在默认分支中做了两个提交,而不是创build新的自己的开发分支。 我怎样才能改变这种情况,并将这两个提交到一个新的分支?

Mercurial:查看上次提交更改的简单方法

在Mercurial中,我可以通过运行来查看当前的(未提交的)更改 $ hg diff 精细。 但是在提交之后,我有时想再次看到这个差异(即最后一个变更集的差异)。 我知道我可以通过 $ hg log -l 1 changeset: 1234 tag … $ hg diff -c 1234 我正在寻找一种方法来做到这一点。

每次进行远程Mercurial操作时,有没有办法让Bitbucket不要求我的密码?

随着所有其他的Mercurial回购,我可以设置我的用户名和密码在我的hgrc(实际上,因为我使用的Windows Mercurial.ini)在特定的领域进行操作,Mercurial不会提示我auth信息。 但是,即使有这些设置,Bitbucket 总是要求我的密码。 我的设置如下: [auth] bitbucket.prefix = bitbucket.org bitbucket.username = myusername bitbucket.password = mypassword 正如我所说,这些设置适用于所有其他我推动的回购。

我怎样才能find我的工作版本在mercurial

在一个mercurial repo中,我可以运行hg up {revision}来改变我的工作目录的修订版本,但是我可以运行什么命令来发现我正在查看的修订版本?

Mercurial中的rebase命令的优点是什么?

与标准推/拉相比,在Mercurial中使用rebase命令的优点是什么?

如何将一个mercurial回购(包括历史)导入另一个mercurial回购作为一个子目录,而不使用subrepos?

这听起来很复杂,所以让我解释一下: Project_A已经在其自己的Mercurial存储库中生存了一段时间。 Project_A现在正在被折叠成一个新的超级项目Super-Project_B。 Super-Project_B也有一个mercurial仓库。 我们宁愿Project_A不是一个subrepo,而只是一个正常的孩子,但我们也不想失去历史。 有没有办法做到这一点?

Mercurial:差异在一个特定的变化?

这与在Mercurial中查看单个变更集几乎完全相同,毫无疑问,通过Google单独无法find另一个我无法find的问题。 我回头看看Mercurial的回购协议,我想看看两个修订版之间究竟发生了什么变化(比如说2580和2581): hg log -v -r 2581 给我所有改变的文件 。 我怎样才能看到这些文件的差异 ? 谢谢。

如何在Mercurial中查看以前版本的文件

我正在使用mercurial进行目录中几个文件的版本控制。 假设我有10个提交(10个变更集或修订版)。 我只想查看一个特定的文件,比如thisFile.py,在第七版中查看。 我不想恢复到这个旧版本。 我不想去做任何修改或修复以前版本中的任何错误。 我只是想看到它,而不以任何方式影响最新版本的文件或mercurial历史。 有一个简单的方法来做到这一点?