Google Apps Script fournit des fonctionnalités qui aident les équipes à créer et à gérer ensemble des scripts, des modules complémentaires Google Workspace et des applications Web. Ce guide traite de la collaboration active sur un projet par plusieurs développeurs. Si vous souhaitez partager du code pour que d'autres personnes l' incluent dans leurs propres projets, consultez plutôt le guide Bibliothèques .
Principes de base de la collaboration
Pour collaborer sur un projet, vous et vos collaborateurs devez tous disposer d'un accès éditeur au fichier de projet Apps Script (et à son conteneur, s'il s'agit d'un script lié). Cela permet à tous les membres de votre équipe de voir le code Apps Script et d'y apporter des modifications. Les éditeurs peuvent également créer des versions de code, publier des modules complémentaires et déployer des scripts en tant qu'applications Web ou exécutables pour l' API Apps Script.
Planifiez à l'avance la manière dont vous gérez la modification, la révision, la gestion des versions, ainsi que le déploiement et la publication (le cas échéant) de votre projet, module complémentaire ou application Web. Les projets autonomes sont généralement les plus faciles à utiliser en collaboration, car ils apparaissent directement dans Google Drive et constituent le type de projet recommandé pour le développement de modules complémentaires et d'applications Web development.
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. Vous risquez alors de ne plus pouvoir gérer ni mettre à jour le projet. Pour éviter ce problème, placez votre projet de script dans un Drive partagé, car les fichiers d'un Drive partagé n'ont pas de propriétaires spécifiques.
Partagez toujours la propriété des projets de script. Si une personne quitte votre organisation et que son compte est supprimé, l'accès aux scripts sans autre propriétaire est perdu. Partagez votre script dans Drive ou déplacez-le vers un Drive partagé.
Collaborer 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 des sources tel que git.
Pour en savoir plus, consultez le guide Interface de ligne de commande
à l'aide de clasp.
Collaborer avec des Drive partagés
Les Drive partagés ne sont disponibles que pour les clients Google Workspace Business et Google Workspace Enterprise.
Les Drive partagés offrent un espace partagé dans Drive où les groupes d'utilisateurs Drive peuvent collaborer plus efficacement. Les fichiers placés dans un Drive partagé appartiennent au groupe dans son ensemble, et non à des personnes. Cela signifie que lorsqu'un collaborateur quitte le groupe, il ne conserve pas la propriété ni le contrôle des fichiers.
Les Drive partagés vous permettent également de déplacer des fichiers entre des 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 permet à une équipe de développer des modules complémentaires, des applications Web ou d'autres codes pour des clients de différents domaines.
Lorsque vous utilisez des Drive partagés pour collaborer sur des projets Apps Script :
- Les collaborateurs disposant d'un accès éditeur à un Drive partagé peuvent créer ou déplacer des fichiers dans le Drive partagé. En tant qu'éditeurs de scripts, ils peuvent afficher et modifier des projets de scripts, exécuter du code de script, créer des versions de script et publier des modules complémentaires.
- Pour déployer des scripts en tant qu'applications Web ou exécutables pour l' API Apps Script, le compte qui crée le déploiement doit appartenir au même domaine que le Drive partagé dans lequel réside le script.
- Les Drive partagés vous permettent de partager des fichiers spécifiques au sein du Drive partagé avec des personnes extérieures au groupe, et de mettre à jour leurs autorisations de modification et d'affichage sur ces fichiers comme n'importe quel autre fichier Drive. Toutefois, si un utilisateur fait partie de l'équipe à laquelle appartient le Drive partagé, vous ne pouvez pas réduire son accès à des fichiers spécifiques. Par exemple, si un utilisateur dispose d'un accès en modification à un Drive partagé, vous ne pouvez pas le remplacer par un accès en lecture seule pour un fichier spécifique du Drive partagé.
- Les collaborateurs disposant d'un accès complet à un Drive partagé peuvent également supprimer des fichiers et des projets Apps Script, et déplacer des fichiers hors du Drive partagé.
- Tous les scripts liés à un conteneur utilisent les mêmes listes d'accès lecteur et éditeur définies pour le fichier conteneur. Par exemple, si vous disposez d'un accès en modification à une feuille de calcul Google Sheets, vous disposez également d'un accès en modification à tout code de projet Apps Script qui y est associé. Le fait de placer un tel fichier conteneur dans un Drive partagé accorde aux collaborateurs du Drive partagé le même accès au code de script que celui dont ils disposent pour le conteneur lui-même.
- Lorsqu'un projet de script réside dans un Drive partagé, l'accès à son projet Google Cloud peut être limité. Pour en savoir plus, consultez la section Guide sur les projets Google Cloud et les Drive partagés.
- Les applications Web déployées dans un domaine cessent de fonctionner si leur propriété est transférée à un Drive partagé ou à un compte d'un autre domaine. Pour corriger ce problème, déplacez le script vers son domaine d'origine.
- De même, les projets de script qui sont déployés en tant qu'exécutable d'API Apps Script cessent de fonctionner lorsqu'ils sont appelés par l'API s'ils sont déplacés d'un domaine à l'autre via un Drive partagé. Pour corriger ce problème, déplacez le script vers son domaine d'origine.
Collaborer avec un dossier partagé
Soyez prudent si vous créez ou déplacez un projet Apps Script vers un dossier partagé. Assurez-vous que le dossier n'est partagé qu'avec des personnes de confiance.
Si vous ne pouvez pas collaborer avec un Drive partagé, utilisez plutôt un dossier partagé. Lorsque vous créez ou déplacez un projet Apps Script vers un dossier Drive auquel d'autres personnes peuvent accéder, elles héritent du même accès au projet Apps Script que celui dont elles disposent pour le dossier. Exemple :
- Si une personne dispose d'un accès en modification au dossier, elle peut modifier ou supprimer le projet Apps Script et exécuter le script.
- Si une personne ne dispose que d'un accès en lecture au dossier, elle peut afficher le projet Apps Script et exécuter le script.
Collaborer avec le partage de projets
Collaborez sur un projet en le partageant directement avec tous les collaborateurs. Partagez directement les projets de script qui résident dans des dossiers Drive standards ou dans des Drive partagés. Planifiez soigneusement qui possède et gère le script au fil du temps.
Les projets autonomes apparaissent dans Drive sous forme de fichier. Partagez-les comme n'importe quel autre fichier. Pour en savoir plus, consultez Partager des fichiers et des dossiers.
Les projets liés à un conteneur ne sont pas visibles dans Drive. Pour partager un projet lié à un conteneur, partagez le fichier conteneur parent. Par exemple, si vous avez un script lié à une feuille de calcul Google Sheets, accordez à une personne le rôle d'éditeur du script en lui accordant le rôle d'éditeur de la feuille de calcul. Les projets liés à un conteneur héritent des paramètres d'accès lecteur et éditeur de leur fichier conteneur.
Tous les scripts liés à un conteneur utilisent la même liste d'accès propriétaire, lecteur et éditeur définie pour le fichier conteneur. Le propriétaire du conteneur devient propriétaire d'un nouveau projet de script, quel que soit son créateur.
Collaboration et ressources de projet
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 Google Cloud, 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 ont leur propre ensemble de propriétaires, d'éditeurs et d'autres rôles, qui peuvent être différents de l'ensemble des utilisateurs pouvant accéder au projet de script.
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, utilisez le service Script pour créer des déclencheurs par programmation, au moment de l'exécution. Pour en savoir plus, consultez Gérer les déclencheurs par programmation.
Étant donné que les déclencheurs simples sont créés à partir de code, ils sont partagés avec les collaborateurs du projet.
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 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 ni accéder à vos propriétés utilisateur, et que vous ne pouvez pas voir ni accéder aux leurs. Utilisez les propriétés de script si vous souhaitez partager des propriétés spécifiques au projet avec des collaborateurs. Pour en savoir plus, consultez le guide Propriétés.