5.Git一些意外操作的处理方式

目前整理的错误内容

以下整理的主要是我接触过(了解或者实际经历过的错误),注意这里面牵扯到删除和对代码的非常规操作,按照官方说法都是高危操作,操作前请做好数据备份

  • 提交了错误的内容到远程库
  • 切换分支后导致未提交的代码丢失
  • 错误删除了Git的分支
  • 错误的进行了分支合并
  • Git下载代码unable to access 403错误

提交了错误的内容到远程库

这里有好几种解决方案。
第一种
首先查看日志,确定你要回滚到的版本号

git log

第二步,假设你拿到的版本号是a0001

git reset --soft a0001

这里你也可以使用hard,区别是hard修改记录都没了,soft则会保留修改记录

git stash

这里为了安全你最好储存一下当前内容

git push -f

然后将当前内容强制推送到远程库,-f为强制覆盖。
第二种
有些公司对代码推送策略可能做了一些限制,这样可以尝试第二种方式。

首先查看日志,确定你要回滚到的版本号

git log

第二步,假设你拿到的版本号是a0001

git reset --hard a0001

这里你也可以使用hard,区别是hard修改记录都没了,soft则会保留修改记录

git stash

这里为了安全你最好储存一下当前内容

git push origin --delete (branchname)

然后删除掉当前分支

git push origin the_branch

最后使用本地代码重建分支

错误删除了Git的分支

首先去日志里面查询本地的操作记录

git reflog --date=iso <branchname>

获取到对应的commit_id

git checkout -b <branchname> ddd94a4

然后进行提交远程进行分支重建

切换分支后导致未提交的代码丢失

假如代码已经commit
假如你的代码已经commit则只需要查询日志提交记录

git log

然后进行回滚

git reset --hard commit_id     

假如你代码不准备提交,但是也想切换分支
首先将代码进行存储

git stash

然后进行切换,切换回来后,取回存储的内容

git stash pop

假如你代码没有进行提交
代码没有进行提交,同时也没有进行存储而进行分支切换导致代码丢失,这种情况,个人用Git暂时没有解决问题,但是因为本人使用的是IDEA进行开发的而IDEA有它自己的备份策略。

  1. 点击项目,右键里面有个Local History
  2. 点击Slow History
  3. 里面显示本地存储的历史改动记录,可以根据记录将选择恢复指定代码。
    假如你使用的eclipse的话,这个可能需要你去网上多去找找了,可能有类似解决方案,只是个人已经很久不用eclipse了。

Git下载代码unable to access 403错误

unable to access ‘https://git.xxx.xxxt/xxxxxxxx/xxxx.git/’: The requested URL returned error: 403

这里面很明显就是账号错误。
使用config查询,验证账号是否正确
本地

$ git config user

全局

$ git config --global user

假如在这里面还无法发现错误,或者你们公司使用的是私人服务器搭建的环境,可以查看下配置文件中的内容,一般配置文件在C:\Users(用户)\下的 .gitconfig文件。
(其实403错误很容易知道错误内容,但是之前自己遇见这个问题始终无法解决,后来才发现上一位使用这个电脑的同学将账号密码进行特殊处理写到了配置中。导致我通过git命令始终无法切换账号…………233333)

后续继续更新

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大·风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值