Manuals

Obtendo Informações de Estado

Enquanto você estiver trabalhando na sua cópia de trabalho você frequentemente precisa saber quais arquivos foram alterados/adicionados/removidos ou renomeados, ou ainda quais arquivos foram alterados por outros.

Sobreposição dos Ícones

Figura 4.11. Explorer mostra os ícones sobrepostos

Explorer mostra os ícones sobrepostos


Agora que você obteve uma cópia de trabalho do repositório Subversion você pode ver seus arquivos no windows explorer com ícones modificados. Esta é uma das razões para que o TortoiseSVN seja tão popular. O TortoiseSVN adiciona um ícone de revestimento sobre o ícone de cada arquivo. Dependendo do status do arquivo no Subversion o revestimento é diferente.

Uma cópia de trabalho recém obtida possui uma camada contendo uma marca verde. Isto significa que o estado é normal.

Assim que você começar a editar um arquivo, o estado muda para modificado e a camada de revestimento então muda para um ponto de exclamação vermelho. Dessa maneira você pode facilmente ver quais arquivos foram alterados desde que você atualizou sua cópia de trabalho e que precisam ser submetidos.

Se durante uma atualização ocorrer um conflito então o ícone muda para um ponto de exclamação amarelo.

Se você marcou a propriedade svn:needs-lock em um arquivo, o Subversion faz com que aquele arquivo se torne somente-leitura até que você obtenha uma trava naquele arquivo. Tais arquivos tem este revestimento para indicar que você precisa obter uma trava antes que você possa editar aquele arquivo.

Se você mantém uma trava em um arquivo, e o estado do Subversion é normal, o revestimento do ícone lembra você de que você deve liberar a trava se não estiver usando-o para permitir que outros possam submeter suas mudanças para quele arquivo.

Este ícone mostra a você que alguns arquivos ou pastas dentro da pasta atual foram agendados para serem deletados do controle de versionamento ou um arquivo dentro do controle de versionamento está faltando em uma pasta.

O sinal de mais significa que um arquivo ou pasta foi agendado para ser addicionado ao controle de versões.

O sinal de barra lhe diz que um arquivo ou pasta é ignorado do controle de versões. Esse revestimento é opcional.

Este ícone mostra arquivos e pastas que não estão sob o controle de versionamento, mas não foram ignorados. Este revestimento é opcional.

De fato, você pode descobrir que nem todos estes ícones são usados em seu sistema. Isto é porque o número de camadas permitidas pelo Windows é bem limitado e se você também estiver usando uma versão antiga do TortoiseCVS, então não haverá espaço suficiente. O TortoiseSVN tenta ser um Good Citizen (TM) - Bom Cidadão e limita seu uso de camadas para dar outros aplicativos uma chance também.

Agora que existem vários clientes Tortoise (TortoiseCVS, TortoiseHg, ...) a limitação do ícone torna-se um problema real. Para contornar isso, o projecto TortoiseSVN introduziu um conjunto de ícones comuns e partilhados, carregados como uma DLL, que podem ser usados por todos os clientes Tortoise. Verifique com o seu provedor de cliente para ver se isso já foi integrado :-)

Para uma descrição de como as camadas de ícones correspondem ao estado do Subversion e outros detalhes técnicos, leia “Sobreposição dos Ícones”.

Situação Detalhada

Figura 4.12. Página de propriedade do explorador, aba do Subversion

Página de propriedade do explorador, aba do Subversion


Algumas vezes você quer ter informações mais detalhadas sobre um arquivo/diretório do que a sobreposição de ícones. Você pode obter toda a informação que Subversion provê na janela de propriedades no explorer. Apenas selecione o arquivo ou diretório e selecione Menu do Windowspropriedades no menu de contexto (nota: esta é a entrada de menu de propriedades do explorer, não o submenu do TortoiseSVN!). No caixa de propriedades da janela, o TortoiseSVN adicionou uma nova página de propriedades para arquivos/pastas sobre o controle do Subersion, onde você pode ver todas as informações relevantes sobre os arquivos/diretórios selecionados.

Estado Local e Remoto

Figura 4.13. Procurar por Modificações

Procurar por Modificações


É frequentemente muito útil saber quais arquivos você alterou e também quais arquivos foram alterados e submetidos por outros. É aí que o comando TortoiseSVNVerificar por Modificações... se torna útil. Esta janela lhe mostrará cada arquivo que foi alterado de qualquer maneira dentro da sua cópia de tabalho, assim como quaisquer arquivos não-versionados que você possa possuir.

Se você clicar no botão Verificar Repositório então você também pode olhar as mudanças no repositório. Dessa maneira você pode checar antes de uma atualização se pode haver um possível conflito. Você também pode atualizar arquivos selecionados do repositório sem atualizar toda a pasta. Por padrão, o botão Verificar Repositório somente busca o estado remoto com a profundidade de obtenção da sua cópia de trabalho. Se você deseja ver todos os arquivos e pastas no repositório, mesmo aquelas que você não obteve, então você deve manter pressionada a tecla Shift quando clicar no botão Verificar Repositório.

A janela usa codificação de cores para demarcar o estado.

Azul

Itens modificados localmente.

if unchanged files are inside a directory that's been moved, the status will show a + sign in the status column, and it will be colored in blue as well.

Roxo

Itens adicionados. Itens que foram adicionados com histórico tem um sinal + na coluna de Estado de Texto, e uma janela mostra de onde o item foi copiado.

Vermelho escuro

Itens excluídos ou perdidos.

Verde

Itens modificados localmente e no repositório. As mudanças serão juntadas ao atualizar. Isto pode produzir conflitos ao atualizar.

Vermelho vivo

Itens modificados localmente e apagados no repositório, ou modificados no repositório e apagados localmente. Isto irá produzir conflitos durante a atualização.

Preto

Itens não modificados ou não controlados.

Este é o esquema padrão de cores, mas você pode personalizar as cores usando a janela de configurações. Acesse “Configurações de Cores do TortoiseSVN” para mais informações.

Ícones de sobreposição são usados para indicar também outros estados. A captura de ecrã abaixo mostra todas as sobreposições possíveis que poderão ser mostradas se necessário.

São mostradas sobreposições para os seguintes estados:

  • Nível de checkout vazia, siginfica apenas o item.

  • Nivel de checkout ficheiros, significa só o próprio item e todos os ficheiros sem pastas filho.

  • Nivel de checkout imediatos, significa só próprio item, todos os ficheiros e pastas filho, mas sem os filhos das pastas filho.

  • Itens aninhados, i.e., cópias de trabalho dentro da cópia de trabalho.

  • Itens externos, i.e., todos os itens que são adicionados via a propriedade svn:externals.

  • Itens que são restaurados após uma submissão. Consulta “Enviar somente partes dos arquivos” para detalhes.

  • Itens que têm modificações de propriedade, mas apenas na propriedade svn:mergeinfo. Se qualquer outra propriedade estiver modificada, não será usada a sobreposição.

Itens que foram trocados para um caminho diferente no repositório são também sinalizados com um marcador (s). Podes ter trocado algo enquanto trabalhavas num ramo e te esqueceste de trocar de novo para o trunk. Isto é o teu sinal de aviso! O menu de contexto permite-te trocar de volta para o caminho normal mas uma vez.

Do menu de contexto da janela você pode ver um diff de mudanças. Marque as mudanças localis que você fez usando Menu de ContextoComparar com Base. Marque as mudanças no repositório feitas por outros usando Menu de ContextoMostrar Diferenças como Diff Unificado.

Você também pode reverter as mudanças em arquivos individuais. Se você apagou um arquivo acidentalmente, ele aparecerá como Faltando e você pode usar Reverter para recuperá-lo.

Arquivos não-versionados e ignorados podem ser enviados para a lixeira daqui usando Menu de ContextoApagar. Se você deseja apagar arquivos permanentemente (ignorando a lixeira) matenha pressionada a tecla Shift enquanto cliclar em Apagar.

Se tu quiseres examinar um ficheiro em detalhe, podes arrastá-lo daqui para outro aplicativo, como um editor de texto ou IDE, ou podes salvar uma cópia simplesmente arrastando-o para uma pasta do navegador.

As colunas são personalizáveis. Se você clicar com o botão direito em qualquer cabeçalho de coluna você verá um menu de contexto permitindo-o selecionar quais colunas serão exibidas. Você pode também alterar a largura das colunas usando o ícone de arrastar que aparece quando você passa o mouse em cima de uma borda de coluna. Essas personalizações são preservadas, então você verá os mesmos cabeçalhos da próxima vez.

Se você está trabalhando em diversas tarefas independentes ao mesmo tempo, você pode também agrupar arquivos em changelists. Leia “Lista de Alterações” para maiores informações.

Na parte inferior da janela você pode ver um sumário da variação das revisões do repositório em uso na sua cópia de trabalho. Essas são as revisões submetidas, não as revisões atualizadas; elas representam a variação das revisões onde estes arquivos foram submetidos pela última vez, não as revisões nas quais foram atualizados. Note que a variação de revisões mostrada aplica-se somente aos itens exibidos, não à cópia de trabalho inteira. Se você deseja ver informações sobre a cópia de trabalho inteira você deve marcar a caixa Mostrar arquivos não modificados.

Dica

Se você deseja uma exibição simples da sua cópia de tabalho, p. ex. mostrando todos os arquivos e pastas em cada nível da hierarquia de pastas, então a janela Verificar por Modificações é a maneira mais fácil de conseguir isso. Simplesmente marque a caixa Mostrar arquivos não modificados para mostrar todos os arquivos na sua cópia de trabalho.

Reparando Referência Externas Renomeadas

Algumas vezes arquivos são renomeados fora do Subversion, e eles aparecem na lista de arquivos como arquivos perdidos e como arquivos não versionados. Para evitar a perca do histório você precisa notificar o Subversion sobre a conexão entre os arquivos. Simplesmente selecione o arquivo antigo (perdido) e o arquivo nome (não versionado) e use a opção Menu de ContextoReparar movimento para identificar os dois arquivos como uma renomeação.

Reparando Cópias de Referências Externas

Se você fez uma cópia de um arquivo e esqueceu de usar o comando do SVN na cópia, você pode reparar a cópia e assim o novo arquivo não perderá seu histórico. Simplesmente selecione o arquivo antigo (normal ou modificado) e o nome arquivo (não versionado) e use Menu de ContextoReparar Cópia para identificar os dois arquivos como um cópia.

Visualizar diferenças

Frequentemente você deseja olhar dentro de seus arquivos, para observar o que foi alterado. Você pode fazê-lo selecionando o arquivo que foi alterado, e selecionando Diff do menu de contexto do TortoiseSVN. Isto inicia o visualizador-diff externo, que irá então comparar o arquivo atual com a cópia pristina ( revisão BASE), que foi armazenada após a última submissão ou atualização.

Dica

Mesmo quando não não se está dentro de uma cópia de trabalho ou quando você tiver múltiplas versões do arquivo em disco, você ainda pode visualizar diffs:

Selecione os dois arquivos que você deseja comparar no explorer ( p. ex. usando Ctrl e o mouse) e escolha Diff do menu de contexto do TortoiseSVN. O arquivo clicado por último ( o que possui foco, ou seja, um retângulo pontilhado) será compreendido como o último.

TortoiseSVN homepage