2012-02-25 232 views
9
$ git clone ssh://host/repo.git ~/ 
destination directory '/home/username/' already exists. 

任何人都可以告訴我如何使這項工作?我試圖快速地複製通用的開發腳本和配置。git克隆到主目錄

+1

'混帳clone'看起來要麼創建工作路徑下的新目錄,或者在指定的路徑。由於'〜/'已經存在,它不能創建一個新的目錄... – 2012-02-25 12:23:49

+1

你真的想從git倉庫中取出整個主目錄嗎?或者進入一個子目錄? – 2012-02-25 12:24:00

+1

是的,repo中的所有文件都屬於主目錄。 – rich 2012-02-25 12:33:11

回答

28

這似乎工作:

cd ~ 
git init 
git remote add origin ssh://host/repo.git 
git pull origin master 
1
cd ~ 
git clone ssh://host/repo.git 

之後,你必須在/home/username/repo/目錄中的項目

如果你想在不同的文件夾名稱的項目(如「富/」)

mkdir ~/foo 
cd ~/foo 
git clone ssh://host/repo.git foo/ 
+0

雖然我希望它在主目錄中籤出。 – rich 2012-02-25 12:35:56

1

我會克隆庫到一個子目錄:

git clone ssh://your/git/repo.git ~/repo 

並創建符號鏈接到配置文件:

$ git clone ssh://host/repo.git ~/your_directory 

clone將創建~/your_directory

ln -s ~/repo/.bashrc ~/.bashrc 
+1

對於我想要克隆到的每臺機器而言,這將成爲回購中每個文件的噩夢。 – rich 2012-02-25 12:33:53

+1

當然,但你創建一個shell腳本,以及.. [Github示例](https://github.com/Mytho/dotfiles/blob/master/setup.sh) – 2012-02-25 12:36:07

2

克隆命令當你通過第二個參數創建一個新的目錄。如果該目錄已經存在,它會給你你所得到的錯誤。

+0

相當。那麼我如何強制它工作? – rich 2012-02-25 12:37:18

+0

@rich只是給我一個目錄名稱,像我的例子,或者'cd〜&& git clone ssh:// host/repo.git' – ouah 2012-02-25 12:40:55