From a885e6638a1047e7e34add9c6042a6cc27d415eb Mon Sep 17 00:00:00 2001 From: Alessandra <alessandra.zeizer@gmail.com> Date: Sun, 13 Dec 2015 20:38:50 -0200 Subject: [PATCH] =?UTF-8?q?=C3=BAltima=20revis=C3=A3o=20do=20cap=C3=ADtulo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cap04.Rmd | 22 ++++++++++------------ cap04.pdf | Bin 121785 -> 121750 bytes cap04.tex | 32 ++++++++++++++++---------------- 3 files changed, 26 insertions(+), 28 deletions(-) diff --git a/cap04.Rmd b/cap04.Rmd index da1d94e..a261909 100644 --- a/cap04.Rmd +++ b/cap04.Rmd @@ -180,16 +180,16 @@ ssh eu@111.22.333.44\ # Repositório remoto coletivo -A única diferença é recomendamos você criar um novo usuário e adicionar +A única diferença é recomendamos a você criar um novo usuário e adicionar as chaves públicas de todos os membros. Evite adicionar chaves públicas para usuários na sua conta porque isso expõe seus documentos, alguma operação desastrosa por parte de alguém pode comprometê-los. Por isso, -crie um usuário, por exemplo `gitusers`, para na conta manter o +crie um usuário, por exemplo `gitusers`, para nesta conta manter o repositório remoto. Solicite que os colaboradores gerem as chaves públicas e te enviem o arquivo `id_rsa.pub`. Depois você adiciona cada chave ao -`authorized_keys` da conta `gitusers`. Com chaves autorizadas, os +`authorized_keys` de conta `gitusers`. Com chaves autorizadas, os colaboradores podem transferir arquivos, podem logar no servidor mas não podem instalar nada, a menos que você passe a senha do usuário `gitusers`. Para crias usuários no servidor, você precisa de @@ -230,7 +230,7 @@ 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. Supondo que sua equipe de trabalho possue uma biblioteca Git **Teste Clone**, onde são armazenados todos os arquivos. Você pode clonar estes arquivos para o seu diretório de trabalho e assim modificá-los conforme deseja. +destes. Supondo que sua equipe de trabalho possui uma biblioteca Git **Teste Clone**, onde são armazenados todos os arquivos. Você pode clonar estes arquivos para o seu diretório de trabalho e assim modificá-los conforme deseja. **Exemplo:** @@ -255,8 +255,7 @@ git clone git@gitlab.c3sl.ufpr.br:pet-estatistica/TesteClone.git DirTeste Após clonar e realizar contribuições ao projeto, você pode enviá-los para o repositório remoto. Estes arquivos, após o `Git push`, estarão prontos para serem integrados ao projeto com o `merge`. 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`: +o servidor remoto. No exemplo abaixo enviaremos a ramificação `Branch Master` para o servidor chamado `origin`: **Exemplo:** ```{r, engine="bash", eval=FALSE} @@ -272,7 +271,7 @@ realizou o push por último serão desconsideradas. Para obter todos os arquivos presentes no projeto, você pode importar os arquivos do branch `master`. Toda vez que você utilizar o `Git pull` a última versão de todos os arquivos estarão no seu diretório. -Este comando é utilizado para transferência de arquivos. O comando puxa os +Também usado 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. @@ -304,7 +303,7 @@ git diff master origin/master # Listar branches locais/remotos -O comando `git remote`, este é usado para +O comando `git remote` é usado para verificar quais repositórios estão configurados. **Exemplo:** para retornar a lista de repositórios: @@ -332,7 +331,7 @@ 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**. +como exemplo o projeto **Apostila-git**. **Exemplo:** ```{r, engine="bash", echo=TRUE, eval=FALSE} @@ -424,7 +423,7 @@ mkdir MeuRepo.git git --bare init ``` -As configurações do servidor estão completas. A partir você pode +As configurações do servidor estão completas. A partir de agora você pode realizar os primeiros comandos para iniciar o repositório criado. # Git no servidor # @@ -539,6 +538,5 @@ 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`. +comando `git init`, `git add`, `git commit`, `git remote add` e `git push origin master`. diff --git a/cap04.pdf b/cap04.pdf index db28b3e844fa029f721f66b304bbf8f11b26a1b6..6984cb4113aa0d7ccb8e7f130859d2fc45eb1985 100644 GIT binary patch delta 13025 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 Js;j>n7XZVLRdE0S delta 13100 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 diff --git a/cap04.tex b/cap04.tex index 741ec52..3882bff 100644 --- a/cap04.tex +++ b/cap04.tex @@ -345,16 +345,16 @@ servidor. O jeito mais simples de fazer isso é com transferência \section{Repositório remoto coletivo}\label{repositorio-remoto-coletivo} -A única diferença é recomendamos você criar um novo usuário e adicionar -as chaves públicas de todos os membros. Evite adicionar chaves públicas -para usuários na sua conta porque isso expõe seus documentos, alguma -operação desastrosa por parte de alguém pode comprometê-los. Por isso, -crie um usuário, por exemplo \texttt{gitusers}, para na conta manter o -repositório remoto. +A única diferença é recomendamos a você criar um novo usuário e +adicionar as chaves públicas de todos os membros. Evite adicionar chaves +públicas para usuários na sua conta porque isso expõe seus documentos, +alguma operação desastrosa por parte de alguém pode comprometê-los. Por +isso, crie um usuário, por exemplo \texttt{gitusers}, para nesta conta +manter o repositório remoto. Solicite que os colaboradores gerem as chaves públicas e te enviem o arquivo \texttt{id\_rsa.pub}. Depois você adiciona cada chave ao -\texttt{authorized\_keys} da conta \texttt{gitusers}. Com chaves +\texttt{authorized\_keys} de conta \texttt{gitusers}. Com chaves autorizadas, os colaboradores podem transferir arquivos, podem logar no servidor mas não podem instalar nada, a menos que você passe a senha do usuário \texttt{gitusers}. Para crias usuários no servidor, você precisa @@ -399,7 +399,7 @@ 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. Supondo que sua equipe de trabalho possue uma biblioteca Git +destes. Supondo que sua equipe de trabalho possui uma biblioteca Git \textbf{Teste Clone}, onde são armazenados todos os arquivos. Você pode clonar estes arquivos para o seu diretório de trabalho e assim modificá-los conforme deseja. @@ -456,9 +456,9 @@ que realizou o push por último serão desconsideradas. Para obter todos os arquivos presentes no projeto, você pode importar os arquivos do branch \texttt{master}. Toda vez que você utilizar o \texttt{Git pull} a última versão de todos os arquivos estarão no seu -diretório. Este comando é 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. +diretório. Também usado 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. \textbf{Exemplo:} @@ -497,8 +497,8 @@ basta utilizar o comando \texttt{git diff}: \section{Listar branches locais/remotos}\label{listar-branches-locaisremotos} -O comando \texttt{git remote}, este é usado para verificar quais -repositórios estão configurados. +O comando \texttt{git remote} é usado para verificar quais repositórios +estão configurados. \textbf{Exemplo:} para retornar a lista de repositórios: @@ -530,7 +530,7 @@ O comando \texttt{git remote add} adiciona um repositório remoto. No exemplo a seguir será adicionado um repositório chamado \textbf{MeuRepo} ao qual será vinculado a URL \texttt{git@gitlab.c3sl.ufpr.br:pet-estatistica/apostila-git.git}. -Usaremos como exemplo o projeto Git \textbf{Apostila-git}. +Usaremos como exemplo o projeto \textbf{Apostila-git}. \textbf{Exemplo:} @@ -650,8 +650,8 @@ diretório \texttt{\textasciitilde{}/git}: \end{Highlighting} \end{Shaded} -As configurações do servidor estão completas. A partir você pode -realizar os primeiros comandos para iniciar o repositório criado. +As configurações do servidor estão completas. A partir de agora você +pode realizar os primeiros comandos para iniciar o repositório criado. \section{Git no servidor}\label{git-no-servidor} -- GitLab