我是Jenkins(和Stackoverflow)的新手,我正在设置一个简单的Jenkins工作来轮询git存储库。
1)我在本地机器上创建了一个git repositoy。 2)我创建了一个Jenkins Freestyle作业,并在配置屏幕上输入了以下参数:
存储库URL:media@127.0.0.1:/ home / media / git_repo_remote 证书:无
"存储库网址"下面出现以下错误文字字段:
Failed to connect to repository : Command "git ls-remote -h media@127.0.0.1:/home/media/git_repo_remote HEAD" returned status code 128:
stdout:
stderr: Host key verification failed.
fatal: Could not read from remote repository.
请确保您拥有正确的访问权限 存储库存在。
然后我将存储库网址更改为" https:///127.0.0.1/home/media/git_repo_remote"并在日志中收到以下内容:
Started by an SCM change
Building in workspace /var/lib/jenkins/workspace/First Job
> git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repository
> git config remote.origin.url https:///127.0.0.1/home/media/git_repo_remote # timeout=10
Fetching upstream changes from https:///127.0.0.1/home/media/git_repo_remote
> git --version # timeout=10
> git fetch --tags --progress https:///127.0.0.1/home/media/git_repo_remote +refs/heads/*:refs/remotes/origin/*
> git rev-parse refs/remotes/origin/master^{commit} # timeout=10
> git rev-parse refs/remotes/origin/origin/master^{commit} # timeout=10
> git rev-parse origin/master^{commit} # timeout=10
ERROR: Couldn't find any revision to build. Verify the repository and branch configuration for this job.
Finished: FAILURE
非常感谢任何帮助。
由于
答案 0 :(得分:3)
所以我有3个建议:
关于" https:///127.0.0.1/home/media/git_repo_remote"作为git remote url - 你确定你已经正确配置了http服务器吗?您是否尝试在jenkins机器(或jenkins执行其工作的代理)的任何浏览器中打开此地址?
Reegarding" media@127.0.0.1:/ home / media / git_repo_remote"作为git remote - 正如@LethalProgramme所提到的,问题是jenkins机器(代理)上localhost的主机验证密钥不正确。所以在某些时刻,你的jenkins机器的SSH主机验证密钥已经改变了。您可以做的是ssh到该计算机并执行:ssh-keygen -R 127.0.0.1
或ssh-keygen -R localhost
作为与jenkins相同的用户。有关详细信息,请参阅this问题及其答案。
我认为最简单的解决方案是使用sit或https的git local protocol intead。因此,请将远程网址设置为:/home/media/git_repo_remote
或file:///home/media/git_repo_remote
答案 1 :(得分:1)
请检查您的存储库托管主存储库或主存储库的分支
如果存储库托管在 main ,则分支构建到 */main 如果存储库托管在 master 中,则将分支构建到 */master