<?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>Forem: Paulo Henrique Junior</title>
    <description>The latest articles on Forem by Paulo Henrique Junior (@itspjunior).</description>
    <link>https://forem.com/itspjunior</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%2F615231%2F80defb0b-b16b-4a71-bb59-c834685bca17.jpg</url>
      <title>Forem: Paulo Henrique Junior</title>
      <link>https://forem.com/itspjunior</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/itspjunior"/>
    <language>en</language>
    <item>
      <title>Git &amp; Semantic Commits</title>
      <dc:creator>Paulo Henrique Junior</dc:creator>
      <pubDate>Wed, 30 Aug 2023 18:37:05 +0000</pubDate>
      <link>https://forem.com/itspjunior/git-semantic-commits-182i</link>
      <guid>https://forem.com/itspjunior/git-semantic-commits-182i</guid>
      <description>&lt;p&gt;The usage of semantic commit messages in our code makes it easier to identify commits and what was worked on; it's critical to maintain the pattern across the team. I invite you to learn a bit more on how to create nice semantic commits messages and bookmark this article to show your team :)&lt;/p&gt;

&lt;p&gt;To ensure consistency throughout the source code, keep these rules in mind as you are working:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;All features or bugs must be tested by one or more specs (unit tests)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each commit message consists of a header, a body and a footer. The header has a special format that includes a type, a scope and a subject:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;type&amp;gt;(&amp;lt;scope&amp;gt;): &amp;lt;subject&amp;gt;
&amp;lt;BLANK LINE&amp;gt;
&amp;lt;body&amp;gt;
&amp;lt;BLANK LINE&amp;gt;
&amp;lt;footer&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The header is mandatory and the scope of the header is optional.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Any line of the commit message cannot be longer 100 characters! This allows the message to be easier to read on GitHub or any other Git tool;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Samples:&lt;br&gt;
&lt;code&gt;docs(changelog): update changelog to beta.5&lt;/code&gt;&lt;br&gt;
&lt;code&gt;fix(release): need to depend on latest rxjs and zone.js&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Type
&lt;/h2&gt;

&lt;p&gt;Must be one of the following:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;build&lt;/em&gt;&lt;/strong&gt;: Changes that affect the build system or external dependencies (e.g: npm)&lt;br&gt;
&lt;code&gt;build(ASM-123): update of the packages.json new versions of node&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;ci&lt;/em&gt;&lt;/strong&gt;: Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)&lt;br&gt;
&lt;code&gt;ci(ASM-123): update of ci travis files in order to allow  deploy to the new environments&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;docs&lt;/em&gt;&lt;/strong&gt;: Documentation only changes&lt;br&gt;
&lt;code&gt;docs(ASM-123): adding a new documentation to the card-component&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;feat&lt;/em&gt;&lt;/strong&gt;: A new feature&lt;br&gt;
&lt;code&gt;feat(ASM-123): working on the card-component feature&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;fix&lt;/em&gt;&lt;/strong&gt;: A bug fix&lt;br&gt;
&lt;code&gt;fix(ASM-123): bugfixing of the start date on the card-component&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;perf&lt;/em&gt;&lt;/strong&gt;: A code change that improves performance&lt;br&gt;
&lt;code&gt;perf(ASM-123): performance improvement on the get method.&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;refactor&lt;/em&gt;&lt;/strong&gt;: A code change that neither fixes a bug nor adds a feature&lt;br&gt;
&lt;code&gt;refactor(ASM-123): refactoring the legacy post method to the new version of the framework.&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;style&lt;/em&gt;&lt;/strong&gt;: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)&lt;br&gt;
&lt;code&gt;style(ASM-123): removing semi-colons not required&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;test&lt;/em&gt;&lt;/strong&gt;: Adding missing tests or correcting existing tests&lt;br&gt;
&lt;code&gt;test(ASM-123): adding new test cases to the post method&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Scope
&lt;/h2&gt;

&lt;p&gt;The scope should be the ticket of the change you're working on for example: (ABC-123, CBA-432 and so on). That will give visibility on what that commit was worked on.&lt;/p&gt;

&lt;h2&gt;
  
  
  Thank you
&lt;/h2&gt;

&lt;p&gt;By my experience, we've been using this approach and my current team and our it made our life a lot easier when seeking for a commit on the three. Give you a change and favourite this post. See you soon mate!&lt;/p&gt;

</description>
      <category>git</category>
      <category>github</category>
      <category>programming</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
