Γρήγορη αναφορά

Πρακτικά Κόλπα & Συμβουλές Git (Cheat Sheet)

Γρήγορος οδηγός για συμβουλές παραγωγικότητας στο Git: συγχρονισμός submodules, ανάλυση diff stat, cherry-pick και χρήσιμα ψευδώνυμα.

· Δημοσιεύτηκε

Ancestry References

HEAD^       # 1 commit before HEAD
HEAD^^      # 2 commits before HEAD
HEAD~5      # 5 commits before HEAD

Branch Management

# Create and switch to new branch
git checkout -b $branchname
git push origin $branchname --set-upstream

# Checkout remote branch locally
git fetch origin
git checkout --track origin/$branchname

# Prune stale tracking references
git remote prune origin

Submodules

# Clone a repository including all submodules recursively
git clone --recursive <repository-url>

# Initialize and update submodules in existing repo
git submodule update --init --recursive

# Pull latest changes across all submodules
git submodule foreach git pull origin master

Diff & Inspection Tricks

Diffs with Statistics

git diff --stat
git diff --dirstat

Show Changed File Names Only

git diff --name-only
git diff --name-status

Checking Log with Custom Date Formats

git log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit

Cherry-Picking

git cherry-pick <commit-hash>        # Apply commit onto active branch
git cherry-pick -n <commit-hash>     # Stage changes without creating a new commit
git cherry-pick --continue           # Continue after resolving merge conflicts
git cherry-pick --abort              # Abort cherry-pick and return to previous state

Useful Everyday Aliases

git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.ci commit
git config --global alias.st status
git config --global alias.unstage 'reset HEAD --'
git config --global alias.last 'log -1 HEAD'

References

Σχετικά θέματα