2010-11-22 31 views
1

Nous avons un serveur de test où chaque développeur a son propre sandbox. En fait, notre projet web est tellement énorme que nous ne pouvons pas permettre aux développeurs de tout éditer, même dans le bac à sable. Par exemple, il existe des fichiers de mot de passe provenant d'autres services Web que les développeurs n'ont pas le droit de voir. Quoi qu'il en soit, nous ne pouvons pas permettre aux développeurs de cloner des projets entiers sur leur propre PC pour le développement. Nous voulons donc travailler à distance.Mercurial: client Windows pour le développement à distance

Quel client Windows prend en charge l'exploration du référentiel à distance REMOTE? Je sais que TortoiseHG n'est pas capable de faire ça. J'ai essayé de monter le répertoire du projet avec le logiciel sftpdrive, mais tortoiseHG a juste gelé après que j'ai essayé d'explorer le référentiel (c'est probablement à cause de la faible bande passante dans le bureau).

S'il vous plaît, existe-t-il un client graphique pour Windows qui peut fonctionner sur sftp?

+0

'Quoi qu'il en soit, nous ne pouvons pas permettre de cloner un projet entier pour posséder un PC pour le développement. Nous voulons donc travailler à distance. Alors pourquoi insistez-vous sur l'utilisation de DVCS, qui n'est pas conçu pour fonctionner dans une telle configuration? En outre, il n'y a vraiment qu'un seul client Windows, TortoiseHg ne fait que le contourner. –

+0

"qui peut fonctionner sur sftp" --- sftp est un protocole très lent pour une énorme quantité de fichiers. Donc s'il existe (mais je crois qu'il n'y en a pas) - il fonctionnera aussi lentement que monté par le répertoire sftpdrive. – zerkms

+0

qu'en est-il de certaines applications web comme tortoiseHG? – holms

Répondre

1

Il n'existe aucun client de ce type. Et je ne pense pas que ça existera jamais. List of clients. Si votre projet Web est en fait un multi-projet Web avec des ressources partagées, vous pouvez diviser votre référentiel dans des sous-dépôts (subrepo) et affiner les autorisations au niveau des sous-dépôts.

EDIT sur les commentaires:

si le seul environnement où toutes les choses ressources (périphériques, fichiers de mot de passe, ...) ne se rencontrent que sur le serveur, vous ne pouvez pas faire du développement local sur votre ordinateur. Soit vous refactorisez votre code et incluez des codes pour des ressources inexistantes, ainsi l'ordinateur de votre développeur peut se comporter comme le serveur, ou vous continuez à utiliser des sandbox sur des serveurs et vous créez des scripts sur le serveur qui extraient des modifications d'un référentiel intermédiaire.

+0

des suggestions comment faire du développement à distance avec mercurial? par exemple: il y a une connexion sftp, je travaille sur osx à la maison, je ne peux pas lancer apache/mysql/php sur mon mac (il y a des tonnes de raisons pour ces ressources, certains périphériques qui sont connectés au serveur, etc. Quelque chose de vraiment unique que vous ne pouvez pas avoir à la maison) Mon manager veut voir les changements de version de test sur un domaine comme test.mycompany.com. question: COMMENT GÉRER MERCURIAL REPO APART SSH ?? – holms

+0

la seule solution que je peux penser est d'avoir un éditeur qui synchronise les fichiers entre sftp et le lecteur local. puis avoir à repos: on est en sftp, et l'autre est en local. Il suffit donc de gérer mercurial sur le disque local, puis synchroniser ceci avec les fichiers sftp (en particulier le dossier .hg) – holms

3

Vous devez décomposer votre application Web en plusieurs référentiels et laisser les développeurs disposer uniquement d'un accès en lecture/écriture (via le clonage, le push et le pull pas un peu de fichier non-sens). Quelque chose comme:

/webapp (top level repository) 
    | 
    +---- secret stuff here 
    | 
    +---- more secret stuff here 
    | 
    +---- developer-okay-code-only-repo 

Où/webapp est le système de contrôle de révision, et il a de nombreux fichiers, il que les développeurs ne peuvent pas accéder, et a alors à l'intérieur dans un subrepo que les développeurs peuvent cloner et tirer de (et peut-être pousser-à).

+0

+1 pour les sous-enregistrements. Ils rock. – Macke

+0

ok choses secrètes n'arriveront pas dans pc de programmeurs, comment il va tester l'application ?????vous aurez des tonnes d'erreurs parce que ces fichiers n'existent pas. btw ce scénario est également à propos de lent pc/laptops avec des fenêtres de merde, où ils n'ont pas le cerveau pour configurer WAMP pour eux-mêmes ... – holms

+0

Ils testent en repoussant leur repo modifié à un ** clone personnel ** sur le serveur combiné, où quelque chose comme Hudson (ou tout outil d'intégration continue que vous aimez) fait la construction et exécute leur clone privé sur un port par utilisateur. –