记录某些可能不常用会忘记但实用的操作
0. 为当前版本打上 tag
git tag -a v1.0 -m 'version 1.0 code'
1. 查看所有 tag
git tag
2. 推送到远程仓库
git push origin --tags
2.1 重新修改 commit 备注
git commit --amend -m "新的提交信息"
3. 删除远程分支和 tag
在 Git v1.7.0 之后,可以使用这种语法删除远程分支:
git push origin --delete <branchName>
删除 tag 这么用:
git push origin --delete tag <tagname>
否则,可以使用这种语法,推送一个空分支到远程分支,其实就相当于删除远程分支:
git push origin :<branchName>
推送一个空 tag 到远程 tag:
git tag -d <tagname>
git push origin :refs/tags/<tagname>
4. 少人协作时的骚操作,具体看怎么利用
假设你有 3 个 commit 如下:
commit 3
commit 2
commit 1
其中最后一次提交 commit 3 是错误的,那么可以执行:
git reset --hard HEAD~1
你会发现,HEAD is now at commit 2
,然后再使用
git push --force
将本次变更强行推送至服务器。这样在服务器上的最后一次错误提交也彻底消失了。
值得注意的是,这类操作比较比较危险,例如:在你的 commit 3 之后别人又提交了新的 commit 4,那在你强制推送之后,那位仁兄的 commit 4 也跟着一起消失了。