<?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[Inside Git: How .git Folder Works]]></title><description><![CDATA[Inside Git: How .git Folder Works]]></description><link>https://git-internals-basics.hashnode.dev</link><generator>RSS for Node</generator><lastBuildDate>Wed, 14 Oct 2026 10:21:14 GMT</lastBuildDate><atom:link href="https://git-internals-basics.hashnode.dev/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Inside Git: How It Works and the Role of the .git Folder]]></title><description><![CDATA[IntroductionGit is a tool that helps developers track changes in code. Unlike older systems that store only differences, Git saves snapshots of a project, making it fast and reliable.


How GIt Works Internally
 Every time a commit is made, Git takes...]]></description><link>https://git-internals-basics.hashnode.dev/inside-git-how-it-works-and-the-role-of-the-git-folder</link><guid isPermaLink="true">https://git-internals-basics.hashnode.dev/inside-git-how-it-works-and-the-role-of-the-git-folder</guid><category><![CDATA[GitHub]]></category><category><![CDATA[Git]]></category><category><![CDATA[github-actions]]></category><dc:creator><![CDATA[Rupesh Pradhan]]></dc:creator><pubDate>Mon, 19 Jan 2026 16:03:23 GMT</pubDate><content:encoded><![CDATA[<details><summary>Introduction</summary><div data-type="detailsContent">Git is a tool that helps developers track changes in code. Unlike older systems that store only differences, Git saves snapshots of a project, making it fast and reliable.</div></details>

<ol>
<li><p><strong>How GIt Works Internally</strong></p>
<p> Every time a commit is made, Git takes a snapshot of the project and saves it. Each snapshot has a unique ID called a <strong>hash</strong>, which keeps the history safe. Commits are linked together, forming a chain of project versions.</p>
</li>
<li><p><strong>Understanding the .git Folder</strong></p>
<p> The <code>.git</code> folder is hidden and created when initializing a Git repository. It stores all the information Git needs, such as files, history, and configuration. Inside, there are folders like <code>objects</code> and <code>refs</code>, and files like <code>HEAD</code> and <code>config</code>.</p>
</li>
<li><p><strong>Git Objects: Blob, Tree, Commit</strong></p>
<p> <strong>a) Blob</strong> – stores file content.</p>
<p> <strong>b) Tree</strong> – stores folders and links to blobs.</p>
<p> <strong>c) Commit</strong> – stores a snapshot of the project and links to a tree and parent commits.</p>
</li>
<li><p><strong>How Git Tracks Changes</strong></p>
<p> a) <code>git add</code> – moves changes into the staging area.</p>
<p> b) <code>git commit</code> – saves a snapshot (commit) of the project.</p>
</li>
</ol>
]]></content:encoded></item></channel></rss>