... | ... | @@ -2,94 +2,102 @@ Esta página descreve a ferramenta Git e faz parte do [Catálogo do LabES](../ho |
|
|
|
|
|
## O que é?
|
|
|
|
|
|
O Git é um sistema de controle de versão, ou seja, ele armazena os códigos em um repositório e divide as alterações feitas em _commits_, para proporcionar acesso a versões anteriores do programa. Ele também permite trabalhar em um código que não seja o principal, por meio de _branchs_ (ramos), a fim de evitar modificar o código-fonte com atualizações incompletas ou defeituosas.
|
|
|
O Git é um sistema de controle de versão, ou seja, ele armazena os códigos em um repositório e divide as alterações feitas em _commits_, para proporcionar acesso a versões anteriores do programa. Ele também permite trabalhar em um código que não seja o principal, por meio de _branches_ (ramos), a fim de evitar modificar o código-fonte com atualizações incompletas ou defeituosas.
|
|
|
|
|
|
Ele é o sistema de controle de versão mais popular, utilizado por diversas empresas para organização de projetos. O Git também simplifica o compartilhamento de arquivos em um projeto, pois é possível clonar o repositório e, assim, ter acesso à versão mais recente do código trabalhado instantaneamente.
|
|
|
|
|
|
|
|
|
## Quando se aplica?
|
|
|
|
|
|
A utilização do Git se estende por todo o desenvolvimento do software, pois ele pode ser utilizado para desenvolver e atualizar funções. Portanto, se aplica a todos os momentos que modificações ou adições ocorrerem nos arquivos de código.
|
|
|
|
|
|
|
|
|
## Como instalar?
|
|
|
|
|
|
A instalação depende do sistema operacional.
|
|
|
|
|
|
Para Linux:
|
|
|
|
|
|
Distribuição Fedora - > `$ sudo dnf install git-all`
|
|
|
* Distribuição Fedora: `$ sudo dnf install git-all`;
|
|
|
|
|
|
Distribuição Debian -> `$ sudo apt install git-all`
|
|
|
* Distribuição Debian: `$ sudo apt install git-all`.
|
|
|
|
|
|
Para MacOS:
|
|
|
|
|
|
`$ git --version`
|
|
|
* Se você instalar o Xcode, o git também é instalado. Verifique com o comando: `$ git --version`;
|
|
|
|
|
|
Para Windows:
|
|
|
|
|
|
É possível instalar no site [Downloading Package](https://git-scm.com/download/win)
|
|
|
* Caso contrário, você pode instalar o [HomeBrew](https://brew.sh/) e depois instalar o git com: `brew install git`.
|
|
|
|
|
|
## Como instalar?
|
|
|
|
|
|
Na linha de comando, utilize cd para ir ao diretório do repositório git existente, ou o que deseja criar.
|
|
|
Para Windows:
|
|
|
|
|
|
|
|
|
* É possível instalar a partir de um download [do site oficial](https://git-scm.com/download/win);
|
|
|
|
|
|
Como iniciar um repositório:
|
|
|
* Como alternativa, pode-se usar um instalador mais simples disponível em [gitforwindows.org](https://github.com/git-for-windows/git/releases/latest).
|
|
|
|
|
|
Caso o repositório ainda não exista, pode-se criá-lo com o comando:
|
|
|
|
|
|
`git init`
|
|
|
## Como usar/aplicar?
|
|
|
|
|
|
Porém, se já existir, há a opção de cloná-lo para sua máquina utilizando a instrução abaixo, no lugar de <repositório> utilize o link deste. Todos os arquivos serão baixados.
|
|
|
Na linha de comando, utilize cd para ir ao diretório do repositório git existente, ou o que deseja criar.
|
|
|
|
|
|
`git clone <repositório>`
|
|
|
### Como iniciar um repositório:
|
|
|
|
|
|
|
|
|
Caso o repositório ainda não exista, pode-se criá-lo com o comando:
|
|
|
|
|
|
Outras instruções úteis para iniciar são:
|
|
|
`git init`
|
|
|
|
|
|
`git status` : Lista os arquivos e a situação deles em relação ao último _commit_.
|
|
|
Porém, se já existir, há a opção de cloná-lo para sua máquina utilizando a instrução abaixo, no lugar de `<repositório>` utilize o endereço (URL) deste. Todos os arquivos serão baixados.
|
|
|
|
|
|
`git pull` : Antes de modificar algum arquivo, é bom ter certeza que o código trabalhado é o mais recente, essa instrução atualiza todos os arquivos no seu repositório remoto.
|
|
|
`git clone <repositório>`
|
|
|
|
|
|
|
|
|
### Outras instruções úteis para iniciar:
|
|
|
|
|
|
Como criar/mudar de branch:
|
|
|
* `git status`: lista os arquivos e a situação deles em relação ao último _commit_;
|
|
|
|
|
|
As branches permitem que o programador modifique o código em um espaço que não seja o código-fonte, a fim de evitar mudanças não testadas e que podem resultar em erros.
|
|
|
* `git pull`: antes de modificar algum arquivo, é bom ter certeza que o código trabalhado é o mais recente, essa instrução atualiza todos os arquivos no seu repositório remoto;
|
|
|
|
|
|
`git branch` : Lista todas as branchs do seu repositório.
|
|
|
* `git log -10`: lista os últimos 10 _commits_ do repositório. Substitua o número `10` pelo número de _commits_ que deseja ver.
|
|
|
|
|
|
`git checkout -b <nome da nova branch>` : Cria e muda para uma nova branch.
|
|
|
### Como criar/mudar de branch:
|
|
|
|
|
|
`git checkout <branch>` : Muda para a branch. Caso haja mudanças na branch atual, é necessário fazer o _commit_ das mudanças antes de mudar.
|
|
|
As _branches_ permitem que o programador modifique o código em um espaço que não seja o código-fonte, a fim de evitar mudanças não testadas e que podem resultar em erros.
|
|
|
|
|
|
`git merge <branch que será fundida>`: Funde outra branch na sua atual
|
|
|
* `git branch`: lista todas as _branches_ do seu repositório;
|
|
|
|
|
|
|
|
|
* `git checkout -b <nome da nova branch>`: cria e muda para uma nova _branch_;
|
|
|
|
|
|
Como salvar as mudanças:
|
|
|
* `git checkout <branch>`: muda para a _branch_. Caso haja mudanças na _branch_ atual, é necessário fazer o _commit_ das mudanças antes de mudar;
|
|
|
|
|
|
`git add <arquivo>` : Adiciona um arquivo especificado para o próximo commit.
|
|
|
* `git merge <branch que será fundida>`: funde outra _branch_ na sua atual.
|
|
|
|
|
|
`git add --all` : Adiciona todos os arquivos para o próximo commit.
|
|
|
### Como salvar as mudanças:
|
|
|
|
|
|
`git commit -m “mensagem breve”` : Faz o commit das mudanças.
|
|
|
* `git add <arquivo>`: adiciona um arquivo especificado para o próximo _commit_;
|
|
|
|
|
|
`git push <remote> <branch>` : Salva no repositório central (remote ou _origin_) as mudanças feitas na sua máquina.
|
|
|
* `git add --all`: adiciona todos os arquivos para o próximo _commit_;
|
|
|
|
|
|
* `git commit -m "mensagem breve"`: faz o _commit_ das mudanças;
|
|
|
|
|
|
## Como usar/aplicar?
|
|
|
* `git push <remote> <branch>`: salva no repositório central (_remote_ ou _origin_) as mudanças feitas na sua máquina.
|
|
|
|
|
|
A utilização do Git se estende por todo o desenvolvimento do software, pois ele pode ser utilizado para desenvolver e atualizar funções. Portanto, se aplica a todos os momentos que modificações ou adições ocorrerem nos arquivos de código.
|
|
|
|
|
|
[## Lições aprendidas a partir do uso no LabES]: #
|
|
|
|
|
|
|
|
|
## Perguntas frequentes
|
|
|
|
|
|
### O que é a `<remote>` ?
|
|
|
### O que é a `<remote>`?
|
|
|
|
|
|
É o nome da conexão feita entre o repositório clonado e sua máquina, automaticamente denominada de _origin_.
|
|
|
|
|
|
- É o nome da conexão feita entre o repositório clonado e sua máquina, automaticamente denominada de origin.
|
|
|
|
|
|
## Referências
|
|
|
|
|
|
- [Tutoriais e treinamento do Git | Atlassian Git Tutorial](https://www.atlassian.com/br/git/tutorials)
|
|
|
- [1.5 Getting Started - Installing Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git)
|
|
|
- [Tutoriais e treinamento do Git | Atlassian Git Tutorial](https://www.atlassian.com/br/git/tutorials);
|
|
|
- [1.5 Getting Started - Installing Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git).
|
|
|
|
|
|
|
|
|
## Autores(as)
|
|
|
|
|
|
- @amandaapolinario (conteúdo);
|
|
|
- @luanaalmeida (formatação);
|
|
|
- @vitorsouza (revisão). |