Vous recherchez un outil pour synchroniser automatiquement le protocole SFTP avec le dossier local

9

J'utilise OS X pour le développement et je veux pousser les changements vers le serveur de développement sur chaque ⌘ + S.
Lorsque je vérifie une autre branche, je souhaite que le dossier local soit mis à jour en conséquence.

J'ai donc pensé que j'avais besoin d'une solution de synchronisation bidirectionnelle automatique .

Mon éditeur de choix est Sublime Text (ce qui est génial, vous devriez absolument le vérifier).
J'ai commencé ma quête avec le plugin Sublime Text SFTP de Will Bond, mais je l'ai trouvé instable et lent.

Ensuite, j'ai attaqué le problème avec Panic Transmit .
C'est incroyablement beau. Cependant, cela ne m'a pas aidé non plus.

Transmit offre deux options:

  • synchronisation bidirectionnelle entre le dossier local et distant;
  • montez SFTP sur le système de fichiers.

Hélas, sa synchronisation bidirectionnelle est manuelle et doit être invoquée en appuyant sur un bouton.
(Je pourrais probablement contourner cela en écrivant un AppleScript intelligent, mais je ne le sais pas.)

Le montage SFTP est excellent - malheureusement, il présente des inconvénients majeurs: la recherche de fichiers est prévisible et il semble impossible de dire à Transmit que les fichiers ont changé sur le serveur . Vous devez démonter et monter à nouveau pour voir les modifications à distance. Cela rend les branches impossibles à travailler.

Je suis vraiment confus maintenant et je n'ai pas envie de perdre quelques heures sur une mauvaise solution. Je suis ouvert aux suggestions d'un outil pour améliorer mon flux de travail.

Voici ce que j'ai trouvé jusqu'à présent. Je ne suis pas sûr que l'un d'eux puisse réellement regarder les dossiers distants pour les changements.

Notez que je recherche une solution prête à l'emploi . Je ne veux pas d'un outil qui ne peut pas gérer les fichiers ou dossiers nouveaux / modifiés / supprimés sans tripoter son code source.

Dan
la source
Pourquoi ne pas simplement utiliser un bon IDE qui peut vous aider à le faire?
Thorbjørn Ravn Andersen

Réponses:

5

Vieille question, mais voici ma réponse:

J'utilise un outil Unix appelé Unison . Il s'agit d'un outil en ligne de commande qui permet une synchronisation bidirectionnelle.

L'avantage est qu'il est hautement configurable: ignorer certains noms de fichiers, répertoires, synchroniser plusieurs dossiers, quel côté gagne en cas de conflit, bien d'autres choses.

Le mauvais est que vous ne devez pas avoir peur de la ligne de commande et que le serveur et le client doivent avoir installé Unison; les deux installations doivent être de la même version et construites avec la même version d'OCAML.

Mais je l'utilise plusieurs fois par heure chaque jour de travail depuis l'année dernière et c'est génial - c'est vraiment rapide, très facile à lancer depuis la ligne de commande.

RyanWilcox
la source
1

Avez-vous envisagé d'utiliser quelque chose comme Git? Hébergement des fichiers sur GitHub ou configuration de votre propre serveur git.

Cela devrait aider: /programming/455698/best-visual-client-for-git-on-mac-os-x

afragen
la source
1
J'utilise Git, mais je n'ai pas d'environnement en cours d'exécution sur mon ordinateur portable, donc pour tester chaque plus petit changement, je dois faire un commit et un push. Cela rend l'histoire de la validation vide de sens et quelque peu fastidieuse, bien que ce soit exactement ce que je fais maintenant, avec ST2 et Github pour Mac, rendant l'expérience un peu plus amusante et moins douloureuse.
Dan
1
Est-ce que l'une ou l'autre de ces aides? stackoverflow.com/questions/2275010/… ou stackoverflow.com/questions/5054174/…
afragen
Je vais certainement jeter un œil à ces questions, merci beaucoup.
Dan
0

Une très vieille question, mais peut-être que ma propre réponse est utile. J'ai également utilisé SublimeText (je pense que je l'ai encore quelque part) parce que j'aime la façon dont il ouvre les fichiers si rapidement - en particulier sur les anciens Mac. Cependant, pour un travail plus sérieux, un meilleur IDE répondrait certainement mieux à vos besoins.

Puisque vous êtes bien dans l'acquisition de logiciels nouveaux / différents, essayez Coda de Panic. Vous avez déjà aimé Transmit, qui est également un produit de Panic. Coda se situe entre SublimeText et des IDE ultra-sophistiqués comme, par exemple, Eclipse, et il peut faire à peu près ce que vous souhaitez - garder les dossiers synchronisés entre votre ordinateur local et le serveur distant, publier et synchroniser à la demande, et, en outre, garder votre les données locales sont également synchronisées avec GitHub, Google Code ou tout autre système de versioning populaire basé sur Git ou SVN.

Coda a un peu souffert des performances dans le passé (à savoir le rendu du code en couleur lors du défilement rapide), mais les versions actuelles ont été complètement remaniées et sont presque aussi rapides que SublimeText. Il est également basé sur un plugin - le plugin de validation PHP / JavaScript / HTML est un must, car les fonctionnalités de validation de code interne de Coda ne sont pas excellentes en comparaison. Et, ces jours-ci, vous pouvez utiliser les paramètres de votre serveur de transmission sur Coda et vice-versa, ainsi que sur tout appareil iOS que vous pourriez posséder, via leurs applications intelligentes qui synchronisent les paramètres entre eux.

Cela ressemble presque à de la propagande pour Panic ... Je n'aurais pas mentionné Coda si vous n'aviez pas mentionné Transmit!

Gwyneth Llewelyn
la source