ValueError: unsupported pickle protocol: 4

问题描述
   今天遇到在低版本Android用repo sync刷新代码时,报错"ValueError: unsupported pickle protocol: 4"
问题起因
   先用python3.6去repo sync安卓11代码,再切换到python2.7去repo sync安卓7代码,出现此类问题
解决方法
   删掉文件 ~/.repopickle_.gitconfig
解决思路
   网上能查出来这个问题是由python2跟python3的协议不一样引起,
   python的pickle模块实现了基本的数据序列和反序列化,但用python2去加载python3独有协议生成的文件会报错
   根据报错在相应的脚本中添加日志发现是 ~/.repopickle_.gitconfig 这个文件
   删掉后可以正常repo sync刷新代码
参考

python里pickle的详细用法_Pythonpickle模块用法实例
ValueError: unsupported pickle protocol: 3, python2 pickle can not load the file dumped by python 3 pickle?

猜你喜欢

转载自blog.csdn.net/yfbdxz/article/details/127919399