// 
//     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.
//

= Armazenando Projeto C/C++ do NetBeans nos Sistemas de Controle de Versão
:jbake-type: tutorial
:jbake-tags: tutorials 
:jbake-status: published
:icons: font
:syntax: true
:source-highlighter: pygments
:toc: left
:toc-title:
:description: Armazenando Projeto C/C++ do NetBeans nos Sistemas de Controle de Versão - Apache NetBeans
:keywords: Apache NetBeans, Tutorials, Armazenando Projeto C/C++ do NetBeans nos Sistemas de Controle de Versão

Contribuição de Vladimir Kvashin, mantida por Alyona Stashkova
Março de 2014 [Número da revisão: V8.0-1]

Iniciar o NetBeans IDE 7.3 armazenando projetos do NetBeans C/C ++ (especialmente projetos de código existente e projetos de binários) em VCS (sistemas de controle de versão) ficou mais fácil. Este artigo cobre os detalhes do armazenamento de projetos do NetBeans CC++ em VCS no NetBeans IDE.



image::images/netbeans-stamp-80-74-73.png[title="O conteúdo desta página se aplica ao NetBeans IDE 7.3 e mais recente"]



== Requisitos

*Para seguir este tutorial, você precisa do software a seguir.*

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

|NetBeans IDE (incluindo o suporte ao C/C++) |link:https://netbeans.org/downloads/index.html[+versão 7.3 ou mais recente com o plug-in C/C++ do NetBeans+] 

|Java Development Kit (JDK) |link:http://www.oracle.com/technetwork/java/javase/downloads/index.html[+Versão 6, 7 ou 8 +] 
|===


Consulte as link:../../../community/releases/74/install.html[+Instruções de Instalação do NetBeans IDE+] e a link:../../../community/releases/74/cpp-setup-instructions.html[+ Configuração do NetBeans IDE para o C/C++/Fortran+] para obter informações sobre o download e a instalação do software necessário.


== Problemas de Projeto Controlado por VCS Resolvidos no NetBeans IDE

Os seguintes problemas foram resolvidos no NetBeans IDE:

* <<unfriendly,Armazenamento de dados de projeto não amigável em VCS>>
* <<compiler,Opções do Compilador>>


=== Armazenamento de Dados de Projeto Não Amigável em VCS

O NetBeans IDE usado para alterar os arquivos de metadados do projeto com muita frequência. Por exemplo, você pode apenas abrir um projeto que estava em VCS, não alterar nada e, de repente, perceber que alguns arquivos de metadados do projeto foram alterados, então você precisa verificá-los ou revertê-los.

Esse problema se relacionava principalmente a projetos de código existente e projetos de binário, em outras palavras, projetos baseados em arquivos feitos pelo usuário.

A raiz do problema era o IDE ter pouquíssima informação sobre quais arquivos de tais projetos faziam parte da compilação e com quais opções do compilador cada arquivo foi compilado. Sem esse conhecimento, a funcionalidade Assistência ao Código não podia ser preciso. Então, o IDE tinha que usar uma inteligência de segundo plano para descobrir o conteúdo do projeto e a configuração da Assistência ao Código e analisar os arquivos corretos com as opções corretas. Infelizmente, essa inteligência armazenava seus dados de uma forma não adequada ao uso de VCS.


=== Opções do Compilador

O problema do compilador reside no fato de as opções do compilador usadas para criar um projeto poderem ser muito específicas para a máquina em que você compila seu projeto. Por exemplo, a compilação OpenJDK usa `ALT_BOOTDIR`, que deve ser definido para o caminho para o meu JDK. Esse caminho pode ser diferente, mesmo em máquinas com o mesmo sistema operacional. O IDE armazena todas as opções do compilador em metadados do projeto; sem conhecer essas opções, ele não poderá analisar seu código da próxima vez e ser preciso o suficiente.

Quando alguma informação da máquina ou específica do usuário entra no VCS, os metadados do projeto são alterados depois que outro usuário o verifica e cria um projeto (novas opções são armazenadas), embora o usuário não tenha feito alterações no projeto.


== Lista de Variáveis do Ambiente

Para projetos do código existente ou de binário, você pode especificar a lista de variáveis do ambiente que serão usadas no armazenamento de metadados do projeto. Quando o IDE armazena as opções do compilador e um valor de opção coincide com um valor de variável, serão escritas macros.

Considere o exemplo a seguir. As variáveis `ALT_BOOTDIR=/usr/jdk/latest` e `ALT_BOOTDIR` são listadas no campo mencionado acima no meu ambiente. Se o IDE percebe que a opção `-I/usr/jdk/latest/include` foi usada durante a compilação de um arquivo, ele irá armazenar o `${ALT_BOOTDIR}/include` nos metadados do projeto.

O assistente Configurar Assistência ao Código também funciona por configuração: ele altera somente a configuração que está atualmente ativa. Portanto, é possível executá-lo separadamente para cada configuração e obter diferentes definições de assistência ao código para diferentes plataformas.


== Configurando a Assistência ao Código Quando Você não Consegue Construir o Projeto

O assistente Configura Assistência ao Código é mais eficiente se você compila o código com informações de depuração. As melhores opções são `-g3 -gdwarf-2` para compiladores GNU e apenas `-g` para compiladores Sun.

Caso seu projeto ainda não tenha sido compilado ou se ele não contiver informações de depuração, o assistente Configurar Assistência ao Código tem um modo especial denominado Pesquisar sistema de arquivos para arquivos de cabeçalho C/C++. Nesse modo, o NetBeans IDE tenta solucionar diretivas include com falha procurando cabeçalhos no sistema de arquivos. Para esse fim, o assistente permite inserir o caminho para a procura de cabeçalhos. Por default, é uma raiz do código-fonte do projeto.


== Macros Transitórias

Outro elemento que pode alterar os metadados do projeto inesperadamente são as macros (opções `-D`) voláteis. Por exemplo, uma macro que dependa de uma data ou nome de usuário atual. Armazenar esses valores de macro altera os arquivos de metadados do projeto, mas isso não faz muito sentido.

Você pode especificar a lista dessas macros a ignorar no campo "Macros transitórias". Isso impede o IDE de armazenar esses valores de macro nos metadados do projeto. As macros devem ser especificadas na forma macro=valor. Esta é uma tela das propriedades de um projeto:

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


== Projetos Gerenciados

Nos projetos gerenciados (projetos "Aplicação C/C++", "Biblioteca Dinâmica C/C++" ou "Biblioteca Estática C/C++"), é possível usar também as variáveis de ambiente para especificar opções do compilador. Elas devem ser precedidas de um cifrão e inseridas entre chaves, desta forma: `${ALTBOOTDIR}/include`.


== Mais Informações sobre C/C++/Suporte Fortran

* Consulte link:https://netbeans.org/kb/trails/cnd.html[+Trilha de Aprendizado C/C+++] para obter mais informações sobre o uso das funcionalidades do NetBeans IDE.
* Entre no link:http://forums.netbeans.org/cnd-users.html[+Fórum de Usuário do NetBeans C/C+++] para participar de discussões relacionadas ao desenvolvimento de C/C++ usando o NetBeans IDE ou pedir ajuda.
* Você pode arquivar um bug ou sugerir aprimoramentos para o link:https://netbeans.org/bugzilla/enter_bug.cgi?component=cnd[+Bugzilla+] (é necessário ter registro no netbeans.org).
* Para obter informações sobre como usar pacotes de controle de versão populares com o NetBeans IDE, consulte " link:http://www.oracle.com/pls/topic/lookup?ctx=nb7400&id=NBDAG234[+Aplicando Controle de Versão às Aplicações com Controle de Versão+]" em _Desenvolvendo Aplicações com o NetBeans IDE_.
link:mailto:users@cnd.netbeans.org?subject=subject=Feedback:%20Storing%20NetBeans%20C/++%20Projects%20Under%20Version%20Control%20System[+Enviar Feedback neste Tutorial+]
