GIT Prof. Rafael Sandim
Controle de Versões Temos um projeto onde temos vários arquivos e vários desenvolvedores trabalhando no mesmo projeto Como realizar alterações? Como sincronizar as alterações dos outros desenvolvedores? Como enviar as suas alterações para outros desenvolvedores?
Possibilidades... Utilizar um Pendrive Todos os arquivos do projeto; Alternativa inviável! Pasta Compartilhada através de um Servidor Todos tem acesso a pasta para realizar edições Quais desenvolvedores fizeram alterações em quais arquivos? Quais alterações foram feitas se eu quero comparar uma versão do arquivo de um desenvolvedor para a versão do outro? E se vários desenvolvedores precisam alterar o mesmo arquivo? Softwares de controle de versão
Softwares de Controle de Versão O processo de vários desenvolvedores trabalhando em um mesmo projeto, em cima dos mesmos arquivos, é um trabalho complexo, justamente para resolver esse problema existem softwares especializados na tarefa de controlar a versão dos nossos códigos fontes. CVS Subversion Git
Git Instalar o Git http://git-scm.com/ Utilizaremos o github.com como servidor do nosso repositório Agora criaremos nossa conta no github.com Acesse pelo seu navegador predileto: https://github.com
Pronto! Bom temos a conta do GitHub. Agora precisamos criar uma chave pública em nosso computador, que permitirá que o GitHub nos autentique e saiba que somos nós quem estamos utilizando o GitHub. Para criar a chave pública, faremos:
Devemos abrir o arquivo id_rsa.pub Copiar todo o conteúdo Voltar ao github.com
Agora o GitHub tem como nos autenticar!
Vamos testar a instalação Para isso, copiaremos um repositório de um outro desenvolvedor. Abra o navegador no seguinte GitHub https://github.com/jcfonsecagit/repositorio
Vamos testar a instalação
Comando Clone Copia os dados de um repositório de código para o diretório local escolhido git clone endereço-do-repositório.git
Comando Tag Mostra-nos todas as versões que definimos para o nosso projeto. Na pasta do repositório digite: git tag -l
Comando Checkout Verifica como estava o projeto em determinada versão Na pasta do repositório digite: git checkout numero_da_versão
Comando Diff Compara duas versões de tags do repositório Na pasta do repositório digite: git diff numero_da_versão_01 numero_da_versão_02
Comando Blame Nos informa quem editou cada linha de um arquivo específico e o momento que edição ocorreu Na pasta do repositório digite: git blame nome_do_arquivo
Comando Init: Iniciando um novo repositório O Git é uma ferramenta de controle de versão baseadas em arquivos, ou seja, podemos associar uma pasta diretamente a um repositório. Mas como é uma pasta qualquer do nosso computador, precisamos indicar que a pasta será um repositório. Para isso fazemos:
Comando Init: Iniciando um novo repositório Se você ir aonde criou a pasta através do Windows Explorer, encontrará o seguinte diretório: Agora dentro deste diretório podemos criar todo nosso projeto. Começarei, a priori, criando apenas um arquivo html. Um index.html
Comando Init: Iniciando um novo repositório Aqui está o conteúdo do arquivo
Comando Ls-files Mas será que o Git detecta nosso arquivo recém criado? Para isso, podemos verificar através do comando git ls-files.
Comando Status Nosso arquivo ainda não foi detectado, e para ver todos os arquivos que precisam ser adicionados ao GIT LS-FILES, digite git status. Com isso podemos ver que nosso arquivo index.html ainda está na lista de arquivos não rastreados pelo Git, ou seja, o Git não controla as alterações do arquivo.
Comando Add Com o comando git add podemos informar ao Git que ele deve rastrear as modificações realizadas nos arquivos informados. Note que após darmos o comando git add, o comando git status tem seu resultado modificado, agora o Git está acompanhando as modificações realizadas no arquivo index.html e o arquivo está pronto para ser commitado.