Skip to content

Instantly share code, notes, and snippets.

View Xerkus's full-sized avatar
:octocat:
Open Sourcing!

Aleksei Khudiakov Xerkus

:octocat:
Open Sourcing!
View GitHub Profile
@Xerkus
Xerkus / gitcheats.txt
Created June 11, 2019 20:33 — forked from chrismccoy/gitcheats.txt
git cheats
# shortform git commands
alias g='git'
# get a list of all commit messages for a repo
git log --pretty=format:'%s'
# find the nearest parent branch of the current git branch
git show-branch -a | grep '\*' | grep -v `git rev-parse --abbrev-ref HEAD` | head -n1 | sed 's/.*\[\(.*\)\].*/\1/' | sed 's/[\^~].*//'
# push changes to an empty git repository for the first time
@Xerkus
Xerkus / gist:1a15dab3eec456f5d5d5b6068a9c182e
Created October 15, 2025 08:25
Bash oneliners to mass clone/update repos from the github org
cd ~/workspace/laminas
# clone
gh repo list laminas --limit 999 --no-archived --json nameWithOwner --jq '.[]|.nameWithOwner' | xargs -I {} bash -c '[ ! -d $(basename {}) ] && echo -e "\n{}" && gh repo clone {} && (cd $(basename {}) && gh repo set-default {} && gh repo fork --remote)'
# checkout moving default branch
for repo in *; do (cd "${repo}" && echo -e "\n${repo}" && git fetch upstream && git remote set-head --auto upstream && git checkout --force $(git rev-parse --abbrev-ref upstream/HEAD | cut -d/ -f2-)); done
# pull changes for checked out branch
for repo in *; do (cd "${repo}" && echo -e "\n${repo}" && git pull upstream --ff-only); done