一、取消暂存文件
暂存文件指只通过 add 添加到了暂存区未 commit,取消后还原到本地修改。
# 取消全部
git reset
# 取消单个文件
git reset HEAD <fileName>
二、撤销文件修改
撤销文件修改指还原当前文件的所有修改。
# 取消全部
git checkout .
# 取消单个文件
git checkout <fileName>
三、打标签
通过标签控制版本
1、查询标签
查询标签的最简单方法是使用git tag命令。不带任何参数的git tag会列出仓库中的所有标签。
git tag
如果你想要查看标签的详细信息,包括关联的提交信息,可以使用git show <标签名>。
git show v1.0
此外,你还可以使用git tag -l 'pattern'来查询符合特定模式的标签。例如,查询所有以v开头的标签
git tag -l 'v*'
2、新建标签
新建标签的常用命令是git tag,后面跟上你想要的标签名。例如,如果你想要为当前HEAD指向的提交创建一个名为v1.0的标签,可以执行以下命令:
git tag v1.0
如果你想为特定的提交创建标签,可以使用git tag <标签名> <提交哈希值>。提交哈希值可以是完整的哈希,也可以是它的前几位。
git tag v0.9 abc1234
另外,你还可以使用-a(带注释)和-m(指定注释信息)参数来创建带注释的标签。这通常用于标记重要的版本发布。
git tag -a v1.0 -m "Release version 1.0"
3、删除标签
删除标签可以通过git tag -d <标签名>命令实现。这个命令会删除本地的标签。
git tag -d v1.0
如果你想要删除远程仓库中的标签,需要先删除本地标签,然后推送一个空的标签引用来更新远程仓库。
git tag -d v1.0
git push origin :refs/tags/v1.0
删除标签可以通过git tag -d <标签名>命令实现。这个命令会删除本地的标签。
git push origin --delete v1.0
4、推送和获取标签
默认情况下,git push命令并不会推送标签到远程仓库。如果你想要推送本地的标签到远程仓库,可以使用--tags选项。
git push origin --tags
同样地,git fetch和git pull命令默认也不会获取远程仓库的标签。你可以通过添加--tags选项来获取标签。
git fetch origin --tags
或者
git pull origin --tags