2015-10-06 53 views
5

我試圖推送到遠程服務器時遇到此問題。它是Phabricator上的Mercurial倉庫。這是我的輸出。Phabricator上的Mercurial:「遠程:中止:流意外結束」

hg commit -m "udpate README" 
hg push 
pushing to ssh://company.server 
searching for changes 
remote: abort: stream ended unexpectedly (got 0 bytes, expected 4) 

我使用的是Mac OS 10.10的最新版本的Mercurial 3.5.2+20151001的。

我昨天有這個問題。那段時間,我可以成功承諾兩次,雖然我什麼也沒做。

爲什麼輸出看起來像this question,這裏的問題是不同的,因爲我已經刪除了存儲庫並多次克隆沒有任何問題。 (我第一次嘗試解決這個問題)

系統管理員和服務器在另一個城市,所以他不能看看我的機器。任何幫助將不勝感激。

+0

看起來好像服務器和客戶端在3.5中引入的有線協議的新bundle2格式上存在不一致的問題。我建議嘗試暫時降級到v3.4.2(例如使用'pip install mercurial == 3.4.2')來查看它是否修復了這個問題。參見[本討論](https://secure.phabricator.com/T9450)。如果它不起作用,請嘗試看看'hg push --debug --traceback'爲您做了什麼。 –

+0

@ReimerBehrends:謝謝。我降級到3.4.2,問題沒有了。你能否將你的評論變成答案,以便我可以解決這個問題? – qsp

+0

當然,完成了。 –

回答

3

看起來好像服務器和客戶端在3.5中引入的有線協議的新bundle2格式上存在分歧。我建議嘗試暫時降級到3.4.2(例如pip install mercurial==3.4.2),看看它是否解決了這個問題。見this discussion on Phabricator。如果它不起作用,hg push --debug --traceback可以提供更多關於錯誤發生的信息。

+0

https://bz.mercurial-scm.org/show_bug.cgi?id=4616 –