Git checkout dans un répertoire spécifique
Lorsque nous construisons notre application, nous allons chercher le code à partir d'un répertoire d'un serveur CVS en premier, puis le construire.
Ainsi, dans Git, nous n'avons rien de semblable pour le faire. Je veux juste extraction à partir d'un spécfiques diectory de repo Git et ensuite construire notre code. Pas de pensions d'entretien, rien. Juste le code de la caisse.
Je sais qu'il ya quelque chose appelé "Sparse checkout". Nous n'avons rien de plus simple?
Mon problème est que ce script peut être exécuté sur n'importe quel serveur. Donc, si je choisis Éparses la caisse, je vais avoir à aller sur chaque serveur ,la mise en place de Git et de et de dire comment le faire sparse checkout.
voir aussi stackoverflow.com/a/14701421/11343 pour l'alternative la réponse
OriginalL'auteur Ahmad | 2013-07-24
Vous devez vous connecter pour publier un commentaire.
Pour répondre littéralement à votre question, vous devez effectuer les opérations suivantes:
Récupérer les pensions de données dans un répertoire temporaire
La caisse et le répertoire que vous voulez dans un autre
Vous pouvez ensuite supprimer le temporaire et le travail à la caisse.
Cela peut être facilement mis dans un script bien sûr!
OriginalL'auteur CharlesB
Git philosophie est de kilomètres de CVS, donc je vous suggère d'agir différemment ici. Vos dépôts Git sera distribué, chaque développeur ou le serveur dispose d'une copie de celui-ci, avec un cours d'autorité parmi ces (
origin
à distance dans Git).Lorsque vous souhaitez démarrer une construction à partir d'une nouvelle caisse, vous dites d'abord Git pour saisir les dernières modifications de
origin
, cela s'appelle une extraction.Ensuite, pour avoir une nouvelle caisse, vous voulez que votre système de fichiers à être exactement la même que la version du serveur, sans n'importe quel autre fichier.
L'avantage ici est que le fonctionnement en réseau est très efficace, vous prenez seulement la dernière diffs à partir du serveur que vous souhaitez synchroniser avec, et vous êtes toujours sûr que vous êtes en train de construire à partir de la droite de fichiers, sans les modifier.
Vous aurez envie de vérifier aussi d'outils d'intégration continue, Intégration Continue comme Jenkins, qui est très bien intégré avec les dépôts Git.
tu veux dire la caisse un répertoire unique, sans l'ensemble du référentiel de données? Il n'y a pas d'autre moyen que de cloner et de rares-caisse
Actuellement, il y a une autre façon, voir ma réponse
OriginalL'auteur CharlesB
Vous pouvez essayer de cloner votre dépôt en utilisant le
--depth
option, pour voir si elle correspond à votre besoin. --profondeur de l'option n'est pas cloner le répertoire de l'histoire, et donc, sera plus rapide.> git clone http://myrepo.git --depth 1
Vous pouvez restreindre davantage la caisse en spécifiant un nom de branche :
> git clone http://myrepo.git -b master --depth 1
Si vous voulez extraire seulement un sous-répertoire d'un dépôt git, autant que je sache, il n'est pas possible actuellement.
OriginalL'auteur Guillaume Darmont