【GIT】git 从ssh切换至https 从https切换至ssh|http免密码

git使用https或http方式设置记住用户名和密码的方法

https方式每次都要输入密码,非常不爽

按照如下设置可只输入一次

记住密码(默认15分钟):

git config --global credential.helper cache
 

自己定义时间(一小时后失效):

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

永久存储密码:

git config --global credential.helper store 

如果你的机器是和别人共用,则需要注意应该设置为logcal:

在git中,我们使用git config 命令用来配置git的配置文件,git配置级别主要有以下3类:

1、仓库级别 local 【优先级最高】

2、用户级别 global【优先级次之】

3、系统级别 system【优先级最低】

git config配置 - fireporsche - 博客园

git 从ssh切换至https 从https切换至ssh

1、从ssh切换至https 
git remote set-url origin(远程仓库名称) https://email/username/ProjectName.git 
2、从https切换至ssh 
git remote set-url origin git@email:username/ProjectName.git 

例子1:

$ git remote -v

origin https://[email protected]:8080/a/ceph-S (fetch)
origin https://[email protected]:8080/a/ceph-S (push)

切换:
git remote set-url origin [email protected]:8080:a/ceph-S

$ git remote -v
origin [email protected]:8080:a/ceph-S(fetch)
origin [email protected]:8080:a/ceph-S(push)

例子见英文原文。


3、查看当前是ssh还是https 
git remote -v

报错:

如切换后出现 remote: HTTP Basic: Access denied

git执行以下命令输入 git账号密码即可
git config --system --unset credential.helper

git ssh_exchange_identification: read: Connection reset by peer fatal 报错解决方案

这个错误一般是由ssh出错导致 切换为https地址的即可


参考:https://blog.csdn.net/z591102/article/details/104696748/

原文:

Changing a remote's URL The git remote set-url command changes an existing remote repository URL.

Tip: For information on the difference between HTTPS and SSH URLs, see "Which remote URL should I use?"

The git remote set-url command takes two arguments:

An existing remote name, for example, origin A new URL for the remote, for example: 

https://github.com/USERNAME/REPOSITORY_2.git

if you're updating to use HTTPS [email protected]:USER/REPOSITORY_2.git

SSH to HTTPS

if you're updating to use SSH Switching remote URLs from SSH to HTTPS Open Terminal (for Mac and Linux users) or the command line (for Windows users). Change the current working directory to your local project. List your existing remotes in order to get the name of the remote you want to change.

$ git remote -v

origin [email protected]:USERNAME/REPOSITORY.git (fetch)

origin [email protected]:USERNAME/REPOSITORY.git (push)

Change your remote's URL from SSH to HTTPS with the remote set-url command.

$ git remote set-url origin https://github.com/USERNAME/REPOSITORY_2.git

 Verify that the remote URL has changed.

$ git remote -v

Verify new remote URL

origin https://github.com/USERNAME/REPOSITORY2.git (fetch)

origin https://github.com/USERNAME/REPOSITORY2.git (push)

  The next time you git fetch, git pull, or git push to the remote repository, you'll be asked for your GitHub username and password.

If you have two-factor authentication enabled, you must create a personal access token to use instead of your GitHub password. You can use a credential helper so Git will remember your GitHub username and password every time it talks to GitHub.

HTTPS to SSH

Switching remote URLs from HTTPS to SSH Open Terminal (for Mac and Linux users) or the command line (for Windows users). Change the current working directory to your local project. List your existing remotes in order to get the name of the remote you want to change.

$ git remote -v

origin https://github.com/USERNAME/REPOSITORY.git (fetch)

origin https://github.com/USERNAME/REPOSITORY.git (push)

Change your remote's URL from HTTPS to SSH with the remote set-url command.

git remote set-url origin [email protected]:USERNAME/REPOSITORY2.git

Verify that the remote URL has changed.

$ git remote -v

Verify new remote URL

origin [email protected]:USERNAME/REPOSITORY2.git (fetch)

origin [email protected]:USERNAME/REPOSITORY2.git (push)

你可能感兴趣的:(git,ssh,http,github,运维)