鍍金池/ 教程/ Java/ 配置別名
操作標(biāo)簽
多人協(xié)作
解決沖突
Git 的誕生
工作區(qū)和暫存區(qū)
搭建 Git 服務(wù)器
Bug 分支
配置別名
從遠(yuǎn)程庫克隆
分支
添加遠(yuǎn)程庫
分支管理策略
撤銷修改
安裝 Git
管理修改
生成 SSH key
GitHub
倉庫狀態(tài)
忽略特殊文件
刪除文件
Feature 分支
創(chuàng)建與合并分支
創(chuàng)建版本庫
創(chuàng)建標(biāo)簽
版本回退
集中式 vs 分布式

配置別名

有沒有經(jīng)常敲錯命令?比如 git status?status 這個單詞真心不好記。

如果敲git st就表示git status那就簡單多了,當(dāng)然這種偷懶的辦法我們是極力贊成的。

我們只需要敲一行命令,告訴 Git,以后 st 就表示 status:

$ git config --global alias.st status

好了,現(xiàn)在敲git st看看效果。

當(dāng)然還有別的命令可以簡寫,很多人都用 co 表示 checkout,ci 表示 commit,br 表示 branch:

$ git config --global alias.co checkout
$ git config --global alias.ci commit
$ git config --global alias.br branch

以后提交就可以簡寫成:

$ git ci -m "bala bala bala..."

--global參數(shù)是全局參數(shù),也就是這些命令在這臺電腦的所有 Git 倉庫下都有用。

在撤銷修改一節(jié)中,我們知道,命令git reset HEAD file可以把暫存區(qū)的修改撤銷掉(unstage),重新放回工作區(qū)。既然是一個unstage操作,就可以配置一個 unstage 別名:

$ git config --global alias.unstage 'reset HEAD'

當(dāng)你敲入命令:

$ git unstage test.py

實際上 Git 執(zhí)行的是:

$ git reset HEAD test.py

配置一個git last,讓其顯示最后一次提交信息:

$ git config --global alias.last 'log -1'

這樣,用git last就能顯示最近一次的提交:

$ git last
commit adca45d317e6d8a4b23f9811c3d7b7f0f180bfe2
Merge: bd6ae48 291bea8
Author: Michael Liao <askxuefeng@gmail.com>
Date:   Thu Aug 22 22:49:22 2013 +0800

    merge & fix hello.py

甚至還有人把 lg 配置成了:

git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"

來看看git lg的效果:

http://wiki.jikexueyuan.com/project/git-tutorial/images/alias.png" alt="" />

配置文件

配置 Git 的時候,加上--global是針對當(dāng)前用戶起作用的,如果不加,那只針對當(dāng)前的倉庫起作用。

配置文件放哪了?每個倉庫的 Git 配置文件都放在.git/config文件中:

$ cat .git/config 
[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
    ignorecase = true
    precomposeunicode = true
[remote "origin"]
    url = git@github.com:michaelliao/learngit.git
    fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
    remote = origin
    merge = refs/heads/master
[alias]
    last = log -1

別名就在[alias]后面,要刪除別名,直接把對應(yīng)的行刪掉即可。

而當(dāng)前用戶的 Git 配置文件放在用戶主目錄下的一個隱藏文件.gitconfig中:

$ cat .gitconfig
[alias]
    co = checkout
    ci = commit
    br = branch
    st = status
[user]
    name = Your Name
    email = your@email.com

配置別名也可以直接修改這個文件,如果改錯了,可以刪掉文件重新通過命令配置。

上一篇:分支管理策略下一篇:Bug 分支