2013-05-29 55 views
4

我正在爲我的部署bash腳本尋找簡單的解決方案。Mercurial:從遠程回購得到最新的分支修訂版

此腳本的每次運行都應該將標記添加到production分支的最新修訂版本中,但應將其標記添加到遠程回購的最新修訂版本。

運行腳本的人可能擁有自己的production變更集,而不是推送到遠程倉庫,而我的服務器直接從遠程倉庫獲取具有隻讀訪問權限的代碼。這就是爲什麼我需要從遠程repo獲取最新的變更集,但在本地提交標記。

我試着像招數:

hg identify -i $(hg paths default)

  • 這是偉大的,但只給出了提示轉,不能定義分支

hg heads production

  • 這是偉大的一次,退貨最新的分行負責人,但只能從當地r EPO ..

希望有別人,我失去了一些東西,有一個辦法讓遠程分支頭版本ID ..

+0

我使用mercurial,但我無法弄清楚你正在嘗試做什麼。可能'hg incoming'有用嗎? – msw

+0

接受的答案就是我所說的:「遠程分支頭修訂版本號」。現在我在本地有我自己的主版本,但是能夠獲得遠程版本。 – s3m3n

+0

@msw這可能只是說'找不到變化',這沒有幫助。被問到的問題有點不清楚。 (是的,我知道這是一箇舊的) –

回答

3

我想你要找的是什麼:

hg identify --id $(hg paths default)#production 

這是使用#revision說明符,這在hg help urls中描述。

+0

太棒了,謝謝!沒有遇到過網址的修改魔法。 – s3m3n

5

通過實驗,我可以調整上述回答,並使其一個過程高管,而不是兩個(即,它會跳過hg paths default),如果這對你很重要:

hg identify --id --rev production default 

如果你想在本地修訂特定分支(而不是當前分支),然後使用:

hg identify --id --rev production 

哪裏production是你想要的分支。

相關問題