2013-03-16 21 views
0

當我使用Windows cmd從GitHub中克隆某些東西時,它向我展示了這個過程。例如:爲什麼Cygwin不像Windows那樣打印GitHub中正在克隆的內容?如何讓它打印?

C:\sbox\git\clone>git clone git://github.com/sstephenson/ruby-build.git 
Cloning into 'ruby-build'... 
remote: Counting objects: 1763, done. 
remote: Compressing objects: 100% (718/718), done. 

Receiving objects: 100% (1763/1763), 197.13 KiB, done. 
Resolving deltas: 100% (958/958), done. 

但是當我做在Cygwin下同樣它並不顯示,除了第一行什麼:

[email protected] /usr/local 
$ git clone git://github.com/sstephenson/ruby-build.git 
Cloning into 'ruby-build'... 

它創建的目錄中沒有任何錯誤,但如何使其顯示過程? -v--verbose選項沒有幫助。可能會導致錯誤,例如ruby-build不起作用?

+0

不同版本的git? – bmargulies 2013-03-16 20:38:12

+0

@bmargulies,不,我使用Cygwin和Windows中的一個。它在這裏安裝'C:\ Program Files \ Git'。不在任何Cygwin的目錄下。 – Green 2013-03-16 20:40:34

回答

0

我想把這個問題放在版本控制的 Ruby Git上,你已經在Windows上安裝了Cygwin。我的猜測是,您的Windows安裝程序正在使用1.9版的Git,而Cygwin的版本是1.8?

+0

如果事實上我已經用RailsInstaller(這裏是'C:\ RailsInstaller \ Ruby1.9.3')安裝了Ruby1.9.3,並且在Cygwin和Windows下都沒有任何其他版本的Ruby。我從Windows的'PATH'中刪除了它的路徑。所以Cygwin不必看到它。可能它仍然會導致問題? – Green 2013-03-16 20:47:14

+0

因此我對Cygwin的理解是缺乏的。我會看看別人是否可以提供幫助。 – JakeGould 2013-03-16 20:48:12

+0

好的,這個怎麼樣:當你在Cygwin時,當你輸入'which git'時,你會得到什麼?它應該告訴你當你簡單地輸入'git'時你使用的是什麼版本的git。 – JakeGould 2013-03-17 03:47:56

2

你已經在評論中注意到你正在使用Cygwin的一些Windows風格的Git。這會導致問題,因爲Cygwin終端(即MinTTY)看起來不像非Cygwin程序(僅希望Windows命令提示符)的終端。特別是,除非某個程序是專門爲Cygwin編譯的,否則它可能不會意識到它可以將東西打印到屏幕上。

你有兩個選擇來解決這個問題。簡單的方法是指定--progressgit clone。從git clone手冊頁(重點煤礦):

--progress

進展狀態默認情況下,當它連接到終端,除非指定-q報告標準錯誤流。 即使標準錯誤流沒有指向終端,此標誌仍會進入進度狀態。

更好的解決方法是使用Cygwin的Git。這確切知道如何使用Cygwin的終端,所以它將在任何情況下正確地打印到終端,而不必指定任何參數。它也將能夠獲得正確的顏色,我想Windows Git在Cygwin中也會失敗。

您可以從標準的Cygwin安裝程序安裝Cygwin Git。 Download the Cygwin installer again如果你需要。