Fish TouchingšŸŸšŸŽ£

Git Hacks

Nov 3, 2023

# Clear Git History

  1. Checkout
    git checkout --orphan latest_branch
  2. Add all the files
    git add -A
  3. Commit the changes
    git commit -am "commit message"
  4. Delete the branch
    git branch -D main
  5. Rename the current branch to main
    git branch -m main
  6. Finally, force update your repository
    git push -f origin main

# rebase

# Merge VS Rebase

# Pretty Print

git ls-tree --full-tree --name-only -r HEAD
git log --all --decorate --oneline --graph

# Sparse Checkout

Used in mono repo.

Reduce your working tree to a subset of tracked files

git clone \
  --depth 1  \
  --filter=blob:none  \
  --sparse \
  https://github.com/cirosantilli/test-git-partial-clone

git sparse-checkout set --cone
git sparse-checkout set path/to/dir

# Global .gitignore

git config --global core.excludesfile ~/.gitignore