Collaborazione con altri sviluppatori

Apps Script fornisce alcune funzionalità che consentono a te e agli altri sviluppatori di creare e gestire insieme script, componenti aggiuntivi e app web.

Nozioni di base sulla collaborazione

Per collaborare a un progetto, tu e i tuoi collaboratori dovete avere accesso in modifica al file del progetto Apps Script (e al relativo container, se si tratta di uno script associato). In questo modo, tutti i membri del team possono visualizzare e modificare il codice di Apps Script. Gli editor possono anche creare nuove versioni del codice, pubblicare componenti aggiuntivi ed eseguire il deployment degli script come app web o come eseguibili per l'API Apps Script.

Puoi aiutare il tuo team pianificando in anticipo la gestione della modifica, della revisione, del controllo delle versioni e (se applicabile) della distribuzione e della pubblicazione del progetto, del componente aggiuntivo o dell'app web. Di solito, i progetti autonomi sono i più semplici da collaborare, perché vengono visualizzati direttamente in Google Drive e sono il tipo di progetto consigliato per lo sviluppo di componenti aggiuntivi e app web.

Un problema comune della collaborazione si verifica quando il proprietario del progetto script lascia il team senza trasferire la proprietà del progetto a un altro membro del team. Questo può impedirti di gestire o aggiornare il progetto. Inserire il tuo progetto di script in un Drive condiviso evita questo problema, poiché i file che si trovano su un Drive condiviso non hanno proprietari specifici.

Collaborazione con lo strumento a riga di comando clasp

clasp consente di sincronizzare i progetti tra script.google.com e il tuo file system locale. Questo consente di semplificare e automatizzare lo sviluppo del codice se tu e i tuoi collaboratori utilizzate un software di gestione del controllo del codice sorgente come git.

Per ulteriori dettagli, consulta la guida dell'interfaccia a riga di comando utilizzando clasp.

collaborare con Drive condivisi

I Drive condivisi (noti in precedenza come "Drive del team") offrono uno spazio condiviso su Google Drive dove i gruppi di utenti di Drive possono collaborare in modo più efficace. I file inseriti in un Drive condiviso sono di proprietà del gruppo, non di singoli utenti. Questo significa che quando un collaboratore abbandona il gruppo, non ne assume la proprietà e il controllo.

I Drive condivisi consentono anche di spostare file tra domini: un Drive condiviso in un dominio può avere collaboratori di un altro dominio in grado di spostare file da quel dominio al Drive condiviso. Questo può essere molto prezioso per gli sviluppatori di Apps Script, poiché fornisce al team un mezzo per sviluppare componenti aggiuntivi, app web o altro codice per clienti in domini diversi.

Quando utilizzi i Drive condivisi per collaborare a progetti Apps Script, tieni presente quanto segue:

  1. I collaboratori con accesso in modifica a un Drive condiviso possono creare o spostare nuovi file al suo interno. Gli editor di script possono visualizzare e modificare i progetti, eseguire codice di script, creare nuove versioni di script e pubblicare componenti aggiuntivi.
  2. Per eseguire il deployment degli script come app web o eseguibili per l'API Apps Script, l'account che crea il deployment deve appartenere allo stesso dominio del Drive condiviso in cui si trova lo script.
  3. I Drive condivisi consentono di condividere file specifici all'interno del Drive condiviso con utenti esterni al gruppo e di aggiornare le autorizzazioni di modifica e visualizzazione di file come qualsiasi altro file di Drive. Tuttavia, se un utente fa parte del team a cui appartiene il Drive condiviso, non puoi ridurre il suo accesso per file specifici. Ad esempio, se un utente ha accesso in modifica a un Drive condiviso, non puoi modificare questa impostazione in accesso di sola visualizzazione per un file specifico all'interno di quel Drive condiviso.
  4. I collaboratori con accesso completo a un Drive condiviso, oltre a quanto sopra, possono eliminare file e progetti di Apps Script e spostare file fuori dal Drive condiviso.
  5. Tutti gli script associati ai container utilizzano gli stessi elenchi di accesso di visualizzatori e editor definiti per il file container. Ad esempio, se hai accesso in modifica a un foglio Google, hai accesso in modifica anche a qualsiasi codice del progetto Apps Script associato. Inserendo un file contenitore di questo tipo in un Drive condiviso, concedi ai collaboratori del Drive condiviso lo stesso accesso al codice dello script utilizzato per il container stesso.
  6. Quando un progetto di script si trova in un Drive condiviso, l'accesso al progetto Cloud Platform (GCP) potrebbe essere limitato. Per maggiori dettagli, consulta la sezione Progetti GCP e Drive condivisi.
  7. Le app web di cui è stato eseguito il deployment in un dominio non funzionano più se la loro proprietà passa a un Drive o a un account condivisi in un dominio diverso. Per risolvere il problema, puoi spostare nuovamente lo script nel suo dominio originale.
  8. Analogamente, i progetti di script di cui viene eseguito il deployment come eseguibile dell'API Apps Script smettono di funzionare quando vengono chiamati dall'API se spostati tramite un Drive condiviso da un dominio all'altro. Per risolvere il problema, riporta lo script nel suo dominio originale.

Collaborazione con la condivisione progetti

Puoi anche collaborare a un progetto condividendolo direttamente con tutti i collaboratori. Puoi condividere direttamente i progetti di script che si trovano nelle cartelle normali di Google Drive o nei Drive condivisi. Se utilizzi questo metodo, ti consigliamo di pianificare con attenzione chi possiede e gestisce lo script nel corso del tempo.

I progetti autonomi vengono visualizzati in Google Drive come file e puoi condividerli come qualsiasi altro file. Per saperne di più, vedi Condivisione di file e cartelle.

I progetti associati ai container non sono visibili da Google Drive. Per condividere un progetto associato al container, devi semplicemente condividere il file del container padre. Ad esempio, se hai uno script associato a un foglio Google, puoi assegnare a un editor il ruolo di editor del foglio Google. Le impostazioni di accesso al visualizzatore e all'editor del file del container vengono ereditate da tutti i progetti all'interno del container.

Tutti gli script associati a un container utilizzano lo stesso elenco di accesso per proprietario, visualizzatore e editor definito per il file container. Il proprietario del container assume la proprietà di un nuovo progetto di script indipendentemente da chi lo ha creato.

Risorse per la collaborazione e il progetto

Le risorse sono entità associate al progetto ma esistenti in modo indipendente dal relativo codice. Questa sezione spiega in che modo la collaborazione su un progetto influisce sulle sue risorse, in particolare: il progetto Cloud Platform, gli attivatori, le librerie e le proprietà utente.

Collaborazione e progetti Cloud Platform

A ogni progetto Apps Script è associato un progetto Cloud Platform (GCP). I progetti GCP hanno il proprio insieme di proprietari, editor e altri ruoli, che possono essere diversi dall'insieme di utenti che possono accedere al progetto di script.

Se il tuo progetto di script deve essere pubblicato come componente aggiuntivo, deve utilizzare un progetto GCP standard. Quando collabori a un'applicazione che utilizza un progetto GCP standard, ti consigliamo di configurare i proprietari e i ruoli di GCP per assicurarti che tutti i tuoi collaboratori abbiano i livelli di accesso appropriati. In questo modo eviterai situazioni in cui perderai l'accesso alle impostazioni Cloud del progetto perché i proprietari non appartengono più alla tua organizzazione. Questo è particolarmente importante per i componenti aggiuntivi.

Collaborazione e trigger

Quando collabori a un progetto, tutti gli attivabili installabili che crei non vengono condivisi con chi ha accesso al progetto. Se hai bisogno di un trigger coerente per tutti i collaboratori, puoi utilizzare il servizio script per creare i trigger in modo programmatico, al momento dell'esecuzione. Per ulteriori informazioni, consulta la pagina Gestire i trigger in modo programmatico.

Collaborazione e biblioteche

Le librerie incluse nel progetto sono disponibili per i collaboratori. Tuttavia, se non dispongono almeno del livello di accesso in lettura a una libreria inclusa, non potranno utilizzare quelle raccolte: in questo caso lo script genera un errore. Per ulteriori informazioni sulle librerie, consulta la sezione Gestire le librerie.

Collaborazione e proprietà utente

Le proprietà utente sono univoche per l'utente che le ha create. Questo significa che i collaboratori del progetto non possono vedere o accedere alle tue proprietà utente, ma tu non puoi vedere o accedere alle loro. Utilizza le proprietà script se vuoi condividere proprietà specifiche del progetto con i collaboratori. Per scoprire di più, consulta la Guida alle proprietà.