Google Apps Script bietet Funktionen, mit denen Teams gemeinsam Scripts, Google Workspace-Add-ons und Webanwendungen erstellen und verwalten können. In diesem Leitfaden geht es um die aktive Zusammenarbeit mehrerer Entwickler an einem Projekt. Wenn Sie Code für andere freigeben möchten, damit diese ihn in ihre eigenen Projekte einbinden können, lesen Sie stattdessen den Leitfaden Bibliotheken.
Grundlagen der Zusammenarbeit
Wenn Sie mit anderen an einem Projekt zusammenarbeiten möchten, müssen Sie und Ihre Mitarbeiter alle Bearbeitungszugriff auf die Apps Script-Projektdatei (und den zugehörigen Container, falls es sich um ein gebundenes Script handelt) haben. So können alle Mitglieder Ihres Teams den Apps Script-Code sehen und Änderungen daran vornehmen. Editoren können auch neue Codeversionen erstellen, Add-ons veröffentlichen und Scripts als Web-Apps oder als ausführbare Dateien für die Apps Script API bereitstellen.
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 zu bearbeiten, 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. Das kann dazu führen, dass Sie das Projekt nicht mehr warten oder aktualisieren können. Wenn Sie Ihr Scriptprojekt in einer geteilten Ablage speichern, wird dieses Problem vermieden, da Dateien in einer geteilten Ablage keinen bestimmten Eigentümer haben.
Geben Sie die Inhaberschaft von Skriptprojekten immer frei. Wenn ein Mitarbeiter Ihre Organisation verlässt und sein Konto entfernt wird, geht der Zugriff auf Skripts ohne andere Inhaber verloren. Geben Sie das Script in Drive frei oder verschieben Sie es in eine geteilte Ablage.
Zusammenarbeiten mit dem clasp-Befehlszeilentool
Mit clasp können Sie Projekte zwischen script.google.com und Ihrem lokalen Dateisystem synchronisieren. So können Sie die Codeentwicklung optimieren und automatisieren, wenn Sie und Ihre Mitarbeiter Software zur Quellcodeverwaltung wie git verwenden.
Weitere Informationen finden Sie im Leitfaden zur Befehlszeilenschnittstelle mit clasp.
Zusammenarbeit mit geteilten Ablagen
Freigegebene Ablagen sind nur für Kunden mit Google Workspace Business und Google Workspace Enterprise 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 abgelegt werden, gehören der Gruppe als Ganzes und nicht einzelnen Personen. Wenn ein Mitarbeiter die Gruppe verlässt, behält er also nicht das Eigentum und die Kontrolle über die Dateien.
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, Web-Apps oder anderen Code für Kunden in verschiedenen Domains entwickeln.
Wenn Sie geteilte Ablagen für die Zusammenarbeit an Apps Script-Projekten verwenden, gilt Folgendes:
- Mitbearbeiter mit Bearbeitungszugriff auf eine geteilte Ablage können neue Dateien in der geteilten Ablage erstellen oder dorthin verschieben. Als Script-Editoren können sie Script-Projekte ansehen und bearbeiten, Script-Code ausführen, neue Script-Versionen erstellen und Add-ons veröffentlichen.
- Wenn Sie Scripts als Web-Apps oder ausführbare Dateien für die Apps Script API bereitstellen möchten, muss das Konto, mit dem die Bereitstellung erstellt wird, zur selben Domain gehören wie das gemeinsam genutzte Laufwerk, auf dem sich das Script befindet.
- In geteilten Ablagen können Sie bestimmte Dateien für Personen außerhalb der Gruppe freigeben und deren Bearbeitungs- und Leseberechtigungen für diese Dateien wie bei jeder anderen Drive-Datei aktualisieren. Wenn ein Nutzer jedoch Teil des Teams ist, zu dem die geteilte Ablage gehört, können Sie seinen Zugriff auf bestimmte Dateien nicht einschränken. Wenn ein Nutzer beispielsweise Bearbeitungszugriff auf eine geteilte Ablage hat, können Sie diesen Zugriff nicht für eine bestimmte Datei in der geteilten Ablage in Lesezugriff ändern.
- Mitwirkende 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 Zugriffslisten für Betrachter und Mitbearbeiter, die für die Containerdatei definiert sind. Wenn Sie beispielsweise Bearbeitungszugriff auf ein Google-Tabellenblatt haben, haben Sie auch Bearbeitungszugriff auf den zugehörigen Apps Script-Projektcode. Wenn Sie eine solche Containerdatei in einer geteilten Ablage platzieren, 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.
- Web-Apps, die in einer Domain bereitgestellt werden, funktionieren nicht mehr, wenn die Inhaberschaft zu einem freigegebenen Laufwerk oder Konto in einer anderen Domain wechselt. Korrigieren Sie dies, indem Sie das Script zurück in die ursprüngliche Domain verschieben.
- Ebenso funktionieren Skriptprojekte, die als ausführbare Apps Script-API bereitgestellt werden, nicht mehr, wenn sie über eine freigegebene Ablage von einer Domain in eine andere verschoben werden und dann über die API aufgerufen werden. Korrigieren Sie dies, indem Sie das Script zurück in die ursprüngliche Domain verschieben.
Zusammenarbeit mit einem freigegebenen Ordner
Seien Sie vorsichtig, wenn Sie ein Apps Script-Projekt in einem freigegebenen Ordner erstellen oder dorthin verschieben. Achten Sie darauf, dass der Ordner nur für Personen freigegeben ist, denen Sie vertrauen.
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, erben diese Personen denselben Zugriff auf das Apps Script-Projekt, den sie für den Ordner haben. Beispiel:
- Wenn jemand Bearbeitungszugriff auf den Ordner hat, kann er das Apps Script-Projekt bearbeiten oder löschen und das Script ausführen.
- Wenn jemand nur Lesezugriff auf den Ordner hat, kann er das Apps Script-Projekt ansehen und das Script ausführen.
Mit der Projektfreigabe zusammenarbeiten
Sie können an einem Projekt zusammenarbeiten, indem Sie es direkt für alle Mitarbeiter freigeben. Scriptprojekte, die sich in normalen Drive-Ordnern oder in geteilten Ablagen befinden, können direkt freigegeben werden. Planen Sie sorgfältig, wer das Skript im Laufe der Zeit besitzt und verwaltet.
Eigenständige Projekte werden in Drive als Datei angezeigt und können wie jede andere Datei freigegeben werden. 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 haben, das an eine Google-Tabelle gebunden ist, können Sie eine Person zum Bearbeiter des Skripts machen, indem Sie sie zum Bearbeiter der Tabelle machen. Containergebundene Projekte übernehmen die Einstellungen für den Betrachter- und Bearbeiterzugriff ihrer Containerdatei.
Alle containergebundenen Skripts verwenden dieselbe Liste mit Zugriffsberechtigungen für Inhaber, Betrachter und Mitbearbeiter, 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 vom 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 Nutzerattribute.
Zusammenarbeit und Google Cloud-Projekte
Jedes Apps Script-Projekt ist mit einem Google Cloud-Projekt verknüpft. Google Cloud-Projekte haben eigene Inhaber, Bearbeiter und andere Rollen, die sich von den Nutzern unterscheiden können, die auf das Scriptprojekt zugreifen können.
Zusammenarbeit und Trigger
Wenn Sie an einem Projekt zusammenarbeiten, werden alle installierbaren Trigger, die Sie erstellen, nicht für Nutzer freigegeben, die Zugriff auf Ihr Projekt haben. Wenn Sie für alle Mitbearbeiter eine einheitliche Triggereinrichtung benötigen, verwenden Sie den Script-Dienst, um Trigger programmatisch zur Laufzeit zu erstellen. Weitere Informationen finden Sie unter Trigger programmatisch verwalten.
Mitbearbeiter
Zusammenarbeit und Bibliotheken
Bibliotheken, die in Ihrem Projekt enthalten sind, sind für Projektmitarbeiter verfügbar. Wenn sie jedoch nicht mindestens Lesezugriff auf eine enthaltene Bibliothek haben, können sie diese Bibliotheken nicht verwenden. In diesem Fall wird im Skript ein Fehler ausgegeben. 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 Projektmitarbeiter Ihre Nutzerattribute nicht sehen oder darauf zugreifen können und Sie nicht auf ihre. Verwenden Sie Skripteigenschaften, wenn Sie projektspezifische Eigenschaften für Mitarbeiter freigeben möchten. Weitere Informationen finden Sie im Leitfaden zu Properties.