Współpraca z innymi deweloperami

Apps Script zawiera kilka funkcji, które pomagają Tobie i innym programistom tworzyć i obsługiwać skrypty, dodatki oraz aplikacje internetowe.

Podstawy współpracy

Aby współpracować nad projektem, Ty i Twoi współpracownicy musicie mieć uprawnienia do edycji pliku projektu Apps Script (i kontenera, jeśli jest to powiązany skrypt). Dzięki temu wszyscy członkowie Twojego zespołu będą mogli wyświetlić i zmodyfikować kod Apps Script. Edytorzy mogą też tworzyć nowe wersje kodu, publikować dodatki i wdrażać skrypty jako aplikacje internetowe lub pliki wykonywalne interfejsu Apps Script API.

Możesz pomóc swojemu zespołowi, planując z wyprzedzeniem sposób pracy nad edytowaniem, sprawdzaniem, obsługą wersji i (w stosownych przypadkach) wdrażaniem i publikowaniem projektu, dodatku lub aplikacji internetowej. Zwykle najprostsze projekty ułatwiają współpracę, ponieważ są tworzone bezpośrednio na Dysku Google i są zalecanym typem projektu do tworzenia dodatków i aplikacji internetowych.

Typowy problem występujący podczas współpracy występuje, gdy właściciel skryptu opuści zespół bez przeniesienia własności projektu na inną osobę w zespole. Z tego powodu nie możesz utrzymywać ani aktualizować projektu. Umieszczenie projektu skryptu na dysku współdzielonym zapobiega temu problemowi, ponieważ pliki na dysku współdzielonym nie mają określonych właścicieli.

Współpraca za pomocą narzędzia wiersza poleceń clasp

clasp umożliwia synchronizowanie projektów między script.google.com a lokalnym systemem plików. Pozwala to usprawnić i zautomatyzować automatyzację kodu, jeśli Ty i Twoi współpracownicy korzystacie z oprogramowania do zarządzania źródłami, takiego jak git.

Więcej informacji znajdziesz w przewodniku po interfejsie wiersza poleceń clasp.

Współpraca z dyskami współdzielonymi

Dyski współdzielone (znane wcześniej jako „Dyski zespołu”) zapewniają miejsce współdzielone na Dysku Google, gdzie grupy użytkowników Dysku mogą skuteczniej współpracować. Pliki umieszczone na dysku współdzielonym należą do całej grupy, a nie do poszczególnych użytkowników. Oznacza to, że gdy współpracownik opuści grupę, nie przejmuje własności pliku i kontroli nad nim.

Dyski współdzielone umożliwiają też przenoszenie plików między domenami. W przypadku dysku współdzielonego w jednej domenie użytkownicy z innej domeny mogą przenosić na niego pliki. Może to być bardzo cenne dla deweloperów Apps Script, ponieważ umożliwia zespołowi opracowywanie dodatków, aplikacji internetowych i innych kodów dla klientów z różnych domen.

Gdy korzystasz z dysków współdzielonych do współpracy nad projektami Apps Script, pamiętaj o tych kwestiach:

  1. Współpracownicy mający uprawnienia do edycji dysku współdzielonego mogą tworzyć i przenosić na nie nowe pliki. Jako edytujący skrypty mogą wyświetlać i edytować projekty skryptów, uruchamiać kod skryptów, tworzyć nowe wersje skryptów i publikować dodatki.
  2. Aby można było wdrażać skrypty jako aplikacje internetowe lub wykonywalne w przypadku interfejsu Apps Script API, konto tworzące wdrożenie musi należeć do tej samej domeny co dysk współdzielony, na którym znajduje się skrypt.
  3. Dyski współdzielone pozwalają udostępniać określone pliki znajdujące się na dysku innym osobom spoza grupy, a także edytować ich uprawnienia do edytowania i wyświetlania na tych plikach, tak jak w przypadku innych plików na Dysku. Jeśli jednak użytkownik należy do zespołu, do którego należy dysk współdzielony, nie możesz zmniejszyć jego uprawnień do poszczególnych plików. Jeśli na przykład użytkownik ma uprawnienia do edycji dysku współdzielonego, nie możesz zmienić tego ustawienia na dostęp tylko do wyświetlania dla konkretnego pliku na dysku współdzielonym.
  4. Współpracownicy mający pełny dostęp do dysku współdzielonego mogą, oprócz powyższych uprawnień, usuwać pliki i projekty Apps Script oraz przenosić pliki z dysku współdzielonego.
  5. Wszystkie skrypty powiązane z kontenerem korzystają z tych samych list dostępu do przeglądarki i edytora, które są zdefiniowane dla pliku kontenera. Jeśli na przykład masz uprawnienia do edycji arkusza Google, masz też uprawnienia do edycji powiązanego z nim kodu projektu Apps Script. Umieszczając taki plik kontenera na dysku współdzielonym, dajesz współpracownikom dysk współdzielony ten sam dostęp do kodu skryptu, co w przypadku samego kontenera.
  6. Gdy projekt skryptu znajduje się na dysku współdzielonym, może on mieć dostęp do jego projektu Cloud Platform (GCP). Więcej informacji znajdziesz w sekcji Projekty GCP i dyski współdzielone.
  7. Aplikacje internetowe wdrożone w jednej domenie przestaną działać, jeśli ich własność zmieni się na dysk współdzielony lub konto w innej domenie. Można to poprawić, przenosząc skrypt z powrotem do jego pierwotnej domeny.
  8. Podobnie projekty skryptów, które są wdrożone jako pliki wykonywalne interfejsu Apps Script API, przestaną działać po wywołaniu przez ten interfejs, jeśli zostaną przeniesione z dysku współdzielonego do innej domeny. Aby rozwiązać ten problem, przenieś skrypt z powrotem do pierwotnej domeny.

Współpraca z udostępnianiem projektu

Możesz też współpracować nad projektem, udostępniając go bezpośrednio wszystkim współpracownikom. Możesz bezpośrednio udostępniać projekty skryptu znajdujące się w standardowych folderach Dysku Google lub na dyskach współdzielonych. Jeśli korzystasz z tej metody, zalecamy skrupulatne zaplanowanie, kto jest właścicielem i utrzymywał skrypt.

Samodzielne projekty są wyświetlane na Dysku Google jako pliki i można je udostępniać jak każdy inny plik. Więcej informacji znajdziesz w artykule Udostępnianie plików i folderów.

Projekty powiązane z kontenerami nie są widoczne na Dysku Google. Aby udostępnić projekt powiązany z kontenerem, wystarczy udostępnić nadrzędny plik kontenera. Jeśli na przykład masz skrypt powiązany z plikiem Arkuszy Google, możesz przyznać komuś uprawnienia do jego edytowania. Ustawienia uprawnień do wyświetlania i edytowania pliku kontenera są dziedziczone przez wszystkie projekty w tym kontenerze.

Wszystkie skrypty powiązane z kontenerami mają tego samego właściciela, przeglądającego i listę edytujących zdefiniowane dla pliku kontenera. Właściciel kontenera przejmuje własność nowego projektu skryptu, niezależnie od tego, kto go utworzył.

Zasoby współpracy i projektu

Zasoby to encje powiązane z projektem, ale niezależnie od jego kodu. Ta sekcja wyjaśnia, jak współpraca nad projektem wpływa na jego zasoby, w szczególności na projekt, aktywatory, biblioteki i właściwości użytkownika Cloud Platform.

Współpraca i projekty Cloud Platform

Z każdym projektem Apps Script jest powiązany projekt Cloud Platform (GCP). Projekty GCP mają własny zestaw właścicieli, edytorów i innych ról, które mogą różnić się od zestawu użytkowników mających dostęp do projektu skryptu.

Jeśli Twój projekt skryptu ma zostać opublikowany jako dodatek, musi być używany standardowy projekt GCP. Podczas współpracy nad aplikacją korzystającą ze standardowego projektu GCP zalecamy skonfigurowanie właścicieli i ról GCP, aby zapewnić wszystkim współpracownikom odpowiednie poziomy dostępu. Pomaga to zapobiegać sytuacji, w których utracisz dostęp do ustawień Google Cloud w projekcie, ponieważ jego właściciele nie znajdują się już w Twojej organizacji. Jest to szczególnie ważne w przypadku dodatków.

Współpraca i aktywatory

Podczas współpracy nad projektem wszystkie utworzone przez Ciebie aktywatory w wersji nie będą udostępniane tym osobom, które mają dostęp do Twojego projektu. Jeśli chcesz mieć spójną konfigurację aktywatorów dla wszystkich współpracowników, możesz za pomocą usługi skryptu automatycznie tworzyć aktywatory w czasie działania. Więcej informacji znajdziesz w artykule Automatyzacja zarządzania aktywatorami.

Współpraca i biblioteki

Biblioteki uwzględnione w projekcie są dostępne dla współpracowników projektu. Jeśli jednak nie mają dostępu na poziomie biblioteki co najmniej do odczytu, nie mogą korzystać z tych bibliotek – w tym przypadku skrypt wyświetla błąd. Więcej informacji o bibliotekach znajdziesz w artykule Zarządzanie bibliotekami.

Współpraca i właściwości użytkownika

Właściwości użytkownika są unikalne dla użytkownika, który je utworzył. Oznacza to, że nie mogą oni zobaczyć Twoich właściwości użytkownika ani uzyskać do nich dostępu. Jeśli chcesz udostępnić współpracownikom właściwości konkretnego projektu, użyj właściwości skryptu. Więcej informacji znajdziesz w przewodniku po usługach.