介绍
git是一款代码版本控制软件,目前已被广泛的使用。因此优雅的使用git已经成了开发者的必备技能。
区别于SVN,git的特点是去中心化。
命令
日志
git log
状态
git status
增加文件到缓存区
git add filename
提交更新
git commit -m 'update info'
从仓库拉代码并合并
git pull
向仓库master分支推代码
git push origin master
忽略不想提交的文件
vi .gitignore//修改 .gitignore ,增加相关文件名或目录,支持通配符
‘#’(警号)为注释 – 将被 Git 忽略
文件忽略规则
*.a # 忽略所有 .a 结尾的文件
!lib.a # 但 lib.a 除外
/TODO # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
build/ # 忽略 build/ 目录下的所有文件
doc/*.txt # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt
清除本地缓存,重新提交,即可保证和 .gitignore 规则一致
git rm -r --cached .
删除修改
git checkout filepath/filename
拉取所有更新
git fetch
增加并切换到分支
git checkout -b branchname
合并分支
git merge origin/master
配置
1. 用户信息
你个人的用户名称和电子邮件地址,用户名可随意修改,git 用于记录是谁提交了更新,以及更新人的联系方式。
git config --global user.name "Donly Chan"
git config --global user.email donly@example.com
2.差异分析工具
在解决冲突时经常用到,一般为vimdiff
git config --global merge.tool vimdiff
3.自动高亮
很有用的颜色提示,因有些人不喜欢,所以默认是不开启的
git config --global color.ui auto
4.查看配置
查看所有配置
git config --list
查看某个配置
git config user.name
5.配置文件
/etc/gitconfig 对所有用户有效
~/.gitconfig 对当前用户有效
{工作目录}/.git/config 仅对当前项目有效