// 
//     Licensed to the Apache Software Foundation (ASF) under one
//     or more contributor license agreements.  See the NOTICE file
//     distributed with this work for additional information
//     regarding copyright ownership.  The ASF licenses this file
//     to you under the Apache License, Version 2.0 (the
//     "License"); you may not use this file except in compliance
//     with the License.  You may obtain a copy of the License at
// 
//       http://www.apache.org/licenses/LICENSE-2.0
// 
//     Unless required by applicable law or agreed to in writing,
//     software distributed under the License is distributed on an
//     "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
//     KIND, either express or implied.  See the License for the
//     specific language governing permissions and limitations
//     under the License.
//

= Usando Suporte ao Subversion no NetBeans IDE
:jbake-type: tutorial
:jbake-tags: tutorials 
:jbake-status: published
:icons: font
:syntax: true
:source-highlighter: pygments
:toc: left
:toc-title:
:description: Usando Suporte ao Subversion no NetBeans IDE - Apache NetBeans
:keywords: Apache NetBeans, Tutorials, Usando Suporte ao Subversion no NetBeans IDE

O NetBeans IDE fornece uma grande integração com as versões de cliente do Subversion 1.6.x e superior. O suporte do Subversion do IDE foi projetado para ajudar a racionalizar o processo de desenvolvimento para grupos trabalhando de um repositório compartilhado, permitindo executar tarefas de controle de versão diretamente de seu sistema de projetos dentro do IDE.

Este documento demonstra como executar tarefas básicas de controle de versão no IDE orientando você pelo fluxo de trabalho padrão ao usar o software de controle de versão.

Observe que o suporte ao Subversion do NetBeans _não_ funciona quando usado com Cygwin.

link:http://subversion.tigris.org/[+Subversion+] é um sistema de controle de versão de código aberto que está se tornando a próxima geração substituta do CVS. Ele fornece diversas funcionalidades melhoradas, por exemplo:

* Um histórico de versão completo é fornecido para arquivos renomeados, movidos ou removidos.
* Operações de confirmação são atômicas, o que significa que uma coleção de modificações entra completamente no repositório ou, caso ocorra uma falha na conexão, não entram.
* O controle de versão de metadados do projeto fornecido.

*Para concluir este tutorial, você precisa dos seguintes recursos e softwares.*

|===
|Software ou Recurso |Versão Necessária 

|link:https://netbeans.org/downloads/index.html[+NetBeans IDE+] |versão 6.9, 7.0, 7.1, 7.2, 7.3, 7.4 ou 8.0 

|link:http://java.sun.com/javase/downloads/index.jsp[+JDK (Java Development Kit)+] |versão 6, 7 ou 8 

|link:http://www.open.collab.net/downloads/netbeans/[+Software cliente do Subversion+] |versão 1.6.x ou uma versão mais recente 
|===

*Observação para usuários do Windows: *você pode instalar um cliente Subversion incluído no pacote como um plug-in do NetBeans IDE. Vá para Ferramentas > Plug-ins, abra a guia Plug-ins Disponíveis e instale o Cliente Subversion Incluído no Pacote para Windows.


== Configurando o Subversion

Para poder tirar vantagem do suporte ao Subversion do IDE, você precisa ter um software cliente do Subversion instalado em seu computador. O suporte ao Subversion do IDE trabalha interagindo com o cliente do Subversion para realizar os comandos de controle de versão. Dependendo do seu sistema, e se você instala o cliente Subversion em um local que não seja o default, talvez seja necessário registrar o caminho para o executável do Subversion no IDE. Por fim, é necessário garantir que exista um repositório Subversion para se conectar.

* <<getting,Obtendo o Software>>
* <<specifying,Especificando o Caminho para o Executável do Subversion>>
* <<ensuring,Certificando-se de que você tenha um Repositório ao qual se Conectar>>


=== Obtendo o Software

Certifique-se de que tenha instalado no computador os seguintes softwares:

* NetBeans IDE (link:https://netbeans.org/downloads/index.html[+download+])
* Java SE Development Kit (link:http://www.oracle.com/technetwork/java/javase/downloads/index.html[+download+])
* Software cliente do Subversion (link:http://www.open.collab.net/downloads/netbeans/[+download+])


=== Especificando o Caminho para o Executável do Subversion

O NetBeans IDE tenta automaticamente identificar o local do arquivo executável do Subversion usando a variável do sistema `$PATH` em seu computador. Entretanto, dependendo da sua plataforma, ou se você instalou o cliente Subversion em um local diferente, talvez seja necessário especificar explicitamente o caminho para o arquivo executável.

Por default, o arquivo executável do Subversion é instalado na pasta `/usr/bin` ou `/usr/local/bin/` nos computadores UNIX e OS X, e na pasta `C:\Program Files\Subversion\bin\` (ou `C:\Program Files\CollabNet Subversion\bin\`) do Windows.

Em computadores *Unix, é possível verificar o local do executável Subversion ao digitar `which svn` em uma janela do terminal. Em computadores Windows, é possível executar uma pesquisa por todo o sistema de `svn.exe`.

Para definir o caminho para o arquivo executável do Subversion no IDE:

1. Escolha Ferramentas > Opções(NetBeans > Preferências no OS X) a partir do menu principal. A caixa de diálogo Opções é aberta.
2. Selecione o ícone Diversos na parte superior da caixa de diálogo e clique na guia Controle de Versão. No painel esquerdo, em Sistemas de Controle de Versão, selecione Subversion. As opções definidas pelo usuário para o Subversion são exibidas na janela principal da caixa de diálogo:

 [.feature]
--
image::images/svn-options-small.png[role="left", link="images/svn-options.png"]
--


[start=3]
. No campo de texto Especificar a Pasta Home do SVN, digite o caminho do arquivo executável ou clique em Procurar para navegar até ele em seu sistema. Observe que não é necessário _incluir_o arquivo executável Subversion no caminho.

[start=4]
. Clique em OK, reinicie IDE para permitir que as alterações tenham efeito.


=== Certificando-se de que você tenha um Repositório ao qual se Conectar

Antes de chamar uma ação do Subversion do IDE, certifique-se de que tenha acesso ao repositório do Subversion. O IDE_não_ fornece suporte para criar repositórios do Subversion, uma vez que isso não é uma ação frequentemente usada (em um ambiente de produção um repositório só é criado uma vez após o projeto do layout do repositório ter sido determinado) além disso ele requer comandos administrativos.

Se quiser experimentar o suporte do IDE usando um repositório local, é possível criar um usando a link:http://svnbook.red-bean.com/en/1.1/ch09s02.html[+svnadmin tool+], que faz parte do cliente do software do Subversion.

Para criar um repositório do Subversion no computador, use `svnadmin create`. Em um prompt de linha de comandos, digite o seguinte:


[source,bash]
----

svnadmin create /path/to/your/repository
----

Para obter mais informações, consulte link:http://svnbook.red-bean.com/en/1.1/ch05s02.html[+http://svnbook.red-bean.com/en/1.1/ch05s02.html+].




== Sincronizando Arquivos Locais com um Repositório

Ao usar um sistema de controle de versão, você trabalha sincronizando arquivos locais com um repositório, fazendo alterações na cópia local e, a seguir, confirmando-as no repositório. A lista a seguir descreve diversas maneiras de sincronizar um projeto no NetBeans IDE, dependendo de sua situação específica:

* <<opening,Abrindo um Projeto Subversion no IDE>>
* <<checking,Fazendo Check-out de Arquivos de um Repositório>>
* <<importing,Importando Arquivos para um Repositório>>


=== Abrindo um Projeto Subversion no IDE

Caso já possua um projeto com controle de versão do Subversion com o qual tem trabalhado fora do IDE, você pode abri-lo no IDE e as funcionalidades de controle de versão se tornam automaticamente disponíveis. O IDE varre seus projetos abertos e se eles contiverem diretórios `.svn` , o status do arquivo e o suporte contextual se ativam automaticamente para os projetos Subversion com controle de versão.


=== Fazendo Check-out de Arquivos de um Repositório

Caso deseje estabelecer conexão com um repositório remoto a partir do IDE, fazer check-out dos arquivos e começar a trabalhar imediatamente com eles, faça o seguinte:

1. No NetBeans IDE, selecione Equipe > Subversion > Check-out no menu principal. O assistente de Check-out é aberto. 

NOTE: os menus drop-down do IDE se adaptam ao contexto, ou seja, as opções disponíveis dependem do item atualmente selecionado. Portanto, se você já estiver trabalhando dentro de um projeto Subversion, poderá escolher Controle de Versão > Check-out no menu principal.

[start=2]
. No primeiro painel do assistente, insira um URL que contenha o protocolo e o local de conexão do repositório que deseja se conectar. 

O IDE suporta os seguintes tipos de protocolo: 

|===
|Protocolo |Método de Acesso |Exemplo 

|*arquivo* |Acesso direto ao repositório (no disco local) |`file:///repository_path` 

|*http* |Acesso por meio do protocolo WebDAV a um servidor compatível com Subversion |`http://hostname/repository_path` 

|*https* |Acesso por meio do protocolo HTTP com criptografia SSL |`https://hostname/repository_path` 

|*svn* |Acesso por meio de protocolo personalizado a um servidor `svnserve` |`svn://hostname/repository_path` 

|*svn+ssh* |Acesso por meio do protocolo SVN por meio de um túnel SSH externo |`svn+ssh://hostname/repository_path` 
|===

Dependendo do protocolo que estiver usando, pode ser necessário inserir outras informações, como nome de usuário e senha (e.g. para `http://`, `https://`, ou `svn://`), ou no caso de `svn+ssh://`, é necessário fornecer o comando para estabelecer o túnel externo. 

NOTE: se estiver tentando implementar uma autenticação certificada com `https`, consulte: link:http://wiki.netbeans.org/wiki/view/FaqSslUserCert[+Como conectar-se a um repositório do Subversion usando uma autenticação certificada por usuário?+] 

Para mais ajuda com `svn+ssh`, consulte: link:http://wiki.netbeans.org/wiki/view/FaqSubversionSSH[+Como ajustar o SSH com o Subversion?+]

[start=3]
. Caso esteja usando um proxy, certifique-se de clicar no botão Configuração de Proxy e insira quaisquer informações solicitadas. Quando tiver certeza de que suas definições de conexão estão corretas, clique em Próximo.

[start=4]
. No painel Pastas para Check-out do assistente, especifique a pasta para a qual deseja fazer check-out no campo Pasta(s) do Repositório. Caso não saiba o nome da pasta para a qual deseja fazer check-out, clique no botão Procurar para exibir todas as pastas mantidas atualmente no repositório. Na caixa de diálogo Procurar nas Pastas do Repositório, selecione quaisquer uma das pastas listadas e clique em OK. A pasta selecionada é adicionada ao campo Pastas do Repositório ('MyProject' inserido na captura de tela abaixo):

[.feature]
--
image::images/checkout-small.png[role="left", link="images/checkout.png"]
--


. Insira um número de Revisão no campo Revisão do Repositório ou deixe-o em branco, para indicar que deseja fazer check-out da pasta _HEAD_, ou insira a revisão mais recente.
. No campo Pasta Local, insira um local em seu computador para onde deseja fazer check-out dos arquivos. Deixe selecionada a opção Procurar por Projetos do NetBeans após Check-out e, em seguida, clique em Finalizar para iniciar a ação de check-out. O IDE faz check-out dos códigos-fonte especificados e a barra de status do IDE indica o andamento do download dos arquivos do repositório para seu diretório de trabalho local. Você também pode exibir os arquivos que estão tendo check-out na janela de Saída (Ctrl-4 no Windows/Cmd-4 no OS X). 

NOTE: caso os códigos-fonte com check-out contenham projetos NetBeans, uma caixa de diálogo será exibida solicitando a abertura deles no IDE. Se os códigos-fonte não contiverem um projeto, aparecerá uma caixa de diálogo solicitando que você crie um novo projeto a partir dos códigos-fonte e, a seguir, que o abra no IDE. Caso você crie um novo projeto para tal código-fonte, selecione a categoria de projeto apropriada (ou seja no assistente Novo projeto), e a seguir use a opção Com Códigos-fonte Existente dentro daquela categoria.


=== Importando Arquivos para um Repositório

Alternativamente, você pode importar um projeto no qual estava trabalhando no IDE para um repositório remoto e, a seguir, continuar a trabalhar nele no IDE após ele ter sido sincronizado.

NOTE: apesar de que de fato você está _exportando_ arquivos do sistema, o termo 'importar" é usado nos sistemas de controle de versão para indicar que os arquivos estão sendo _importados em _um repositório.

Para importar um projeto para um repositório:

1. Na janela Projetos (Ctrl-1 no Windows/Cmd-1 no OS X), selecione um projeto sem controle de versão e escolha Controle de Versão > Importar para o Repositório do Subversion ao clicar com o botão direito do mouse no nó. O Assistente para Importação do Subversion é aberto.
2. No painel do Repositório do Subversion do assistente para Importação, especifique o <<protocolTypes,protocolo>> e a localização do repositório do Subversion conforme definido pelo URL do Subversion. Dependendo da sua seleção, talvez você precise da especificação de mais definições, tais como nome de usuário e senha do repositório, ou, no caso de `svn+ssh://`, você deve especificar o comando Túnel para estabelecer o túnel externo. Consulte o link:http://wiki.netbeans.org/wiki/view/NetBeansUserFAQ#section-NetBeansUserFAQ-VersionControlSystems[+FAQ do Usuário do Subversion+] para obter mais detalhes. Clique em Próximo.
3. No painel Pasta do Repositório, especifique a pasta de repositório na qual você deseja colocar o projeto no repositório. Uma pasta que contém o nome do seu projeto é sugerida para você por default no campo de texto Pasta do Repositório, por default.
4. Na área de texto abaixo de Especificar a Mensagem, indique uma descrição do projeto que você está importando para o repositório.
5. Clique em Finalizar para iniciar a importação, ou opcionalmente, clique em Próximo para continuar no terceiro painel que permite que você exiba todos os arquivos que estão preparados para importação. Neste painel, você pode optar por excluir arquivos individuais da importação (como indicado abaixo), ou identificar os tipos de MIME dos arquivos antes da importação.

[.feature]
--
image::images/import-small.png[role="left", link="images/import.png"]
--

Quando você clicar em Finalizar, o IDE fará upload dos arquivos do projeto para o repositório e a janela de Saída será aberta e exibirá o andamento.




== Editando Códigos-fonte

Quando tiver um projeto com controle de versão do Subversion aberto no IDE, você pode começar a fazer alterações nos códigos-fonte. Como acontece com qualquer projeto aberto no NetBeans IDE, é possível abrir os arquivos no Editor de Código-fonte clicando duas vezes em seus nós, conforme eles aparecem nas janelas do IDE (por exemplo, janelas Projetos (Ctrl-1 no Windows/Cmd-1 no OS X), Arquivos (Ctrl-2 no Windows/Cmd-2 no OS X) e Favoritos (Ctrl-3 no Windows/Cmd-3 no OS X)).

Quando você trabalha com códigos-fonte no IDE, há vários componentes de UI à sua disposição, o que ajuda a exibir e usar os comandos de controle de versão:

* <<viewingChanges,Exibindo Alterações no Editor de Código-fonte>>
* <<viewingFileStatus,Exibindo Informações de Status do Arquivo>>
* <<comparing,Comparando Revisões de Arquivos>>
* <<merging,Mesclando Revisões de Arquivos>>


=== Exibindo alterações no Editor de Código-fonte

Ao abrir um arquivo com controle de versão no Editor de Código-fonte do IDE, você pode ver as alterações em tempo real acontecendo no seu arquivo à medida que ele é modificado em relação à versão anterior cujo check-out do repositório foi efeito. Conforme você trabalha, o IDE usa a codificação de cor nas margens do Editor de Código-fonte para fornecer as seguintes informações:

|===
|*Azul* (       ) |Indica as linhas alteradas desde a revisão anterior. 

|*Verde* (       ) |Indica as linhas adicionadas desde a revisão anterior. 

|*Vermelho* (       ) |Indica as linhas removidas desde a revisão anterior. 
|===

A margem esquerda do Editor de Código-fonte mostra as alterações que ocorrem linha por linha. Quando você modifica uma determinada linha, as alterações são imediatamente mostradas na margem esquerda.

É possível clicar em um agrupamento colorido na margem para chamar os comandos de controle de versão. Por exemplo, a captura de tela inferior esquerda mostra os widgets disponíveis quando você clica em um ícone vermelho, indicando que linhas foram removidas de sua cópia local.

A margem direita do Editor de Código-fonte fornece uma visão geral que exibe as alterações feitas no arquivo como um todo, do início ao fim. A codificação de cor é gerada imediatamente quando você altera o arquivo.

Observe que você pode clicar em um ponto específico na margem para trazer imediatamente o seu cursor in-line para esse local no arquivo. Para exibir o número de linhas afetadas, passe o mouse sobre os ícones coloridos na margem direita:

|===
|[.feature]
--
image::images/left-ui-small.png[role="left", link="images/left-ui.png"]
--
 
*Margem esquerda* |image:images/right-ui.png[title="a codificação de cor do controle de versão é exibida na margem direita do editor"] 
*Margem direita* 
|===


=== Exibindo Informações de Status do Arquivo

Quando você está trabalhando nas janelas Projetos (Ctrl-1 no Windows/Cmd-1 no OS X), Arquivos (Ctrl-2 no Windows/Cmd-2 no OS X), Favoritos (Ctrl-3 no Windows/Cmd-3 no OS X) ou de Controle de versão, o IDE fornece várias funcionalidades visuais que ajudam a exibir as informações de status sobre seus arquivos. No exemplo a seguir, observe como o emblema (por exemplo, image:images/blue-badge.png[]), cor do nome do arquivo, e label de status adjacente, todos coincidem com outros para fornecer a você uma maneira efetiva, mas simples de controlar informações sobre seus arquivos de controle de versão: 

image::images/badge-example.png[]

Os emblemas, a codificação de cor, os labels de status do arquivo e, talvez o mais importante, a janela de Controle de Versão ajudam a exibir e gerenciar de forma eficiente as informações de controle de versão no IDE.

* <<badges,Emblemas e Codificação de Cor>>
* <<fileStatus,Labels de Status do Arquivo>>
* <<versioning,A Janela de Controle de Versão>>


==== Emblemas e Codificação de Cor

Os emblemas são aplicados ao projeto, pasta e nós do pacote e informam o status dos arquivos contidos nesse nó:

A tabela a seguir exibe o esquema de cores usado nos emblemas:

|===
|Componente de IU |Descrição 

|*Emblema Azul* (image:images/blue-badge.png[]) |Indica a presença de arquivos que foram localmente modificados, adicionados ou deletados. No caso de pacotes, esse emblema se aplica somente ao pacote em si, e não aos seus subpacotes. Para projetos ou pastas, o emblema indica as alterações nesse item, ou em qualquer uma das subpastas contidas. 

|*Emblema Vermelho* (image:images/red-badge.png[]) |Marca os projetos, as pastas ou os pacotes que tenham arquivos _conflitantes_ (i.e., versões locais que apresentam conflito com as versões do repositório). No caso de pacotes, esse emblema se aplica somente ao pacote em si, e não aos seus subpacotes. Para projetos ou pastas, o emblema indica os conflitos nesse item ou em qualquer uma das subpastas contidas. 
|===


A codificação de cor é aplicada aos nomes de arquivo para indicar seu status atual em relação ao repositório:

|===
|Cor |Exemplo |Descrição 

|*Azul* |image:images/blue-text.png[] |Indica que o arquivo foi modificado localmente. 

|*Verde* |image:images/green-text.png[] |Indica que o arquivo foi adicionado localmente. 

|*Vermelho* |image:images/red-text.png[] |Indica que o arquivo contém conflitos entre sua cópia local de trabalho e a versão no repositório. 

|*Cinza* |image:images/gray-text.png[] |Indica que os arquivo é ignorado pelo Subversion e não será incluído nos comandos de controle de versão (ou seja, Atualizar e Confirmar). Os arquivos só podem ser ignorados caso ainda não tenham tido controle de versão. 

|*Tachado* |image:images/strike-through-text.png[] |Indica que o arquivo foi excluído das operações de confirmação. O texto tachado aparece somente em locais específicos, como na janela de Controle de Versão ou na caixa de diálogo Confirmar, quando você decide excluir arquivos individuais de uma ação de confirmação. Tais arquivos ainda são afetados por outros comandos do Subversion, tais como Atualizar. 
|===


==== Labels de Status do Arquivo

Os labels de status do arquivo fornecem uma indicação textual do status dos arquivos com controle de versão nas janelas do IDE. Por default, o IDE exibe as informações de status (novo, modificado, ignorado etc.) e de pastas em texto cinza à direita dos arquivos, à medida que eles são listados em janelas. Entretanto, você pode modificar esse formato para que se adeque às suas necessidades. Por exemplo, se você quiser adicionar números de revisão aos labels de status, faça o seguinte:

1. Escolha Ferramentas > Opções(NetBeans > Preferências no OS X) a partir do menu principal. A janela Opções é aberta.
2. Selecione o botão Diversos na parte superior da janela e clique na guia Controle de Versão abaixo dela. Garanta que Subversion está selecionado abaixo de Sistemas de Controle de Versão no painel esquerdo. (Consulte a <<svnOptions,captura de tela>> acima para referência.)
3. Clique no botão Adicionar Variável à direita do campo de texto Formato do label de status. Na caixa de diálogo Adicionar Variável que é exibida, selecione a variável `{revision}` e clique em OK. A variável revision é adicionada ao campo de texto Formato do label de status.
4. Para reformatar os labels de status de forma que somente o seletor de status e de versão seja exibido à direita dos arquivos, reorganize o conteúdo do campo de texto Formato do Label de Status para o seguinte:

[source,bash]
----

[{status}; {revision}]
----
Clique em OK. Os labels de status agora listam o status e os números de revisão do arquivo (onde aplicável): 

Os labels de status do arquivo podem ser ativados e desativados, selecionando Exibir > Mostrar Labels de Controle de Versão no menu principal.


image::images/file-labels.png[]

Os labels de status do arquivo podem ser ativados e desativados, selecionando Exibir > Mostrar Labels de Controle de Versão no menu principal.


==== A Janela de Controle de Versão

A janela de Controle de Versão do Subversion fornece uma lista em tempo real de todas as alterações feitas nos arquivos em uma pasta selecionada da sua cópia de trabalho local. Ela é aberta por default no painel inferior do IDE, listando os arquivos adicionados, deletados ou modificados.

Para abrir a janela de Controle de Versão, selecione um arquivo ou pasta com controle de versão (ou seja, na janela Projetos, Arquivos ou Favoritos) e escolha Subversion > Mostrar Alterações no menu de clique direito, ou escolha Equipe > Mostrar alterações no menu principal. A janela seguinte aparece na parte inferior do IDE:

[.feature]
--
image::images/versioning-window-small.png[role="left", link="images/versioning-window.png"]
--

Por default, a janela Controle de Versão exibe uma lista de todos os arquivos modificados dentro do pacote ou pasta selecionado. Usando os botões na barra de ferramentas, é possível optar por exibir todas as alterações ou limitar a lista de arquivos exibidos a arquivos modificados local ou remotamente. É possível clicar nos cabeçalhos das colunas acima dos arquivos listados para classificá-los por nome, status ou local.

*Observações:*

* Para ser notificado quando um arquivo de código-fonte de um de seus projetos abertos tiver sido modificado, escolha Equipe > Mostrar Alterações no menu principal. Como alternativa, se a janela Controle de Versão estiver aberta, clique no botão Atualizar Status.
* As operações na janela Projetos só funcionam nos próprios projetos e não são repetidas. Para mostrar modificações em projetos aninhados/filhos, você pode usar a janela Arquivos ou Favoritos.

A barra de ferramentas da janela Controle de Versão também inclui botões que permitem chamar as tarefas mais comuns do Subversion em todos os arquivos exibidos na lista. A tabela a seguir lista os comandos do Subversion disponíveis na barra de ferramentas da janela Controle de Versão:

|===
|Ícone |Nome |Função 

|image:images/refresh.png[] |*Atualizar Status* |Atualiza o status dos arquivos e pastas selecionados. Os arquivos exibidos na janela de Controle de Versão podem ser atualizados para refletir quaisquer alterações feitas externamente. 

|image:images/diff.png[] |*Diferenciar Tudo* |Abre o Visualizador de Diferenciação que fornece uma comparação lado a lado de suas cópias locais e das versões mantidas no repositório. 

|image:images/update.png[] |*Atualizar Todos* |Atualiza todos os arquivos selecionados no repositório. 

|image:images/commit.png[] |*Confirmar Tudo* |Permite que você confirme todas as atualizações locais no repositório. 
|===

Você pode acessar outros comandos do Subversion na janela Controle de Versão, selecionando uma linha da tabela que corresponde a um arquivo modificado, e escolhendo um comando do menu do botão direito do mouse:

image::images/versioning-right-click.png[]

Por exemplo, execute as ações a seguir em um arquivo:

|===
|* *Mostrar Anotações*: 

Exibe o autor e as informações do número da revisão na margem esquerda dos arquivos abertos no Editor de Código-fonte.
 |image:images/annotations.png[] 

|* *Pesquisar Histórico*: 

permite que você procure e compare várias revisões do arquivo selecionado no Visualizador de Histórico do IDE. No Visualizador de Históricos também é possível executar uma <<comparing,comparação>> ou restaurar sua cópia local para a revisão selecionada.
 |[.feature]
--
image:images/history-viewer-small.png[role="left", link="images/history-viewer.png"]
--
 

|* *Excluir da Confirmação*: 

Permite que você marque o arquivo para ser excluído ao executar uma confirmação.
 |[.feature]
--
image:images/exclude-from-commit-small.png[role="left", link="images/exclude-from-commit.png"]
--
 

|* *Reverter Exclusão*: 

abre a caixa de diálogo Reverter Modificações, permitindo que você reverta quaisquer ações de exclusão que tenham sido confirmadas em arquivos de sua cópia de trabalho local. O(s) arquivo(s) especificado(s) será(ão) recuperado(s) do arquivo compactado de histórico local do IDE e restaurados na sua cópia de trabalho local.
 |[.feature]
--
image:images/revert-mods-small.png[role="left", link="images/revert-mods.png"]
--
 

|* *Reverter Modificações*: 

abre a caixa de diálogo Reverter Modificações que pode ser usada para especificar parâmetros para reverter quaisquer mudanças locais em revisões mantidas no repositório. 

Ao especificar revisões, você pode clicar em Pesquisar para abrir a caixa de diálogo Pesquisar Revisões. Isso varre o repositório e lista todos os arquivos com base na data inserida.
 |[.feature]
--
image:images/search-rev-small.png[role="left", link="images/search-rev.png"]
--
 
|===


=== Comparando Revisões de Arquivos

Comparar revisões de arquivos é uma tarefa comum ao se trabalhar com projetos com controle de versão. O IDE permite que você compare versões, usando o comando Diff, que está disponível no menu de contexto de um item selecionado (Subversion> Diff), assim como na janela de Controle de Versão. Na janela de Controle de Versão, você pode executar diferenciais clicando duas vezes em um arquivo listado, caso contrário, você pode clicar no ícone Diferenciar Todos (image:images/diff.png[]) localizado na barra de ferramentas no topo.

Quando você faz uma diferenciação, um Visualizador de Diferenciação gráfico é aberto para os arquivos e revisões selecionados na janela principal do IDE. O Visualizador de Diferenciação exibe duas cópias nos painéis lado a lado. A cópia mais atual aparece no lado direito, portanto, se você estiver comparando uma revisão do repositório com sua cópia de trabalho, a cópia de trabalho é exibida no painel direito:

[.feature]
--
image::images/diff-viewer-small.png[role="left", link="images/diff-viewer.png"]
--

O visualizador de Diferenciação usa a mesma <<viewingChanges,codificação de cor>> usada para exibir alterações de controle de versão. Na captura de tela exibida acima, o bloco verde indica o conteúdo que foi adicionado à revisão mais atual. O bloco vermelho indica que o conteúdo da revisão anterior foi removido da última revisão. Azul indica que as alterações ocorreram na(s) linha(s) realçada(s).

Além disso, ao executar uma diferenciação em um grupo de arquivos, como em um projeto, pacote ou pasta, ou quando clicar em diferenciar todos (image:images/diff.png[]), você pode alternar entre diferenciais clicando em arquivos listados na região superior do Visualizador de Diferenciação.

A ferramenta Visualizador de Diferenciação fornece a seguinte funcionalidade:

* <<makeChanges,Fazer Alterações em sua Cópia de Trabalho Local>>
* <<navigateDifferences,Navegar entre as Diferenças>>
* <<changeViewCriteria,Alterar os Critérios de Exibição>>


==== Fazer Alterações em sua Cópia de Trabalho Local

Se você estiver executando uma diferenciação em sua cópia de trabalho local, o IDE permite fazer alterações diretamente no Visualizador de Diferenciação. Para fazer isso, você pode colocar o cursor no painel direito do Visualizador de Diferenciação e modificar seu arquivo adequadamente, caso contrário, use os ícones in-line exibidos ao lado de cada alteração realçada:

|===
|*Substituir* (image:images/insert.png[]): |Insere o texto realçado da revisão anterior na revisão atual 

|*Mover Todos* (image:images/arrow.png[]): |Reverte a revisão atual do arquivo para o estado da revisão anterior selecionada 

|*Remover* (image:images/remove.png[]): |Remove o texto realçado da revisão atual para que ela espelhe a revisão anterior 
|===


==== Navegar nas Diferenças entre Arquivos Comparados

Se a sua comparação contém várias diferenças, você pode navegar nelas, usando os ícones de seta exibidos na barra de ferramentas. Os ícones de seta permitem que você exiba as diferenças conforme elas aparecem na parte do início ao fim:

|===
|*Anterior* (image:images/diff-prev.png[]): |Vai para a diferença anterior exibida na diferenciação 

|*Próximo* (image:images/diff-next.png[]): |Vai para a próxima diferença exibida na diferenciação 
|===


==== Alterar os Critérios de Exibição

Você pode optar por exibir os arquivos que contêm alterações na cópia de trabalho local, no repositório ou em ambos simultaneamente:

|===
|*Local* ( image:images/locally-mod.png[] ): |Exibe apenas os arquivos modificados localmente 

|*Remoto* ( image:images/remotely-mod.png[] ): |Exibe apenas os arquivos modificados remotamente 

|*Ambos* ( image:images/both-mod.png[] ): |Exibe os arquivos modificados local e remotamente 
|===

NOTE:  o esquema de cores descrito na seção <<badges, Emblemas e Codificação de Cor>> é desconsiderado com relação aos ícones mencionados anteriormente.


=== Mesclando Revisões de Arquivos

O NetBeans IDE permite mesclar as alterações entre as revisões no repositório e na sua cópia de trabalho local. É possível especificar uma faixa de revisões para mesclar. É possível mesclar uma faixa de revisões de duas pastas separadas de um repositório.

O cenário a seguir descreve um caso comum: você fez check-out da versão trunk de um arquivo chamado `JavaApp` e agora deseja mesclar sua cópia com a ramificação. Para motivos de demonstração o layout do repositório contém uma pasta `ramificação` usada para conter todos os arquivos ramificados:

1. Na janela Projetos, Arquivos ou Favoritos, clique com o botão direito do mouse nos arquivos ou pastas em que deseja realizar a operação de mesclagem e escolha Subversion > Mesclar Alterações. A caixa de diálogo Mesclar é exibida.
2. Na lista drop-down Mesclar, selecione Uma Pasta do Repositório desde sua Origem. Todas as mudanças feitas em uma ramificação são transferidas no momento em que são criadas.
3. No campo de texto da Pasta do Repositório, insira o caminho na pasta para a qual você deseja transportar as alterações (`branches/JavaApp`). Deixe o campo Revisão Final vazio para indicar que deseja incluir todas as revisões até o _HEAD_ (isto é, estado atual).

[.feature]
--
image::images/svn-merge-small.png[role="left", link="images/svn-merge.png"]
--


. Clique em Mesclar. O IDE incorpora quaisquer diferenças constatadas entre a versão de revisão da ramificação e a cópia local do arquivo. Se ocorrerem conflitos de mesclagem, o status do arquivo será atualizado em <<resolving,Conflito de Mesclagem>> para indicar o fato.

NOTE:  depois de mesclar as alterações do arquivo com o diretório de trabalho local, ainda é necessário confirmar as alterações usando o comando Confirmar para poder adicionar as alterações ao repositório.




== Confirmando Códigos-fonte em um Repositório

Depois de fazer alterações no código-fonte, você as confirma no repositório. Normalmente, é recomendado atualizar todas as cópias que você tenha no repositório antes de executar a confirmação para garantir que não surjam conflitos. No entanto, podem ocorrer conflitos, que devem ser considerados como um evento natural quando vários desenvolvedores trabalham simultaneamente em um projeto. O IDE fornece um suporte flexível que permite executar todas essas funções. Ele também fornece um Resolvedor de Conflitos que permite tratar com segurança quaisquer conflitos à medida que ocorrerem.

* <<updating,Atualizando Cópias Locais>>
* <<resolving,Resolvendo Conflitos>>
* <<performing,Executando a Confirmação>>


=== Atualizando Cópias Locais

Você pode executar atualizações ao escolher Subversion > Atualizar ao clicar com o botão direito do mouse em qualquer item com controle de versão nas janela Projetos, Arquivo ou Favoritos. Ao trabalhar diretamente na janela Controle de Versão, basta clicar com o botão direito do mouse em um arquivo listado e escolher Atualizar.

Para executar uma atualização em todos os arquivos de código-fonte, você pode clicar no ícone Atualizar Todos (image:images/update.png[]), que exibe as barras de ferramentas localizadas na parte superior da <<versioning,Janela Controle de Versão>> e no Visualizador de Diferenciação<<comparing,. Quaisquer alterações que possam ter ocorrido no repositório são exibidas na janela de Saída de Controle de Versão.>>

<<comparing, >>


=== Resolvendo Conflitos

Quando você executa uma atualização ou confirmação, o suporte ao Subversion do IDE compara seus arquivos com os códigos-fonte no repositório para assegurar que outras alterações já não ocorreram nos mesmos locais. Quando seu check-out (ou atualização) anterior não coincidir mais com o _HEAD_ do repositório (ou seja, a versão mais atual) _e_ as alterações aplicadas à sua cópia local de trabalho coincidirem com áreas no HEAD que também mudaram, sua atualização ou confirmação resultará em um _conflito_.

Conforme indicado em <<badges,Emblemas e Codificação de Cor>>, os conflitos são exibidos no IDE com texto vermelho e são acompanhado por um emblema vermelho (image:images/red-badge.png[]) quando visualizada nas janelas Projetos, Arquivos ou Favoritos. Quando você trabalha na janela Controle de Versão, os conflitos também são indicados por um status de arquivo:

image::images/conflict-versioning-win.png[]

Quaisquer conflitos que surjam precisam ser resolvidos antes de confirmar os arquivos no repositório. Você pode resolver os conflitos no IDE usando o Resolvedor de Conflitos de Mesclagem O Resolvedor de Conflitos de Mesclagem fornece uma interface intuitiva que permite endereçar conflitos individuais sequencialmente enquanto exibe a saída mesclada ao efetuar alterações. Você pode acessar o Resolvedor de Conflitos de Mesclagem em um arquivo que esteja em conflito ao clicar com o botão direito do mouse naquele arquivo e escolher Subversion > Solucionar Conflitos.

O Resolvedor de Conflitos de Mesclagem exibe as duas revisões em conflito lado a lado no painel superior, com as áreas conflitantes realçadas. O painel inferior mostra o arquivo da forma como aparece durante mesclagens de conflitos entre as duas revisões:

[.feature]
--
image::images/conflict-resolver-small.png[role="left", link="images/conflict-resolver.png"]
--

Você resolver um conflito ao aceitar uma das duas revisões exibidas no painel superior. Clique no botão Aceitar da revisão que deseja aceitar. O IDE mescla a revisão aceita com o arquivo de origem e você pode imediatamente ver os resultados da mesclagem no painel inferior do Resolvedor de Conflitos de Mesclagem. Depois de resolver todos os conflitos, clique em OK para sair do Resolvedor de Conflitos de Mesclagem e salvar o arquivo modificado. O emblema de conflito é removido e agora é possível confirmar o arquivo modificado no repositório.


=== Executando a Confirmação

Após editar os arquivos de origem, executar uma atualização e resolver quaisquer conflitos, você confirma os arquivos de sua cópia local de trabalho no repositório. O IDE permite que você chame o comando de confirmação das seguintes formas:

* Nas janelas Projetos, Arquivos ou Favoritos, clique com o botão direito do mouse nos itens novos ou modificados e escolha Subversion > Confirmar.
* Na janela Visualizador de Controle de Versão ou de Diferenciação, clique no botão Confirmar Tudo (image:images/commit.png[]) localizado na barra de ferramentas.

A caixa de diálogo Confirmar é aberta, exibindo os arquivos que estão prestes a serem confirmados no repositório:

[.feature]
--
image::images/commit-dialog-small.png[role="left", link="images/commit-dialog.png"]
--

A caixa de diálogo Confirmar lista:

* todos os arquivos modificados localmente
* todos os arquivos deletados localmente
* todos os arquivos novos (ou seja, arquivos que ainda não existem no repositório)
* todos os arquivos que você renomeou. O Subversion trata os arquivos renomeados deletando o arquivo original e criando uma cópia com o novo nome.

Na caixa de diálogo Confirmar, é possível especificar se arquivos individuais devem ser excluídos da confirmação. Para fazer isso, clique na coluna Ação de Confirmação de um arquivo selecionado e escolha Excluir da confirmação na lista drop-down. De forma similar, quando novos arquivos são incluídos, é possível especificar o tipo MIME ao escolher Adicionar como binário ou Adicionar como Texto na lista drop-down.

Para executar a confirmação:

1. Digite uma mensagem de confirmação na área de texto Mensagem de Confirmação. Se preferir, clique no ícone de Mensagens Recentes (image:images/recent-msgs.png[]) localizado no canto superior direito para ver e selecionar de uma lista de mensagens que você usou anteriormente existente.
2. Depois de especificar ações para arquivos individuais, clique em Confirmar. O IDE executa a confirmação e envia suas alterações locais para o repositório. A barra de status do IDE, localizada na parte inferior direita da interface, é exibida conforme a ação de confirmação ocorre. Com uma confirmação bem-sucedida, as identificações de controle de versão desaparecem nas janelas Projetos, Arquivos e Favoritos e a codificação de cor dos arquivos confirmados volta a ser preta.




== Resumo

Isso conclui o tour guiado do Subversion para NetBeans IDE 6.x e versões posteriores. Este documento demonstrou como executar tarefas de controle de versão básicas no IDE, guiando você pelo fluxo de trabalho padrão ao usar o suporte Subversion do IDE. Ele mostrou como configurar um projeto com controle de versão e como executar tarefas básicas em arquivos com controle de versão e apresentando-o algumas das novas funcionalidades do Subversion incluídas no IDE.

link:/about/contact_form.html?to=3&subject=Feedback:%20Using%20Subversion%20Support%20in%20NetBeans%20IDE[+Enviar Feedback neste Tutorial+]





== Consulte Também

Para documentos relacionados, consulte os seguintes recursos:

* link:http://wiki.netbeans.org/wiki/view/NetBeansUserFAQ#section-NetBeansUserFAQ-VersionControlSystems[+FAQ do Suporte Subversion para o NetBeans IDE+]
* link:http://wiki.netbeans.org/FaqSubversionClients[+Perguntas Frequentes sobre Clientes do Subversion+]
* link:git.html[+Usando Suporte Git no NetBeans IDE+]
* link:mercurial.html[+Usando Suporte ao Mercurial no NetBeans IDE+]
* link:mercurial-queues.html[+Usando Suporte para Filas do Mercurial no NetBeans IDE+]
* link:cvs.html[+Usando Suporte ao CVS no NetBeans IDE+]
* link:clearcase.html[+Usando o Suporte de ClearCase no NetBeans IDE+]
* link:http://www.oracle.com/pls/topic/lookup?ctx=nb8000&id=NBDAG234[+Aplicando Controle de Versão às Aplicações com Controle de Versão+] em _Desenvolvendo Aplicações com o NetBeans IDE_.



