当前位置: 首页 > news >正文

在 CentOS 上将 Ansible 项目推送到 GitHub 的完整指南

1. 安装 Git

在 CentOS 中使用 yum 安装 Git,Git 是管理代码版本控制的工具:

sudo yum install git -y

2. 配置 Git 用户信息

设置你的 Git 用户名和邮箱,这些信息会出现在你每次提交的记录中:

git config --global user.name "lifeng200577"
git config --global user.email "你的GitHub邮箱"

3. 生成 SSH 密钥并绑定到 GitHub

推荐使用 SSH 密钥方式登录 GitHub,避免每次都输入用户名密码。

3.1 生成 SSH 密钥(一路回车):

ssh-keygen -t ed25519 -C "你的GitHub邮箱"

3.2 查看并复制生成的公钥内容:

cat ~/.ssh/id_ed25519.pub

3.3 登录 GitHub 添加公钥:

-  登录 GitHub
-  点击头像 → Settings → SSH and GPG keys → New SSH key
-  Title 随便填写,例如 Ansible
-  粘贴上面的公钥内容

3.4 测试 SSH 是否连接成功:

ssh -T git@github.com

4. 创建本地项目结构并初始化 Git 仓库

以 ansible 项目为例:
mkdir -p ~/ansible-projects
cd ~/ansible-projects
ansible-galaxy init ansible-role-nginx
ansible-galaxy init ansible-role-mysql或将已有项目复制过来:
cp -r /root/ansible-role-nginx ./
git init

5. 连接远程 GitHub 仓库

假设你已经在 GitHub 上创建好了名为 ansible-projects 的仓库。

git remote add origin git@github.com:lifeng200577/ansible-projects.git

6. (可选)添加 .gitignore 文件

用于忽略临时文件,避免上传不必要的内容:

cat <<EOF > .gitignore
*.retry
*.log
*.swp
EOF

7. 提交并推送代码到 GitHub 仓库

将所有文件添加并推送到 GitHub:

git add .
git commit -m "init: 添加 Ansible 角色项目(nginx, mysql)"
git branch -M main
git push -u origin main

8. 后续添加新角色目录

每次新增角色目录后重复如下操作即可:

ansible-galaxy init ansible-role-redis
git add ansible-role-redis
git commit -m "feat: 添加 redis 角色"
git push origin main

9. 仓库结构推荐

最终 GitHub 上的仓库目录结构建议如下:

ansible-projects/
├── ansible-role-nginx/
├── ansible-role-mysql/
├── ansible-role-redis/
├── .gitignore
└── README.md

10. 添加 site.yml 入口文件(可选)

用于统一定义多个角色在不同主机组中的运行顺序:

- hosts: webserversroles:- ansible-role-nginx- hosts: dbserversroles:- ansible-role-mysql

11. 验证仓库推送结果

浏览器打开:
https://github.com/lifeng200577/ansible-projects
检查文件和目录是否正确显示。

相关文章:

  • 使用Python提取PDF元数据的完整指南
  • 嵌入式学习Day33
  • C:\Users\中文名修改为英文名
  • JVM——如何打造一个类加载器?
  • 【Python训练营打卡】day44 @浙大疏锦行
  • simulink有无现成模块可以实现将三个分开的输入合并为一个[1*3]的行向量输出?
  • 矩形相交的面积 - 华为OD机试真题(JavaScript题解)
  • 筑牢企业网管域安全防线,守护数字核心——联软网管域安全建设解决方案
  • 在 CentOS 上安装 Docker 和 Docker Compose 并配置使用国内镜像源
  • 局域网空间内网络安全的实现分析
  • 基于责任链模式进行订单参数的校验
  • 相机Camera日志分析之二十五:高通相机Camx 基于预览1帧的process_capture_request四级日志分析详解
  • 搜广推特征数据变更灰度为什么实现很困难
  • PPT转图片拼贴工具 v4.3
  • 二叉树的遍历总结
  • 云原生思维重塑数字化基座:从理念到实践的深度剖析
  • 【图像处理入门】5. 形态学处理:腐蚀、膨胀与图像的形状雕琢
  • Android15 launcher3
  • javaweb -html -CSS
  • FPGA点亮ILI9488驱动的SPI+RGB接口LCD显示屏(一)
  • 做网站的价格 外贸/武汉百度
  • 临朐网站建设建站/软文广告300字范文
  • 武汉做网站小程序哪家公司好/营销方案ppt
  • 如何增加网站收录/小红书怎么做关键词排名优化
  • 苏州营销型网站制作/厦门seo蜘蛛屯
  • 海报图片素材/徐州seo建站