一、tag
1.显示所有的tag
git tag
2. 查看某个版本系统的tag(过滤查看)
git tag -l ‘v1.0.*’
3.列出仓库远程所有的分支
git ls-remote —refs
4. 创建标签
- git tag -a v1.0.0 -m ‘内容’
- git tag v1.0.0
5.查看标签的详情
git show v1.0.0
6.推送标签
- 推送单个分支tag:git push origin v1.0.0
- 推送本地所有tag:git push origin —tags
7.删除标签
删除本地标签
- git tag -d v1.0.0
删除远程标签
- git push origin :refs/tags/v1.0.0
8.完整的打tag
- git add *
- git commit -m ‘v1.0.0’
- git tag v1.0.0
- git push
- git push origin v1.0.0
9.给指定的commit号加tag
打tag不必要在head上打,也可以在之前的版本上打tag,需要知道某个提交对象的校验和(通过git log获取,取校验和的前几位数字即可)
- git tag -a v1.0.3 9fedrf -m ‘my tag’
二、stash
2-1 git stash
保存当前工作进度,会把暂存区和工作区的改动保存起来,执行完这个命令后,执行git status会发现当前是一个干净的工作区,没有任何改动. 可以使用 git stash save ‘message’添加一些注释 说明:stash是本地的,不会通过git push 命令上传到git server上。
2-2 git stash list
显示保存进度的列表,也就是说 git stash可以多次执行。
2-3 git stash pop
- 恢复之前缓存的工作目录,且将缓存堆栈中的第一个stash删除
- git stash apply会将缓存区的第一个stash应用到工作目录,而不会删除相应的stash存储。
2-4 git stash drop [stash-id]
删除一个存储的进度。如果不指定stash_id,则默认删除最新的存储进度。
2-5 git stash clear
删除所有存储的进度
2-6 查看制定的stash diff
可以使用 git stash show stash@{0}查看stash的文件目录
2-7 暂存未跟踪或忽略的文件
git stash默认不会缓存在工作目录中的新文件、被呼噜的文件。 git stash 命令提供了参数用户缓存上面两种类型的文件,使用 -u可以stash untrakced文件。使用 -a可以stash所有的文件。
三、一些其它操作
3-1 reset
有时候,我们在本地 git add && git commit -m ‘’ 之后,我们想要撤回commit,这个时候可以使用 git reset —soft HEAD^ 这样就成功的撤回了commit ,且本地文件会保留不会删除
3-2 hard
如果代码已经push到仓库,但是本地想要去回退到某个版本 git reset —hard HEAD^ —- 回退到上一个版本 git reset —hard
— 回退到制定commit版本
3-3 提交者和提交次数
一个项目想要看到一个项目的提交者和提交次数:git shortlog -sn
3-4 git push -u
在使用git push提交代码的时候,本来应该是使用 git push origin main去提交到某分支的,如果不想每次都去写 origin main,那么就可以 git push -u origin main 这样,下次提交的时候,直接git push就可以了