Git项目多远程仓库同步方法

Git项目多远程仓库同步方法 同一个 Git 项目可以同时推送到多个远程仓库(如 Gogs 和 Gitee)。 1. 添加 Gitee 作为新的远程仓库 git remote add gitee <Gitee仓库的URL> 2. 验证远程仓库设置 git remote -v 3. 推送到 Gitee git push gitee master # 推送 master 分支 # 或推送所有分支: git push --all gitee 4.(可选)设置默认同时推送到两个仓库 修改 .git/config 文件,在 [remote “origin”] 部分添加多个 push URL: [remote "origin"] url = https://gogs.example.com/yourname/yourrepo.git fetch = +refs/heads/*:refs/remotes/origin/* pushurl = https://gogs.example.com/yourname/yourrepo.git pushurl = https://gitee.com/yourname/yourrepo.git 这样 git push 会同时推送到两个仓库。 5. (可选)从 Gitee 拉取更新 git pull gitee master 删除指定的远程仓库(如 gitee) git remote remove gitee 注意事项: 两个仓库的分支结构最好保持一致 如果两边都有新的提交,可能需要先合并再推送 大型项目首次推送到 Gitee 可能需要较长时间 这种方法可以让你保持代码在多个远程仓库同步,适用于需要备份或多平台协作的场景。

May 18, 2025 · 1 min · Leanku

基于 Gogs + Jenkins + Harbor + Docker 的自动化部署方案

基于 Gogs + Jenkins + Harbor + Docker 的自动化部署方案 1. 系统架构总览 开发者提交代码 → Git仓库 → Jenkins触发构建 → Docker构建镜像 → 推送至Harbor → Kubernetes部署更新 → 监控反馈 2. 环境准备 2.1 硬件要求 最低配置:2核CPU/4GB内存/100GB存储 推荐配置:4核CPU/8GB内存/200GB SSD 3. 组件安装与配置 3.1 Gogs 安装 另外一篇Jenkins 使用 3.2 Jenkins 安装 另外一篇Gogs 使用 3.3 Harbor 安装 另外一篇Harbor 使用 4. 环境配置 下面以wordpress项目为例 wordpress/ ├── app/ # 项目代码 ├── docker # Docker 相关文件 | ├── Dockerfile | ├── entrypont.sh | └── nginx.conf | └── nginx-wordpress....

May 17, 2025 · 5 min · Leanku

K3s使用指南

K3s使用指南+Rancher 1. K3s 简介 K3s 是一个轻量级的 Kubernetes 发行版,由 Rancher Labs(现在是 SUSE 旗下)开发。 它完全兼容 Kubernetes API,但设计上更轻便、易安装,适合边缘计算、物联网设备、单节点或资源有限环境。 K3s 把 Kubernetes 的很多组件做了简化,比如内置了 containerd,默认启用 flannel 网络,去掉了复杂的插件,安装非常简单。 主要目标是让 Kubernetes 快速部署、低资源占用,并且更适合国内和小型集群使用。 2. K3s 对比 kubeadm 特性/方面 K3s kubeadm 定位 轻量级、开箱即用的 Kubernetes 发行版 官方工具,用于标准 Kubernetes 集群的快速部署和引导 安装复杂度 极简安装,单条命令搞定 需要多个步骤,配置复杂,适合有一定 Kubernetes 经验的用户 组件集成 集成了 containerd,默认内置 flannel 网络,默认关闭了部分复杂组件(如部分云插件、Helm等) 只负责初始化集群,组件和网络插件需要用户自行选择安装 资源占用 非常低,适合边缘设备、物联网、单机小集群 资源占用较大,适合生产多节点环境 多节点支持 支持多节点,但更适合轻量和小规模集群 原生支持多节点和大规模集群,灵活度高 适用场景 单机、开发测试、小型集群、资源受限环境 生产环境,多节点,企业级集群部署 网络插件 默认集成 Flannel,安装简单 用户需自行部署网络插件(Flannel、Calico、Weave等) 更新升级 版本更新简单,内置自动化升级工具 需要手动升级,过程复杂 集成工具和生态 内置 Traefik(可选关闭),轻量且默认功能有限 灵活,可按需安装 Ingress、Dashboard、Helm 等组件 社区和支持 Rancher 支持,社区活跃 CNCF 官方支持,社区广泛 官网文档 https://k3s....

May 12, 2025 · 3 min · Leanku

Kubernetes(k8s)单机环境部署

Kubernetes(k8s)单机环境部署 1. Kubernetes (K8s) 简介 此文适合新手快速上手,涵盖安装、配置、基本使用 单机环境 2. 环境 系统要求 操作系统:Linux(Ubuntu/CentOS)或 macOS(开发环境) 内存:至少 2GB(推荐 4GB+) CPU:2 核+ 存储:20GB+ 可用空间 安装工具 Docker(K8s 依赖容器运行时) kubectl(K8s 命令行工具) Minikube(本地单节点 K8s,适合学习) 3. 前置配置 # 1.关闭 swap sudo swapoff -a sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab # 2.加载内核模块 sudo modprobe overlay sudo modprobe br_netfilter # 3.设置内核参数 cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 net.ipv4.ip_forward = 1 EOF sudo sysctl --system 4....

May 11, 2025 · 8 min · Leanku

使用Bark 实现IOS接收通知

Bark 实现IOS接收通知 1. Bark介绍 免费、轻量!简单调用接口即可给自己的iPhone发送推送。 依赖苹果APNs,及时、稳定、可靠 不会消耗设备的电量, 基于系统推送服务与推送扩展,APP本体并不需要运行。 隐私安全,可以通过一些方式确保包含作者本人在内的所有人都无法窃取你的隐私。 2. 安装 2.1 AppStore 下载Bark 允许通知权限 替换内容去请求给的地址即可接收通知,各参数可参考文档 2 也可自己部署服务端 bark-server 2.2 下载安装 bark-server # 下载二进制,不同系统注意更换版本 wget https://github.com/Finb/bark-server/releases/download/v2.2.0/bark-server_linux_amd64 chmod +x bark-server_linux_amd64 ./bark-server_linux_amd64 -addr 0.0.0.0:8080 -data ./bark-data 3. 使用 systemd服务单元文件来管理 bark-server 的运行 创建编辑一个服务单元文件 vim /etc/systemd/system/bark-server.service 在文件中添加以下内容: [Unit] Description=Bark Server After=network.target [Service] ExecStart=/path/to/your/bark-server_linux_amd64 -addr 0.0.0.0:8080 -data /path/to/your/bark-data Restart=always User=your_username Group=your_groupname [Install] WantedBy=multi-user.target 把 /path/to/your/bark-server_linux_amd64 和 /path/to/your/bark-data 替换成实际的文件路径,把 your_username 和 your_groupname 替换成实际的用户名和用户组名。 执行systemctl命令 # 重新加载 systemd 管理器配置 sudo systemctl daemon-reload # 启动 bark-server 服务: sudo systemctl start bark-server # 设置服务开机自启: sudo systemctl enable bark-server # 查看服务状态: sudo systemctl status bark-server # 查看服务日志: sudo journalctl -u bark-server -f 启动成功后 打开iPhone上的Bark添加服务器地址,即可完成自部署

May 11, 2025 · 1 min · Leanku

Gogs 使用指南

Gogs 使用 1. 什么是 Gogs? Gogs 是一款极易搭建的自助 Git 服务。 Gogs 的目标是打造一个最简单、最快速和最轻松的方式搭建自助 Git 服务。使用 Go 语言开发使得 Gogs 能够通过独立的二进制分发,并且支持 Go 语言支持的 所有平台,包括 Linux、Mac OS X、Windows 以及 ARM 平台。 2. 安装 Linux-amd64系统为例 2.1 要求 数据库(选择以下一项) MySQL:版本 >= 5.7 PostgreSQL TiDB 或者 什么都不安装 直接使用 SQLite3 2.2 下载安装 # 下载二进制 wget https://github.com/gogs/gogs/releases/download/v0.13.2/gogs_0.13.2_linux_amd64.tar.gz tar -xzvf gogs_0.13.2_linux_amd64.tar.gz gogs cd gogs ./gogs web 2.3 使用 systemd服务单元文件来管理 创建编辑一个服务单元文件 vim /etc/systemd/system/gogs.service 在文件中添加以下内容: [Unit] Description=Gogs Server After=network.target [Service] ExecStart=/path/gogs web Restart=always User=your_username Group=your_groupname [Install] WantedBy=multi-user....

May 11, 2025 · 2 min · Leanku

SSH 使用指南

SSH 使用指南:从基础到服务器密钥登录 什么是 SSH? SSH (Secure Shell) 是一种加密的网络协议,用于在不安全的网络中安全地进行远程登录和其他网络服务。它通过加密技术保护通信安全,防止信息泄露和中间人攻击,是系统管理员和开发人员管理远程服务器的必备工具。 基本 SSH 连接 最基本的 SSH 连接命令格式如下: ssh username@hostname 例如,要连接到 IP 为 192.168.1.100 的服务器,用户名为 admin: ssh admin@192.168.1.100 首次连接时会提示验证服务器指纹: The authenticity of host '192.168.1.100 (192.168.1.100)' can't be established. ECDSA key fingerprint is SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx. Are you sure you want to continue connecting (yes/no)? 输入 yes 后,服务器指纹会被保存在本地 ~/.ssh/known_hosts 文件中,以后连接时会自动验证。 SSH 配置文件 SSH 客户端配置文件 ~/.ssh/config 可以简化连接命令。例如: Host myserver HostName 192.168.1.100 User admin Port 2222 配置后,只需输入 ssh myserver 即可连接。...

May 11, 2025 · 2 min · Leanku

Prometheus + Grafana + Alertmanager轻量级监控告警系统

Prometheus + Grafana + Alertmanager轻量级监控告警系统 一、工具简介与官网 工具 作用 官网文档地址 Prometheus 指标采集、存储与告警规则管理 prometheus.io/docs Node Exporter 暴露服务器硬件/OS指标 github.com/prometheus/node_exporter Alertmanager 告警聚合与通知发送 prometheus.io/docs/alerting Grafana 数据可视化与仪表盘 grafana.com/docs 二、安装与配置 1. Prometheus 安装 1.1 下载与解压 wget https://github.com/prometheus/prometheus/releases/download/v2.51.0/prometheus-2.51.0.linux-amd64.tar.gz tar xvf prometheus-2.51.0.linux-amd64.tar.gz cd prometheus-2.51.0.linux-amd64 1.2 配置监控目标 编辑 prometheus.yml: global: scrape\_interval: 15s evaluation\_interval: 15s scrape\_configs: \- job\_name: "prometheus" \# 监控自身 static\_configs: \- targets: \["localhost:9090"\] \- job\_name: "node" \# 监控服务器 static\_configs: \- targets: \["<NODE\_IP>:9100"\] \# 替换为Node Exporter的IP 1.3 启动 Prometheus ./prometheus \--config....

May 11, 2025 · 4 min · Leanku

Git创建不继承内容的新分支

git filter-branch 清理误提交大文件 问题概述: 在当前项目中放有大文件(超过100M)package/grpc.tar.gz,进行了git add,commit 并push, push过程中出现了错误如: remote: error: File package/grpc.tar.gz is 973.06 MB; this exceeds GitHub's file size limit of 100.00 MB 这个问题会导致后面的提交以及push出错 git filter-branch 用 git filter-branch 删除历史中所有的 grpc.tar.gz git filter-branch --force --index-filter \ "git rm --cached --ignore-unmatch package/grpc.tar.gz" \ --prune-empty -- lite-AlmaLinux 💡 说明:这个命令会清理当前分支里所有 commit 中的 package/grpc.tar.gz 清理垃圾对象并压缩仓库大小 git reflog expire --expire=now --all git gc --prune=now --aggressive 然后重新 push(第一次 push 分支) git push --set-upstream origin lite-AlmaLinux 防止此类问题 优化 ....

May 10, 2025 · 1 min · Leanku

Jenkins 使用

Jenkins 使用 1. 安装Jenkins sudo wget -O /etc/yum.repos.d/jenkins.repo \ https://pkg.jenkins.io/redhat/jenkins.repo sudo rpm --import https://pkg.jenkins.io/redhat/jenkins.io-2023.key sudo yum upgrade # Add required dependencies for the jenkins package sudo yum install fontconfig java-21-openjdk sudo yum install jenkins 2. 启动 Jenkins sudo systemctl enable jenkins sudo systemctl start jenkins # 检查状态 sudo systemctl status jenkins 正常输出应显示 active (running)。 开放防火墙(如需) # 开放 8080 端口(Jenkins 默认端口) sudo firewall-cmd --permanent --add-port=8080/tcp sudo firewall-cmd --reload 3. 配置Jenkins 3.1 访问 Jenkins 并完成初始化 在浏览器访问:http://<服务器IP>:8080 获取初始管理员密码: sudo cat /var/lib/jenkins/secrets/initialAdminPassword 复制输出的密码粘贴到网页。 安装推荐插件:选择默认插件集(包括Git、Pipeline等常用工具)。 3....

May 9, 2025 · 1 min · Leanku