标签管理
引入标签的目的就是由于每次回退版本都是根据commit id
来操作的,但是commit id
不容易记住,于是通过打标签的方式,使得commit id
容易操作。同时标签也相当于一个版本库的快照。
创建标签
给当前版本添加标签
git tag <标签名>
给历史版本创建标签可以根据commit id
git tag <标签名> <commit id>
创建带有说明的标签,用-a
指定标签名,-m
指定说明文字
git tag -a <标签名> -m "描述信息" <commit id>
标签总是和某个commit挂钩,如果这个commit既出现在master分支,又出现在其他分支,那么在这两个分支上都可以看到这个标签。
查看所有标签
git tag
查看标签信息
git show <标签名>
删除标签
git tag -d <标签名>
删除远程仓库标签
git push origin :refs/tags/<标签名>
推送标签到远程仓库
git push origin <标签名>
推送全部未推送的本地标签
git push origin --tags
忽略文件
在git中有时候不想提交某些文件,但是每次查看仓库状态都会有提示,我们可以通过在仓库根目录下创建.gitignore
文件来忽略文件,并把.gitignore
提交到git。
创建忽略文件
GitHub提供了一种模板,可以直接选择使用:https://github.com/github/gitignore。
比如创建如下
# Java
*.class
添加一个demo.class
文件,在shell里查看仓库状态,发现工作区是干净的。
强制添加
文件被忽略无法添加,可以强制添加
git add -f <文件名>
检查忽略规则
git check-ignore
配置别名
查看所有配置信息
git config -l
上述命令的结果都是由仓库级别、全局级别、系统级别整合的信息,由优先级决定。
-
仓库级别下的配置在仓库根目录下
.git
目录中的config
文件 -
全局级别在当前用户下
-
系统级别在git安装目录下的
etc
目录下的gitconfig
文件
查看仓库级别的配置信息
git config --local -l
查看全局级别的配置信息
git config --global -l
查看系统级别的配置信息
git config --system -l
修改配置文件
编辑仓库级别/全局级别/系统级别下的配置文件
git config --[local/global/system] -e
在仓库级别/全局级别/系统级别下添加配置
git config --[local/global/system] --add <配置项> <值>
在仓库级别/全局级别/系统级别下删除配置
git config --[local/global/system] --unset <配置项>
别名
为了简化命令可以配置别名,例如将st
表示为status
等等
git config --global alias.st status
git config --global alias.co checkout
git config --global alias.ci commit
git config --global alias.br branch
将一行显示提交信息,分支图示信息改为:
git config --global alias.lgo "log --pretty=oneline"
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图形工具
在git官网上有多种GUI工具:https://git-scm.com/downloads/guis
如下所示在GUI工具中操作,显得十分便捷
留言