É um sistema que registra as mudanças feitas em um arquivo ou um conjunto de arquivos ao longo do tempo de forma que você possa recuperar versões específicas
Funcionalidades
Permite acompanhar as alterações desde as versões antigas.
É possível detectar e mesclar alterações nos mesmos arquivos, além de identificar conflitos.
GIT
Criado em 2005 por Linus Torvalds.
É usado para desenvolver o kernel do linux.
GitHub
Criado em 2008, é uma aplicação web que possibilita a hospedagem de repositórios Git.
Serve também como rede social para programadores
Instalação
Para Sistema Operacional Windows acesse este link:
Quando você faz uma alteração em um arquivo e não executa o git add você pode desfazer a alteração do arquivo usando o comando:
git checkout -- nomeArquivo.ext
O comando desfaz as alterações ainda não ratreadas, que ainda não estão na área de stage.
Se deletou o arquivo por acidente e não adicionou na área stage, para recuperar o arquivo você pode usar o camando:
git checkout -- nomeArquivoDeletado.ext
Desfazendo mudanças já rastreadas
Se alterou o arquivo e executou o git add não adianta realizar o git checkout, use o seguinte comando:
git reset -- nomeArquivo.ext
Esse comando retira o arquivo da área de stage e preserva o que foi alterado
ATENÇÃO!!!!!
Se invocarmos o comando git reset sem nenhum parâmetro, serão retirados todos os arquivos da área de stage. As alterações efetuadas nesses arquivos serão preservadas.
Repositório Remoto
Em uma empresa, lógico que todos os computadores estarão conectados em rede, então escolhe um para ser o servidor e neste crie uma pasta para o projeto e execute o seguinte comando:
git init --bare nomeProjeto.git
O parâmetro --bare serve para que o Git não crie um working tree (diretório de trabalho), impedindo que commits sejam efetuados diretamente no servidor.
Adicionando Repositório Remoto
É possível enviar os commits efetuados no nosso repositório local para o repositório remoto. Mas antes disso é preciso, de alguma maneira, indicar ao Git onde está localizado o repositório remoto.
Para ensinar ao Git onde se encontra o nosso repositório remoto, devemos utilizar o comando git remote add , no qual informa o endereço do repositório remoto.
Para listar os repositórios utilize o seguinte comando: git remote.
Para exibir uma lista de repositórios e seus respectivos endereço: git remote -v
Enviando commits para o repositório remoto
Para enviar os commits locais, que ainda não existem no servidor, devemos utilizar o comando git push , informando o name do repositório remoto, no nosso caso servidor, seguido de master:
git push servidor master
Clonando Repositório Remoto
Para obtermos uma cópia de um repositório Git, devemos utilizar o comando git clone informando a URL do repositório a ser clonado:
A sincronização do repositório local com o servidor é feita com o uso do comando git pull , onde devemos informar o name do repositório remoto que queremos sincronizar, e o nome da branch local a ser atualizada:
$ git pull servidor master
Para enviar os comits locais para o servidor usamos o seguinte comando: