Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ricardobeat/git-commands
Custom power-user git commands.
https://github.com/ricardobeat/git-commands
git git-addons git-tool shell
Last synced: 3 days ago
JSON representation
Custom power-user git commands.
- Host: GitHub
- URL: https://github.com/ricardobeat/git-commands
- Owner: ricardobeat
- Created: 2015-01-14T17:06:50.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2024-07-11T09:51:40.000Z (4 months ago)
- Last Synced: 2024-08-05T14:16:28.204Z (3 months ago)
- Topics: git, git-addons, git-tool, shell
- Language: Shell
- Homepage:
- Size: 26.4 KB
- Stars: 46
- Watchers: 5
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- jimsghstars - ricardobeat/git-commands - Custom power-user git commands. (Shell)
README
# git-commands
A collection of useful git commands.
## Installation
Clone the repo and add it to your `PATH`:
```shell
git clone https://github.com/ricardobeat/git-commands ~/.git-commandsecho export PATH="$PATH:$HOME/.git-commands" > ~/.zshrc # use .profile for bash
```### git author-stats
Output number of lines added / removed by `author`
★ git author-stats Pietro
Added: 116461, removed: 80818, total: 35643, modified: 197279 lines### git delete-merged-branches
Delete all branches that have already been merged into master.
### git dig
Search for commits that include `string` in their change set.
★ git dig new_feature_flag
### git find
Find files containing the search strings, in any order. For example:
★ git find modules main modal js
main/lib/modules/modal/index.js### git grep-rank
Display authors of files containing `string`, ranked by frequency.
homebrew-core ★ git grep-rank dumb
10 matches for 'dumb'
5 s172262
3 Dominyk Tiller
1 Zhiming Wang
1 Fred McCann
1 David Holm### git open
Simultaneously open all changed files using `$EDITOR`, according to `git status`. Lets you pick up
work in progress without depending on editor 'projects' state.### git rank
Display ranking of authors by number of commits + extra stats.
![git-rank](https://cloud.githubusercontent.com/assets/97396/22784387/1e237d4e-eed0-11e6-9527-16c3e79e1158.png)
### git remaster
While working in a branch, `fetch` latest `master`, then rebase current branch on top of that. Use
to keep in sync with main development branch.### git repush
Delete remote branch, then push again. To work around `-f` restrictions. Bails out if branch name is
`master` or `trunk`.### git shower
Run GC + prune. Optimized for a huge (~100k files) repository, might not work for you.
### git size [commit]
Show the size in bytes introduced (or removed) by a specific commit. Accepts any ref identifier
that git understands: hashes, `HEAD^`, etc.### git snapshot [note]
Create a named stash, including an optional text note. This will _not_ be featured in the stash list,
only in reflog (and will be GCed at some point). Use as safety checkpoints while furiously changing code.### git sort [hashes]
Sort a list of SHA1 commit hashes by their ordering in the history. Defaults to looking at the past 1000 commits,
can be overriden by setting the `N` environment var.git sort 2d5cbab63ba cf39029de04 61bdf05bbc1
cf39029de04
61bdf05bbc1
2d5cbab63bacat shas.txt | git sort
cf39029de04
61bdf05bbc1
...### git stash-merge
Commands like `git stash pop` will refuse to apply over a dirty tree, even when an automatic merge is possible.
The `stash-merge` command will create a new stash object from your state and try to `merge` them together.
In case the the merge fails you still have both in stash list.