<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Ana Carolina</title>
    <description>The latest articles on DEV Community by Ana Carolina (@anacdf).</description>
    <link>https://dev.to/anacdf</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F444407%2Fd654b585-a156-46c8-a57a-d4be40fe75b1.png</url>
      <title>DEV Community: Ana Carolina</title>
      <link>https://dev.to/anacdf</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/anacdf"/>
    <language>en</language>
    <item>
      <title>Guia: gerenciando 2 ssh keys do Github no seu pc</title>
      <dc:creator>Ana Carolina</dc:creator>
      <pubDate>Tue, 05 Oct 2021 00:35:20 +0000</pubDate>
      <link>https://dev.to/devgirls/guia-gerenciando-2-ssh-keys-do-github-no-seu-pc-apm</link>
      <guid>https://dev.to/devgirls/guia-gerenciando-2-ssh-keys-do-github-no-seu-pc-apm</guid>
      <description>&lt;h3&gt;
  
  
  resumo:
&lt;/h3&gt;

&lt;p&gt;Você tem o computador da firma (macOs) e as vezes quer fazer um commit no seu repositório particular. Esse é um guia rápido com comandos para trocar as ssh-keys e poder trabalhar com sua conta particular e da firma quando quiser!&lt;/p&gt;

&lt;p&gt;~ mas o que é esse guia:&lt;br&gt;
Esse é um guia rápido para consultar quando você sabe &lt;b&gt;o que&lt;/b&gt; tem que fazer, mas não lembra &lt;b&gt;como&lt;/b&gt; fazer...&lt;br&gt;
Eu sempre uso esse &lt;a href="https://devqa.io/manage-multiple-github-accounts-same-machine/" rel="noopener noreferrer"&gt;artigo&lt;/a&gt; como referência para me salvar nesses momentos, mas ele é em inglês e acho justo manter essas informações em português também.&lt;/p&gt;
&lt;h3&gt;
  
  
  passos:
&lt;/h3&gt;
&lt;h4&gt;
  
  
  1 - Criando uma ssh-key para seu github pessoal:
&lt;/h4&gt;

&lt;p&gt;no terminal você digita o comando para gerar a ssh-key, o seu e-mail e um nome para sua key: aqui vamos chamar de "id_rsa_deva".&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ ssh-keygen -t rsa -C "email@pessoal.com" -f "id_rsa_deva"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;O github explica sobre como criar e adicionar uma ssh-key &lt;a href="https://docs.github.com/pt/authentication/connecting-to-github-with-ssh/about-ssh" rel="noopener noreferrer"&gt;aqui&lt;/a&gt;.&lt;/p&gt;

&lt;h4&gt;
  
  
  2 - Criando uma ssh-key para seu github profissional:
&lt;/h4&gt;

&lt;p&gt;no terminal você digita o comando para gerar a ssh-key, o seu e-mail profissional e um nome para sua key: aqui vamos chamar de "id_rsa_firma".&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ ssh-keygen -t rsa -C "email@firma.com" -f "id_rsa_firma"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;~ o github explica sobre como criar e adicionar uma ssh-key &lt;a href="https://docs.github.com/pt/authentication/connecting-to-github-with-ssh/about-ssh" rel="noopener noreferrer"&gt;aqui&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;~ como ver a(s) ssh-key(s) salvas:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ ls -al ~/.ssh
# Vai mostrar a lista de arquivos na pasta do .ssh (se você já tiver alguma)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;exemplo do meu terminal:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;anac  ... ... config
anac  ... ... id_rsa_deva
anac  ... ... id_rsa_deva.pub
anac  ... ... id_rsa_firma
anac  ... ... id_rsa_firma.pub
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  3 - Gerenciando mais de uma ssh-key
&lt;/h4&gt;

&lt;p&gt;Agora que temos duas ssh-keys vamos fazer nossa vida ficar um pouco mais fácil de gerenciar isso usando a opção de config do ssh.&lt;/p&gt;

&lt;p&gt;~ se você ainda não tem o arquivo de &lt;b&gt;config&lt;/b&gt; digita os 3 comandos no terminal, se já tem o arquivo pula o segundo comando:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ cd ~/.ssh/
$ touch config           // Cria o arquivo se ele não existe
$ nano config            // Abre o arquivo para edição
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;a. Você vai adicionar as 2 keys no arquivo (pode copiar e colar):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Minha conta pessoal
Host github.com-deva
   HostName github.com
   User git
   IdentityFile ~/.ssh/id_rsa_deva

# Minha conta da firma
Host github.com-firma
   HostName github.com //ou o endereço de github da firma
   User git
   IdentityFile ~/.ssh/id_rsa_firma
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;~ embaixo no arquivo do terminal ele diz quais são os comandos: para salvar "write out", para sair "exit"&lt;/p&gt;

&lt;p&gt;b. Reinicar o ssh-agent para ele receber as mudanças:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;eval "$(ssh-agent -s)"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;c. Adicionar e registrar as novas ssh-keys no ssh-agent:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ssh-add ~/.ssh/id_rsa_deva
ssh-add ~/.ssh/id_rsa_firma
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  OK! agora vem a parte legal:
&lt;/h2&gt;

&lt;h4&gt;
  
  
  Agora você tá querendo ser apenas uma &lt;b&gt;deva desbravadora de códigos e vai usar sua conta pessoal&lt;/b&gt;
&lt;/h4&gt;

&lt;p&gt;avisa o ssh-agent para ele usar sua ssh-key especial:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ ssh-add -D  //remove as ssh's do agente
$ ssh-add ~/.ssh/id_rsa_deva  // adiciona a tua ssh de deva
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  Quando você for vestir o &lt;b&gt;chapéu de trabalhadora e precisa fazer commits nos repositórios da firma&lt;/b&gt;
&lt;/h4&gt;

&lt;p&gt;você avisa o agent para usar a sua ssh-key da firma:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ ssh-add -D  //remove as ssh's do agente
$ ssh-add ~/.ssh/id_rsa_company  // adiciona a tua ssh da firma
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;~ recomendo também trocar as configs de user e e-mail, essa config vai aparecer no seus commits:&lt;/p&gt;

&lt;p&gt;Liste sua configuração do git:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git config --list
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Como alterar nome de usuário e email global&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git config --global user.name "Ana Deva"
git config --global user.email "ana@deva.com"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Como alterar nome de usuário e email para o &lt;b&gt;repositório atual&lt;/b&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git config  user.name "Ana Deva"
git config  user.email "ana@deva.com"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  concluindo:
&lt;/h3&gt;

&lt;p&gt;Usando o config do ssh agent fica fácil de trocar as keys que queremos usar. Confira qual ssh-key está ativa para você antes de começar num repositório novo e bons commits =)&lt;/p&gt;

</description>
      <category>github</category>
      <category>tutorial</category>
      <category>braziliandevs</category>
      <category>macos</category>
    </item>
  </channel>
</rss>
