2011-07-05 8 views
5

Nous avons développé un outil de déploiement automatique pour le déploiement de fichiers (ear, war et jar) dans le serveur jboss. Les développeurs vont enregistrer les fichiers dans Visual Source Safe. L'outil de déploiement automatique extrait automatiquement les derniers fichiers un par un spécifiés par le développeur et les déploie dans le serveur jboss à l'aide de l'API. Nous passons maintenant à GIT pour maintenir nos fichiers source et autres fichiers de déploiement.Comment extraire un seul fichier dans GIT

Est-ce que git a une option pour vérifier un seul fichier et des chemins comme VSS?

+3

http://stackoverflow.com/questions/692246/git-how-to-undo- changes-of-one-file/692329 # 692329 –

+1

Il aurait été demandé auparavant à coup sûr :) – c00kiemon5ter

Répondre

5

Vous pouvez récupérer un fichier spécifique à partir d'un référentiel Git. Quelque chose comme:

git show HEAD:filename.txt 

Si votre dépôt est dans un autre répertoire, vous pouvez utiliser GIT_DIR:

env GIT_DIR=/path/to/git/repo.git git show HEAD:filename.txt >filename.txt 

Je l'ai montré redirigeant la sortie vers un fichier.

+0

+1 et de clarifier sur le "certain commit précédent" (au lieu de HEAD): Il se réfère à l''SHA1 ID' qui peut facilement être trouvé via 'gitk'. Si je dois seulement "extraire" ce fichier vers un emplacement temporaire (c'est-à-dire ne pas revenir), alors j'utiliserais la sous-commande 'show':' git show 82e54378856215ef96c5db1ff1160a741b5dcd70: MyProj/proguard/mapping.txt> myproj_mapping.txt' – ef2011

3

Vous pouvez utiliser cette

git checkout <branch-where-the-file-is> -- path/to/file/in/the/other/branch 

Cela permet de récupérer le fichier de l'autre branche, à un courant

Questions connexes