温馨提示×

ubuntu jenkins怎么集成git

小樊
47
2026-09-25 13:42:55
栏目: 智能运维

在 Ubuntu 上让 Jenkins 集成 Git,一般包含以下几个步骤:安装 Jenkins、安装 Git、配置 Jenkins 使用 Git、创建任务并拉取代码。下面按实操流程说明。


一、环境准备

1. 安装 Git

sudo apt update
sudo apt install git -y

验证:

git --version

2. 安装 Jenkins(如未安装)

sudo apt update
sudo apt install openjdk-11-jdk -y

wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'

sudo apt update
sudo apt install jenkins -y

sudo systemctl start jenkins
sudo systemctl enable jenkins

访问:

http://<服务器IP>:8080

二、Jenkins 安装 Git 插件

  1. 登录 Jenkins
  2. 进入
    Manage Jenkins → Manage Plugins → Available
  3. 搜索 Git
  4. 安装:
    • Git
    • Git Client
  5. 安装完成后重启 Jenkins

三、配置 Jenkins 全局 Git

方式一(推荐):使用系统 Git

  1. Manage Jenkins → Global Tool Configuration
  2. 找到 Git
  3. 点击 Add Git
    • Name: Default
    • Path to Git executable: /usr/bin/git
  4. 保存

四、配置 Git 凭据(SSH 或账号密码)

方式 1:SSH 方式(常用)

在 Ubuntu 上生成密钥:

sudo -u jenkins ssh-keygen -t rsa -b 4096

查看公钥:

sudo -u jenkins cat /var/lib/jenkins/.ssh/id_rsa.pub

将公钥添加到:

  • GitHub / GitLab → SSH Keys

在 Jenkins 中添加私钥:

  1. Manage Jenkins → Credentials
  2. 选择 System → Global credentials
  3. 添加:
    • Kind: SSH Username with private key
    • Username: git
    • Private Key: 粘贴 /var/lib/jenkins/.ssh/id_rsa

方式 2:账号密码

  • Kind: Username with password
  • 填写 Git 账号和密码

五、创建 Jenkins 任务并集成 Git

  1. 新建任务 → Freestyle Project
  2. 在 Source Code Management 中选择 Git
  3. 填写:
    • Repository URL:
      • SSH: git@github.com:user/repo.git
      • HTTPS: https://github.com/user/repo.git
    • Credentials:选择上面配置的
  4. 指定分支(如 main 或 master)

六、构建测试

在 Build Steps 中添加:

echo "Git Pull Success"
git log -1

点击 Build Now,查看控制台输出是否成功拉取代码。


七、常见问题

1. Permission denied (publickey)

  • 确认 Jenkins 用户有 SSH key
  • 确认 Git 服务器已添加公钥

2. Host key verification failed

sudo -u jenkins ssh git@github.com

选择 yes 后重试

3. Jenkins 找不到 git

在任务中指定:

/usr/bin/git

如果你用的是 GitHub / GitLab / Gitee,或者想做 Webhook 自动构建,我也可以继续帮你配置。

0 踩