惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

S
Security Affairs
S
Schneier on Security
T
Tenable Blog
G
GRAHAM CLULEY
Latest news
Latest news
D
Darknet – Hacking Tools, Hacker News & Cyber Security
A
Arctic Wolf
I
Intezer
Cyberwarzone
Cyberwarzone
T
The Exploit Database - CXSecurity.com
T
Tailwind CSS Blog
K
Kaspersky official blog
Blog — PlanetScale
Blog — PlanetScale
C
Cyber Attacks, Cyber Crime and Cyber Security
T
Threat Research - Cisco Blogs
爱范儿
爱范儿
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
博客园 - 叶小钗
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Recent Commits to openclaw:main
Recent Commits to openclaw:main
P
Palo Alto Networks Blog
WordPress大学
WordPress大学
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - 司徒正美
The Cloudflare Blog
Help Net Security
Help Net Security
罗磊的独立博客
博客园 - 聂微东
Jina AI
Jina AI
Project Zero
Project Zero
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
L
LINUX DO - 最新话题
V
V2EX
人人都是产品经理
人人都是产品经理
美团技术团队
博客园 - 【当耐特】
Spread Privacy
Spread Privacy
J
Java Code Geeks
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Security Latest
Security Latest
The Last Watchdog
The Last Watchdog
Stack Overflow Blog
Stack Overflow Blog
雷峰网
雷峰网
S
Securelist
Forbes - Security
Forbes - Security
博客园 - 三生石上(FineUI控件)
Microsoft Azure Blog
Microsoft Azure Blog
P
Privacy International News Feed
宝玉的分享
宝玉的分享
C
CERT Recently Published Vulnerability Notes

胡方运的博客

macOS App 开发 iCloud 不同步问题解决 机票还能这么买!随心飞低价旅行攻略 提前避坑:父母患病和医保问题 我和 Apple 开发的缘分 我的手机流量和宽带套餐性价比方案 iMessage 在国内好用吗? 为什么要写博客 macOS 升级 beta 系统后,如何打开原来版本的 XCode Xcode 安装依赖超时问题解决办法 短信转发-多设备多平台 Follow RSS 阅读 App 记录一次服务器重启应用恢复过程 macOS 重装踩坑记 我的 2021 我的 2020 年终总结 如何给网站添加免费的 https 证书 写给自己的JavaScript系列之一步步写个 JavaScript 解释器 JavaScript 文件的异步加载 async 和 defer 如何修改 git 已提交的用户名和邮箱
如何管理多个 git 账号
感谢您的阅读。 🙏 关于转载请看这里 · 2019-10-02 · via 胡方运的博客

如果你有多个 git 账户,有没有遇到过提交代码的用户信息混乱的情况? 如果一劳永逸的解决这个问题那?

分目录配置 git 用户信息

git 可以设置全局的用户信息,然后可以再单独为每个仓库设置用户信息。如果忘记了给项目重置用户信息,可能就会发生上面的问题 — 提交时的邮箱和用户名错了。😓

如果你喜欢用不同的目录区分个人和公司的项目,可以使用下面的方法配置自己的 git 用户信息。😀

比如,你把公司的项目都放在了 Company 目录下,个人的项目都放在了 Personal 目录下下面。

那你可以这么做:

Company 下新建一个 .gitconfig_include 文件,配置你想在该目录下给所有 git 仓库设置的用户信息。

[user]
name = 用户名
email = 邮箱

然后在 ~/.gitconfig 内添加

[includeIf "gitdir:~/Company/"]
path = ~/Company/.gitconfig_include

⚠️ 复制提醒。Company 要替换成你自己的目录

这样,之后 Company 目录下的 git 仓库都会使用对应的 git 用户信息。💪

这是 git 的一个用法,感兴趣的同学可以看这里 conditional includes

如何在一台电脑上配置多个 ssh 密钥

上面解决的问题是只有一个 ssh 密钥,但是对应公司和个人不同的 git 账号信息。

还有一种情况是,一台电脑上有多个人的 ssh 密钥,比如我和小秋都是程序员,有时候一台电脑会同时配置我们俩的 ssh 密钥,分别对应不同的 git 账号。

除了上面要分目录,还需要设置不同的 ssh 密钥和 git 账号的关系。

可以在 ~/.ssh 目录再新建一套密钥或者也可以复制已有的到该目录,起不同的名字,比如下面这样是两套 ssh

id_rsa
id_rsa.pub

id_rsa_other
id_rsa_other.pub

然后在 ~/.ssh/config 配置文件分别指定不同的账号使用不同的 ssh 密钥:

# 默认账户
Host github.com
HostName github.com
User defaultUser // 这里改成自己的用户名
IdentityFile ~/.ssh/id_rsa

# 另一个账户
Host github.com-user1
HostName github.com
User otherUser // 这里改成自己的用户名
IdentityFile ~/.ssh/id_rsa_other

克隆仓库的时候可以改成这种格式:

git clone git@github.com-user1:otherUser/repo_name.git

参考

Set git config values for all child folders