2011-08-25 210 views
0

我想克隆遠程位於本地計算機的項目。Git克隆 - 無法克隆遠程存儲庫

所以:

1)我瀏覽到本地文件夾,我希望有我的文件。

2)I連接到ssh在遠程機器上: SSH [email protected]/devproject.git/

3)I執行的git克隆命令: GIT中克隆的ssh://東西@ server.webserver.com/devproject.git/

我得到: fatal:目標路徑'devproject'已經存在,不是一個空目錄。

我的本地機器上沒有devproject。我已檢查並重新檢查。

我錯過了什麼?

謝謝。

+0

這個問題並不清楚,我已經搜索了一些關於這方面的信息,但是顯然沒有了解當我們ssh發生什麼時發生了什麼,我無法理解這種錯誤的原因。另外,如果他們不知道或習慣於像ssh一樣使用ssh,其他人也可能會有這種疑問。這就是說,我真的不明白投票的理由。 – MEM

回答

2

在sshing到遠程機器後鍵入的任何命令都在該機器上執行,而不是在本地機器上執行。剪掉步驟#2。

2

您是在本地機器上還是通過SSH連接執行第3步?嘗試跳過第2步。

2

您正在進入服務器並嘗試克隆OVER您的回購。這就是爲什麼你得到fatal: destination path 'devproject' already exists and is not an empty directory.不要ssh進入服務器。跳過那部分。

0

我不知道這是否是原因,但是您的克隆網址(ssh://[email protected]/devproject.git/)末尾有斜線。也許這是什麼原因造成的?

0

注意:獨立於ssh問題,您可以在t/t5603-clone-dirname.sh中看到所有可能的git clone url/arguments

first version of that file透露了一些失敗克隆命令時的URL以斜線(ES),GIT中2.4.8(2015年8月3日,在固定即將2.5.1,2015年9月)結束:

test_clone_dir ssh://host/foo.git/ foo fail 
test_clone_dir ssh://host/foo.git/// foo fail 
test_clone_dir host:foo.git/ foo fail 
test_clone_dir host:foo.git/// foo fail 

commit db2e220commit d6a31e0(2015年8月10日)作者:Jeff King (peff)
(在commit 52f6893Junio C Hamano -- gitster --合併8月25日2015)

clone:使用在guess_dir_name

Commit 7e837c6計算長度(clone:簡化字符串中guess_dir_name()處理,2015年7月9日)改變克隆使用strip_suffix而不是手動滾動的指針操作。
但是,strip_suffix將從NUL終止字符串的末尾剝離,並且我們可能已經剝去了一些字符(如目錄分隔符或「/.git」)。
這導致命令等:

git clone host:foo.git/ 

未能剝離 「.git」。