使用Mercurial(hg),有没有办法区分转4873和4821,但仅限于我的更改?

时间:2010-07-31 07:40:41

标签: mercurial dvcs

我想知道我做了哪些更改,而没有查看其他团队成员修改过的其他30个文件。

所以,当我hg out时,它表示推送的第一个变更集是4821,所以从那时起我已经拉,合并,并推了几次。现在我想确保删除所有调试代码。有没有办法将当前版本(4873)与版本4821区分开来,但仅限于我的更改?

4 个答案:

答案 0 :(得分:1)

如果您的更改与您的同事的文件不同,这听起来就是这样,您可以使用以下内容:

hg diff -r 4821 -r 4863 -I path/to/file1 -I path/to/file2

如果它们与其他人的更改混合在同一个文件中,那么您需要将更改保存在单独的分支中(不需要branch命令,匿名分支通常用于此有点事。)

答案 1 :(得分:1)

以下命令应该可以解决问题:

hg diff -r "4821:4873 and user(your_username)"

答案 2 :(得分:0)

我不知道您是否可以升级到最近发布的Mercurial 1.6,但是他们刚刚提供的这个functional query language功能正是您可能正在寻找的。

答案 3 :(得分:0)

尝试这种方法:

  1. 首先将您的本地仓库克隆到另一个文件夹
  2. 在新的克隆中,重新设置你的上一个变更集,以便它紧跟你的另一个变更集(这应该从中创建一个新的头)
  3. 做差异