2274 votes

Comment cloner un dépôt git dans un dossier spécifique?

L'exécution de la commande git clone git@github.com:whatever crée un répertoire dans mon dossier nommé que ce soit, et supprime le contenu du repo git dans ce dossier:

/httpdocs/whatever/public

Mon problème est que j'ai besoin le contenu du dépôt git cloné dans mon répertoire en cours afin qu'ils apparaissent dans l'emplacement approprié pour le serveur web:

/httpdocs/public

Je sais comment déplacer les fichiers après que j'ai cloné le dépôt, mais ce qui semble briser git, et j'aimerais être en mesure de mettre à jour simplement en appelant git pull. Comment puis-je faire cela? Et merci à vous!

3267voto

Can Berk Güder Points 39887

Option A:

git clone git@github.com:whatever folder-name

Option B:

déplacez le .git dossier, trop.

Mieux encore:

Gardez votre copie de travail quelque part d'autre, et de créer un lien symbolique.

590voto

J Wynia Points 4679

L'exemple que je pense que beaucoup de gens posent cette question sont, après est-ce. Si vous êtes dans le répertoire que vous voulez que le contenu du dépôt git sous-évaluées, exécutez:

git clone git@github.com:whatever .

Le "." à la fin spécifie le dossier en cours, comme le dossier d'extraction.

220voto

csomakk Points 1279

aller dans le dossier.. si le dossier est vide, alors

git clone git@github.com:whatever .

d'autre

git init
git remote add origin PATH/TO/REPO
git fetch
git checkout -t origin/master

89voto

Craig Gjerdingen Points 350

Vous clonez un dépôt avec

git clone [url]

Par exemple, si vous voulez cloner l'Université de Stanford Drupal Cadre Ouvert Git bibliothèque appelée open_framework, vous pouvez le faire comme ceci:

$ git clone git://github.com/SU-SWS/open_framework.git

Qui crée un répertoire nommé open_framework (en fonction de votre emplacement système de fichiers local), initialise une .répertoire git à l'intérieur, tire vers le bas toutes les données de ce référentiel, et extrait une copie de travail de la dernière version. Si vous allez dans le nouvellement créé open_framework répertoire, vous verrez les fichiers de projet il y, prêt à être travaillé ou utilisé. Si vous voulez cloner le dépôt dans un répertoire nommé quelque chose d'autre que open_framework, vous pouvez spécifier que la prochaine option de ligne de commande:

$ git clone git:github.com/SU-SWS/open_framework.git mynewtheme

Cette commande fait la même chose que le précédent, mais le répertoire cible est appelé mynewtheme.

Git a un certain nombre de différents protocoles de transfert vous pouvez utiliser. L'exemple précédent utilise git:// protocole, mais vous pouvez également voir http(s):// ou user@server:/path.git qui utilise SSH protocole de transfert.

13voto

Paul Points 12977

Lorsque vous déplacez les fichiers à l'endroit où vous les voulez, vous êtes également le déplacement de la .git annuaire? Selon votre système d'exploitation et la configuration, ce répertoire peut être caché.

Il contient les pensions et les fichiers de prise en charge, alors que le projet les fichiers qui sont dans votre /public répertoire ne sont que les versions dans le check-out s'engager (branche master par défaut).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X