在系统上安装好 Git后,还需要配置Git 环境。 每台计算机上只需要配置一次,程序升级时会保留配置信息,也可以在任何时候再次通过运行命令来修改它们。

配置文件位置

Git 自带一个 git config 的工具来帮助设置配置变量,这些变量存储在三个不同的位置:

  1. /etc/gitconfig 文件: 包含系统上每一个用户及他们仓库的通用配置。 如果在执行 git config 时带上 --system 选项,那么它就会读写该文件中的配置变量。(由于它是系统配置文件,需要管理员或超级用户权限来修改它,所以一般不对该文件配置。)

  2. ~/.gitconfig 或 ~/.config/git/config 文件:只针对当前用户。 可以传递 --global 选项让 Git 读写此文件,这会对当前用户在系统上所有的仓库生效。

  3. 当前仓库的 Git 目录中的 config 文件(即 .git/config),只针对该仓库。 你可以传递 --local 选项让 Git 强制读写此文件,虽然默认情况下用的就是它。(当然,你需要进入某个 Git 仓库中才能让该选项生效。)

所以三个git配置文件作用域是有所区别的,我们一般对第二和第三个配置文件进行配置。每一个级别会覆盖上一级别的配置,所以 .git/config 的配置变量会覆盖 /etc/gitconfig 中的配置变量。

配置用户信息

安装完 Git 之后,要做的第一件事就是设置你的用户名和邮件地址。 这一点很重要,因为每一个 Git 提交都会使用这些信息,它们会写入到你的每一次提交中,不可更改:

$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com

检查配置信息

Git配置好后,如果想要检查你的配置,可以使用 git config --list 命令来列出所有 Git 当时能找到的配置。

$ git config --list
user.name=John Doe
user.email=johndoe@example.com
color.status=auto
color.branch=auto
color.interactive=auto
color.diff=auto
...

可以通过以下命令查看所有的详细配置以及它们所在的文件:

$ git config --list --show-origin

还可以通过输入 git config <key>来检查 Git 的某一项配置

$ git config user.name
John Doe

账号密码持久化

git在提交时每次都需要输入密码和账号信息,可以将账号和密码进行持久化存储,当git push的时候输入一次用户名和密码就会被记录,不需要每次输入,提高效率,进行一下配置:

git config --global credential.helper [mode]

这里的mode可以是<cache>,<store>和macos的<osxkeychain>以及windows的<wincred>值:

设置cache模式时,内置凭证系统把登录凭证信息保存在机器内存中一段时间,时间过后将被从内存中移除。一般是15分钟,可以在配置时添加参数去自定义--timeout 30000

设置store模式后,内置凭证系统把登录凭证信息保留在硬盘中,并且只要不主动清除则会一直保留,没有失效时间,除非修改密码或主动取消该模式。不过该模式存在安全问题在于密码信息是用明文保存。

设置osxkeychain模式时,此模式下的凭证助手会对登录凭证信息进行加密处理并存储。该模式只能在Mac系统使用

设置wincred模式时,该模式会对凭证信息处理放入到Windows凭据管理器中,但是还是可以获取用户信息。该模式只能在Windows操作系统中使用

删除持久化密码

如何删除持久化存储呢,这时候就需要把以前记录过的信息都删掉。

1. 列出信息,查看持久化存储方式

git config --list | grep credential # 显示
credential.helper=osxkeychain  # 第一种就是mac自带的钥匙串
或者
credential.helper=store        # 第二种是文件存储地址在 ~/.git-credentials

2. 删除信息

第一种需要进入启动台->其他->钥匙串访问,搜索git相关删掉目标信息。

第二种需要通过vim修改~/.git-credentials文件,删除以下类似信息:

http://username:password@git.xxx.cn
https://xxxx:xxxx@github.com

或者统一用这种方法移除设置。

# 移除设置
git config --global --unset credential.helper

Git版本控制管理(二)--git配置相关推荐

  1. Git版本控制管理——基本Git概念

    基本概念 版本库 Git版本库(repository)只是一个简单的数据库,其中包括所有用来维护与管理项目的修订版本和历史信息.而Git版本不仅会维护项目整个生命周期的完整副本,还会提供版本库本身的副 ...

  2. git 强制更新远程_版本控制管理工具git的常见指令合集

    今天小千就来给大家介绍一下git中比较常见的指令合集,方便大家使用git,建议收藏起来方便日后查阅. 一.常见的命令 git help <command> # 显示command的help ...

  3. 《Git版本控制管理(第2版)》——4.3 Git在工作时的概念

    本节书摘来自异步社区<Git版本控制管理(第2版)>一书中的第4章,第4.3节,作者:[美]Jon Loeliger , Matthew McCullough著,更多章节内容可以访问云栖社 ...

  4. 【Git版本控制管理】Gitee(码云)和GitHub的使用

    远程仓库的使用 文章目录 远程仓库的使用 使用码云(Gitee) 使用GitHub 远程仓库是指托管在因特网或其他网络中的你的项目的版本库. 你可以有好几个远程仓库,通常有些仓库对你只读,有些则可以读 ...

  5. java中git版本控制,git版本控制管理是什么?git如何实现版本控制?

    大家好,今天要跟大家讲的是关于git版本控制管理的一点小知识,git相信程序员小伙伴们都已经很熟悉了,很多项目开发都需要git,所以,git版本控制管理到底是干嘛的呢?Git又如何实现版本控制呢?下面 ...

  6. IDEA不显示git版本控制以及vcs的配置

    IDEA不显示git版本控制以及vcs的配置 1 进入idea的preferences(setting) 2 然后找到版本控制(version controller),如果上面一个git配置都没有,那 ...

  7. Git使用教程(二) — Git安装和使用

    Git使用教程(二) - Git安装和使用 使用目的:通过git管理github托管的项目代码 一.下载安装 GIt官网下载:https://www.git-scm.com/download/win ...

  8. Git本地版本控制管理(二)

    本系列为个人学习Git参照廖雪峰老师的笔记 本文内容:Git本地版本控制管理 参考笔记: https://www.liaoxuefeng.com/wiki/896043488029600 文章目录 1 ...

  9. Git 版本控制管理(一)

    Git 是一个分布式版本控制工具,它的作者 Linus Torvalds 是这样给我们介绍 Git  -- The stupid content tracker(傻瓜式的内容跟踪器) 关于 Git 的 ...

最新文章

  1. 电话双音频拨号声音中的干扰信号
  2. 在windows中安装python
  3. python程序员薪资-python工资高还是java?
  4. 书店POS机--细化迭代1--测试
  5. javascript焦点图(根据图片下方的小框自动播放)
  6. [转]Maven如何手动添加jar包到本地Maven仓库
  7. VMware Workstation 8 技巧集
  8. struts2解决动态多文件上传的问题(上传文件与数据库字段一一对应)(转)
  9. 解决IDEA GIT密码输入错误后,报Authentication failed ... 不再弹出输入框,提交更新失败
  10. 程序架构探讨—005 应用服务器集群的伸缩性之反向代理负载均衡
  11. 《数据结构》C++代码 堆(优先队列)
  12. 如何运行从github拉取的vue项目
  13. HTML参考系列(1)-文本格式化标签
  14. Excel2013数据透视表、Power View中的钻取
  15. 侧信道攻击,从喊666到入门之——Unicorn的环境构建
  16. Citrix Supportability Pack介绍
  17. Git基本操作(学习笔记)
  18. 中央电视台的糖尿病案例解说 作者:倪海厦
  19. Steam游戏导入vrPlus中运行
  20. Linux:更新 /usr/share/glib-2.0/schemas 目录

热门文章

  1. c++后端开发面试题
  2. 请求与通配符 mime 映射相匹配。请求映射到静态文件处理程序。如果有不同的前提条件,请求将映射到另一个处理程序。
  3. html 前端优化上传视频,前端上传组件Plupload使用---上传大视频(分片上传)
  4. Hung-Yi Lee homework[7]: Network Compression
  5. vue 项目中使 实现粒子动态 背景图
  6. 域名和URL是什么?域名和IP是一一对应的吗?
  7. 测不准原理?记一次Guava队列问题的排查
  8. 协方差矩阵的几何解释
  9. 计算机弹歌光年之外谱子,邓紫棋《光年之外》完整钢琴谱
  10. linux中安装中文拼音输入法过程