<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://pedroarrudant.github.io/feed.xml" rel="self" type="application/atom+xml" /><link href="https://pedroarrudant.github.io/" rel="alternate" type="text/html" /><updated>2024-08-13T14:05:15+00:00</updated><id>https://pedroarrudant.github.io/feed.xml</id><title type="html">Pedro Arruda - Blog</title><subtitle>Artigos e outras coisas</subtitle><entry><title type="html">Note taking + Obsidian</title><link href="https://pedroarrudant.github.io/notetakingobsidian/" rel="alternate" type="text/html" title="Note taking + Obsidian" /><published>2024-08-07T00:00:00+00:00</published><updated>2024-08-07T00:00:00+00:00</updated><id>https://pedroarrudant.github.io/notetakingobsidian</id><content type="html" xml:base="https://pedroarrudant.github.io/notetakingobsidian/"><![CDATA[<p>Muitas vezes durante o inicio de minha carreira me deparei com várias situações onde várias coisas  foram faladas para mim, mostradas e mais do que isso ENSINADAS. No tempo de um ou dois dias depois eu simplesmente esquecia metade, e me vi no cenário de ter que voltar para essas memórias de forma que relembrasse o que tinha feito, mas isso nunca era fácil. Depois de algumas anotações atabalhoadas cheguei no meu sistema de anotações. Sei que ele não resolve todos os problemas, mas com certeza pode ser o ponto de partida para que sejam feitas coisas incríveis na sua carreira.</p>

<p>Nos próximos tópicos irei explorar alguns temas importantes no que tangem organização no geral, ferramentas para usar no dia-a-dia e formas de automatizar as coisas para um melhor desempenho no seu dia.</p>

<h2 id="ferramentas">Ferramentas</h2>

<h3 id="markdown-language">Markdown Language</h3>
<p>Para começar eu gosto bastante de usar linguagem de <a href="https://www.markdownguide.org/">Markdown</a> para minhas anotações, é uma relação de “ganha ganha”, onde você tem um método rápido para digitar e ainda consegue aprender para fazer documentações no geral.</p>

<h3 id="obsidian">Obsidian</h3>
<p>Outra coisa que gosto de fazer é usar o <a href="https://obsidian.md/">Obsidian</a> para organizar esses arquivos. No artigo iremos explorar várias features da ferramenta, mas toda a parte de organização pode ser feita na ferramenta de sua escolha, sendo ela o <a href="https://code.visualstudio.com/">Vs Code</a> ou o <a href="https://www.notion.so/pt">Notion</a>.</p>

<h3 id="excalidraw">Excalidraw</h3>
<p>Caso precise desenhar coisas simples, como caixas se conectando ou HLAs (High Level Architecture), eu recomendo o <a href="https://excalidraw.com/">Excalidraw</a> por ser mais bonito e simples do que o <a href="http://draw.io">draw.io</a>.</p>

<h2 id="organização">Organização</h2>
<p>Eu organizei minhas anotações na seguinte estrutura de pastas:</p>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>|Vault
├───Assets
│   ├───Documentos
│   ├───Dotfiles
│   ├───Excalidraw
│   ├───Images
│   └───Templates
├───Common
├───Corporativo
│   ├───Eventos
│   └───Squad
│       ├───Cerimonias
│       ├───Débitos Técnicos
│       ├───Monitoramento
│       ├───Projetos
│       ├───Releases
│       ├───Rotinas
│       ├───Spikes
│       └───Sustentação
└───Pessoal
    ├───Diário
    ├───Documentos
    ├───PDI
    └───Tech
</code></pre></div></div>

<blockquote>
  <p>Não se preocupe. Tudo estará no <a href="https://github.com/pedroarrudant/NoteTakingTemplate">github</a></p>
</blockquote>

<p>Algumas notas sobre a organização de pastas:</p>
<ul>
  <li>A pasta <em>assets</em> será responsável por guardar todas as coisas que não serão criadas por você + templates;</li>
  <li>Na pasta <em>corporativo</em> ficarão todas as coisas da sua organização. Eu criei alguns itens como <em>eventos</em> e dentro da <em>squad</em> estão coisas mais específicas do time em que vc estiver trabalhando;</li>
  <li>Na pasta <em>common</em> ficarão coisas que pertencem aos dois mundos, como <em>emails</em> e <em>chamados</em>;</li>
  <li>Dentro de <em>pessoal</em> estarão todas as coisas das quais você será o responsável exclusivo;</li>
</ul>

<blockquote>
  <p>Se vc for usar outro aplicativo para anotações sinta-se a vontade para terminar o artigo por aqui.</p>
</blockquote>

<h2 id="obsidian-1">Obsidian</h2>
<p>Vamos agora a algumas configurações específicas do Obsidian. Ao abrir ele pela primeira vez você se deparará com a seguinte tela:</p>

<p><img src="/images/notetaking1.png" alt="notetaking1.png" /></p>

<p>Daqui em diante você pode colar os arquivos que estão no Github direto no diretório onde criou o seu Vault. Após isso, vamos colocar os templates para funcionar.</p>

<p>Em configurações selecione <em>Daily Notes</em> e coloque essas configurações:</p>

<p>Date Format:</p>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>[Anotações de] DD [de] MMM [de] YYYY
</code></pre></div></div>

<p>New file location:</p>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Pessoal/Diário
</code></pre></div></div>

<p>Template file location:</p>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Assets/Templates/Diário Template
</code></pre></div></div>

<p>Ficando assim:</p>

<p><img src="/images/notetaking2.png" alt="notetaking2.png" /></p>

<p>Depois disso vá em <em>templates</em> e coloque as seguintes configurações:</p>

<p>Date format:</p>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>DD/MM/YYYY
</code></pre></div></div>

<p>Template folder location:</p>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Assets/Templates
</code></pre></div></div>

<p>Ficando assim:</p>

<p><img src="/images/notetaking3.png" alt="notetaking3.png" /></p>

<blockquote>
  <p>Para usar um template dentro de uma nota, basta digitar <em>ctrl+p</em> e buscar a opção <em>inserir modelo</em></p>
</blockquote>

<h2 id="plugins">Plugins</h2>
<p>Uma vantagem do Obsidian é a possibilidade de usar plugins para personalizar a sua experiência. No meu caso coloco algumas recomendações para o dia-a-dia comum:</p>

<p>Plugins da comunidade:</p>
<ul>
  <li><a href="https://github.com/uphy/obsidian-reminder">Reminder</a> =&gt; Coloca lembretes em notas e te avisa com notificações em tela.</li>
  <li><a href="https://github.com/zsviczian/obsidian-excalidraw-plugin">Excalidraw</a> =&gt; Possibilita a criação de diagramas do Excalidraw sem precisar sair do Obsidian.</li>
  <li><a href="https://github.com/liamcain/obsidian-calendar-plugin">Calendar</a> =&gt; Adiciona um calendário no menu lateral do Obsidian para ter um tracking melhor das suas notas.</li>
  <li><a href="https://github.com/phibr0/obsidian-emoji-shortcodes">Emoji Shortcodes</a> =&gt; Como o nome diz possibilita a inserção de emojis via short code, como um 😄.</li>
</ul>

<p>Core plugins:</p>
<ul>
  <li><a href="https://help.obsidian.md/Plugins/Slides">Slides</a> =&gt; Habilita a criação de slides, estilo PowerPoint dentro do próprio Obsidian.</li>
  <li><a href="https://obsidian.md/sync">Sync</a> =&gt; O maior downside desse aqui é que ele é pago, mas possibilita muita flexibilidade para levar suas notas de um lugar para o outro.</li>
</ul>

<blockquote>
  <p>Caso não deseje pagar, você pode usar o <a href="https://syncthing.net/">SyncThing</a>.</p>
</blockquote>

<p>Com todo  esse toolkit você nunca mais será pego desprevenido novamente!
Até mais!</p>]]></content><author><name>Pedro Arruda</name></author><summary type="html"><![CDATA[Muitas vezes durante o inicio de minha carreira me deparei com várias situações onde várias coisas foram faladas para mim, mostradas e mais do que isso ENSINADAS. No tempo de um ou dois dias depois eu simplesmente esquecia metade, e me vi no cenário de ter que voltar para essas memórias de forma que relembrasse o que tinha feito, mas isso nunca era fácil. Depois de algumas anotações atabalhoadas cheguei no meu sistema de anotações. Sei que ele não resolve todos os problemas, mas com certeza pode ser o ponto de partida para que sejam feitas coisas incríveis na sua carreira.]]></summary></entry><entry><title type="html">O que eu aprenderia se começasse hoje?</title><link href="https://pedroarrudant.github.io/Conselhos-carreira/" rel="alternate" type="text/html" title="O que eu aprenderia se começasse hoje?" /><published>2024-08-01T00:00:00+00:00</published><updated>2024-08-01T00:00:00+00:00</updated><id>https://pedroarrudant.github.io/Conselhos-carreira</id><content type="html" xml:base="https://pedroarrudant.github.io/Conselhos-carreira/"><![CDATA[<p>Essa é uma pergunta em que frequentemente é questionada não só para mim, não só para quem já tem anos de carreira, mas sim na cabeça de qualquer estudante que acabou de se formar. Dito isso eu começaria dividindo em 3 conceitos macros:</p>

<ul>
  <li>Comportamental</li>
  <li>Técnico</li>
  <li>Burocrático</li>
</ul>

<p>Dentro desses temas separaria em mais alguns sub-temas, sendo esses:</p>

<h3 id="comportamental">Comportamental</h3>

<h4 id="comunicação">Comunicação</h4>
<p>É importante entender que o que fazemos é escrever códigos para pessoas, principalmente quando se atua em linguagens de alto nível como Java, C#, Python ou qualquer outra da sua escolha. Mas, mais importante que isso é lidar com o fato de que outra pessoa esta ao seu lado querendo tanto quanto você que aquele “troço” rode.</p>

<p><a href="https://intrinseca.com.br/autor/thomas-erikson/">Cercado de idiotas - Thomas Erikson</a>
Aqui você terá uma ideia sobre os diferentes tipos de personalidade e como lidar com cada um.</p>

<p><a href="https://www.youtube.com/@CalNewportMedia">Canal do Youtube do Cal Newport (em Inglês)</a>
É um escritor americano que fala sobre temas de produtividade e convívio social como um todo, vale a pena tanto ouvir os podcasts quanto ler seus livros.</p>

<p><a href="https://www.amazon.com.br/Como-fazer-amigos-influenciar-pessoas/dp/8543108683">Como fazer amigos em influenciar pessoas - Dale Carnegie</a>
Esse livro é um clássico, não há muito que falar sobre ele. Somente leia.</p>

<h4 id="resolução-de-problemas">Resolução de problemas</h4>

<p>O seu dia-a-dia será cheio de problemas para resolver, pois no fim das contas nós como desenvolvedores somos isso: resolvedores de problemas. Existe muito pouco sobre o tema e acredito que o mesmo seja um universo a ser explorado.</p>

<p><a href="https://www.linkedin.com/pulse/using-algorithmic-techniques-solve-non-tech-problems-victor-da-hora/?trackingId=sa3V9KigT2qwVKfTslerPg%3D%3D">Usando técnicas de algoritmos para resolver problemas (em Inglês)</a></p>

<h4 id="aprendizado-contínuo">Aprendizado contínuo</h4>

<p>Aqui não existe muito segredo. Você estará inserido em um mercado em ascensão, e isso implica em ter q se adaptar e aprender tudo toda vez. Nesse ramo você pode seguir blogs, influencers ou canais no Youtube, mas vou deixar algumas recomendações dentro da seção de conhecimentos técnicos.</p>

<p>Você também pode se aprofundar na arte do “aprender a aprender”, mas isso eu vou deixar com você.</p>

<h3 id="técnico">Técnico</h3>

<p>Aqui será o seu ponto de partida para ser inserido no mercado, afinal se você for alguém que saiba se comportar corretamente mas não saiba nada técnico, você acabará fazendo algo mais voltado ao público, e desenvolvimento de software é uma tarefa árdua e (as vezes) solitária.</p>

<p><a href="https://www.amazon.com.br/C%C3%B3digo-limpo-Robert-C-Martin/dp/8576082675/ref=sr_1_1?__mk_pt_BR=%C3%85M%C3%85%C5%BD%C3%95%C3%91&amp;crid=T2JHOTNT5U7P&amp;dib=eyJ2IjoiMSJ9.AirHvaSokhMEbmg69K5XCjo0vyrbq5B2f6gSiJk4mtPq8MQ8mhMYGP5iGkR1s5w8xWDbNveoVg1QvGLvepIR1F7QmRCD0frkrz3xsYW40LrImlVd2mJexakZ8-YebOZLNfCFYZelkGnEW2oTRE9kQb7Uvz74_z4IAldCAwGORzbyvWN4C7qjjHixgeFQT5rs01C7xeDpDOueQffo-IQ2TztyhQbLw18DNSTDu7pvJGDgZRZn6M9JhQ7P5Gi_E5pWBx6AQ__wyMX2vTswBNUk8YkvLyeiRUFJKogod7xj2OI.IKwzJi0sI6qs0yipTv7pFw_YfTt58S-3eQGEP2OYX-k&amp;dib_tag=se&amp;keywords=C%C3%B3digo+limpo&amp;qid=1722520868&amp;sprefix=c%C3%B3digo+limpo%2Caps%2C267&amp;sr=8-1">Clean Code - Uncle Bob</a>
Já se perguntou como dar um nome para um método? Ou ainda quantos parâmetros ele deveria ter? Esse livro responde várias perguntas e te deixa com várias outras para ser descobertas por você mesmo.</p>

<p><a href="https://www.amazon.com.br/M%C3%ADtico-Homem-m%C3%AAs-Ensaios-Engenharia-Software/dp/8550802530/ref=sr_1_2?crid=3B3RZGJCNMZE&amp;dib=eyJ2IjoiMSJ9.6uFk9Zy_IHRc9UrqS96cRUPb4PtYDkX_7FS5GfvOxgJ2CjkAImPyyPZ6G3LZGcU2VhuAbStFec6Ul-jT5jDlPv_f2v4yjiXcjMgWBIDGuA7Of4mndAcmePa8luRBgKkJyFtjkF3hkYJHmErKjVqAbrOb8OKBFH9hSNNp7LIwvocêiIikEvnJIdVKcvo3tssq96cRC2XLtAFE8pfKUdAE-nM9Cdj-q_9qSaykKbwJRBsvocêwzhI42DfAWMbQNsHOjJNDw2oceu9DrJLS9jRlIlAsA8_ImMC8h3OSqj3js7HsTEM.mnM8dOFQrsAgFUt8kGHBLxkSPNaEt8Nr8i2J9UTb80g&amp;dib_tag=se&amp;keywords=mythical+man-month&amp;qid=1722520978&amp;sprefix=Mythical+man%2Caps%2C216&amp;sr=8-2">Mythical man month - Frederick P. Brooks Jr</a>
Tudo sobre gerenciamento de projetos. Como uma equipe deveria funcionar e mais algumas coisas que foram fundamentais para o ágil como é hoje.</p>

<p><a href="https://www.youtube.com/@IAmTimCorey">Tim Corey (em Inglês)</a>
Ótimo canal no Youtube sobre desenvolvimento de software, carreira e os problemas comuns que todo desenvolvedor passa no seu dia-a-dia.</p>

<p>Existem alguns termos que você precisa se familiarizar também, se aprofundando ou simplesmente sabendo o que são. São eles:</p>

<ul>
  <li>SOLID</li>
  <li>POO (ou Programação Orientada a Objeto)</li>
  <li>KISS, DRY, YAGNI (esses são conceituais)</li>
  <li>Object Calisthenics</li>
</ul>

<h3 id="burocrático">Burocrático</h3>

<p>Nem tudo são flores no mundo do desenvolvimento de software, você vai precisar aprender sobre coisas que não estão dentro do escopo simplesmente pq o framework da empresa roda de um jeito. Não tenho links nem livros em específico, então mais uma vez confio em você para fazer uma pesquisa aprofundada sobre esses temas, sendo eles:</p>

<ul>
  <li>SCRUM</li>
  <li>Ferramentas de gerenciamento de tempo (Jira, Azure Devops)</li>
  <li>Ciclo de vida de aplicações</li>
  <li>Suporte a aplicação (You Build It You Run It, ITIL)</li>
</ul>

<h3 id="considerações-finais">Considerações finais</h3>

<p>Não digo para ler até o final todos os livros que estão aqui (apesar de serem ótimas recomendações), mas pelo menos coloque algumas sementes na sua cabeça do que está sendo dito neles, afinal aprendizado se trata disso, pq no final das contas ninguém vai fazer as coisas por você.</p>

<p>Outra recomendação que deixo é o site <a href="https://roadmap.sh/">https://roadmap.sh/</a>, nele você obtém rotas de aprendizado para diversas roles dentro do mundo de tecnologia. Acho que mais importante que ler as coisas acima, é decidir o que você quer fazer depois de passar por alguns roadmaps desse site (não necessariamente nessa ordem).</p>

<p>Isso é tudo, see ya!</p>

<p><img src="/images/my-job-here-is-done-bye.gif" alt="my-job-here-is-done-bye.gif" /></p>]]></content><author><name>Pedro Arruda</name></author><summary type="html"><![CDATA[Essa é uma pergunta em que frequentemente é questionada não só para mim, não só para quem já tem anos de carreira, mas sim na cabeça de qualquer estudante que acabou de se formar. Dito isso eu começaria dividindo em 3 conceitos macros:]]></summary></entry><entry><title type="html">Dicas de Git 1 - Squash Commits</title><link href="https://pedroarrudant.github.io/Dicas-de-Git-1/" rel="alternate" type="text/html" title="Dicas de Git 1 - Squash Commits" /><published>2024-07-30T00:00:00+00:00</published><updated>2024-07-30T00:00:00+00:00</updated><id>https://pedroarrudant.github.io/Dicas-de-Git-1</id><content type="html" xml:base="https://pedroarrudant.github.io/Dicas-de-Git-1/"><![CDATA[<h1 id="artigo">Artigo</h1>
<p>Alguma vez você já ficou irritado com o fato de precisar fazer um <em>cherry-pick</em> de uma branch para outra, e se deparar com esse cenário:</p>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>git log <span class="nt">--oneline</span>
f54530a <span class="o">(</span>HEAD -&gt; master<span class="o">)</span> fix: Corrigindo mais informacoes ao arquivo
19dc69d fix: Corrigindo informacoes ao arquivo
969e9bf feat: Adicionando informacoes ao arquivo
bf1327d feat: criando repo
</code></pre></div></div>

<p>Como boa prática vc sempre deve comitar suas alterações sempre que possível, mas no minímo ao fim do dia.</p>

<p>Para que vc não fique com um excesso de commits a serem levados da sua branch feature para uma branch fixa vc pode usar o squash para juntar todos os caras em um só.</p>

<h2 id="tá-legal-mas-o-que-eu-faço">Tá, legal. Mas o que eu faço?</h2>

<p>Para resolver esse problema vamos juntar os commits em um só, uma vez que a sua task era somente uma implementação de um arquivo e não todas essas correções que vc fez no meio do caminho.</p>

<blockquote>
  <p>Se vc consegue dar um commit só e já resolver o problema esse artigo não é pra vc, é para humanos normais.</p>
</blockquote>

<p>Primeiro vc precisa aglutinar os commits em um só usando o <em>git rebase</em> passando como referencia a quantidade de commits a serem unidos:</p>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>git rebase <span class="nt">-i</span> HEAD~&lt;quantidade de commits&gt;
</code></pre></div></div>

<p>Para o caso acima o comando fica assim:</p>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>git rebase <span class="nt">-i</span> HEAD~3
</code></pre></div></div>

<p>Ao fazer isso será aberto um arquivo de texto no vim (sim o vim!) e lá vc deverá alterar o commit que vc quer aglutinar, sendo eles marcados com a tag <em>squash</em> e o commit final com a tag <em>pick</em>.</p>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>pick 969e9bf feat: Adicionando informacoes ao arquivo
squash 19dc69d fix: Corrigindo informacoes ao arquivo
squash f54530a fix: Corrigindo mais informacoes ao arquivo

<span class="c"># Rebase bf1327d..f54530a onto bf1327d (3 commands)</span>
<span class="c">#</span>
<span class="c"># Commands:</span>
<span class="c"># p, pick &lt;commit&gt; = use commit</span>
<span class="c"># r, reword &lt;commit&gt; = use commit, but edit the commit message</span>
<span class="c"># e, edit &lt;commit&gt; = use commit, but stop for amending</span>
<span class="c"># s, squash &lt;commit&gt; = use commit, but meld into previous commit</span>
<span class="c"># f, fixup [-C | -c] &lt;commit&gt; = like "squash" but keep only the previous</span>
<span class="c">#                    commit's log message, unless -C is used, in which case</span>
<span class="c">#                    keep only this commit's message; -c is same as -C but</span>
<span class="c">#                    opens the editor</span>
<span class="c"># x, exec &lt;command&gt; = run command (the rest of the line) using shell</span>
<span class="c"># b, break = stop here (continue rebase later with 'git rebase --continue')</span>
<span class="c"># d, drop &lt;commit&gt; = remove commit</span>
<span class="c"># l, label &lt;label&gt; = label current HEAD with a name</span>
<span class="c"># t, reset &lt;label&gt; = reset HEAD to a label</span>
<span class="c"># m, merge [-C &lt;commit&gt; | -c &lt;commit&gt;] &lt;label&gt; [# &lt;oneline&gt;]</span>
<span class="c">#         create a merge commit using the original merge commit's</span>
<span class="c">#         message (or the oneline, if no original merge commit was</span>
<span class="c">#         specified); use -c &lt;commit&gt; to reword the commit message</span>
<span class="c"># u, update-ref &lt;ref&gt; = track a placeholder for the &lt;ref&gt; to be updated</span>
<span class="c">#                       to this position in the new commits. The &lt;ref&gt; is</span>
<span class="c">#                       updated at the end of the rebase</span>
<span class="c">#</span>
<span class="c"># These lines can be re-ordered; they are executed from top to bottom.</span>
<span class="c">#</span>
<span class="c"># If you remove a line here THAT COMMIT WILL BE LOST.</span>
<span class="c">#</span>
<span class="c"># However, if you remove everything, the rebase will be aborted.</span>
<span class="c">#</span>
</code></pre></div></div>

<p>Um segundo arquivo será aberto perguntando se vc deseja adicionar alguma mensagem adicional de commit, se não quiser é só salvar e seguir em frente.</p>

<blockquote>
  <p>Tome cuidado para não ficar preso para sempre no VIM</p>
</blockquote>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>pick 969e9bf feat: Adicionando informacoes ao arquivo
<span class="c"># This is a combination of 3 commits.</span>
<span class="c"># This is the 1st commit message:</span>

feat: Adicionando informacoes ao arquivo

<span class="c"># This is the commit message #2:</span>

fix: Corrigindo informacoes ao arquivo

<span class="c"># This is the commit message #3:</span>

fix: Corrigindo mais informacoes ao arquivo

<span class="c"># Please enter the commit message for your changes. Lines starting</span>
<span class="c"># with '#' will be ignored, and an empty message aborts the commit.</span>
<span class="c">#</span>
<span class="c"># Date:      Tue Jul 30 17:14:42 2024 -0300</span>
<span class="c">#</span>
<span class="c"># interactive rebase in progress; onto bf1327d</span>
<span class="c"># Last commands done (3 commands done):</span>
<span class="c">#    squash 19dc69d fix: Corrigindo informacoes ao arquivo</span>
<span class="c">#    squash f54530a fix: Corrigindo mais informacoes ao arquivo</span>
<span class="c"># No commands remaining.</span>
<span class="c"># You are currently rebasing branch 'master' on 'bf1327d'.</span>
<span class="c">#</span>
<span class="c"># Changes to be committed:</span>
<span class="c">#       modified:   ArquivoComDados.txt</span>
<span class="c">#</span>
<span class="c"># This is a combination of 3 commits.</span>
<span class="c"># This is the 1st commit message:</span>

feat: Adicionando informacoes ao arquivo

<span class="c"># This is the commit message #2:</span>

fix: Corrigindo informacoes ao arquivo

<span class="c"># This is the commit message #3:</span>

fix: Corrigindo mais informacoes ao arquivo

<span class="c"># Please enter the commit message for your changes. Lines starting</span>

</code></pre></div></div>

<p>Saindo do vim, vc terá o seguinte retorno ao rodar o comando <em>git log –oneline</em>:</p>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>git log <span class="nt">--oneline</span>
8ef96ee <span class="o">(</span>HEAD -&gt; master<span class="o">)</span> feat: Adicionando informacoes ao arquivo
bf1327d feat: criando repo
</code></pre></div></div>

<blockquote>
  <p>Para enviar para o repositório remoto vc precisará usar o comando de force no push, uma vez que o commit local difere do remoto. O comando exato é o <em>git push origin BRANCH-REMOTA –force</em></p>
</blockquote>

<p>Por hoje é isso, see ya.</p>

<p><img src="/images/brazil-dancing-meme.gif" alt="brazil_meme.gif" /></p>]]></content><author><name>Pedro Arruda</name></author><summary type="html"><![CDATA[Artigo Alguma vez você já ficou irritado com o fato de precisar fazer um cherry-pick de uma branch para outra, e se deparar com esse cenário:]]></summary></entry></feed>