version-control
Version control systems and practices
Learn how to extract individual functions between Git branches using cherry-pick, diff, and format-patch. Handle diverged branches and merge challenges.
View only files changed in the last Git commit without diffs using git show --name-only or git diff --name-only HEAD~1 HEAD. Perfect for git show files, git diff files, git list files in scripts or quick audits—no patch details shown.
Learn to untrack already committed files with git rm --cached, apply .gitignore to build artifacts like node_modules or venv, and remove them from Git history using filter-branch. Step-by-step guide for clean repos.
Learn how to git clone a specific tag using --branch without the 'Remote branch not found' warning. Verify tags with git ls-remote, use shallow git clone depth 1, and avoid pitfalls like --single-branch for seamless GitHub repo cloning.
Learn how to find when lines were deleted in Git history using git blame alternatives like git log -S and reverse git blame techniques.
Learn how to recover a deleted Git branch using git reflog after git branch -D. Step-by-step guide to restore deleted git branch, commits via reflog, fsck, deletion message, and remote recovery tips.
Learn how to stage deleted files in Git when using rm instead of git rm. Discover commands like git rm --cached, git add -u, and git add -A to properly stage file deletions.
Learn how to safely move uncommitted changes to another Git branch using git stash, git switch -c, or git checkout -b. Avoid losing work when switching branches with conflicts—step-by-step guide with examples.
Is committing .gitignore a best practice? Explore benefits like tracking ignore pattern changes over time, team consistency, clean repos, CI/CD support, plus drawbacks and fixes like local excludes for optimal Git workflows.
Learn how to resolve Git 'would clobber existing tag' error when pulling tags. Discover safe solutions beyond force-pulling or recloning your repository.
Resolve 'fatal: remote origin already exists' Git error when adding origin to GitHub repo. Check remotes with git remote -v, remove or set-url origin for Rails tutorials and pushes. Step-by-step fixes.
Learn how to completely remove Git commit history in GitHub while preserving your current code state. Step-by-step guides using orphan branches, git filter-branch, and repository re-initialization.
Learn how to create a branch in SVN (Subversion) using the svn copy command. Follow step-by-step process, standard repository structure, merging tips, and best practices for effective branch management in Subversion.
Create a Git commit with a separate title and body from the CLI. Use multiple -m flags, -F file input, or commit templates for consistent commit messages.
Understand the key differences in Git between HEAD (pointer to current commit), working tree (editable files on disk), and index/staging area (snapshot for next commit). Learn workflow, commands like git status, git add, and common confusions like detached HEAD.
Fix 'fatal: destination path "." already exists and is not an empty directory' Git clone error in current directory. Check hidden files with ls -a, use git init + remote add + fetch, or temp clone workaround for success.
Learn how to update your TortoiseSVN client's server IP address using Relocate or `svn switch --relocate`. Fix SVN IP connection issues and troubleshoot server changes.
Learn why GitHub shows older 'last updated' dates for folders despite recent file changes. Discover reliable methods to check if a GitHub project is actively maintained.
Learn to view Git stash contents without applying using git stash list for inventory, git stash show for summaries, and git stash show -p for full diffs. Safe inspection of changes, untracked files, and advanced tips for Git workflows.
Step-by-step guide to delete a Git branch both locally and remotely. Use git push origin --delete, git branch -d bugfix, and git fetch --prune to remove branches and prevent reappearing after git pull. Fix common errors.