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

誰でもこの作品を作成する方法を教えてもらえますか?私はすぐに一般的なdevスクリプトと設定を複製できるようにしようとしています。その後git cloneをホームディレクトリに追加する

+1

'Gitのclone'は、現用パスの下に、または指定されたパスに新しいディレクトリを作成するかに見えます。 '〜/'はすでに存在するので、新しいディレクトリを作成することはできません。 –

+1

gitリポジトリからあなたのホームディレクトリ全体を実際にプルしたいですか?またはサブディレクトリに? –

+1

はい、リポジトリ内のすべてのファイルがホームディレクトリに属しています。 – rich

答えて

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/ディレクトリ

に(例えば 'FOO /')をプロジェクトを持っている

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

ホームディレクトリでチェックアウトしたいのですが。 – rich

1

Iだろうリポジトリをサブディレクトリにクローンします。

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

+1

もちろん、そのためのシェルスクリプトも作成します。[Github example](https://github.com/Mytho/dotfiles/blob/master/setup.sh) –

2

cloneコマンドは、新しいディレクトリを作成します。ディレクトリがすでに存在する場合は、エラーが発生します。

+0

かなり。では、どうすれば強制的に動作させるのですか? – rich

+0

@rich私の例のようにディレクトリ名をつけてください。 'cd〜&git clone ssh:// host/repo.git' – ouah