GitHub - Microsoft - github.com
Gitee - 中国のオープンソース- gitee.com
Gitlab - ウクライナの GitLab 会社- gitlab.com
JihuLab - 中国のエージェントが運営する Gitlab - gitlab.cn または jihulab.com
SSH 公開キーを使用すると、コンピュータとGitHubなどのプラットフォームとの間で通信するときに、より安全な接続(たとえばGit的Remote
を使用) を使用できますが、 (たとえば) ほど高速ではありません。今日は、 SSH 公開キーを使用してコンピューターとGitHubなどのプラットフォーム間で通信する方法を学びましょう。SSH地址
[email protected]:king/example.git
HTTPS
https://gitee.com/king/example.git
使用安全连接配置的详细过程
1. SSH 公開キーと秘密キーを生成する
1.1 グローバル設定のキャンセル
TortoiseGit で直接設定した場合、または次のコマンドを使用してグローバル user.name と user.email を設定した場合。
$ git config --global user.name "你的名字"
$ git config --global user.email "你的邮箱"
次のコマンドを使用してグローバル設定をクリアできます [推奨]
$ git config --global --unset user.name "你的名字"
$ git config --global --unset user.email "你的邮箱"
git config --global --listコマンドを使用して、グローバル設定が正常にクリアされたかどうかを確認します。ユーザーと電子メールが表示されない場合は、グローバル設定が正常にクリアされたことを意味します。
1.2 SSH 公開キーと秘密キーを生成する
ssh-keygenコマンドで秘密鍵名を指定すると、 SSH 公開鍵と秘密鍵のペアが同時に生成されます(サフィックス .pub が付いているものが公開鍵です)。
たとえば、gitee_id_rsaは秘密キー、gitee_id_rsa.pubは公開キーです。
1. 秘密キー gitee_id_rsa の場所は構成ファイルで構成され、開発者が ssh-keygen コマンドを手動で実行して生成した後、ローカル マシンの ~/.ssh ディレクトリ [C:\Users\username\] に保存されます。 .ssh] ディレクトリ。秘密鍵は利用者を一意に識別するためのIDカードであり、他人には漏らさないように大切に保管してください。
2. 公開キー gitee_id_rsa.pub を、対応するコード ホスティング プラットフォーム (GitHub&Gitee&Gitlab&JihuLab など) に設定します。 3.
コードを送信するときは、対応する SSH 公開キーと秘密キーを検証して、ユーザー ID と送信プラットフォームを確認します。
SSH公開鍵と秘密鍵を生成する
【此处邮箱123456@qq.com不是默认,要修改成开发者个人配置的】
1、生成一个Gitee用的SSH-Key。
ssh-keygen -t rsa -C ‘123456@qq.com’ -f ~/.ssh/gitee_id_rsa
2、生成一个GitHub用的SSH-Key。
ssh-keygen -t rsa -C ‘123456@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,即“空”,“空”代表没有密码。
ssh-keygenコマンドのrsa はキーを生成するためのアルゴリズムです。必要に応じて、他のアルゴリズムを置き換えてssh キーを生成することもできます。
例えばssh-keygen -t ed25519 -C "[email protected]" 这里使用的就是ed25519算法, 之后到对应平台重新添加公钥即可
1.3 GitLab の SSH 公開キーと秘密キーを生成するプロセスのスクリーンショット (他のプラットフォームの場合は、ssh-keygen コマンドを置き換えるだけです)
1.4 秘密鍵 gitee_id_rsa と公開鍵 gitee_id_rsa.pub の内容
秘密鍵 gitee_id_rsa公開
鍵 gitee_id_rsa.pub
1.5 GitHub&Gitee&Gitlab&JihuLab によって最終的に生成された SSH 公開キーと秘密キー
同様に、GitHub、Gitee、JihuLabも上記と同じプロセスを繰り返し、対応するプラットフォームの ssh-keygen コマンドを置き換えるだけですが、ここでは再度説明しません。
GitHubとGiteeの間の対応するプロセスについては、私の記事「Git は Gitee と GitHub に 2 つの異なる SSH キーを同時に構成する」を参照してください。
2. GitHub&Gitee&Gitlab&Jihuのconfig秘密キー設定ファイルを指定
GitHub
& Gitee
& Gitlab
&は同時に极狐(JihuLab)
設定されるためSSH公私钥
、1 つのプラットフォームだけを個別に設定するのとは異なり、ディレクトリに新しいファイルを作成し、次の内容を追加する避免混淆不同平台的SSH公私钥
必要があります(入力して指定します)。~/.ssh
【即C:\Users\用户名\.ssh目录】
config
Host
HostName
git服务器的域名
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. 対応する公開キーを GitHub&Gitee&Gitlab&JihuLab に追加します。(追加時に認証用のパスワードの入力を求められます)
対応する公開キーをGitHubとGiteeに追加するプロセスについては、私の記事を参照してください: Git は Gitee と GitHub に 2 つの異なる SSH キーを同時に構成します 2. SSH 公開キーを生成します- 4. 対応する公開キーを Gitee と GitHub に追加しますGitHub。(追加時に認証用のパスワードの入力を求められます)
3.1 Gitee で公開キー gitee_id_rsa.pub を設定する
//查看生成的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
Gitee 公開キー gitee_id_rsa.pub をコピーします:
[アカウント設定] をクリックします。
タイトルとGitee 公開キー gitee_id_rsa.pub の内容を追加し、 「OK」をクリックして、認証用のパスワードを入力します。
正常に追加されました。
3.2 GitHub で公開キー github_id_rsa.pub を構成する
//查看生成的GitHub公钥github_id_rsa.pub,复制GitHub公钥github_id_rsa.pub
cat ~/.ssh/github_id_rsa.pub
[設定]をクリックし
、[新しい SSH キー]をクリックし
て、タイトルを入力し、公開キー github_id_rsa.pub の内容をコピーして貼り付け、[SSH キーの追加] をクリックします。
3.3 Gitlab で公開キー gitlab_en_id_rsa.pub を構成する
//查看生成的Gitlab公钥gitlab_en_id_rsa.pub,复制Gitlab公钥gitlab_en_id_rsa.pub
cat ~/.ssh/gitlab_en_id_rsa.pub
「設定」をクリックします
「SSH キー」をクリックし、
「新しいキーの追加」をクリックして、Gitlab 公開キー gitlab_en_id_rsa.pubの関連情報を
入力して、 「キーの追加」をクリックします。
3.4 JihuLab で公開キー gitlab_id_rsa.pub を設定する
//查看生成的极狐(JihuLab)公钥gitlab_id_rsa.pub,复制极狐(JihuLab)公钥gitlab_id_rsa.pub
cat ~/.ssh/gitlab_id_rsa.pub
「Preferences」をクリックし、
「SSH Key」をクリックして
、「Add New Key」をクリックし、
キー - タイトル - 使用タイプ - 有効期限およびその他の情報を入力し、「Add Key」をクリックします。
4. 設定が成功したかどうかを確認します
4.1 検出コマンド
初めて使用するときは、「接続を続行してもよろしいですか (yes/no/[指紋]?)」と表示されます。「 yes」と入力します。[ホストを信頼できるリストに追加する確認を示します]
//检测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 検出コマンドが正常に実行されたスクリーンショット
5. Git SSH および HTTPS コマンドラインの入門チュートリアル
注: SSH[email protected]:djcking/myapplication01.git
と HTTPS は、https://gitee.com/djcking/myapplication01.git
ウェアハウスから直接コピーして貼り付けることができます。以哪种方式配置,就复制使用哪一种。
5.1 SSH (上記のチュートリアルと組み合わせて使用)
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。】
更简单的使用方式
: 直接建远端仓库后
、初期化 (git init) およびバインディング ウェアハウス (git Remote clone到本地
add 无需
Origin) を直接使用できます。
5.2 HTTPS (Git は HTTPS モードで構成する必要があります)
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。】
更简单的使用方式
: 直接建远端仓库后
、初期化 (git init) およびバインディング ウェアハウス (git Remote clone到本地
add 无需
Origin) を直接使用できます。
6. Git コマンドライン (SSH) を使用してファイル README.md を追加します。
未推送README.md的Gitee仓库MyApplication
往Gitee仓库MyApplication
プッシュされたREADME.md后
コマンド
推送README.md后
のスクリーンショットGitee仓库MyApplication
6.1 README.mdを作成する前に
6.2 README.md をタッチします
6.3 git add 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 文件名
6.4 git commit -m “README.md を追加”
git commit - m
「代码提交信息
」
代码提交信息
に相当します代码中的注释
。
実行後は になります根据摘要算法(SHA1)生成一个不重复的40位提交ID字符串
。デフォルトでは 、 のみになります显示7位
。唯一识别你的每一次提交
ここでは です731adec
。
6.5 git Push -u 原点「マスター」
ここで之前第一次初始化仓库时,第6步,已经绑定过仓库
、ここで无需再绑定
、もう実行する必要はありませんgit remote add origin [email protected]:djcking/myapplication01.git
。直接push到远端仓库
注意
:
1.ここでは-u 参数
、通常、第一次 push
と一緒にいるときに使用されます。これは、某个本地分支(这里是master分支)
との对应的远端分支(orgin/master)
ファーストコンタクトを確立することに相当します。次に、再push这个本地分支
リモート ウェアハウスに移動して、无需再加-u参数
それを直接実行しますgit push origin "master"
。
2.このブランチが git によってプルダウンされている場合、ローカル ブランチと対応するリモート ブランチ間の以前git push -u origin "master"
の接続も存在するため、-u パラメーターを追加せずに変更後にプッシュして直接実行できます。直接実行してください。已经建立过
第一次联系
pull到本地workspace
再push这个本地分支
无需再加-u参数
git push origin "master"
3. (「GitHub の開始と実践」からの一部の手順)
git push -u origin master
或者
git push -u origin main
【因为GitHub之前的默认分支一直就是master,但2020年10月后GitHub宣布:新建项目的默认分支将从
master逐步改为main。】
推送README.md后
とGitee仓库MyApplication
本地仓库master
_远端仓库origin\master
命令行
以下をご覧ください:
//查看本地分支
git branch
//查看所有分支(包含本地和远端)
git branch -a
图形化IDE
以下をご覧ください:
7. 私が書いた他の関連ブログを添付します
Git コマンド ラインを使用して GitHub
マスター ブランチとメイン ブランチにプロジェクトを送信する際の問題
GitHub のデフォルト ブランチをマスターからメイン ブランチに変更する 5 つのステップ (再版)