2017-11-11 68 views
-2

我正嘗試在名稱中包含美元符號的目錄中創建一個mercurial存儲庫。這是我在Windows上獲得10 CMD.EXE與善變4.1.3等效和簡化的例子:在名稱中包含美元符號的目錄中創建mercurial repo

C:\test\dir1>hg init 

C:\test\dir1>hg status 

C:\test\dir1>cd ../dir$$1 

C:\test\dir$$1>hg init 

C:\test\dir$$1>hg status 
abort: repository C:\test\dir$$1 not found! 

,所以我希望這是明確的,唯一的區別似乎是在第二目錄中的美元符號名稱。提前致謝!

+0

看起來不起作用。你有什麼問題? –

+0

如果您甚至找到使其工作的方法,這是各種頭痛的祕訣。你爲什麼要這樣做? –

+0

John,謝謝你的迴應,對不起,我的問題沒有明確說明。有沒有辦法讓我可以在windows 10上使用名爲美元符號的目錄中的Mercurial?謝謝 –

回答

1

水銀好像對待美元的跡象,環境變量轉義:

C:\test>set X=abc 

C:\test>echo $X   # Not the shell expanding it, that would be %X%. 
$X 

C:\test>hg init $X 

C:\test>dir 
Volume in drive C has no label. 
Volume Serial Number is CE8B-D448 

Directory of C:\test 

11/10/2017 09:27 PM <DIR>   . 
11/10/2017 09:27 PM <DIR>   .. 
11/10/2017 09:27 PM <DIR>   abc 
       0 File(s)    0 bytes 
       3 Dir(s) 53,899,231,232 bytes free 

水銀擴展$X作爲環境變量。另外:

C:\test>hg init dir$$x 

C:\test>dir 
Volume in drive C has no label. 
Volume Serial Number is CE8B-D448 

Directory of C:\test 

11/10/2017 09:30 PM <DIR>   . 
11/10/2017 09:30 PM <DIR>   .. 
11/10/2017 09:30 PM <DIR>   dir$x 
       0 File(s)    0 bytes 
       3 Dir(s) 53,899,091,968 bytes free 

兩個美元符號插入一個美元符號。當您位於名爲dir$$x的目錄中時,Mercurial正在使用dir$x作爲名稱。我發現與hg -R. status解決方法,但更好地避免美元符號。

+0

感謝Mark Tolonen非常清楚地演示了hg在這種情況下的工作原理。在提問之前,我應該看過[這些來自selenic的文檔](https://www.selenic.com/mercurial/hg.1.html#specifying-file-sets)。將採取您的建議,並避免使用美元符號。謝謝 –

相關問題