【git 删除本地分支】
git branch -d br
【git 删除远程分支】
git branch -d br
git push origin :br (origin 后面有空格)
git代码库回滚: 指的是将代码库某分支退回到以前的某个commit id
【本地代码库回滚】:
git reset --hard commit-id :回滚到commit-id,讲commit-id之后提交的commit都去除
git reset --hard HEAD~3:将最近3次的提交回滚
【远程代码库回滚】:
这个是重点要说的内容,过程比本地回滚要复杂
应用场景:自动部署系统发布后发现问题,需要回滚到某一个commit,再重新发布
原理:先将本地分支退回到某个commit,删除远程分支,再重新push本地分支
操作步骤:
1、git checkout the_branch
2、git pull
3、git branch the_branch_backup //备份一下这个分支当前的情况
4、git reset --hard the_commit_id //把the_branch本地回滚到the_commit_id
5、git push origin :the_branch //删除远程 the_branch
6、git push origin the_branch //用回滚后的本地分支重新建立远程分支
7、git push origin :the_branch_backup //如果前面都成功了,删除这个备份分支
【查看分支】
git branch -a
【切换分支】
git fetch
git checkout xx
或
git checkout -b v0.9rc1 origin/v0.9rc1
【创建本地分支并推送到远程】
git branch test
git push origin test
tag】
git tag 2.5.5
git push origin 2.5.5
git push origin --tags 所有标签
git tag -d 2.5.5 删除本地tag
git push origin --delete 2.5.5 删除远程tag
Git可以配置了一个全局的用户名和邮箱:
$ git config --global user.name "xxxxx"
$ git config --global user.email "xxxxx@xx.com"
$ git config --list
但是你的项目可能是公司自己搭建的gitlab进行管理的,那就需要单独针对这个项目单独配置用户名和邮箱。
在项目根目录下进行单独配置:
$ git config user.name "gitlab's Name"
$ git config user.email "gitlab@xx.com"
$ git config --list
git config --list查看当前配置, 在当前项目下面查看的配置是全局配置+当前项目的配置, 使用的时候会优先使用当前项目的配置