Jenkins在Linux上集成版本控制的完整流程
在集成前需确保Linux系统(如Ubuntu/CentOS)已安装Java(Jenkins依赖,推荐JDK 8+)和版本控制工具(Git/SVN)。
sudo apt update && sudo apt install -y openjdk-11-jdk
java -version # 验证安装(需显示版本信息)
sudo apt install -y git
git --version # 验证安装
wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo tee /usr/share/keyrings/jenkins-keyring.asc > /dev/null
echo "deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] https://pkg.jenkins.io/debian-stable binary/" | sudo tee /etc/apt/sources.list.d/jenkins.list > /dev/null
sudo apt update && sudo apt install -y jenkins
sudo systemctl start jenkins && sudo systemctl enable jenkins
http://<服务器IP>:8080,通过日志获取初始密码(sudo cat /var/lib/jenkins/secrets/initialAdminPassword),完成管理员账号创建及推荐插件安装。Jenkins需通过插件支持不同版本控制系统,常用插件包括Git Plugin(Git)、Subversion Plugin(SVN)、GitHub Plugin(GitHub集成)、GitLab Plugin(GitLab集成)。
Manage Jenkins > Manage Plugins > Available,搜索插件名称(如“Git Plugin”),勾选后点击“Install without restart”。确保Jenkins能识别系统中的版本控制工具(如Git),需在Manage Jenkins > Global Tool Configuration中设置:
/usr/bin/git),无需修改;若未检测,点击“Add Git”手动指定可执行文件路径。进入Jenkins首页,点击New Item,输入任务名称(如“my-app-ci”),选择Freestyle project(简单项目)或Pipeline(复杂流水线),点击“OK”。
https://github.com/your-repo/my-app.git或SSH地址git@github.com:your-repo/my-app.git)。*/main表示main分支,默认**表示所有分支)。H/5 * * * *表示每5分钟检查一次)。Settings > Webhooks > Add webhook,Payload URL填写http://<Jenkins服务器IP>:8080/github-webhook/,Content type选择application/json)。根据项目类型选择构建工具,例如:
mvn clean install或npm install && npm run build)。clean package)。可选步骤,用于处理构建结果,例如:
target/*.jar)。junit.xml文件)。点击“Save”保存配置,然后点击“Build Now”手动触发构建,或等待触发器(如Webhook、Poll SCM)自动触发。构建完成后,可通过“Build History”查看日志及结果。
若需更灵活的流水线管理,可选择Pipeline项目类型,通过Pipeline script from SCM选项直接从版本控制仓库读取Pipeline脚本(如Jenkinsfile)。示例如下:
pipeline {
agent any
stages {
stage('Checkout') {
steps {
git branch: 'main', url: 'https://github.com/your-repo/my-app.git'
}
}
stage('Build') {
steps {
sh 'mvn clean package'
}
}
stage('Deploy') {
steps {
sh 'scp target/*.war user@server:/opt/tomcat/webapps/'
}
}
}
}
此方式可实现代码托管库与Jenkins的深度集成,便于团队协作和管理。