Git is a distributed version-control system for tracking file changes, coordinating work, and keeping a recoverable history of a project.

Common Workflow

The basic local loop is:

git status
git add <files>
git commit -m "message"
git push

git status is the first command to run when the working tree feels confusing. It shows modified files, staged files, deleted files, and untracked files.

Gitignore Already Added But Still Showing

If a file was already tracked before being added to .gitignore, Git will keep tracking it. Remove it from the index while leaving the local file on disk:

git rm -r --cached <path>

Then commit the change:

git add .gitignore
git commit -m "chore: stop tracking ignored files"

Relation To Dotfiles

Dotfiles Management depends on Git because configuration files need history, backup, and rollback. The same applies to this Obsidian vault: system files such as _system/index.md can be regenerated, while hand-written notes should be protected by version history.