云记
首页
常用软件
操作系统
技术分享
东云生态
  • 技术网站
  • 其他
关于我们
首页
常用软件
操作系统
技术分享
东云生态
  • 技术网站
  • 其他
关于我们
  • 前端

    • WebStorm
    • Node.js
    • Nginx
  • 后端

    • IntelliJ IDEA
    • Java(JDK)
    • jd-gui
    • Maven
    • 项目部署
    • Nacos
  • 数据库

    • DataGrip
    • Navicat
    • PL/SQL
    • MySQL
    • Redis
  • 中间件

    • Tomcat
  • 版本控制

    • Git
    • TortoiseSVN
  • 自动化部署工具

    • Jenkins
  • SSH工具

    • MobaXterm
  • 其他

    • Beyond Compare 4
    • Jetbrains系列产品激活
    • 科学上网
    • Frp内网穿透

Git

下载

官网下载

最新版本

安装

Windows安装

傻瓜式安装,什么都不用勾选,仅需选择安装路径。

Linux安装

这里不建议使用yum安装,因为此方式安装后版本很旧。所以推荐手动安装。

  1. 新建git文件夹:mkdir /usr/local/git
  2. 下载tar.gz包,上传至/usr/local/git目录下,或者直接在改目录下下载。
  3. 解压:tar -zxvf git-2.41.0.tar.gz
  4. 安装依赖,耐心等待安装完成,中途出现提示的时候输入y并按回车。
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
  1. 安装编译源码所需依赖的时候,yum自动帮你安装了git,这时候你需要先卸载这个旧版的git。耐心等待删除完成,中途出现提示的时候输入y并按回车。
yum remove git
  1. 编译git源码。耐心等待编译完成,中途可能会花费几分钟的时间。
  • 切换到/usr/local/git-2.41.0目录下(在解压后的文件夹下执行,例如此处是在/usr/local/git-2.41.0目录下)
make prefix=/usr/local/git all
  1. 安装git至/usr/local/git路径
make prefix=/usr/local/git install
  1. 配置环境变量
  • 打开环境变量配置文件
vim /etc/profile
  • 在底部加上git相关配置
export PATH=$PATH:/usr/local/git/bin
  • 刷新环境变量
source /etc/profile
  1. 安装完成,验证。
git --version

配置

  1. 配置环境变量,右键「计算机」→「属性」→「高级系统设置」→「环境变量」。
  • 在系统变量中新建一条配置
    • 变量名:GIT_HOME
    • 变量值:D:\software\Git
  • 在系统变量的 Path 中新建 2 条配置
    • %GIT_HOME%\cmd
    • %GIT_HOME%\bin
  1. 设置用户名称和邮箱。
    • git config --global user.name 'xiaozhe'
    • git config --global user.email 'yunji@dongyunit.com'

在客户端生成公钥和私钥

在使用 SSH 协议访问仓库之前,需要先在客户端生成公钥,然后将生成的公钥配置到服务端账户/仓库的设置中。

可以按如下命令来生成:

ssh-keygen -t ed25519 -C "xxxxx@xxx.com"
# Generating public/private ed25519 key pair.
# Enter file in which to save the key (/c/Users/pyd/.ssh/id_ed25519):

注意

这里的 xxxxx@xxx.com 只是生成的 sshkey 的名称,并不约束或要求具体命名为某个邮箱。现网上大部分教程均讲解的使用邮箱生成,其开始的初衷仅仅是为了便于辨识,所以使用了邮箱。

按照提示完成 3 次回车,即可生成。

  • 查看公钥:~/.ssh/id_ed25519.pub
# ssh-ed25519 AAAAC3NzaC1lZDI1...Xxxxxx/ yunji@dongyunit.com 
  • 查看私钥:~/.ssh/id_ed25519
-----BEGIN OPENSSH PRIVATE KEY-----
b3BlbnNza*******QIDBA==
-----END OPENSSH PRIVATE KEY-----

在服务端增加公钥

增加账户公钥

1. Gitee(码云)

(1)用户可以通过主页右上角 「个人设置」->「安全设置」->「SSH公钥」->「添加公钥」 ,添加生成的 public key 添加到当前账户中;

(2)添加后,在终端(Terminal)中输入 ssh -T git@gitee.com;

(3)首次使用需要确认并添加主机到本机 SSH 可信列表。若返回 Hi XXX! You've successfully authenticated, but GITEE.COM does not provide shell access. 内容,则证明添加成功。 添加成功后,就可以使用 SSH 协议对 Gitee 仓库进行操作了。

2. GitHub

(1)复制生成后的 ssh key,通过仓库主页 「Setting」->「SSH and GPG keys」->「New SSH key」 ,添加生成的 public key 添加到仓库中;

(2)添加后,在终端(Terminal)中输入 ssh -T git@github.com;

(3)首次使用需要确认并添加主机到本机 SSH 可信列表。若返回 Hi XXX! You've successfully authenticated, but GitHub does not provide shell access. 内容,则证明添加成功。 添加成功后,就可以使用 SSH 协议对 GitHub 仓库进行操作了。

增加仓库公钥(部署公钥)

下面分别讲解 Gitee(码云)部署公钥配置 和 GitHub部署公钥配置:

1. Gitee(码云)

(1)复制生成后的 ssh key,通过仓库主页 「管理」->「部署公钥管理」->「添加部署公钥」 ,添加生成的 public key 添加到仓库中;

(2)添加后,在终端(Terminal)中输入 ssh -T git@gitee.com;

(3)首次使用需要确认并添加主机到本机 SSH 可信列表。若返回 Hi XXX! You've successfully authenticated, but GITEE.COM does not provide shell access. 内容,则证明添加成功。 添加成功后,就可以使用 SSH 协议对 Gitee 仓库进行操作了。

2. GitHub

(1)复制生成后的 ssh key,通过仓库主页 「Setting」->「Deploy keys」->「Add deploy key」 ,添加生成的 public key 添加到仓库中;

(2)添加后,在终端(Terminal)中输入 ssh -T git@github.com;

(3)首次使用需要确认并添加主机到本机 SSH 可信列表。若返回 Hi XXX! You've successfully authenticated, but GitHub does not provide shell access. 内容,则证明添加成功。 添加成功后,就可以使用 SSH 协议对 GitHub 仓库进行操作了。

仓库的 SSH Key 和账户 SSH Key 的区别?

和仓库"只读"权限的 SSH Key 相比,账户的 SSH Key 同时具备推送/拉取的权限,对用户创建/参与的仓库均能使用,使用起来更加方便。

提示

仓库的 sshkey 只针对仓库,且我们仅对仓库提供了部署公钥,即仓库下的公钥仅能拉取仓库,这通常用于生产服务器拉取仓库的代码。 而用户的 key 则是针对用户的,用户添加了 key 就对用户名下的仓库和用户参加了的仓库具有权限,一般而言,用户的 key 具有推送和拉取的权限,而仓库的 key 则只具有拉取权限。

附:ed25519算法密钥生成教程

ssh-keygen -t ed25519 -C "XXX" (XXX为标记,随便起个名称)
(回车,返回结果)
Generating public/private ed25519 key pair.
Enter file in which to save the key (/home/xxx/.ssh/id_ed25519): (文件保存位置,一般默认就好)
(回车,返回结果)
Enter passphrase (empty for no passphrase): (密码,如果想使用时不输密码,留空即可)
(回车,返回结果)
Enter same passphrase again: (再次确认密码,留空的还是直接回车)
(回车,返回结果)
Your identification has been saved in /home/xxx/.ssh/id_ed25519.
Your public key has been saved in /home/xxx/.ssh/id_ed25519.pub.
The key fingerprint is:
SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx XXX(这几位是最上面填写的名称,在在公钥最后显示)
The key's randomart image is:(返回的随即生成图形)
+--[ED25519 256]--+
|                 |
|                 |
|                 |
|                 |
| xxxxxxxxxxxxxxx |
|ooooooooooooo    |
|                 |
|                 |
|                 |
+----[SHA256]-----+

这样,ed25519 算法的密钥就生成完毕了,id_ed25519.pub 是公钥,粘贴到 github 之类的网站即可,id_ed25519 是私钥,一定要保存好,且不能随便给他人。

最后更新时间:
贡献者: xiaozhe
下一篇
TortoiseSVN