2013-01-08 48 views
27

我們與sourceforge項目合作。當我們試圖推,然後善變中止:如何在使用「hg push」時解決「放棄的交易」?

$ hg push 

pushing to ssh://<user>@hg.code.sf.net/p/loremipsum/code 
searching for changes 
remote: abort: abandoned transaction found - run hg recover! 
abort: unexpected response: empty string 

而當我們嘗試恢復不起作用:

$ hg recover 
no interrupted transaction available 

該項目的其他程序員有同樣的問題。我們是一個迷路者。

+0

這看起來像是問題出在遠端...有沒有SF提供的任何工具來管理遠程存儲庫?或者可以使用'-R'來指定要執行恢復的存儲庫(即'hg recover -R ssh:// @ hg.code.sf.net/p/loremipsum/code') –

+0

感謝您的快速回復。當我嘗試: $ hg recover -R ssh:// @ hg.code.sf.net/p/loremipsum/code,我有:「放棄:存儲庫不是本地的」。 – user1810567

+1

我很害怕,看起來這需要SourceForge解決。如果這是一個選項,您可以創建一個新的存儲庫來推送所有更改,以便您的團隊繼續工作。 –

回答

56

在我來說,我不得不把遠程機器在那裏我推來運行

hg recover 

。它解決了問題,我可以從我的機器上推送更改。

+0

這件事幫了我 – DanilGholtsman

+0

非常感謝! –

+0

也幫了我:)謝謝 –

3

你可以通過ssh登錄到sourceforge(https://sourceforge.net/apps/trac/sourceforge/wiki/Shell%20service)。進入您的hg文件夾,例如/ home/hg/p/YOURPROJECTNAME/code,在這裏運行hg recover。然後一切正常。

+0

最後一個目錄步驟並不總是'/ code',而是你可以在allura上選擇的掛載點。 (在我的例子中是'/ hg',因爲'/ code'仍然是svn) – BeniBela

0

如果您正在使用bitbucket.com的解決方案,你會得到這個錯誤,你需要開出罰單,使他們將運行自己的服務器上hg recover

他們回答這個品種的門票非常快。

相關問題