Git工程实践(二)多账号配置

本文涉及的产品
云服务器 ECS,每月免费额度200元 3个月
云服务器ECS,u1 2核4GB 1个月
简介:

相信大家在使用git的时候会面临这样的场景,同时拥有隶属于多个git服务的账户比如github,gitlab的代码工程,如何保证在不同的工程使用不同的账户呢?下面介绍两种常见方案。

方案一:针对项目配置git

git的配置变量可以放在三个地方:

  • /etc/gitconfig 系统配置,对所有用户都生效。
  • ~/.gitconfig 用户配置,仅对当前用户生效。
  • xxx/.git/config 项目配置,仅对当前项目生效。

如果同时配置则逐级覆盖,为了解决上述方案,我们可以针对不同的项目配置不同的用户,修改代码工程目录下的.git/confg文件加入用户信息配置即可,如下:

[user]
name = 竹涧
email = zeqiang.yzq@alibaba-inc.com

该方案有明显缺点:

  1. 工程较多时配置繁琐。
  2. 代码文件删除后需要重新配置。

下面我们来介绍一种一劳永逸的方案~

方案二:按照工作目录配置git

大概是17年中,git发布的新版本开始支持不同文件目录使用不同的配置文件,且共享用户配置,下面是我个人的gitconfig文件:

[core]
    excludesfile = /Users/yzq/.gitignore
    autocrlf = input
    editor = /usr/bin/vim
[push]
    default = simple
[includeIf "gitdir:~/Code/github/"]
    path = .gitconfig-github
[includeIf "gitdir:~/Code/work"]
    path = .gitconfig-work
[commit]
    template = ~/.gitmessage
[user]
    name = 竹涧
    email = zeqiang.yzq@alibaba-inc.com

该配置对我个人账户下所有的git工程生效,效果如下:

  • ~/Code/github/ 目录下的所有git工程使用 .gitconfig-github配置。
  • ~/Code/work/ 目录下的所有git工程使用 .gitconfig-work配置

接下来让我们看一下这两个配置的内容:

.gitconfig-work

[user]
    name = 竹涧
    email = zeqiang.yzq@alibaba-inc.com

.gitconfig-github

[user]
    name = yzq
    email = yangzeqiang@gmail.com

仅仅配置了账户信息,通过一次性配置即可保证不同目录使用不同的git配置!(上述仅仅配置实现了不同文件目录不同的git账户,其它配置项目同样适用比如commit template,editor等。)

目录
相关文章
|
7天前
|
开发工具 git
在IDEA中配置Git的Push键
在IDEA中配置Git的Push键
15 0
|
3月前
|
安全 Shell 网络安全
【Git】TortoiseGit(小乌龟)配置SSH和使用
【Git】TortoiseGit(小乌龟)配置SSH和使用
160 0
|
5天前
|
Unix Shell 开发工具
windows下如何安装git以及IDEA如何配置git
该文指导安装Git 2.15.0版本。首先从Git官网下载最新安装包,双击安装,依次选择Next,同意默认配置,确保勾选添加到环境变量。在配置选项中,选择在cmd中使用Git(第2项),行结束转换选Windows(第1项),终端模拟器选MinTTY(第1项)。安装完成后,通过右键菜单或直接打开Git Bash验证安装成功。最后,配置全局用户名和邮箱,并在IDEA中设置Git路径以完成集成。
|
7天前
|
Linux Shell 网络安全
Git的安装以及SSH配置
Git的安装以及SSH配置
11 0
|
9天前
|
Ubuntu Linux 网络安全
|
26天前
|
开发工具 git
git添加对勾图标 TortoiseGit安转配置
git添加对勾图标 TortoiseGit安转配置
19 0
|
1月前
|
Shell 开发工具 git
【Github】git bash将本地工程上传至github
【Github】git bash将本地工程上传至github
|
2月前
|
Linux 开发工具 git
IntelliJ IDEA配置git工作效率翻倍
IntelliJ IDEA 是一个强大的集成开发环境,用于编程语言如 Java、Kotlin、Scala 和其他多种语言。Git 是一个开源的分布式版本控制系统,用于追踪项目过程中的代码变更。
88 0
IntelliJ IDEA配置git工作效率翻倍
|
2月前
|
开发工具 数据库 数据安全/隐私保护
【Git】—— git的配置
【Git】—— git的配置
【Git】—— git的配置
|
3月前
|
网络安全 开发工具 数据安全/隐私保护
[Git]关联远程库的两种方法及配置
本篇文章对gitee公钥配置、同电脑连接多个gitee账号公钥配置等方法进行阐述, 如果文中阐述不全或不对的,多多交流。
72 0
[Git]关联远程库的两种方法及配置