Git仓库某一个文件夹里的文件离奇丢失的问题


最近我在开发一个智能硬件产品的项目,涉及了硬件、软件两个方面,用同一个git项目的不同分支进行协同,例如硬件小伙伴使用hardware分支,软件小伙伴使用software分支,分支间差异较大,例如hardware分支就是纯电路图,software分支就是纯代码的情况;

software分支引用了一些开源的代码,Simpleini和Arduino-IRremote,直接通过git clone方式获取到开发的文件目录中,在software分支上各种提交操作等,未发现异常情况,直到有天我切到了hardware分支,然后再切回去,发现Simpleini和Arduino-IRremote文件夹中的文件都不见了,然后我去gitcaft上查看已经push到远端仓库的内容,发现这里是这样的:



这两个文件夹都是点不开的,而且丢失文件的文件夹后面都被追加了 @****(正好是我引用代码处的提交点) ,原来该文件夹的内容根本就没有被跟踪上;文件都没有被跟踪上,也就更无法使用git 恢复了;

对此问题百思不得其解,google各种解决方案,看到一句话警醒了我:


好激动,我又重新从github上获取了代码,将相应的.git文件夹都删掉,如下图:


然后先在我自己的git项目路径,执行git rm指令删除那两个异常的文件夹,或直接手动删掉那两个文件夹;

将新的代码再次放入原有目录,先后执行add、commit、push,然后查看gitcafe的代码,一切正常了;

如果引用了第三方的代码,还想加入自己的项目中,又还不想删掉里面的.git目录,那还有种方法是将其作为本项目的子模块,参考(这种方式我没有验证过,仅供大家参考吧):https://git-scm.com/book/zh/v1/Git-%E5%B7%A5%E5%85%B7-%E5%AD%90%E6%A8%A1%E5%9D%97


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值