Question

Je voudrais optimiser mon déploiement scp qui actuellement copie tous les fichiers pour copier uniquement les fichiers qui ont changé depuis la dernière construction. Je crois qu'il devrait être possible avec la configuration actuelle en quelque sorte, mais je ne sais pas comment faire.

Je donne les résultats suivants:

Projet / src / bla / bla / <---- fichiers que je suis l'édition (la plupart du temps PHP dans ce cas, certains actifs statiques)

Projet / build <------- Je une étape de construction locale que j'utilise pour copier les fichiers ici

J'ai une tâche scp dès maintenant que tous les exemplaires du projet / construire à un serveur distant lorsque je en ai besoin.

Est-il possible de profiter d'une certaine manière de ce répertoire supplémentaire « construire » pour accomplir ce que je veux - ce qui signifie que je veux seulement télécharger le « diff » entre src / ** et construire / **. Est-il possible de récupérer en quelque sorte cela comme un ensemble de fichiers dans ANT puis scp cela?

Je me rends compte que ce que cela signifie est que si je supprime en quelque sorte / mess avec des fichiers sur le serveur entre les deux, le script ANT ne remarquerait pas, mais pour moi cela est correct.

Était-ce utile?

La solution

Vous pouvez dire ant scp seulement copier des fichiers qui ont été modifiés depuis la dernière poussée en utilisant la balise modified comme ceci:

<scp trust="true" sftp="true"... >
  <fileset dir="${local.dir}">
    <modified>
      <param name="cache.cachefile" value="localdev.cache"/>
    </modified>
  </fileset>
</scp>

La première fois que vous utilisez, il envoie tous les fichiers et mettre en cache les horodateurs dans le cachefile déclaré dans le param. Après cela, il n'enverra ceux modifiés.

testé et vérifié en mode SFTP.

Autres conseils

Je pense que vous devez utiliser rsync à la place. J'ai trouvé le article qui répond à votre question.

Dans un rsync bref reprendra là où il l'avait laissé et il devrait être possible de tunnel au-dessus ssh.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top