O Apps Script oferece alguns recursos que ajudam você e outros desenvolvedores a criar e manter scripts, complementos e apps da Web em conjunto.
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, 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 executáveis para a API Apps Script.
Você pode ajudar sua equipe planejando com antecedência como lidar com a edição, revisão, versão e (se aplicável) a implantação e publicação do seu projeto, complemento ou app da Web. Os projetos independentes geralmente são os mais fáceis de colaborar, porque aparecem diretamente no Google Drive e são o tipo de projeto recomendado para desenvolvimento de complementos e apps da Web.
Um problema comum na colaboração ocorre quando um proprietário de projeto de script sai da equipe sem transferir a propriedade do projeto para outra pessoa na equipe. Isso pode impedir que você mantenha ou atualize o 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
O clasp
permite sincronizar projetos entre script.google.com e seu 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
git
.
Para mais detalhes, consulte o guia Interface de linha de comando
usando clasp
.
Colaborar com drives compartilhados
Os drives compartilhados (anteriormente conhecidos como "Drives de equipe") oferecem um espaço compartilhado no Google Drive em que grupos de usuários do Drive podem colaborar de maneira mais eficiente. 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 os desenvolvedores do Apps Script, porque oferece um meio para uma equipe desenvolver complementos, apps da Web ou outros códigos para clientes em diferentes domínios.
Ao usar drives compartilhados para colaborar em projetos do Apps Script, considere o seguinte:
- 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.
- 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 está.
- Com os drives compartilhados, você pode compartilhar arquivos específicos do drive com pessoas fora do grupo e atualizar as permissões de edição e visualização nesses arquivos, como em qualquer outro arquivo do Drive. No entanto, se um usuário faz parte da equipe à qual o drive compartilhado pertence, não é possível reduzir o acesso dele a arquivos específicos. Por exemplo, se um usuário tiver acesso de edição a um drive compartilhado, não será possível mudar isso para acesso somente leitura para um arquivo específico no drive compartilhado.
- 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.
- Todos os scripts vinculados ao contêiner usam as mesmas listas de acesso de leitores e editores definidas para o arquivo do 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 contêiner.
- Quando um projeto de script está 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.
- Os apps da Web implantados em um domínio deixam de funcionar se a propriedade mudar para um drive ou conta compartilhado em um domínio diferente. Isso pode ser corrigido movendo o script de volta ao domínio original.
- Da mesma forma, os projetos de script que são implantados como um executável da API Apps Script deixam de funcionar quando são chamados pela API se forem movidos por unidade compartilhada de um domínio para outro. Isso pode ser corrigido movendo o script de volta para o domínio original.
Colaborar com 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 de edição à pasta, poderá editar ou excluir o projeto do Apps Script e executar o script.
- Se alguém tiver apenas acesso de leitura à pasta, ele poderá visualizar o projeto do Apps Script e executar o script.
Colaborar com o compartilhamento de projetos
Você pode colaborar em um projeto compartilhando-o diretamente com todos os colaboradores. É possível compartilhar projetos de script que residem em pastas normais 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 podem ser compartilhados como qualquer outro. Para mais informações, consulte Como compartilhar arquivos e pastas.
Os projetos vinculados a contêineres não aparecem no Google Drive. Para compartilhar um projeto vinculado a um contêiner, compartilhe o arquivo principal do contêiner. Por exemplo, se você tem um script vinculado a uma planilha do Planilhas Google, é possível tornar alguém editor do script. Os projetos vinculados a contêineres herdam as configurações de acesso de leitor e editor do arquivo do 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.
Recursos de colaboração e projeto
Os recursos são entidades associadas ao seu projeto, mas existem independentemente 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.
Projetos de colaboração e do Google Cloud
Cada projeto do Apps Script tem um projeto do Google Cloud associado. Os projetos do Google Cloud têm um conjunto próprio de proprietários, editores e outras funções, que podem ser diferentes do conjunto de usuários que podem acessar o projeto do 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 que você configure os proprietários e 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 de acionador consistente para todos os colaboradores, use o serviço de script para criar acionadores de forma programática no momento da execução. Para mais informações, consulte Como gerenciar acionadores de maneira programática.
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, eles não poderão usar essas bibliotecas. Nesse caso, o script gera 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 para o usuário que as criou. Isso significa que os colaboradores do projeto não podem ver nem acessar suas propriedades de usuário, e você não pode ver nem acessar as deles. Use as propriedades do script se quiser compartilhar propriedades específicas do projeto com os colaboradores. Para mais informações, consulte o guia de propriedades.