git basico

Post on 24-Jun-2015

274 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Bernadete, Edmilson e Lucas

Seminário em Computação IV

2005: a relação com a companhia do BitKeeperfoi interrompida.

Linus Torvalds e a comunidade Linux iniciaram o desenvolvimento do

Histórico

1991–2002: o projeto do kernel do não utilizavauma ferramenta para o controle de versão.

2002: o projeto começou a usar a ferramenta

Visão Geral

A maioria dos sistemas de controle de versão pensam na informação que eles guardam como um conjunto de arquivos e mudanças realizadas ao longo do tempo.

Visão Geral

No Git, cada diretório de trabalho Git é um repositório com todos os históricos e habilidade total de controle das revisões, tornando quase todas as operações locais.

Portabilidade

Darwin

Interfaces, Ferramentas e Plugins

mysysgit

Cygwin TortoiseGit NbGit EGit, JGit GitX

Git Extensions Git# Giggle Gitorious SmartGit

Pyrite GitCola DotGit Qt CreatorPyjamasGitWeb

QGit

TortoiseGit

Cliente do Git para Microsoft Windows.

Código aberto, licenciado sob GNU General Public License.

Possui integração com o Windows Shell e Windows Explorer e independência de ambiente de desenvolvimento integrado.

Repositórios Remotos

GNU Savannah

GitHub

Serviço de Hospedagem Web Compartilhado para projetos que usam o Git.

Possui planos comerciais e gratuitos (para projetos de código aberto).

Projetos que usam Git

Wine

Instalação

Está disponível online para download gratuitamente.

Basta seguir os passos para a instalação.

Settings

Permite realizar uma série de configurações no ambiente Git.

Adicionar Repositórios Remotos

Pode-se trabalhar com mais de um repositório remoto.

O primeiro repositório recebe o nome de ORIGIN.

Config

Utilizado para configurar sua identidade (o nome e o e-mail).

Essas informações são utilizadas no Commit.

Help

Traz informações sobre o TortoiseGit.

Create repository here

Init: Cria um novo subdiretóriochamado .git quecontem todos osarquivos de repostitórionecessários.

Clone Pega todas as

versões de todosos aquivos do projeto e realiza o check out dacópia de trabalhoda última versão.

Realizando Mudanças

O ciclo de vida dos estados dos arquivos pode ser visto no diagrama abaixo:

Status

Determina em qualestado está cada arquivo.

Add

Marca o arquivo paraser incorporado e adicionado no próximo commit.

Ignore

.gitignore: listaos padrões paraos arquivos osquais vocêdeseja ignorar e nem mesmo vero estado.

Diff

Compara o que está na cópia de trabalho com o que está no repositório local.

Commit

Envia as modificações para o repositório local.

Delete Delete: Apaga o

arquivo do repositório local e da cópia de trabalho.

Delete (KeepLocal): Apaga o arquivo somente do repositório local.

Rename

Renomeia o arquivo.

Log

Lista os commitsrealizados no repositório.

Log

Apresenta o que foi alterado no commit.

Log

O comando log no Git possui algumas opções que permitem apresentar apenas um subconjunto de commits:

git -<n>

git --since e git --after

git --until e git --before

git --author

git --commiter

Amend

1. Muda a última mensagem de commit caso nenhuma mudança tenha sido feita após o último commit.

2. Acrescenta novas mudanças feitas na cópia de trabalho ao último commit.

1

2

Revert

Desfaz as mudanças feitas em um arquivo ou diretório, deixando exatamente como era após o último Commit.

teste.txt modificado Revert...

Fetch

Abaixa para o repositório local todas as mudanças feitas no repositório remoto desde o último PULL.

Você poderá ver as alterações antes de atualizar seu diretório de trabalho clicando no botão Rebase.

Fetch - Rebase

Mostra as modificações feitas no repositório remoto e dar a opção de atualizar o seu repositório local ou deixá-lo como está.

Pull

Equivale a um FETCH seguido de um MERGE.

Atualiza seu diretório de trabalho com o repositório remoto.

As atualizações serão aplicadas imediatamente, caso não haja conflitos.

Push

Envia para o repositório remoto as mudanças feitas no seu diretório de trabalho.

Tags

Git possui dois tipos de Tags:

Lightweight tag:

É apenas um ponteiro para um determinado commit. Nenhuma informação adicional é armazenada.

No TortoiseGit é criada quando nenhuma mensagem é adicionada na criação tag.

Annotated tag:

É armazenada como um objeto no banco de dados do Git e guarda o autor, a mensagem, o timestamp.

No TortoiseGit é criada quando se adiciona uma mensagem na criação da tag.

Inserindo Tags

TortoiseGit Show log

Inserindo Tags

Lightweight tag

Inserindo Tags

Annotated tag

EXEMPLO

top related