Colabore com outros desenvolvedores

O Apps Script oferece alguns recursos que ajudam você e outros desenvolvedores a criar e manter scripts, complementos e apps da Web juntos.

Noções básicas de colaboração

Para colaborar em um projeto, você e os colaboradores precisam ter acesso de editor ao arquivo de projeto do Apps Script e ao contêiner dele, se for um script vinculado. Isso permite que todos na sua equipe vejam e façam alterações no código do Apps Script. Os editores também podem criar novas versões de código, publicar complementos e implantar scripts como apps da Web ou executáveis para a API Apps Script.

Para ajudar sua equipe, planeje com antecedência como lidar com a edição, a revisão, o controle de versões e, se aplicável, a implantação e a publicação do projeto, complemento ou app da Web. Geralmente, os projetos independentes são mais fáceis de colaborar, porque aparecem diretamente no Google Drive e são o tipo de projeto recomendado para o desenvolvimento de complementos e apps da Web.

Um problema comum na colaboração ocorre quando um proprietário de projeto de script deixa a equipe sem transferir a propriedade do projeto para outra pessoa da equipe. Isso pode impedir que você mantenha ou atualize o projeto. Colocar o projeto de script em um drive compartilhado evita esse problema, já que os arquivos nesse drive não têm proprietários específicos.

Colabore com a ferramenta de linha de comando clasp

clasp permite sincronizar projetos entre script.google.com e o sistema de arquivos local. Isso permite simplificar e automatizar o desenvolvimento do código se você e seus colaboradores estiverem usando um software de gerenciamento de controle de origem, como git.

Para mais detalhes, consulte o guia Interface de linha de comando usando clasp.

Colaborar usando drives compartilhados

Os drives compartilhados (antes conhecidos como "Drives de equipe") oferecem um espaço compartilhado em um Google Drive onde grupos de usuários do Drive podem colaborar com mais eficiência. Os arquivos colocados em um drive compartilhado pertencem ao grupo como um todo, e não a indivíduos. Isso significa que, quando um colaborador sai do grupo, ele não assume a propriedade e o controle do arquivo.

Os drives compartilhados também permitem mover arquivos entre domínios. Um drive compartilhado em um domínio pode ter colaboradores de outro domínio que possam mover arquivos desse domínio para o drive compartilhado. Isso pode ser muito valioso para desenvolvedores do Apps Script, porque permite que uma equipe desenvolva complementos, apps da Web ou outros códigos para clientes em domínios diferentes.

Ao usar drives compartilhados para colaborar em projetos do Apps Script, não se esqueça do seguinte:

  1. Os colaboradores com acesso de editor a um drive compartilhado podem criar ou mover novos arquivos para ele. Como editores de script, eles podem ver e editar projetos de script, executar códigos de script, criar novas versões de scripts e publicar complementos.
  2. Para implantar scripts como apps da Web ou executáveis para a API Apps Script, a conta que cria a implantação precisa pertencer ao mesmo domínio que o drive compartilhado em que o script reside.
  3. Com os drives compartilhados, é possível compartilhar arquivos específicos com pessoas fora do grupo e atualizar as permissões de edição e visualização nesses arquivos como qualquer outro arquivo do Drive. No entanto, se um usuário fizer parte da equipe a que o drive compartilhado pertence, não será possível reduzir o acesso dele a arquivos específicos. Por exemplo, se um usuário tiver acesso para editar um drive compartilhado, não vai ser possível alterar o acesso para somente visualização de um arquivo específico no drive.
  4. Os colaboradores com acesso total a um drive compartilhado também podem excluir arquivos e projetos do Apps Script e mover arquivos para fora dele.
  5. Todos os scripts vinculados a contêineres usam as mesmas listas de acesso de leitor e editor definidas para o arquivo do contêiner. Por exemplo, se você tem acesso para editar uma Planilha Google, também tem acesso para editar qualquer código do projeto do Apps Script anexado a ela. Colocar esse arquivo em um drive compartilhado concede aos colaboradores do drive compartilhado o mesmo acesso ao código do script que eles têm no próprio contêiner.
  6. Quando um projeto de script reside em um drive compartilhado, o acesso ao projeto do Cloud Platform (GCP) pode ser restrito. Consulte a seção do guia Projetos do GCP e drives compartilhados para mais detalhes.
  7. Os apps da Web implantados em um domínio deixam de funcionar se a propriedade deles mudar para um drive compartilhado ou uma conta em um domínio diferente. Isso pode ser corrigido movendo o script de volta para o domínio original.
  8. Da mesma forma, os projetos de script que são implantados como um executável da API Apps Script param de funcionar quando chamados pela API se são movidos por um drive compartilhado de um domínio para outro. Isso pode ser corrigido movendo o script de volta para o domínio original.

Colaborar em uma pasta compartilhada

Se não for possível colaborar com um drive compartilhado, use uma pasta compartilhada. Quando você cria ou move um projeto do Apps Script para uma pasta do Google Drive que outras pessoas podem acessar, ele herda o mesmo acesso ao projeto do Apps Script que elas têm na pasta. Exemplo:

  • Quem tiver acesso para editar a pasta poderá editar ou excluir o projeto do Apps Script e executar o script.
  • Se uma pessoa só tiver acesso de leitura à pasta, ela vai poder acessar o projeto do Apps Script e executar o script.

Colaborar com o compartilhamento de projetos

É possível colaborar em um projeto compartilhando-o diretamente com todos os colaboradores. Você pode compartilhar projetos de script diretamente em pastas compartilhadas do Google Drive ou em drives compartilhados. Se você usar esse método, recomendamos planejar cuidadosamente quem é o proprietário e quem mantém o script ao longo do tempo.

Os projetos independentes aparecem no seu Google Drive como um arquivo, e você pode compartilhá-los como qualquer outro arquivo. Para mais informações, consulte Como compartilhar arquivos e pastas.

Projetos vinculados a contêineres não ficam visíveis no seu Google Drive. Para compartilhar um projeto vinculado a um contêiner, compartilhe o arquivo de contêiner pai. Por exemplo, se você tem um script vinculado a uma planilha do Planilhas Google, pode transformar alguém em editor do script. Os projetos vinculados a contêineres herdam as configurações de acesso de leitor e editor do arquivo de contêiner.

Todos os scripts vinculados ao contêiner usam a mesma lista de acesso de proprietário, leitor e editor definida para o arquivo do contêiner. O proprietário do contêiner assume a propriedade de um novo projeto de script, independentemente de quem o criou.

Colaboração e recursos do projeto

Recursos são entidades associadas ao projeto, mas existem independente do código. Esta seção explica como a colaboração em um projeto afeta os recursos, em particular: o projeto do Cloud Platform, acionadores, bibliotecas e propriedades do usuário.

Colaboração e projetos do Google Cloud

Todo projeto do Apps Script tem um projeto do Google Cloud associado. Os projetos do Google Cloud têm o próprio conjunto de proprietários, editores e outros papéis, que podem ser diferentes daqueles que podem acessar o projeto de script.

Se o projeto de script for publicado como um complemento, ele precisará usar um projeto padrão do Google Cloud. Ao colaborar em um aplicativo que usa um projeto padrão do Google Cloud, recomendamos configurar os proprietários e os papéis do Google Cloud para garantir que todos os colaboradores tenham os níveis adequados de acesso. Isso ajuda a evitar situações em que você perde o acesso às configurações do Cloud do projeto porque os proprietários não estão mais na organização. Isso é especialmente importante para complementos.

Colaboração e gatilhos

Ao colaborar em um projeto, os gatilhos instaláveis que você criar não serão compartilhados com as pessoas que têm acesso ao projeto. Se você precisa de uma configuração de gatilho consistente para todos os colaboradores, use o serviço de script para criar gatilhos de forma programática no ambiente de execução. Para mais informações, consulte Como gerenciar acionadores de maneira programática.

Colaboração e bibliotecas

As bibliotecas incluídas no seu projeto ficam disponíveis para os colaboradores. No entanto, se eles não tiverem pelo menos acesso em nível de leitura a uma biblioteca incluída, não poderão usar essas bibliotecas. Nesse caso, o script vai gerar um erro. Para mais informações sobre bibliotecas, consulte Como gerenciar bibliotecas.

Colaboração e propriedades do usuário

As propriedades do usuário são exclusivas do usuário que as criou. Isso significa que os colaboradores do projeto não podem ver ou acessar suas propriedades do usuário e você não pode ver ou acessar as deles. Use as propriedades de script se quiser compartilhar propriedades específicas do projeto com os colaboradores. Para mais informações, consulte o Guia de propriedades.