git config credential.helper 记住保存账号密码、关闭取消密码自动存储

git 记住账号密码:

说明:

Git支持多个配置文件,包括全局配置文件、系统配置文件和仓库配置文件。

Git 使用简单的 .ini 文件作为配置文件,配置文件中记录了很多 Git 命令使用的各种选项和设置,Git 支持不同级别的配置文件,下面按照优先级从高到低的顺序对它们进行介绍:

.git/config 当前版本库特定的配置文件,可使用 --file选项修改,是Git的默认选项,此文件中的设置具有最高优先级。

~/.gitconfig 当前用户的配置文件,可使用 --global选项修改。

/etc/gitconfig 系统级别的配置文件,可使用 --system 选项修改,此文件中的设置优先级最低。(Windows 的etc路径在你安装git目录下,默认"C:\Program Files\Git\etc\gitconfig" )

官方说明:(git bash 提示)

fatal: No credential store has been selected.

Set the GCM_CREDENTIAL_STORE environment variable or the credential.credentialStore Git configuration setting to one of the followi
ng options:

  wincredman    : Windows Credential Manager (not available over network/SSH sessions)
  dpapi         : DPAPI protected files
  plaintext     : store credentials in plain-text files (UNSECURE)
  none          : disable internal credential storage

See https://aka.ms/gcm/credstores for more information.

官方说明:
https://github.com/git-ecosystem/git-credential-manager/blob/main/docs/credstores.md

下面Git-2.50.1-64-bit.exe 安装提示连接
https://github.com/GitCredentialManager/git-credential-manager
https://github.com/GitCredentialManager/git-credential-manager/blob/HEAD/docs/faq.md#about-the-project


注意:不要将配置文件路径设置到项目文件夹里,会泄露账号密码
注意:不要将配置文件路径设置到项目文件夹里,会泄露账号密码
注意:不要将配置文件路径设置到项目文件夹里,会泄露账号密码


一、常用

1.1 列出全部配置

git config --list --show-origin

1.2 命令行设置密码

git config --global user.password "Tutor@123"

1.3 移除credential

git config --global --remove-section credential

1.4 指定账号密码

git push -u username:password

命令windows无效

1.5 credential-helper-selector 界面设置

git credential-helper-selector

二、系统全部用户级

整台电脑上的所有用户都有效:(不推荐)
Windows 配置项写入到 "C:\Program Files\Git\etc\gitconfig" 文件中。
Linux 配置项写入到 "/etc/gitconfig" 文件中。

如果没有配置过,gitconfig 文件可能不存在

1.设置记录账户密码,模式为 store

git config --system credential.helper store

下面命令是缓存密码到指定文件

git config --global credential.helper "store --file ~/.git-credentials"

2.取消(删除)记录账号和密码

git config --system --unset credential.helper

3.查询 凭证存储模式

git config --system credential.helper

git config --system --list

git config --system -l

4.修改 配置文件

4.1 命令 方式修改

git config --file="C:\Program Files\Git\etc\gitconfig" --system credential.helper "store"

4.2 vim 方式修改

git config --edit --system

以上命令,不推荐使用:

1.需要在git bash上右键--"以管理员身份运行" 或 需要给 C:\Program Files\Git\下 etc 文件夹,everyone 完全控制权限,才能执行成功。
2.如果没有权限会提示 “error: could not lock config file C:/Program Files/Git/etc/gitconfig: Permission denied”


三、当前用户级

当前用户下,所有项目有效:
配置项写入到 "C:\Users\用户名\ .gitconfig" 文件中。

1.设置账号密码当前登录用户,全局项目 git 仓库有效

git config --global credential.helper store

git config --global credential.helper manager

git config --global credential.helper manager-core

2.取消(删除)记录账号和密码

git config --global --unset credential.helper

3.查询 凭证存储模式

git config --global credential.helper

git config --global --list

git config --global --list

git config --global -l

4.修改 配置文件

4.1 命令 方式修改

git config --file=~/.git_credentails --global credential.helper "store"

4.2 vim 方式修改

git config --edit --global

四、项目级

只在当前项仓库下有效,在有 .git 文件夹下执行:
配置项写入到项目的 ".git/config" 文件中。

1.设置账号密码当前项目 git 仓库有效

git config credential.helper store

如果没有--global,则在当前项目下的.git/config文件中添加。

2.取消(删除)记录账号和密码

git config --unset credential.helper

3.查询 凭证存储模式

git config credential.helper

git config --list

git config --local --list

git config -l

如果当前项目下没有设置,则显示 --global 的模式

4.修改 配置文件

git config --file=.git/config credential.helper "store"

五、临时记住密码

1)默认记住15分钟:

git config --global credential.helper cache

2)记住1小时:

git config --global credential.helper 'cache --timeout=3600'

3)缓存立即失效

git credential-cache exit

六、其他:

1.可选凭证存储模式

https://zhuanlan.zhihu.com/p/157751660

  • "cache" 模式
    会将凭证存放在内存中一段时间。 密码永远不会被存储在磁盘中,并且在15分钟后从内存中清除。
    官方详细用法:https://git-scm.com/docs/git-credential-cache

  • "store" 模式
    会将凭证用明文的形式存放在磁盘中,并且永不过期。
    这意味着除非你修改了你在 Git 服务器上的密码,否则你永远不需要再次输入你的凭证信息。
    这种方式的缺点是你的密码是用明文的方式存放在你的 home 目录下。查看命令:

cat ~/.git-credentials-store

请注意,存储凭证可能会带来安全风险,因为它会在你的本地机器上以纯文本形式保存你的密码。

  • "osxkeychain" 模式
    如果你使用的是 Mac,Git 还有一种 “osxkeychain” 模式,它会将凭证缓存到你系统用户的钥匙串中。
    这种方式将凭证存放在磁盘中,并且永不过期,但是是被加密的,这种加密方式与存放 HTTPS 凭证以及 Safari 的自动填写是相同的。

  • "manager" 模式
    如果你使用的是 Windows,你可以安装一个叫做 “Git Credential Manager for Windows” 的辅助工具。
    这和上面说的 “osxkeychain” 十分类似,但是是使用 Windows Credential Store 来控制敏感信息。

2.如果是 manager (wincred) 模式

https://www.jianshu.com/p/8d8fb86e415a

使用命令后,凭据会被记录到系统的凭据管理里。
位置: 控制面板--用户账户--凭据管理--windows凭据,查看和删除。

借用网友的图片:
image


3.命令行添加到管理凭据

1)删除某个存储在 “windows凭据” 的账号密码

cmdkey /delete:git:https://gitee.com

2)添加某个存储在 "windows凭据" 的账号密码

cmdkey /generic:git:http://gitee.com /user:%username% /password:%password%

1.或者可以在 “windows 凭据” 管理界面,点击 “添加普通凭证”
2.%username% 和 %password% 代表当前登录Windows用户的账号密码
3.提示“找不到元素”,可能是凭据名称输入错误

image

添加后,凭据管理界面,返回 或 重新点击“windows 凭据” 刷新显示,新的凭据

七、其他2
配置存储方式

git config --global credential.credentialStore file




来源:
https://blog.csdn.net/zhiyuan2021/article/details/124469882
https://blog.csdn.net/wzy901213/article/details/84334163
https://blog.csdn.net/yubin1285570923/article/details/87957959
https://blog.csdn.net/sean_8180/article/details/82710944
https://blog.51cto.com/u_5650011/5387085
https://blog.csdn.net/zhulianseu/article/details/122566902
https://zhuanlan.zhihu.com/p/343530933 (设置文件夹 everyone 权限,图文说明)
https://www.baidu.com/s?ie=UTF-8&wd=git+config+credential.helper+store+密码存放位置&tn=98012088_21_dg&ch=1 (百度AI)
https://geek-docs.com/git/git-questions/87_git_cant_type_password_in_git_bash.html
https://deepinout.com/git/git-questions/1683_git_username_and_password_in_command_for_git_push.html (1.3)
https://www.oryoy.com/news/jie-mi-git-shu-ru-mi-ma-bu-xian-shi-de-shen-mi-yuan-yin-ji-jie-jue-zhi-dao-a14989609.html (清除Windows凭据存储)
https://tutorialspoint.org.cn/how-to-set-git-username-and-password-in-gitbash
https://geek-docs.com/git/git-questions/414_git_how_do_i_force_git_to_prompt_for_credentials.html
https://geek-docs.com/git/git-questions/161_tk_1704600001.html(1.3、七)
https://deepinout.com/git/git-questions/313_git_how_do_i_make_git_ask_for_a_username_and_password_every_time_i_push.html (二.1)
https://git-scm.com/docs/git-credential-cache
https://cloud.tencent.com/developer/article/2431411 (1.3)
https://aibofan.com/about-git-pops-up-the-credential-helper-selector-window/ (1.5)



posted @ 2023-07-27 17:43  悟透  阅读(15303)  评论(0)    收藏  举报