2013-07-10 53 views
32

我已經授予服務器訪問權限,並且想要將git repo克隆到我的根文件夾中。但是,當我做混帳克隆它會使我與項目名稱的文件夾,我的項目文件夾是我的根。我沒有訪問我的父文件夾 我的根是沒有項目文件夾的git克隆

/var/www/sites/mysite/ 

當我做克隆文件夾結構將

/var/www/sites/mysite/mysite 
+0

請務必在apache/webserver的選項中提供.git。 – mnagel

回答

80

git clone接受最後一個參數是目標目錄,默認情況下它是項目的名稱,但您可以更改它。在你的情況,你可能想簡單地.

$ git clone origin-url . 

但需要注意的是,從man git-clone

克隆到現有的目錄,如果該目錄是空的,只允許。

2

可以複製到您的項目的子文件夾,並將其移動包括.git所有文件文件夾放入父文件夾(您的根目錄)。

+1

爲什麼不能更輕鬆地完成,就像git clone [email protected]:不管。\ – dzona

+0

它可以,看看rodrigos的答案。但我知道git repo只是一堆可以自由移動的文件,這個答案很容易記住。 – mnagel

11

你也可以只設置一個新的回購,然後跟蹤遠程和分支:

git init . 
git remote add origin [email protected]:user/repo.git 
git fetch origin 
git checkout master 
+0

如果回購有一個父文件夾,這仍然行不通 – Hittz

4

請記住,一個Git倉庫簡直是您存儲它的目錄結構。這意味着,當您將存儲庫克隆到錯誤的目錄中時,可以簡單地將目錄內容移動到您希望的任何地方,並且存儲庫數據仍然完好無損。因此,例如,您可以從命令行運行以下命令:

$ mv /var/www/sites/mysite/mysite/* /var/www/sites/mysite` 
$ mv /var/www/sites/mysite/mysite/.* /var/www/sits/mysite` 
$ rmdir /var/www/sites/mysite/mysite