Fixed vim and zsh
This commit is contained in:
222
zsh/modules/git/README.md
Normal file
222
zsh/modules/git/README.md
Normal file
@ -0,0 +1,222 @@
|
||||
Git
|
||||
===
|
||||
|
||||
Provides nice git aliases and functions.
|
||||
|
||||
Also provides functions necessary for many prompts.
|
||||
|
||||
Many thanks to [Sorin Ionescu](https://github.com/sorin-ionescu) for the excellent aliases.
|
||||
|
||||
|
||||
Aliases
|
||||
-------
|
||||
|
||||
### Git
|
||||
|
||||
- `g` is short for `git`.
|
||||
|
||||
### Branch
|
||||
|
||||
- `gb` lists, creates, renames, and deletes branches.
|
||||
- `gbc` creates a new branch.
|
||||
- `gbl` lists branches and their commits.
|
||||
- `gbL` lists local and remote branches and their commits.
|
||||
- `gbs` lists branches and their commits with ancestry graphs.
|
||||
- `gbS` lists local and remote branches and their commits with ancestry
|
||||
graphs.
|
||||
- `gbx` deletes a branch.
|
||||
- `gbX` deletes a branch irrespective of its merged status.
|
||||
- `gbm` renames a branch.
|
||||
- `gbM` renames a branch even if the new branch name already exists.
|
||||
|
||||
|
||||
### Commit
|
||||
|
||||
- `gc` records changes to the repository.
|
||||
- `gca` stages all modified and deleted files.
|
||||
- `gcm` records changes to the repository with the given message.
|
||||
- `gco` checks out a branch or paths to work tree.
|
||||
- `gcO` checks out hunks from the index or the tree interactively.
|
||||
- `gcf` amends the tip of the current branch using the same log message as
|
||||
*HEAD*.
|
||||
- `gcF` amends the tip of the current branch.
|
||||
- `gcp` applies changes introduced by existing commits.
|
||||
- `gcP` applies changes introduced by existing commits without committing.
|
||||
- `gcr` reverts existing commits by reverting patches and recording new
|
||||
commits.
|
||||
- `gcR` removes the *HEAD* commit.
|
||||
- `gcs` displays various types of objects.
|
||||
- `gcl` lists lost commits.
|
||||
|
||||
### Conflict
|
||||
|
||||
- `gCl` lists unmerged files.
|
||||
- `gCa` adds unmerged file contents to the index.
|
||||
- `gCe` executes merge-tool on all unmerged file.
|
||||
- `gCo` checks out our changes for unmerged paths.
|
||||
- `gCO` checks out our changes for all unmerged paths.
|
||||
- `gCt` checks out their changes for unmerged paths.
|
||||
- `gCT` checks out their changes for all unmerged paths.
|
||||
|
||||
### Data
|
||||
|
||||
- `gd` displays information about files in the index and the work tree.
|
||||
- `gdc` lists cached files.
|
||||
- `gdx` lists deleted files.
|
||||
- `gdm` lists modified files.
|
||||
- `gdu` lists untracked files.
|
||||
- `gdk` lists killed files.
|
||||
- `gdi` lists ignored files.
|
||||
|
||||
### Fetch
|
||||
|
||||
- `gf` downloads objects and references from another repository.
|
||||
- `gfc` clones a repository into a new directory.
|
||||
- `gfm` fetches from and merges with another repository or local branch.
|
||||
- `gfr` fetches from and rebases on another repository or local branch.
|
||||
|
||||
### Grep
|
||||
|
||||
- `gg` displays lines matching a pattern.
|
||||
- `ggi` displays lines matching a pattern ignoring case.
|
||||
- `ggl` lists files matching a pattern.
|
||||
- `ggL` lists files that are not matching a pattern.
|
||||
- `ggv` displays lines not matching a pattern.
|
||||
- `ggw` displays lines matching a pattern at word boundary.
|
||||
|
||||
### Index
|
||||
|
||||
- `gia` adds file contents to the index.
|
||||
- `giA` adds file contents to the index interactively.
|
||||
- `giu` adds file contents to the index (updates only known files).
|
||||
- `gid` displays changes between the index and a named commit (diff).
|
||||
- `giD` displays changes between the index and a named commit (word diff).
|
||||
- `gir` resets the current HEAD to the specified state.
|
||||
- `giR` resets the current index interactively.
|
||||
- `gix` removes files/directories from the index (recursively).
|
||||
- `giX` removes files/directories from the index (recursively and forced).
|
||||
|
||||
### Log
|
||||
|
||||
- `gl` displays the log.
|
||||
- `gls` displays the stats log.
|
||||
- `gld` displays the diff log.
|
||||
- `glo` displays the one line log.
|
||||
- `glg` displays the graph log.
|
||||
- `glG` displays the graph log with authors and dates.
|
||||
- `glb` displays the brief commit log.
|
||||
- `glc` displays the commit count for each contributor in descending order.
|
||||
|
||||
### Merge
|
||||
|
||||
- `gm` joins two or more development histories together.
|
||||
- `gmC` joins two or more development histories together but does not commit.
|
||||
- `gmF` joins two or more development histories together but does not commit
|
||||
generating a merge commit even if the merge resolved as a fast-forward.
|
||||
- `gma` aborts the conflict resolution, and reconstructs the pre-merge state.
|
||||
- `gmt` runs the merge conflict resolution tools to resolve conflicts.
|
||||
|
||||
### Push
|
||||
|
||||
- `gp` updates remote refs along with associated objects.
|
||||
- `gpf` forcefully updates remote refs along with associated objects.
|
||||
- `gpa` updates remote branches along with associated objects.
|
||||
- `gpA` updates remote branches and tags along with associated objects.
|
||||
- `gpt` updates remote tags along with associated objects.
|
||||
- `gpc` updates remote refs along with associated objects and adds *origin*
|
||||
as an upstream reference for the current branch.
|
||||
- `gpp` pulls and pushes from origin to origin.
|
||||
|
||||
### Rebase
|
||||
|
||||
- `gr` forward-ports local commits to the updated upstream head.
|
||||
- `gra` aborts the rebase.
|
||||
- `grc` continues the rebase after merge conflicts are resolved.
|
||||
- `gri` makes a list of commits to be rebased and opens the editor.
|
||||
- `grs` skips the current patch.
|
||||
|
||||
### Remote
|
||||
|
||||
- `gR` manages tracked repositories.
|
||||
- `gRl` lists remote names and their URLs.
|
||||
- `gRa` adds a new remote.
|
||||
- `gRx` removes a remote.
|
||||
- `gRm` renames a remote.
|
||||
- `gRu` fetches remotes updates.
|
||||
- `gRp` prunes all stale remote tracking branches.
|
||||
- `gRs` displays information about a given remote.
|
||||
- `gRb` opens a remote on GitHub in the default browser.
|
||||
|
||||
### Stash
|
||||
|
||||
- `gs` stashes the changes of the dirty working directory.
|
||||
- `gsa` applies the changes recorded in a stash to the working directory.
|
||||
- `gsx` drops a stashed state.
|
||||
- `gsX` drops all the stashed states.
|
||||
- `gsl` lists stashed states.
|
||||
- `gsL` lists dropped stashed states.
|
||||
- `gsd` displays changes between the stash and its original parent.
|
||||
- `gsp` removes and applies a single stashed state from the stash list.
|
||||
- `gsr` recovers a given stashed state.
|
||||
- `gss` stashes the changes of the dirty working directory, including untracked.
|
||||
- `gsS` stashes the changes of the dirty working directory interactively.
|
||||
- `gsw` stashes the changes of the dirty working directory retaining the index.
|
||||
- `gsu` unapplies (reverts) applied changes.
|
||||
|
||||
### Submodule
|
||||
|
||||
- `gS` initializes, updates, or inspects submodules.
|
||||
- `gSa` adds given a repository as a submodule.
|
||||
- `gSf` evaluates a shell command in each of checked out submodules.
|
||||
- `gSi` initializes submodules.
|
||||
- `gSI` initializes and clones submodules recursively.
|
||||
- `gSl` lists the commits of all submodules.
|
||||
- `gSm` moves a submodule.
|
||||
- `gSs` synchronizes submodules' remote URL to the value specified in
|
||||
.gitmodules.
|
||||
- `gSu` fetches and merges the latest changes for all submodule.
|
||||
- `gSx` removes a submodule.
|
||||
|
||||
### Working directory
|
||||
|
||||
- `gws` displays working-tree status in the short format.
|
||||
- `gwS` displays working-tree status.
|
||||
- `gwd` displays changes between the working tree and the index (diff).
|
||||
- `gwD` displays changes between the working tree and the index (word diff).
|
||||
- `gwr` resets the current HEAD to the specified state, does not touch the
|
||||
index nor the working tree.
|
||||
- `gwR` resets the current HEAD, index and working tree to the specified state.
|
||||
- `gwc` removes untracked files from the working tree (dry-run).
|
||||
- `gwC` removes untracked files from the working tree.
|
||||
- `gwx` removes files from the working tree and from the index recursively.
|
||||
- `gwX` removes files from the working tree and from the index recursively and
|
||||
forcefully.
|
||||
|
||||
### Shadows
|
||||
|
||||
The following aliases may shadow system commands:
|
||||
|
||||
- `gpt` shadows the GUID partition table maintenance utility.
|
||||
- `gs` shadows Ghostscript.
|
||||
|
||||
If you frequently use the above commands, you may wish to remove said aliases
|
||||
from this module or to disable them at the bottom of the zshrc with `unalias`.
|
||||
|
||||
You can temporarily bypass an alias by prefixing it with a backward slash:
|
||||
`\gpt`.
|
||||
|
||||
Functions
|
||||
---------
|
||||
|
||||
- `git-branch-current` displays the current branch.
|
||||
- `git-commit-lost` lists lost commits.
|
||||
- `git-dir` displays the path to the Git directory.
|
||||
- `git-hub-browse` opens the GitHub repository in the default browser.
|
||||
- `git-hub-shorten-url` shortens GitHub URLs.
|
||||
- `git-ignore-add` adds any arguments to the .gitignore in the project root.
|
||||
- `git-root` displays the path to the working tree root.
|
||||
- `git-stash-clear-interactive` asks for confirmation before clearing the stash.
|
||||
- `git-stash-dropped` lists dropped stashed states.
|
||||
- `git-stash-recover` recovers given dropped stashed states.
|
||||
- `git-submodule-move` moves a submodule.
|
||||
- `git-submodule-remove` removes a submodule.
|
1
zsh/modules/git/functions/git-branch-current
Symbolic link
1
zsh/modules/git/functions/git-branch-current
Symbolic link
@ -0,0 +1 @@
|
||||
git_current_branch
|
13
zsh/modules/git/functions/git-commit-lost
Normal file
13
zsh/modules/git/functions/git-commit-lost
Normal file
@ -0,0 +1,13 @@
|
||||
if ! is-true "$(commmand git rev-parse --is-inside-work-tree 2> /dev/null)"; then
|
||||
print "${0}: not a repository work tree: ${PWD}" >&2
|
||||
return 1
|
||||
fi
|
||||
|
||||
command git fsck 2> /dev/null \
|
||||
| grep "^dangling commit" \
|
||||
| awk '{print $3}' \
|
||||
| command git log \
|
||||
--date-order \
|
||||
--no-walk \
|
||||
--stdin \
|
||||
--pretty=format:${_git_log_oneline_format}
|
BIN
zsh/modules/git/functions/git-commit-lost.zwc
Normal file
BIN
zsh/modules/git/functions/git-commit-lost.zwc
Normal file
Binary file not shown.
9
zsh/modules/git/functions/git-dir
Normal file
9
zsh/modules/git/functions/git-dir
Normal file
@ -0,0 +1,9 @@
|
||||
local git_dir="${$(command git rev-parse --git-dir):A}"
|
||||
|
||||
if [[ -n "${git_dir}" ]]; then
|
||||
print "${git_dir}"
|
||||
return 0
|
||||
else
|
||||
print "${0}: not a repository: ${PWD}" >&2
|
||||
return 1
|
||||
fi
|
BIN
zsh/modules/git/functions/git-dir.zwc
Normal file
BIN
zsh/modules/git/functions/git-dir.zwc
Normal file
Binary file not shown.
10
zsh/modules/git/functions/git-ignore-add
Normal file
10
zsh/modules/git/functions/git-ignore-add
Normal file
@ -0,0 +1,10 @@
|
||||
# make sure we have a git-root
|
||||
if ! git-root &> /dev/null; then
|
||||
print 'not in a git repository' >&2
|
||||
return 1
|
||||
fi
|
||||
|
||||
# we are in a git repository. add parameters to .gitignore
|
||||
for file in "${@}"; do
|
||||
print "${file}" >>! $(git-root)/.gitignore
|
||||
done
|
BIN
zsh/modules/git/functions/git-ignore-add.zwc
Normal file
BIN
zsh/modules/git/functions/git-ignore-add.zwc
Normal file
Binary file not shown.
9
zsh/modules/git/functions/git-root
Normal file
9
zsh/modules/git/functions/git-root
Normal file
@ -0,0 +1,9 @@
|
||||
local root="$(command git rev-parse --show-toplevel 2> /dev/null)"
|
||||
|
||||
if [[ -n "${root}" ]]; then
|
||||
print "${root}"
|
||||
return 0
|
||||
else
|
||||
print "${0}: not a repository work tree: ${PWD}" >&2
|
||||
return 1
|
||||
fi
|
BIN
zsh/modules/git/functions/git-root.zwc
Normal file
BIN
zsh/modules/git/functions/git-root.zwc
Normal file
Binary file not shown.
15
zsh/modules/git/functions/git-stash-clear-interactive
Normal file
15
zsh/modules/git/functions/git-stash-clear-interactive
Normal file
@ -0,0 +1,15 @@
|
||||
if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then
|
||||
print "${0}: not a repository work tree: ${PWD}" >&2
|
||||
return 1
|
||||
fi
|
||||
|
||||
local stashed
|
||||
|
||||
if [[ -f "$(git-dir)/refs/stash" ]]; then
|
||||
stashed="$(command git stash list 2> /dev/null | wc -l | awk '{print $1}')"
|
||||
if (( ${stashed} > 0 )); then
|
||||
if read -q "?Clear ${stashed} stashed state(s) [y/N]? "; then
|
||||
command git stash clear
|
||||
fi
|
||||
fi
|
||||
fi
|
BIN
zsh/modules/git/functions/git-stash-clear-interactive.zwc
Normal file
BIN
zsh/modules/git/functions/git-stash-clear-interactive.zwc
Normal file
Binary file not shown.
15
zsh/modules/git/functions/git-stash-dropped
Normal file
15
zsh/modules/git/functions/git-stash-dropped
Normal file
@ -0,0 +1,15 @@
|
||||
if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then
|
||||
print "${0}: not a repository work tree: ${PWD}" >&2
|
||||
return 1
|
||||
fi
|
||||
|
||||
command git fsck --unreachable 2> /dev/null \
|
||||
| grep 'commit' \
|
||||
| awk '{print $3}' \
|
||||
| command git log \
|
||||
--pretty=format:${_git_log_oneline_format} \
|
||||
--extended-regexp \
|
||||
--grep="${1:-(WIP )?[Oo]n [^:]+:}" \
|
||||
--merges \
|
||||
--no-walk \
|
||||
--stdin
|
BIN
zsh/modules/git/functions/git-stash-dropped.zwc
Normal file
BIN
zsh/modules/git/functions/git-stash-dropped.zwc
Normal file
Binary file not shown.
11
zsh/modules/git/functions/git-stash-recover
Normal file
11
zsh/modules/git/functions/git-stash-recover
Normal file
@ -0,0 +1,11 @@
|
||||
if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then
|
||||
print "${0}: not a repository work tree: ${PWD}" >&2
|
||||
return 1
|
||||
fi
|
||||
|
||||
local commit
|
||||
|
||||
for commit in "${@}"; do
|
||||
git update-ref \
|
||||
-m "$(command git log -1 --pretty="format:%s" "$commit")" refs/stash "${commit}"
|
||||
done
|
BIN
zsh/modules/git/functions/git-stash-recover.zwc
Normal file
BIN
zsh/modules/git/functions/git-stash-recover.zwc
Normal file
Binary file not shown.
25
zsh/modules/git/functions/git-submodule-move
Normal file
25
zsh/modules/git/functions/git-submodule-move
Normal file
@ -0,0 +1,25 @@
|
||||
if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then
|
||||
print "${0}: not a repository work tree: ${PWD}" >&2
|
||||
return 1
|
||||
elif [[ "${PWD}" != "$(git-root)" ]]; then
|
||||
print "${0}: must be run from the root of the work tree" >&2
|
||||
return 1
|
||||
fi
|
||||
|
||||
local src="${1}"
|
||||
local dst="${2}"
|
||||
local url
|
||||
|
||||
url="$(command git config --file "$(git-root)/.gitmodules" --get "submodule.${src}.url")"
|
||||
|
||||
if [[ -z "${url}" ]]; then
|
||||
print "${0}: submodule not found: ${src}" >&2
|
||||
return 1
|
||||
fi
|
||||
|
||||
mkdir -p "${dst:h}"
|
||||
|
||||
git-submodule-remove "${src}"
|
||||
git submodule add "${url}" "${dst}"
|
||||
|
||||
return 0
|
BIN
zsh/modules/git/functions/git-submodule-move.zwc
Normal file
BIN
zsh/modules/git/functions/git-submodule-move.zwc
Normal file
Binary file not shown.
20
zsh/modules/git/functions/git-submodule-remove
Normal file
20
zsh/modules/git/functions/git-submodule-remove
Normal file
@ -0,0 +1,20 @@
|
||||
if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then
|
||||
print "${0}: not a repository work tree: ${PWD}" >&2
|
||||
return 1
|
||||
elif [[ "${PWD}" != "$(git-root)" ]]; then
|
||||
print "${0}: must be run from the root of the work tree" >&2
|
||||
return 1
|
||||
elif ! command git config --file .gitmodules --get "submodule.${1}.path" &>/dev/null; then
|
||||
print "${0}: submodule not found: ${1}" >&2
|
||||
return 1
|
||||
fi
|
||||
|
||||
command git config --file "$(git-dir)/config" --remove-section "submodule.${1}" &>/dev/null
|
||||
command git config --file "$(git-root)/.gitmodules" --remove-section "submodule.${1}" &>/dev/null
|
||||
command git add .gitmodules
|
||||
|
||||
command git rm --cached -rf "${1}"
|
||||
rm -rf "${1}"
|
||||
rm -rf "$(git-dir)/modules/${1}"
|
||||
|
||||
return 0
|
BIN
zsh/modules/git/functions/git-submodule-remove.zwc
Normal file
BIN
zsh/modules/git/functions/git-submodule-remove.zwc
Normal file
Binary file not shown.
9
zsh/modules/git/functions/git_current_branch
Normal file
9
zsh/modules/git/functions/git_current_branch
Normal file
@ -0,0 +1,9 @@
|
||||
# slightly modified git_current_branch from oh-my-zsh for theme compatibility
|
||||
local ref
|
||||
ref=$(command git symbolic-ref --quiet HEAD 2> /dev/null)
|
||||
local ret=${?}
|
||||
if [[ ${ret} != 0 ]]; then
|
||||
[[ ${ret} == 128 ]] && return # no git repo.
|
||||
ref=$(command git rev-parse --short HEAD 2> /dev/null) || return
|
||||
fi
|
||||
print ${ref#refs/heads/}
|
BIN
zsh/modules/git/functions/git_current_branch.zwc
Normal file
BIN
zsh/modules/git/functions/git_current_branch.zwc
Normal file
Binary file not shown.
5
zsh/modules/git/functions/is-true
Normal file
5
zsh/modules/git/functions/is-true
Normal file
@ -0,0 +1,5 @@
|
||||
# Checks a boolean variable for "true".
|
||||
# Case insensitive: "1", "y", "yes", "t", "true", "o", and "on".
|
||||
is-true() {
|
||||
[[ -n "$1" && "$1" == (1|[Yy]([Ee][Ss]|)|[Tt]([Rr][Uu][Ee]|)|[Oo]([Nn]|)) ]]
|
||||
}
|
BIN
zsh/modules/git/functions/is-true.zwc
Normal file
BIN
zsh/modules/git/functions/is-true.zwc
Normal file
Binary file not shown.
184
zsh/modules/git/init.zsh
Normal file
184
zsh/modules/git/init.zsh
Normal file
@ -0,0 +1,184 @@
|
||||
#
|
||||
# Git aliases.
|
||||
#
|
||||
|
||||
#
|
||||
# Settings
|
||||
#
|
||||
|
||||
# Log
|
||||
_git_log_medium_format='%C(bold)Commit:%C(reset) %C(green)%H%C(red)%d%n%C(bold)Author:%C(reset) %C(cyan)%an <%ae>%n%C(bold)Date:%C(reset) %C(blue)%ai (%ar)%C(reset)%n%+B'
|
||||
_git_log_oneline_format='%C(green)%h%C(reset) %s%C(red)%d%C(reset)%n'
|
||||
_git_log_fullgraph_format='%C(green)%h%C(reset) %<|(50,trunc)%s %C(bold blue)<%an>%C(reset) %C(yellow)(%cd)%C(reset)%C(auto)%d%C(reset)%n'
|
||||
_git_log_brief_format='%C(green)%h%C(reset) %s%n%C(blue)(%ar by %an)%C(red)%d%C(reset)%n'
|
||||
|
||||
#
|
||||
# Aliases
|
||||
#
|
||||
|
||||
# Git
|
||||
alias g='git'
|
||||
|
||||
# Branch (b)
|
||||
alias gb='git branch'
|
||||
alias gbc='git checkout -b'
|
||||
alias gbl='git branch -v'
|
||||
alias gbL='git branch -av'
|
||||
alias gbx='git branch -d'
|
||||
alias gbX='git branch -D'
|
||||
alias gbm='git branch -m'
|
||||
alias gbM='git branch -M'
|
||||
alias gbs='git show-branch'
|
||||
alias gbS='git show-branch -a'
|
||||
|
||||
# Commit (c)
|
||||
alias gc='git commit --verbose'
|
||||
alias gca='git commit --verbose --all'
|
||||
alias gcm='git commit --message'
|
||||
alias gco='git checkout'
|
||||
alias gcO='git checkout --patch'
|
||||
alias gcf='git commit --amend --reuse-message HEAD'
|
||||
alias gcF='git commit --verbose --amend'
|
||||
alias gcp='git cherry-pick --ff'
|
||||
alias gcP='git cherry-pick --no-commit'
|
||||
alias gcr='git revert'
|
||||
alias gcR='git reset "HEAD^"'
|
||||
alias gcs='git show'
|
||||
alias gcl='git-commit-lost'
|
||||
alias gcS='git commit -S'
|
||||
alias gpS='git show --pretty=short --show-signature'
|
||||
|
||||
# Conflict (C)
|
||||
alias gCl='git status | sed -n "s/^.*both [a-z]*ed: *//p"'
|
||||
alias gCa='git add $(gCl)'
|
||||
alias gCe='git mergetool $(gCl)'
|
||||
alias gCo='git checkout --ours --'
|
||||
alias gCO='gCo $(gCl)'
|
||||
alias gCt='git checkout --theirs --'
|
||||
alias gCT='gCt $(gCl)'
|
||||
|
||||
# Data (d)
|
||||
alias gd='git ls-files'
|
||||
alias gdc='git ls-files --cached'
|
||||
alias gdx='git ls-files --deleted'
|
||||
alias gdm='git ls-files --modified'
|
||||
alias gdu='git ls-files --other --exclude-standard'
|
||||
alias gdk='git ls-files --killed'
|
||||
alias gdi='git status --porcelain --short --ignored | sed -n "s/^!! //p"'
|
||||
|
||||
# Fetch (f)
|
||||
alias gf='git fetch'
|
||||
alias gfc='git clone'
|
||||
alias gfm='git pull'
|
||||
alias gfr='git pull --rebase'
|
||||
alias gfu='git remote update -p; git merge --ff-only @\{u\}'
|
||||
|
||||
# Grep (g)
|
||||
alias gg='git grep'
|
||||
alias ggi='git grep --ignore-case'
|
||||
alias ggl='git grep --files-with-matches'
|
||||
alias ggL='git grep --files-without-match'
|
||||
alias ggv='git grep --invert-match'
|
||||
alias ggw='git grep --word-regexp'
|
||||
|
||||
# Index (i)
|
||||
alias gia='git add'
|
||||
alias giA='git add --patch'
|
||||
alias giu='git add --update'
|
||||
alias gid='git diff --no-ext-diff --cached'
|
||||
alias giD='git diff --no-ext-diff --cached --word-diff'
|
||||
alias gir='git reset'
|
||||
alias giR='git reset --patch'
|
||||
alias gix='git rm -r --cached'
|
||||
alias giX='git rm -rf --cached'
|
||||
|
||||
# Log (l)
|
||||
alias gl='git log --topo-order --pretty=format:"${_git_log_medium_format}"'
|
||||
alias gls='git log --topo-order --stat --pretty=format:"${_git_log_medium_format}"'
|
||||
alias gld='git log --topo-order --stat --patch --full-diff --pretty=format:"${_git_log_medium_format}"'
|
||||
alias glo='git log --topo-order --pretty=format:"${_git_log_oneline_format}"'
|
||||
alias glg='git log --topo-order --all --graph --pretty=format:"${_git_log_oneline_format}"'
|
||||
alias glG='git log --topo-order --all --graph --pretty=format:"${_git_log_fullgraph_format}" --date=relative'
|
||||
alias glb='git log --topo-order --pretty=format:"${_git_log_brief_format}"'
|
||||
alias glc='git shortlog --summary --numbered'
|
||||
alias glS='git log --show-signature'
|
||||
|
||||
# Merge (m)
|
||||
alias gm='git merge'
|
||||
alias gmC='git merge --no-commit'
|
||||
alias gmF='git merge --no-ff'
|
||||
alias gma='git merge --abort'
|
||||
alias gmt='git mergetool'
|
||||
|
||||
# Push (p)
|
||||
alias gp='git push'
|
||||
alias gpf='git push --force'
|
||||
alias gpa='git push --all'
|
||||
alias gpA='git push --all && git push --tags'
|
||||
alias gpt='git push --tags'
|
||||
alias gpc='git push --set-upstream origin "$(git-branch-current 2> /dev/null)"'
|
||||
alias gpp='git pull origin "$(git-branch-current 2> /dev/null)" && git push origin "$(git-branch-current 2> /dev/null)"'
|
||||
|
||||
# Rebase (r)
|
||||
alias gr='git rebase'
|
||||
alias gra='git rebase --abort'
|
||||
alias grc='git rebase --continue'
|
||||
alias gri='git rebase --interactive'
|
||||
alias grs='git rebase --skip'
|
||||
|
||||
# Remote (R)
|
||||
alias gR='git remote'
|
||||
alias gRl='git remote --verbose'
|
||||
alias gRa='git remote add'
|
||||
alias gRx='git remote rm'
|
||||
alias gRm='git remote rename'
|
||||
alias gRu='git remote update'
|
||||
alias gRp='git remote prune'
|
||||
alias gRs='git remote show'
|
||||
alias gRb='git-hub-browse'
|
||||
|
||||
# Stash (s)
|
||||
alias gs='git stash'
|
||||
alias gsa='git stash apply'
|
||||
alias gsx='git stash drop'
|
||||
alias gsX='git-stash-clear-interactive'
|
||||
alias gsl='git stash list'
|
||||
alias gsL='git-stash-dropped'
|
||||
alias gsd='git stash show --patch --stat'
|
||||
alias gsp='git stash pop'
|
||||
alias gsr='git-stash-recover'
|
||||
alias gss='git stash save --include-untracked'
|
||||
alias gsS='git stash save --patch --no-keep-index'
|
||||
alias gsw='git stash save --include-untracked --keep-index'
|
||||
alias gsu='git stash show -p | git apply -R'
|
||||
|
||||
# Submodule (S)
|
||||
alias gS='git submodule'
|
||||
alias gSa='git submodule add'
|
||||
alias gSf='git submodule foreach'
|
||||
alias gSi='git submodule init'
|
||||
alias gSI='git submodule update --init --recursive'
|
||||
alias gSl='git submodule status'
|
||||
alias gSm='git-submodule-move'
|
||||
alias gSs='git submodule sync'
|
||||
alias gSu='git submodule foreach git pull origin master'
|
||||
alias gSx='git-submodule-remove'
|
||||
|
||||
# Tag (t)
|
||||
alias gts='git tag -s'
|
||||
alias gtv='git verify-tag'
|
||||
|
||||
# Working Copy (w)
|
||||
alias gws='git status --short'
|
||||
alias gwS='git status'
|
||||
alias gwd='git diff --no-ext-diff'
|
||||
alias gwD='git diff --no-ext-diff --word-diff'
|
||||
alias gwr='git reset --soft'
|
||||
alias gwR='git reset --hard'
|
||||
alias gwc='git clean -n'
|
||||
alias gwC='git clean -df'
|
||||
alias gwx='git rm -r'
|
||||
alias gwX='git rm -rf'
|
||||
|
||||
# Misc
|
||||
alias g..='cd $(git-root || print .)'
|
BIN
zsh/modules/git/init.zsh.zwc
Normal file
BIN
zsh/modules/git/init.zsh.zwc
Normal file
Binary file not shown.
Reference in New Issue
Block a user