git本地免密码和账号pull、push

本文介绍如何在Windows、Linux和Mac系统下配置Git凭证存储,通过创建.git-credentials文件实现自动填充GitHub用户名和密码,简化后续的pull和push操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

说明:%HOME%,一般为C:\users\Administrator,也可以是你自己创建的系统用户名目录,反正都在C:\users\中

一.windows下:

需要创建一个.git-credentials文件,由于在Window中不允许直接创建以"."开头的文件,所以需要借助git bash进行,步骤如下:

1.打开git bash客户端,进入%HOME%目录(即C:\users\自己的电脑用户名,一般为C:\users\Administrator)

2.用touch创建文件 .git-credentials。

3.touch创建文件后用vim打开并编辑此文件,命令如下:

打开并编辑:vim .git-credentials(i-进入编辑模式)
编辑内容:https://{username}:{password}@github.com(登录账号,邮箱和密码)
保存编辑内容:按<ESC>键退出编辑模式,:wq  <回车>保存并退出

4.之后在配置

git config --global credential.helper store

打开%HOME%目录下的.gitconfig文件,会发现多了如下内容:

[credential]
helper = store
以上配置好后,关闭git bash重新打开,之后pull一个项目,首次还是要输入用户名及密码,之后pull成功后,再以后pull和push都不需要在输入用户名及密码了,此后打开新建的.git-credentials文件发现在https://{username}:{password}@github.com之上多了一条类似的文本。

 

二.Linux或者Mac下方法:

基本步骤和上面类似,就是linux下面可以直接创建.git-credential文件,命令如下:

  1. 创建文件,进入文件,输入内容:

    cd ~
    touch .git-credentials
    vim .git-credentials
    https://{username}:{password}@github.com
  2. 在终端下输入:

    git config --global credential.helper store
  3. 打开~/.gitconfig文件,会发现多了一项:

    [credential]
    helper = store

本地Windows下还可以通过添加环境变量来配置,参考网址:http://www.cnblogs.com/ballwql/p/3462104.html

### 清除 Git本地账号信息 对于 HTTP 模式的 Git 账号登录,可以通过以下方法清除本地保存的用户名密码: #### 查看当前使用的凭证辅助工具 运行以下命令来查看当前配置的凭证存储方式: ```bash git config credential.helper ``` 这一步可以帮助确认当前系统中是否启用了 `wincred` 或其他类似的凭证管理器[^1]。 #### 取消缓存的用户名密码策略 如果发现使用了 `wincred` 来管理凭证,则可以禁用它: ```bash git config --global --unset credential.helper ``` 接着,通过以下命令卸载已有的凭据管理器并清空缓存数据: ```bash git credential-manager uninstall ``` 以上操作会移除 Windows 平台上的 Git 凭证缓存。 #### 删除 `.gitconfig` 配置文件中的敏感信息 `.gitconfig` 是全局配置文件,默认位于用户的主目录下(如 Linux/Windows 中为 `$HOME/.gitconfig`)。此文件可能包含了之前设置过的用户名、邮箱以及其他与认证有关的信息。直接编辑或者删除该文件能够彻底消除这些绑定关系。 --- 针对 SSH 方式下的多账号场景,以下是具体处理办法: 当涉及多个远程仓库时(比如个人 GitHub 企业内部 GitLab),通常推荐采用基于主机名区分的不同公私钥对来进行身份验证[^5]。 假设已经分别为两个账户创建好了各自的 ssh 密钥对 (`id_rsa_personal`, `id_rsa_work`) ,那么需要修改 ~/.ssh/config 文件如下所示: ```plaintext Host github.com-personal HostName github.com User git IdentityFile ~/.ssh/id_rsa_personal Host github.com-work HostName github.com User git IdentityFile ~/.ssh/id_rsa_work ``` 这样就可以分别利用 `github.com-personal` `github.com-work` 地址去访问对应的资源而无需担心冲突问题[^3]。 最后提醒一点,在某些 IDE (例如 IntelliJ IDEA)里内置有独立于终端 session 处理 git 动作的功能模块;因此即使你在命令行成功更改了默认行为,仍需同步调整软件内的相应选项以免遇到意外状况[^4]。 ```bash # 示例:重新加载 global settings 后测试新的无密码交互流程 ssh -T git@github.com-personal ssh -T git@github.com-work ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值