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 seus colaboradores precisam ter acesso de editor ao arquivo do projeto do Apps Script e ao contêiner dele, se for um script vinculado. Isso permite que todos na 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 como executáveis para a API Apps Script.

É possível ajudar sua equipe planejando com antecedência como você lida com edição, revisão, controle de versões e, se aplicável, a implantação e publicação do projeto, complemento ou app da Web. Os projetos autônomos costumam ser 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 do projeto de script deixa a equipe sem transferir a propriedade do projeto para outra pessoa. Isso pode impedir a manutenção ou atualização do projeto. Colocar seu projeto de script em um drive compartilhado evita esse problema, já que os arquivos nesse drive compartilhado não têm proprietários específicos.

Colaborar com a ferramenta de linha de comando clasp

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

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

Colaborar com drives compartilhados

Os drives compartilhados (antes conhecidos como "Drives de equipe") fornecem um espaço compartilhado no Google Drive onde os grupos de usuários podem colaborar com mais eficiência. Os arquivos armazenados 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 o controle nem a propriedade dos arquivos com ele.

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 podem 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, lembre-se do seguinte:

  1. Os colaboradores com acesso de editor a um drive compartilhado podem criar ou mover novos arquivos para esse drive. Como editores de scripts, eles podem visualizar e editar projetos de scripts, executar códigos de scripts, criar novas versões de scripts e publicar complementos.
  2. Para implantar scripts como apps da Web ou executáveis na API Apps Script, a conta que cria a implantação precisa pertencer ao mesmo domínio do drive compartilhado em que o script está.
  3. Com os drives compartilhados, você compartilha arquivos específicos com outras pessoas fora do grupo e atualiza as permissões de edição e visualização desses arquivos como em 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 a um drive compartilhado, não será possível mudá-lo para acesso somente leitura de um arquivo específico no drive compartilhado.
  4. Os colaboradores com acesso total a um drive compartilhado também podem excluir arquivos e projetos do Apps Script e remover arquivos do drive compartilhado.
  5. Todos os scripts vinculados a contêineres usam as mesmas listas de acesso de visualizador e editor definidas para o arquivo de contêiner. Por exemplo, se você tiver acesso para editar uma planilha Google, também terá acesso para editar qualquer código de projeto do Apps Script anexado a ela. Colocar esse arquivo de contêiner em um drive compartilhado concede aos colaboradores do drive compartilhado o mesmo acesso ao código do script que eles têm para o próprio contêiner.
  6. Quando um projeto de script está em um drive compartilhado, o acesso ao projeto do Cloud Platform (GCP) pode ser restrito. Para mais detalhes, consulte a seção do guia Projetos do GCP e drives compartilhados.
  7. Os apps da Web implantados em um domínio deixam de funcionar se a propriedade deles muda para um drive compartilhado ou uma conta em um domínio diferente. Isso pode ser corrigido ao mover o script de volta para o domínio original.
  8. Da mesma forma, os projetos de script implantados como executáveis da Apps Script API deixam de funcionar quando chamados pela API se forem movidos por um drive compartilhado de um domínio para outro. Para corrigir isso, mova o script de volta para o domínio original.

Colaborar usando 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, eles herdam o mesmo acesso ao projeto do Apps Script que têm para a pasta. Exemplo:

  • Se alguém tiver acesso para editar a pasta, essa pessoa poderá editar ou excluir o projeto do Apps Script e executar o script.
  • Se uma pessoa só tiver acesso de leitura à pasta, ela poderá ver o projeto do Apps Script e executar o script.

Colabore usando o compartilhamento de projetos

Para colaborar em um projeto, compartilhe-o diretamente com todos os colaboradores. Você pode compartilhar diretamente projetos de script que residem em pastas comuns do Google Drive ou em drives compartilhados. Se você usar esse método, é recomendável planejar cuidadosamente quem é o proprietário e quem mantém o script ao longo do tempo.

Os projetos independentes aparecem no 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 do contêiner pai. Por exemplo, se você tem um script vinculado a uma planilha do Planilhas Google, é possível tornar alguém um editor do script tornando-o um editor da planilha. 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 a 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 que existem independentemente do código. Nesta seção, explicamos como a colaboração em um projeto afeta os recursos dele, especialmente o projeto do Cloud Platform, os acionadores, as bibliotecas e as propriedades do usuário.

Colaboração e projetos do Google Cloud

Cada 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 do conjunto de usuários que podem acessar o projeto de script.

Se você quiser publicar o projeto de script como um complemento, use 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 de acesso adequados. 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 sua organização. Isso é especialmente importante para complementos.

Colaboração e gatilhos

Quando você colabora em um projeto, os acionadores instaláveis que você criar não serão compartilhados com aqueles que têm acesso ao projeto. Se você precisar ter uma configuração consistente de acionador para todos os colaboradores, use o serviço de script para criar acionadores de maneira programática no ambiente de execução. Para mais informações, consulte Como gerenciar acionadores programaticamente.

Colaboração e bibliotecas

As bibliotecas incluídas no projeto ficam disponíveis para os colaboradores. No entanto, se eles não tiverem pelo menos acesso 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.