git 多用户管理 跨平台
一、概述​ 相信大家都遇到过这样的问题实际开发中需要在一台PC上用到 不同平台git的账号甚至同一个平台的多个账号比如本人gitee、字自己在nas上搭建的gitea另外还有github账号有时还会有公司的代码仓库账号就更多了。​ 于是就有了这次的笔记多用户管理即在同一台设备上使用git管理来自Gitee和Gitea、Github的不同仓库各自使用不同的身份SSH密钥或账号互不冲突。二、方案简单整理一下要求一键操作切换用户配置不希望额外单步配置 用户名 邮件 密码 等一系列繁琐操作配置管理简单不能有用户配置冲突扩展复用性需要较强适合随时添加用户跨平台使用Linux / Termuxandroid / Git Bash(windows)那么目前可以想到的最优方案就是为每个用户创建不同的空目录并单独局部配置项目结构如下/project_git/ ├── gitee/ │ ├── user_a │ │ ├── env.sh │ │ ├── .gitconfig │ │ ├── .ssh/ │ │ │ ├── config │ │ │ ├── id_rsa │ │ │ ├── id_rsa.pub │ │ └── project/ │ ├── user_b │ │ ├──... │ ├──... ├── gitea/ │ ├── user_a │ │ ├── env.sh │ │ ├── .gitconfig │ │ ├── .ssh/ │ │ │ ├── config │ │ │ ├── id_rsa │ │ │ ├── id_rsa.pub │ │ └── project/ │ ├── user_b │ │ ├──... │ ├──... ├──...三、具体步骤1、创建目录并生成密钥# 创建目录结构mkdir-p/project_git/gitee/.sshmkdir-p/project_git/gitee/project# 为Gitee创建SSH密钥建议giteeexample.com替换为实际邮箱即使错误也不影响仅用于管理区分# 注意检查 .ssh/id_rsa 权限需要为 600ssh-keygen-trsa-b4096-f/project_git/gitee/.ssh/id_rsa-Cgiteeexample.com2、配置Git身份信息为每一个用户环境新建/gitee/.gitconfig文件[user] name user_name email giteeexample.com注意gitee_user改成实际用户名。giteeexample.com改成实际邮件名。3、配置SSH文件/project_git/gitee/.ssh/configHost gitee HostName gitee.example.com Port23UsergitIdentityFile /project-git/gitee/.ssh/id_rsa IdentitiesOnlyyes注意gitee自定义gitee.example.com改为实际服务器地址或IP。23改为实际服务器端口如果是服务器域名则不需要。IdentityFile需要绝对地址使用realpath ../.ssh/id_rsa获取绝对地址4、写入环境启动脚本为每一个用户环境新建env.sh文件#!/bin/bashENV_DIR$(dirname $(realpath$0)) export GIT_CONFIG_GLOBAL$ENV_DIR/.gitconfig export GIT_SSH_COMMANDssh-F$ENV_DIR/.ssh/config echo ✅ 已启用 GIT 环境 echo 用户名:$(gitconfig--globaluser.name) echo 邮箱:$(gitconfig--globaluser.email) echo 工作目录:$ENV_DIR/project cd $ENV_DIR/project||exitbash赋权chmodx env.sh5、使用方法# 配置环境./env.sh# 测试验证环境配置正确返回结果包含 “Hi there, user_name! Youve successfully ...”ssh-F../.ssh/config-Tgitee# gitee环境拉取或推送代码gitclone gitee:user_name/project.git需要先将生成的密钥添加到对应的服务器具体的步骤可以参考 gitee 使用笔记 —基础篇然后执行./env.sh后自动进入project文件夹进入后就是处于当前账号绑定的shell环境下了所有Git操作都使用它的身份和 SSH 密钥。6、补充说明配置用途.gitconfig设置该身份的user.name和user.email.ssh/config设置连接仓库所用的私钥GIT_CONFIG_GLOBAL让 Git 使用局部配置替代默认全局配置GIT_SSH_COMMAND强制 Git 使用该环境下的 SSH 配置env.sh便捷脚本加载配置 进入项目目录四、极简超强方式下载链接(多用户管理一键执行应用git-env.bin)[https://download.csdn.net/download/Primary_rookie/91161710]当前制作了适用于Linux / Termuxandroid的一键执行应用git-env.bin,操作如下workwork:~/user_project/project-gitee$lsgit-env.bin workwork:~/user_project/project-gitee$sudochmodx git-env.bin[sudo]work 的密码 workwork:~/user_project/project-gitee$ ./git-env.bin ▶ Git 用户姓名(user.name): aaa ▶ Git 用户邮箱(user.email): aaaaaaa.com ▶ SSH 主机别名(如 gitee/gitea/github): gitee ▶ 服务器域名或 IP(HostName): gitee.com ▶ SSH 端口[回车默认22]: 已创建目录: /home/work/user_project/project-gitee/{.ssh,project}✅ 生成 .gitconfig ✅ 生成 SSH 密钥: .ssh/id_rsa(.pub)✅ 生成 .ssh/config ✅ 生成 env.sh 全部完成接下来3步即可开始使用1)打开远程平台如 Gitee个人设置SSH 公钥添加 ---------------------------------------------------------------- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCfMVj/w6kVMDh2ox6Ee2NtgtQkXTarllo2Rx/pb4/8NZY5gR/jmeXcOBH9ByEbFwXAzZZp8NpomZvu4QhC6ogFN4jsPdxXvJbVigIJB0UyocRE8StFkHYkY1NIkqDyQhu7oGyG7IkV469Q7wW7Z64DDCD7ZIkB2Qc2qKvK/212XX1HWAjtNGTUMxTfbLHf4fnYABSOY/MBC/3qdvo/2xo8CYhsuuH1YvVL3UD0nAT1nywR1fAdUHaIK8G3kps7hbAvBVrLdRr51scdj0RWTqKDkGt6MDgj/U2h3V1cW8gSeRuMzSyjiu5ojXG120iY0LJS4iUrAhlr/WhWVMYiHb71/xF7bFjOcbFWsIPE3PGwuDQNJZKbCVmT/0wFpdDw5dG9f3QkVzYktgupHRMmkM46QKX8wTTzbkqbOcPE5oEXs08OSUkvOMfnye3uWKSMW4phPII2ebqMi3uXiGQyjNndsQL4CSug8gFGwoL1oqzQZkDJarcQsCfRLbWdM9nqq2bYZYOBkx3IeowA4kg6HJLe8Qc31Og4JV4GfLqghJQwcV5h2juUuWsIDjoYGFNogIPb9vPGk1yFEKJpqlLmmyOpD/3haTDv5XdiCzwhN4K0I6OT8ix58fs96ZL/K995DYQRuFERfqG/uLQMAETKrx7Q/h4IphHHvwaaaaaaa.com ----------------------------------------------------------------2)在本机运行: ./env.sh 将自动进入 project/ 并载入 Git 身份。3)在 project/ 里执行gitclone gitee:user/repo.git 即可。 workwork:~/user_project/project-gitee$ls-a...env.sh .gitconfig git-env.bin project .ssh workwork:~/user_project/project-gitee$ ./env.sh ✅ 启动 GIT 环境Gitea 用户名: aaa 邮箱: aaaaaaa.com 工作目录: /home/work/user_project/project-gitee/project 当前操作:gitpull 自动提交模式:false 正在扫描 Git 仓库... 执行摘要: ✅ 成功仓库:0❌ 失败仓库:0⏭️ 跳过非 Git 目录:1- */ 操作完成进入交互环境 workwork:~/user_project/project-gitee/project$

相关新闻

Gson版本管理全攻略:从安全升级到高级应用实践

Gson版本管理全攻略:从安全升级到高级应用实践

1. 项目缘起:为什么我们需要持续关注Gson的版本更新? 作为一名在Java后端领域摸爬滚打了十多年的老码农,我几乎见证了Java生态中各种工具库的兴衰迭代。Gson,这个由Google出品的JSON处理库,可以说是我们日常开发中处理…

2026/8/17 16:55:36 阅读更多 →
Spring事务传播机制详解:从原理到实战避坑指南

Spring事务传播机制详解:从原理到实战避坑指南

1. 从一个转账失败的深夜说起上周五晚上十一点,我正打算关电脑,突然收到测试同事发来的消息:“哥,那个批量转账的接口又出问题了,A账户扣了钱,B账户没收到,但日志里显示两个操作都成功了。” 我…

2026/8/17 16:55:36 阅读更多 →
OptiScaler 上手指南:AMD 显卡玩不了 DLSS?三步解锁全套超采样与帧生成

OptiScaler 上手指南:AMD 显卡玩不了 DLSS?三步解锁全套超采样与帧生成

OptiScaler 上手指南:AMD 显卡玩不了 DLSS?三步解锁全套超采样与帧生成 【免费下载链接】OptiScaler OptiScaler bridges upscaling/frame gen across GPUs. Supports DLSS2/XeSS/FSR2 inputs, replaces native upscalers, enables FSR-FG/XeFG on non-F…

2026/8/17 16:55:36 阅读更多 →

最新新闻

Java 面试实战:大厂场景下的 Spring Boot、Kafka、Redis、Spring Security 与 Kubernetes 综合拷问

Java 面试实战:大厂场景下的 Spring Boot、Kafka、Redis、Spring Security 与 Kubernetes 综合拷问

Java 面试实战:大厂场景下的 Spring Boot、Kafka、Redis、Spring Security 与 Kubernetes 综合拷问场景:互联网大厂 Java 求职面试人物:严肃面试官、搞笑的水货程序员燕双非第一轮:电商大促下单链路面试官:我们先从电商…

2026/8/17 17:32:58 阅读更多 →
VPKEdit 快速上手指南:一个工具搞定 20 多种游戏打包文件

VPKEdit 快速上手指南:一个工具搞定 20 多种游戏打包文件

VPKEdit 快速上手指南:一个工具搞定 20 多种游戏打包文件 【免费下载链接】VPKEdit A CLI/GUI tool to create, read, and write several pack file formats. 项目地址: https://gitcode.com/gh_mirrors/vp/VPKEdit 做游戏开发或模组的时候,你是不…

2026/8/17 17:32:58 阅读更多 →
Java 面试实战:Spring Boot + Kafka + Redis + Spring Security 在电商风控场景下的 3 轮追问

Java 面试实战:Spring Boot + Kafka + Redis + Spring Security 在电商风控场景下的 3 轮追问

Java 面试实战:Spring Boot Kafka Redis Spring Security 在电商风控场景下的 3 轮追问故事背景面试现场,严肃的面试官坐在桌前,候选人燕双非一脸轻松地走进来。今天的场景是互联网大厂电商风控系统,目标是识别刷单、羊毛党、异…

2026/8/17 17:32:58 阅读更多 →
Java 求职面试实录:Spring Boot + Kafka + Redis + Spring Security 的电商与风控场景深挖

Java 求职面试实录:Spring Boot + Kafka + Redis + Spring Security 的电商与风控场景深挖

Java 求职面试实录:Spring Boot Kafka Redis Spring Security 的电商与风控场景深挖场景:某互联网大厂 Java 终面,业务方向为电商交易与安全风控。角色:严肃面试官、搞笑水货程序员燕双非。第一轮:先聊业务主链路&a…

2026/8/17 17:32:58 阅读更多 →
Python列表深度解析:从动态数组原理到高效编程实践

Python列表深度解析:从动态数组原理到高效编程实践

1. 从“容器”到“瑞士军刀”:Python列表的深度解构 如果你刚开始学Python,或者已经写了几个月代码,我敢打赌,你第一个用到的、也是用得最多的数据结构,绝对是列表(list)。它太常见了&#xff0…

2026/8/17 17:32:58 阅读更多 →
老游戏闪退、花屏、速度失控?DDrawCompat 终极兼容方案实战指南

老游戏闪退、花屏、速度失控?DDrawCompat 终极兼容方案实战指南

老游戏闪退、花屏、速度失控?DDrawCompat 终极兼容方案实战指南 【免费下载链接】DDrawCompat DirectDraw and Direct3D 1-7 compatibility, performance and visual enhancements for Windows Vista, 7, 8, 10 and 11 项目地址: https://gitcode.com/gh_mirrors/…

2026/8/17 17:31:58 阅读更多 →

日新闻

LabVIEW异步调用实战:从原理到生产者消费者模式,解决界面卡顿与并行处理难题

LabVIEW异步调用实战:从原理到生产者消费者模式,解决界面卡顿与并行处理难题

1. 项目概述:为什么异步调用是LabVIEW进阶的必修课? 如果你用LabVIEW做过稍微复杂点的项目,尤其是涉及界面响应、多任务并行或者硬件IO等待的场景,大概率遇到过这样的窘境:前面板点个按钮,整个程序就“卡死…

2026/8/17 0:00:08 阅读更多 →
LabVIEW异步调用实战:解决界面卡顿与并行处理难题

LabVIEW异步调用实战:解决界面卡顿与并行处理难题

1. 项目概述:为什么异步调用是LabVIEW进阶的必经之路如果你在LabVIEW里写过稍微复杂点的程序,尤其是涉及到界面响应、多任务并行或者硬件IO等待,大概率会遇到一个头疼的问题:程序“卡”住了。前面板点不动,进度条不更新…

2026/8/17 0:00:08 阅读更多 →
飞书局域网文件传输实战:3种方案实现高速点对点传输

飞书局域网文件传输实战:3种方案实现高速点对点传输

1. 项目概述:为什么要在局域网内用飞书传文件? 飞书作为一款主流的协同办公套件,其核心功能是围绕云端协作设计的。无论是文档、表格还是文件,通常的分享逻辑都是“上传到云端 -> 生成链接 -> 分享给同事”。这个流程在互联…

2026/8/17 0:00:08 阅读更多 →

周新闻

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

如果你是一名开发者,最近可能已经感受到了AI大模型正在从“玩具”变成“生产力工具”的强烈信号。从代码补全到智能Agent,从本地部署到云端API,我们正处在一个技术栈快速重构的节点。然而,面对层出不穷的模型、框架和工具&#xf…

2026/8/17 2:58:27 阅读更多 →
工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

第四篇:反射——高频能量撞墙之后会发生什么? —— 你以为信号已经过去了,其实它正在回来打你 老Q的现场笔记 第五季,我们正式进入工业神经系统层。这里不再是单个设备的战斗,而是整个工厂“经脉”层面的秩序之战。从这一篇开始,你将第一次看清:看似简单的信号传播,背…

2026/8/17 2:58:30 阅读更多 →
【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

2026/8/17 2:58:32 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/16 6:00:23 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/16 6:00:24 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/16 6:00:27 阅读更多 →