2011-11-25 76 views

回答

1

由於Mercurial 2.1,還有一個純粹的本地解決方案:階段draft階段可能是你正在尋找的。有關詳細信息,請參閱:

https://www.mercurial-scm.org/wiki/Phases

您可能會發現hg phase <rev>hg log -r "draft()"有趣。

+0

什麼是命令行調用來顯示草稿階段中的所有修訂版本? – Mot

+0

請注意,如果您正在與多臺遠程設備進行交互,階段將無濟於事。一旦變更集被共享,它就被標記爲公開的,所以外向是確定從另一個遠程機構丟失什麼的唯一方法。 – Mikezx6r

7

如果你的意思是看到什麼是你的本地回購和你推到一個不同,嘗試

hg outgoing 
1

我只是用hg outgoing爲他人所提出的建議,但hg summary會告訴你。它可能需要--remote選項讓它檢查遠程默認服務器。

1

如果您需要選擇變更集供進一步處理,那麼您可以使用outgoingrevset predicate。這使您可以重新實現hg outgoing作爲

hg log -r "outgoing()" 

但真正的好處是,你可以在其他情況下使用此功能,如

hg strip "outgoing()" 
2

有一個remotebranch extension,會給你一個Git樣建立。它跟蹤[paths]中列出的存儲庫的遠程頭並將它們公開爲標籤<path>/<branch>。這讓你運行

$ hg diff -r foo/default 

看到因爲在foo庫中的default分支發生了什麼變化。也有新的revset關鍵字,讓你去做

$ hg log -r "not pushed()" 

事情得到什麼

$ hg outgoing 

會做,但沒有任何網絡流量。

1

什麼是命令行調用來顯示草稿階段的所有修訂版本?

hg log --style phases 

這將顯示日誌+相位,由於Mercurial 2.7 (2013-08-01)