2010-06-25 24 views
10

在家裏,這完美的作品。我現在另一臺計算機上(使用Cygwin的)和Hg推不會提示輸入用戶名/密碼:如何讓hg在cygwin/windows上提示輸入我的HTTP驗證用戶名/密碼?

[email protected] /cygdrive/d/repos/upthescala/viewprotect 
$ hg push https://viewprotect.googlecode.com/hg/ 
pushing to https://viewprotect.googlecode.com/hg/ 
searching for changes 
abort: http authorization required 

這裏是我的〜/ .hgrc的內容:

[http_proxy] 
host=someproxy:8080 

[ui] 
username = My Name <myemail> 

謝謝提前任何建議!

注意:這似乎是一個cygwin問題。當我從Windows提示符(cmd.exe的)嘗試,它按預期工作:

D:\repos\upthescala\viewprotect>hg push https://viewprotect.googlecode.com/hg/ 
pushing to https://viewprotect.googlecode.com/hg/ 
searching for changes 
http authorization required 
realm: Google Code Mercurial Repository 
user: myemailaddress 
password: ********* 

remote: Success. 

- LES

回答

6

因爲它是HTTP您可以始終把用戶名和密碼正確的URL。這可以在任何使用http身份驗證的網站以及任何瀏覽器中使用。

hg push https://myemailaddress:*********@viewprotect.googlecode.com/hg/ 

或者,較新的Mercurial版本有auth section您可以使用。

順便說一句,這是一個可怕的密碼。你應該想出比八顆星更好的東西。

+0

當然,我封鎖了真正的密碼! (這是谷歌爲源代碼庫生成的瘋狂的神祕密碼 - 我不是那麼密集:) – les2 2010-06-30 17:57:48

+8

lol @「這是一個可怕的密碼,你應該想出比八顆星更好的東西。」 – HighCommander4 2012-09-05 01:42:19

+1

Thanks @ HighCommander4我知道有人會得到它。 :) – 2012-09-05 14:10:18

8

這可能是由於使用與Windows控制檯子系統綁定的Mercurial版本引起的。與烏龜分發的二進制文件屬於這一類。如果是這種情況,mercurial會希望使用控制檯子系統來提示輸入憑據,但是從Cygwin shell運行時不會找到它。在我的情況下,安裝和使用Cygwin版本的mercurial修復了問題,除了固定顏色輸出。要檢查你正在使用的版本,運行'which hg'(但你可能已經知道了)。

+0

我有同樣的問題,但我使用MSYS,而不是Cygwin。對我有何建議? – HighCommander4 2012-09-05 01:44:22

+0

有人能給這個人一枚獎章! – 2015-01-15 15:33:13

8

要添加到安德魯的評論:

安裝和使用水銀固定的問題Cygwin的版本,

這也解決了這個問題對我來說,卻引起了這花了我另外一個問題有些時候要弄清楚。使用Cygwin版本的hg時,所有在TortoiseHG下克隆的文件在運行hg status時顯示爲已修改,但在運行hg diff時未顯示其中任何一個文件的差異。

問題是權限不匹配。在每個回購中運行chmod 644 .* -R解決了此問題。

相關問題