A new Git/GitHub tip added every day for 365 days. Practical commands for React Native, Node.js, and web developers.
GitHub CLI · 2026-08-05
gh release listSee all published releases.
GitHub CLI · 2026-08-04
gh release create v1.0.0 --title "v1.0.0" --notes "First release"Publish a new GitHub release.
GitHub CLI · 2026-08-03
gh issue edit 42 --assignee @meAssign an issue to yourself quickly.
GitHub CLI · 2026-08-02
gh issue close 42Close an issue from the terminal.
GitHub CLI · 2026-08-01
gh issue view 42Read a specific issue by number.
GitHub CLI · 2026-07-31
gh issue listSee all open issues in current repo.
GitHub CLI · 2026-07-30
gh issue create --title "Bug: crash on login"Open a new GitHub issue from terminal.
GitHub CLI · 2026-07-29
gh pr close 123Close a pull request without merging.
GitHub CLI · 2026-07-28
gh pr merge 123 --squashMerge a pull request using squash strategy.
GitHub CLI · 2026-07-27
gh pr checkout 123Switch to the branch of a pull request locally.
GitHub CLI · 2026-07-26
gh pr view 123Read the details of a specific pull request.
GitHub CLI · 2026-07-25
gh pr listSee all open pull requests in current repo.
GitHub CLI · 2026-07-24
gh pr create --title "feat: new feature" --fillOpen a pull request from current branch.
GitHub CLI · 2026-07-23
gh repo fork owner/repoFork a repository to your account.
GitHub CLI · 2026-07-22
gh repo view --webOpen current repo in your default browser.
GitHub CLI · 2026-07-21
gh repo listSee all your GitHub repositories.
GitHub CLI · 2026-07-20
gh repo clone owner/repoClone any GitHub repository easily.
GitHub CLI · 2026-07-19
gh repo create my-app --publicCreate a new GitHub repository from terminal.
GitHub CLI · 2026-07-18
gh auth statusVerify you are logged in and see your username.
GitHub CLI · 2026-07-17
gh auth loginAuthenticate with your GitHub account.
GitHub CLI · 2026-07-16
brew install ghInstall the official GitHub CLI on macOS.
Tags · 2026-07-15
git tag -d v1.0.0Remove a local tag.
Tags · 2026-07-14
git push origin --tagsUpload all local tags to remote.
Tags · 2026-07-13
git tagShow all tags in the repository.
Tags · 2026-07-12
git tag -a v1.0.0 -m "Release v1.0.0"Tag with a message — best practice for releases.
Tags · 2026-07-11
git tag v1.0.0Mark a specific commit as a release version.
Remote · 2026-07-10
git pull --rebasePull and rebase instead of merge for cleaner history.
Remote · 2026-07-09
git fetch originDownload remote changes without applying them.
Remote · 2026-07-08
git remote set-url origin https://github.com/user/new-repo.gitUpdate the URL of an existing remote.
Remote · 2026-07-07
git remote add origin https://github.com/user/repo.gitConnect your local repo to a remote.
Remote · 2026-07-06
git remote -vSee the fetch and push URLs for your remotes.
Undo · 2026-07-05
git clean -fdDelete untracked files and directories.
Undo · 2026-07-04
git checkout .Revert all unstaged changes in working directory.
Undo · 2026-07-03
git add forgotten.js && git commit --amend --no-editAdd a file to the previous commit without changing message.
Undo · 2026-07-02
git commit --amend -m "correct message"Change the message of your last commit before pushing.
Undo · 2026-07-01
git revert abc1234Create a new commit that undoes a specific commit safely.
Undo · 2026-06-30
git reset --hard HEAD~1Completely remove last commit and all changes. Dangerous!
Undo · 2026-06-29
git reset HEAD~1Uncommit and unstage changes but keep files.
Undo · 2026-06-28
git reset --soft HEAD~1Uncommit but keep all your changes staged.
Stash · 2026-06-27
git stash clearDelete all stashed entries at once.
Stash · 2026-06-26
git stash drop stash@{0}Delete a specific stash entry.
Stash · 2026-06-25
git stash applyApply stash but keep it in the stash list.
Stash · 2026-06-24
git stash popRestore the latest stash and remove it from list.
Stash · 2026-06-23
git stash listSee all saved stashes.
Stash · 2026-06-22
git stash push -m "wip: auth screen"Save stash with a descriptive label.
Stash · 2026-06-21
git stashTemporarily save changes without committing.
Rebase · 2026-06-20
git rebase -i HEAD~3 # change pick to squashCombine multiple commits into one clean commit.
Rebase · 2026-06-19
git rebase -i HEAD~3Edit, squash, or reorder the last 3 commits.
Rebase · 2026-06-18
git rebase --continueAfter fixing a conflict during rebase, continue the process.
Rebase · 2026-06-17
git rebase --abortCancel a rebase in progress and restore original state.
Rebase · 2026-06-16
git rebase mainReplay your branch commits on top of main.
Merging · 2026-06-15
git add filename.js && git commitAfter fixing conflicts, stage and commit to complete merge.
Merging · 2026-06-14
git statusAfter a conflict, git status shows which files need fixing.
Merging · 2026-06-13
git merge --abortCancel an in-progress merge and go back to before.
Merging · 2026-06-12
git merge --no-ff feature/loginAlways create a merge commit for cleaner history.
Merging · 2026-06-11
git merge feature/loginMerge another branch into your current branch.
Branches · 2026-06-10
git push -u origin feature/loginPush and set upstream tracking for a new branch.
Branches · 2026-06-09
git branch -m new-nameRename the branch you are currently on.
Branches · 2026-06-08
git push origin --delete feature/loginRemove a branch from the remote repository.
Branches · 2026-06-07
git branch -D feature/loginDelete a branch even if it has unmerged changes.
Branches · 2026-06-06
git branch -d feature/loginDelete a branch that has been merged.
Branches · 2026-06-05
git branch -aShow local and remote branches.
Branches · 2026-06-04
git switch -c feature/loginNewer syntax to create and switch branches.
Branches · 2026-06-03
git checkout -b feature/loginCreate a new branch and switch to it immediately.
Branches · 2026-06-02
git checkout feature/loginSwitch your working directory to another branch.
Branches · 2026-06-01
git branch feature/loginCreate a new branch without switching to it.
Git Basics · 2026-05-31
git restore filename.jsRevert a file back to last committed state.
Git Basics · 2026-05-30
git restore --staged filename.jsRemove a file from staging without losing changes.
Git Basics · 2026-05-29
git diff --stagedShow changes that are staged and ready to commit.
Git Basics · 2026-05-28
git diffShow unstaged changes in your working directory.
Git Basics · 2026-05-25
git log --oneline -5Limit log output to the last 5 commits.
Git Basics · 2026-05-24
git log --oneline --graph --allVisualize branches and merges in the terminal.
Git Basics · 2026-05-23
git log --onelineSee all commits in a compact one-line format.
Git Basics · 2026-05-22
git pullFetch and merge changes from the remote branch.
Git Basics · 2026-05-21
git push origin mainUpload your commits to the remote repository.
Git Basics · 2026-05-20
git commit -am "fix: typo in header"Stage tracked files and commit in one command.
Git Basics · 2026-05-19
git commit -m "feat: add login screen"Save staged changes with a descriptive message.
Git Basics · 2026-05-18
git add filename.jsStage a specific file only.
Git Basics · 2026-05-17
git add .Stage every changed file in current directory.
Git Basics · 2026-05-16
git status -sCompact version of git status — M = modified, ? = untracked.
Git Basics · 2026-05-15
git statusSee which files are staged, unstaged, or untracked.
Git Basics · 2026-05-14
git clone https://github.com/user/repo.gitDownload a remote repository to your machine.
Git Basics · 2026-05-13
git initStart tracking a project with Git.
Git Basics · 2026-05-12
git config --global user.email "you@example.com"Set your email for all commits globally.
Git Basics · 2026-05-11
git config --global user.name "Your Name"Set your name for all commits globally.
Git Basics · 2026-05-10
git --versionAlways know what version of Git you are running.
New tip added every day. Star the repo to follow along!