自定义Git
忽略特殊文件
在Git工作区的根目录下创建一个特殊的.gitignore
文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件。
忽略文件的原则是:
- 忽略操作系统自动生成的文件,比如缩略图等;
- 忽略编译生成的中间文件、可执行文件等,也就是如果一个文件是通过另一个文件自动生成的,那自动生成的文件就没必要放进版本库,比如Java编译产生的
.class
文件; - 忽略你自己的带有敏感信息的配置文件,比如存放口令的配置文件。
下面的代码是一个例子,内容如下:
# Windows: 系统生成的文件
Thumbs.db
ehthumbs.db # 以上两个为数据库文件
Desktop.ini # 自定义目录文件
# Python: # Python编译生成的文件
*.py[cod]
*.so
*.egg
*.egg-info # 所有以上面四行为后缀名的文件
dist
build # dist与build文件
# My configurations: # 用户自身的配置文件
db.ini
deploy_key_rsa
然后就是把.gitignore
也提交到Git,就完成了!当然检验.gitignore
的标准是git status
命令是不是说working directory clean
。
若想强制添加一个被.gitignore
忽略的文件,可以使用-f
:
git add -f <文件名>
小结
- 忽略某些文件时,需要编写
.gitignore
; .gitignore
文件本身要放到版本库里,并且可以对.gitignore
做版本管理!
配置别名
git config --global alias.<别名,如b> <原名,branch> # 用别名代替比较复杂的命令,此例用“b”代替“branch”
在撤销修改一节中,命令git reset HEAD file
可以把暂存区的修改撤销掉(unstage),重新放回工作区。既然是一个unstage
操作,就可以配置一个unstage
别名:
git config --global alias.unstage 'reset HEAD'
当输入:
git unstage test.py
实际上执行的是:
git reset HEAD test.py
配置一个git last
,让其显示最后一次提交信息:
git config --global alias.last 'log -1'
这样,用git last就能显示最近一次的提交。输入如下:
git last
输出如下:
Author: XueToWei <xw1501144231@qq.com>
Date: Mon Jul 22 15:26:19 2019 +0800
add the first file to gitee
配置文件
配置Git的时候,加上--global
是针对当前用户起作用的,如果不加,那只针对当前的仓库起作用。每个仓库的Git配置文件都放在.git/config
文件中。输入如下:
cat .git/config
输出:
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
[remote "origin"]
url = git@gitee.com:XueToWei/.git
fetch = +refs/heads/*:refs/remotes/origin/*
别名就在[alias]后面,要删除别名,直接把对应的行删掉即可。当前用户的Git配置文件放在用户主目录下的一个隐藏文件.gitconfig
中。配置别名也可以直接修改这个文件,如果改错了,可以删掉文件重新通过命令配置。