我看了一段录像,里面有人
git st
git ci
去工作。当我这样做时,我得到一个错误,问我是否我指的是其他东西。 作为一个新手,我想知道你要怎么做才能完成这件事?
我看了一段录像,里面有人
git st
git ci
去工作。当我这样做时,我得到一个错误,问我是否我指的是其他东西。 作为一个新手,我想知道你要怎么做才能完成这件事?
当前回答
一行设置
$ 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'
用法:
$ git st
$ git co
$ git br
$ git ci
$ git last
$ git unstage <file | dir>
一切都将变成:
$ cat ~/.gitconfig
[user]
name = Sample User
email = sample@gmail.com
[core]
filemode = false
compression = 1
quotepath = off
ignorecase = false
[color]
ui = auto
[alias]
co = checkout
br = branch
ci = commit
st = status
last = log -1 HEAD
unstage = reset HEAD --
希望能快点。
其他回答
为了让别名比其他答案中提到的标准git配置方式更短,我创建了一个npm包mingit (npm install -g mingit),这样大多数命令将变成两个字符而不是两个单词。下面是一些例子:
g a . // git add .
g b other-branch // git branch other-branch
g c "made some changes" // git commit -m "made some changes"
g co master // git checkout master
g d // git diff
g f // git fetch
g i // git init
g m hotfix // git merge hotfix
g pll // git pull
g psh // git push
g s // git status
其他命令也同样简短。这也保持了bash的完成。该包为您的dotfiles添加了一个bash函数,适用于osx, linux和windows。此外,与其他别名不同,它别名git -> g以及第二个参数。
如果你使用'!'操作符来生成一个shell:
aa = !git add -A && git status
这将添加所有文件,并为您提供$ git aa的状态报告。
为了方便地检查你的别名,添加这个别名:
alias = config --get-regexp ^alias\\.
然后一个快速的$ git别名会告诉你当前的别名以及它们的用途。
我创建了别名dog来显示日志图:
git config --global alias.dog "log --all --decorate --oneline --graph"
使用方法如下:
git dog
我在用户目录(vim ~/.profile)的.profile中添加了所有的alias命令。
alias gs='git status'
alias gp='git pull'
alias gph='git push'
alias gd='git diff | mate'
alias gau='git add --update'
alias gc='git commit -m'
alias gca='git commit -v -a'
alias gb='git branch'
alias gba='git branch -a'
alias gco='git checkout'
alias gcob='git checkout -b'
alias gcot='git checkout -t'
alias gcotb='git checkout --track -b'
alias glog='git log'
alias glogp='git log --pretty=format:"%h %s" --graph'
alias gfo='git fetch origin'
然后,我在bash和zsh shell中添加了source命令。
在bash shell (vim ~/.bashrc)中
source ~/.profile
在zsh shell中(vim~/)。zshrc)
source ~/.profile
你可以使用git的配置设置自定义的git别名。语法如下:
git config --global alias.<aliasName> "<git command>"
例如,如果你需要一个别名来显示有合并冲突的文件列表,运行:
git config --global alias.conflicts "diff --name-only --diff-filter=U"
现在你只能使用"conflicts"来使用上面的命令:
git conflicts
# same as running: git diff --name-only --diff-filter=U