git全局与单仓库的密码管理
概要
在使用git时,有默认的全局配置,每个仓库也有自己的配置,在使用时常常傻傻分不清楚,现在进行一个简单的整理记录。
一般情况下全局配置中的git账号和邮箱通常设置成自己的,其他仓库再根据项目需要进行单独配置,这样可以比较大程度的保证个人与工作能分的开。
有关全局配置和单独配置的的关系机制为:
- 单仓库会继承全局配置中的所有配置项(可通过git命令、配置文件配置)
- 单仓库可以覆盖全局配置中的单个配置项,在使用时优先使用仓库自己的配置项(可通过git命令、配置文件配置)
- 有关密码的设定
- git支持将密码进行持久化保存(指定时间、永久),保存在指定位置,加密或明文
- 有些第三方软件,比如sourcetree则会将密码保存到自己指定的文件中
接下来演示一下,全局配置和单仓库的独有配置,以及如何灵活配置密码。
1 全局配置的查看、修改、删除
1.1 全局配置的查看
通过全局配置文件查看全局配置,在win下一般在C:\Users\你的用户名\.gitconfig文件中,而linux则一般在/etc/gitconfig中
[user]name = xxxemail = xxx
[difftool "sourcetree"]cmd = '' \"$LOCAL\" \"$REMOTE\"
[mergetool "sourcetree"]cmd = "'' "trustExitCode = true
通过git命令查看全局配置
# git config --global --l
git config --global --listuser.name=xxx
user.email=xxx
difftool.sourcetree.cmd='' "$LOCAL" "$REMOTE"
mergetool.sourcetree.cmd=''
mergetool.sourcetree.trustexitcode=true
1.2 全局配置的修改
通过git命令进行修改
git config --global xxx.xxx xxx
git config --global xxx.xxx.xxx xxx
git config --global xxx.xxx.xxx.xxx xxx
在配置文件内显示为,可以发现是根据.进行分割,注意无法直接设置git config --global xxx xxx,必须要有层级才能设定:
[xxx]xxx = xxx
[xxx "xxx"]xxx = xxx
[xxx "xxx.xxx"]xxx = xxx
1.3 全局配置的删除
可以直接操作C:\Users\你的用户名\.gitconfig文件进行删除,也可以使用git命令进行删除:
git config --global --unset xxx.xxx.xxx.xxx xxx
2 单仓库配置的查看、修改、删除
单仓库的查看、修改、删除与全局的基本一致,只是配置文件位置不同、以及没有--global选项,单仓库的配置文件一般在在你的git仓库\.git\config文件中,这里就不一一演示单仓库配置的查看、修改、删除了,命令如下
# 查看
git config --list
# 修改
git config xxx.xxx xxx
# 删除
git config --unset xxx.xxx.xxx.xxx xxx
3 git凭证(也就是密码)存储模式
git是凭证通过credential.helper来配置密码存储的,有关credential.helper的配置大致有以下几项:cache模式、 store模式、osxkeychain模式、wincred模式、manager模式。
使用如下命令查看当前使用的是什么存储模式,也可以直接查看配置文件:
# 全局
git config --global credential.helper
# 单仓库
git config credential.helper
3.1 cache模式
cache模式:缓存模式,可以将密码缓存在内存中一段时间,默认15min,可以进行配置。
- Linux:适用
- windows:不适用,具体原因这里不展开讲解,网上说是因为git-credential-cache通过Unix套接字进行通信,所以不支持。
使用方式(也可以直接编辑配置文件,参考第一部分):
1.临时缓存(默认15分钟):
# 全局配置
git config --globale credential.helper cache
# 单仓库配置
git config credential.helper cache
2.自定义缓存时间(秒)
# 全局配置
git config --globale credential.helper 'cache --timeout=3600'
# 单仓库配置
git config credential.helper 'cache --timeout=3600'
3.2 store模式
store模式:永久存储。- Linux:则将密码以明文存放在
~/.git-credentials文件中 - windows:则将密码以明文存放在
C:\Users\你的用户名\.git-credentials文件中
- Linux:则将密码以明文存放在
使用方式(也可以直接编辑配置文件,参考第一部分):
# 全局配置
git config --globale credential.helper store
# 单仓库配置
git config credential.helper store
执行git pull,然后输入正确的密码,打开C:\Users\你的用户名\.git-credentials文件查看:
https://你的用户名:你的密码@gitee.com
因为是明文存储,所以这种方式不是很建议。
3.3 osxkeychain模式
osxkeychain模式:永久存储,仅针对于Mac,位置是系统用户的钥匙串中,但是会加密。
没接触过mac,不展开讲解
3.4 wincred模式
wincred模式:永久存储。- Linux:不适用
- windows:与store模式类似,将用户信息存储到
Windows凭据中,不在存储在C:\Users\你的用户名\.git-credentials文件中,这样你就看不到明文密码了,懒人推荐。
使用方式(也可以直接编辑配置文件,参考第一部分):
# 全局配置
git config --globale credential.helper wincred
# 单仓库配置
git config credential.helper wincred
执行git pull,然后输入正确的密码,打开Windows凭据文件查看:
internet地址或网络地址:git:https://你的用户名@gitee.com
用户名:你的用户名
密码:⚪⚪⚪⚪⚪⚪
3.5 manager模式
manager模式:永久存储,将密码以加密形式存放在Windows凭据管理器中,并且永不过期,需要安装一个Git Credential Manager的辅助工具,windows中,推荐使用该模式。
首先安装Git Credential Manager的辅助工具,然后修改配置:
# 全局配置
git config --globale credential.helper manager
# 单仓库配置
git config credential.helper manager
执行git pull,然后输入正确的密码,打开Windows凭据文件查看:
Internet 地址或网络地址:git:https://gitee.com
用户名:PersonalAccessToken
4 第三方软件(sourcetree)密码的存储
用过sourcetree的人都知道它有多好用,尽管我们不经常切换账号和修改密码,但是初始化仓库后输错密码或用户名(并非提交用户名,而是git的登陆账号)时想要修改还是很不方便的,那么该如何修改用户名和密码呢?
4.1 sourcetree修改登录的账号
sourcetree将用户名保存在了哪里呢?
答案是:C:\Users\你的用户\AppData\Local\Atlassian\SourceTree 目录下的userhosts文件,当你想删除或更新某个用户名时,来这里进行操作即可。
4.2 sourcetree修改登录的密码
那么sourcetree将密码保存到了哪里呢?
答案是:C:\Users\你的用户\AppData\Local\Atlassian\SourceTree\passwd,当你想删除或更新某个密码时,来这里进行操作即可。
相关文章:
git全局与单仓库的密码管理
概要 在使用git时,有默认的全局配置,每个仓库也有自己的配置,在使用时常常傻傻分不清楚,现在进行一个简单的整理记录。 一般情况下全局配置中的git账号和邮箱通常设置成自己的,其他仓库再根据项目需要进行单独配置&a…...
IDEA的使用(一) (IntelliJ IDEA 2022.1.3版本)
目录 1. IDEA项目结构 2. 模块的导入操作 2.1 正规操作 2.2 取巧操作 2.3 出现乱码 2.4 模块改名 3. 代码模板的使用 后缀补全(Postfix Completion)、实时模板(Live Templates)菜单里面什么介绍都有,可以自学&a…...
javaee SpringMVC文件上传 项目结构
引入依赖 <?xml version"1.0" encoding"UTF-8"?><project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/POM/4.0.0…...
JavaScript DOM 函数大全详解(使用最新的 JS 语法)
JavaScript DOM 函数大全详解(使用最新的 JS 语法) JavaScript 的 Document Object Model(DOM)是用于操作网页内容的编程接口。在最新的 JavaScript 语法下,我们有很多方便和高效的方法来处理 DOM。下面是一些常用 DO…...
Stm32_标准库_8_ADC_光敏传感器_测量具体光照强度
ADC简介 测量方式 采用二分法比较数据 IO通道 ADC基本结构及配置路线 获取数字变量需要用到用到光敏电阻的AO口,AO端口接在PA0引脚即可 测得的模拟数据与实际光照强度之间的关系为 光照强度 100 - 模拟量 / 40;代码: 完整朴素代码: #in…...
基于SSM的固定资产管理系统的设计与实现
末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用JSP技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…...
Leetcode---364场周赛
题目列表 2864. 最大二进制奇数 2865. 美丽塔 I 2866. 美丽塔 II 2867. 统计树中的合法路径数目 一、最大二进制奇数 这题只要你对二进制有了解(学编程的不会不了解二进制吧),应该问题不大,这题要求最大奇数,1.奇数:只要保证…...
使用 Powershell 检索不理解的命令
使用 Powershell 检索不理解的命令 尝试使用 Powershell 完成 Powershell 的命令行 使用 Powershell 时,有时您会忘记某个 cmdlet 或想要了解哪些 cmdlet 可用。在这种情况下,最好在互联网上查找,但您也可以使用 Powershell 函数来完成。 以…...
基于 FPGA 的机器博弈五子棋游戏
基于 FPGA 的机器博弈五子棋游戏 一,设计目的 五子棋是一种深受大众喜爱的游戏,其规则简单,变化多端,非常富有趣味性 和消遣性。棋类游戏在具备娱乐性、益智性的同时也因为其载体大多是手机, 电脑等移动互联网设备导致现代社会低头族等现象更加严重,危害青少年的身 体健康…...
uCOSIII实时操作系统 三 移植
目录 uCOSIII简介: 准备工作: 准备基础工程: UCOSIII工程源码: UCOSIII移植: 向基础工程中添加相应的文件夹 向工程中添加分组 常见问题: 下载验证: uCOSIII简介: UCOS-I…...
机器学习之SGD, Batch, and Mini Batch的简单介绍
文章目录 总述SGD(Stochastic Gradient Descent)(随机梯度下降)Batch (批量)mini Batch (迷你批量) 总述 SGD, Batch, and Mini Batch是可用于神经网络的监督学习计算权重更新的方案,即∆wij。 SGD(Stochastic Gradi…...
Windows电脑上的多开器与分布式存储系统的关系
Windows电脑上的多开器和分布式存储系统是两个不同的概念,二者之间没有直接的关系。 多开器是一种软件,它可以在Windows电脑上让用户同时运行多个同一应用程序的实例。多开器通常用于游戏玩家和应用程序测试人员等需要同时运行多个实例的用户。 分布式…...
积分球可以用于什么光谱光学检测
积分球是光测量的主要工具之一。积分球可以同时捕获一个光源发出的所有辐射。 1.光源测量 积分球可以用于测量光源的光通量、色温、光效等参数。通过将光源放置在积分球的入口处,球内的光线经过多次反射后形成均匀的照度分布,然后使用光度计或光谱仪对光…...
【力扣面试题】URL化
👑专栏内容:力扣刷题⛪个人主页:子夜的星的主页💕座右铭:前路未远,步履不停 目录 一、题目描述二、题目分析1、使用String内部方法2、使用StringBuilder 一、题目描述 题目链接:URL化 编写一种…...
计算机网络基础(二):物理层、数据链路层及网络层
一、物理层 1.物理层 物理层面的通信标准可以概括划分为与网络基础设施有关的标准和与被传输物理信号有关的标准两类。 网络基础设施的标准:鉴于物理层面的消息互通也是物理层应该兑现的服务,因此物理层的标准还会包括针脚的用途、线缆的材料与设计等…...
小白自学—网络安全(黑客技术)笔记
目录 一、自学网络安全学习的误区和陷阱 二、学习网络安全的一些前期准备 三、网络安全学习路线 四、学习资料的推荐 想自学网络安全(黑客技术)首先你得了解什么是网络安全!什么是黑客! 网络安全可以基于攻击和防御视角来分类…...
2.2.3 vim操作合集
1 vim VIM 是 Linux 系统上一款文本编辑器,学习 VIM 最好的文档,应该是阅读学习 VIM 的帮助文档,可以使用本地的帮助文件(vim--->:help),或者使用在线帮助文档。同时针对vim的使用,相应的相书籍也很多,如下 2 vim操作模式 命令模式:默认模式,该模式下可以移动光标…...
解决 Jenkins 性能缓慢的问题~转
解决 Jenkins 性能缓慢的问题 Docker中文社区 计算机技术与软件专业技术资格持证人 2 人赞同了该文章 没有什么比缓慢的持续集成系统更令人沮丧的了。它减慢了反馈循环并阻止代码快速投入生产。虽然像使用性能更好的服务器可以为您争取时间,但您最终必须投资…...
Matrix卡顿优化之IdleHandlerLagTracer源码分析
前言 IdleHandler是Android系统为开发者提供的一种在消息队列空闲时运行任务的机制,通过IdleHandler执行的任务优先级低于主线程优先级,会在主线程任务执行完成后再执行,所以适用于一些实时性要求不高的任务,通常用于Android启动…...
(ubuntu)Docker 安装linux 详情过程
文章目录 前言Docker 安装linux第一步:使用dokcker 拉取镜像:第二步:创建本地目录(用于挂载)第三步:(上传配置文件)修改配置文件第四步:创建docker容器第五步: 测试本地连…...
【Linux】shell脚本忽略错误继续执行
在 shell 脚本中,可以使用 set -e 命令来设置脚本在遇到错误时退出执行。如果你希望脚本忽略错误并继续执行,可以在脚本开头添加 set e 命令来取消该设置。 举例1 #!/bin/bash# 取消 set -e 的设置 set e# 执行命令,并忽略错误 rm somefile…...
系统设计 --- MongoDB亿级数据查询优化策略
系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log,共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题,不能使用ELK只能使用…...
测试markdown--肇兴
day1: 1、去程:7:04 --11:32高铁 高铁右转上售票大厅2楼,穿过候车厅下一楼,上大巴车 ¥10/人 **2、到达:**12点多到达寨子,买门票,美团/抖音:¥78人 3、中饭&a…...
MVC 数据库
MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...
根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:
根据万维钢精英日课6的内容,使用AI(2025)可以参考以下方法: 四个洞见 模型已经比人聪明:以ChatGPT o3为代表的AI非常强大,能运用高级理论解释道理、引用最新学术论文,生成对顶尖科学家都有用的…...
html-<abbr> 缩写或首字母缩略词
定义与作用 <abbr> 标签用于表示缩写或首字母缩略词,它可以帮助用户更好地理解缩写的含义,尤其是对于那些不熟悉该缩写的用户。 title 属性的内容提供了缩写的详细说明。当用户将鼠标悬停在缩写上时,会显示一个提示框。 示例&#x…...
人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式
今天是关于AI如何在教学中增强学生的学习体验,我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育,这并非炒作,而是已经发生的巨大变革。教育机构和教育者不能忽视它,试图简单地禁止学生使…...
[免费]微信小程序问卷调查系统(SpringBoot后端+Vue管理端)【论文+源码+SQL脚本】
大家好,我是java1234_小锋老师,看到一个不错的微信小程序问卷调查系统(SpringBoot后端Vue管理端)【论文源码SQL脚本】,分享下哈。 项目视频演示 【免费】微信小程序问卷调查系统(SpringBoot后端Vue管理端) Java毕业设计_哔哩哔哩_bilibili 项…...
ArcGIS Pro+ArcGIS给你的地图加上北回归线!
今天来看ArcGIS Pro和ArcGIS中如何给制作的中国地图或者其他大范围地图加上北回归线。 我们将在ArcGIS Pro和ArcGIS中一同介绍。 1 ArcGIS Pro中设置北回归线 1、在ArcGIS Pro中初步设置好经纬格网等,设置经线、纬线都以10间隔显示。 2、需要插入背会归线…...
VSCode 使用CMake 构建 Qt 5 窗口程序
首先,目录结构如下图: 运行效果: cmake -B build cmake --build build 运行: windeployqt.exe F:\testQt5\build\Debug\app.exe main.cpp #include "mainwindow.h"#include <QAppli...
