<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Git Intro for Beginners]]></title><description><![CDATA[Git Intro for Beginners]]></description><link>https://git-intro.hashnode.dev</link><generator>RSS for Node</generator><lastBuildDate>Wed, 14 Oct 2026 04:09:34 GMT</lastBuildDate><atom:link href="https://git-intro.hashnode.dev/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Git-Basics and Essential commands]]></title><description><![CDATA[In the early 2000s, developers, especially those working on large projects, faced significant challenges in complex project management. When multiple programmers or developers worked on the same project, they had to manage code changes individually. ...]]></description><link>https://git-intro.hashnode.dev/git-basics-and-essential-commands</link><guid isPermaLink="true">https://git-intro.hashnode.dev/git-basics-and-essential-commands</guid><dc:creator><![CDATA[Gajanan Mundkar]]></dc:creator><pubDate>Mon, 05 Jan 2026 11:57:36 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1767281806470/3310a3bb-97e3-41f6-96a1-5cea3b669302.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In the early 2000s, developers, especially those working on large projects, faced significant challenges in complex project management. When multiple programmers or developers worked on the same project, they had to manage code changes individually. For example, if Developer A made changes, Developers B and C might not be aware of these updates, leading to issues in <mark>tracking code changes across the team</mark>. To address this problem, the Version Control System (VCS) was developed.</p>
<hr />
<h2 id="heading-what-is-vcs-version-control-system"><strong>What is VCS (Version Control System) ?</strong></h2>
<p>It is a general term for any software that helps you track and manage changes to your files over time. It allows you to "go back in time" to older versions, see who changed what, and collaborate with others without overwriting their work.</p>
<p>It remembers-</p>
<ul>
<li><p>What Changed</p>
</li>
<li><p>Who Changed</p>
</li>
<li><p>When it Changed</p>
</li>
<li><p>Which is Older Version</p>
</li>
</ul>
<blockquote>
<p><strong><mark>Git</mark></strong> is a specific type of <strong><mark>Distributed Version Control System Software</mark>, created in 2005 by Linus Torvalds</strong> to manage the development of the Linux Kernel software.</p>
</blockquote>
<h2 id="heading-why-git-is-used">Why Git is used ?</h2>
<p>Git is used for Simple three reasons:</p>
<ol>
<li><p><mark>Safety</mark> : Git takes "snapshots" (commits) of your entire project. if you make a mistake ,You can instantly jump back to previous version.</p>
</li>
<li><p><mark>Organization</mark> : You don’t need to copy-paste folders to save different versions ,git keeps everything in one place and remembers every change.</p>
</li>
<li><p><mark>Teamwork(Collaboration)</mark> : Git allows many people to work on the same file at the same time. and it automatically merges everyone's changes together and alerts you if two people try to change the exact same line</p>
</li>
</ol>
<h2 id="heading-core-terminologies-of-git">Core Terminologies of Git ….</h2>
<ol>
<li><p>Repository(Repo): It is a Storage space/Folder that contains all your project files and History of Every change ever made.</p>
</li>
<li><p>Working Directory: The actual folder on your computer where you are currently typing code. Changes here are "untracked" until you tell Git to pay attention.</p>
</li>
<li><p>Commit: A "snapshot" of your project at a specific moment. Each commit has a unique ID and a message explaining what changed. Think of it as a permanent save point.</p>
</li>
<li><p>Branch: A parallel version of your project. The main branch is the "official" version, but you can create a "Feature" branch to try new ideas without breaking the main code.</p>
</li>
<li><p>Head: A pointer that tells Git which branch or commit you are currently working on.</p>
</li>
<li><p>Push: Sending your local commits to the remote repository on GitHub so others can see them.</p>
</li>
<li><p>Pull: A combination of Fetch+Merge. It downloads the latest changes from GitHub and immediately mixes them into your local work.</p>
</li>
</ol>
<h2 id="heading-common-git-commands">Common Git “Commands”</h2>
<ol>
<li><p><code>git init</code> – Initialize a new Git repository(Turns a regular folder into a local Git repository)</p>
</li>
<li><p><code>git status</code> – It tells you which files have changed and what is ready to be saved.</p>
</li>
<li><p><code>git add &lt;file&gt;</code>: Moves a specific file to the "Staging Area" .</p>
</li>
<li><p><code>git add .</code>: A shortcut to stage all changed files at once.</p>
</li>
<li><p><code>git commit -m "message"</code>: Saves your staged changes with a descriptive note.</p>
</li>
<li><p><code>git log</code>: Shows a list of all past commits so you can see the project's history.</p>
</li>
<li><p><code>git diff</code>: Shows exactly what lines of code changed inside your files.</p>
</li>
<li><p><code>git push origin &lt;branch&gt;</code>: To Send your local saves to the cloud (GitHub).</p>
</li>
<li><p><code>git pull</code>: Grabs the latest changes from GitHub and merges them into your local work.</p>
</li>
</ol>
<h2 id="heading-basic-developer-workflow">Basic developer workflow</h2>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1767613743873/13d7a279-86c8-4e7b-90d8-fc49cd8f29f6.png" alt class="image--center mx-auto" /></p>
]]></content:encoded></item></channel></rss>