撤回commit
有时候不小心把敏感信息带上去了,回退之后看不到之前提交的commit
git reset commit_id #想要回退到的那个位置的commit id
git commit -am "重新提交"
git push --force
清空commit
公开仓库乱七八糟的提交记录比较多,索性直接清空master分支的提交记录。
切换到新的分支
git checkout --orphan new_branch
暂存所有文件
git add .
提交跟踪过的文件
git commit -m "init"
删除master分支
git branch -D master
重命名当前分支为master
git branch -m master
强制提交到远程master分支
git push -f origin master
修改已提交的commit中提交者的用户名和邮箱
- 打开
git bash here
客户端 clone目标仓库
test.git
并进入git clone --bare https://gitee.com/xxxx/test.git #这里替换成自己的git地址 cd test.git #clone完成后进入
复制脚本,并修改成自己的信息,粘贴到
git bash here
客户端中,按enter执行#!/bin/sh git filter-branch --env-filter ' OLD_EMAIL="old@test.com" CORRECT_NAME="name" CORRECT_EMAIL="new@test.com" if [ "$GIT_COMMITTER_EMAIL" = "$OLD_EMAIL" ] then export GIT_COMMITTER_NAME="$CORRECT_NAME" export GIT_COMMITTER_EMAIL="$CORRECT_EMAIL" fi if [ "$GIT_AUTHOR_EMAIL" = "$OLD_EMAIL" ] then export GIT_AUTHOR_NAME="$CORRECT_NAME" export GIT_AUTHOR_EMAIL="$CORRECT_EMAIL" fi ' --tag-name-filter cat -- --branches --tags
推送到远程仓库
git push --force --tags origin 'refs/heads/*'
- 删除本地缓存的仓库
test.git
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。