{"id":35419,"date":"2019-10-31T22:04:14","date_gmt":"2019-10-31T19:04:14","guid":{"rendered":"https:\/\/prohoster.info\/blog\/ispolzujte-git-pri-dokumentirovanii\/"},"modified":"2019-10-31T22:04:14","modified_gmt":"2019-10-31T19:04:14","slug":"ispolzujte-git-pri-dokumentirovanii","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/ispolzujte-git-pri-dokumentirovanii","title":{"rendered":"Use GIT ao documentar","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>\u00c0s vezes, n\u00e3o s\u00f3 a documenta\u00e7\u00e3o em si, mas tamb\u00e9m o processo de trabalho com ela pode ser cr\u00edtico. Por exemplo, em projetos, uma grande parte do trabalho est\u00e1 relacionada \u00e0 prepara\u00e7\u00e3o da documenta\u00e7\u00e3o, e um processo inadequado pode levar a erros e at\u00e9 \u00e0 perda de informa\u00e7\u00f5es, resultando, portanto, em perda de tempo e lucro. Mas mesmo que este tema n\u00e3o seja central em seu trabalho e esteja na periferia, um processo adequado pode melhorar a qualidade do documento e economizar seu tempo.<\/p>\n<p>A abordagem apresentada aqui, com <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/nihole\/md2docx\">um exemplo de implementa\u00e7\u00e3o espec\u00edfica<\/a><\/noindex>, tem uma barreira de entrada baixa. Tecnicamente, voc\u00ea pode come\u00e7ar a trabalhar de forma diferente j\u00e1 amanh\u00e3. <br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>Formula\u00e7\u00e3o do problema<\/h3>\n<p>\nVoc\u00ea precisa criar algum documento ou conjunto de documentos. Pode ser documenta\u00e7\u00e3o de projeto ou a documenta\u00e7\u00e3o da sua rede, ou algo mais simples, como descrever processos na empresa ou no seu departamento. Em resumo, trata-se de qualquer documento ou conjunto de documentos com texto, imagens, tabelas... Vamos complicar a tarefa dizendo que <\/p>\n<ol>\n<li>esse trabalho envolve um esfor\u00e7o conjunto, a colabora\u00e7\u00e3o de um grupo ou v\u00e1rios grupos de funcion\u00e1rios<\/li>\n<li>no final, voc\u00ea deseja ter um documento em um formato espec\u00edfico, com atributos de estilo corporativo, criado a partir de um determinado modelo. Para ser mais claro, vamos considerar que \u00e9 um documento MS Word (.docx)<\/li>\n<\/ol>\n<p>\nH\u00e1 10 anos, a abordagem seria inequ\u00edvoca: ter\u00edamos criado um ou mais documentos MS Word e de alguma forma organizado o trabalho para modificar. <\/p>\n<p>E essa abordagem ainda \u00e9 v\u00e1lida. Ela \u00e9 utilizada, inclusive, por grandes integradores na cria\u00e7\u00e3o de documenta\u00e7\u00e3o de projeto. Mas \u00e9 intuitivamente claro que, se voc\u00ea trabalha intensa e continuamente em um documento com muitas revis\u00f5es e discuss\u00f5es, essa abordagem n\u00e3o \u00e9 muito conveniente.<\/p>\n<blockquote><p><b>Exemplo<\/b><\/p>\n<p>Eu percebi agudamente esse problema ao trabalhar em um grande integrador. O processo de modifica\u00e7\u00e3o da documenta\u00e7\u00e3o de projeto era o seguinte:<\/p>\n<ol>\n<li>engenheiro baixa a \u00faltima vers\u00e3o do documento MS Word (.docx)<\/li>\n<li>altera o t\u00edtulo<\/li>\n<li>faz modifica\u00e7\u00f5es no modo de controle de altera\u00e7\u00f5es<\/li>\n<li>envia o documento com as altera\u00e7\u00f5es para o arquiteto<\/li>\n<li>tamb\u00e9m envia uma lista de todas as corre\u00e7\u00f5es com coment\u00e1rios<\/li>\n<li>o arquiteto analisa as modifica\u00e7\u00f5es<\/li>\n<li>se tudo estiver certo, copia essas altera\u00e7\u00f5es para o arquivo com a \u00faltima vers\u00e3o, altera a vers\u00e3o e publica no recurso compartilhado<\/li>\n<li>Se houver coment\u00e1rios, uma discuss\u00e3o ser\u00e1 iniciada (por e-mail ou reuni\u00f5es)<\/li>\n<li>Consegue-se um consenso<\/li>\n<li>Em seguida, os itens 3 a 9<\/li>\n<\/ol>\n<p>\nEnquanto o trabalho n\u00e3o foi intenso, isso funcionou de alguma forma. Mas, em determinado momento, esse processo se tornou o gargalo do projeto inteiro e levou a problemas. A quest\u00e3o \u00e9 que tudo piora assim que as altera\u00e7\u00f5es s\u00e3o feitas com frequ\u00eancia e simultaneamente por v\u00e1rias equipes.<\/p>\n<p>Assim, quando passamos para a fase de testes preliminares, come\u00e7aram a surgir pequenos problemas e, embora fossem trivialidades, era necess\u00e1rio mudar a documenta\u00e7\u00e3o com frequ\u00eancia - quatro equipes diferentes, diariamente, praticamente ao mesmo tempo, em discuss\u00f5es. Todas essas mudan\u00e7as passavam por um engenheiro \u2014 arquiteto. O arquivo com o design do projeto era enorme e, como consequ\u00eancia, o arquiteto ficou sobrecarregado com o trabalho rotineiro envolvido em uma grande quantidade de c\u00f3pias e edi\u00e7\u00f5es, cometia muitos erros, o que exigia revis\u00f5es constantes, reenvios e, no geral, isso estava perto do caos. <\/p>\n<p>Neste caso, esse m\u00e9todo, o m\u00e9todo de trabalhar com o documento MS Word, funcionou com grande dificuldade e gerou problemas.<\/p><\/blockquote>\n<p><\/p>\n<h3>Git, Markdown<\/h3>\n<p>\nAo enfrentar o problema descrito no exemplo acima, comecei a investigar essa quest\u00e3o.<br \/>\nPercebi que o uso de <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/Markdown\">Markdown<\/a><\/noindex> em conjunto com <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/Git\">Git<\/a><\/noindex> na cria\u00e7\u00e3o de documentos est\u00e1 se tornando cada vez mais popular.<\/p>\n<p>Git \u00e9 uma ferramenta para desenvolvimento. Mas por que n\u00e3o us\u00e1-la para o processo de documenta\u00e7\u00e3o? Neste caso, a quest\u00e3o do trabalho colaborativo \u00e9 resolvida. Mas para aproveitar totalmente as capacidades do Git, precisamos de um formato de documento textual, precisamos encontrar outra ferramenta, diferente do MS Word, e o Markdown se encaixa muito bem para esses fins. <\/p>\n<p>Markdown \u00e9 uma linguagem simples de marca\u00e7\u00e3o de texto. Ela \u00e9 projetada para criar textos bem formatados em arquivos comuns no formato TXT. Se criarmos nossos documentos em Markdown, a combina\u00e7\u00e3o Markdown - Git parecer\u00e1 natural.<\/p>\n<p>E tudo estaria bem, e nesse ponto poder\u00edamos colocar um ponto final, se n\u00e3o fosse pela nossa segunda condi\u00e7\u00e3o: \"precisamos de um documento em um formato espec\u00edfico, com atributos de estilo corporativo, criado de acordo com um determinado modelo\" (e concordamos desde o in\u00edcio que, para maior clareza, isso seria MS Word). Ou seja, se decidimos usar Markdown, precisamos de alguma forma converter este arquivo em .docx no formato exigido.<\/p>\n<p>Existem programas de convers\u00e3o entre diferentes formatos, como por exemplo, <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/Pandoc\">Pandoc<\/a><\/noindex>.<br \/>\nVoc\u00ea pode converter um arquivo Markdown para o formato .docx com este programa.<br \/>\nMas ainda assim, \u00e9 importante entender que, em primeiro lugar, nem tudo que existe em Markdown ser\u00e1 convertido para o MS Word e, em segundo lugar, o MS Word \u00e9 um verdadeiro pa\u00eds em compara\u00e7\u00e3o com a compacta cidade que \u00e9 o Markdown. H\u00e1 uma enorme quantidade de funcionalidades em Word que de nenhuma forma est\u00e3o dispon\u00edveis no Markdown. N\u00e3o se pode simplesmente pegar e converter seu formato Markdown para o desejado formato MS Word com certas chaves do Pandoc. Portanto, geralmente, ap\u00f3s a convers\u00e3o, \u00e9 necess\u00e1rio \"aprimorar\" o documento .docx obtido manualmente, o que, novamente, pode ser dispendioso em termos de tempo e levar a erros.<\/p>\n<p>Se pud\u00e9ssemos escrever um script que automaticamente \"completasse\" o que o Pandoc n\u00e3o conseguiu fazer \u2014 isso seria a solu\u00e7\u00e3o ideal.<\/p>\n<p>Devido \u00e0 n\u00e3o equival\u00eancia das funcionalidades do MS Word e do Markdown em geral, acredito que resolver essa tarefa seja imposs\u00edvel, mas seria vi\u00e1vel fazer isso em situa\u00e7\u00f5es espec\u00edficas, de acordo com exig\u00eancias concretas? Minha experi\u00eancia mostrou que sim, \u00e9 poss\u00edvel e provavelmente isso \u00e9 vi\u00e1vel para muitas, ou talvez at\u00e9 para a maioria das situa\u00e7\u00f5es. <\/p>\n<h3>Solu\u00e7\u00e3o de uma tarefa espec\u00edfica<\/h3>\n<p>\nAssim, no meu caso, ap\u00f3s converter o arquivo com a ajuda do Pandoc, precisei fazer manualmente um processamento adicional nos arquivos, nomeadamente<\/p>\n<ul>\n<li>adicionar em Word campos com numera\u00e7\u00e3o autom\u00e1tica de t\u00edtulos (caption) para tabelas e imagens<\/li>\n<li>mudar o estilo para tabelas <\/li>\n<\/ul>\n<p>\nN\u00e3o consegui encontrar como fazer isso com as ferramentas padr\u00e3o (Pandoc) ou conhecidas. Portanto, apliquei um script em python com <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/mhammond\/pywin32\">pywin32<\/a><\/noindex> pacote. Como resultado, obtive uma automa\u00e7\u00e3o total. Agora posso converter meu arquivo Markdown para o formato necess\u00e1rio de um documento MS Word com um \u00fanico comando. <\/p>\n<p>Veja os detalhes <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/nihole\/md2docx\">aqui<\/a><\/noindex>.<\/p>\n<blockquote><p><b>Observa\u00e7\u00e3o<\/b><\/p>\n<p>Neste exemplo, estou, claro, convertendo um arquivo Markdown abstrato, mas a mesma abordagem foi aplicada a um documento 'real', e no final eu obtive praticamente o mesmo documento do MS Word que antes consegu\u00edamos com formata\u00e7\u00e3o manual. <\/p><\/blockquote>\n<p>\nEm geral, com pywin32, obtemos praticamente controle total sobre o documento do MS Word, o que nos permite alter\u00e1-lo e format\u00e1-lo de acordo com os padr\u00f5es corporativos. Claro, esses mesmos objetivos poderiam ser alcan\u00e7ados usando outras ferramentas, como macros VBA, mas eu achei mais conveniente usar Python.<\/p>\n<p>A f\u00f3rmula resumida dessa abordagem \u00e9:<\/p>\n<pre><code class=\"plaintext\">Markdown + Git -- (algo) --&gt; MS Word<\/code><\/pre>\n<p>\nN\u00e3o importa muito o que \u00e9 'algo'. No meu caso, era o Pandoc e Python com pywin32. Voc\u00ea pode ter outras prefer\u00eancias, mas o importante \u00e9 que isso \u00e9 poss\u00edvel. E essa \u00e9 a mensagem principal deste artigo.<\/p>\n<p>Resumindo, a ideia \u00e9 que, com essa abordagem, voc\u00ea trabalha apenas com o arquivo Markdown e usa o Git para organizar a colabora\u00e7\u00e3o e o controle de vers\u00f5es, criando automaticamente o arquivo no formato desejado (por exemplo, MS Word) apenas quando necess\u00e1rio (por exemplo, para fornecer documenta\u00e7\u00e3o ao cliente). <\/p>\n<h3>Processo<\/h3>\n<p>\nAcho que, para muitos, a f\u00f3rmula acima \u00e9 suficiente para entender como agora pode ser organizado o processo de trabalho com a documenta\u00e7\u00e3o. Mas ainda costumo me orientar para engenheiros de redes, por isso vou mostrar, em linhas gerais, como agora pode ser o processo de trabalho e como isso difere da abordagem de edi\u00e7\u00e3o de arquivos do MS Word.<\/p>\n<p>Para ser mais claro, escolhemos o GitHub como plataforma para trabalhar com o Git. Ent\u00e3o voc\u00ea deve criar um reposit\u00f3rio e colocar o arquivo ou arquivos Markdown com os quais planeja trabalhar na branch master. <\/p>\n<p>Vamos considerar um processo simples baseado no 'github flow'. Sua descri\u00e7\u00e3o pode ser encontrada tanto na internet quanto em <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/346066\/\">habra<\/a><\/noindex>.<\/p>\n<p>Suponha que quatro pessoas est\u00e3o trabalhando na documenta\u00e7\u00e3o e voc\u00ea \u00e9 uma delas. Ent\u00e3o s\u00e3o criadas quatro branches adicionais, por exemplo, com os nomes dessas pessoas. Cada um trabalha localmente em sua branch e faz altera\u00e7\u00f5es com todos os comandos necess\u00e1rios do <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/joshnh\/Git-Commands\">git.<\/a><\/noindex>. <\/p>\n<p>Ao concluir uma parte espec\u00edfica do trabalho, voc\u00ea cria um pull request, iniciando assim a discuss\u00e3o sobre suas mudan\u00e7as. Durante o processo de discuss\u00e3o, pode-se descobrir que voc\u00ea precisa adicionar ou modificar algo mais. Nesse caso, voc\u00ea faz as altera\u00e7\u00f5es necess\u00e1rias e cria um pull request adicional. Por fim, suas mudan\u00e7as s\u00e3o aceitas e mescladas (merge) com a branch master (ou rejeitadas).<\/p>\n<p>Claro, essa \u00e9 uma descri\u00e7\u00e3o bastante geral. Sugiro que para criar um processo detalhado, voc\u00ea converse com seus desenvolvedores ou encontre pessoas conhecedoras. Mas quero ressaltar que a barreira de entrada para o Git \u00e9 bem baixa. Isso n\u00e3o significa que o protocolo seja simples, mas voc\u00ea pode come\u00e7ar de forma simples. Se voc\u00ea n\u00e3o sabe nada, penso que, gastando algumas horas ou talvez dias estudando e instalando, voc\u00ea poder\u00e1 come\u00e7ar a us\u00e1-lo.<\/p>\n<p>Qual \u00e9 a vantagem desse approach em compara\u00e7\u00e3o, por exemplo, ao processo descrito no exemplo acima?<\/p>\n<p>Na verdade, os processos s\u00e3o bastante semelhantes, voc\u00ea apenas substituiu<\/p>\n<p>c\u00f3pia de arquivo -&gt; cria\u00e7\u00e3o de branch<br \/>\nc\u00f3pia de texto no arquivo final -&gt; mesclagem<br \/>\nc\u00f3pia das \u00faltimas altera\u00e7\u00f5es para o seu reposit\u00f3rio -&gt; git pull\/fetch<br \/>\ndiscuss\u00e3o por meio de mensagens -&gt; pull requests<br \/>\nmodo de acompanhamento -&gt; git diff<br \/>\n\u00faltima vers\u00e3o aprovada -&gt; branch master<br \/>\nbackup (c\u00f3pia no servidor remoto) -&gt; git push<br \/>\n\u2026<\/p>\n<p>Assim, voc\u00ea automatizou tudo o que j\u00e1 precisava fazer, mas manualmente.<\/p>\n<p>Em um n\u00edvel mais alto, isso permite que voc\u00ea <\/p>\n<ul>\n<li>crie um processo claro, simples e control\u00e1vel para as altera\u00e7\u00f5es da documenta\u00e7\u00e3o<\/li>\n<li>j\u00e1 que o documento final (no nosso exemplo, o MS Word) \u00e9 criado automaticamente, isso reduz a probabilidade de erros relacionados \u00e0 formata\u00e7\u00e3o.<\/li>\n<\/ul>\n<p><\/p>\n<blockquote><p><b>Observa\u00e7\u00e3o<\/b><\/p>\n<p>Dado o que foi dito acima, penso ser \u00f3bvio que, mesmo que voc\u00ea trabalhe sozinho na documenta\u00e7\u00e3o, o uso do Git pode facilitar consideravelmente seu trabalho.<\/p><\/blockquote>\n<p>\nTudo isso melhora a qualidade da documenta\u00e7\u00e3o e reduz o tempo necess\u00e1rio para cri\u00e1-la. E um pequeno b\u00f4nus \u2014 voc\u00ea vai aprender Git, o que ajudar\u00e1 na automa\u00e7\u00e3o da sua rede \ud83d\ude42<\/p>\n<h3>Como migrar para o novo processo?<\/h3>\n<p>\nNo in\u00edcio do artigo, mencionei que voc\u00ea pode come\u00e7ar a trabalhar de forma diferente j\u00e1 amanh\u00e3. Como direcionar seu trabalho para esse novo fluxo?<\/p>\n<p>Aqui est\u00e1 a sequ\u00eancia de passos que voc\u00ea provavelmente precisar\u00e1 seguir:<\/p>\n<ul>\n<li>se seu documento for muito extenso, divida-o em partes.<\/li>\n<li>converta cada parte para Markdown (usando o Pandoc, por exemplo)<\/li>\n<li>instale um dos editores de Markdown (eu uso <noindex><a rel=\"nofollow\" href=\"https:\/\/typora.io\">Typora)<\/a><\/noindex>)<\/li>\n<li>provavelmente voc\u00ea precisar\u00e1 ajustar a formata\u00e7\u00e3o dos documentos Markdown criados<\/li>\n<li>comece a aplicar o processo descrito no cap\u00edtulo anterior<\/li>\n<li>simultaneamente comece a modificar o script de convers\u00e3o para sua tarefa (ou crie algo pr\u00f3prio) <\/li>\n<\/ul>\n<p>\nVoc\u00ea n\u00e3o precisa esperar at\u00e9 que crie e depure perfeitamente o mecanismo de convers\u00e3o Markdown -&gt; o formato de documento desejado. A quest\u00e3o \u00e9 que, mesmo que voc\u00ea n\u00e3o consiga automatizar rapidamente todo o processo de convers\u00e3o dos seus arquivos Markdown, ainda assim poder\u00e1 faz\u00ea-lo de alguma maneira com o Pandoc e, em seguida, finaliz\u00e1-lo manualmente. Normalmente, voc\u00ea n\u00e3o precisa fazer isso com frequ\u00eancia, apenas no final de certas etapas, e esse trabalho manual, embora inconveniente, \u00e9 aceit\u00e1vel na fase de depura\u00e7\u00e3o e n\u00e3o deve 'atrapalhar' muito o processo. <\/p>\n<p>Todo o resto (Markdown, Git, Pandoc, Typora) j\u00e1 est\u00e1 pronto e n\u00e3o requer esfor\u00e7os ou tempo especiais para come\u00e7ar a trabalhar com eles.<br \/>\n<br \/>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/456410\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0418\u043d\u043e\u0433\u0434\u0430 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0430\u043c\u0430 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f, \u043d\u043e \u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u0434 \u043d\u0435\u0439 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043a\u0440\u0438\u0442\u0438\u0447\u043d\u044b\u043c. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 \u043b\u044c\u0432\u0438\u043d\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u044b \u0441\u0432\u044f\u0437\u0430\u043d\u0430 \u0438\u043c\u0435\u043d\u043d\u043e \u0441 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u043e\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438, \u0438 \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u043e\u0448\u0438\u0431\u043a\u0430\u043c \u0438 \u0434\u0430\u0436\u0435 \u043a \u043f\u043e\u0442\u0435\u0440\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438, \u0430, \u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e, \u0438 \u043a \u043f\u043e\u0442\u0435\u0440\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0438 \u0432\u044b\u0433\u043e\u0434\u044b. \u041d\u043e \u0434\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u044d\u0442\u0430 \u0442\u0435\u043c\u0430 \u0438 \u043d\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u044c\u043d\u043e\u0439 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-35419","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0418\u043d\u043e\u0433\u0434\u0430 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0430\u043c\u0430 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f, \u043d\u043e \u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u0434 \u043d\u0435\u0439 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043a\u0440\u0438\u0442\u0438\u0447\u043d\u044b\u043c.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/ispolzujte-git-pri-dokumentirovanii\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"pt_PT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 GIT \u043f\u0440\u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0418\u043d\u043e\u0433\u0434\u0430 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0430\u043c\u0430 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f, \u043d\u043e \u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u0434 \u043d\u0435\u0439 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043a\u0440\u0438\u0442\u0438\u0447\u043d\u044b\u043c.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/ispolzujte-git-pri-dokumentirovanii\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:04:14+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:04:14+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Use GIT ao documentar | ProHoster","description":"\u00c0s vezes, n\u00e3o apenas a documenta\u00e7\u00e3o em si, mas tamb\u00e9m o processo de trabalho nela pode ser cr\u00edtico.","canonical_url":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/ispolzujte-git-pri-dokumentirovanii","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pt_PT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 GIT \u043f\u0440\u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 | ProHoster","og:description":"\u0418\u043d\u043e\u0433\u0434\u0430 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0430\u043c\u0430 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f, \u043d\u043e \u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u0434 \u043d\u0435\u0439 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043a\u0440\u0438\u0442\u0438\u0447\u043d\u044b\u043c.","og:url":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/ispolzujte-git-pri-dokumentirovanii","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:04:14+00:00","article:modified_time":"2019-10-31T19:04:14+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"35419","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 23:10:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:03:21","updated":"2026-01-21 23:10:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/35419","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/comments?post=35419"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/35419\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media?parent=35419"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/categories?post=35419"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/tags?post=35419"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}