Google Apps Script bietet Funktionen, mit denen Teams gemeinsam Skripts, Google Workspace-Add-ons und Webanwendungen erstellen und verwalten können. In dieser Anleitung geht es um die aktive Zusammenarbeit mehrerer Entwickler an einem Projekt. Wenn Sie Code freigeben möchten, damit andere ihn in ihre eigenen Projekte einbinden können, lesen Sie stattdessen die Anleitung zu Bibliotheken .
Grundlagen der Zusammenarbeit
Um an einem Projekt zusammenzuarbeiten, müssen Sie und Ihre Mitbearbeiter Bearbeitungszugriff auf die Apps Script-Projektdatei (und den zugehörigen Container, wenn es sich um ein gebundenes Skript handelt) haben. So können alle Mitglieder Ihres Teams den Apps Script-Code sehen und Änderungen daran vornehmen. Mitbearbeiter können auch neue Codeversionen erstellen, Add-ons veröffentlichen und Skripts als Webanwendungen oder als ausführbare Dateien für die Apps Script APIbereitstellen.
Planen Sie im Voraus, wie Sie die Bearbeitung, Überprüfung, Versionsverwaltung und (falls zutreffend) die Bereitstellung und Veröffentlichung Ihres Projekts, Add-ons oder Ihrer Webanwendung handhaben. Eigenständige Projekte sind in der Regel am einfachsten, an denen zusammengearbeitet werden kann, da sie direkt in Google Drive angezeigt werden und der empfohlene Projekttyp für die Entwicklung von Add-ons und Webanwendungen sind.
Ein häufiges Problem bei der Zusammenarbeit tritt auf, wenn der Inhaber eines Skriptprojekts das Team verlässt, ohne die Inhaberschaft des Projekts auf eine andere Person im Team zu übertragen. In diesem Fall können Sie das Projekt möglicherweise nicht mehr verwalten oder aktualisieren. Wenn Sie Ihr Skriptprojekt in einer geteilten Ablage platzieren, wird dieses Problem vermieden, da Dateien in einer geteilten Ablage keine bestimmten Inhaber haben.
Geben Sie die Inhaberschaft von Skriptprojekten immer frei. Wenn eine Person Ihre Organisation verlässt und ihr Konto entfernt wird, geht der Zugriff auf Skripts ohne andere Inhaber verloren. Geben Sie Ihr Skript in Drive frei oder verschieben Sie es in eine geteilte Ablage.
Zusammenarbeit mit dem Befehlszeilentool clasp
clasp ermöglicht Ihnen die Synchronisierung von Projekten zwischen script.google.com und Ihrem lokalen Dateisystem. So können Sie die Codeentwicklung optimieren und automatisieren, wenn Sie und Ihre Mitbearbeiter eine Software zur Quellcodeverwaltung wie git verwenden.
Weitere Informationen finden Sie in der Anleitung zur Befehlszeilenschnittstelle
mit clasp guide.
Zusammenarbeit mit geteilten Ablagen
Geteilte Ablagen sind nur für Google Workspace Business und Google Workspace Enterprise Kunden verfügbar.
Geteilte Ablagen bieten einen gemeinsamen Bereich in Drive, in dem Gruppen von Drive-Nutzern effektiver zusammenarbeiten können. Dateien, die in einer geteilten Ablage platziert werden, gehören der Gruppe als Ganzes und nicht einzelnen Personen. Wenn ein Mitbearbeiter die Gruppe verlässt, nimmt er also nicht die Inhaberschaft und Kontrolle über die Dateien mit.
Mit geteilten Ablagen können Sie auch Dateien zwischen Domains verschieben. Eine geteilte Ablage in einer Domain kann Mitbearbeiter aus einer anderen Domain haben, die Dateien aus dieser Domain in die geteilte Ablage verschieben können. So kann ein Team Add-ons, Webanwendungen oder anderen Code für Kunden in verschiedenen Domains entwickeln.
Wenn Sie geteilte Ablagen verwenden, um an Apps Script-Projekten zusammenzuarbeiten, gilt Folgendes:
- Mitbearbeiter mit Bearbeitungszugriff auf eine geteilte Ablage können neue Dateien erstellen oder in die geteilte Ablage verschieben. Als Skripteditoren können sie Skriptprojekte ansehen und bearbeiten, Skriptcode ausführen, neue Skriptversionen erstellen und Add-ons veröffentlichen.
- Wenn Sie Skripts als Webanwendungen oder ausführbare Dateien für die Apps Script API bereitstellen möchten, muss das Konto, mit dem die Bereitstellung erstellt wird, derselben Domain angehören wie die geteilte Ablage, in der sich das Skript befindet.
- Mit geteilten Ablagen können Sie bestimmte Dateien in der geteilten Ablage für andere Personen außerhalb der Gruppe freigeben und ihre Bearbeitungs- und Leseberechtigungen für diese Dateien wie für jede andere Drive-Datei aktualisieren. Wenn ein Nutzer jedoch Mitglied des Teams ist, zu dem die geteilte Ablage gehört, können Sie seinen Zugriff für bestimmte Dateien nicht einschränken. Wenn ein Nutzer beispielsweise Bearbeitungszugriff auf eine geteilte Ablage hat, können Sie diesen nicht in Lesezugriff für eine bestimmte Datei in der geteilten Ablage ändern.
- Mitbearbeiter mit uneingeschränktem Zugriff auf eine geteilte Ablage können auch Dateien und Apps Script-Projekte löschen und Dateien aus der geteilten Ablage verschieben.
- Alle containergebundenen Skripts verwenden dieselben Listen für Lese- und Bearbeitungszugriff, die für die Containerdatei definiert sind. Wenn Sie beispielsweise Bearbeitungszugriff auf eine Google-Tabelle haben, haben Sie auch Bearbeitungszugriff auf jeden Apps Script-Projektcode, der daran angehängt ist. Wenn Sie eine solche Containerdatei in eine geteilte Ablage verschieben, erhalten die Mitbearbeiter der geteilten Ablage denselben Zugriff auf den Skriptcode wie auf den Container selbst.
- Wenn sich ein Skriptprojekt in einer geteilten Ablage befindet, kann der Zugriff auf das zugehörige Google Cloud-Projekt eingeschränkt sein. Weitere Informationen finden Sie im Abschnitt Google Cloud-Projekte und geteilte Ablagen.
- Webanwendungen , die in einer Domain bereitgestellt werden, funktionieren nicht mehr, wenn die Inhaberschaft auf eine geteilte Ablage oder ein Konto in einer anderen Domain übertragen wird. Verschieben Sie das Skript zurück in die ursprüngliche Domain, um dieses Problem zu beheben.
- Ähnlich verhält es sich mit Skriptprojekten, die als ausführbare Datei der Apps Script API bereitgestellt werden . Sie funktionieren nicht mehr, wenn sie über eine geteilte Ablage von einer Domain in eine andere verschoben werden. Verschieben Sie das Skript zurück in die ursprüngliche Domain, um dieses Problem zu beheben.
Zusammenarbeit mit einem freigegebenen Ordner
Seien Sie vorsichtig, wenn Sie ein Apps Script-Projekt erstellen oder in einen freigegebenen Ordner verschieben. Geben Sie den Ordner nur für vertrauenswürdige Personen frei.
Wenn Sie nicht mit einer geteilten Ablage zusammenarbeiten können, verwenden Sie stattdessen einen freigegebenen Ordner. Wenn Sie ein Apps Script-Projekt erstellen oder in einen Drive-Ordner verschieben, auf den andere Personen zugreifen können, übernehmen diese Personen denselben Zugriff auf das Apps Script-Projekt wie auf den Ordner. Beispiel:
- Wenn jemand Bearbeitungszugriff auf den Ordner hat, kann er das Apps Script-Projekt bearbeiten oder löschen und das Skript ausführen.
- Wenn jemand nur Lesezugriff auf den Ordner hat, kann er das Apps Script-Projekt ansehen und das Skript ausführen.
Zusammenarbeit mit der Projektfreigabe
Sie können an einem Projekt zusammenarbeiten, indem Sie es direkt für alle Mitbearbeiter freigeben. Geben Sie Skriptprojekte direkt frei, die sich in normalen Drive-Ordnern oder in geteilten Ablagen befinden. Planen Sie sorgfältig, wer das Skript im Laufe der Zeit besitzt und verwaltet.
Eigenständige Projekte werden in Drive als Datei angezeigt. Geben Sie sie wie jede andere Datei frei. Weitere Informationen finden Sie unter Dateien und Ordner freigeben.
Containergebundene Projekte sind in Drive nicht sichtbar. Wenn Sie ein containergebundenes Projekt freigeben möchten, geben Sie die übergeordnete Containerdatei frei. Wenn Sie beispielsweise ein Skript an eine Google-Tabelle gebunden haben, können Sie eine Person zum Mitbearbeiter des Skripts machen, indem Sie sie zum Mitbearbeiter der Tabelle machen. Containergebundene Projekte übernehmen die Einstellungen für den Lese- und Bearbeitungszugriff ihrer Containerdatei.
Alle containergebundenen Skripts verwenden dieselbe Zugriffsliste für Inhaber, Lese- und Bearbeitungszugriff, die für die Containerdatei definiert ist. Der Containerinhaber übernimmt die Inhaberschaft eines neuen Skriptprojekts, unabhängig davon, wer es erstellt hat.
Zusammenarbeit und Projektressourcen
Ressourcen sind Entitäten, die mit Ihrem Projekt verknüpft sind, aber unabhängig von seinem Code existieren. In diesem Abschnitt wird erläutert, wie sich die Zusammenarbeit an einem Projekt auf seine Ressourcen auswirkt, insbesondere auf das Google Cloud-Projekt, Trigger, Bibliotheken und Nutzereigenschaften.
Zusammenarbeit und Google Cloud-Projekte
Jedes Apps Script-Projekt hat ein zugehöriges Google Cloud-Projekt. Google Cloud-Projekte haben eigene Inhaber, Mitbearbeiter und andere Rollen, die sich von den Nutzern unterscheiden können, die auf das Skriptprojekt zugreifen können.
Zusammenarbeit und Trigger
Wenn Sie an einem Projekt zusammenarbeiten, werden alle installierbaren Trigger, die Sie erstellen, nicht für die Personen freigegeben, die Zugriff auf Ihr Projekt haben. Wenn Sie eine einheitliche Triggerkonfiguration für alle Mitbearbeiter benötigen, verwenden Sie den Script-Dienst, um Trigger programmatisch zur Laufzeit zu erstellen. Weitere Informationen finden Sie unter Trigger programmatisch verwalten.
Da einfache Trigger aus Code erstellt werden, werden sie für Projektmitbearbeiter freigegeben.
Zusammenarbeit und Bibliotheken
Bibliotheken, die in Ihrem Projekt enthalten sind, sind für Projektmitbearbeiter verfügbar. Wenn sie jedoch nicht mindestens Lesezugriff auf eine enthaltene Bibliothek haben, können sie diese Bibliotheken nicht verwenden. In diesem Fall gibt das Skript einen Fehler aus. Weitere Informationen zu Bibliotheken finden Sie unter Bibliotheken verwalten.
Zusammenarbeit und Nutzereigenschaften
Nutzereigenschaften sind nur für den Nutzer verfügbar, der sie erstellt hat. Das bedeutet, dass Projektmitbearbeiter Ihre Nutzereigenschaften nicht sehen oder darauf zugreifen können und Sie ihre nicht sehen oder darauf zugreifen können. Verwenden Sie Skripteigenschaften , wenn Sie projektspezifische Eigenschaften für Mitbearbeiter freigeben möchten. Weitere Informationen finden Sie in der Anleitung zu Eigenschaften.