2014-07-18 69 views
0

通常,水銀,我創建一個新項目:如何連接本地和遠程Mercurial回購?

  1. 創建一個新的遠程回購
  2. 克隆回購本地
  3. 進行更改到本地回購
  4. 推送這些更改應用到遠程回購

這裏的「遠程回購」實際上是我們的「中央/始發」DVCS服務器(http://ourhg.ourorg.example.com等)。

我現在處於一種情況,我必須使用代碼生成工具來生成簡單網絡應用程序的源代碼。所以源代碼之前存在我們的hg服務器上的遠程回購。我正在尋找我需要執行的確切的shell命令,以便將它正確地推送到遠程倉庫。

相信它應該是這樣的:

  1. 使用代碼生成器生成的代碼,也就是說,在/home/myuser/myapp
  2. 初始化爲myapp的汞回購本地我的機器上(hg init
  3. myapp生成的源代碼添加到這個本地回購(hg add,然後hg commit
  4. ourhg.ourorg.example.com,創建新的遠程回購(手動步驟)
  5. ???
  6. 變更推坐在我的本地回購到遠程回購(hg push

知道有一些步驟#之間缺少4(創建遠程回購)和步驟#6(推到遠程回購)。當然,我需要做一些「連接」步驟,我的本地回購和遠程回購實現它們代表相同的項目/源代碼/等。這是我在這裏的掛斷,所以我問:什麼是步驟#5

+1

Google「man hgrc」,並查看「路徑」部分。例如'default = http:// username @ ourhg.ourorg.example.com/reponame' –

+0

@danielkullmann - 每個人都可以'hg push URL'而不是'hg push ALIAS' –

+0

@LazyBadger是的,你不必,但你可能會這樣做,以避免不必輸入整個URL .. –

回答

1

步驟#5是什麼?

發現此回購網站的URL。因爲它是空的回購,您可以不必擔心「相關」

+0

謝謝@LazyBadger( +1) - 但你的回答有點神祕!當你說「發現」遠程回購的URL時,你是什麼意思?這是什麼?另外,當你說「* ...不用擔心'相關|不相關'時,我不會跟着你。」 - 你能詳細說明嗎?再次感謝! – IAmYourFaja

+1

@IAmYourFaja - 1.「發現URL」的意思是(如書面所示) - 您必須知道repote repo的URL才能與之溝通2.相關|不相關的回購遊戲,qhen您將可視化回購樹 - 如果|當遠程回購(有些內容)不會與本地共享公共歷史時,您將得到兩個單獨的樹,而不是增加一個 –

+0

謝謝@Lazy Badger(再次+1) - 所以我正確地指出,在我的情況下真的沒有「第五步」?我可以從步驟#4(創建遠程回購)去做一個'hg push http:// myuser @ ourhg.ourorg.example.com/newRepo'?再次感謝! – IAmYourFaja

1

沒有什麼需要做的關聯它們。你可以在你的本地做hg push URL_OF_REMOTE,它會工作。如果您不希望每次在回購中編輯.hg/hgrc(必要時創建)並在[paths]部分中設置default=值,則不需要提供URL。像這樣的東西

[paths] 
default=URL_OF_REMOTE 

雖然這是可選的。

1

只需使用你origial步驟,有一點需要注意:

  1. 創建一個新的遠程回購
  2. 克隆回購本地(這將設置爲遠程的本地默認路徑)。
  3. 更改本地回購(使用代碼生成器應用程序在本地回購中生成代碼)。
  4. 將這些更改推送到遠程回購。

通過此流程,您不必手動更新遠程倉庫的路徑。

相關問題