Resumo
Esta aula ensina a escrever um documento entre vários autores sem perder trabalho nem confundir versões. Explica por que a troca de versões por e-mail fracassa e por que um código-fonte em texto puro permite comparar e unir alterações linha por linha; apresenta o Overleaf como editor compartilhado on-line, com o convite a um projeto, a edição simultânea, os comentários, o controle de alterações, o histórico com suas versões etiquetadas, a escolha do LuaLaTeX e o envio de um projeto local; ensina o fluxo mínimo do Git num projeto de LaTeX, com seu arquivo .gitignore, a escrita de uma frase por linha e a resolução de um conflito num arquivo .tex, com saídas reais de um repositório de teste; descreve a integração do Overleaf com o Git e sua sincronização com o GitHub; reúne as convenções que uma equipe deve combinar; e termina com o latexdiff, que produz um PDF com as alterações marcadas entre duas versões.
Objetivos de aprendizagem
- Explicar por que um código-fonte em texto puro permite comparar e unir o trabalho de vários autores, e por que um arquivo de processador de texto não o permite do mesmo modo.
- Compartilhar um projeto do Overleaf com a permissão adequada, comentar, revisar com controle de alterações e recuperar uma versão anterior a partir do histórico.
- Conduzir um projeto de LaTeX com o Git: iniciar o repositório, fazer commits, ler o histórico e as diferenças, e sincronizá-lo com um remoto.
- Escrever um
.gitignoreque exclua os arquivos auxiliares sem excluir o que o documento necessita. - Prever quando duas alterações simultâneas produzem um conflito, e resolvê-lo num arquivo
.tex, verificando depois que o documento compila e diz o que deve dizer. - Combinar em equipe um preâmbulo, uma base bibliográfica, uma divisão em arquivos e uma convenção de rótulos, e produzir com o latexdiff um PDF que mostre as alterações entre duas versões.
Por que é difícil escrever a várias mãos
A maneira mais comum de escrever em equipe é também a mais frágil: um autor envia o arquivo por e-mail, outro o corrige e o devolve com um nome novo, e ao cabo de algumas semanas a pasta contém relatorio-final.docx, relatorio-final-v2.docx e relatorio-final-revisado-ana.docx. Se dois autores trabalharam ao mesmo tempo sobre a mesma versão, alguém precisa transferir à mão as alterações de um para o arquivo do outro, e o que se esquece nessa transferência se perde sem que ninguém perceba. O processador de texto não ajuda a comparar, porque seu arquivo não é texto legível, e sim um pacote compactado que mistura o conteúdo com a formatação; suas ferramentas de comparação existem, mas não permitem unir automaticamente duas linhas de trabalho independentes.
Um código-fonte de LaTeX é outra coisa: é texto puro, que qualquer programa pode ler linha por linha. Disso decorrem duas operações que, com um processador de texto, não estão à mão. A primeira é a diferença (em inglês, diff): dadas duas versões de um arquivo, um programa diz exatamente quais linhas foram removidas e quais foram acrescentadas. A segunda é a mesclagem (em inglês, merge): dados dois conjuntos de alterações feitas sobre uma mesma versão, um programa os combina por si mesmo quando afetam lugares distintos do arquivo, e só pede a intervenção do autor quando ambos tocaram o mesmo lugar. Ora, para que essas operações sirvam é preciso, além disso, uma organização: um lugar comum onde esteja a versão vigente, e um registro de quem mudou o quê e quando. Esta aula apresenta as duas maneiras de consegui-la que o curso usa: o Overleaf, que resolve o problema no navegador, e o Git, que o resolve no computador de cada autor, com o Texmaker como editor.
Carregando o conteúdo…