最近看到很多人在配置Git时,遇到很问题,网上教程千篇一律。这儿自己单独记录一份。

Git配置SSH Key

1.检查本机是否有ssh key设置,切换到.ssh目录
  $ cd ~/.ssh 或cd .ssh

2.配置git用户名和邮箱,配置多个用户时添加 --add 参数
  $ git config --global --add user.name "username"
  $ git config --global --add user.email "email"

  $ git config --global --unset user.name "username"            #移除用户
  $ git config --global --unset user.email "email"               #移除邮箱

3.查看用户名和邮箱
  $ git config --list

(如果没有安装TortoiseGit则跳过)因为TortoiseGit和Git的冲突需要把TortoiseGit设置改正如下:
  1.在右键选择 TortoiseGit  ->  Settings  ->  Network  
  2.将SSH client指向  ~Git\usr\bin\ssh.exe  (Git安装路径下的\usr\bin\ssh.exe)

4.生成成对的私钥公钥
  $ ssh-keygen -t rsa -C "test@qq.com"
  注:生成id_rsa私钥公钥时需要命不同文件名,密码可设可不设。

5.添加ssh key到对应的GitHub或GitLab上面
  登录GitHub系统;点击右上角账号头像的“▼”→Settings→SSH kyes→Add SSH key。
  复制id_rsa.pub的公钥内容到Key填写框内。

6.测试公钥配置是否成功
  $ssh -T git@github.com  

  FQA
1.Git克隆代码需要输入密码?Git提交代码需要输入账号、密码的。
  tips:      1.Access denied.
          2.Authentication failed.
          3.Permission denied (publickey).
  说明:问题根源是TortoiseGit采用的是自己的ssh.exe生成密钥,与git的密钥生成方式不一致,导致密钥无效。
  解决:  1.重新配置用户名和邮箱,重新生成密钥,把密钥放入远程仓库中。
       2.检查TortoiseGit右键的TortoiseGit -> Settings -> Network设置,
        将SSH client指向 ~Git\usr\bin\ssh.exe

2.Git采用 http 方式(而不是ssh)clone/pull/push代码时,需要输入用户名密码,解决每次输入账号密码

  解决:执行存储密码命令
    $git config --global credential.helper store
  命令会在项目本地生成一个文本,记录账号和密码。使用上述的命令配置好之后,再操作一次git pull,然后它会提示输入账号和密码,这一次之后就不需要再次输入账号和密码了。

常用命令
$git clone url                     #克隆远程仓库
$git --version                    #查看git的版本信息
$git branch                     #查看本地所有分支
$git branch -a                   #查看所有的分支
$git branch -r                    #查看远程所有分支
$git branch dev                 #创建分支
$git branch -D master develop           #删除本地库develop

$git checkout dev                   #切换到本地dev分支
$git checkout -b dev               #创建分支并切换分支
$git checkout --track origin/dev           #切换到远程dev分支

$git commit                   #提交
$git commit -am "test"                #提交并且加注释
$git commit -m [message]               #提交暂存区到仓库区
$git commit -v                     #提交时显示所有diff信息

$git status                      #查看当前状态
$git remote show                 #查看远程库
$git remote add origin url              #添加远程库
$git remote show origin                 #显示远程库origin里的资源

$git pull                     #本地与服务器端同步
$git push origin master               #将文件给推到服务器上
$git push origin master:develop            #将本地库develop与服务器上的库进行关联
$git push origin master:my-dev             #将本地库与服务器上的库进行关联

$git merge origin/dev               #将分支dev与当前分支进行合并
$git add read.txt                  #将文件加入git
$git rm read.txt                   #从git中删除指定文件

更多命令参考:https://www.cnblogs.com/zengming/p/7733099.html

备注:
作者:Shengming Zeng
博客:http://www.cnblogs.com/zengming/

本文是原创,欢迎大家转载;但转载时必须注明文章来源,且在文章开头明显处给明链接。
<欢迎有不同想法或见解的同学一起探讨,共同进步>

Git配置SSH Key的更多相关文章

  1. git配置SSH Key,上传本地代码至github

    git配置全局的name和email git config --global user.name "name" git config --global user.email &qu ...

  2. git配置ssh key并从github.com拉取repos

    一.配置ssh key 1. 进入当前用户目录cd ~2. 生成ssh keyssh-keygen -t rsa -C "ABC@qq.com"ABC@qq.com账号必须是你登录 ...

  3. git 配置 .ssh key

    1.安装git软件: 2.打开本地git bash,使用如下命令生成ssh公钥和私钥对: ssh-keygen -t rsa -C 'xxx@xxx.com'    然后一路回车(-C 参数是你的邮箱 ...

  4. git 配置ssh key

    第一次生成 ssh key 进入ssh目录  cd ~/.ssh,再输入:ls ,查看文件,如果有.pub的文件,说明已有ssh key 如果没有, 则生成秘钥:ssh-keygen -t rsa - ...

  5. 个人在git配置SSH Key遇到的问题以及解决方案

    第一次用git上传代码到github,在这过程中遇到很多问题,在输入git命令的时候都小心翼翼,因为一不小心感觉就会出错.. 英语不好..在敲入git命令过程中各种错误提示勉强翻译下才看得懂 最后输入 ...

  6. Git 配置ssh key的步骤

    First start by setting up your own public/private key pair set. This can use either DSA or RSA, so b ...

  7. git for windows配置SSH key

    0. 前言 之前用过一段时间的git,后来迁移系统导致电脑中的git bash消失了,由于在上家公司版本管理用的svn,所以一直没有重新配置,目前工作中版本管理用的gitLab,后期计划将工作之外的精 ...

  8. 一台电脑上配置多个git的ssh key

    前几天公司的代码库全部迁移到了阿里云上,在配置git的ssh key的时候遇到了一个问题,那就是自己的密钥在添加时提示已经存在,原来是自己的个人账号上已经添加过这个密钥了,公司分配的账号就不能再添加这 ...

  9. 解决GitHub未配置SSH key提示错误信息

    git push -u origin master Permission denied (publickey). fatal: Could not read from remote repositor ...

随机推荐

  1. zabbix使用企业微信发送告警信息

    用qq邮箱发送告警信息一点都不方便,看到网上说也可以使用微信发送告警信息,所以就试了一下. 首先先试着在虚拟主机上给微信发送信息. 我们需要注册企业微信,注册时有一个地方需要注意,就是注册时选择组织, ...

  2. HotSpot VM GC 的种类

    collector种类 GC在 HotSpot VM 5.0里有四种: incremental (sometimes called train) low pause collector已被废弃,不在介 ...

  3. skipper filter 扩展开发

    skipper 的扩展包含filter类型的,以及Predicates ,当然script(lua)脚本也是 这次主要是filter类型的开发 filter 接口约定 格式 filter 至少需要包含 ...

  4. 算法设计与分析基础 (Anany Levitin 著)

    第1章 绪论 1.1 什么是算法 1.2 算法问题求解基础 1.2.1 理解问题 1.2.2 了解计算设备的性能 1.2.3 在精确解法和近似解法之间做出选择 1.2.4 算法的设计技术 1.2.5 ...

  5. Windows平台上使用Github搭建Git服务器的图文教程

    Git没有客户端服务器端的概念,但是要共享Git仓库,就需要用到通信协议,例如SSH协议(FTP , HTTPS , SFTP等协议也能实现Git共享,此文档不讨论),但是SSH有客户端服务器端,所以 ...

  6. 3d tech

    product Company    3D "smart cameras" such as the Gocator LMI Technologies (Delta, BC Cana ...

  7. git add -A /git add -u/git add .的用法

    git的指令详解 在git中有好多的指令,但是今天这几个指令就很容易忘记而且还容易混淆 git add -u <==> git add –update 提交所有被删除和修改的文件到数据暂存 ...

  8. LOJ 2553 「CTSC2018」暴力写挂——边分治+虚树

    题目:https://loj.ac/problem/2553 第一棵树上的贡献就是链并,转化成 ( dep[ x ] + dep[ y ] + dis( x, y ) ) / 2 ,就可以在第一棵树上 ...

  9. Go sql语句引号问题

    使用Go进行Mysql开发时,会遇到引号问题(实际上,与语言无关,只要使用sql就会遇到这些类似问题). 本文举例说明如何解决这些问题. Example1 第一例子演示格式字符是否要加引号. 代码如下 ...

  10. TL-WDR4310 v1 救砖

    一.引出ttl线 用万用表测量,可以确定“GND”,第一个pin(焊盘为方的)为“Tx”,接下去依次为“Rx”.”GND”.”VCC“. 二.工具准备 下载tptpd软件工具,图标为 三.开始刷机 1 ...