1. 删除最新的commit
这里有各种的方法
个人比较喜欢这种简单粗暴的方法,当然了,前提是你知道自己在做什么,有什么样的后果。
git reset --hard HEAD~1
2. 基于tag,创建新branch
git checkout -b newbranch tags-your
3. 批量discard changes
用 git-ls-files -m 发现修改的文件,然后脚本undo
for f in `git ls-files -m`; do echo $f; git checkout -- $f; done
4. 重命名远程分支
很简单,先删除远程分支,重命名本地分支,再推送到远程。
下面例子中重命名 tm_dev为ts_dev
$ git branch -av
*tm_dev 88e61e6 local change
remotes/origin/tm_dev 0ced1e8 remote change
$ git push --delete origin tm_dev
To git@github.com:test/test.git
-[deleted] tm_dev
$ git branch -m tm_dev ts_dev
$ git branch -av
*ts_dev 88e61e6 local change
remotes/origin/ts_dev 0ced1e8 remote change
## 4. 重命提交的用户名和Email
```bash
$git config --global user.name "Ming Zi"
$git config --global user.email "ni_ming_zi@gmail.com"