Git清理历史提交记录
1 | 1. Checkout |
1 | 1. Checkout |
删除本地tag很简单,直接:git tag -d tagname
但是我们这样删除之后远程标签其实并未删除,通过以下方式可以删除远程标签。
1 | 假设标签名称为:v1.0.0 |
我有两个Github账号,在配置sshkey的时候是会提示Key is already in use
。因为github无法将相同的sshkey配置到不同的账号下,那么就要考虑同一台机器如何配置两个sshkey了。
因为之前已经存在~/.ssh/id_rsa
文件,所以这次生成的时候我们指定输出的文件名为id_rsa2
1 | ssh-keygen -t rsa -C "example@example.com" -f ~/.ssh/id_rsa2 |
在~/.ssh/
目录下创建config配置文件,内容如下,里面有详细的解释。
1 | # 原有的配置 |
假如我们的仓库地址为:git@github.com:name/project.git
,那么按照上面config
文件中Host
的配置,需要将仓库地址修改为:git@github_2.com:name/project.git
,修改git沧湖远程url的命令如下:
1 | git remote set-url origin git@github_2.com:name/project.git |
说明:例如将代码提交到git仓库,将一些敏感信息提交,所以需要删除提交记录以彻底清除提交信息,以得到一个干净的仓库且代码不变
Checkout
1 | git checkout –orphan latest_branch |
Add all the files
1 | git add -A |
Commit the changes
1 | git commit -am "commit message" |
Delete the branch
1 | git branch -D master |
Rename the current branch to master
1 | git branch -m master |
Finally, force update your repository
1 | git push -f origin master |