Collaboration avec d'autres développeurs

Apps Script fournit des fonctionnalités qui vous aident, vous et les autres développeurs, à créer et à gérer ensemble des scripts, des modules complémentaires et des applications Web.

Principes de base de la collaboration

Pour collaborer sur un projet, vos collaborateurs et vous-même devez disposer d'un accès éditeur au fichier du projet Apps Script (et à son conteneur, s'il s'agit d'un script lié). Cela permet à tous les membres de votre équipe de voir et de modifier le code Apps Script. Les éditeurs peuvent également créer de nouvelles versions de code, publier des modules complémentaires et déployer des scripts en tant qu'applications Web ou en tant qu'exécutables pour l'API Apps Script.

Vous pouvez aider votre équipe à planifier à l'avance la gestion de la modification, de la révision, de la gestion des versions et (le cas échéant) du déploiement et de la publication de votre projet, module complémentaire ou application Web. Les projets autonomes sont généralement les plus faciles à collaborer, car ils apparaissent directement dans Google Drive et sont recommandés pour le développement de modules complémentaires et d'applications Web.

Un problème courant de collaboration se produit lorsqu'un propriétaire de projet de script quitte l'équipe sans transférer la propriété du projet à un autre membre de l'équipe. Cela peut vous empêcher de gérer ou de mettre à jour le projet. Vous pouvez éviter ce problème en plaçant votre projet de script dans un Drive partagé, car les fichiers d'un Drive partagé n'ont pas de propriétaire spécifique.

Collaboration avec l'outil de ligne de commande clasp

clasp vous permet de synchroniser des projets entre script.google.com et votre système de fichiers local. Cela vous permet de simplifier et d'automatiser le développement de votre code si vous et vos collaborateurs utilisez un logiciel de gestion du contrôle du code source, tel que git.

Pour en savoir plus, consultez le guide sur l'interface de ligne de commande à l'aide de clasp.

Collaborer avec des Drive partagés

Les Drive partagés (anciennement "Drive d'équipe") fournissent un espace partagé dans Google Drive où les groupes d'utilisateurs Drive peuvent collaborer plus efficacement. Les fichiers placés dans un Drive partagé appartiennent à l'ensemble du groupe, et non à des individus. Cela signifie que lorsqu'un collaborateur quitte le groupe, il n'est plus propriétaire et contrôle du fichier.

Les Drive partagés vous permettent également de déplacer des fichiers entre plusieurs domaines. Un Drive partagé d'un domaine peut avoir des collaborateurs d'un autre domaine qui peuvent déplacer des fichiers de ce domaine vers le Drive partagé. Cela peut être très utile aux développeurs Apps Script, car cela permet à une équipe de développer des modules complémentaires, des applications Web ou d'autres codes pour les clients de différents domaines.

Lorsque vous utilisez des Drive partagés pour collaborer sur des projets Apps Script, tenez compte des points suivants:

  1. Les collaborateurs disposant d'un accès éditeur à un Drive partagé peuvent en créer ou en déplacer de nouveaux. En tant qu'éditeurs de scripts, ils peuvent afficher et modifier des projets, exécuter du code, créer des versions de script et publier des modules complémentaires.
  2. Pour que vous puissiez déployer des scripts en tant qu'applications Web ou exécutables pour l'API Apps Script, le compte qui les crée doit appartenir au même domaine que le Drive partagé dans lequel ils se trouvent.
  3. Les Drive partagés vous permettent de partager des fichiers spécifiques avec d'autres personnes du groupe, et de mettre à jour leurs droits de modification et d'affichage sur ces fichiers, comme tous les autres fichiers Drive. Toutefois, si un utilisateur fait partie de l'équipe à laquelle le Drive partagé appartient, vous ne pouvez pas limiter son accès à des fichiers spécifiques. Par exemple, si un utilisateur est autorisé à modifier un Drive partagé, vous ne pouvez pas le modifier en lecture seule pour un fichier spécifique dans le Drive partagé.
  4. Les collaborateurs disposant d'un accès complet à un Drive partagé (en plus de ceux ci-dessus) peuvent supprimer des fichiers et des projets Apps Script, et déplacer des fichiers hors du Drive partagé.
  5. Tous les scripts liés au conteneur utilisent les mêmes listes d'accès en tant que lecteur et éditeur définies pour le fichier de conteneur. Par exemple, si vous êtes autorisé à modifier une feuille de calcul Google Sheets, vous pouvez également modifier le code du projet Apps Script qui lui est associé. Si vous placez ce fichier de conteneur dans un Drive partagé, les collaborateurs de ce Drive disposent du même accès au code du script que celui du conteneur lui-même.
  6. Lorsqu'un projet de script se trouve dans un Drive partagé, l'accès à son projet Cloud Platform (GCP) peut être limité. Pour en savoir plus, consultez la section Projets GCP et Drive partagés.
  7. Les applications Web déployées dans un domaine cessent de fonctionner si leur propriétaire change de Drive partagé ou de compte dans un autre domaine. Pour résoudre ce problème, déplacez le script vers son domaine d'origine.
  8. De même, les projets de script déployés en tant qu'exécutable de l'API Apps Script ne fonctionnent plus lorsqu'ils sont appelés par l'API s'ils sont déplacés via un Drive partagé d'un domaine à un autre. Pour résoudre le problème, rétablissez le script sur son domaine d'origine.

Collaboration grâce au partage de projet

Vous pouvez également collaborer sur un projet en le partageant directement avec tous les collaborateurs. Vous pouvez partager directement des projets de script qui se trouvent dans des dossiers Google Drive standards ou dans des Drive partagés. Si vous utilisez cette méthode, nous vous recommandons de planifier soigneusement le propriétaire et la gestion du script au fil du temps.

Les projets autonomes s'affichent dans votre Google Drive en tant que fichier, et vous pouvez les partager comme n'importe quel autre fichier. Pour en savoir plus, consultez la section Partager des fichiers et des dossiers.

Les projets liés au conteneur ne sont pas visibles dans Google Drive. Pour partager un projet lié au conteneur, partagez le fichier du conteneur parent. Par exemple, si un script est lié à une feuille de calcul Google Sheets, vous pouvez désigner une personne comme éditeur du script en lui attribuant la fonction d'éditeur de la feuille de calcul. Les projets liés au conteneur héritent des paramètres d'accès Lecteur et Éditeur de leur fichier de conteneur.

Tous les scripts liés au conteneur utilisent la même liste d'accès propriétaire, lecteur et éditeur définie pour le fichier de conteneur. Le propriétaire du conteneur devient propriétaire d'un nouveau projet de script, quel que soit son créateur.

Collaboration et projets de ressources

Les ressources sont des entités associées à votre projet, mais qui existent indépendamment de son code. Cette section explique comment la collaboration sur un projet affecte ses ressources, en particulier son projet Cloud Platform, ses déclencheurs, ses bibliothèques et ses propriétés utilisateur.

Collaboration et projets Google Cloud

Chaque projet Apps Script est associé à un projet Google Cloud. Les projets Google Cloud possèdent leurs propres rôles de propriétaire, d'éditeur et autres, qui peuvent être différents de l'ensemble d'utilisateurs pouvant accéder au projet de script.

Si votre projet de script est destiné à être publié en tant que module complémentaire, il doit utiliser un projet Google Cloud standard. Lorsque vous collaborez sur une application qui utilise un projet Google Cloud standard, nous vous recommandons de configurer les propriétaires et les rôles Google Cloud pour vous assurer que tous vos collaborateurs disposent des niveaux d'accès appropriés. Cela permet d'éviter les situations où vous perdez l'accès aux paramètres Cloud du projet, car ses propriétaires ne sont plus rattachés à votre organisation. C'est particulièrement important pour les modules complémentaires.

Collaboration et déclencheurs

Lorsque vous collaborez sur un projet, les déclencheurs installables que vous créez ne sont pas partagés avec les personnes ayant accès à votre projet. Si vous avez besoin d'une configuration de déclencheur cohérente pour tous les collaborateurs, vous pouvez utiliser le service Script pour créer des déclencheurs par programmation, au moment de l'exécution. Pour en savoir plus, consultez la section Gérer les déclencheurs de manière automatisée.

Collaboration et bibliothèques

Les bibliothèques incluses dans votre projet sont disponibles pour les collaborateurs du projet. Toutefois, s'ils ne disposent pas au moins d'un accès en lecture à une bibliothèque incluse, ils ne peuvent pas utiliser ces bibliothèques. Dans ce cas, le script génère une erreur. Pour en savoir plus sur les bibliothèques, consultez la page Gérer les bibliothèques.

Collaboration et propriétés utilisateur

Les propriétés utilisateur sont propres à l'utilisateur qui les a créées. Cela signifie que les collaborateurs du projet ne peuvent pas voir vos propriétés utilisateur ni y accéder, et que vous ne pouvez pas les voir ni y accéder. Utilisez les propriétés de script si vous souhaitez partager des propriétés spécifiques au projet avec les collaborateurs. Pour en savoir plus, consultez le guide des propriétés.