132 votes

Git Push into Production (FTP)

J'aimerais savoir s'il existe un moyen simple de pousser un référentiel GIT en production (sur un serveur FTP)? Merci

163voto

Tim Henigan Points 19948

Certains outils récemment ajouté à la Git wiki:

git-ftp par René Moser est un simple script shell pour faire du FTP le Git façon. Utilisation git-ftp.sh pour télécharger uniquement les Git suivi des fichiers vers un serveur FTP, qui ont changé depuis la dernière le téléchargement. Cela économise du temps et de bande passante. Même si vous jouez avec différents les branches, git-ftp.sh sait quels fichiers sont différents. Pas un client FTP peut le faire.

git-ftp par Edward Z. Yang est un simple script écrit en python pour le téléchargement de fichiers dans un dépôt Git via FTP, en transférant uniquement les nouveaux fichiers et suppression des fichiers anciens.

14voto

Geri Points 3572

Si vous préférez l'interface graphique, utilisez SourceTree, vous pouvez facilement configurer une action personnalisée utilisant git-ftp mentionnée ci-dessus. Une brève description de la configuration (pour Mac) au niveau du dépôt Push a Git sur un serveur FTP

entrer la description de l'image ici

11voto

Simon Points 4467

J'ai trouvé PHPloy un excellent outil pour l'envoi de votre Git s'engage à des serveurs distants via FTP. Il fonctionne à partir de la ligne de commande et est écrit en PHP (et même détecte les changements dans les submodules).

https://github.com/banago/PHPloy

git commit ...
phploy -s staging
phploy -s production

Fait!

(Avertissement: après l'avoir utilisé pendant un certain temps maintenant, j'ai contribué au code des correctifs et des améliorations, le rendant compatible avec Windows.)

10voto

Rob Sawyer Points 505

Si vous êtes sur mac et transmission, je vous recommande la suite de git-tranmit script (https://gist.github.com/379750). Il utilise DockSend envoyer uniquement la dernière mise à jour des fichiers. Si vous n'êtes pas familier avec DockSend, découvrez http://www.panic.com/blog/2010/11/15-secrets-of-transmit/.

Programme d'installation:

  1. cp git-transit /usr/sbin/.
  2. cd /usr/sbin
  3. chmod +x git-transmettre
  4. Le programme d'installation de chute pour envoyer votre app live
  5. Lancez la commande git-transmettre dans votre dépôt git.

5voto

sblundy Points 27163

Ce n'est pas ce que git est, à proprement parler. Toutefois, si votre source est quelque chose qui n'a pas besoin de compiler ou de traitement, par exemple un site web constitué entièrement de fichiers html et javascript et le souhaitez, vous pourriez avoir un clone de l'opération sur votre serveur et d'utiliser git pull à partir du serveur de la garder à jour. Note, je config de votre serveur web pour masquer le répertoire git. Et ce n'est que le début des problèmes de sécurité.

Si vous avez toute sorte de compilation ou de traitement, vous devriez commencer à regarder Ant, Maven, BuildR, SBT, etc.

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