任何一种技术,其实都有它的迷人之处,比如我们程序员必备的代码管理工具git,其实日常操作也都没什么问题,但难免有时候会因为分支过多而误推了代码,这个时候我们的第一反应就是代码回滚呗,而我这次代码回滚却遇到了一个坑
这是我踩的坑:代码提交错误的推到的master分支,但是我本地代码回滚后,准备回滚远程代码的时候,却发现提示我下面这个错误
git push -f
remote: HTTP Basic: Access denied
fatal: Authentication failed for 'http://gitlab.xxxxx.xxx/xxxxx/shop.git/'
翻译:访问被拒绝,身份验证失败。
我第一反应就是,不应该啊,我写的代码都推上去了,为什么这里又提示我身份验证失败呢,网上的解决方案也很多雷同,很多都是说设置了分支保护,这个我也看过了,也取消分支保护了,也没什么用。
解决方案:
右键项目
右键要回滚的节点,选择Rest Current Branchto Here
此时本地代码已经回滚了,然后输入 git 命令(git push -f)
提示以下信息说明成功
Total 0 (delta 0), reused 0 (delta 0)
To http://gitlab.xxxxx.xxx/shop_wechat/shop.git
+ 39ea021ae...4f69a7fb4 master -> master (forced update)
如果像我一样提示下面信息,那就把本地 git账号清除,然后重新输入账号密码即可
git push -f
remote: HTTP Basic: Access denied
fatal: Authentication failed for 'http://gitlab.xxxxx.xxx/xxxxx/shop.git/'
本地清除git账号:
然后在重新 git push -f,会自动提示输入新的账号密码的,然后就可以了