<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Repository Management on AI VOID</title><link>https://ai-blog.noorshomelab.dev/tags/repository-management/</link><description>Recent content in Repository Management on AI VOID</description><generator>Hugo</generator><language>en</language><lastBuildDate>Tue, 19 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://ai-blog.noorshomelab.dev/tags/repository-management/index.xml" rel="self" type="application/rss+xml"/><item><title>Chapter 3: Essential Git Commands: Add, Commit, Log, and Status</title><link>https://ai-blog.noorshomelab.dev/git-github-mastery-2025/chapter-3-essential-git-commands/</link><pubDate>Tue, 23 Dec 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/git-github-mastery-2025/chapter-3-essential-git-commands/</guid><description>&lt;h2 id="introduction-your-first-steps-into-gits-core"&gt;Introduction: Your First Steps into Git&amp;rsquo;s Core&lt;/h2&gt;
&lt;p&gt;Welcome back, aspiring version control wizard! In the previous chapters, you learned what Git is, why it&amp;rsquo;s indispensable, and how to get it set up on your machine. You even initialized your very first repository. Now, it&amp;rsquo;s time to bring your Git repository to life by making it track your project&amp;rsquo;s evolution.&lt;/p&gt;
&lt;p&gt;This chapter is all about getting hands-on with the essential Git commands that you&amp;rsquo;ll use daily: &lt;code&gt;git add&lt;/code&gt;, &lt;code&gt;git commit&lt;/code&gt;, &lt;code&gt;git log&lt;/code&gt;, and &lt;code&gt;git status&lt;/code&gt;. These aren&amp;rsquo;t just commands; they are the bedrock of managing your project&amp;rsquo;s history. We&amp;rsquo;ll explore the crucial concept of the &amp;ldquo;staging area,&amp;rdquo; understand how to create meaningful snapshots of your work, and learn how to review your project&amp;rsquo;s timeline. By the end of this chapter, you&amp;rsquo;ll be confidently tracking your changes and building a robust history for your projects.&lt;/p&gt;</description></item><item><title>Chapter 6: Resolving Merge Conflicts: When Changes Collide</title><link>https://ai-blog.noorshomelab.dev/git-github-mastery-2025/chapter-6-resolving-merge-conflicts/</link><pubDate>Tue, 23 Dec 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/git-github-mastery-2025/chapter-6-resolving-merge-conflicts/</guid><description>&lt;h2 id="chapter-6-resolving-merge-conflicts-when-changes-collide"&gt;Chapter 6: Resolving Merge Conflicts: When Changes Collide&lt;/h2&gt;
&lt;p&gt;Welcome back, intrepid developer! In our previous chapters, we learned the magic of branching – how to create separate lines of development to work on features or fixes without disturbing the main codebase. We even touched upon merging, bringing those separate lines back together. But what happens when two brilliant minds (or even one mind working on two branches!) make conflicting changes to the &lt;em&gt;exact same part&lt;/em&gt; of the &lt;em&gt;same file&lt;/em&gt;?&lt;/p&gt;</description></item><item><title>Organizing Your Codebase: Workspaces and Repository Structure</title><link>https://ai-blog.noorshomelab.dev/jujutsu-vcs-guide-2026/workspaces-repository-structure/</link><pubDate>Tue, 19 May 2026 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/jujutsu-vcs-guide-2026/workspaces-repository-structure/</guid><description>&lt;p&gt;Welcome back, intrepid developer! So far, you&amp;rsquo;ve mastered the basics of Jujutsu&amp;rsquo;s unique approach to version control, from its mutable history to the powerful operation log. You&amp;rsquo;ve seen how &lt;code&gt;jj&lt;/code&gt; empowers you to shape your history with confidence. But what happens when your project grows, or when you need to juggle multiple development lines simultaneously without creating a mess of separate Git clones?&lt;/p&gt;
&lt;p&gt;This chapter introduces you to &lt;code&gt;jj&lt;/code&gt;&amp;rsquo;s elegant solution: &lt;strong&gt;workspaces&lt;/strong&gt;. We&amp;rsquo;ll dive into how &lt;code&gt;jj&lt;/code&gt; structures repositories and how workspaces allow you to manage multiple working directories, each potentially focused on a different task, all backed by a single, shared repository. This isn&amp;rsquo;t just about saving disk space; it&amp;rsquo;s about streamlining your workflow, improving context switching, and enabling more flexible development patterns.&lt;/p&gt;</description></item><item><title>Chapter 11: Git Internals: Peeking Under the Hood</title><link>https://ai-blog.noorshomelab.dev/git-github-mastery-2025/chapter-11-git-internals/</link><pubDate>Tue, 23 Dec 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/git-github-mastery-2025/chapter-11-git-internals/</guid><description>&lt;h2 id="chapter-11-git-internals-peeking-under-the-hood"&gt;Chapter 11: Git Internals: Peeking Under the Hood&lt;/h2&gt;
&lt;h3 id="introduction"&gt;Introduction&lt;/h3&gt;
&lt;p&gt;Welcome back, intrepid version control explorer! So far, we&amp;rsquo;ve learned how to use Git and GitHub like seasoned professionals – committing changes, creating branches, merging, and collaborating. You&amp;rsquo;ve mastered the &amp;ldquo;what&amp;rdquo; and the &amp;ldquo;how&amp;rdquo; of many Git operations. But have you ever wondered &lt;em&gt;how&lt;/em&gt; Git actually does all of this magic? How does it store your entire project history so efficiently? How does it know which version of a file is which?&lt;/p&gt;</description></item><item><title>Git Cheatsheet - Complete Reference 2025</title><link>https://ai-blog.noorshomelab.dev/cheatsheets/git-cheatsheet/</link><pubDate>Tue, 23 Dec 2025 00:00:00 +0000</pubDate><guid>https://ai-blog.noorshomelab.dev/cheatsheets/git-cheatsheet/</guid><description>&lt;p&gt;This cheatsheet provides a comprehensive, quick-reference guide to Git, covering essential commands, advanced operations, workflow best practices, and troubleshooting tips. It&amp;rsquo;s designed for developers needing fast, accurate information for real-world development scenarios as of December 2025.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="quick-reference-most-used-commands"&gt;Quick Reference: Most Used Commands&lt;/h2&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style="text-align: left"&gt;Command&lt;/th&gt;
&lt;th style="text-align: left"&gt;Description&lt;/th&gt;
&lt;th style="text-align: left"&gt;Example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git init&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align: left"&gt;Initializes a new Git repository.&lt;/td&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git init&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git clone &amp;lt;url&amp;gt;&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align: left"&gt;Clones an existing repository.&lt;/td&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git clone https://github.com/user/repo.git&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git add &amp;lt;file&amp;gt;&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align: left"&gt;Stages changes for the next commit.&lt;/td&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git add index.html&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git add .&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align: left"&gt;Stages all changes in the current directory.&lt;/td&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git add .&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git commit -m &amp;quot;msg&amp;quot;&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align: left"&gt;Records staged changes to the repository.&lt;/td&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git commit -m &amp;quot;Add header component&amp;quot;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git status&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align: left"&gt;Shows the working tree status.&lt;/td&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git status&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git log&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align: left"&gt;Displays commit history.&lt;/td&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git log --oneline --graph&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git branch&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align: left"&gt;Lists, creates, or deletes branches.&lt;/td&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git branch feature/new-feature&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git checkout &amp;lt;branch&amp;gt;&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align: left"&gt;Switches to a specified branch.&lt;/td&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git checkout develop&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git checkout -b &amp;lt;new-branch&amp;gt;&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align: left"&gt;Creates and switches to a new branch.&lt;/td&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git checkout -b bugfix/login-issue&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git merge &amp;lt;branch&amp;gt;&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align: left"&gt;Integrates changes from one branch into another.&lt;/td&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git merge feature/new-feature&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git push &amp;lt;remote&amp;gt; &amp;lt;branch&amp;gt;&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align: left"&gt;Uploads local branch commits to remote.&lt;/td&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git push origin main&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git pull &amp;lt;remote&amp;gt; &amp;lt;branch&amp;gt;&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align: left"&gt;Fetches and integrates remote changes.&lt;/td&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git pull origin main&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git remote -v&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align: left"&gt;Lists configured remote repositories.&lt;/td&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git remote -v&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;hr&gt;
&lt;h2 id="getting-started--configuration"&gt;Getting Started &amp;amp; Configuration&lt;/h2&gt;
&lt;h3 id="setup"&gt;Setup&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style="text-align: left"&gt;Command&lt;/th&gt;
&lt;th style="text-align: left"&gt;Description&lt;/th&gt;
&lt;th style="text-align: left"&gt;Example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git init&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align: left"&gt;Initializes a new Git repository in the current directory.&lt;/td&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git init&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git clone &amp;lt;url&amp;gt;&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align: left"&gt;Clones an existing repository from a URL into a new directory.&lt;/td&gt;
&lt;td style="text-align: left"&gt;&lt;code&gt;git clone https://github.com/octocat/Spoon-Knife.git&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="basic-configuration"&gt;Basic Configuration&lt;/h3&gt;
&lt;p&gt;These settings are global unless &lt;code&gt;--local&lt;/code&gt; is specified.&lt;/p&gt;</description></item></channel></rss>