diff --git a/cap01.md b/cap01.md
deleted file mode 100644
index c9cf86e7716365643d277fb6260129819d8f71e8..0000000000000000000000000000000000000000
--- a/cap01.md
+++ /dev/null
@@ -1,49 +0,0 @@
-# Tutorial de Git
-PET Estatística UFPR  
-
-
-
-Sistemas de controle de versão
-
-Inicialmente, podemos dizer que Git é um Sistema de Controle de Versão, 
-que permite ao programador armazenar diversas cópias de versão do seu 
-trabalho, restaurar versões anteriores, sincronizar entre diversos 
-computadores de trabalho e trabalhar colaborativamente com outros 
-programadores. Só com essas possibilidades já faz do Git uma ferramenta 
-muito útil a quem programa. Mas o Git é muito mais! É possível utilizar 
-o Git através do Shell (linha de comando) ou através de diversas 
-interfaces gráficas e até mesmo dentro do Rstudio. Você pode integrar 
-seu projeto com o Github ou Gitlab e disponibilizar os arquivos na web. 
-Assim, você pode acessá-los e até editar seus arquivos via navegador. 
-Pode deixar os arquivos públicos e disponibilizar seu código à 
-comunidade de programadores. Outras pessoas podem até vir a colaborar 
-nos seus projetos. Neste conceito, você pode fazer uso ou colaborar com 
-projetos de outros programadores! Acompanhar o desenvolvimento de 
-projetos que sequer foram lançados, fazer sugestões, tirar dúvidas e 
-entrar em contato direto com equipes e desenvolvedores. Isso transforma
-o Github e Gitlab numa rede social de programadores!
-
-O Git não é o único sistema de controle de versão. Nem foi o primeiro. 
-Os primeiros sistemas de controle de versão foram lançados na década 
-de 70. Há sistemas abertos e proprietários. E também, sistemas que 
-trabalham somente de forma local, cliente-servidor ou sistema 
-distribuído. Dentre os sistemas abertos, os mais conhecidos são o 
-Apache Subversion (SVN), Mercurial, Git, Veracity e Bazzar. Mas, porque 
-tantos sistemas foram desenvolvidos? Cada sistema foi desenvolvido 
-buscando resolver os mesmos problemas de diferentes formas. A comunidade
-desenvolvedora do kernel (núcleo) do Linux utilizava o BitKeeper, um 
-software proprietário que decidiu revogar a licença gratuita. Linus 
-Torvalds, desenvolvedor do primeiro kernel, estudou os diversos 
-softwares de controle de versão para ser o substituto do BitKeeper. 
-Mas nenhum software atendia as necessidades, principalmente na 
-performance de um projeto tão grande. Então, ele iniciou o 
-desenvolvimento do software que ele chamou de Git e em menos de dois 
-meses todo o gerenciamento do kernel já estava transferido para o 
-novo sistema.
-
-Então, utilizar o Git é a garantia de um sistema robusto de controle de 
-versionamento. Um sistema aberto e muito utilizado por programadores, 
-estatísticos e cientistas de dados.
-
-Seja você mais um desenvolvedor a resolver os seus problemas e 
-participar desta comunidade.
diff --git a/cap02.md b/cap02.md
deleted file mode 100644
index dd9c69341c6caf05b149480a6c889ad4c511ff70..0000000000000000000000000000000000000000
--- a/cap02.md
+++ /dev/null
@@ -1,336 +0,0 @@
-# Capítulo 2: Instalação e Configuração
-Jhenifer  
-29/10/2015  
-
-
-
-## Instalação
-
-#### Windows
-Usuários Windows devem visitar [Git for Windows](https://git-for-windows.github.io/ "Git"), clicar em "Download" e baixar o arquivo ".exe".
-
-Após o download, execute o arquivo e você terá essa tela: 
-
-![](./images/inst01.png)
-
-
-
-Como de costume, clique em "Next". Para dar continuidade a instalação 
-aceite a licença do Git.
-
-O diretório apresentado na figura abaixo vem como default, porém é 
-possível alterar a instalação para um diretório de sua preferência. 
-Depois de selecionado o caminho da instalação, clique em "Next" para 
-prosseguir.
-
-![](./images/inst02.png)
-
-
-
-Na tela de componentes podemos definir atalhos, integração ao menu de 
-contexto do Windows Explorer, associação de arquivos e uso de font 
-TrueType. 
-
-O Git Bash é o prompt de comandos próprio, que além dos comandos Git 
-também fornece alguns comandos Unix que podem ser bem úteis. Já o Git 
-GUI é uma interface gráfica para trabalhar com Git. É recomendável a 
-seleção de ambos os itens. 
-
-Depois de selecionado os componentes de sua 
-preferência, clique em “Next” para dar continuidade.
-
-![](./images/inst03.png)
-
-
-
-Aqui, o instalador nos oferece a oportunidade de mudar o nome da pasta 
-no menu iniciar, recomenda-se deixar o padrão para fácil localização 
-posteriormente.
-
-![](./images/inst04.png)
-
-
-
-Na tela de configuração "PATH environment", podemos escolher as formas 
-de integração do Git com o sistema.  
-A primeira opção nos permite usar o Git apenas pelo "Git Bash" (é o 
-prompt de comando do Git), a segunda opção nos possibilita executar os 
-comandos no "Git Bash" e no prompt de comando do Windows (cmd.exe), e a
-terceira opção é a junção das duas de cima, porém alguns comandos do 
-Windows serão substituídos por comandos Unix com mesmo nome.  
-Essa última opção não é recomendada, e a primeira opção é a 
-desejável. 
-
-![](./images/inst05.png)
-
-
-
-Abaixo, a configuração de quebra de linha. Windows e sistemas Unix 
-(Linux, Mac) possuem formatos diferentes de quebra de linha em arquivos 
-de texto. Se você escreve um código com quebras de linha no formato 
-Windows, outra pessoa pode ter problemas ao abrir o mesmo arquivo em 
-um Linux, e vice-versa. Esta opção, portanto, permite normalizar isso.  
-A primeira opção converte automaticamente os arquivos para padrão Windows 
-quando receber algum arquivo e converterá para padrão Unix quando 
-“comitar” (enviar alterações) ao repositório. A segunda opção, 
-não faz nenhuma conversão ao receber arquivos, mas convertem 
-para padrão Unix ao “comitar”. 
-Já a terceira opção, o Git não fará nenhuma conversão.  
-Recomenda-se a seleção da opção "Checkout Windows-style, 
-commit Unix-Style line endings".
-
-![](./images/inst06.png)
-
-
-
-Aqui, a configuração do emulador de terminal para usar com o Git Bash.  
-A primeira opção utiliza o terminal MSys2 (Shell), que permite utilizar 
-comandos Unix no Windows. Já a segunda opção, utiliza o terminal 
-padrão do Windows. Recomendamos a primeira opção. 
-Feito isso, dê continuidade a instalação.
-
-![](./images/inst07.png)
-
-
-E por último, configurando ajustes de performance. Essa opção é para 
-habilitar o sistema de cache de arquivo.
-
-![](./images/inst08.png)
-
-
-Feito isso, “Next”, “Finish” e o Git está instalado.
-
-
-#### Linux
-
-Em qualquer sistema Linux, pode-se utilizar o gerenciador de pacotes da respectiva distribuição para instalar o Git.
-Basta executar o código de instalação de sua respectiva distribuição. 
-
-
-**Debian**
-
-Em uma sessão de terminal Linux de distribuições Debian (Ubuntu, Mint), 
-execute o código abaixo.  
-Adicione o ppa para obter a versão mais recente do Git.
-
-```sh
-sudo add-apt-repository ppa:git-core/ppa
-sudo apt-get update
-```
-
-Agora, execute o comando abaixo para instalação do Git.  
-Siga as instruções do prompt de comando, primeiro confirmando a instalação 
-dos pacotes e suas dependências, depois confirmando a instalação 
-do pacote git-core.
-
-```sh
-sudo apt-get install git git-core git-man git-gui git-doc \
-    ssh openssh-server openssh-client
-git --version
-```
-
-Para adicionar ferramentas complementares, execute:
-
-```sh
-sudo apt-get install gitk meld
-```
-
-
-**Arch**
-
-
-```sh
-pacman -S git openssh meld
-git --version
-```
-
-
-**Fedora**
-
-
-```sh
-Yum install git
-git --version
-```
-
-Usuários de outra versão do Linux podem visitar [Download for Linux](https://git-scm.com/download/linux).
-
-
-#### MacOS
-Exitem duas maneiras de instalar o Git no Mac, uma pelo instalador e 
-outra através do MacPorts.
-
-**Utiizando o Instalador**
-
-O usuário deverá acessar [Download for Mac](http://git-scm.com/downloads), 
-clicar em "Download" e baixar o arquivo ".dmg".
-
-Após o download, é necessário clicar duas vezes para ter acesso ao pacote
-de instalação. Dentro do arquivo ".dmg", execute o arquivo ".pkg" para 
-iniciar a instalação. 
-Siga os passos até concluir a instalação. É recomendável utilizar a 
-instalação padrão. 
-
-Para testar a instalação, abra o terminal e digite o comando “git”. 
-A saída deverá ser similar à imagem:
-
-![](./images/inst09.png)
-
-**Utiizando o MacPorts**
-
-A maneira mais fácil de instalar Git no Mac é via 
-[MacPorts](http://www.macports.org), para isso basta executar o seguinte 
-comando:
-
-
-```sh
-sudo port install git-core
-```
-
-
-## Configurando Perfil
-As configurações vão determinar algumas opções globais do Git, sendo 
-necessário fazê-las apenas uma vez. 
-
-**Usuário**
-
-Os comandos abaixo vão configurar o nome de usuário e endereço de e-mail.
-Esta informação é importante pois é anexada aos commits que você realiza, 
-ou seja, as configurações ficarão associadas ao trabalho em desenvolvimento, 
-permitindo que os colaboradores/gestores do projeto identifiquem suas 
-contribuições.
-
-Caso o projeto seja individual, a importância de configurar usuário e 
-e-mail se mantém. Uma vez que se trabalha com duas ou mais máquinas, 
-a maneira de identificar a pessoa que está desenvolvendo o trabalho é 
-pelo nome de usuário.
-
-Em um terminal Bash, execute o código abaixo:
-
-```sh
-git config --global user.name "Knight Rider"
-git config --global user.email "batman@justiceleague.org"
-```
-
-A opção `--global` usará essa informação para todo projeto Git da máquina. 
-É possível fazer definições para cada projeto, ou seja, não globais. 
-Para isso é necessário executar o comando a seguir sem a opção `--global`.
-
-
-```sh
-git config user.name "Knight Rider"
-git config user.email "batman@justiceleague.org"
-```
-
-Uma vez configurado o perfil, o Git está pronto para uso.
-
-
-**Atalhos**
-
-Os atalhos no Git são chamados de *Alias*. Com ele podemos mapear comandos 
-que repetidamente usamos para algumas poucas teclas. Estes atalhos podem 
-ser criados de dois modos: através do comando no terminal ou editando 
-diretamente no arquivo `/.gitconfig`.
-
-* Pelo terminal:
-
-Execute o comando abaixo com o atalho de sua preferência e o nome completo 
-do camando o qual deseja criar o alias.
-
-
-```sh
-git config --global alias.nome_do_alias "comando inteiro"
-```
-
-Um exemplo bem simples é o seguinte:
-
-
-```sh
-git config --global alias.st "status"
-```
-
-Assim, ao executar git st é o mesmo que executar git status.
-
-Pelo método citado acima, o alias é adicionado automaticamente no seu arquivo `/.gitconfig`. 
-
-* Pelo arquivo `/.gitconfig`:
-
-Pode-se criar atalhos através de um bloco no seu arquivo de configuração. 
-Para isso, é necessário localizar o diretório do Git e adicionar a lista 
-de comandos desejada, como no exemplo:
-
-
-```sh
-[alias]
-  st = status
-  ci = commit
-  br = branch
-  co = checkout
-  df = diff
-```
-
-Assim que adicionar este bloco com os comandos de sua escolha, ele irá 
-funcionar imediatamente.
-
-Segue abaixo os caminhos para encontrar o arquivo `/.gitconfig` nos sistemas operacionais:
-
-+ Windows:  
-1 - C:\\Pasta_do_seu_projeto\\.git\\config  
-2 – C:\\Documents and Settings\\Seu_usuario\\.gitconfig  
-3 – C:\\Arquivos de programas\\Git\\etc\\gitconfig  
-
-+ Mac:  
-1 - /Pasta_do_seu_projeto/.git/config  
-2 – /Users/Seu_usuario/.gitconfig  
-3 – /usr/local/git/etc/gitconfig  
-Obs: Os arquivos de configuração do Git não tem extensão.
-
-+ Linux:  
-Crie um arquivo como _sudo_ dentro da pasta etc/ com nome de gitconfig e 
-coloque os atalhos de sua escolha.  
-
-Não importa o método você utilize, suas configurações sempre ficarão 
-salvas no arquivo `/.gitconfig`.
-
-**Ignorar Arquivos**
-
-Usando o arquivo `.gitignore` podemos ignorar arquivos que não desejamos 
-versionar no repositório, pode ser feito por projeto e por usuário.
-Configurar um arquivo `.gitignore` antes de começar a trabalhar, 
-é importante, pois evita commits acidentais de arquivos que não deveriam 
-ir para o seu repositório Git.
-
-* Ignorar Arquivos por Projeto:
-
-Em todos os projetos que necessitam de um controle de versão há sempre 
-casos em que arquivos não precisam ser versionados. Para isso é preciso 
-criar um arquivo `.gitignore` no diretório raiz do projeto, o qual contém 
-padrões (pattern) que serão ignorados, cada padrão fica em uma linha 
-como no exemplo:
-
-
-```sh
-$ cat .gitignore
-*.[oa]
-*~
-```
-
-A primeira linha fala para o Git ignorar qualquer arquivo finalizado 
-em **.o** ou **.a** e a segunda linha ignora todos os arquivos que 
-terminam com um til **(~)**. Esses padrões podem serem feitos de acordo 
-com a necessidade de cada projeto.
-
-* Ignorar Arquivos por Usuário (Globalmente):
-
-Para não precisar criar uma lista de comandos para serem ignorados em cada 
-projeto, é possível ignorar arquivos em todos os repositórios. Para isso, 
-basta criar um arquivo `.gitignore` em seu diretório _home_ contendo os 
-padrões os quais deseja ignorar e executar o comando abaixo no terminal 
-a partir da pasta onde está localizado o arquivo `.gitignore`:
-
-
-```sh
-git config --global core.excludesfile ~/.gitignore
-```
-
-A partir disso, todos os arquivos que estão na lista serão ignorados pelo usuário.
diff --git a/cap03.md b/cap03.md
deleted file mode 100644
index 68c2dbcbaff505ae4d055140f031d7db1ad4992c..0000000000000000000000000000000000000000
--- a/cap03.md
+++ /dev/null
@@ -1,1724 +0,0 @@
-# Repositório Local
-Gabriel Sartori  
-29/10/2015  
-
-
-### Instruções do Git
-
-Neste capítulo, as instruções serão todas feitas no terminal mesmo que
-existam alternativas gráficas para as mesmas. Isso enfatiza no que está
-sendo feito além do fato de que no terminal todos devem ter os mesmos
-recursos e os comandos irão produzir os mesmos resultados, o que faz
-esse tutorial algo reproduzível. Para usufruir das ferramentas gráfica va até o capitulo 6 **link*.
-
-
-Já temos o Git devidamente e com credenciais (nome e email) e
-configurações aplicadas. Vamos então ver como o sistema de controle de
-versão acontece.
-
-Todas as instruções do Git são sinalizadas por começar com `git` seguido
-da instrução/comando e seus argumentos complementares, se
-existirem/necessários.
-
-
-
-
-```sh
-cd meu1repo ## Diretório de teste de comandos 
-```
-
-Antes de iniciarmos o repositório, vamos só verificar o cadastro. Se
-você já usa o Git ou fez os procedimento apresentados na primeira
-sessão, o comando abaixo vai retornar o nome e email usados e alguns
-definições adicionais, caso existam. Em caso de ainda não ter
-configurado o seu Git, informe o nome e email conforme apresentado na
-sessão anterior.
-
-
-
-```sh
-## Mostra as informações/definições do usuário.
-git config --list
-```
-
-```sh
-user.name=Knight Rider
-user.email=batman@justiceleague.org
-```
-
-Temos um diretório destinado ao projeto que será mantido sobre
-versionamento, então vamos iniciar um repositório Git nele.
-
-
-```bash
-## Inicia um repositório sob versionamento Git.
-git init
-```
-
-```
-
-O Git retorna a mensagem de inicilização do repositório. Nesse momento
-ele cria um diretório oculto `.git/` com subdiretórios que são o coração
-do sistema de versionamento. Você não deve modificar nada nesse
-diretório. É por essa razão que ele é oculto. Alterar o conteúdo pode
-prejudicar ou interromper o funcionamento do Git. Se você quiser
-encerrar o processo de versionamento fazendo com que esse diretório seja
-como qualquer outro diretório, é só excluir a diretório `.git/`. Cada
-subdiretório do `.git/` tem um propósito mas deixaremos os
-esclarecimentos para o futuro. Por agora vamos apenas conferir a sua
-estrutura.
-
-
-```bash
-## Mostra todo conteúdo do diretório.
-tree -a
-```
-
-```
-## .
-## └── .git
-##     ├── branches
-##     ├── config
-##     ├── description
-##     ├── HEAD
-##     ├── hooks
-##     │   ├── applypatch-msg.sample
-##     │   ├── commit-msg.sample
-##     │   ├── post-update.sample
-##     │   ├── pre-applypatch.sample
-##     │   ├── pre-commit.sample
-##     │   ├── prepare-commit-msg.sample
-##     │   ├── pre-push.sample
-##     │   ├── pre-rebase.sample
-##     │   └── update.sample
-##     ├── info
-##     │   └── exclude
-##     ├── objects
-##     │   ├── info
-##     │   └── pack
-##     └── refs
-##         ├── heads
-##         └── tags
-## 
-## 10 directories, 13 files
-```
-
-**NOTA**: o `tree` é um programa instalado a parte (*third party
-software*) que retorna arte ASCII representado a estrutura de
-diretórios. Se você usa distribuição Debian, instale com `sudo apt-get
-install tree`. Windows: [tree][].
-
-## Minha Primeira Sessão
-
-Vamos começar da maneira mais simples, criando um arquivo com uma linha
-de texto apenas. Bem, vale avisar que ao longo desse tutorial, os
-arquivos serão sempre bem pequenos e dificilmente realistas, mas como o
-enfoque está no funcionamento, não haverá prejuízo.
-
-Vamos criar o arquivo com conteúdo também pelo terminal. Se você
-preferir, abra um editor de texto favorito (Emacs, Gedit, Geany,
-RStudio, Bloco de Notas, etc) e faça algo mais elaborado.
-
-
-## Comandos De Verificação
-git diff
-```
-
-```
-## diff --git a/README.txt b/README.txt
-## index 07d3585..d0af1d3 100644
-## --- a/README.txt
-## +++ b/README.txt
-## @@ -1 +1,5 @@
-##  Meu primeiro repositório Git
-## +
-## +A filosofia do Linux é 'Ria na face do perigo'.
-## +Ôpa. Errado. 'Faça você mesmo'. É, é essa.
-## +                            -- Lunus Torvalds
-```
-
-Vamos aplicar o primeiro *add* ao `porqueLinux.txt` para que ele começe
-a ser versionado. Perceba que ao adicioná-lo, as mudanças, no caso a
-criação do arquivo com contúdo, já são separadas para receber registro
-(*changes to be commited*).
-
-
-```bash
-## Adiciona o arquivo ao processo de reastreamento.
-git add porqueLinux.txt
-git status
-ref log
-
-```
-## On branch master
-## Changes to be committed:
-##   (use "git reset HEAD <file>..." to unstage)
-## 
-## 	new file:   porqueLinux.txt
-## 
-## Changes not staged for commit:
-##   (use "git add <file>..." to update what will be committed)
-##   (use "git checkout -- <file>..." to discard changes in working directory)
-## 
-## 	modified:   README.txt
-```
-
-
-```bash
-## Mensagem que registra as modificações adicionadas.
-git commit -m "Lista de inicial de o porquê usar o Linux."
-```
-
-```
-## [master 448b201] Lista de inicial de o porquê usar o Linux.
-##  1 file changed, 5 insertions(+)
-##  create mode 100644 porqueLinux.txt
-```
-
-
-```bash
-git status
-```
-
-```
-## On branch master
-## Changes not staged for commit:
-##   (use "git add <file>..." to update what will be committed)
-##   (use "git checkout -- <file>..." to discard changes in working directory)
-## 
-## 	modified:   README.txt
-## 
-## no changes added to commit (use "git add" and/or "git commit -a")
-```
-
-Ainda resta o `REAMDE.txt` para receber registro. Você não precisa fazer
-agora. Pode continuar editanto caso não tenha atingido uma quantidade de
-modificação merecedora de *commit*. Lembre-se que registros geram
-conteúdo no diretório `.git`. Quanto mais *commits*, mais conteúdo
-gerado. Mas também, toda vez que você faz um *commit*, você define um
-ponto de retorno, um estado salvo, caso precise no futuro
-recuperar/visitar. O que é uma unidade de modificação comitável você irá
-definir aos poucos com a prática.
-
-
-```bash
-## Encaminha o arquivo para receber registro.
-git add README.txt
-git status
-```
-
-```
-## On branch master
-## Changes to be committed:
-##   (use "git reset HEAD <file>..." to unstage)
-## 
-## 	modified:   README.txt
-```
-
-
-```bash
-## Atribui mensagem de notificação.
-git commit -m "Adiciona frase do Linux Torvalds."
-```
-
-```
-## [master 41a3225] Adiciona frase do Linux Torvalds.
-##  1 file changed, 4 insertions(+)
-```
-
-Agora temos 3 *commits* e o *log* apresenta os *sha1* e as mensagens
-correspondentes aos mesmos. Com `--oneline` resumimos o *output* mostrando
-apenas o *sha1* e a mensagem de *commit*.
-
-
-```bash
-git log --oneline
-```
-
-```
-## 41a3225 Adiciona frase do Linux Torvalds.
-## 448b201 Lista de inicial de o porquê usar o Linux.
-## ffc1d12 Cria arquivo com título.
-```
-
-Por meio dos *sha1*, podemos aplicar o *diff* para visitarmos as
-modificações entre dois *commits*, não necessariamente consecutivos, por
-exemplo. Também podemos retroceder (*checkout*, *reset*, *revert*) o
-projeto para alguns desses pontos.
-
-Abaixo instruímos o Git mostrar as diferenças para um *commit* atrás. A
-cabeça (*HEAD*) é o que se entende como estado mais recente. Usa-se o
-termo *HEAD* (cabeça) pois considera-se um crescimento do histórico
-debaixo para cima no qual um novo *commit* é colocado em cima dos demais
-(empilhado). O `HEAD@{0}` ou apenas `HEAD` representa o último registro
-feito. Não é necessário escrever o último `HEAD` na intrução abaixo.
-
-
-```bash
-git diff HEAD@{1}
-```
-
-```
-## diff --git a/README.txt b/README.txt
-## index 07d3585..d0af1d3 100644
-## --- a/README.txt
-## +++ b/README.txt
-## @@ -1 +1,5 @@
-##  Meu primeiro repositório Git
-## +
-## +A filosofia do Linux é 'Ria na face do perigo'.
-## +Ôpa. Errado. 'Faça você mesmo'. É, é essa.
-## +                            -- Lunus Torvalds
-```
-
-Agora inspecionado uma distância de 2 *commits* a partir do último. Aqui
-tem-se os dois arquivos envolvidos nesse intervalo de 2 *commits*. Com
-`--name-only` retorna-se só o nome dos arquivos.
-
-
-```bash
-git diff HEAD@{2} HEAD@{0}
-```
-
-```
-## diff --git a/README.txt b/README.txt
-## index 07d3585..d0af1d3 100644
-## --- a/README.txt
-## +++ b/README.txt
-## @@ -1 +1,5 @@
-##  Meu primeiro repositório Git
-## +
-## +A filosofia do Linux é 'Ria na face do perigo'.
-## +Ôpa. Errado. 'Faça você mesmo'. É, é essa.
-## +                            -- Lunus Torvalds
-## diff --git a/porqueLinux.txt b/porqueLinux.txt
-## new file mode 100644
-## index 0000000..8ecdfda
-## --- /dev/null
-## +++ b/porqueLinux.txt
-## @@ -0,0 +1,5 @@
-## +Por que usar o Linux?
-## +
-## +* É livre
-## +* É seguro
-## +* É customizavel
-```
-
-
-```bash
-git diff --name-only HEAD@{2} HEAD@{0}
-```
-
-```
-## README.txt
-## porqueLinux.txt
-```
-
-Vamos resolver logo o caso da palavra sem acento em
-`porqueLinux.txt`. Você abre o arquivo no seu editor de texto e modifica
-conforme necessário. A modificação compreende um linha apenas mas aí
-lembrei de mais coisas e acrescentei. O `git diff` mostra as
-diferenças. Epa! As diferenças não eram entre *commits*? O conteúdo
-adicionado ainda não recebeu notificação!
-
-
-
-
-```bash
-## Depois de corrigir palavras e adicionar conteúdo.
-git status
-```
-
-```
-## On branch master
-## Changes not staged for commit:
-##   (use "git add <file>..." to update what will be committed)
-##   (use "git checkout -- <file>..." to discard changes in working directory)
-## 
-## 	modified:   porqueLinux.txt
-## 
-## no changes added to commit (use "git add" and/or "git commit -a")
-```
-
-O Git sugere você aplicar *add* para preparar para *commit*. Caso as
-modificações sejam um engano e não mais desejadas, você pode
-desfazazê-las, abadonar a correção/inclusão das palavras usando
-`checkout`. Vamos aplicá-lo para ver como funciona.
-
-
-```bash
-## Palavras corrigidas e mais itens adicionados.
-less porqueLinux.txt
-```
-
-```
-## Por que usar o Linux?
-## 
-## * É livre
-## * É seguro
-## * É customizável
-## * Tem repositórios de software
-## * Atualização constante
-## * Desempenho
-```
-
-
-```bash
-## Abandona modificações feitas presentes no arquivo.
-git checkout -- porqueLinux.txt
-```
-
-
-```bash
-less porqueLinux.txt
-```
-
-```
-## Por que usar o Linux?
-## 
-## * É livre
-## * É seguro
-## * É customizavel
-```
-
-Bateu o arrependimento? Tem formas de poder retroceder com mudanças
-ainda não registradas mas mantendo a possibilidade de
-recuperá-las. Mostraremos em breve.
-
-**NOTA**: sempre que quiser testar um comando novo e não está seguro do
-que ele faz ou da extensão dos seus efeitos, faça uma cópia do projeto
-em outro diretório e experimente ele lá. Isso previne sabores amargos,
-pois algumas ações podem ser irreversíveis.
-
-
-```bash
-## Depois de desfazer as modificações no porqueLinux.txt
-git status
-```
-
-```
-## On branch master
-## nothing to commit, working directory clean
-```
-
-Vamos seguir com as modificações em `porqueLinux.txt` que corrigem o
-texto e acrescentam itens novos.
-
-
-
-
-```bash
-git status
-```
-
-```
-## On branch master
-## Changes not staged for commit:
-##   (use "git add <file>..." to update what will be committed)
-##   (use "git checkout -- <file>..." to discard changes in working directory)
-## 
-## 	modified:   porqueLinux.txt
-## 
-## no changes added to commit (use "git add" and/or "git commit -a")
-```
-
-O `diff` vazio compara o diretório de trabalho com o último registro
-(último *commit*). Quando você usa explicitamente na instrução `HEAD@{ }`
-seguido de número, então estão sendo comparadas versões
-"commitadas". Existem variantes de sufixo para usar no `HEAD` que são:
-
-  * `HEAD@{n}`
-  * `HEAD^n`
-  * `HEAD~n`
-
-em que `n` é um número inteiro não negativo. Cada sulfixo tem uma
-finalidade que não detalharemos agora. Visite: [git-caret-and-tilde][].
-
-
-```bash
-## Modificações no diretório vs último commit.
-git diff
-```
-
-```
-## diff --git a/porqueLinux.txt b/porqueLinux.txt
-## index 8ecdfda..8747d1e 100644
-## --- a/porqueLinux.txt
-## +++ b/porqueLinux.txt
-## @@ -2,4 +2,7 @@ Por que usar o Linux?
-##  
-##  * É livre
-##  * É seguro
-## -* É customizavel
-## +* É customizável
-## +* Tem repositórios de software
-## +* Atualização constante
-## +* Desempenho
-```
-
-
-```bash
-## Último commit vs dois ancestrais, usando ~.
-git diff HEAD~1 HEAD~0
-```
-
-```
-## diff --git a/README.txt b/README.txt
-## index 07d3585..d0af1d3 100644
-## --- a/README.txt
-## +++ b/README.txt
-## @@ -1 +1,5 @@
-##  Meu primeiro repositório Git
-## +
-## +A filosofia do Linux é 'Ria na face do perigo'.
-## +Ôpa. Errado. 'Faça você mesmo'. É, é essa.
-## +                            -- Lunus Torvalds
-```
-
-
-```bash
-## Último commit vs seu ancestral, usando @{}.
-git diff HEAD@{1} HEAD@{0}
-```
-
-```
-## diff --git a/README.txt b/README.txt
-## index 07d3585..d0af1d3 100644
-## --- a/README.txt
-## +++ b/README.txt
-## @@ -1 +1,5 @@
-##  Meu primeiro repositório Git
-## +
-## +A filosofia do Linux é 'Ria na face do perigo'.
-## +Ôpa. Errado. 'Faça você mesmo'. É, é essa.
-## +                            -- Lunus Torvalds
-```
-
-
-```bash
-## Último commit vs dois ancestrais.
-## git diff HEAD~2 HEAD~0
-git diff HEAD@{2} HEAD@{0}
-```
-
-```
-## diff --git a/README.txt b/README.txt
-## index 07d3585..d0af1d3 100644
-## --- a/README.txt
-## +++ b/README.txt
-## @@ -1 +1,5 @@
-##  Meu primeiro repositório Git
-## +
-## +A filosofia do Linux é 'Ria na face do perigo'.
-## +Ôpa. Errado. 'Faça você mesmo'. É, é essa.
-## +                            -- Lunus Torvalds
-## diff --git a/porqueLinux.txt b/porqueLinux.txt
-## new file mode 100644
-## index 0000000..8ecdfda
-## --- /dev/null
-## +++ b/porqueLinux.txt
-## @@ -0,0 +1,5 @@
-## +Por que usar o Linux?
-## +
-## +* É livre
-## +* É seguro
-## +* É customizavel
-```
-
-Para ficar claro daqui em diante, você pode ao invés de pedir `log`,
-pedir o `reflog` que incluí as referências em termos da sequência do
-mais rencente para os seus ancestrais.
-
-
-```bash
-## Mostra referências para commits os ancentrais.
-git reflog
-```
-
-```
-## 41a3225 HEAD@{0}: commit: Adiciona frase do Linux Torvalds.
-## 448b201 HEAD@{1}: commit: Lista de inicial de o porquê usar o Linux.
-## ffc1d12 HEAD@{2}: commit (initial): Cria arquivo com título.
-```
-
-
-```bash
-## Adiciona e commita.
-git add porqueLinux.txt
-git commit -m "Novos argumentos."
-```
-
-```
-## [master a2c3f0d] Novos argumentos.
-##  1 file changed, 4 insertions(+), 1 deletion(-)
-```
-
-O Git permite um nível de rastreabilidade bem fino. Veja por exemplo que
-é possível saber quem modificou e quando cada linha do arquivo e qual o
-correspondente *sha1* do *commit*.
-
-
-```bash
-## Mostra quem, onde e o que fez em cada arquivo.
-git blame README.txt
-```
-
-```
-## ^ffc1d12 (gabriel sartori 2015-11-24 14:31:29 -0200 1) Meu primeiro repositório Git
-## 41a32255 (gabriel sartori 2015-11-24 14:31:30 -0200 2) 
-## 41a32255 (gabriel sartori 2015-11-24 14:31:30 -0200 3) A filosofia do Linux é 'Ria na face do perigo'.
-## 41a32255 (gabriel sartori 2015-11-24 14:31:30 -0200 4) Ôpa. Errado. 'Faça você mesmo'. É, é essa.
-## 41a32255 (gabriel sartori 2015-11-24 14:31:30 -0200 5)                             -- Lunus Torvalds
-```
-
-
-## Fazendo cópias e trabalhando com ramos
-
-Existem várias formas de se trabalham com ramos. Geralmente os ramos são
-feitos sob demandas para adicionar uma característica ao projeto
-(*feature*) ou corrigir um *bug*. Alguns ramos, por outro lado, são
-ramos fixos destinados a receber o desenvolvimento dos ramos de
-demanda. Esses ramos são geralmente chamados de *devel* (*development*)
-e *release*. O ramo *master* é o default e em geral, para projetos
-grandes, o *master* só recebe versões funcionais do projeito, livre de
-bugs.
-
-Para criar um ramo, usandos `git branch` seguido do nome que se
-deseja. Vamos criar um ramo para adicionar mais arquivos ou modificações
-ao projeto.
-
-
-```bash
-## Lista ramos (all), locais e remotos.
-## git branch    ## Só ramos locais
-## git branch -r ## Só ramos remotos
-git branch -a ## Todos os ramos.
-```
-
-```
-## * master
-```
-
-
-```bash
-## Cria um ramo para adição de conteúdo, novo segmento.
-git branch feature01
-```
-
-
-```bash
-## Novo ramo criado aparece.
-git branch
-```
-
-```
-##   feature01
-## * master
-```
-
-
-```bash
-## Muda o HEAD de ramo.
-git checkout feature01
-```
-
-```
-## Switched to branch 'feature01'
-```
-
-
-```bash
-## Situação no novo ramo.
-git status
-```
-
-```
-## On branch feature01
-## nothing to commit, working directory clean
-```
-
-
-```bash
-## Histórico de commits.
-git log --oneline
-```
-
-```
-## a2c3f0d Novos argumentos.
-## 41a3225 Adiciona frase do Linux Torvalds.
-## 448b201 Lista de inicial de o porquê usar o Linux.
-## ffc1d12 Cria arquivo com título.
-```
-
-Veja que o novo ramo não começa no zero ou vazio (sem arquivos) e sim a
-partir do ramo que é seu ancestral, ou seja, ele começa a partir do
-último *commit* existente, por padrão. Vamos adicionar um arquivo e
-commitar. O comando `wget` permite baixar arquivos pelo terminal. Será
-baixado um arquivo com um função para calcular o fator de inflação de
-variância (*vif*, variance inflation factor) usado em modelos de
-regressão, disponível na página da [Professora Suely Giolo][].
-
-
-
-
-```bash
-## Baixando arquivo da internet. Uma função do R.
-wget 'http://people.ufpr.br/~giolo/CE071/Exemplos/vif.R'
-```
-
-
-```
-## --2015-11-24 14:31:30--  http://people.ufpr.br/~giolo/CE071/Exemplos/vif.R
-## Resolving people.ufpr.br (people.ufpr.br)... ???.??.???.??, 2801:82:8020:0:8377:0:100:20
-## Connecting to people.ufpr.br (people.ufpr.br)|???.??.???.??|:80... connected.
-## HTTP request sent, awaiting response... 200 OK
-## Length: 560
-## Saving to: ‘vif.R’
-## 
-##      0K                                                       100% 44,0M=0s
-## 
-## 2015-11-24 14:31:30 (44,0 MB/s) - ‘vif.R’ saved [560/560]
-```
-
-
-```bash
-## Situação do repositório após o download.
-git status
-```
-
-```
-## On branch feature01
-## Untracked files:
-##   (use "git add <file>..." to include in what will be committed)
-## 
-## 	vif.R
-## 
-## nothing added to commit but untracked files present (use "git add" to track)
-```
-
-
-```bash
-git add vif.R
-git commit -m "Adiciona função R para VIF."
-```
-
-```
-## [feature01 ed304f7] Adiciona função R para VIF.
-##  1 file changed, 20 insertions(+)
-##  create mode 100644 vif.R
-```
-
-
-```bash
-## Estrutura do diretório.
-tree
-```
-
-```
-## .
-## ├── porqueLinux.txt
-## ├── README.txt
-## └── vif.R
-## 
-## 0 directories, 3 files
-```
-
-
-```bash
-## Histórico de commits.
-git reflog
-```
-
-```
-## ed304f7 HEAD@{0}: commit: Adiciona função R para VIF.
-## a2c3f0d HEAD@{1}: checkout: moving from master to feature01
-## a2c3f0d HEAD@{2}: commit: Novos argumentos.
-## 41a3225 HEAD@{3}: commit: Adiciona frase do Linux Torvalds.
-## 448b201 HEAD@{4}: commit: Lista de inicial de o porquê usar o Linux.
-## ffc1d12 HEAD@{5}: commit (initial): Cria arquivo com título.
-```
-
-
-```bash
-git status
-```
-
-```
-## On branch feature01
-## nothing to commit, working directory clean
-```
-
-Então acabamos de acrescentar um novo aquivo ao projeto. Agora que as
-modificações foram salvas (*commit* feito) podemos trocar de ramo. Você
-vai ver que ao voltarmos para o ramo *master* o arquivo baixado da
-internet vai "desaparecer".
-
-
-```bash
-## Volta para o ramo master.
-git checkout master
-```
-
-```
-## Switched to branch 'master'
-```
-
-
-```bash
-## Estrutura do diretório.
-tree
-```
-
-```
-## .
-## ├── porqueLinux.txt
-## └── README.txt
-## 
-## 0 directories, 2 files
-```
-
-O arquivo `vif.R` não sumiu. Ele está no ramo `feature01` e só passará
-para o ramo master quando mesclarmos o que existe no `feature01` ao
-`master`. Então é assim: mudou de ramo, muda o conteúdo do
-diretório. Fazer isso é bem simples, basta dar um `git merge`. Antes
-vamos aprender como saber as diferenças que existem entre ramos.
-
-
-```bash
-## Mostra todas as modificações, cada linha modificada de cada arquivo.
-git diff master feature01
-```
-
-```
-## diff --git a/vif.R b/vif.R
-## new file mode 100644
-## index 0000000..a114969
-## --- /dev/null
-## +++ b/vif.R
-## @@ -0,0 +1,20 @@
-## +vif<-function (obj, digits = 5) {
-## +    Qr <- obj$qr
-## +    if (is.null(obj$terms) || is.null(Qr)) 
-## +        stop("invalid 'lm' object:  no terms or qr component")
-## +    tt <- terms(obj)
-## +    hasintercept <- attr(tt, "intercept") > 0
-## +    p <- Qr$rank
-## +    if (hasintercept) 
-## +        p1 <- 2:p
-## +    else p1 <- 1:p
-## +    R <- Qr$qr[p1, p1, drop = FALSE]
-## +    if (length(p1) > 1) 
-## +        R[row(R) > col(R)] <- 0
-## +    Rinv <- qr.solve(R)
-## +    vv <- apply(Rinv, 1, function(x) sum(x^2))
-## +    ss <- apply(R, 2, function(x) sum(x^2))
-## +    vif <- ss * vv
-## +    signif(vif, digits)
-## +   }
-## +
-```
-
-
-```bash
-## Mostra só os arquivos modificados.
-git diff --name-only master feature01
-```
-
-```
-## vif.R
-```
-
-Como você já havia antecipado, a única diferença entre os ramos `master`
-e `feature01` é o arquivo `vif.R`. Agora é só pedir o `git merge`.
-
-
-```bash
-## Mesclando as modificações em feature01 no master.
-git merge feature01 master
-```
-
-```
-## Updating a2c3f0d..ed304f7
-## Fast-forward
-##  vif.R | 20 ++++++++++++++++++++
-##  1 file changed, 20 insertions(+)
-##  create mode 100644 vif.R
-```
-
-
-```bash
-git log --oneline
-```
-
-```
-## ed304f7 Adiciona função R para VIF.
-## a2c3f0d Novos argumentos.
-## 41a3225 Adiciona frase do Linux Torvalds.
-## 448b201 Lista de inicial de o porquê usar o Linux.
-## ffc1d12 Cria arquivo com título.
-```
-
-É possível criar um ramo a partir de um *commit* ancestral ao atual. Isso
-é extremamente útil para resolver os bugs. Vamos fazer um segundo ramo a
-partir do *commit* anterior a inclusão do arquivo R.
-
-
-```bash
-## Referencias aos commits.
-git reflog
-```
-
-```
-## ed304f7 HEAD@{0}: merge feature01: Fast-forward
-## a2c3f0d HEAD@{1}: checkout: moving from feature01 to master
-## ed304f7 HEAD@{2}: commit: Adiciona função R para VIF.
-## a2c3f0d HEAD@{3}: checkout: moving from master to feature01
-## a2c3f0d HEAD@{4}: commit: Novos argumentos.
-## 41a3225 HEAD@{5}: commit: Adiciona frase do Linux Torvalds.
-## 448b201 HEAD@{6}: commit: Lista de inicial de o porquê usar o Linux.
-## ffc1d12 HEAD@{7}: commit (initial): Cria arquivo com título.
-```
-
-
-```bash
-## Volta para antes do arquivo de baixar o vif.R.
-git checkout HEAD@{4}
-```
-
-```
-## Note: checking out 'HEAD@{4}'.
-## 
-## You are in 'detached HEAD' state. You can look around, make experimental
-## changes and commit them, and you can discard any commits you make in this
-## state without impacting any branches by performing another checkout.
-## 
-## If you want to create a new branch to retain commits you create, you may
-## do so (now or later) by using -b with the checkout command again. Example:
-## 
-##   git checkout -b new_branch_name
-## 
-## HEAD is now at a2c3f0d... Novos argumentos.
-```
-
-
-```bash
-## Qual a situação.
-git status
-```
-
-```
-## HEAD detached at a2c3f0d
-## nothing to commit, working directory clean
-```
-
-
-```bash
-## O histório existente nesse ponto.
-git log --name-only --oneline
-```
-
-```
-## a2c3f0d Novos argumentos.
-## porqueLinux.txt
-## 41a3225 Adiciona frase do Linux Torvalds.
-## README.txt
-## 448b201 Lista de inicial de o porquê usar o Linux.
-## porqueLinux.txt
-## ffc1d12 Cria arquivo com título.
-## README.txt
-```
-
-Já que o *commit* mais recente dessa história aponta para o arquivo
-compras, vamos checar o seu conteúdo apenas por medida de segurança.
-
-
-```bash
-## Mostra o conteúdo do arquivo.
-less porqueLinux.txt
-```
-
-```
-## Por que usar o Linux?
-## 
-## * É livre
-## * É seguro
-## * É customizável
-## * Tem repositórios de software
-## * Atualização constante
-## * Desempenho
-```
-
-Dito e feito! Voltamos no tempo para o instante logo após o *commit* que
-incluí novos itens na lista. Podemos voltar para o presente se
-estivermos satisfeitos com o passeio mas também podemos criar um ramo
-aqui, caso isso seja necessário. Primeiro vamos voltar para o presente
-depois mostramos como criar o ramo.
-
-
-```bash
-## Mostra onde estamos.
-git branch
-```
-
-```
-## * (detached from a2c3f0d)
-##   feature01
-##   master
-```
-
-Se não fizemos nenhuma modificação, voltar é bem simples. Se
-modificações foram feitas é necessário saber se precisam ser mantidas e
-onde ou se devem ser descartadas.
-
-
-```bash
-## Volta para o presente.
-git checkout master
-```
-
-```
-## Previous HEAD position was a2c3f0d... Novos argumentos.
-## Switched to branch 'master'
-```
-
-
-```bash
-git status
-```
-
-```
-## On branch master
-## nothing to commit, working directory clean
-```
-
-
-```bash
-git log --oneline
-```
-
-```
-## ed304f7 Adiciona função R para VIF.
-## a2c3f0d Novos argumentos.
-## 41a3225 Adiciona frase do Linux Torvalds.
-## 448b201 Lista de inicial de o porquê usar o Linux.
-## ffc1d12 Cria arquivo com título.
-```
-
-
-```bash
-## Fenda no tempo fechada. Sem sinal do detached HEAD.
-git branch
-```
-
-```
-##   feature01
-## * master
-```
-
-
-```bash
-## Sinal do passeio no tempo.
-git reflog
-```
-
-```
-## ed304f7 HEAD@{0}: checkout: moving from a2c3f0d2a344bf7c680ec67982efca4f5cdf164c to master
-## a2c3f0d HEAD@{1}: checkout: moving from master to HEAD@{4}
-## ed304f7 HEAD@{2}: merge feature01: Fast-forward
-## a2c3f0d HEAD@{3}: checkout: moving from feature01 to master
-## ed304f7 HEAD@{4}: commit: Adiciona função R para VIF.
-## a2c3f0d HEAD@{5}: checkout: moving from master to feature01
-## a2c3f0d HEAD@{6}: commit: Novos argumentos.
-## 41a3225 HEAD@{7}: commit: Adiciona frase do Linux Torvalds.
-## 448b201 HEAD@{8}: commit: Lista de inicial de o porquê usar o Linux.
-## ffc1d12 HEAD@{9}: commit (initial): Cria arquivo com título.
-```
-
-Vamos começar a ser ousados. Vamos voltar no passado, adicionar um
-arquivo, commitar e ver o que acontece, como o histórico é representado.
-
-
-```bash
-## Volta no tempo, após commit que aumenta porqueLinux.txt.
-git checkout HEAD@{6}
-```
-
-```
-## Note: checking out 'HEAD@{6}'.
-## 
-## You are in 'detached HEAD' state. You can look around, make experimental
-## changes and commit them, and you can discard any commits you make in this
-## state without impacting any branches by performing another checkout.
-## 
-## If you want to create a new branch to retain commits you create, you may
-## do so (now or later) by using -b with the checkout command again. Example:
-## 
-##   git checkout -b new_branch_name
-## 
-## HEAD is now at a2c3f0d... Novos argumentos.
-```
-
-
-
-
-```bash
-## Baixa arquivo de dados da internet.
-wget 'http://www.leg.ufpr.br/~walmes/data/pimentel_racoes.txt'
-```
-
-
-```
-## --(date +"%Y-%m-%d %H:%M:%S")--  http://www.leg.ufpr.br/~walmes/data/pimentel_racoes.txt
-## Resolving www.leg.ufpr.br (www.leg.ufpr.br)... ???.??.???.??
-## Connecting to www.leg.ufpr.br (www.leg.ufpr.br)|???.??.???.??|:80... connected.
-## HTTP request sent, awaiting response... 200 OK
-## Length: 217 [text/plain]
-## Saving to: ‘pimentel_racoes.txt’
-## 
-##      0K                                                       100% 68,9M=0s
-## 
-## (date +"%Y-%m-%d %H:%M:%S") (68,9 MB/s) - ‘pimentel_racoes.txt’ saved [217/217]
-## 
-## ‘pimentel_racoes.txt’ -> ‘../meu1repo/pimentel_racoes.txt’
-```
-
-
-```bash
-git status
-```
-
-```
-## HEAD detached at a2c3f0d
-## Untracked files:
-##   (use "git add <file>..." to include in what will be committed)
-## 
-## 	pimentel_racoes.txt
-## 
-## nothing added to commit but untracked files present (use "git add" to track)
-```
-
-
-```bash
-## Adiciona para registrar a inclusão do arquivo.
-git add pimentel_racoes.txt
-git commit -m "Adiciona aquivo de dados de experimento com rações."
-```
-
-```
-## [detached HEAD 344674a] Adiciona aquivo de dados de experimento com rações.
-##  1 file changed, 24 insertions(+)
-##  create mode 100644 pimentel_racoes.txt
-```
-
-
-```bash
-git status
-```
-
-```
-## HEAD detached from a2c3f0d
-## nothing to commit, working directory clean
-```
-
-
-```bash
-## Log num formato gráfico ASCII para mostrar o novo ramo.
-git log --graph --oneline --decorate --date=relative --all
-```
-
-```
-## * 344674a (HEAD) Adiciona aquivo de dados de experimento com rações.
-## | * ed304f7 (master, feature01) Adiciona função R para VIF.
-## |/  
-## * a2c3f0d Novos argumentos.
-## * 41a3225 Adiciona frase do Linux Torvalds.
-## * 448b201 Lista de inicial de o porquê usar o Linux.
-## * ffc1d12 Cria arquivo com título.
-```
-
-No nosso projeto temos o *master* e o *feature01* em igual condição, sem
-nenhuma diferença. O *commit* recém feito indica um novo seguimento a
-partir daquele onde adicionamos novos itens na lista. Vamos criar um
-novo ramo porque atualmente estamos em um ramos suspenso (*detached
-HEAD*) que não é persistênte.
-
-
-```bash
-git branch
-```
-
-```
-## * (detached from a2c3f0d)
-##   feature01
-##   master
-```
-
-
-```bash
-## Um novo ramo a partir do atual HEAD.
-git checkout -b feature02
-```
-
-```
-## Switched to a new branch 'feature02'
-```
-
-
-```bash
-git branch
-```
-
-```
-##   feature01
-## * feature02
-##   master
-```
-
-
-```bash
-git log --graph --oneline --decorate --date=relative --all
-```
-
-```
-## * 344674a (HEAD, feature02) Adiciona aquivo de dados de experimento com rações.
-## | * ed304f7 (master, feature01) Adiciona função R para VIF.
-## |/  
-## * a2c3f0d Novos argumentos.
-## * 41a3225 Adiciona frase do Linux Torvalds.
-## * 448b201 Lista de inicial de o porquê usar o Linux.
-## * ffc1d12 Cria arquivo com título.
-```
-
-Vamos explorar bem a funcionalidade. Vamos voltar para o `feature01` e
-criar mais coisas lá. Você já deve estar pensando que tudo isso é
-absurdo e jamais alguém firaria indo e voltando assim. Você está certo,
-porém, quando o projeto envolve mais pessoas, cerrtamente as coisas irão
-bifurcar em algum ponto.
-
-
-```bash
-git checkout feature01
-```
-
-```
-## Switched to branch 'feature01'
-```
-
-
-```
-## Diretório existe.
-## Arquivo brasilCopa2014.txt já existe.
-## ‘brasilCopa2014.txt’ -> ‘../meu1repo/brasilCopa2014.txt’
-```
-
-
-```bash
-wget 'http://www.leg.ufpr.br/~walmes/cursoR/geneticaEsalq/brasilCopa2014.txt'
-```
-
-
-```
-## --2015-11-24 14:31:31--  http://www.leg.ufpr.br/~walmes/cursoR/geneticaEsalq/brasilCopa2014.txt
-## Resolving www.leg.ufpr.br (www.leg.ufpr.br)... ???.??.???.??
-## Connecting to www.leg.ufpr.br (www.leg.ufpr.br)|???.??.???.??|:80... connected.
-## HTTP request sent, awaiting response... 200 OK
-## Length: 1254 (1,2K) [text/plain]
-## Saving to: ‘brasilCopa2014.txt’
-## 
-##      0K .                                                     100% 69,6M=0s
-## 
-## 2015-11-24 14:31:31 (69,6 MB/s) - ‘brasilCopa2014.txt’ saved [1254/1254]
-```
-
-
-```bash
-git add brasilCopa2014.txt
-git commit -m "Arquivo sobre copa 2014 celeção brasileira."
-```
-
-```
-## [feature01 78a7842] Arquivo sobre copa 2014 celeção brasileira.
-##  1 file changed, 22 insertions(+)
-##  create mode 100644 brasilCopa2014.txt
-```
-
-
-```bash
-git log --graph --oneline --decorate --date=relative --all
-```
-
-```
-## * 78a7842 (HEAD, feature01) Arquivo sobre copa 2014 celeção brasileira.
-## * ed304f7 (master) Adiciona função R para VIF.
-## | * 344674a (feature02) Adiciona aquivo de dados de experimento com rações.
-## |/  
-## * a2c3f0d Novos argumentos.
-## * 41a3225 Adiciona frase do Linux Torvalds.
-## * 448b201 Lista de inicial de o porquê usar o Linux.
-## * ffc1d12 Cria arquivo com título.
-```
-
-Agora nos temos o *feature01* na frente do master e o *feature02* ao
-lado. O conteúdo dos dois ramos terá que ser incorporado ao *master* em
-algum momento porque é assim que funciona. Mas não há razões para
-preocupação pois o propósito do Git é justamente facilitar esse
-processo. Nesse caso, por exemplo, como as diferenças nos ramos consiste
-na adição de arquivos diferentes, incorporar as modificações no *master*
-será uma tarefa simples para o Git. O agravante é quando em dois ramos
-(ou duas pessoas) o mesmo arquivo é modificado no mesmo intervalo de
-linhas. Nessa situação o *merge* nos arquivos deve ser supervisionado e
-não automático. Vamos incorporar as modificações dos ramos ao master
-então.
-
-
-```bash
-## Volta para o master.
-git checkout master
-```
-
-```
-## Switched to branch 'master'
-```
-
-
-```bash
-## Mescla o feature01.
-git merge feature01 master
-```
-
-```
-## Updating ed304f7..78a7842
-## Fast-forward
-##  brasilCopa2014.txt | 22 ++++++++++++++++++++++
-##  1 file changed, 22 insertions(+)
-##  create mode 100644 brasilCopa2014.txt
-```
-
-
-```bash
-## Mescla o feature02.
-git merge feature02 master
-```
-
-```
-## Merge made by the 'recursive' strategy.
-##  pimentel_racoes.txt | 24 ++++++++++++++++++++++++
-##  1 file changed, 24 insertions(+)
-##  create mode 100644 pimentel_racoes.txt
-```
-
-
-```bash
-git log --graph --oneline --decorate --date=relative --all
-```
-
-```
-## *   0bac2be (HEAD, master) Merge branch 'feature02'
-## |\  
-## | * 344674a (feature02) Adiciona aquivo de dados de experimento com rações.
-## * | 78a7842 (feature01) Arquivo sobre copa 2014 celeção brasileira.
-## * | ed304f7 Adiciona função R para VIF.
-## |/  
-## * a2c3f0d Novos argumentos.
-## * 41a3225 Adiciona frase do Linux Torvalds.
-## * 448b201 Lista de inicial de o porquê usar o Linux.
-## * ffc1d12 Cria arquivo com título.
-```
-
-
-```bash
-tree
-```
-
-```
-## .
-## ├── brasilCopa2014.txt
-## ├── pimentel_racoes.txt
-## ├── porqueLinux.txt
-## ├── README.txt
-## └── vif.R
-## 
-## 0 directories, 5 files
-```
-
-****
-## Resolvendo conflitos
-
-Agora vamos de propósito mostrar uma situação em que não é possível
-fazer o merge automaticamente. Vamos criar um conflito. Para isso vou
-criar um ramo novo, modificar o arquivo na última linha e commitar. Vou
-voltar par ao *master* e fazer o mesmo mas vou usar um texto diferente
-para incluir no arquivo. Já que os ramos *feature01* e *feature02* não
-são mais necessários, podemos removê-los. No entanto, eles permanecem na
-história do projeto e poder resurgir se você voltar no tempo.
-
-
-```bash
-## Remove ramos.
-git branch -d feature01
-git branch -d feature02
-git branch
-```
-
-```
-## Deleted branch feature01 (was 78a7842).
-## Deleted branch feature02 (was 344674a).
-## * master
-```
-
-
-```bash
-git log --graph --oneline --decorate --date=relative --all
-```
-
-```
-## *   0bac2be (HEAD, master) Merge branch 'feature02'
-## |\  
-## | * 344674a Adiciona aquivo de dados de experimento com rações.
-## * | 78a7842 Arquivo sobre copa 2014 celeção brasileira.
-## * | ed304f7 Adiciona função R para VIF.
-## |/  
-## * a2c3f0d Novos argumentos.
-## * 41a3225 Adiciona frase do Linux Torvalds.
-## * 448b201 Lista de inicial de o porquê usar o Linux.
-## * ffc1d12 Cria arquivo com título.
-```
-
-Agora vou criar um novo ramo, adicionar um arquivo e encurtar o nome das
-colunas no cabeçalho.
-
-
-```bash
-## Muda para um ramo criado na hora.
-git checkout -b feature03
-```
-
-```
-## Switched to a new branch 'feature03'
-```
-
-
-
-
-```bash
-## Baixa o arquivo.
-wget 'http://www.leg.ufpr.br/~walmes/data/bib1.txt'
-```
-
-
-```
-## --2015-11-24 14:31:31--  http://www.leg.ufpr.br/~walmes/data/bib1.txt
-## Resolving www.leg.ufpr.br (www.leg.ufpr.br)... ???.??.???.??
-## Connecting to www.leg.ufpr.br (www.leg.ufpr.br)|???.??.???.??|:80... connected.
-## HTTP request sent, awaiting response... 200 OK
-## Length: 535 [text/plain]
-## Saving to: ‘bib1.txt’
-## 
-##      0K                                                       100% 35,0M=0s
-## 
-## 2015-11-24 14:31:31 (35,0 MB/s) - ‘bib1.txt’ saved [535/535]
-```
-
-
-```bash
-## Mostra as 4 primeiras linhas.
-head -4 bib1.txt
-```
-
-```
-## repetição	variedade	bloco	y
-## 1	1	1	20
-## 1	2	1	18
-## 1	3	2	15
-```
-
-Ao encurtar o nome para quatro dígitos, fica assim.
-
-
-```bash
-## Substitui o conteúdo da primeira linha pelos nomes truncados em 4
-## dígidos e separados por tabulação. Etapa que você pode fazer no seu
-## editor de texto.
-sed -i "1s/.*/rept\tvari\tbloc\ty/" bib1.txt
-head -4 bib1.txt
-```
-
-```
-## rept	vari	bloc	y
-## 1	1	1	20
-## 1	2	1	18
-## 1	3	2	15
-```
-
-
-```bash
-git add bib1.txt
-git commit -m "Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos."
-```
-
-```
-## [feature03 ef648bb] Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos.
-##  1 file changed, 58 insertions(+)
-##  create mode 100644 bib1.txt
-```
-
-Baixamos e modificamos o arquivo. Adicionamos e fizemos o registro das
-modificações. Agora vamos voltar ao *master* e baixar o arquivo também,
-fazendo de conta que é outra pessoa trabalhando no mesmo projeto, mas
-essa pessoa vai passar a cabeçalho para caixa alta.
-
-
-```bash
-git checkout master
-```
-
-```
-## Switched to branch 'master'
-```
-
-
-
-
-```bash
-## Baixa o arquivo.
-wget 'http://www.leg.ufpr.br/~walmes/data/bib1.txt'
-```
-
-Ao encurtar o nome para quatro dígitos, fica assim.
-
-
-```bash
-## Substitui o conteúdo da primeira linha pelo mesmo em caixa alta. Faça
-## isso no seu editor de texto de preferido.
-sed -i '1s/.*/\U&/' bib1.txt
-head -4 bib1.txt
-```
-
-```
-## REPETIÇÃO	VARIEDADE	BLOCO	Y
-## 1	1	1	20
-## 1	2	1	18
-## 1	3	2	15
-```
-
-
-```bash
-git add bib1.txt
-git commit -m "Arquivo de experimento em BIB. Cabeçalho em caixa alta."
-```
-
-```
-## [master 87e8601] Arquivo de experimento em BIB. Cabeçalho em caixa alta.
-##  1 file changed, 58 insertions(+)
-##  create mode 100644 bib1.txt
-```
-
-
-```bash
-git diff master feature03
-```
-
-```
-## diff --git a/bib1.txt b/bib1.txt
-## index a8dfaa6..b5f5963 100644
-## --- a/bib1.txt
-## +++ b/bib1.txt
-## @@ -1,4 +1,4 @@
-## -REPETIÇÃO	VARIEDADE	BLOCO	Y
-## +rept	vari	bloc	y
-##  1	1	1	20
-##  1	2	1	18
-##  1	3	2	15
-```
-
-
-```bash
-git log --graph --oneline --decorate --date=relative --all
-```
-
-```
-## * ef648bb (feature03) Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos.
-## | * 87e8601 (HEAD, master) Arquivo de experimento em BIB. Cabeçalho em caixa alta.
-## |/  
-## *   0bac2be Merge branch 'feature02'
-## |\  
-## | * 344674a Adiciona aquivo de dados de experimento com rações.
-## * | 78a7842 Arquivo sobre copa 2014 celeção brasileira.
-## * | ed304f7 Adiciona função R para VIF.
-## |/  
-## * a2c3f0d Novos argumentos.
-## * 41a3225 Adiciona frase do Linux Torvalds.
-## * 448b201 Lista de inicial de o porquê usar o Linux.
-## * ffc1d12 Cria arquivo com título.
-```
-
-
-```bash
-## Dá mensagem de erro que informa o conflito.
-git merge feature03 master
-```
-
-
-```
-## Auto-merging bib1.txt
-## CONFLICT (add/add): Merge conflict in bib1.txt
-## Automatic merge failed; fix conflicts and then commit the result.
-```
-
-
-```bash
-git status
-```
-
-```
-## On branch master
-## You have unmerged paths.
-##   (fix conflicts and run "git commit")
-## 
-## Unmerged paths:
-##   (use "git add <file>..." to mark resolution)
-## 
-## 	both added:         bib1.txt
-## 
-## no changes added to commit (use "git add" and/or "git commit -a")
-```
-
-
-```bash
-## `less` printa o conteúdo do arquivo mas `head` limita para 10 linhas.
-less bib1.txt | head -10
-```
-
-```
-## <<<<<<< HEAD
-## REPETIÇÃO	VARIEDADE	BLOCO	Y
-## =======
-## rept	vari	bloc	y
-## >>>>>>> feature03
-## 1	1	1	20
-## 1	2	1	18
-## 1	3	2	15
-## 1	4	2	16
-## 1	5	3	14
-```
-
-Então deu conflito e o Git informa que ele deve ser resolvido. Resolver
-o conflito aqui significa abrir os arquivos com problema listados no git
-status e editar de tal forma a desconflitar. Nas regiões de conflito o
-Git sinaliza de forma especial, indicando por divisórias (`<<<<<<<`,
-`=======` e `>>>>>>>`) as versões no HEAD (ramo *master*) e no ramos a
-ser incorporado (*feature03*). Então vamos resolver o conflito sem
-favorecer ninguém, ou seja, vamos encurtar para 4 digitos e manter caixa
-alta. Dessa forma o aquivo fica assim.
-
-
-
-
-```bash
-## Arquivo depois da edição que resolve o conflito.
-head -6 bib1.txt
-```
-
-```
-## REPT	VARI	BLOC	Y
-## 1	1	1	20
-## 1	2	1	18
-## 1	3	2	15
-## 1	4	2	16
-## 1	5	3	14
-```
-
-
-```bash
-git status
-```
-
-```
-## On branch master
-## You have unmerged paths.
-##   (fix conflicts and run "git commit")
-## 
-## Unmerged paths:
-##   (use "git add <file>..." to mark resolution)
-## 
-## 	both added:         bib1.txt
-## 
-## no changes added to commit (use "git add" and/or "git commit -a")
-```
-
-
-```bash
-git add bib1.txt
-git commit -m "Resolve conflito, trunca com caixa alta."
-```
-
-```
-## [master 52b1f76] Resolve conflito, trunca com caixa alta.
-```
-
-
-```bash
-git status
-```
-
-```
-## On branch master
-## nothing to commit, working directory clean
-```
-
-
-```bash
-git log --graph --oneline --decorate --date=relative --all
-```
-
-```
-## *   52b1f76 (HEAD, master) Resolve conflito, trunca com caixa alta.
-## |\  
-## | * ef648bb (feature03) Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos.
-## * | 87e8601 Arquivo de experimento em BIB. Cabeçalho em caixa alta.
-## |/  
-## *   0bac2be Merge branch 'feature02'
-## |\  
-## | * 344674a Adiciona aquivo de dados de experimento com rações.
-## * | 78a7842 Arquivo sobre copa 2014 celeção brasileira.
-## * | ed304f7 Adiciona função R para VIF.
-## |/  
-## * a2c3f0d Novos argumentos.
-## * 41a3225 Adiciona frase do Linux Torvalds.
-## * 448b201 Lista de inicial de o porquê usar o Linux.
-## * ffc1d12 Cria arquivo com título.
-```
-
-
-```bash
-git reflog
-```
-
-```
-## 52b1f76 HEAD@{0}: commit (merge): Resolve conflito, trunca com caixa alta.
-## 87e8601 HEAD@{1}: commit: Arquivo de experimento em BIB. Cabeçalho em caixa alta.
-## 0bac2be HEAD@{2}: checkout: moving from feature03 to master
-## ef648bb HEAD@{3}: commit: Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos.
-## 0bac2be HEAD@{4}: checkout: moving from master to feature03
-## 0bac2be HEAD@{5}: merge feature02: Merge made by the 'recursive' strategy.
-## 78a7842 HEAD@{6}: merge feature01: Fast-forward
-## ed304f7 HEAD@{7}: checkout: moving from feature01 to master
-## 78a7842 HEAD@{8}: commit: Arquivo sobre copa 2014 celeção brasileira.
-## ed304f7 HEAD@{9}: checkout: moving from feature02 to feature01
-## 344674a HEAD@{10}: checkout: moving from 344674a37125d278b22320956316e7df2e939fdc to feature02
-## 344674a HEAD@{11}: commit: Adiciona aquivo de dados de experimento com rações.
-## a2c3f0d HEAD@{12}: checkout: moving from master to HEAD@{6}
-## ed304f7 HEAD@{13}: checkout: moving from a2c3f0d2a344bf7c680ec67982efca4f5cdf164c to master
-## a2c3f0d HEAD@{14}: checkout: moving from master to HEAD@{4}
-## ed304f7 HEAD@{15}: merge feature01: Fast-forward
-## a2c3f0d HEAD@{16}: checkout: moving from feature01 to master
-## ed304f7 HEAD@{17}: commit: Adiciona função R para VIF.
-## a2c3f0d HEAD@{18}: checkout: moving from master to feature01
-## a2c3f0d HEAD@{19}: commit: Novos argumentos.
-## 41a3225 HEAD@{20}: commit: Adiciona frase do Linux Torvalds.
-## 448b201 HEAD@{21}: commit: Lista de inicial de o porquê usar o Linux.
-## ffc1d12 HEAD@{22}: commit (initial): Cria arquivo com título.
-```
-
-
-
diff --git a/cap04.md b/cap04.md
deleted file mode 100644
index ffec6bbf3b1fff90a93a431044d25623b375eaba..0000000000000000000000000000000000000000
--- a/cap04.md
+++ /dev/null
@@ -1,335 +0,0 @@
-# 4. Projetos remotos
-PET Estatística  
-29/11/2015  
-
-
-
-## Introdução
-
-Para colaborar em projetos coletivos no Git é preciso ter um repositório remoto. Este repositório conterá todo o histórico das versões dos arquivos editados. A seguir serão abordados como adicionar, remover e gerenciar repositórios remotos.
-
-Primeiramente será apresentado o comando `git remote`, este é usado para verificar quais repositórios estão configurados.
-
-**Exemplo:** para retornar a lista de repositórios:
-
-
-```bash
-git remote
-```
-
-```
-## MeuRepo
-## RenameRepo
-## origin
-```
-
-No comando acima é possível visualizar o remoto padrão **origin** (URL SSH para onde será possível enviar os seus arquivos).
-
-**Exemplo:** para retornar o nome dos repositórios com a URL onde foram armazanados:
-
-
-```bash
-git remote -v
-```
-
-```
-## MeuRepo	git@gitlab.c3sl.ufpr.br:pet-estatistica/apostila-git.git (fetch)
-## MeuRepo	git@gitlab.c3sl.ufpr.br:pet-estatistica/apostila-git.git (push)
-## RenameRepo	git@gitlab.c3sl.ufpr.br:pet-estatistica/apostila-git.git (fetch)
-## RenameRepo	git@gitlab.c3sl.ufpr.br:pet-estatistica/apostila-git.git (push)
-## origin	git@gitlab.c3sl.ufpr.br:pet-estatistica/apostila-git.git (fetch)
-## origin	git@gitlab.c3sl.ufpr.br:pet-estatistica/apostila-git.git (push)
-```
-
-
-### Adicionando repositórios remotos
-
-O comando `git remote add` adiciona um repositório remoto. No exemplo a seguir será adicionado um repositório chamado **MeuRepo** ao qual será vinculado a URL  `git@gitlab.c3sl.ufpr.br:pet-estatistica/apostila-git.git`. Usaremos como exemplo o projeto Git **Apostila-git**.
-
-**Exemplo:**
-
-```bash
-git remote add MeuRepo git@gitlab.c3sl.ufpr.br:pet-estatistica/apostila-git.git
-# Quando executamos novamente o comando para obter a lista de repositórios:
-git remote -v
-```
-
-```
-## fatal: remote MeuRepo already exists.
-## MeuRepo	git@gitlab.c3sl.ufpr.br:pet-estatistica/apostila-git.git (fetch)
-## MeuRepo	git@gitlab.c3sl.ufpr.br:pet-estatistica/apostila-git.git (push)
-## RenameRepo	git@gitlab.c3sl.ufpr.br:pet-estatistica/apostila-git.git (fetch)
-## RenameRepo	git@gitlab.c3sl.ufpr.br:pet-estatistica/apostila-git.git (push)
-## origin	git@gitlab.c3sl.ufpr.br:pet-estatistica/apostila-git.git (fetch)
-## origin	git@gitlab.c3sl.ufpr.br:pet-estatistica/apostila-git.git (push)
-```
-
-Pare acessar localmente o branch master do projeto **Apostila-git** será usado `MeuRepo/master`.
-
-### Obtendo informações de um Remoto
-
-Você pode acessar as informações de qualquer repositório remoto com o comando `git remote show`, que retornará a URL e os `branches`. 
-
-**Exemplo:**
-
-```bash
-git remote show origin
-```
-
-```
-## * remote origin
-##   Fetch URL: git@gitlab.c3sl.ufpr.br:pet-estatistica/apostila-git.git
-##   Push  URL: git@gitlab.c3sl.ufpr.br:pet-estatistica/apostila-git.git
-##   HEAD branch: devel
-##   Remote branches:
-##     Issue#49                     tracked
-##     devel                        tracked
-##     issue#15                     new (next fetch will store in remotes/origin)
-##     issue#23                     tracked
-##     issue#36                     tracked
-##     issue#48                     tracked
-##     issue#50                     tracked
-##     issue#51                     tracked
-##     issue#53                     new (next fetch will store in remotes/origin)
-##     issue#54                     new (next fetch will store in remotes/origin)
-##     issue#56                     new (next fetch will store in remotes/origin)
-##     issue#57                     new (next fetch will store in remotes/origin)
-##     master                       tracked
-##     refs/remotes/origin/Issue#39 stale (use 'git remote prune' to remove)
-##     refs/remotes/origin/issue#10 stale (use 'git remote prune' to remove)
-##     refs/remotes/origin/issue#11 stale (use 'git remote prune' to remove)
-##     refs/remotes/origin/issue#12 stale (use 'git remote prune' to remove)
-##     refs/remotes/origin/issue#13 stale (use 'git remote prune' to remove)
-##     refs/remotes/origin/issue#17 stale (use 'git remote prune' to remove)
-##     refs/remotes/origin/issue#21 stale (use 'git remote prune' to remove)
-##     refs/remotes/origin/issue#27 stale (use 'git remote prune' to remove)
-##     refs/remotes/origin/issue#37 stale (use 'git remote prune' to remove)
-##     refs/remotes/origin/issue#38 stale (use 'git remote prune' to remove)
-##     refs/remotes/origin/issue#40 stale (use 'git remote prune' to remove)
-##     refs/remotes/origin/issue#43 stale (use 'git remote prune' to remove)
-##     refs/remotes/origin/issue#44 stale (use 'git remote prune' to remove)
-##     refs/remotes/origin/issue#45 stale (use 'git remote prune' to remove)
-##     refs/remotes/origin/issue#47 stale (use 'git remote prune' to remove)
-##     refs/remotes/origin/issue#7  stale (use 'git remote prune' to remove)
-##     refs/remotes/origin/issue#9  stale (use 'git remote prune' to remove)
-##   Local branch configured for 'git pull':
-##     devel merges with remote devel
-##   Local ref configured for 'git push':
-##     devel pushes to devel (up to date)
-```
-
-### Renomeado Remotos
-
-O comando `git remote rename` pode modificar o nome de um repositório remoto. A seguir o repositório `MeuRepo`será renomeado para `RenameRepo`. 
-
-**Exemplo:**
-
-```sh
-git remote rename MeuRepo RenameRepo
-```
-
-### Removendo Remotos
-
-Para remover remotos é utilizado o comando `git remote rm`, agora será removido o repositório renomeado anteriormente `RenameRepo`.
-
-**Exemplo:**
-
-```sh
- git remote rm RenameRepo
-```
-
-**Protocolos Git**
-
-Há quatro tipos diferentes de protocolos Git (Local, Git, HTTP e SSH).
-
-Nesta apostila será abordado apenas o Secure Shell (SSH). Por ser fácil de fazer a configuração do acesso deste protocolo aos servidores, este é o mais usual.
-
-## Criando um Repositório Git
-    
-Primeiramente é necessário ter acesso a um servidor Linux com chave SSH, no qual você poderá ter seus repositórios. É definido um diretório no qual será armazenado o repositório remoto.
-No próximo exemplo é preciso criar um repositório remoto chamado `MeuRepo` e o armazenar em um diretório `~/git`:
-    
-**Exemplo:**
-    
-    ```sh
-    # Para criar um diretório git na sua home:
-    mkdir ~/git
-    # Para criar um repositório git:
-    mkdir MeuRepo.git
-    # Para definir MeuRepo como um repositório remoto:
-    git --bare init
-    ```
-
-As configurações do servidor estão completas. A partir você pode realizar os primeiros comandos para iniciar o repositório criado.
-
-
-## Git no servidor
-
-Primeiramente, para configurar o Git no Servidor e configurar os protocolos, clonaremos o repositório existente em um repositório limpo. 
-**Observação:** você poderá colocar um repositório no Servidor se este não contém um diretório de trabalho. 
-
-**Exemplo:**
-
-```sh
- git clone --bare MeuRepo MeuRepo.git
-```
-
-Acima foi criado um repositório limpo `MeuRepo.git`, no qual está armazenada a cópia de todos os arquivos do diretorio Git.
-
-Após este primeiro passo o repositório limpo será colocado no Servidor e configurado os protolocos. 
-No exemplo abaixo, supondo que você tem configurado um servidor `git.servidor.com`, e um diretório `/dir/git`no qual você quer armazenar seus repositórios. Ao copiar o seu repositório limpo, você pode configurar seu novo repositório. 
-
-**Exemplo:**
-    
-    ```sh
-    scp -r MeuRepo.git usuario@git.example.com:/dir/git
-    ```
-
-Agora o repositório pode ser clonado por outros usuários, que podem ter acesso de escrita e de envio de arquivos `push` no diretório. 
-
-    
-    ```sh
-    git clone usuario@git.example.com:/dir/git/MeuRepo.git
-    ```
-
-
-## Configuração de Conexão SSH com Servidor
-
-O Git possibilita ao usuário realizar uma chave SSH que fará uma conexão segura da sua máquina com o servidor. Para isso começamos com o seguinte comando no terminal:
-    
-**Exemplo:**
-    
-    ```sh
-    ## Gerando uma chave ssh
-    ssh-keygen -t rsa -C "usuario@email.com"
-    ```
-
-A partir deste comando, será possível alterar o diretório onde será salva a chave SSH. O usuário tem a opção de permanecer com o diretório padrão, para isso basta apertar Enter.
-A partir disso, são criados dois arquivos no diretório, o `id_rsa` e o `id_rsa.pub`.
-Após escolher o diretório onde serão salvos os arquivos, você terá a opção de digitar uma senha ou deixar o espaço em branco.
-
-Para visualizar a chave basta digitar o seguinte comando:
-    
-**Exemplo:**
-    
-    ```sh
-    cat ~/.ssh/id_rsa.pub
-    ```
-
-A chave está no arquivo `id_rsa.pub`. O usuário deve copiar o texto deste arquivo na íntegra.
-Para gerar a conexão ssh com o servidor, deve visitar o site [https://gitlab.c3sl.ufpr.br/profile/keys](https://gitlab.c3sl.ufpr.br/profile/keys) e clicar em [Add SSH Key](https://gitlab.c3sl.ufpr.br/profile/keys/new). É necessário escrever um título para a sua nova chave, no campo `key` colar o texto copiado do arquivo `id_rsa.pub` e adicionar sua nova chave.
-
-Para checar a configuração da sua máquina com o sevidor basta realizar o seguinte comando:
-    
-**Exemplo:**
-    
-    ```sh
-    ssh -T git@gitlab.c3sl.ufpr.br
-    ```
- 
- 
-**Configurando o servidor** 
- 
-Agora será abordado como configurar o acesso SSH do ponto de vista do servidor.
-Você precisa criar um usuário Git e um diretório `.ssh` para este usuário.
-
-**Exemplo:** criar usuário e diretório.
-    
-    ```sh
-    sudo adduser git
-    su git
-    cd
-    mkdir .ssh
-    ```
-
-Agora, você terá um arquivo chamado `authorized_keys` onde será adicionado uma chave pública de algum desenvolvedor. Após obter chaves de alguns usuários, você pode salvá-las no arquivo `authorized_keys`, como no exemplo a seguir.
-
-**Exemplo:**
-
-```sh
-cat /tmp/id_rsa1.pub >> ~/.ssh/authorized_keys # chave do primeiro usuário 
-cat /tmp/id_rsa2.pub >> ~/.ssh/authorized_keys # chave do segundo usuário
-...
-```
-
-Depois de armazenar as chaves dos usuários, basta criar um repositório limpo (sem um diretório de trabalho) para eles. Como visto anteriormente:
-
-**Exemplo:**
-
-```sh
-cd/dir/git
-mkdir NovoProjeto.git
-cd NovoProjeto.git
-git –bare init
-```
-
-Agora os usuários, cujas chaves foram salvas no arquivo `authorized_keys` podem compartilhar arquivos no repositório com os comando `git init`, `git add`, `git commit`, `git remote add` e `git push origin master`.
-
-
-## Comandos clone, push, pull e fetch
-
-### Git clone
-
-Este comando é usado para clonar um repositório do servidor remoto para um servidor local, caso você queira copiar um repositório que já existe para realizar colaborações em um projeto que queira participar. 
-Você terá acesso a todos os arquivos e poderá verificar as diferentes versões destes.
-No exemplo abaixo temos uma bibliotaca Git, chamada **TesteClone**, que será clonado da seguinte forma:
-    
-**Exemplo:**
-    
-    ```sh
-    git clone git@gitlab.c3sl.ufpr.br:pet-estatistica/TesteClone.git
-    ```
-
-Desta forma você terá um diretório `TesteClone` em seu computador, onde estarão todos os arquivos do projeto nele.
-
-O usuário também terá a opção de clonar o repositório `TesteClone` em um diretório diferente do padrão Git, que no próximo exemplo denominaremos de `DirTeste`:
-    
-**Exemplo:**
-    
-    ```sh
-    git clone git@gitlab.c3sl.ufpr.br:pet-estatistica/TesteClone.git DirTeste
-    ```
-
-
-### Git Push
-
-Usado para transferência de arquivos entre repositório local e o servidor remoto. Como o nome já diz, o comando empurra os arquivos para o servidor remoto.
-No exemplo abaixo enviaremos a ramificação `Branch Master` para o servidor chamado `origin`:
-    
-**Exemplo:**
-    
-    ```sh
-    git push origin master
-    ```
-
-É importante ressaltar que se dois usuários clonarem ao mesmo tempo, realizarem modificações e enviarem os arquivos atualizados ao repositório utilizando o `Git push`, as modificações do usuário que realizou o push por último serão desconsideradas. 
-
-### Git Pull
-
-Também utilizado para transferência de arquivos. O comando puxa os arquivos do servidor remoto para o repositório local e faz o merge do mesmo, fundindo a última versão com a versão atualizada.
-
-**Exemplo:**
-    
-    ```sh
-    git pull origin master
-    ```
-
-### Git fetch
-
-Assim como o comando `Git pull`, o `Git fetch` transfere arquivos do repositório remoto para o local, porém ele não realiza automaticamente o merge dos arquivos transferidos, o usuário deve fazer o merge manualmente.
-
-**Exemplo:**
-    
-    ```sh
-    git fetch origin master
-    ```
-
-Para verificar as modificações realizadas entre versões de um arquivo basta utilizar o comando `git diff`:
-    
-**Exemplo:**
-
-```sh
-git diff master origin/master
-```
-
-
diff --git a/cap06.md b/cap06.md
deleted file mode 100644
index 7a491c791e0d139c5d3d23aa985735dc3ac62200..0000000000000000000000000000000000000000
--- a/cap06.md
+++ /dev/null
@@ -1,322 +0,0 @@
-# Ferramentas Gráficas
-PET Estatística UFPR  
-
-
-
-# Ferramentas gráficas #
-
-No GIT, como vimos até agora, todo o gerenciamento do projeto é
-realizado via *CLI (Command line interface)*, linhas de comando
-interpretadas, geralmente pelo *bash*. Isso confere um maior controle e
-segurança nas ações realizadas, mas em muitas situações os comandos e
-*outpus* GIT não se apresentam de forma tão amigável seja pela difícil
-memorização ou pela interatividade limitada.
-
-Os comandos mais usuais como `git add`, `git commit` se tornam simples,
-pois, mesmo para um usuário iniciante eles fazem parte do cotidiano em
-um projeto sob versionamento GIT. Mas algumas situações que não ocorrem
-com frequência, como por exemplo voltar a versão de um arquivo ou do
-repositório, requerem comandos que são pouco utilizados e para realizá-las 
-é necessário a consulta de algum material sobre GIT. Outra situação onde 
-a utilização dos comandos é dificultada, ocorre para projetos maiores, onde 
-muitos arquivos são alterados simultaneamente e o procedimento de *commit* 
-se torna trabalhoso, pois é necessário listar todos os arquivos que fazem 
-parte de um *commit* no commando `git add`. Uma última situação exemplo 
-em que o uso de *CLI* não parece satisfatório é na comparação de arquivos, 
-já usamos o comando `git diff` no capítulo 3 e o *output* deste comando 
-foi de simples visualização, mas em arquivos maiores (com muitas linhas) 
-a navegação para verificar as alterações do arquivo não é tão amigável. Para
-facilitar essas e outras situações surgem as *GUI's (Graphical User 
-Interfaces)*, interfaces gráficas para o usuário que incorpora comandos
-GIT em *widgets*(botões, caixas de texto etc.) dispostos em uma janela
-gráfica de seu sistema operacional.
-
-
-# Interfaces GIT #
-
-Neste material chamaremos de **Interfaces GIT** as *GUI's* para gestão 
-de um repositório. Estas facilitam a utilização das principais 
-instruções **GIT** (`git add`, `git commit`, `git push`, `git pull`), 
-visualização dos arquivos e alterações no repositório.
-
-Desde o surgimento do GIT diversas *GUI's* foram propostas. Neste 
-capítulo apresentamos as principais *GUI's* em diferentes plataformas nos 
-sistemas UNIX, Mac OS X e Windows. Detalhes de download, instalação e 
-exemplos da utilização destas interfaces no fluxo de trabalho de um 
-projeto com versionamento **GIT** são descritos.
-
-## git-gui ##
-
-Baseada em *Tcl/Tk* a *GUI* chamada `git gui` é mantida como projeto
-independente do GIT, mas as versões estáveis são distribuídas junto com
-o programa principal, portanto não é necessário o download e
-instalação. A interface é voltada para realizar alterações no
-repositório, desde as mais simples como *commitar* arquivos até as mais 
-específicas como voltar estágios ou reescrever o último *commit* (muito 
-útil quando notamos erros de gramática logo após a submissão). Nesta 
-seção abordaremos apenas as alterações mais comuns no repositório.
-
-`git gui`, no Windows, pode ser aberto pelo menu iniciar. Nesta
-plataforma, ao instalar o GIT (conforme visto no capítulo 2) duas
-aplicações ficam disponíveis **git BASH** e **git GUI**. Em sistemas
-LINUX podemos criar um *alias* (criar e editar adequadamente um
-arquivo em */usr/share/applications*) para que a `git gui` fique listada
-junto as aplicações do sistema. --Descobrir no MAC se `git gui` fica no
-lançador automaticamente. Porém, de forma geral, independente da
-plataforma de trabalho, a `git gui` pode ser iniciada a partir de um
-terminal `bash`, com o comando:
-
-```sh
-git gui
-```
-
-Para exemplificar a utilização desta interface vamos alterar alguns
-arquivos do repositório `meu1repo`, criado no capítulo 3.
-
-
-
-
-```bash
-cd meu1repo/
-
-echo $(tr '[[:lower:][:upper:]]' '[[:upper:][:lower:]]' < README) > README
-
-echo "Lista de afazeres:
--------------------------------------------
-* tarefa 1
-* tarefa 2
-* tarefa 3
-* tarefa 4
-* tarefa 5
-* tarefa 6" > TODO.txt
-
-echo "
-Mais um arquivo criado" > OTHER.txt
-```
-
-Após as alterações a interface gráfica é chamada.
-
-![](./images/git-gui1.png)  
-FIGURA: Inteface `git gui`
-
-A interface `git gui` se apresenta de forma simples, o que facilita
-sua utilização. Na figura ?? detacamos as quatro áreas que compreendem a
-interface. Na primeira porção temos listados os arquivos presentes no
-*working directory*, os arquivos criados aparecem com ícone em branco e
-os modificados com linhas em azul, aqui a interface implementa
-interativamente o comando `git add`, pois ao clicar no ícone de um
-arquivo ele é automaticamente adicionado à *staging area*. Na segunda
-parte são listados os arquivos na *staging area* com ícone de *check
-mark*. Na terceira parte temos a implementação do comando
-`git diff` para qualquer arquivo selecionado. Com destaque de cores, a
-interface apresenta em vermelho as deleções e em verde as adições. Por fim
-temos no canto inferior direito a área para escrever *commits* com
-botões para submissão de ação. Um detalhe importante do `git gui` é que
-o idioma do sistema operacional é verificado para sua construção, ou
-seja, os botões da interface na figura ?? são *push*, *commit*, *sign
-off*, etc pois o idioma do sistema operacional em que essa interface foi
-executada é o inglês. Para português (Brasil) as mensagens ficam .....
-
-Além das quatro áreas principais da interface, que facilitam
-interativamente atividades como `git status`, `git diff`, `git add`,
-`git commit` e `git push`, temos mais implementações no menu da
-interface para procedimentos não cotidianos. Essas implementações podem
-ser acessadas com um simples clique e são auto-explicativas.
-
-## gitk ##
-
-Pioneira dentre as interfaces gráficas, `gitk` foi a primeira
-*GUI* implementada. Também implementada em *Tcl/Tk*, esta *GUI*
-tem como objetivo a apresentação do histórico de um projeto. A `gitk`
-é incorporada ao principal repositório do GIT, portanto nas instalações
-completas do GIT esta interface fica disponível sem ser necessário
-download e instalação. Nesta seção apresentamos a `gitk` detalhando a
-disposição dos elementos nesta interface que se mostra muito útil na
-visualização de projetos GIT.
-
-A `gitk` trabalha em conjunto com a `git gui`. Em `git gui` podemos fazer
-alterações de forma rápida e visual nos arquivos que estão na *staging
-area* e *working directory*, porém para visualizar o histórico completo
-de *commits* com ramificações, marcações e demais detalhes, recorremos
-à `gitk`. Essa interface se mostra muito útil também como ferramenta de
-aprendizagem GIT, uma vez que visualizar de forma gráfica as alterações
-que os comandos realizados causam no projeto, torna mais fácil a
-compreensão dos mesmos.
-
-`gitk`, assim como a `git gui` pode ser chamada atráves de linha de
-comando:
-
-```sh
-gitk
-```
-
-Para exemplificar a disposição dos elementos nesta interface, seguimos
-com as alterações feitas na seção anterior, lembrando que temos todas as
-alterações já realizadas no capítulo 3 e ainda duas modificações e uma
-inclusão de arquivos não *commitadas*. Visualizando a interface `gitk`
-chamada neste estado do repositório temos:
-
-![](./images/gitk1.png)  
-FIGURA: Inteface `gitk`
-
-Perceba na figura ?? que esta interface é bem mais completa do que a `git
-gui` no que diz respeito à informação. Dividida em apenas duas partes, a
-`gitk` apresenta na primeira todo o histórico do projeto, é uma
-implementação visual e agradável do comando `git log --graph`. No
-gráfico apresentado na parte superior, as bolinhas azuis representam 
-*commits* passados, a de amarelo indica o estado atual do repositório e 
-em vermelho são asmodificações no *working directory*. Ao lado estão os 
-autores dos respectivos *commits* e o momento em que foram feitos. Na parte
-inferior da interface temos o detalhamento do *commit* selecionado
-na parte superior. As informações contidas aqui vão desde o
-identificador do *commit* (*SHA1 ID*), diferença das modificações
-referenciadas por este *commit* com relação ao estado anterior do
-repositório até a listagem dos arquivos atingidos pelo *commit*
-selecionado.
-
-Além da excelente apresentação visual do repositório GIT, a interface 
-`gitk` também permite algumas alterações. Clicando com o botão direito de 
-seu *mouse* em qualquer *commit* listado podemos criar *tags*, reverter o 
-repositório neste estado, criar um ramo a partir do *commit* dentre outras 
-opções possíveis atráves da interface.
-
-`gitk` é uma implementação em *Tcl/Tk* para visualização de repositórios
-GIT. Com o mesmo objetivo outras interfaces gráficas foram
-implementadas.
-
-
-Podemos destacar duas delas pela grande similaridade à
-`gitk`, são elas `gitg` e `gitx`. Ambas podem ser instalar em:
-
-* https://git-scm.com/docs/gitk
-* https://lostechies.com/joshuaflanagan/2010/09/03/use-gitk-to-understand-git/
-
-## Outras Interfaces ##
-
-### gitg e gitx ###
-
-Estas duas interfaces tentam juntar em uma única as opções proporcionadas 
-pela `git gui` e pela `gitk`. Os layouts e as propostas são similares, a 
-diferença está na portabilidade.
-A `gitg` é implementada em *GTk+* e está disponível para sistemas LINUX e a
-`gitx` foi implementada para Mac OS seguindo o estilo de aplicativos
-deste sistema operacional. De forma geral não há detalhes a serem
-repassados sobre estas interfaces uma vez que as possibilidades já foram
-listadas nas seções sobre `git gui` e `gitk`
-
-![](./images/gitg.png)
-FIGURA: Interface `gitg`
-
-![](./images/gitx.png)
-FIGURA: Interface `gitx`
-
-### RabbitVCS ###
-
-*RabbitVCS* é uma coleção de ferramentas gráficas para navegadores de
- arquivos do sistema LINUX que permitem o acesso simples e direto aos
- sistemas de controle de versão GIT e/ou Subversion. Não se caracteriza
- como interface, porém altera a visualização no navegador de arquivos de
- diretórios sob versionamento GIT além de dispor de ações implementadas
- nas opções do menu quando pressionado o botão direito do mouse.
-
-![](./images/rabbitvcs.png)
-FIGURA: Navegador *Nautilus* com uso do `RabbitVCS`
-
-Na figura ?? temos o *screenshot* do repositório `meu1repo` no navegor
-de arquivos `nautilus` (padrão do sistema Ubuntu 14.04). Perceba que com
-essa interface os ícones de arquivos e pastas no navegador ganham
-destaque com um outro pequeno ícone na paste inferior. Estes pequenos
-ícones indicam o estado do arquivo sem precisar recorrer ao terminal, ou
-seja, temos um `git status` no próprio navegador de arquivos. Além disso
-`RabbitVCS` complementa o menu de opções acessados com o botão direito
-do mouse. As opções implementadas neste menu são completas, vão
-desde *commits*, criação de *branchs* e *tags* até a ações de
-reverter o estado do repositório.
- 
-### git-cola ###
-
-Esta também é uma interface alternativa que se destaca por ser completa
-e pela portabilidade (disponível para sistema LINUX, Windows e
-Mac). Implementada em *python*, `git-cola` é uma alternativa à `git gui`
-e contém praticamente os mesmos elementos para alterações no
-repositório. Como a `git gui` se auxilia da `gitk` para visualização,
-a `git-cola` também tem uma interface de apoio, chamada de `git-dag` que
-vem instalado junto ao `git-cola`.
-
-![](./images/git-cola.png)
-FIGURA: Interface `git-cola` e `git-dag`
-
-Perceba pela figura ?? que as opções das interfaces são similares
-as apresentadas em `git gui` e `gitk`. As interfaces `git-cola` e
-`git-dag` se destacam pela fácil manipulação do layout exibido, além de
-buscar deixar a interface mais intuitiva possível. Como destaque em
-implementação de funcionalidade GIT, a `git-cola` se sobressai com relação
-à `git gui` na possibilidade de execução do comando `git rebase` via
-interface. 
-
-### Plugins e extensões para editores ###
-
-Muitas vezes é inconveniente trabalhar com códigos fonte em um editor e
-ter que abrir um terminal *bash* em outra janela do sistema operacional
-para verificar o sistema de versionamento, realizar commits,
-etc. Felizmente alguns editores possuem um sistema **GIT** integrado,
-seja por meio de *plugins* adicionais instalados ou pela opção nativa do
-editor.
-
-Destacamos aqui dois editores, comumente utilizados pela comunidade
-estatística, que possuem os comandos **GIT** intergrado à sua
-interface. São eles, o `emacs`, o qual temos as opções de *buffers* nos
-editores onde podemos abrir uma instância *shell* e executar os comandos
-**GIT** junto com o desenvolvimento do código fonte. Além disso uma
-extensão poderosa chamada `magit`[^magit] está disponível e em 
-desenvolvimento para o **GIT** no `emacs`, esta extensão proporciona 
-opções de comandos e visualização em um *buffer* do editor que facilita 
-o trabalho de versionamento. Outro editor também muito utilizado em 
-Estatística, talvez o mais utilizado pela comunidade, é o RStudio que 
-também implementa em sua interface vários comandos, assim como as 
-interfaces anteriormente descritas e para tarefas não triviais uma 
-chamada do terminal *Shell* é possível dentro do aplicativo. As diversas 
-ferramentas do editor RStudio serão exploradas no capítulo ??, com 
-exemplos e ilustrações voltadas para a comunidade estatística.
-
-# Interfaces de comparação #
-
-Uma das principais vantagens do **GIT** é a possibilidade de trabalho
-paralelo por dois ou mais usuários ou por ramos de desenvolvimento. E
-como qualquer desenvolvimento paralelo, desejamos ao final do trabalho, 
-mesclar as contribuições realizadas lado a lado. Como vimos no capítulo 
-3 isso é feito através do comando `git merge ramo_desenvolvimento` para ramos 
-locais e com o comando `git push origin` quando estamos trabalhando em 
-equipe e as contribuições são enviadas para um servidor remoto, capítulo 
-4. Porém, quando a mesma porção de um mesmo arquivo é alterada em duas 
-instâncias distintas (ramos diferentes, usuários diferentes etc.) ocorrem
-conflitos e vimos como o **GIT** os sinaliza para que possamos resolvê-los. 
-Nesta seção mostraremos as interfaces gráficas dedicadas à resolução de 
-conflitos no mesclagem e a visualização da diferença de arquivos em 
-estados diferentes do repositório.
-
-## Ferramentas de Comparação Padrão ##
-
-* meld
-  + Download e Instalação
-  + Utilização básica
-  + Utilização no **GIT** como `difftool` e/ou `mergetool`
-  + screenshots
-
-* kdiff3
-  + Download e Instalação
-  + Utilização básica
-  + Utilização no **GIT** como `difftool` e/ou `mergetool`
-  + screenshots
-
-## Outras interfaces ##
-
-* P4Merge
-
-Citar materiais de referência para instalação e
-utilização.
-
-<!-- Exclui o repositório criado para exemplicação -->
-
-
-[^magit]: http://magit.vc/
diff --git a/cap07.md b/cap07.md
deleted file mode 100644
index 9ccfff39c0e324001451c8dd4b70dafcd1d15954..0000000000000000000000000000000000000000
--- a/cap07.md
+++ /dev/null
@@ -1,338 +0,0 @@
-# Capítulo 7: Trabalhando em equipe
-PET-Estatística UFPR  
-
-O Git é uma ferramenta que aliada a outros serviços web, como GitLab ou 
-GitHub, oferece funcionalidade e autonomia para se trabalhar. 
-Contudo, com tantos recursos disponíveis, só serão bem aplicados quando 
-todos os membros do grupo, além de conhecê-los, trabalham em harmonia.
-
-## 1.Boas práticas de colaboração
-
-Repositório é onde são armazenados os arquivos de um projeto. Existem 
-três níveis de acesso permitidos:
-
-- **Private**: é o repositório fechado, onde apenas o criador (Owner) tem 
-permissão de leitura e escrita. Se um repositório privado for criado 
-dentro de um grupo, todos do grupo terão permissão de leitura e escrita.
-
-
-- **Internal**: é o repositório é fechado para usuários externos ao
-grupo, mas qualquer usuário cadastrado no grupo terá permissão de leitura
-e escrita no repositório.
-
-
-- **Public**: é o repositório é aberto para qualquer pessoa, e fica
-visível para qualquer um (usuário do grupo ou não). Usuários do grupo
-tem permissão de leitura e escrita no repositório. Usuários sem conta 
-no grupo podem clonar o repositório, mas não tem permissão para alterar 
-o repositório (enviar merge requests por exemplo).
-
-É possível adicionar usuários para colaborar em um repositório. Cada 
-usuário pode ter um nível de acesso diferente: **Guest**, **Reporter**,
-**Developer**, **Master**. Em <a href="https://gitlab.c3sl.ufpr.br/help/permissions/permissions">
-permissões</a> é possível visualizar as habilidades concedidas para cada 
-nível.
-
-Logo após criar um novo repositório, é recomendável que se crie um arquivo
-`README.md`. Independente da forma como o repositório foi configurado, 
-é sempre fundamental que ele contenha o arquivo `README.md`. 
-Este arquivo é sempre o primeiro a ser mostrado na página inicial 
-de todo repositório. Por esse motivo, é importante que o `README.md` 
-contenha no mínimo:
-
-- Uma descrição geral do projeto;
-- Os nomes dos autores do projeto;
-- Instruções de instalação, no caso de softwares;
-- A licença do projeto (especialmente para projetos públicos), ou uma 
-orientação sobre o uso do projeto (permissão, citação, entre outros). 
-Opcionalmente pode-se criar um arquivo *LICENSE* com a licença. 
-Esse arquivo ficará disponível também em uma aba na página inicial do 
-projeto.
-- (**Opcional**): um guia de contribuição, se o projeto pretende que 
-colaboradores externos colaborem e precisam de algumas orientações básicas
-sobre como colaborar. Criando um arquivo `CONTRIBUTING.md` com este guia,
-ele será automaticamente colocado em uma aba na página inicial do projeto.
-- (**Opcional**): um *changelog* para que sejam registradas as modificações 
-realizadas entre uma versão e outra (principalmente para softwares). 
-Criando esse arquivo com estas informações, ele aparecerá automaticamente 
-em uma aba na página inicial do projeto. 
-
-Outra parte fundamental do git, são os **commits**. Além de salvarem as
-alterações realizadas nos arquivos, também são responsáveis por documentar
-as alterações feitas por qualquer usuário e em qualquer arquivo.
-Os commits agilizam o processo de revisão do projeto, e poderá ajudar
-futuros mantenedores do projeto a desvendar o motivo de algum acréscimo
-ou modificação no código. Por causa dessas importâncias, uma mensagem bem 
-escrita é a melhor forma de se comunicar a alteração para os demais membros 
-do grupo e para você mesmo. Essas mensagens também aparecerão no `git log` 
-do projeto,por isso é essencial que sejam bem escritas, de forma clara e 
-sigam um padrão.
-
-Algumas **regras de ouro**, que são convenções gerais, para que um projeto 
-versionado com git seja bem sucedido são:
-
-- **Faça commits regularmente**: isso faz com que as mudanças de código 
-entre um commit e outro sejam menores, tornando mais fácil para todos 
-acompanhar as alterações;
-
-- **Não faça commits de trabalhos pela metade**: faça um commit apenas 
-quando tiver finalizado o que estava propondo. Isso irá forçar você a 
-deixar o trabalho em pedaços menores, e por consequência realizar
-commits regularmente;
-
-- **Teste antes de fazer um commit**: resista à tentação de fazer um commit 
-que você pensa que está completo. Teste toda a sua realização para 
-ter certeza de que não causará um efeito colateral no projeto;
-
-- **Escreva boas mensagens de commit**: seja claro e objetivo ao escrever 
-as mensagens de commit. No entanto, tome cuidado para não ser vago, ou 
-escrever apenas `mudança`, `mais mudanças`, etc. Se uma mensagem curta for suficiente, use `git commit -m 'Mensagem'`, mas lembre-se de ser 
-informativo sobre a alteração realizada, para ser útil para todos do 
-projeto.
-
-Existem outras convenções estabelecidas sobre como escrever mensagens 
-de commit contextualizadas, baseadas nas mensagens geradas por mensagens
-de funções do próprio git. Estas convenções podem resumidas nas 7 regras
-que são convenções globais:
-
-1.**Separe o título do corpo do texto com uma linha em branco**: por padrão, 
-a primeira linha é o título do commit, e deve ser uma mensagem curta. 
-Ao deixar uma linha em branco, é permitido escrever uma mensagem de 
-qualquer tamanho, detalhando melhor as modificações feitas. 
-Dessa forma, quando  `git log` for executado, toda a mensagem de commit
-aparecerá, enquanto que `git log --oneline` mostrará apenas o título do 
-commit. 
-
-2.**Limite a linha de título em 50 caracteres**: isso faz com que o 
-colaborador pense mais para escrever uma mensagem mais informativa.
-Se a mensagem for uma única linha (`git commit -m`), então esse limite 
-pode se estender para 72 caracteres.
-
-3.**Capitalize a mensagem**: em todas as mensagens de commit comece com 
-letra maiúscula, tanto se for título, corpo da mensagem, ou apenas 
-uma mensagem de uma única linha.
-
-4.**Não termine os commits com ponto**: principalmente se for o título 
-de uma mensagem de commit mais longa. Espaço é valioso quando se temos 
-no máximo 50 ou 72 caracteres.
-
-5.**Use o modo imperativo**: no título de commits longos ou em mensagens 
-de commits únicas. O modo imperativo significa escrever como se estivesse 
-dando um comando a alguém. Seja direto e objetivo, e escreva no presente. 
-Exemplos de mensagens no impertativo:
-```sh
-- Adiciona versão final
-
-- Altera parágrafo da introdução
-
-- Remove funções precipitadas
-```
-
-Algumas mensagens no modo **não** imperativo são:
-```sh
-- Corrigindo o erro
-
-- Mudando a função 
-
-- Mais correções para mais funções
-```
-
-
-6.**Limite o corpo da mensagem em 72 caracteres**: ao escrever uma mensagem 
-de commit mais longa, devemos manter o corpo da mensagem com no máximo 
-72 carateres.
-
-
-7.**Use o corpo da mensagem para explicar "o que" e "porque", e não "como"**: contextualize o que você fez e o motivo. Na maioria dos casos você pode 
-deixar de fora como você fez as modificações, pois o código alterado já 
-deverá ser auto-explicativo. 
-
-
-## 2.Modelos de fluxos de trabalho
-
-A escolha do *workflow* (fluxo de trabalho) depende de cada projeto e das preferências pessoais. Podemos utilizar as informações sobre cada *workflow*, e decidir qual é mais adequado para cada projeto. Existem quatro maneiras 
-principais de trabalhar em colaboração com o git e o GitLab:
-
-- #### **Centralized workflow**: 
-recomendado para projetos pequenos, e/ou que não necessitam de muitas 
-alterações. Nesse workflow, o repositório possui apenas um brach (`master`) 
-e as alterações são feitas nesse branch. As revisões só poderão ser 
-realizadas depois que tudo foi enviado para o servidor remoto. Com isso, 
-há uma grande chance de ocorrerem conflitos.
-
-
-      **Exemplo**
-
-      Após iniciar um repositório central, os colaboradores devem clonar
-      o repositório.
-
-      ![](./images/traba-central-1.png)
-
-      FIGURA: Colaboradores clonando o repositório central
-
-      Depois de um colaborador terminar seu trabalho remotamente, ele 
-      publica as modificações para o repositório central, para que os 
-      demais membros possam ter acesso.
-
-      ![](./images/traba-central-2.png)
-
-      FIGURA: Colaborador publicando as modificações no repositório central
-
-      Outro membro também termina seu trabalho e resolve publicar no 
-      repositório central, porém não irá conseguir. O repositório central 
-      está diferente do seu repositório local.
-
-      ![](./images/traba-central-3.png)
-
-      FIGURA: Colaborador não conseguindo publicar as modificações no 
-      repositório central
-      
-      Para conseguir enviar as modificações realizadas, o colaborador
-      precisa puxar as atualizações feitas para  o seu repositório, 
-      integrá-los com as suas alterações locais, e em seguida, tentar 
-      novamente.
-      
-      ![](./images/traba-central-4.png)
-
-      FIGURA: Colaborador puxando as modificações do repositório central
-      
-      Após feito isso, será possível o colaborador fazer as modificações.
-      
-      ![](./images/traba-central-5.png)
-
-      FIGURA: Colaborador publica modificações do repositório central
-
-- #### **Feature branch workflow**: 
-recomendado para projetos pequenos e grandes que envolvam mais de um 
-colaborador. O projeto principal é mantido nobranch master. Se um membro 
-quiser realizar alguma alteração, deverá criar um novo branch `feature`, 
-e fazer as alterações nesse branch e sugerir um `merge request`. Com isso, 
-os demais colaboradores poderão revisar as alterações sugeridas e discutir as modificações, até que uma pessoa habilitada faça o merge desse branch 
-`freature` para o branch `master`.
-Dessa forma, evita-se os possíveis conflitos e garante que tais alterações
-não causaram algum problema. Esse workflow é altamente recomendado por
-ser simples de gerenciar, evitar grandes conflitos, e ser relativamente 
-fácil para usuários novos do git.
-
-
-      **Exemplo**
-
-      Antes de começar a desenvolver um recurso, é preciso de criar um 
-      ramo isolado para trabalhar
-
-      ![](./images/traba-feature-1.png)
-
-      FIGURA: Criando um novo ramo para o trabalho
-
-      Com isso, o membro poderá iniciar o seu trabalho, e realizar o que
-      for necessário nesse ramo (brach). Após finalizar o projeto, o colaborador
-      envia suas modificações, irá requirir um `merge request` para que 
-      as alterações feitas nesse branch, sejam incorporadas no `master`. Os 
-      demais membros, poderão avaliar se tais modificações são pertinentes
-      para o projeto.
-
-      ![](./images/traba-feature-2.png)
-
-      FIGURA: Colaborador solicita merge, e aguarda revisão dos demais
-      colaboradores
-
-      Quando as alterações sugeridas para o colaborador forem incorporadas
-      o branch poderá ser movido para o `master`.
-
-      ![](./images/traba-feature-3.png)
-
-      FIGURA: Movendo ramo para o master
-
-- #### **Gitflow workflow**: 
-indicado para projetos maiores e/ou com um grande número de colaboradores. 
-Esse workflow envolve a criação de alguns branches com funções específicas. 
-Todo o desenvolvimento é realizado no branch `develop`. Quando uma versão 
-está pronta, ela é movida para o branch `release`, onde é testada e 
-finalmente incorporada ao ramo master, que contém apenas versões finais
-(estáveis). É extremamente recomendado esse workflow para desenvolvimento 
-de softwares, porém exige de mais familiaridade com o git. Permite, por 
-exemplo, que os usuários de um software, instalem tanto uma versão estável 
-(do branch `master`) quanto uma versão em desenvolvimento 
-(do branch `develop`).
-
-      **Exemplo**
-
-      São criados branches com funções específicas, como no exemplo `Hotfix`,
-      `Release` e `Develop`.
-
-      ![](./images/traba-git-1.png)
-
-      FIGURA: Ilustração dos branches específicos
-
-      *Develop* é semelhante ao master do feature branch workflow. *Release*
-      serve "lançar" possíveis bugs gerados no código. *Hotfix* contém as
-      correções dos bugs do release que não podem aguardar o lançamento
-      do mesmo.
-
-
-- #### **Forking workflow**: 
-recomendado para projetos abertos, onde se espera usuários externos façam contribuições. Esse workflow consiste de um repositório oficial, de onde 
-os colaboradores fazem um `fork` desse repositório, e passam a desenvolver 
-o projeto de maneira independente. Assim, cada colaborador poderá adotar 
-o workflow de preferência, e não precisará ter acesso ao repositório 
-oficial, apenas colaborar enviando `merge`.
-
-      **Exemplo**
-
-      Criado o repositório central, os colaboradores fazem um `fork`
-      poderão trabalhar de maneira independente. 
-
-      ![](./images/traba-forking-1.png)
-
-      FIGURA: Ilustração dos forks de um projeto
-
-   Independente da escolha do workflow para cada projeto é importante sempre
-informar o método que está sendo utilizado para seus colaboradores,
-para que eles possam seguir o mesmo padrão. Essas informações poderão ser
-descritas em `README.md` ou no `CONTRIBUTING.md`.
-
-## 3.Fluxo de trabalho PET no GitLab
-
-O PET-Estatística UFPR possui um grupo no Git para o desenvolvimento de
-projetos. Utilizaremos a seguinte ilustração para entender o fluxo do 
-trabalho do PET.
-
-(figura que haverá um dia)
-
-FIGURA: Ilustração do fluxo de trabalho do PET
-
-Conforme a demanda de projetos, é criado o repositório para armazená-lo. 
-Após isso, são criados as `milestones` - marcadores de 
-classificação dos arquivos. Esses passos são feitos no `Owner`.
-
-Indo para o `master`, temos os seguintes passos:
-
-- Conforme a demanda do projeto, é criado um `issue` para adição de 
-contribuições;
-- Atualiza o ramo `devel`;
-- Após isso, é necessário criar um `branch` (ramo) para incluir as 
-contribuições;
-
-Entrando no `developer`, teremos o ciclo de trabalho em que adiciona
-as modificações (`git add`), registra as mesmas (`git commit`) e após 
-realizar todo o trabalho, é feito o `git push` enviando ao 
-servidor remoto.
-
-A próxima etapa é a requisição de `merge`. Com esse `merge`, é feita as 
-discussões a respeito da contribuição, assim podendo retornar ao ciclo
-do `developer` para as devidas correções e sugestões. 
-Após a certeza dessa contribuição, é movida para o ramo `devel` e fechado 
-o `issue`referente ao trabalho feito.
-
-Depois de terminar todas etapas do projeto, completa-se as `milestones`,
-realiza o `merge` do `devel` no `master`, e cria a tag de versão.
-
-
-### Referências
-https://git-scm.com/book/pt-br/v1/Git-Distribu%C3%ADdo-Contribuindo-Para-Um-Projeto
-
-https://prezi.com/_lm8kozmii8n/git-workflow/ 
-
-https://www.atlassian.com/zh/git/workflows\#!workflow-overview
-
-http://git.leg.ufpr.br/leg/gitlab-rautu/blob/master/CONTRIBUTING.md