当前位置:   article > 正文

Git版本控制管理(二)--git配置_git config --global credential.helper

git config --global credential.helper

在系统上安装好 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 提交都会使用这些信息,它们会写入到你的每一次提交中,不可更改:

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

检查配置信息

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

  1. $ git config --list
  2. user.name=John Doe
  3. user.email=johndoe@example.com
  4. color.status=auto
  5. color.branch=auto
  6. color.interactive=auto
  7. color.diff=auto
  8. ...

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

$ git config --list --show-origin

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

  1. $ git config user.name
  2. 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. 列出信息,查看持久化存储方式

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

2. 删除信息

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

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

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

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

  1. # 移除设置
  2. git config --global --unset credential.helper
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/207922
推荐阅读
相关标签
  

闽ICP备14008679号