公司内部搭建gerrit服务器,使用repo管理安卓的代码,已经把repo的脚本和工具下载下来,并将repo工具传到公司gerrit服务器上,repo的URL和REV已修改成公司gerrit仓库和分支,但是在使用repo init时一直报错如下:
[admin@localhost test]$ repo init
** /这个是公司gerrit仓库,里面放的就是从网上下载的repo的工具包/**
Downloading Repo source from ssh://192.168.134.100:29418/git-repo
remote: Counting objects: 142, done
remote: Finding sources: 100% (142/142)
remote: Total 142 (delta 19), reused 142 (delta 19)
repo: Updating release signing keys to keyset ver 2.3
repo: error: "git" failed with exit status 1
cwd: /home/admin/test/.repo/repo.tmp
cmd: ['git', 'tag', '-v', 'v1.0']
stdout:
object 96fe5a5d77eef8528790a3064abdcd45012e4f78
type commit
tag v1.0
tagger admin test_gerrit_lqy@163.com 1662029899 +0800v1.0_master
stderr:
error: no signature found
fatal: double check your --repo-rev setting.
fatal: cloning the git-repo repository failed, will remove '.repo/repo'
一直无法repo init成功。
https://blog.csdn.net/huangyabin001/article/details/124357483
可以参考一下
原因也很简单,repo的版本太低了;执行以下的command就可以解决了。
下载最新的repo到/sbin目录下
sudo curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > /sbin/reposudo chmod a+x /sbin/repo
今天研究了好几篇文章,看到有个大神在repo init 的时候后面加上了 --no-repo-verify 为不验证签名,貌似跟我这个报错有点相关,后面尝试了以下: repo init --no-repo-verify就成功了,后面查看repo(vim repo) 搜索 --no-repo-verify 这个参数:
group.add_option('--no-repo-verify',
dest='repo_verify', default=True, action='store_false',
help='do not verify repo source code')
修改成
group.add_option('--no-repo-verify',
dest='repo_verify', default=False, action='store_false',
help='do not verify repo source code')
把default = Ture 修改成False
后来再使用repo init 都是成功的