diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index d8c8667a92c6ee2a14a6901878f2ccad46cb5ba6..051ff87d253adf964aca03e2f263d15057093e15 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,138 +1,138 @@ -Guia de contribuição -==================== - -Esse é um projeto público do PET Estatística aberto a -colaboradores. Para que a colaboração seja bem sucedida, seguem algumas -intruções e recomendações. - -## O funcionamento - -O núcleo do tutorial é o arquivo `git_tuto.Rmd`. O arquivo `Rmd` é -marcado por ser escrito com sintaxe [markdown][] com fragmentos de -código R. Os fragmentos de código R são interpretados durante a -compilação feita com a função `render` do pacote [rmarkdown][]. Por ser -escrito em markdown, o tutorial pode ser compilado em formatos como markdown (`.md`), html e PDF. - -Apesar de `Rmd` normalmente ter fragmentos de código R, nesse tutorial -predominam fragmentos de código shell, em outras palavras, são -fragmentos de código executados do terminal do Linux. Para ter um -fragmento de código shell que seja interpretado na compilação, tem-se -que fazê-lo conforme abaixo. - - ```{r, engine="sh"} - comando shell - ``` - -A compilação desse documento cria sempre um projeto Git do zero. Com -intruções do shell ao longo do documento, no instante da compilação, -arquivos são criados, adicionados (`git add`), commitados (`git -commit`), moficados, etc. Esse documento é, portanto, um documento -reproduzível. - -Para compilar o documento você deve abrir uma sessão R onde o diretório -de trabalho é o que contém o arquivo `git_tuto.Rmd` e rodar uma chamada -da função render. Usuários do RStudio podem fazer isso diretamente pelo -botão de compilar, presente na barra de ferramentas. - - ```{r, engine="sh"} - library(rmarkdown) - - render("git_tuto.Rmd") - ``` - -Os diretórios criados durante a compilação são sempre apagados, para que ao -compilar novamente, tudo seja reproduzido. O projeto deve recriar tudo e -é essa a intenção, apesar do custo. Se os diretórios não fossem -deletados antes de uma nova compilação, iria-se receber erros de -compilação. - -Esse documento usa instruções no terminal que podem ser particulares do -Linux, como o comando `tree` e `sed`. Portando, a reprodutibilidade da -compilação pode não acontecer em outros sistemas operacionais. - -## O fluxo de trabalho - -Esse projeto terá dois ramos persistentes: - - * `devel`: que irá receber imediatamente a contribuição dos - membros e será submetido a teste (no caso compilação). Se bem - sucedido, a contribuição é movida para o ramo `master`. - * `master`: que recebe a versão estável do projeto. - -Os membros devem criar ramos de demanda para adicionarem suas -contribuições. Por exemplo, se existe a demanda (*issue*) de acrescentar uma -sessão sobre o uso do programa `meld` para resolver conflitos de merge, -deve-se criar um ramo para isso, adicionar as contribuições e subir esse -ramo para o repositório remoto. Os *issues* criados no GitLab são -automaticamente numerados. Para nosso benefício, vamos usar o mesmo -número ao criar os *branches* para atender as correspondentes -demandas. Vamos usar o padrão `issue#?` em que `?` representa o número -do *issue*. - -```sh -git branch -b issue#3 - -... trabalha, git add, git commit ... -... trabalha, git add, git commit ... -... trabalha, git add, git commit ... - -git push origin issue#3 -``` - -Assim que der o `git push`, a próxima etapa é fazer uma requisição de -*merge*. Isso se faz pela interface do GitLab clicando em -[merge request][] no menu da esquerda, dentro da página do projeto, e -depois no botão *New Merge Request*. Lá é onde se designa o responsável -por avaliar e aplicar o *merge* e quais os *branches* envolvidos -(doador/receptor). - -Existe apenas uma regra que jamais deve ser quebrada: - -> Nunca dê `push` para os ramos `devel` e `master`. - -Esses ramos se receberão conteúdo provenientes de *merge* dos ramos de -demanda (*issue*). - -## Mensagens de commit - -É extremamente recomendado, por questões de organização e produtividade, -que as mensagens de commit sejam apropriadas. Não use mensagens vagas ou -óbvias do tipo *Modificações feitas*, *Arquivos incluídos*. Procure algo -como *Incluí arquivo de estilo CSS*, *Modifica preâmbulo*, *Troca -'require' por 'library'* ([5 dicas para melhores commits][]). - -Exitem formas especiais de escrever um *commit* que tenha ações do -repositório remoto como fechar um *issue* ou fazer uma referência a -outro *commit* ([ações nas mensagens de commit][]). As palavras -especiais são: `close`, `closes`, `closed`, `fix`, `fixes`, `fixed`, -`resolve`, `resolves`, `resolved`. Depois das palavras vem uma -identificação de *issue* ou *sha1*. - -```sh -git commit -m "Close #4. Bug devido ao encoding." -``` - -Visite para mais dicas de como escrever um *commit*: -[como-escrever-boas-mensagens-de-commit][] - -## Escrita do código - -Recomensa-se fortemente que ao escrever o código, não se ultrapasse 72 -caracteres por linha. Isso torna o texto/código mais legível nos -arquivos fontes. Linhas longas são difíceis de ler nos monitores atuais, -que possuem uma tela grande. - -Editores de texto (de verdade) geralmente possuem formas de auto quebrar -linhas, auto indentar/acomodar ou sinalizar a margem direita. O Emacs -tem [auto break lines][] e [refluxo de texto][]. Outros editores -permitem exibir uma linha vertical para indicar o limite, como o RStudio -(> Tools > Global Options > Code > Display > Margin column). - -[markdown]: http://br-mac.org/2013/09/o-que-e-markdown.html -[rmarkdown]: http://rmarkdown.rstudio.com/ -[merge request]: https://gitlab.c3sl.ufpr.br/pet-estatistica/git-tutorial/merge_requests -[ações nas mensagens de commit]: https://help.github.com/articles/closing-issues-via-commit-messages/ -[5 dicas para melhores commits]: https://robots.thoughtbot.com/5-useful-tips-for-a-better-commit-message -[auto break lines]: http://emacswiki.org/emacs/LineWrap -[refluxo de texto]: http://www.emacswiki.org/emacs/FillParagraph -[como-escrever-boas-mensagens-de-commit]: http://blog.diovani.com/post/101092814586/como-escrever-boas-mensagens-de-commit +Guia de contribuição +==================== + +Esse é um projeto público do PET Estatística aberto a +colaboradores. Para que a colaboração seja bem sucedida, seguem algumas +intruções e recomendações. + +## O funcionamento + +O núcleo do tutorial é o arquivo `git_tuto.Rmd`. O arquivo `Rmd` é +marcado por ser escrito com sintaxe [markdown][] com fragmentos de +código R. Os fragmentos de código R são interpretados durante a +compilação feita com a função `render` do pacote [rmarkdown][]. Por ser +escrito em markdown, o tutorial pode ser compilado em formatos como markdown (`.md`), html e PDF. + +Apesar de `Rmd` normalmente ter fragmentos de código R, nesse tutorial +predominam fragmentos de código shell, em outras palavras, são +fragmentos de código executados do terminal do Linux. Para ter um +fragmento de código shell que seja interpretado na compilação, tem-se +que fazê-lo conforme abaixo. + + ```{r, engine="sh"} + comando shell + ``` + +A compilação desse documento cria sempre um projeto Git do zero. Com +intruções do shell ao longo do documento, no instante da compilação, +arquivos são criados, adicionados (`git add`), commitados (`git +commit`), moficados, etc. Esse documento é, portanto, um documento +reproduzível. + +Para compilar o documento você deve abrir uma sessão R onde o diretório +de trabalho é o que contém o arquivo `git_tuto.Rmd` e rodar uma chamada +da função render. Usuários do RStudio podem fazer isso diretamente pelo +botão de compilar, presente na barra de ferramentas. + + ```{r, engine="sh"} + library(rmarkdown) + + render("git_tuto.Rmd") + ``` + +Os diretórios criados durante a compilação são sempre apagados, para que ao +compilar novamente, tudo seja reproduzido. O projeto deve recriar tudo e +é essa a intenção, apesar do custo. Se os diretórios não fossem +deletados antes de uma nova compilação, iria-se receber erros de +compilação. + +Esse documento usa instruções no terminal que podem ser particulares do +Linux, como o comando `tree` e `sed`. Portando, a reprodutibilidade da +compilação pode não acontecer em outros sistemas operacionais. + +## O fluxo de trabalho + +Esse projeto terá dois ramos persistentes: + + * `devel`: que irá receber imediatamente a contribuição dos + membros e será submetido a teste (no caso compilação). Se bem + sucedido, a contribuição é movida para o ramo `master`. + * `master`: que recebe a versão estável do projeto. + +Os membros devem criar ramos de demanda para adicionarem suas +contribuições. Por exemplo, se existe a demanda (*issue*) de acrescentar uma +sessão sobre o uso do programa `meld` para resolver conflitos de merge, +deve-se criar um ramo para isso, adicionar as contribuições e subir esse +ramo para o repositório remoto. Os *issues* criados no GitLab são +automaticamente numerados. Para nosso benefício, vamos usar o mesmo +número ao criar os *branches* para atender as correspondentes +demandas. Vamos usar o padrão `issue#?` em que `?` representa o número +do *issue*. + +```sh +git branch -b issue#3 + +... trabalha, git add, git commit ... +... trabalha, git add, git commit ... +... trabalha, git add, git commit ... + +git push origin issue#3 +``` + +Assim que der o `git push`, a próxima etapa é fazer uma requisição de +*merge*. Isso se faz pela interface do GitLab clicando em +[merge request][] no menu da esquerda, dentro da página do projeto, e +depois no botão *New Merge Request*. Lá é onde se designa o responsável +por avaliar e aplicar o *merge* e quais os *branches* envolvidos +(doador/receptor). + +Existe apenas uma regra que jamais deve ser quebrada: + +> Nunca dê `push` para os ramos `devel` e `master`. + +Esses ramos se receberão conteúdo provenientes de *merge* dos ramos de +demanda (*issue*). + +## Mensagens de commit + +É extremamente recomendado, por questões de organização e produtividade, +que as mensagens de commit sejam apropriadas. Não use mensagens vagas ou +óbvias do tipo *Modificações feitas*, *Arquivos incluídos*. Procure algo +como *Incluí arquivo de estilo CSS*, *Modifica preâmbulo*, *Troca +'require' por 'library'* ([5 dicas para melhores commits][]). + +Exitem formas especiais de escrever um *commit* que tenha ações do +repositório remoto como fechar um *issue* ou fazer uma referência a +outro *commit* ([ações nas mensagens de commit][]). As palavras +especiais são: `close`, `closes`, `closed`, `fix`, `fixes`, `fixed`, +`resolve`, `resolves`, `resolved`. Depois das palavras vem uma +identificação de *issue* ou *sha1*. + +```sh +git commit -m "Close #4. Bug devido ao encoding." +``` + +Visite para mais dicas de como escrever um *commit*: +[como-escrever-boas-mensagens-de-commit][] + +## Escrita do código + +Recomensa-se fortemente que ao escrever o código, não se ultrapasse 72 +caracteres por linha. Isso torna o texto/código mais legível nos +arquivos fontes. Linhas longas são difíceis de ler nos monitores atuais, +que possuem uma tela grande. + +Editores de texto (de verdade) geralmente possuem formas de auto quebrar +linhas, auto indentar/acomodar ou sinalizar a margem direita. O Emacs +tem [auto break lines][] e [refluxo de texto][]. Outros editores +permitem exibir uma linha vertical para indicar o limite, como o RStudio +(> Tools > Global Options > Code > Display > Margin column). + +[markdown]: http://br-mac.org/2013/09/o-que-e-markdown.html +[rmarkdown]: http://rmarkdown.rstudio.com/ +[merge request]: https://gitlab.c3sl.ufpr.br/pet-estatistica/git-tutorial/merge_requests +[ações nas mensagens de commit]: https://help.github.com/articles/closing-issues-via-commit-messages/ +[5 dicas para melhores commits]: https://robots.thoughtbot.com/5-useful-tips-for-a-better-commit-message +[auto break lines]: http://emacswiki.org/emacs/LineWrap +[refluxo de texto]: http://www.emacswiki.org/emacs/FillParagraph +[como-escrever-boas-mensagens-de-commit]: http://blog.diovani.com/post/101092814586/como-escrever-boas-mensagens-de-commit diff --git a/README.md b/README.md index edb947b3a473fcdcb4776b3ff367c6fa129ae083..b54ed0ae04501c248bab99ed83e10b735de9abb6 100644 --- a/README.md +++ b/README.md @@ -1,30 +1,30 @@ -Tutorial de Git -=============== - -O [Git][] é um sistema de controle de versão distribuído cuja finalidade -é permitir que muitas pessoas colaborem no mesmo projeto facilmente -"juntando" as contribuições dos membros e incorporando ao projeto com o -mínimo de esforço possível. - -Esse projeto tem a finalidade de aprofundar o conhecimento do Git e -documentar tal aprendizado em uma apostila que seja útil tanto para -iniciantes quanto para usuários intermediários. - -O projeto é desenvolvido no serviço GitLab do C3SL e acessado pelo link: - -<https://gitlab.c3sl.ufpr.br/pet-estatistica/apostila-git> - -Todas as contribuições ao projeto são bem vindas, tanto por meio de -[issue][] quando por *fork*. - -**PET Estatística UFPR** - - * [Alessandra Zeizer Dimas](https://gitlab.c3sl.ufpr.br/u/pazd11) - * [Ângela Luiza Cunha Legey](https://gitlab.c3sl.ufpr.br/u/alcl12) - * [Daniel Ikenaga](https://gitlab.c3sl.ufpr.br/u/di12) - * [Eduardo Elias Ribeiro Junior](https://gitlab.c3sl.ufpr.br/u/eerj12) - * [Gabriel Sartori Klostermann](https://gitlab.c3sl.ufpr.br/u/gsk12) - * [Jhenifer Caetano Veloso](https://gitlab.c3sl.ufpr.br/u/jcv13) - -[Git]: https://git-scm.com/book/pt-br/v1/Primeiros-passos-No%C3%A7%C3%B5es-B%C3%A1sicas-de-Git +Tutorial de Git +=============== + +O [Git][] é um sistema de controle de versão distribuído cuja finalidade +é permitir que muitas pessoas colaborem no mesmo projeto facilmente +"juntando" as contribuições dos membros e incorporando ao projeto com o +mínimo de esforço possível. + +Esse projeto tem a finalidade de aprofundar o conhecimento do Git e +documentar tal aprendizado em uma apostila que seja útil tanto para +iniciantes quanto para usuários intermediários. + +O projeto é desenvolvido no serviço GitLab do C3SL e acessado pelo link: + +<https://gitlab.c3sl.ufpr.br/pet-estatistica/apostila-git> + +Todas as contribuições ao projeto são bem vindas, tanto por meio de +[issue][] quando por *fork*. + +**PET Estatística UFPR** + + * [Alessandra Zeizer Dimas](https://gitlab.c3sl.ufpr.br/u/pazd11) + * [Ângela Luiza Cunha Legey](https://gitlab.c3sl.ufpr.br/u/alcl12) + * [Daniel Ikenaga](https://gitlab.c3sl.ufpr.br/u/di12) + * [Eduardo Elias Ribeiro Junior](https://gitlab.c3sl.ufpr.br/u/eerj12) + * [Gabriel Sartori Klostermann](https://gitlab.c3sl.ufpr.br/u/gsk12) + * [Jhenifer Caetano Veloso](https://gitlab.c3sl.ufpr.br/u/jcv13) + +[Git]: https://git-scm.com/book/pt-br/v1/Primeiros-passos-No%C3%A7%C3%B5es-B%C3%A1sicas-de-Git [issue]: https://gitlab.c3sl.ufpr.br/pet-estatistica/git-tutorial/issues \ No newline at end of file diff --git a/git_tuto.Rmd b/git_tuto.Rmd index 7889f111f1b47a3f6d34daf80ad6fcf08986afd5..b9412308bb2c0df79572660ef6fb4f6deca84a37 100644 --- a/git_tuto.Rmd +++ b/git_tuto.Rmd @@ -4,9 +4,11 @@ author: "PET Estatística UFPR" output: html_document: highlight: pygments - toc: true + keep_md: yes theme: flatly - keep_md: true + toc: yes + pdf_document: + toc: yes --- ```{r, include=FALSE} @@ -1840,6 +1842,103 @@ opts_chunk$set(eval=FALSE) **** ## Ignorando arquivos e diretórios +Há momentos em que é necessário a criação de arquivos e pastas, dentro do +repositório git, que não devem ser versionados, como é o caso de uma +compilação Latex, que gera arquivos auxiliares que não é preciso deixar +disponível a terceiros. Para esse intuito, o git possui um recurso que permite +que arquivos e pastas fiquem "invisíveis" para o software. + +Para que isso ocorra, é indispensável a criação de um arquivo com extensão +`.gitignore`, que o git irá reconhecer e efetuar leitura a procura de +pastas e arquivos a ignorar. Dentro deste arquivo, é imprescindível que seja +escrito, por linha, somente um nome de pasta ou arquivo a ser ignorado. + +### Padrões de formatos para o `.gitignore` + +* Linhas em branco não são lidas, servindo apenas como modo de separar e +organizar o arquivo. + +* Os caracteres ` # ` e ` ! ` são reservado do git. Para pastas ou arquivos +que os nomes comecem com ` # ` (Exemplo: #git.txt) ou ` ! ` (Exemplo: !git.txt), +deve-se usar uma barra invertida na frente do padrão (Exemplo: \\#ddd.txt, \\!ddd.txt). + +* O caracter ` # ` serve para efetuar comentários, ou seja, a linha que iniciar com `#` +não será interpretada pelo git. + +* O caracter `!` serve para negar um padrão, por exemplo, pode-se mandar o git +ignorar todos os arquivos de determinada pasta (Usando: Nome_Dir/*), +mas deixar de ignorar um arquivo específico dentro dela +(Exemplo: !Nome_Dir/Arquivo.txt). + +* O asterisco ` * ` pode ser usado para substituir parte do nome de +arquivos e pastas, ou o nome inteiro. Isso é valido também para a +extensão do arquivo. + +* Um diretório pode ser ignorado adicionando seu nome e uma barra ao final deste. + +* Dois asteriscos ` ** ` podem ser usados para substituir caminhos de subpastas, +como por exemplo, para ignorar o diretório Subpasta, +o caminho `/Exercicio/Teste/Pasta/Subpasta/` pode ser substituido por `/**/Subpasta/`. + + +### Exemplo + +O código abaixo é um exemplo de um arquivo com extensão `.gitignore`: + +```{r, engine="sh", eval=FALSE} +# Esta linha é um comentário. + +# Ignorando arquivos com extensão .aux menos o arquivo EXEMPLO.aux: + +*.aux +!EXEMPLO.aux + +# Ignorando todos os arquivos com nome EXEMPLO: + +EXEMPLO.* + +# Ignorando arquivos que possuam HTML no nome: + +HTML*.* + +# Ignorando as Subpastas e os arquivos da pasta DIR: + +DIR/* + +# Não ignorar apenas a Subpasta1 da pasta DIR: + +!DIR/Subpasta1/ + +``` + +Vale ressaltar que, no exemplo acima, por mais que esteja sendo ignorado arquivos +com o nome EXEMPLO, e arquivos com extensão .aux, +o arquivo EXEMPLO.aux (que está pecedido do sinal `!`) não será ignorado. + +### Tornando Global + +Cada vez que cria-se um novo projeto, para que arquivos sejam ignorados, +deve-se criar um novo arquivo `.gitignore`. Para que isso não ocorra, e +possível configurar o arquivo globalmente, ou seja, ele estará incorporado +as configurações do git do seu computador. + + +```{r, engine="sh", eval=FALSE} +git config --global core.excludesfile ~/.gitignore_global +``` + + Depois de executar o código acima, o `.gitignore` da pasta atual + (pasta do seu projeto) será atribuido como global no arquivo de + configuração do git (`.gitconfig`). + + Uma observação importante a ser feita é que, se adicionado arquivos para + serem ignorados globalmente, como arquivos PDF (Usando: *.pdf), por exemplo, + todos os arquivos com essa extensão serão ignorados pelo git, + não somente os do projeto atual. + Portanto, é recomendado somente definir um `.gitignore` como global, + se ele apenas desconsiderar arquivos auxiliares, ou seja, que não serão necessários + para compilações futuras. + **** ## Autenticando em contas do GitLab (c3sl) e GitHub diff --git a/git_tuto.md b/git_tuto.md index e0aaca7326e42f686c5b39eec185865548de7bd4..1e4eb8f7a448fc2532d90ce5e0d2fe0f853a020f 100644 --- a/git_tuto.md +++ b/git_tuto.md @@ -69,7 +69,14 @@ Playlists de tutoriais de Git **** ## O que é o Git? -TODO +O Git é uma ferramenta de controle de versão que facilita os projetos em equipe +a verficação do mesmo. Basicamente, o Git detecta as mudanças que ocorrem no +arquivo, bem como onde ocorreu e qual mudança foi feita. Ainda existe a +possibilidade de voltar no histórico do projeto, sempre que necessário. +Outra facilidade está na equipe trabalhar em cima do projeto ao mesmo tempo, +e no final o Git faz o trabalho de juntar todos os arquivos mostrando se há +algum conflito. Integrantes podem mandar sugestões de alterações, e cabe ao +responsável pelo projeto incorporar ou não essas alterações. **** ## Download e instalação @@ -252,49 +259,53 @@ git help -a ``` usage: git [--version] [--help] [-C <path>] [-c name=value] [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path] - [-p | --paginate | --no-pager] [--no-replace-objects] [--bare] + [-p|--paginate|--no-pager] [--no-replace-objects] [--bare] [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>] <command> [<args>] -available git commands in '/usr/lib/git-core' +disponível comandos git em '/usr/lib/git-core' add merge-octopus add--interactive merge-one-file am merge-ours annotate merge-recursive apply merge-resolve - archive merge-subtree - bisect merge-tree - bisect--helper mergetool - blame mktag - branch mktree - bundle mv - cat-file name-rev - check-attr notes + archimport merge-subtree + archive merge-tree + bisect mergetool + bisect--helper mktag + blame mktree + branch mv + bundle name-rev + cat-file notes + check-attr p4 check-ignore pack-objects check-mailmap pack-redundant check-ref-format pack-refs checkout patch-id - checkout-index prune - cherry prune-packed - cherry-pick pull - citool push - clean quiltimport - clone read-tree - column rebase - commit receive-pack - commit-tree reflog - config relink - count-objects remote - credential remote-ext - credential-cache remote-fd - credential-cache--daemon remote-ftp - credential-store remote-ftps - daemon remote-http - describe remote-https - diff remote-testsvn - diff-files repack - diff-index replace + checkout-index peek-remote + cherry prune + cherry-pick prune-packed + citool pull + clean push + clone quiltimport + column read-tree + commit rebase + commit-tree receive-pack + config reflog + count-objects relink + credential remote + credential-cache remote-ext + credential-cache--daemon remote-fd + credential-store remote-ftp + cvsexportcommit remote-ftps + cvsimport remote-http + cvsserver remote-https + daemon remote-testpy + describe remote-testsvn + diff repack + diff-files replace + diff-index repo-config diff-tree request-pull difftool rerere difftool--helper reset @@ -302,40 +313,40 @@ available git commands in '/usr/lib/git-core' fast-import rev-parse fetch revert fetch-pack rm - filter-branch send-pack - fmt-merge-msg sh-i18n--envsubst - for-each-ref shell - format-patch shortlog - fsck show - fsck-objects show-branch - gc show-index - get-tar-commit-id show-ref - grep stage - gui stash - gui--askpass status - hash-object stripspace - help submodule - http-backend subtree - http-fetch symbolic-ref - http-push tag - imap-send unpack-file - index-pack unpack-objects - init update-index - init-db update-ref - instaweb update-server-info - interpret-trailers upload-archive - log upload-pack - ls-files var - ls-remote verify-commit - ls-tree verify-pack - mailinfo verify-tag - mailsplit web--browse - merge whatchanged - merge-base worktree - merge-file write-tree - merge-index - -'git help -a' and 'git help -g' list available subcommands and some + filter-branch send-email + fmt-merge-msg send-pack + for-each-ref sh-i18n--envsubst + format-patch shell + fsck shortlog + fsck-objects show + gc show-branch + get-tar-commit-id show-index + grep show-ref + gui stage + gui--askpass stash + hash-object status + help stripspace + http-backend submodule + http-fetch subtree + http-push svn + imap-send symbolic-ref + index-pack tag + init tar-tree + init-db unpack-file + instaweb unpack-objects + log update-index + lost-found update-ref + ls-files update-server-info + ls-remote upload-archive + ls-tree upload-pack + mailinfo var + mailsplit verify-pack + merge verify-tag + merge-base web--browse + merge-file whatchanged + merge-index write-tree + +'git help -a' and 'git help -g' lists available subcommands and some concept guides. See 'git help <command>' or 'git help <concept>' to read about a specific subcommand or concept. ``` @@ -349,49 +360,53 @@ git help -a ``` usage: git [--version] [--help] [-C <path>] [-c name=value] [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path] - [-p | --paginate | --no-pager] [--no-replace-objects] [--bare] + [-p|--paginate|--no-pager] [--no-replace-objects] [--bare] [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>] <command> [<args>] -available git commands in '/usr/lib/git-core' +disponível comandos git em '/usr/lib/git-core' add merge-octopus add--interactive merge-one-file am merge-ours annotate merge-recursive apply merge-resolve - archive merge-subtree - bisect merge-tree - bisect--helper mergetool - blame mktag - branch mktree - bundle mv - cat-file name-rev - check-attr notes + archimport merge-subtree + archive merge-tree + bisect mergetool + bisect--helper mktag + blame mktree + branch mv + bundle name-rev + cat-file notes + check-attr p4 check-ignore pack-objects check-mailmap pack-redundant check-ref-format pack-refs checkout patch-id - checkout-index prune - cherry prune-packed - cherry-pick pull - citool push - clean quiltimport - clone read-tree - column rebase - commit receive-pack - commit-tree reflog - config relink - count-objects remote - credential remote-ext - credential-cache remote-fd - credential-cache--daemon remote-ftp - credential-store remote-ftps - daemon remote-http - describe remote-https - diff remote-testsvn - diff-files repack - diff-index replace + checkout-index peek-remote + cherry prune + cherry-pick prune-packed + citool pull + clean push + clone quiltimport + column read-tree + commit rebase + commit-tree receive-pack + config reflog + count-objects relink + credential remote + credential-cache remote-ext + credential-cache--daemon remote-fd + credential-store remote-ftp + cvsexportcommit remote-ftps + cvsimport remote-http + cvsserver remote-https + daemon remote-testpy + describe remote-testsvn + diff repack + diff-files replace + diff-index repo-config diff-tree request-pull difftool rerere difftool--helper reset @@ -399,40 +414,40 @@ available git commands in '/usr/lib/git-core' fast-import rev-parse fetch revert fetch-pack rm - filter-branch send-pack - fmt-merge-msg sh-i18n--envsubst - for-each-ref shell - format-patch shortlog - fsck show - fsck-objects show-branch - gc show-index - get-tar-commit-id show-ref - grep stage - gui stash - gui--askpass status - hash-object stripspace - help submodule - http-backend subtree - http-fetch symbolic-ref - http-push tag - imap-send unpack-file - index-pack unpack-objects - init update-index - init-db update-ref - instaweb update-server-info - interpret-trailers upload-archive - log upload-pack - ls-files var - ls-remote verify-commit - ls-tree verify-pack - mailinfo verify-tag - mailsplit web--browse - merge whatchanged - merge-base worktree - merge-file write-tree - merge-index - -'git help -a' and 'git help -g' list available subcommands and some + filter-branch send-email + fmt-merge-msg send-pack + for-each-ref sh-i18n--envsubst + format-patch shell + fsck shortlog + fsck-objects show + gc show-branch + get-tar-commit-id show-index + grep show-ref + gui stage + gui--askpass stash + hash-object status + help stripspace + http-backend submodule + http-fetch subtree + http-push svn + imap-send symbolic-ref + index-pack tag + init tar-tree + init-db unpack-file + instaweb unpack-objects + log update-index + lost-found update-ref + ls-files update-server-info + ls-remote upload-archive + ls-tree upload-pack + mailinfo var + mailsplit verify-pack + merge verify-tag + merge-base web--browse + merge-file whatchanged + merge-index write-tree + +'git help -a' and 'git help -g' lists available subcommands and some concept guides. See 'git help <command>' or 'git help <concept>' to read about a specific subcommand or concept. ``` @@ -496,7 +511,7 @@ git init ``` ``` -Initialized empty Git repository in /home/walmes/GitLab/git-tutorial/meu1repo/.git/ +Initialized empty Git repository in /media/acn13/- Arquivos -/Projetos_GIT/apostila-git/meu1repo/.git/ ``` O Git retorna a mensagem de inicilização do repositório. Nesse momento @@ -588,16 +603,16 @@ git status ``` ``` -On branch master +No ramo master -Initial commit +Submissão inicial. -Untracked files: - (use "git add <file>..." to include in what will be committed) +Arquivos não monitorados: + (utilize "git add <arquivo>..." para incluir o que será submetido) README.txt -nothing added to commit but untracked files present (use "git add" to track) +nada adicionado ao envio mas arquivos não registrados estão presentes (use "git add" to registrar) ``` Para que o arquivo seja incluído no monitoramento é necessário que ele @@ -626,12 +641,12 @@ git status ``` ``` -On branch master +No ramo master -Initial commit +Submissão inicial. -Changes to be committed: - (use "git rm --cached <file>..." to unstage) +Mudanças a serem submetidas: + (utilize "git rm --cached <arquivo>..." para não apresentar) new file: README.txt ``` @@ -652,7 +667,19 @@ git commit -m "Cria arquivo com título." ``` ``` -[master (root-commit) d464172] Cria arquivo com título. +[master (root-commit) e248651] Cria arquivo com título. + Committer: Teste <acn13@inf.ufpr.br> +Your name and email address were configured automatically based +on your username and hostname. Please check that they are accurate. +You can suppress this message by setting them explicitly: + + git config --global user.name "Your Name" + git config --global user.email you@example.com + +After doing this, you may fix the identity used for this commit with: + + git commit --amend --reset-author + 1 file changed, 1 insertion(+) create mode 100644 README.txt ``` @@ -737,19 +764,19 @@ git status ``` ``` -On branch master +No ramo 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) + (utilize "git add <arquivo>..." para atualizar o que será submetido) + (utilize "git checkout -- <arquivo>..." para descartar mudanças no diretório de trabalho) - modified: README.txt + modificado: README.txt -Untracked files: - (use "git add <file>..." to include in what will be committed) +Arquivos não monitorados: + (utilize "git add <arquivo>..." para incluir o que será submetido) porqueLinux.txt -no changes added to commit (use "git add" and/or "git commit -a") +nenhuma modificação adicionada à submissão (utilize "git add" e/ou "git commit -a") ``` O Git retornou dois campos. No primeiro ele diz que existem mudanças no @@ -773,9 +800,9 @@ git log ``` ``` -commit d464172b670744c31c52728bbf3c06931824afd2 -Author: Walmes Zeviani <walmes@ufpr.br> -Date: Wed Sep 23 21:02:38 2015 -0300 +commit e2486515a9e75bf8e9e2e38e63e557c32ad887bf +Author: Teste <acn13@inf.ufpr.br> +Date: Thu Oct 1 16:36:58 2015 -0300 Cria arquivo com título. ``` @@ -818,17 +845,17 @@ git status ``` ``` -On branch master -Changes to be committed: +No ramo master +Mudanças a serem submetidas: (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) + (utilize "git add <arquivo>..." para atualizar o que será submetido) + (utilize "git checkout -- <arquivo>..." para descartar mudanças no diretório de trabalho) - modified: README.txt + modificado: README.txt ``` @@ -838,7 +865,19 @@ git commit -m "Lista de inicial de o porquê usar o Linux." ``` ``` -[master 401c4e3] Lista de inicial de o porquê usar o Linux. +[master 68a99fc] Lista de inicial de o porquê usar o Linux. + Committer: Teste <acn13@inf.ufpr.br> +Your name and email address were configured automatically based +on your username and hostname. Please check that they are accurate. +You can suppress this message by setting them explicitly: + + git config --global user.name "Your Name" + git config --global user.email you@example.com + +After doing this, you may fix the identity used for this commit with: + + git commit --amend --reset-author + 1 file changed, 5 insertions(+) create mode 100644 porqueLinux.txt ``` @@ -849,14 +888,14 @@ git status ``` ``` -On branch master +No ramo 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) + (utilize "git add <arquivo>..." para atualizar o que será submetido) + (utilize "git checkout -- <arquivo>..." para descartar mudanças no diretório de trabalho) - modified: README.txt + modificado: README.txt -no changes added to commit (use "git add" and/or "git commit -a") +nenhuma modificação adicionada à submissão (utilize "git add" e/ou "git commit -a") ``` Ainda resta o `REAMDE.txt` para receber registro. Você não precisa fazer @@ -876,11 +915,11 @@ git status ``` ``` -On branch master -Changes to be committed: +No ramo master +Mudanças a serem submetidas: (use "git reset HEAD <file>..." to unstage) - modified: README.txt + modificado: README.txt ``` @@ -890,7 +929,19 @@ git commit -m "Adiciona frase do Linux Torvalds." ``` ``` -[master eafb4ca] Adiciona frase do Linux Torvalds. +[master 28205ac] Adiciona frase do Linux Torvalds. + Committer: Teste <acn13@inf.ufpr.br> +Your name and email address were configured automatically based +on your username and hostname. Please check that they are accurate. +You can suppress this message by setting them explicitly: + + git config --global user.name "Your Name" + git config --global user.email you@example.com + +After doing this, you may fix the identity used for this commit with: + + git commit --amend --reset-author + 1 file changed, 4 insertions(+) ``` @@ -904,9 +955,9 @@ git log --oneline ``` ``` -eafb4ca Adiciona frase do Linux Torvalds. -401c4e3 Lista de inicial de o porquê usar o Linux. -d464172 Cria arquivo com título. +28205ac Adiciona frase do Linux Torvalds. +68a99fc Lista de inicial de o porquê usar o Linux. +e248651 Cria arquivo com título. ``` Por meio dos *sha1*, podemos aplicar o *diff* para visitarmos as @@ -998,14 +1049,14 @@ git status ``` ``` -On branch master +No ramo 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) + (utilize "git add <arquivo>..." para atualizar o que será submetido) + (utilize "git checkout -- <arquivo>..." para descartar mudanças no diretório de trabalho) - modified: porqueLinux.txt + modificado: porqueLinux.txt -no changes added to commit (use "git add" and/or "git commit -a") +nenhuma modificação adicionada à submissão (utilize "git add" e/ou "git commit -a") ``` O Git sugere você aplicar *add* para preparar para *commit*. Caso as @@ -1065,8 +1116,8 @@ git status ``` ``` -On branch master -nothing to commit, working directory clean +No ramo master +nada a submeter, diretório de trabalho vazio ``` Vamos seguir com as modificações em `porqueLinux.txt` que corrigem o @@ -1080,14 +1131,14 @@ git status ``` ``` -On branch master +No ramo 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) + (utilize "git add <arquivo>..." para atualizar o que será submetido) + (utilize "git checkout -- <arquivo>..." para descartar mudanças no diretório de trabalho) - modified: porqueLinux.txt + modificado: porqueLinux.txt -no changes added to commit (use "git add" and/or "git commit -a") +nenhuma modificação adicionada à submissão (utilize "git add" e/ou "git commit -a") ``` O `diff` vazio compara o diretório de trabalho com o último registro @@ -1204,9 +1255,9 @@ git reflog ``` ``` -eafb4ca HEAD@{0}: commit: Adiciona frase do Linux Torvalds. -401c4e3 HEAD@{1}: commit: Lista de inicial de o porquê usar o Linux. -d464172 HEAD@{2}: commit (initial): Cria arquivo com título. +28205ac HEAD@{0}: commit: Adiciona frase do Linux Torvalds. +68a99fc HEAD@{1}: commit: Lista de inicial de o porquê usar o Linux. +e248651 HEAD@{2}: commit (initial): Cria arquivo com título. ``` @@ -1217,7 +1268,19 @@ git commit -m "Novos argumentos." ``` ``` -[master e72af47] Novos argumentos. +[master e57eeaf] Novos argumentos. + Committer: Teste <acn13@inf.ufpr.br> +Your name and email address were configured automatically based +on your username and hostname. Please check that they are accurate. +You can suppress this message by setting them explicitly: + + git config --global user.name "Your Name" + git config --global user.email you@example.com + +After doing this, you may fix the identity used for this commit with: + + git commit --amend --reset-author + 1 file changed, 4 insertions(+), 1 deletion(-) ``` @@ -1232,11 +1295,11 @@ git blame README.txt ``` ``` -^d464172 (Walmes Zeviani 2015-09-23 21:02:38 -0300 1) Meu primeiro repositório Git -eafb4cab (Walmes Zeviani 2015-09-23 21:02:39 -0300 2) -eafb4cab (Walmes Zeviani 2015-09-23 21:02:39 -0300 3) A filosofia do Linux é 'Ria na face do perigo'. -eafb4cab (Walmes Zeviani 2015-09-23 21:02:39 -0300 4) Ôpa. Errado. 'Faça você mesmo'. É, é essa. -eafb4cab (Walmes Zeviani 2015-09-23 21:02:39 -0300 5) -- Lunus Torvalds +^e248651 (Teste 2015-10-01 16:36:58 -0300 1) Meu primeiro repositório Git +28205ac7 (Teste 2015-10-01 16:36:59 -0300 2) +28205ac7 (Teste 2015-10-01 16:36:59 -0300 3) A filosofia do Linux é 'Ria na face do perigo'. +28205ac7 (Teste 2015-10-01 16:36:59 -0300 4) Ôpa. Errado. 'Faça você mesmo'. É, é essa. +28205ac7 (Teste 2015-10-01 16:36:59 -0300 5) -- Lunus Torvalds ``` **** @@ -1301,8 +1364,8 @@ git status ``` ``` -On branch feature01 -nothing to commit, working directory clean +No ramo feature01 +nada a submeter, diretório de trabalho vazio ``` @@ -1312,10 +1375,10 @@ git log --oneline ``` ``` -e72af47 Novos argumentos. -eafb4ca Adiciona frase do Linux Torvalds. -401c4e3 Lista de inicial de o porquê usar o Linux. -d464172 Cria arquivo com título. +e57eeaf Novos argumentos. +28205ac Adiciona frase do Linux Torvalds. +68a99fc Lista de inicial de o porquê usar o Linux. +e248651 Cria arquivo com título. ``` Veja que o novo ramo não começa no zero ou vazio (sem arquivos) e sim a @@ -1336,7 +1399,7 @@ wget 'http://people.ufpr.br/~giolo/CE071/Exemplos/vif.R' ``` ---2015-09-23 21:02:39-- http://people.ufpr.br/~giolo/CE071/Exemplos/vif.R +--2015-10-01 16:36:59-- 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 @@ -1345,7 +1408,7 @@ Saving to: ‘vif.R’ 0K 100% 44,0M=0s -2015-09-23 21:02:39 (44,0 MB/s) - ‘vif.R’ saved [560/560] +2015-10-01 16:36:59 (44,0 MB/s) - ‘vif.R’ saved [560/560] ``` @@ -1355,13 +1418,13 @@ git status ``` ``` -On branch feature01 -Untracked files: - (use "git add <file>..." to include in what will be committed) +No ramo feature01 +Arquivos não monitorados: + (utilize "git add <arquivo>..." para incluir o que será submetido) vif.R -nothing added to commit but untracked files present (use "git add" to track) +nada adicionado ao envio mas arquivos não registrados estão presentes (use "git add" to registrar) ``` @@ -1371,7 +1434,19 @@ git commit -m "Adiciona função R para VIF." ``` ``` -[feature01 91b3d67] Adiciona função R para VIF. +[feature01 294a431] Adiciona função R para VIF. + Committer: Teste <acn13@inf.ufpr.br> +Your name and email address were configured automatically based +on your username and hostname. Please check that they are accurate. +You can suppress this message by setting them explicitly: + + git config --global user.name "Your Name" + git config --global user.email you@example.com + +After doing this, you may fix the identity used for this commit with: + + git commit --amend --reset-author + 1 file changed, 20 insertions(+) create mode 100644 vif.R ``` @@ -1398,12 +1473,12 @@ git reflog ``` ``` -91b3d67 HEAD@{0}: commit: Adiciona função R para VIF. -e72af47 HEAD@{1}: checkout: moving from master to feature01 -e72af47 HEAD@{2}: commit: Novos argumentos. -eafb4ca HEAD@{3}: commit: Adiciona frase do Linux Torvalds. -401c4e3 HEAD@{4}: commit: Lista de inicial de o porquê usar o Linux. -d464172 HEAD@{5}: commit (initial): Cria arquivo com título. +294a431 HEAD@{0}: commit: Adiciona função R para VIF. +e57eeaf HEAD@{1}: checkout: moving from master to feature01 +e57eeaf HEAD@{2}: commit: Novos argumentos. +28205ac HEAD@{3}: commit: Adiciona frase do Linux Torvalds. +68a99fc HEAD@{4}: commit: Lista de inicial de o porquê usar o Linux. +e248651 HEAD@{5}: commit (initial): Cria arquivo com título. ``` @@ -1412,8 +1487,8 @@ git status ``` ``` -On branch feature01 -nothing to commit, working directory clean +No ramo feature01 +nada a submeter, diretório de trabalho vazio ``` Então acabamos de acrescentar um novo aquivo ao projeto. Agora que as @@ -1506,7 +1581,7 @@ git merge feature01 master ``` ``` -Updating e72af47..91b3d67 +Updating e57eeaf..294a431 Fast-forward vif.R | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) @@ -1519,11 +1594,11 @@ git log --oneline ``` ``` -91b3d67 Adiciona função R para VIF. -e72af47 Novos argumentos. -eafb4ca Adiciona frase do Linux Torvalds. -401c4e3 Lista de inicial de o porquê usar o Linux. -d464172 Cria arquivo com título. +294a431 Adiciona função R para VIF. +e57eeaf Novos argumentos. +28205ac Adiciona frase do Linux Torvalds. +68a99fc Lista de inicial de o porquê usar o Linux. +e248651 Cria arquivo com título. ``` É possível criar um ramo a partir de um *commit* ancestral ao atual. Isso @@ -1537,14 +1612,14 @@ git reflog ``` ``` -91b3d67 HEAD@{0}: merge feature01: Fast-forward -e72af47 HEAD@{1}: checkout: moving from feature01 to master -91b3d67 HEAD@{2}: commit: Adiciona função R para VIF. -e72af47 HEAD@{3}: checkout: moving from master to feature01 -e72af47 HEAD@{4}: commit: Novos argumentos. -eafb4ca HEAD@{5}: commit: Adiciona frase do Linux Torvalds. -401c4e3 HEAD@{6}: commit: Lista de inicial de o porquê usar o Linux. -d464172 HEAD@{7}: commit (initial): Cria arquivo com título. +294a431 HEAD@{0}: merge feature01: Fast-forward +e57eeaf HEAD@{1}: checkout: moving from feature01 to master +294a431 HEAD@{2}: commit: Adiciona função R para VIF. +e57eeaf HEAD@{3}: checkout: moving from master to feature01 +e57eeaf HEAD@{4}: commit: Novos argumentos. +28205ac HEAD@{5}: commit: Adiciona frase do Linux Torvalds. +68a99fc HEAD@{6}: commit: Lista de inicial de o porquê usar o Linux. +e248651 HEAD@{7}: commit (initial): Cria arquivo com título. ``` @@ -1563,9 +1638,9 @@ 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> + git checkout -b new_branch_name -HEAD is now at e72af47... Novos argumentos. +HEAD is now at e57eeaf... Novos argumentos. ``` @@ -1575,8 +1650,8 @@ git status ``` ``` -HEAD detached at e72af47 -nothing to commit, working directory clean +HEAD detached at e57eeaf +nada a submeter, diretório de trabalho vazio ``` @@ -1586,13 +1661,13 @@ git log --name-only --oneline ``` ``` -e72af47 Novos argumentos. +e57eeaf Novos argumentos. porqueLinux.txt -eafb4ca Adiciona frase do Linux Torvalds. +28205ac Adiciona frase do Linux Torvalds. README.txt -401c4e3 Lista de inicial de o porquê usar o Linux. +68a99fc Lista de inicial de o porquê usar o Linux. porqueLinux.txt -d464172 Cria arquivo com título. +e248651 Cria arquivo com título. README.txt ``` @@ -1629,7 +1704,7 @@ git branch ``` ``` -* (HEAD detached at e72af47) +* (detached from e57eeaf) feature01 master ``` @@ -1645,7 +1720,7 @@ git checkout master ``` ``` -Previous HEAD position was e72af47... Novos argumentos. +Previous HEAD position was e57eeaf... Novos argumentos. Switched to branch 'master' ``` @@ -1655,8 +1730,8 @@ git status ``` ``` -On branch master -nothing to commit, working directory clean +No ramo master +nada a submeter, diretório de trabalho vazio ``` @@ -1665,11 +1740,11 @@ git log --oneline ``` ``` -91b3d67 Adiciona função R para VIF. -e72af47 Novos argumentos. -eafb4ca Adiciona frase do Linux Torvalds. -401c4e3 Lista de inicial de o porquê usar o Linux. -d464172 Cria arquivo com título. +294a431 Adiciona função R para VIF. +e57eeaf Novos argumentos. +28205ac Adiciona frase do Linux Torvalds. +68a99fc Lista de inicial de o porquê usar o Linux. +e248651 Cria arquivo com título. ``` @@ -1690,16 +1765,16 @@ git reflog ``` ``` -91b3d67 HEAD@{0}: checkout: moving from e72af47b79b09cef3910a2f31b7c3961cee04bab to master -e72af47 HEAD@{1}: checkout: moving from master to HEAD@{4} -91b3d67 HEAD@{2}: merge feature01: Fast-forward -e72af47 HEAD@{3}: checkout: moving from feature01 to master -91b3d67 HEAD@{4}: commit: Adiciona função R para VIF. -e72af47 HEAD@{5}: checkout: moving from master to feature01 -e72af47 HEAD@{6}: commit: Novos argumentos. -eafb4ca HEAD@{7}: commit: Adiciona frase do Linux Torvalds. -401c4e3 HEAD@{8}: commit: Lista de inicial de o porquê usar o Linux. -d464172 HEAD@{9}: commit (initial): Cria arquivo com título. +294a431 HEAD@{0}: checkout: moving from e57eeaff9e77da94b22e5da043676a3cf70ed0b1 to master +e57eeaf HEAD@{1}: checkout: moving from master to HEAD@{4} +294a431 HEAD@{2}: merge feature01: Fast-forward +e57eeaf HEAD@{3}: checkout: moving from feature01 to master +294a431 HEAD@{4}: commit: Adiciona função R para VIF. +e57eeaf HEAD@{5}: checkout: moving from master to feature01 +e57eeaf HEAD@{6}: commit: Novos argumentos. +28205ac HEAD@{7}: commit: Adiciona frase do Linux Torvalds. +68a99fc HEAD@{8}: commit: Lista de inicial de o porquê usar o Linux. +e248651 HEAD@{9}: commit (initial): Cria arquivo com título. ``` Vamos começar a ser ousados. Vamos voltar no passado, adicionar um @@ -1721,9 +1796,9 @@ 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> + git checkout -b new_branch_name -HEAD is now at e72af47... Novos argumentos. +HEAD is now at e57eeaf... Novos argumentos. ``` @@ -1756,13 +1831,13 @@ git status ``` ``` -HEAD detached at e72af47 -Untracked files: - (use "git add <file>..." to include in what will be committed) +HEAD detached at e57eeaf +Arquivos não monitorados: + (utilize "git add <arquivo>..." para incluir o que será submetido) pimentel_racoes.txt -nothing added to commit but untracked files present (use "git add" to track) +nada adicionado ao envio mas arquivos não registrados estão presentes (use "git add" to registrar) ``` @@ -1773,7 +1848,19 @@ git commit -m "Adiciona aquivo de dados de experimento com rações." ``` ``` -[detached HEAD 50570e8] Adiciona aquivo de dados de experimento com rações. +[detached HEAD eb21436] Adiciona aquivo de dados de experimento com rações. + Committer: Teste <acn13@inf.ufpr.br> +Your name and email address were configured automatically based +on your username and hostname. Please check that they are accurate. +You can suppress this message by setting them explicitly: + + git config --global user.name "Your Name" + git config --global user.email you@example.com + +After doing this, you may fix the identity used for this commit with: + + git commit --amend --reset-author + 1 file changed, 24 insertions(+) create mode 100644 pimentel_racoes.txt ``` @@ -1784,8 +1871,8 @@ git status ``` ``` -HEAD detached from e72af47 -nothing to commit, working directory clean +HEAD detached from e57eeaf +nada a submeter, diretório de trabalho vazio ``` @@ -1795,13 +1882,13 @@ git log --graph --oneline --decorate --date=relative --all ``` ``` -* 50570e8 (HEAD) Adiciona aquivo de dados de experimento com rações. -| * 91b3d67 (master, feature01) Adiciona função R para VIF. +* eb21436 (HEAD) Adiciona aquivo de dados de experimento com rações. +| * 294a431 (master, feature01) Adiciona função R para VIF. |/ -* e72af47 Novos argumentos. -* eafb4ca Adiciona frase do Linux Torvalds. -* 401c4e3 Lista de inicial de o porquê usar o Linux. -* d464172 Cria arquivo com título. +* e57eeaf Novos argumentos. +* 28205ac Adiciona frase do Linux Torvalds. +* 68a99fc Lista de inicial de o porquê usar o Linux. +* e248651 Cria arquivo com título. ``` No nosso projeto temos o *master* e o *feature01* em igual condição, sem @@ -1816,7 +1903,7 @@ git branch ``` ``` -* (HEAD detached from e72af47) +* (detached from e57eeaf) feature01 master ``` @@ -1848,13 +1935,13 @@ git log --graph --oneline --decorate --date=relative --all ``` ``` -* 50570e8 (HEAD -> feature02) Adiciona aquivo de dados de experimento com rações. -| * 91b3d67 (master, feature01) Adiciona função R para VIF. +* eb21436 (HEAD, feature02) Adiciona aquivo de dados de experimento com rações. +| * 294a431 (master, feature01) Adiciona função R para VIF. |/ -* e72af47 Novos argumentos. -* eafb4ca Adiciona frase do Linux Torvalds. -* 401c4e3 Lista de inicial de o porquê usar o Linux. -* d464172 Cria arquivo com título. +* e57eeaf Novos argumentos. +* 28205ac Adiciona frase do Linux Torvalds. +* 68a99fc Lista de inicial de o porquê usar o Linux. +* e248651 Cria arquivo com título. ``` Vamos explorar bem a funcionalidade. Vamos voltar para o `feature01` e @@ -1876,7 +1963,7 @@ Switched to branch 'feature01' ``` Diretório existe. Arquivo brasilCopa2014.txt já existe. -‘brasilCopa2014.txt’ -> ‘../meu1repo/brasilCopa2014.txt’ +“brasilCopa2014.txt” -> “../meu1repo/brasilCopa2014.txt” ``` @@ -1886,7 +1973,7 @@ wget 'http://www.leg.ufpr.br/~walmes/cursoR/geneticaEsalq/brasilCopa2014.txt' ``` ---2015-09-23 21:02:40-- http://www.leg.ufpr.br/~walmes/cursoR/geneticaEsalq/brasilCopa2014.txt +--2015-10-01 16:37:00-- 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 @@ -1895,7 +1982,7 @@ Saving to: ‘brasilCopa2014.txt’ 0K . 100% 69,6M=0s -2015-09-23 21:02:40 (69,6 MB/s) - ‘brasilCopa2014.txt’ saved [1254/1254] +2015-10-01 16:37:00 (69,6 MB/s) - ‘brasilCopa2014.txt’ saved [1254/1254] ``` @@ -1905,7 +1992,19 @@ git commit -m "Arquivo sobre copa 2014 celeção brasileira." ``` ``` -[feature01 391678a] Arquivo sobre copa 2014 celeção brasileira. +[feature01 6737802] Arquivo sobre copa 2014 celeção brasileira. + Committer: Teste <acn13@inf.ufpr.br> +Your name and email address were configured automatically based +on your username and hostname. Please check that they are accurate. +You can suppress this message by setting them explicitly: + + git config --global user.name "Your Name" + git config --global user.email you@example.com + +After doing this, you may fix the identity used for this commit with: + + git commit --amend --reset-author + 1 file changed, 22 insertions(+) create mode 100644 brasilCopa2014.txt ``` @@ -1916,14 +2015,14 @@ git log --graph --oneline --decorate --date=relative --all ``` ``` -* 391678a (HEAD -> feature01) Arquivo sobre copa 2014 celeção brasileira. -* 91b3d67 (master) Adiciona função R para VIF. -| * 50570e8 (feature02) Adiciona aquivo de dados de experimento com rações. +* 6737802 (HEAD, feature01) Arquivo sobre copa 2014 celeção brasileira. +* 294a431 (master) Adiciona função R para VIF. +| * eb21436 (feature02) Adiciona aquivo de dados de experimento com rações. |/ -* e72af47 Novos argumentos. -* eafb4ca Adiciona frase do Linux Torvalds. -* 401c4e3 Lista de inicial de o porquê usar o Linux. -* d464172 Cria arquivo com título. +* e57eeaf Novos argumentos. +* 28205ac Adiciona frase do Linux Torvalds. +* 68a99fc Lista de inicial de o porquê usar o Linux. +* e248651 Cria arquivo com título. ``` Agora nos temos o *feature01* na frente do master e o *feature02* ao @@ -1955,7 +2054,7 @@ git merge feature01 master ``` ``` -Updating 91b3d67..391678a +Updating 294a431..6737802 Fast-forward brasilCopa2014.txt | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) @@ -1981,16 +2080,16 @@ git log --graph --oneline --decorate --date=relative --all ``` ``` -* c352044 (HEAD -> master) Merge branch 'feature02' +* 9bf4962 (HEAD, master) Merge branch 'feature02' |\ -| * 50570e8 (feature02) Adiciona aquivo de dados de experimento com rações. -* | 391678a (feature01) Arquivo sobre copa 2014 celeção brasileira. -* | 91b3d67 Adiciona função R para VIF. +| * eb21436 (feature02) Adiciona aquivo de dados de experimento com rações. +* | 6737802 (feature01) Arquivo sobre copa 2014 celeção brasileira. +* | 294a431 Adiciona função R para VIF. |/ -* e72af47 Novos argumentos. -* eafb4ca Adiciona frase do Linux Torvalds. -* 401c4e3 Lista de inicial de o porquê usar o Linux. -* d464172 Cria arquivo com título. +* e57eeaf Novos argumentos. +* 28205ac Adiciona frase do Linux Torvalds. +* 68a99fc Lista de inicial de o porquê usar o Linux. +* e248651 Cria arquivo com título. ``` @@ -2029,8 +2128,8 @@ git branch ``` ``` -Deleted branch feature01 (was 391678a). -Deleted branch feature02 (was 50570e8). +Deleted branch feature01 (was 6737802). +Deleted branch feature02 (was eb21436). * master ``` @@ -2040,16 +2139,16 @@ git log --graph --oneline --decorate --date=relative --all ``` ``` -* c352044 (HEAD -> master) Merge branch 'feature02' +* 9bf4962 (HEAD, master) Merge branch 'feature02' |\ -| * 50570e8 Adiciona aquivo de dados de experimento com rações. -* | 391678a Arquivo sobre copa 2014 celeção brasileira. -* | 91b3d67 Adiciona função R para VIF. +| * eb21436 Adiciona aquivo de dados de experimento com rações. +* | 6737802 Arquivo sobre copa 2014 celeção brasileira. +* | 294a431 Adiciona função R para VIF. |/ -* e72af47 Novos argumentos. -* eafb4ca Adiciona frase do Linux Torvalds. -* 401c4e3 Lista de inicial de o porquê usar o Linux. -* d464172 Cria arquivo com título. +* e57eeaf Novos argumentos. +* 28205ac Adiciona frase do Linux Torvalds. +* 68a99fc Lista de inicial de o porquê usar o Linux. +* e248651 Cria arquivo com título. ``` Agora vou criar um novo ramo, adicionar um arquivo e encurtar o nome das @@ -2075,7 +2174,7 @@ wget 'http://www.leg.ufpr.br/~walmes/data/bib1.txt' ``` ---2015-09-23 21:02:40-- http://www.leg.ufpr.br/~walmes/data/bib1.txt +--2015-10-01 16:37:00-- 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 @@ -2084,7 +2183,7 @@ Saving to: ‘bib1.txt’ 0K 100% 35,0M=0s -2015-09-23 21:02:40 (35,0 MB/s) - ‘bib1.txt’ saved [535/535] +2015-10-01 16:37:00 (35,0 MB/s) - ‘bib1.txt’ saved [535/535] ``` @@ -2125,7 +2224,19 @@ git commit -m "Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos." ``` ``` -[feature03 6c78f58] Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos. +[feature03 981d1ee] Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos. + Committer: Teste <acn13@inf.ufpr.br> +Your name and email address were configured automatically based +on your username and hostname. Please check that they are accurate. +You can suppress this message by setting them explicitly: + + git config --global user.name "Your Name" + git config --global user.email you@example.com + +After doing this, you may fix the identity used for this commit with: + + git commit --amend --reset-author + 1 file changed, 58 insertions(+) create mode 100644 bib1.txt ``` @@ -2176,7 +2287,19 @@ git commit -m "Arquivo de experimento em BIB. Cabeçalho em caixa alta." ``` ``` -[master 5b66f25] Arquivo de experimento em BIB. Cabeçalho em caixa alta. +[master 7546ee7] Arquivo de experimento em BIB. Cabeçalho em caixa alta. + Committer: Teste <acn13@inf.ufpr.br> +Your name and email address were configured automatically based +on your username and hostname. Please check that they are accurate. +You can suppress this message by setting them explicitly: + + git config --global user.name "Your Name" + git config --global user.email you@example.com + +After doing this, you may fix the identity used for this commit with: + + git commit --amend --reset-author + 1 file changed, 58 insertions(+) create mode 100644 bib1.txt ``` @@ -2205,19 +2328,19 @@ git log --graph --oneline --decorate --date=relative --all ``` ``` -* 5b66f25 (HEAD -> master) Arquivo de experimento em BIB. Cabeçalho em caixa alta. -| * 6c78f58 (feature03) Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos. +* 981d1ee (feature03) Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos. +| * 7546ee7 (HEAD, master) Arquivo de experimento em BIB. Cabeçalho em caixa alta. |/ -* c352044 Merge branch 'feature02' +* 9bf4962 Merge branch 'feature02' |\ -| * 50570e8 Adiciona aquivo de dados de experimento com rações. -* | 391678a Arquivo sobre copa 2014 celeção brasileira. -* | 91b3d67 Adiciona função R para VIF. +| * eb21436 Adiciona aquivo de dados de experimento com rações. +* | 6737802 Arquivo sobre copa 2014 celeção brasileira. +* | 294a431 Adiciona função R para VIF. |/ -* e72af47 Novos argumentos. -* eafb4ca Adiciona frase do Linux Torvalds. -* 401c4e3 Lista de inicial de o porquê usar o Linux. -* d464172 Cria arquivo com título. +* e57eeaf Novos argumentos. +* 28205ac Adiciona frase do Linux Torvalds. +* 68a99fc Lista de inicial de o porquê usar o Linux. +* e248651 Cria arquivo com título. ``` @@ -2228,8 +2351,8 @@ git merge feature03 master ``` -Auto-merging bib1.txt -CONFLICT (add/add): Merge conflict in bib1.txt +Mesclagem automática de bib1.txt +CONFLITO (adicionar/adicionar): conflito de mesclagem em bib1.txt Automatic merge failed; fix conflicts and then commit the result. ``` @@ -2239,16 +2362,16 @@ git status ``` ``` -On branch master -You have unmerged paths. - (fix conflicts and run "git commit") +No ramo master +Você tem caminhos não mesclados. + (fixar conflitos e executar "git commit") -Unmerged paths: - (use "git add <file>..." to mark resolution) +Caminhos não mesclados: + (usar "git add <arquivo>..." para marcar resolução) - both added: bib1.txt + ambos adicionaram: bib1.txt -no changes added to commit (use "git add" and/or "git commit -a") +nenhuma modificação adicionada à submissão (utilize "git add" e/ou "git commit -a") ``` @@ -2302,16 +2425,16 @@ git status ``` ``` -On branch master -You have unmerged paths. - (fix conflicts and run "git commit") +No ramo master +Você tem caminhos não mesclados. + (fixar conflitos e executar "git commit") -Unmerged paths: - (use "git add <file>..." to mark resolution) +Caminhos não mesclados: + (usar "git add <arquivo>..." para marcar resolução) - both added: bib1.txt + ambos adicionaram: bib1.txt -no changes added to commit (use "git add" and/or "git commit -a") +nenhuma modificação adicionada à submissão (utilize "git add" e/ou "git commit -a") ``` @@ -2321,7 +2444,18 @@ git commit -m "Resolve conflito, trunca com caixa alta." ``` ``` -[master bacc71d] Resolve conflito, trunca com caixa alta. +[master f44bbdf] Resolve conflito, trunca com caixa alta. + Committer: Teste <acn13@inf.ufpr.br> +Your name and email address were configured automatically based +on your username and hostname. Please check that they are accurate. +You can suppress this message by setting them explicitly: + + git config --global user.name "Your Name" + git config --global user.email you@example.com + +After doing this, you may fix the identity used for this commit with: + + git commit --amend --reset-author ``` @@ -2330,8 +2464,8 @@ git status ``` ``` -On branch master -nothing to commit, working directory clean +No ramo master +nada a submeter, diretório de trabalho vazio ``` @@ -2340,21 +2474,21 @@ git log --graph --oneline --decorate --date=relative --all ``` ``` -* bacc71d (HEAD -> master) Resolve conflito, trunca com caixa alta. +* f44bbdf (HEAD, master) Resolve conflito, trunca com caixa alta. |\ -| * 6c78f58 (feature03) Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos. -* | 5b66f25 Arquivo de experimento em BIB. Cabeçalho em caixa alta. +| * 981d1ee (feature03) Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos. +* | 7546ee7 Arquivo de experimento em BIB. Cabeçalho em caixa alta. |/ -* c352044 Merge branch 'feature02' +* 9bf4962 Merge branch 'feature02' |\ -| * 50570e8 Adiciona aquivo de dados de experimento com rações. -* | 391678a Arquivo sobre copa 2014 celeção brasileira. -* | 91b3d67 Adiciona função R para VIF. +| * eb21436 Adiciona aquivo de dados de experimento com rações. +* | 6737802 Arquivo sobre copa 2014 celeção brasileira. +* | 294a431 Adiciona função R para VIF. |/ -* e72af47 Novos argumentos. -* eafb4ca Adiciona frase do Linux Torvalds. -* 401c4e3 Lista de inicial de o porquê usar o Linux. -* d464172 Cria arquivo com título. +* e57eeaf Novos argumentos. +* 28205ac Adiciona frase do Linux Torvalds. +* 68a99fc Lista de inicial de o porquê usar o Linux. +* e248651 Cria arquivo com título. ``` @@ -2363,29 +2497,29 @@ git reflog ``` ``` -bacc71d HEAD@{0}: commit (merge): Resolve conflito, trunca com caixa alta. -5b66f25 HEAD@{1}: commit: Arquivo de experimento em BIB. Cabeçalho em caixa alta. -c352044 HEAD@{2}: checkout: moving from feature03 to master -6c78f58 HEAD@{3}: commit: Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos. -c352044 HEAD@{4}: checkout: moving from master to feature03 -c352044 HEAD@{5}: merge feature02: Merge made by the 'recursive' strategy. -391678a HEAD@{6}: merge feature01: Fast-forward -91b3d67 HEAD@{7}: checkout: moving from feature01 to master -391678a HEAD@{8}: commit: Arquivo sobre copa 2014 celeção brasileira. -91b3d67 HEAD@{9}: checkout: moving from feature02 to feature01 -50570e8 HEAD@{10}: checkout: moving from 50570e8650d6295f94565b92b7a7b3551f2d7395 to feature02 -50570e8 HEAD@{11}: commit: Adiciona aquivo de dados de experimento com rações. -e72af47 HEAD@{12}: checkout: moving from master to HEAD@{6} -91b3d67 HEAD@{13}: checkout: moving from e72af47b79b09cef3910a2f31b7c3961cee04bab to master -e72af47 HEAD@{14}: checkout: moving from master to HEAD@{4} -91b3d67 HEAD@{15}: merge feature01: Fast-forward -e72af47 HEAD@{16}: checkout: moving from feature01 to master -91b3d67 HEAD@{17}: commit: Adiciona função R para VIF. -e72af47 HEAD@{18}: checkout: moving from master to feature01 -e72af47 HEAD@{19}: commit: Novos argumentos. -eafb4ca HEAD@{20}: commit: Adiciona frase do Linux Torvalds. -401c4e3 HEAD@{21}: commit: Lista de inicial de o porquê usar o Linux. -d464172 HEAD@{22}: commit (initial): Cria arquivo com título. +f44bbdf HEAD@{0}: commit (merge): Resolve conflito, trunca com caixa alta. +7546ee7 HEAD@{1}: commit: Arquivo de experimento em BIB. Cabeçalho em caixa alta. +9bf4962 HEAD@{2}: checkout: moving from feature03 to master +981d1ee HEAD@{3}: commit: Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos. +9bf4962 HEAD@{4}: checkout: moving from master to feature03 +9bf4962 HEAD@{5}: merge feature02: Merge made by the 'recursive' strategy. +6737802 HEAD@{6}: merge feature01: Fast-forward +294a431 HEAD@{7}: checkout: moving from feature01 to master +6737802 HEAD@{8}: commit: Arquivo sobre copa 2014 celeção brasileira. +294a431 HEAD@{9}: checkout: moving from feature02 to feature01 +eb21436 HEAD@{10}: checkout: moving from eb21436153d68107dacd3e47aca77773b91a1f42 to feature02 +eb21436 HEAD@{11}: commit: Adiciona aquivo de dados de experimento com rações. +e57eeaf HEAD@{12}: checkout: moving from master to HEAD@{6} +294a431 HEAD@{13}: checkout: moving from e57eeaff9e77da94b22e5da043676a3cf70ed0b1 to master +e57eeaf HEAD@{14}: checkout: moving from master to HEAD@{4} +294a431 HEAD@{15}: merge feature01: Fast-forward +e57eeaf HEAD@{16}: checkout: moving from feature01 to master +294a431 HEAD@{17}: commit: Adiciona função R para VIF. +e57eeaf HEAD@{18}: checkout: moving from master to feature01 +e57eeaf HEAD@{19}: commit: Novos argumentos. +28205ac HEAD@{20}: commit: Adiciona frase do Linux Torvalds. +68a99fc HEAD@{21}: commit: Lista de inicial de o porquê usar o Linux. +e248651 HEAD@{22}: commit (initial): Cria arquivo com título. ``` ## Trabalhando com cópias @@ -2405,7 +2539,7 @@ pwd ``` ``` -/home/walmes/maquina2 +/home/est/acn13/maquina2 ``` @@ -2438,9 +2572,10 @@ git status ``` ``` -On branch master +No ramo master Your branch is up-to-date with 'origin/master'. -nothing to commit, working directory clean + +nada a submeter, diretório de trabalho vazio ``` @@ -2468,8 +2603,8 @@ git remote -v ``` ``` -origin /home/walmes/GitLab/git-tutorial/meu1repo/.git (fetch) -origin /home/walmes/GitLab/git-tutorial/meu1repo/.git (push) +origin /media/acn13/- Arquivos -/Projetos_GIT/apostila-git/meu1repo/.git (fetch) +origin /media/acn13/- Arquivos -/Projetos_GIT/apostila-git/meu1repo/.git (push) ``` @@ -2478,17 +2613,17 @@ git log --oneline ``` ``` -bacc71d Resolve conflito, trunca com caixa alta. -5b66f25 Arquivo de experimento em BIB. Cabeçalho em caixa alta. -6c78f58 Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos. -c352044 Merge branch 'feature02' -391678a Arquivo sobre copa 2014 celeção brasileira. -50570e8 Adiciona aquivo de dados de experimento com rações. -91b3d67 Adiciona função R para VIF. -e72af47 Novos argumentos. -eafb4ca Adiciona frase do Linux Torvalds. -401c4e3 Lista de inicial de o porquê usar o Linux. -d464172 Cria arquivo com título. +f44bbdf Resolve conflito, trunca com caixa alta. +7546ee7 Arquivo de experimento em BIB. Cabeçalho em caixa alta. +981d1ee Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos. +9bf4962 Merge branch 'feature02' +6737802 Arquivo sobre copa 2014 celeção brasileira. +eb21436 Adiciona aquivo de dados de experimento com rações. +294a431 Adiciona função R para VIF. +e57eeaf Novos argumentos. +28205ac Adiciona frase do Linux Torvalds. +68a99fc Lista de inicial de o porquê usar o Linux. +e248651 Cria arquivo com título. ``` @@ -2544,7 +2679,7 @@ cp -v diasbarros_feijao.txt ~/maquina2/meu1repo/ ``` Diretório existe. Arquivo diasbarros_feijao.txt já existe. -‘diasbarros_feijao.txt’ -> ‘/home/walmes/maquina2/meu1repo/diasbarros_feijao.txt’ +“diasbarros_feijao.txt” -> “/home/est/acn13/maquina2/meu1repo/diasbarros_feijao.txt” ``` @@ -2555,7 +2690,7 @@ wget 'http://www.leg.ufpr.br/~walmes/data/diasbarros_feijao.txt' ``` ---2015-09-23 21:02:41-- http://www.leg.ufpr.br/~walmes/data/diasbarros_feijao.txt +--2015-10-01 16:37:02-- http://www.leg.ufpr.br/~walmes/data/diasbarros_feijao.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 @@ -2564,7 +2699,7 @@ Saving to: ‘diasbarros_feijao.txt’ 0K 100% 40,2M=0s -2015-09-23 21:02:41 (40,2 MB/s) - ‘diasbarros_feijao.txt’ saved [487/487] +2015-10-01 16:37:02 (40,2 MB/s) - ‘diasbarros_feijao.txt’ saved [487/487] ``` @@ -2573,13 +2708,13 @@ git status ``` ``` -On branch feature04 -Untracked files: - (use "git add <file>..." to include in what will be committed) +No ramo feature04 +Arquivos não monitorados: + (utilize "git add <arquivo>..." para incluir o que será submetido) diasbarros_feijao.txt -nothing added to commit but untracked files present (use "git add" to track) +nada adicionado ao envio mas arquivos não registrados estão presentes (use "git add" to registrar) ``` @@ -2589,7 +2724,19 @@ git commit -m "Dados de experimento com feijão." ``` ``` -[feature04 6031024] Dados de experimento com feijão. +[feature04 18912c0] Dados de experimento com feijão. + Committer: Teste <acn13@inf.ufpr.br> +Your name and email address were configured automatically based +on your username and hostname. Please check that they are accurate. +You can suppress this message by setting them explicitly: + + git config --global user.name "Your Name" + git config --global user.email you@example.com + +After doing this, you may fix the identity used for this commit with: + + git commit --amend --reset-author + 1 file changed, 37 insertions(+) create mode 100644 diasbarros_feijao.txt ``` @@ -2600,7 +2747,7 @@ git push origin feature04 ``` ``` -To /home/walmes/GitLab/git-tutorial/meu1repo/.git +To /media/acn13/- Arquivos -/Projetos_GIT/apostila-git/meu1repo/.git * [new branch] feature04 -> feature04 ``` @@ -2612,7 +2759,7 @@ pwd ``` ``` -/home/walmes/GitLab/git-tutorial/meu1repo +/media/acn13/- Arquivos -/Projetos_GIT/apostila-git/meu1repo ``` @@ -2621,8 +2768,8 @@ git status ``` ``` -On branch master -nothing to commit, working directory clean +No ramo master +nada a submeter, diretório de trabalho vazio ``` @@ -2655,7 +2802,7 @@ git merge feature04 master ``` ``` -Updating bacc71d..6031024 +Updating f44bbdf..18912c0 Fast-forward diasbarros_feijao.txt | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) @@ -2668,22 +2815,22 @@ git log --graph --oneline --decorate --date=relative --all ``` ``` -* 6031024 (HEAD -> master, feature04) Dados de experimento com feijão. -* bacc71d Resolve conflito, trunca com caixa alta. +* 18912c0 (HEAD, master, feature04) Dados de experimento com feijão. +* f44bbdf Resolve conflito, trunca com caixa alta. |\ -| * 6c78f58 (feature03) Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos. -* | 5b66f25 Arquivo de experimento em BIB. Cabeçalho em caixa alta. +| * 981d1ee (feature03) Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos. +* | 7546ee7 Arquivo de experimento em BIB. Cabeçalho em caixa alta. |/ -* c352044 Merge branch 'feature02' +* 9bf4962 Merge branch 'feature02' |\ -| * 50570e8 Adiciona aquivo de dados de experimento com rações. -* | 391678a Arquivo sobre copa 2014 celeção brasileira. -* | 91b3d67 Adiciona função R para VIF. +| * eb21436 Adiciona aquivo de dados de experimento com rações. +* | 6737802 Arquivo sobre copa 2014 celeção brasileira. +* | 294a431 Adiciona função R para VIF. |/ -* e72af47 Novos argumentos. -* eafb4ca Adiciona frase do Linux Torvalds. -* 401c4e3 Lista de inicial de o porquê usar o Linux. -* d464172 Cria arquivo com título. +* e57eeaf Novos argumentos. +* 28205ac Adiciona frase do Linux Torvalds. +* 68a99fc Lista de inicial de o porquê usar o Linux. +* e248651 Cria arquivo com título. ``` @@ -2692,7 +2839,7 @@ pwd ``` ``` -/home/walmes/maquina2/meu1repo +/home/est/acn13/maquina2/meu1repo ``` @@ -2701,9 +2848,9 @@ git pull origin master ``` ``` -From /home/walmes/GitLab/git-tutorial/meu1repo/ +From /media/acn13/- Arquivos -/Projetos_GIT/apostila-git/meu1repo/ * branch master -> FETCH_HEAD - bacc71d..6031024 master -> origin/master + f44bbdf..18912c0 master -> origin/master Already up-to-date. ``` @@ -2713,22 +2860,22 @@ git log --graph --oneline --decorate --date=relative --all ``` ``` -* 6031024 (HEAD -> feature04, origin/master, origin/feature04, origin/HEAD) Dados de experimento com feijão. -* bacc71d (master) Resolve conflito, trunca com caixa alta. +* 18912c0 (HEAD, origin/master, origin/feature04, origin/HEAD, feature04) Dados de experimento com feijão. +* f44bbdf (master) Resolve conflito, trunca com caixa alta. |\ -| * 6c78f58 (origin/feature03) Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos. -* | 5b66f25 Arquivo de experimento em BIB. Cabeçalho em caixa alta. +| * 981d1ee (origin/feature03) Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos. +* | 7546ee7 Arquivo de experimento em BIB. Cabeçalho em caixa alta. |/ -* c352044 Merge branch 'feature02' +* 9bf4962 Merge branch 'feature02' |\ -| * 50570e8 Adiciona aquivo de dados de experimento com rações. -* | 391678a Arquivo sobre copa 2014 celeção brasileira. -* | 91b3d67 Adiciona função R para VIF. +| * eb21436 Adiciona aquivo de dados de experimento com rações. +* | 6737802 Arquivo sobre copa 2014 celeção brasileira. +* | 294a431 Adiciona função R para VIF. |/ -* e72af47 Novos argumentos. -* eafb4ca Adiciona frase do Linux Torvalds. -* 401c4e3 Lista de inicial de o porquê usar o Linux. -* d464172 Cria arquivo com título. +* e57eeaf Novos argumentos. +* 28205ac Adiciona frase do Linux Torvalds. +* 68a99fc Lista de inicial de o porquê usar o Linux. +* e248651 Cria arquivo com título. ``` @@ -2737,104 +2884,104 @@ git log --stat ``` ``` -commit 6031024b71ee0ee97d3af69aa485d8e338ef7929 -Author: Walmes Zeviani <walmes@ufpr.br> -Date: Wed Sep 23 21:02:41 2015 -0300 +commit 18912c0e8b397bbb1e0b22e9710bb6061c317725 +Author: Teste <acn13@inf.ufpr.br> +Date: Thu Oct 1 16:37:02 2015 -0300 Dados de experimento com feijão. diasbarros_feijao.txt | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) -commit bacc71df93719925fd1bdf73bb1083bb1db1d951 -Merge: 5b66f25 6c78f58 -Author: Walmes Zeviani <walmes@ufpr.br> -Date: Wed Sep 23 21:02:41 2015 -0300 +commit f44bbdf3d63290cdd205a1fe5908413e63a660cd +Merge: 7546ee7 981d1ee +Author: Teste <acn13@inf.ufpr.br> +Date: Thu Oct 1 16:37:00 2015 -0300 Resolve conflito, trunca com caixa alta. -commit 5b66f2509ff6f59b9bd81c0c69f7a231abc183d1 -Author: Walmes Zeviani <walmes@ufpr.br> -Date: Wed Sep 23 21:02:41 2015 -0300 +commit 7546ee745916c955baec2e6116ffccc9f6cdf443 +Author: Teste <acn13@inf.ufpr.br> +Date: Thu Oct 1 16:37:00 2015 -0300 Arquivo de experimento em BIB. Cabeçalho em caixa alta. bib1.txt | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) -commit 6c78f58c21e6bc0177cefb5cbe27303538e17d89 -Author: Walmes Zeviani <walmes@ufpr.br> -Date: Wed Sep 23 21:02:40 2015 -0300 +commit 981d1eed5a20f296261cab67aaea499ecbc6ac05 +Author: Teste <acn13@inf.ufpr.br> +Date: Thu Oct 1 16:37:00 2015 -0300 Arquivo de experimento em BIB. Trunca cabeçalho 4 digitos. bib1.txt | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) -commit c352044c873439dbfe3846b21babb9c703d399bc -Merge: 391678a 50570e8 -Author: Walmes Zeviani <walmes@ufpr.br> -Date: Wed Sep 23 21:02:40 2015 -0300 +commit 9bf49622914702c9b2de0006217792609bebca0b +Merge: 6737802 eb21436 +Author: Teste <acn13@inf.ufpr.br> +Date: Thu Oct 1 16:37:00 2015 -0300 Merge branch 'feature02' -commit 391678af4a0c6f202fb42c6e8f2c5b6b917ebe86 -Author: Walmes Zeviani <walmes@ufpr.br> -Date: Wed Sep 23 21:02:40 2015 -0300 +commit 67378029fe8eed356c99df88db746a73e9c9d8ad +Author: Teste <acn13@inf.ufpr.br> +Date: Thu Oct 1 16:37:00 2015 -0300 Arquivo sobre copa 2014 celeção brasileira. brasilCopa2014.txt | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) -commit 50570e8650d6295f94565b92b7a7b3551f2d7395 -Author: Walmes Zeviani <walmes@ufpr.br> -Date: Wed Sep 23 21:02:40 2015 -0300 +commit eb21436153d68107dacd3e47aca77773b91a1f42 +Author: Teste <acn13@inf.ufpr.br> +Date: Thu Oct 1 16:37:00 2015 -0300 Adiciona aquivo de dados de experimento com rações. pimentel_racoes.txt | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) -commit 91b3d672e792fb908dcb425b61f91a610b8bdf4b -Author: Walmes Zeviani <walmes@ufpr.br> -Date: Wed Sep 23 21:02:39 2015 -0300 +commit 294a43144efcf8c7aab402eab86920ae55af1647 +Author: Teste <acn13@inf.ufpr.br> +Date: Thu Oct 1 16:36:59 2015 -0300 Adiciona função R para VIF. vif.R | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) -commit e72af47b79b09cef3910a2f31b7c3961cee04bab -Author: Walmes Zeviani <walmes@ufpr.br> -Date: Wed Sep 23 21:02:39 2015 -0300 +commit e57eeaff9e77da94b22e5da043676a3cf70ed0b1 +Author: Teste <acn13@inf.ufpr.br> +Date: Thu Oct 1 16:36:59 2015 -0300 Novos argumentos. porqueLinux.txt | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) -commit eafb4cab14b4df52a01b109ca8fd997e8d5ca20b -Author: Walmes Zeviani <walmes@ufpr.br> -Date: Wed Sep 23 21:02:39 2015 -0300 +commit 28205ac71a0e20ee32673e9883226eb25c3053d7 +Author: Teste <acn13@inf.ufpr.br> +Date: Thu Oct 1 16:36:59 2015 -0300 Adiciona frase do Linux Torvalds. README.txt | 4 ++++ 1 file changed, 4 insertions(+) -commit 401c4e371a79fcd94ccc99c014f49a8de8d86256 -Author: Walmes Zeviani <walmes@ufpr.br> -Date: Wed Sep 23 21:02:39 2015 -0300 +commit 68a99fcb5cd57195651f99f7a4e35bb8c0a0acfb +Author: Teste <acn13@inf.ufpr.br> +Date: Thu Oct 1 16:36:59 2015 -0300 Lista de inicial de o porquê usar o Linux. porqueLinux.txt | 5 +++++ 1 file changed, 5 insertions(+) -commit d464172b670744c31c52728bbf3c06931824afd2 -Author: Walmes Zeviani <walmes@ufpr.br> -Date: Wed Sep 23 21:02:38 2015 -0300 +commit e2486515a9e75bf8e9e2e38e63e557c32ad887bf +Author: Teste <acn13@inf.ufpr.br> +Date: Thu Oct 1 16:36:58 2015 -0300 Cria arquivo com título. @@ -2848,9 +2995,9 @@ git log -p -2 ``` ``` -commit 6031024b71ee0ee97d3af69aa485d8e338ef7929 -Author: Walmes Zeviani <walmes@ufpr.br> -Date: Wed Sep 23 21:02:41 2015 -0300 +commit 18912c0e8b397bbb1e0b22e9710bb6061c317725 +Author: Teste <acn13@inf.ufpr.br> +Date: Thu Oct 1 16:37:02 2015 -0300 Dados de experimento com feijão. @@ -2898,10 +3045,10 @@ index 0000000..2525ebf +11 2 45.9 +11 3 46.3 -commit bacc71df93719925fd1bdf73bb1083bb1db1d951 -Merge: 5b66f25 6c78f58 -Author: Walmes Zeviani <walmes@ufpr.br> -Date: Wed Sep 23 21:02:41 2015 -0300 +commit f44bbdf3d63290cdd205a1fe5908413e63a660cd +Merge: 7546ee7 981d1ee +Author: Teste <acn13@inf.ufpr.br> +Date: Thu Oct 1 16:37:00 2015 -0300 Resolve conflito, trunca com caixa alta. ``` @@ -2911,6 +3058,105 @@ Date: Wed Sep 23 21:02:41 2015 -0300 **** ## Ignorando arquivos e diretórios +Há momentos em que é necessário a criação de arquivos e pastas, dentro do +repositório git, que não devem ser versionados, como é o caso de uma +compilação Latex, que gera arquivos auxiliares que não é preciso deixar +disponível a terceiros. Para esse intuito, o git possui um recurso que permite +que arquivos e pastas fiquem "invisíveis" para o software. + +Para que isso ocorra, é indispensável a criação de um arquivo com extensão +`.gitignore`, que o git irá reconhecer e efetuar leitura a procura de +pastas e arquivos a ignorar. Dentro deste arquivo, é imprescindível que seja +escrito, por linha, somente um nome de pasta ou arquivo a ser ignorado. + +### Padrões de formatos para o `.gitignore` + +* Linhas em branco não são lidas, servindo apenas como modo de separar e +organizar o arquivo. + +* Os caracteres ` # ` e ` ! ` são reservado do git. Para pastas ou arquivos +que os nomes comecem com ` # ` (Exemplo: #git.txt) ou ` ! ` (Exemplo: !git.txt), +deve-se usar uma barra invertida na frente do padrão (Exemplo: \\#ddd.txt, \\!ddd.txt). + +* O caracter ` # ` serve para efetuar comentários, ou seja, a linha que iniciar com `#` +não será interpretada pelo git. + +* O caracter `!` serve para negar um padrão, por exemplo, pode-se mandar o git +ignorar todos os arquivos de determinada pasta (Usando: Nome_Dir/*), +mas deixar de ignorar um arquivo específico dentro dela +(Exemplo: !Nome_Dir/Arquivo.txt). + +* O asterisco ` * ` pode ser usado para substituir parte do nome de +arquivos e pastas, ou o nome inteiro. Isso é valido também para a +extensão do arquivo. + +* Um diretório pode ser ignorado adicionando seu nome e uma barra ao final deste. + +* Dois asteriscos ` ** ` podem ser usados para substituir caminhos de subpastas, +como por exemplo, para ignorar o diretório Subpasta, +o caminho `/Exercicio/Teste/Pasta/Subpasta/` pode ser substituido por `/**/Subpasta/`. + + +### Exemplo + +O código abaixo é um exemplo de um arquivo com extensão `.gitignore`: + + +```sh +# Esta linha é um comentário. + +# Ignorando arquivos com extensão .aux menos o arquivo EXEMPLO.aux: + +*.aux +!EXEMPLO.aux + +# Ignorando todos os arquivos com nome EXEMPLO: + +EXEMPLO.* + +# Ignorando arquivos que possuam HTML no nome: + +HTML*.* + +# Ignorando as Subpastas e os arquivos da pasta DIR: + +DIR/* + +# Não ignorar apenas a Subpasta1 da pasta DIR: + +!DIR/Subpasta1/ + +``` + +Vale ressaltar que, no exemplo acima, por mais que esteja sendo ignorado arquivos +com o nome EXEMPLO, e arquivos com extensão .aux, +o arquivo EXEMPLO.aux (que está pecedido do sinal `!`) não será ignorado. + +### Tornando Global + +Cada vez que cria-se um novo projeto, para que arquivos sejam ignorados, +deve-se criar um novo arquivo `.gitignore`. Para que isso não ocorra, e +possível configurar o arquivo globalmente, ou seja, ele estará incorporado +as configurações do git do seu computador. + + + +```sh +git config --global core.excludesfile ~/.gitignore_global +``` + + Depois de executar o código acima, o `.gitignore` da pasta atual + (pasta do seu projeto) será atribuido como global no arquivo de + configuração do git (`.gitconfig`). + + Uma observação importante a ser feita é que, se adicionado arquivos para + serem ignorados globalmente, como arquivos PDF (Usando: *.pdf), por exemplo, + todos os arquivos com essa extensão serão ignorados pelo git, + não somente os do projeto atual. + Portanto, é recomendado somente definir um `.gitignore` como global, + se ele apenas desconsiderar arquivos auxiliares, ou seja, que não serão necessários + para compilações futuras. + **** ## Autenticando em contas do GitLab (c3sl) e GitHub