Proceso detallado de generación y configuración de claves públicas y privadas SSH simultáneamente para GitHub&Gitee&Gitlab&JihuLab

GitHub - Microsoft - github.com
Gitee - Open Source China - gitee.com
Gitlab - Compañía ucraniana de GitLab - gitlab.com
JihuLab - Gitlab operado por agentes chinos - gitlab.cn o jihulab.com

El uso de una clave pública SSH le permite utilizar una conexión más segura ( para usar , por ejemplo ) cuando se comunica entre su computadora y plataformas como GitHub , pero no es tan rápida como (por ejemplo ). Hoy aprendamos cómo usar claves públicas SSH para comunicarnos entre computadoras y plataformas como GitHub .Git的RemoteSSH地址[email protected]:king/example.gitHTTPShttps://gitee.com/king/example.git使用安全连接配置的详细过程

1. Generar claves públicas y privadas SSH

1.1 Cancelar configuración global

Si lo configuró directamente en TortoiseGit o utilizó el siguiente comando para configurar el nombre de usuario global y el correo electrónico de usuario.

$ git config --global user.name   "你的名字"
$ git config --global user.email  "你的邮箱"

Puede utilizar el siguiente comando para borrar la configuración global [Recomendado]

$ git config --global --unset user.name "你的名字"
$ git config --global --unset user.email "你的邮箱"

Utilice el comando git config --global --list para comprobar si ha borrado correctamente la configuración global : si el usuario y el correo electrónico no aparecen , significa que la configuración global se ha borrado correctamente.

1.2 Generar claves públicas y privadas SSH

Después de especificar el nombre de la clave privada en el comando ssh-keygen , se generarán un par de claves públicas y privadas SSH al mismo tiempo.La que tiene el sufijo .pub es la clave pública.
Por ejemplo, gitee_id_rsa es la clave privada y gitee_id_rsa.pub es la clave pública.

1. La ubicación de la clave privada gitee_id_rsa se configura en el archivo de configuración. Después de que el desarrollador ejecuta manualmente el comando ssh-keygen para generarla, se almacena en el directorio ~/.ssh de la máquina local [C:\Users\username\ .ssh] directorio. La clave privada es la tarjeta de identificación del usuario, que lo identifica de forma única, consérvela con cuidado y no la revele.

2. Configure la clave pública gitee_id_rsa.pub en la plataforma de alojamiento de código correspondiente (como GitHub&Gitee&Gitlab&JihuLab) 3. Al

enviar el código, confirme la identidad del usuario y la plataforma de envío verificando las claves públicas y privadas SSH correspondientes.

Generar claves públicas y privadas SSH

【此处邮箱123456@qq.com不是默认,要修改成开发者个人配置的】
1、生成一个Gitee用的SSH-Key。
ssh-keygen -t rsa -C123456@qq.com-f ~/.ssh/gitee_id_rsa

2、生成一个GitHub用的SSH-Key。
ssh-keygen -t rsa -C123456@qq.com-f ~/.ssh/github_id_rsa

3、生成一个GitLab用的SSH-Key。
ssh-keygen -t rsa -C '123456@qq.com' -f ~/.ssh/gitlab_en_id_rsa

4、生成一个极狐(JihuLab)用的SSH-Key
ssh-keygen -t rsa -C '123456@qq.com' -f ~/.ssh/gitlab_id_rsa


注意输入生成SSH-key指令后,需要按回车3次,表示empty,即“空”,“空”代表没有密码。

rsa en el comando ssh-keygen es un algoritmo para generar claves . También puede reemplazar otros algoritmos para generar claves ssh según sus necesidades .
Por ejemplossh-keygen -t ed25519 -C "[email protected]" 这里使用的就是ed25519算法, 之后到对应平台重新添加公钥即可

1.3 Captura de pantalla del proceso de generación de claves públicas y privadas SSH de GitLab (para otras plataformas, simplemente reemplace el comando ssh-keygen)

Insertar descripción de la imagen aquí

1.4 Contenido de la clave privada gitee_id_rsa y la clave pública gitee_id_rsa.pub

Clave privada gitee_id_rsaClave pública
Insertar descripción de la imagen aquí
gitee_id_rsa.pub
Insertar descripción de la imagen aquí

1.5 La clave pública SSH y la clave privada finalmente generadas por GitHub&Gitee&Gitlab&JihuLab

Insertar descripción de la imagen aquí
De la misma manera, GitHub, Gitee y JihuLab también repiten el mismo proceso anterior y simplemente reemplazan el comando ssh-keygen de la plataforma correspondiente , que no se describirá nuevamente aquí.

Para conocer el proceso correspondiente entre GitHub y Gitee , consulte mi artículo: Git configura dos claves SSH diferentes para Gitee y GitHub al mismo tiempo .

2. Especifique el archivo de configuración de clave privada de GitHub&Gitee&Gitlab&Jihu

Debido a que & GitHub& Gitee& Gitlabse 极狐(JihuLab)configura al mismo tiempo SSH公私钥, es diferente de configurar solo una plataforma por separado. Para hacer esto 避免混淆不同平台的SSH公私钥, debe crear un nuevo archivo en ~/.sshel directorio y agregar el siguiente contenido ( completar y especificar )【即C:\Users\用户名\.ssh目录】configHostHostNamegit服务器的域名IdentityFile私钥的路径

# github
# ssh -T git@github.com
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_id_rsa





#2023-3-3 00:57:06
# gitee
# ssh -T git@gitee.com
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitee_id_rsa



#极狐第一种
#2023-4-5 22:37:31  jihulab
#ssh -T git@gitlab.cn
Host gitlab.cn
Hostname altssh.jihulab.com
User git
Port 443
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitlab_id_rsa
   
#极狐第二种
#2023-4-5 22:37:31  jihulab
#ssh -T git@jihulab.com
Host jihulab.com
Hostname altssh.jihulab.com
User git
Port 443
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitlab_id_rsa
  




  
#2023-4-6 01:00:05
#ssh -T git@gitlab.com
#gitlab 
Host     gitlab.com
HostName gitlab.com
#User git
#Port 443
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitlab_en_id_rsa

3. Agregue la clave pública correspondiente a GitHub&Gitee&Gitlab&JihuLab. (Se le pedirá que ingrese una contraseña para autenticación al agregar)

Para conocer el proceso de agregar las claves públicas correspondientes a GitHub y Gitee , consulte mi artículo: Git configura dos claves SSH diferentes para Gitee y GitHub al mismo tiempo 2. Generar clave pública SSH - 4. Agregar las claves públicas correspondientes a Gitee y GitHub. (Se le pedirá que ingrese una contraseña para autenticación al agregar)

3.1 Configurar la clave pública gitee_id_rsa.pub en Gitee

//查看生成的Gitee公钥gitee_id_rsa.pub,复制Gitee公钥gitee_id_rsa.pub
//或者直接去C:\Users\用户名\.ssh目录下直接用文本编辑器打开Gitee公钥gitee_id_rsa.pub,复制Gitee公钥gitee_id_rsa.pub的内容
cat  ~/.ssh/gitee_id_rsa.pub

Copie la clave pública de Gitee gitee_id_rsa.pub:
Insertar descripción de la imagen aquí
haga clic en Configuración de la cuenta
Insertar descripción de la imagen aquí
Insertar descripción de la imagen aquí

Agregue el título y la clave pública de Gitee al contenido de gitee_id_rsa.pub y haga clic en Aceptar , luego ingrese la contraseña para la autenticación :
Insertar descripción de la imagen aquí
Insertar descripción de la imagen aquí
Agregado exitosamente :
Insertar descripción de la imagen aquí

3.2 Configurar la clave pública github_id_rsa.pub en GitHub

//查看生成的GitHub公钥github_id_rsa.pub,复制GitHub公钥github_id_rsa.pub
cat  ~/.ssh/github_id_rsa.pub

Haga clic en Configuración
Insertar descripción de la imagen aquí
, haga clic en Nueva clave SSH
Insertar descripción de la imagen aquí
, ingrese el título y copie y pegue el contenido de la clave pública github_id_rsa.pub y haga clic en Agregar clave SSH
Insertar descripción de la imagen aquí

3.3 Configurar la clave pública gitlab_en_id_rsa.pub en Gitlab

//查看生成的Gitlab公钥gitlab_en_id_rsa.pub,复制Gitlab公钥gitlab_en_id_rsa.pub
cat  ~/.ssh/gitlab_en_id_rsa.pub

Haga clic en Preferencias
Insertar descripción de la imagen aquí
Insertar descripción de la imagen aquí

Haga clic en Claves SSH,
Insertar descripción de la imagen aquí
haga clic en Agregar nueva clave,
Insertar descripción de la imagen aquí
complete la información relevante de la clave pública de Gitlab gitlab_en_id_rsa.pub y haga clic en Agregar clave :
Insertar descripción de la imagen aquí

3.4 Configurar la clave pública gitlab_id_rsa.pub en JihuLab

//查看生成的极狐(JihuLab)公钥gitlab_id_rsa.pub,复制极狐(JihuLab)公钥gitlab_id_rsa.pub
cat  ~/.ssh/gitlab_id_rsa.pub

Haga clic en Preferencias,
Insertar descripción de la imagen aquí
haga clic en Clave SSH
Insertar descripción de la imagen aquí
, haga clic en Agregar nueva clave,
Insertar descripción de la imagen aquí
complete la clave - título - tipo de uso - tiempo de vencimiento y otra información - haga clic en Agregar clave

Insertar descripción de la imagen aquí

4. Compruebe si la configuración es exitosa.

4.1 Comando de detección

Cuando lo use por primera vez, verá ¿Está seguro de que desea continuar conectándose (sí/no/[huella digital]? Ingrese . [Indica confirmación para agregar el host a la lista de confianza]

//检测GitHub
ssh -T git@github.com

//检测gitee
ssh -T git@gitee.com

//检测极狐(JihuLab)【中国代理商运营的Gitlab】
ssh -T git@gitlab.cn
或
ssh -T git@jihulab.com

//检测Gitlab
ssh -T git@gitlab.com

4.2 Captura de pantalla de la ejecución exitosa del comando de detección

Insertar descripción de la imagen aquí
Insertar descripción de la imagen aquí

5. Tutorial introductorio de la línea de comandos de Git SSH y HTTPS

Nota : SSH [email protected]:djcking/myapplication01.gity HTTPS https://gitee.com/djcking/myapplication01.gitse pueden copiar y pegar directamente desde el almacén.以哪种方式配置,就复制使用哪一种。

5.1 SSH (usado junto con el tutorial anterior)

configuración global de git

git config --global user.name "GiHub用户名"
git config --global user.email "GitHub邮箱"
a:还没有git仓库,创建 git 仓库(此处以myapplication01仓库为例):
//1-创建myapplication01仓库
mkdir myapplication01

//2-进入myapplication01
cd myapplication01

//3-初始化仓库
git init 

//3-创建README.md文件
touch README.md

//4-add README.md
git add README.md

//5-commit
git commit -m "first commit"

//6-绑定远端仓库
git remote add origin [email protected]:djcking/myapplication01.git

//7-推送到远端origin的master分支
git push -u origin "master"
或者
git push -u origin main 
【因为GitHub之前的默认分支一直就是master,但2020年10月后GitHub宣布:新建项目的默认分支将从
master逐步改为main。】

b:已有git仓库:

//1-进入已经存在的git仓库(此处以myapplication01仓库为例)
//cd existing_git_repo
cd myapplication01

//2-绑定远端仓库
git remote add origin [email protected]:djcking/myapplication01.git

3-推送到远端origin的master分支
git push -u origin "master"
或者
git push -u origin main 
【因为GitHub之前的默认分支一直就是master,但2020年10月后GitHub宣布:新建项目的默认分支将从
master逐步改为main。】

更简单的使用方式: Directo 建远端仓库后, la inicialización (git init) y el almacén vinculante (git remoto clone到本地add 无需origin) se pueden utilizar directamente.

5.2 HTTPS (Git debe configurarse en modo HTTPS)

configuración global de git

git config --global user.name "GiHub用户名"
git config --global user.email "GitHub邮箱"
a:还没有git仓库,创建 git 仓库(此处以myapplication01仓库为例):
//1-创建myapplication01仓库
mkdir myapplication01

//2-进入myapplication01
cd myapplication01

//3-初始化仓库
git init 

//3-创建README.md文件
touch README.md

//4-add README.md
git add README.md

//5-commit
git commit -m "first commit"

//6-绑定远端仓库
git remote add origin https://gitee.com/djcking/myapplication01.git

//7-推送到远端origin的master分支
git push -u origin "master"
或者
git push -u origin main 
【因为GitHub之前的默认分支一直就是master,但2020年10月后GitHub宣布:新建项目的默认分支将从
master逐步改为main。】

b:已有git仓库:
//1-进入已经存在的git仓库(此处以myapplication01仓库为例)
//cd existing_git_repo
cd myapplication01

//2-绑定远端仓库
git remote add origin https://gitee.com/djcking/myapplication01.git

//3-推送到远端origin的master分支
git push -u origin "master"
或者
git push -u origin main 
【因为GitHub之前的默认分支一直就是master,但2020年10月后GitHub宣布:新建项目的默认分支将从
master逐步改为main。】

更简单的使用方式: Directo 建远端仓库后, la inicialización (git init) y el almacén vinculante (git remoto clone到本地add 无需origin) se pueden utilizar directamente.

6. Agregue el archivo README.md usando la línea de comando de Git (SSH)

未推送README.md的Gitee仓库MyApplication
Insertar descripción de la imagen aquí
Insertar descripción de la imagen aquí
往Gitee仓库MyApplicationCaptura de pantalla del README.md后comando enviado
Insertar descripción de la imagen aquí
推送README.md后Gitee仓库MyApplication
Insertar descripción de la imagen aquí

6.1 Antes de crear README.md

Insertar descripción de la imagen aquí

6.2 toque README.md

Insertar descripción de la imagen aquí

6.3 git agregar README.md

git add 命令可将该文件的修改添加到暂存区。
通过运行 git add 命令,你可以告诉 Git 哪些文件的修改应该包含在下一次提交(commit)中。
将文件从workdir(工作目录)中添加到缓存区index(即暂存区stage)(出现红色感叹号)

//*表示所有文件 
git add *

//.表示当前目录下的所有文件 
git add .

//也可以直接添加目录
 git add 目录名

//添加一个或多个文件 
git add 文件1名 文件2名

//强制提交某个文件(不管.gitignore是否包含了这个文件)
//.gitignore文件是用来配置  忽略不需要上传的文件  的文件
git add -f 文件名

Insertar descripción de la imagen aquí

6.4 git commit -m “agregar README.md”

git commit - m" 代码提交信息"

代码提交信息Equivalente a 代码中的注释.

Después de la ejecución, será 根据摘要算法(SHA1)生成一个不重复的40位提交ID字符串, por defecto solo será 显示7位, 唯一识别你的每一次提交aquí está 731adec.
Insertar descripción de la imagen aquí

6.5 git push -u origen “maestro”

Aquí 之前第一次初始化仓库时,第6步,已经绑定过仓库, así que aquí 无需再绑定, ya no es necesario ejecutarlogit remote add origin [email protected]:djcking/myapplication01.git .直接push到远端仓库

注意:
1. Aquí -u 参数generalmente se 第一次 pushusa cuando estás con, lo que equivale a establecer el primer contacto 某个本地分支(这里是master分支)con . 对应的远端分支(orgin/master)Luego 再push这个本地分支vaya al almacén remoto y 无需再加-u参数ejecútelo directamente git push origin "master".

2. Si git derriba esta rama, puede enviarla después de la modificación sin agregar el parámetro -u y ejecutarla directamente , git push -u origin "master"porque la conexión anterior 已经建立过entre la rama local y la rama remota correspondiente también existirá, vaya al almacén remoto . y ejecutarlo directamente .第一次联系pull到本地workspace再push这个本地分支无需再加-u参数git push origin "master"

3. (Algunas instrucciones de "Introducción a GitHub y práctica")
Insertar descripción de la imagen aquí

git push -u origin master
或者
git push -u origin main 
【因为GitHub之前的默认分支一直就是master,但2020年10月后GitHub宣布:新建项目的默认分支将从
master逐步改为main。】

Insertar descripción de la imagen aquí
推送README.md后de Gitee仓库MyApplication
Insertar descripción de la imagen aquí
本地仓库mastery远端仓库origin\master

命令行Ver a continuación:

//查看本地分支
git branch 

//查看所有分支(包含本地和远端)
git branch -a

Insertar descripción de la imagen aquí
图形化IDEVer a continuación:
Insertar descripción de la imagen aquí

7. Adjunto se encuentran otros blogs relacionados escritos por mí.

Problemas con el uso de la línea de comando de git para enviar proyectos a
la rama maestra y a la rama principal de GitHub
5 pasos para cambiar la rama predeterminada de GitHub de Maestra a Principal (reimpreso)

Supongo que te gusta

Origin blog.csdn.net/qyfx123456/article/details/132715619
Recomendado
Clasificación