web-dev-qa-db-fra.com

git clone sans dossier de projet

J'ai donné accès au serveur et je souhaite cloner git repo dans mon dossier racine. Mais quand je fais git clone, cela me fera un dossier avec le nom du projet, et mon dossier de projet est ma racine. Je n'ai pas accès à mon dossier parent, ma racine est

/var/www/sites/mysite/

et quand je fais la structure du dossier de clonage sera

/var/www/sites/mysite/mysite
52
dzona

git clone accepte un dernier argument qui est le répertoire de destination, c'est par défaut le nom du projet mais vous pouvez le changer. Dans votre cas, vous voulez probablement simplement .:

$ git clone Origin-url .

Mais notez que, à partir de man git-clone:

Le clonage dans un répertoire existant n'est autorisé que si le répertoire est vide.

121
rodrigo

Vous pouvez également simplement configurer un nouveau référentiel, puis le suivi à distance et la branche:

git init .
git remote add Origin [email protected]:user/repo.git
git fetch Origin
git checkout master
17
richo

N'oubliez pas qu'un référentiel git est simplement la structure de répertoires dans laquelle vous le stockez. Cela signifie que lorsque vous clonez un référentiel dans le mauvais répertoire, vous pouvez simplement déplacer le contenu du répertoire où vous le souhaitez et les données du référentiel sont toujours intactes. Ainsi, par exemple, vous pouvez exécuter les commandes suivantes à partir de la ligne de commande:

$ 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
4
Code-Apprentice

Vous pouvez cloner votre projet dans un sous-dossier et déplacer tous les fichiers, y compris le .git dans le dossier parent (votre racine).

2
Sergey K.

Cela fonctionne bien sur Windows également.

git init
git remote add Origin [email protected]:user/repo.git
git pull Origin master
1
hobbydev