#language pt == Tutorial - Examinar o histórico do repositório == ''(This page in English: [[TutorialHistory]])'' ''(Esta página é a parte 3 de 9 da série [[BrazilianPortugueseTutorial]]. A parte anterior é [[BrazilianPortugueseTutorialClone]], a próxima parte é [[BrazilianPortugueseTutorialFirstChange]])'' Neste ponto, nós já acompanhamos ../BrazilianPortugueseTutorialClone para fazer um clone de um repositório; nossa cópia local é chamada {{{my-hello}}}. Vamos examinar o histórico deste [[Repository|repositório]]. Para isso, usamos o comando {{{log}}} . Ele imprime um resumo de cada evento que ocorreu no repositório, do mais recente para o mais antigo. {{{ $ hg log changeset: 1:82e55d328c8c tag: tip user: mpm@selenic.com date: Fri Aug 26 01:21:28 2005 -0700 summary: Create a makefile changeset: 0:0a04b987be5a user: mpm@selenic.com date: Fri Aug 26 01:20:50 2005 -0700 summary: Create a standard "hello, world" program }}} Estas linhas de saída são descritas a seguir. * Cada parágrafo descreve um ''[[ChangeSet|changeset]]'' (conjunto de mudanças) específico. Um ''changeset'' é uma mudança de um ou mais arquivos, agrupada em uma unidade lógica. * Para o Mercurial, os conceitos ''[[ChangeSet|changeset]]'' e ''[[Revision|revision]]'' são intercambiáveis, de modo que em português podemos usar simplesmente "revisão". * Em nosso caso acima, podemos ver que o histórico do repositório consiste de duas revisões. * O primeiro número antes do dois-pontos é um [[RevisionNumber|número de revisão]]; é uma maneira local compacta de identificar a revisão. Ele é válido apenas para este repositório. * O número hexadecimal após o dois-pontos é um [[ChangeSetID|changeset ID]] (identificador de revisão) abreviado; ele identifica a revisão, e é o mesmo em todos os repositórios que contenham esta revisão. Sempre que você discutir uma revisão revisão com outra pessoa, use o ID de revisão, e não o número de revisão. * {{{tag}}} é uma [[Tag|etiqueta]], um nome simbólico arbitrário para uma revisão. * Você pode atribuir uma ou mais etiquetas a uma revisão qualquer. Na prática, não serão muitas as revisões que terão uma etiqueta associada a elas, de modo que a linha {{{tag}}} nem sempre estará presente. * A etiqueta especial denominada {{{tip}}} (ponta) sempre identifica a [[Tip|tip]], que é a revisão mais recente no repositório. Se você criar outra revisão (o que faremos em breve), a etiqueta {{{tip}}} será removida da revisão mais recente e adicionada à nova revisão. * {{{user}}} (usuário) identifica a pessoa que criou a revisão. Este é um texto livre; ele tipicamente contém um endereço eletrônico, e algumas vezes também inclui o nome da pessoa. * {{{date}}} (data) descreve quando a revisão foi criada. Essas datas são impressas no fuso horário do criador da revisão. * {{{summary}}} (resumo) dá a primeira linha da descrição da revisão. Isto foi colocado pelo criador da revisão no momento em que a criou, para auxiliar a si mesmo e aos outros a entender o propósito dessa revisão (veja também [[ChangeSetComments]]). * {{{parent}}} identifica as revisões [[Parent|pais]], no caso de haver mais de uma (isso acontece quando você faz uma [[Merge|mesclagem]] de mudanças de vários repositórios). * Na maior parte das vezes há apenas um pai, que é a revisão imediatamente mais antiga. Esse é o caso em nosso exemplo acima. Podemos obter informações de histórico mais detalhadas pedindo pela saída prolixa com a opção {{{-v}}} , ou a opção global {{{--debug}}} para todos os detalhes: {{{ $ hg log -v changeset: 1:82e55d328c8c tag: tip user: mpm@selenic.com date: Fri Aug 26 01:21:28 2005 -0700 files: Makefile description: Create a makefile (...) $ hg log --debug changeset: 1:82e55d328c8ca4ee16520036c0aaace03a5beb65 tag: tip parent: 0:0a04b987be5ae354b710cefeba0e2d9de7ad41a9 parent: -1:0000000000000000000000000000000000000000 manifest: 1:0c7c1d435e6703e03ac6634a7c32da3a082d1600 user: mpm@selenic.com date: Fri Aug 26 01:21:28 2005 -0700 files+: Makefile extra: branch=default description: Create a makefile (...) }}} A saída prolixa contém alguns campos mais do que a saída padrão: * {{{files}}} (arquivos) lista os arquivos modificados nesta revisão. * {{{description}}} (descrição) contém a descrição completa em múltiplas linhas da revisão, ao invés de apenas a primeira linha. * No nosso caso, as descrições contêm apenas uma linha, então não há muita diferença. A saída --debug adiciona os seguintes campos à saída prolixa (veja também [[DebuggingFeatures]]): * {{{changeset}}} agora fornece o ID de revisão sem abreviação. * dois campos {{{parent}}} que fornecem o ID de revisão de ambos os pais desta revisão, onde {{{-1:0000000000000000000000000000000000000000}}} se refere a um pai não-existente. * {{{manifest}}} fornece o [[Manifest|manifest]] ID para esta revisão. * {{{file+}}} lista um arquivo adicionado nesta revisão. * {{{file-}}} lista um arquivo removido nesta revisão. O comando {{{log}}} possui uma opção {{{-r}}} para exibir revisões específicas: {{{ $ hg log -r1 changeset: 1:82e55d328c8c tag: tip user: mpm@selenic.com date: Fri Aug 26 01:21:28 2005 -0700 summary: Create a makefile }}} A opção {{{-r}}} na verdade suporta uma sintaxe bastante flexível para selecionar seqüências de revisões. No entanto, devido ao número limitado de revisões em nosso repositório de exemplo, nós não podemos fornecer uma boa demonstração aqui. Por favor consulte a [[http://www.selenic.com/mercurial/hg.1.html#log|página de manual]] para mais informações. O comando {{{log}}} também possui a opção {{{-p}}} que mostra os ''patches'' (arquivos texto que descrevem diferenças) associados às revisões: {{{ $ hg log -r1 -p changeset: 1:82e55d328c8c tag: tip user: mpm@selenic.com date: Fri Aug 26 01:21:28 2005 -0700 summary: Create a makefile diff -r 0a04b987be5a -r 82e55d328c8c Makefile --- /dev/null Fri Aug 26 01:20:50 2005 -0700 +++ b/Makefile Fri Aug 26 01:21:28 2005 -0700 @@ -0,0 +1,1 @@ +all: hello }}} Nós também podemos usar o comando {{{tip}}} para exibir informações da ''tip'', ou seja, da última revisão. O comando {{{tip}}} pode ser considerado um atalho para {{{log -r tip}}}. {{{ $ hg tip changeset: 1:82e55d328c8c tag: tip user: mpm@selenic.com date: Fri Aug 26 01:21:28 2005 -0700 summary: Create a makefile $ hg log -r tip changeset: 1:82e55d328c8c tag: tip user: mpm@selenic.com date: Fri Aug 26 01:21:28 2005 -0700 summary: Create a makefile }}} Agora que nós temos uma noção do que já aconteceu, vamos fazer algumas mudanças! Em frente, com [[../BrazilianPortugueseTutorialFirstChange]]! ---- CategoryBrazilianPortuguese