git 使用遇见的问题汇总

1. 查看当前登录账号:

git config user.name

2. 查看当前登录邮箱:

git config user.email

3. 修改用户名和邮箱:

git config --global user.name "Your_username"
git config --global user.email "Your_email"

 

一、采用ssh方式关联本地账户和远程账户

$ ssh name@github.com   

name 是自己的github账户ID

Permission denied(publicey)

 

 原因:没有为当前的git账户和远程git账户创建密钥

ssh登陆原理

 解决办法:

1、首先查看本身是否有ssh密钥

  a: Open Git Bash.

   b: $ ls -al ~/.ssh     

  c:看目录下是否存在以下文件

没有就需要自己生成密钥

 

2、生成 SSH 密钥

$ ssh-keygen -t ed25519 -C "your_email@example.com"  
双引号里的内容可填可不填,填则填自己的邮箱,会将生成的密钥发送到该邮箱,其实在本地文件中也能查看到,所以不填也可以
该命令执行后出现三行提示输入,全都直接按回车即可
Enter a file in which to save the key (/c/Users/you/.ssh/id_ed25519):[Press enter]
Enter passphrase (empty for no passphrase): [Type a passphrase]
Enter same passphrase again: [Type passphrase again]


3、后台启动ssh代理客户端

$ eval `ssh-agent -s`
> Agent pid 59566
添加ssh私钥到ssh客户端
$ ssh-add ~/.ssh/id_ed25519 
id_ed25519 是私钥文件名,可以在~/.ssh目录下找到
id_ed25519_pub是公钥,复制公钥里的内容到剪贴板,待会要用到 


4 添加ssh公钥到github远程客户端(在网页中添加)

a 在网页登陆自己的github账户,找到下面这个Setting,到SSH and GpG KEYS

     

 

 

 

b 点击New ssh key

 

  c  将复制的公钥内容粘贴到下面框中

 

 d、点击框下面的Add SSH key即成功添加了公钥。

 

基本操作
克隆工程:
$ git clone git@github.com:ID_Name/Repository_name.git
ID_Name 是github账户名称 Repository_name是仓库名称


添加编辑文件test,将文件test添加到暂存区
git add test


将文件从暂存区提交到本地仓库
git commit -m 'commit test_file'



将本地仓库所有内容推送到 远程仓库
$ git remote add origin git@github.com:ID_Name/Repository_name.git    //关联本地仓库和远程仓库
添加后,远程库的名字就是origin,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程库。
下一步,就可以把本地库的所有内容推送到远程库上:
$ git push -u origin dev1       //将本地dev1分支推送到远程仓库



通过以下指令可以查看本地仓库当前关联的账户,解绑已经绑定的远程仓库
$ git remote -v         //查看所有远程库的信息
origin  git@github.com:ID_Name/Repository_name.git (fetch)
origin  git@github.com:ID_Name/Repository_name.git (push)
$ git remote rm origin     //根据名字删除,比如删除origin: 这只是解绑本地和远程的关系,对仓库本身没有任何内容的改变



二、采用https方式克隆远程仓库

问题1:OpenSSL SSL_read: Connection was aborted, errno 10053

打开Git命令页面,执行git命令脚本:修改设置,解除ssl验证

git config --global http.sslVerify "false"

问题2: Failed to connect to github.com port 443: Timed out
这个一般情况是网络问题导致连接超时
先用ping指令看看能否ping通github.com

  如果能ping通却不能clone ,可参考该篇文章 https://blog.csdn.net/u011476390/article/details/93411139

参考: https://www.jianshu.com/p/14027e35b900
 https://www.liaoxuefeng.com/wiki/896043488029600/898732864121440
posted @ 2021-03-22 20:53  victorywr  阅读(95)  评论(0编辑  收藏  举报