Ubuntu系統(tǒng)SSH免密連接Github配置全過程
一、相關(guān)介紹
1.1 Ubuntu簡介
Ubuntu 是一款流行的開源操作系統(tǒng),基于 Linux 內(nèi)核構(gòu)建,最初由 Mark Shuttleworth 創(chuàng)立的 Canonical Ltd. 在 2004 年發(fā)布。
Ubuntu 主要面向桌面、筆記本電腦和服務(wù)器用戶,提供了一個穩(wěn)定、用戶友好且功能豐富的計算環(huán)境。
1.2 Git簡介
Git 是一個分布式版本控制系統(tǒng),用于跟蹤在軟件開發(fā)過程中對文件所做的修改。
它是由 Linux 的創(chuàng)始人 Linus Torvalds 于 2005 年為了更好地管理 Linux 內(nèi)核的源代碼而創(chuàng)建的。
Git 設(shè)計的核心理念是為了高效、靈活地處理從小型到大型項目的版本控制。
Git 的主要特點包括:
分布式的版本控制:每個開發(fā)者的工作站上都有完整的項目歷史記錄副本,這意味著開發(fā)者可以在沒有網(wǎng)絡(luò)連接的情況下工作,進行提交、分支、合并等操作。數(shù)據(jù)完整性和高效性:Git 使用 SHA-1 散列函數(shù)來標(biāo)識系統(tǒng)中的每一個對象,這保證了數(shù)據(jù)的完整性和一致性。同時,Git 能夠高效地處理大型項目,具有快速的性能。分支和合并:Git 提供了強大的分支管理能力,允許開發(fā)者輕松地創(chuàng)建和合并分支,這極大地促進了并行開發(fā)。
1.3 Github簡介
GitHub 是一個全球最大的分布式版本控制系統(tǒng)和開源代碼托管平臺,它主要基于 Git 版本控制軟件構(gòu)建。
GitHub 提供了一個集中的環(huán)境,供軟件開發(fā)者存儲項目代碼、跟蹤更改、協(xié)作開發(fā)以及分享開源項目。
核心功能:
代碼托管: GitHub 提供了一個地方,開發(fā)者可以存儲和管理他們的代碼倉庫,無論是開源項目還是私有項目。版本控制: 使用 Git 來追蹤代碼的變化歷史,允許用戶回滾到以前的狀態(tài)或查看修改記錄。協(xié)作工具: 包括 Pull Requests(拉取請求)和 Issues(問題跟蹤),幫助團隊成員協(xié)同工作,進行代碼審查和討論。社區(qū): GitHub 是一個龐大的開發(fā)者社區(qū),用戶可以相互關(guān)注、參與討論、貢獻代碼和文檔,以及發(fā)現(xiàn)和參與開源項目。項目管理: 提供了項目板和里程碑等功能,幫助團隊規(guī)劃和跟蹤項目進展。持續(xù)集成/持續(xù)部署 (CI/CD): 通過 GitHub Actions 自動化構(gòu)建、測試和部署流程。安全和合規(guī): 包括代碼掃描、依賴關(guān)系審計和合規(guī)性工具,以維護代碼的安全和質(zhì)量。
二、本地環(huán)境介紹
2.1 本地環(huán)境規(guī)劃
本次實踐為個人測試環(huán)境,操作系統(tǒng)版本為centos7.6。
| hostname | 本地P地址 | 操作系統(tǒng)版本 | 內(nèi)核版本 | node版本 |
|---|---|---|---|---|
| ubuntu-001 | 192.168.3.251 | 22.04.1 LTS | 5.15.0-113-generic | v20.10.0 |
2.2 本次實踐介紹
1.本次實踐部署環(huán)境為個人測試環(huán)境,生產(chǎn)環(huán)境請謹慎;
2.在Ubuntu環(huán)境下通過SSH免密連接Github倉庫。
三、檢查本地環(huán)境
3.1 檢查本地操作系統(tǒng)版本
- 檢查本地操作系統(tǒng)版本
root@ubuntu-001:~# cat /etc/os-release PRETTY_NAME="Ubuntu 22.04.1 LTS" NAME="Ubuntu" VERSION_ID="22.04" VERSION="22.04.1 LTS (Jammy Jellyfish)" VERSION_CODENAME=jammy ID=ubuntu ID_LIKE=debian HOME_URL="https://www.ubuntu.com/" SUPPORT_URL="https://help.ubuntu.com/" BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" UBUNTU_CODENAME=jammy
3.2 檢查系統(tǒng)內(nèi)核版本
- 檢查系統(tǒng)內(nèi)核版本
root@ubuntu-001:~# uname -r 5.15.0-113-generic
四、Git本地環(huán)境配置工作
4.1 安裝Git工具
- 直接執(zhí)行以下命令,安裝git工具。
apt install git -y

- 查看git版本,默認安裝版本為
2.34.1。
root@ubuntu-001:~# git version git version 2.34.1
4.2 創(chuàng)建項目目錄
- 創(chuàng)建一個測試項目目錄
mkdir -p /data/myproject && cd /data/myproject
4.3 配置用戶信息
- 配置該git的使用者
git config --global user.name "jeven"
- 配置git使用者的郵箱
git config --global user.email "123456@qq.com"
- 使文本高亮
git config --global color.ui true
- 查看git配置信息
cat ~/.gitconfig

4.4 初始化本地倉庫
- 初始化當(dāng)前本地倉庫
git init

五、通過SSH連接Github
5.1 安裝ssh
- 執(zhí)行以下命令啊,安裝SSH。
apt install ssh -y
5.2 創(chuàng)建密鑰文件
使用ssh-keygen生成SSH密鑰時,程序首先提示確認密鑰的保存位置及文件名,通常默認為~/.ssh/id_rsa,按Enter接受即可。接著會讓你輸入密鑰口令,留空則無需密碼即可使用密鑰。整個過程中,只需一直按Enter接受默認選項。最終會在.ssh目錄下生成id_rsa私鑰和id_rsa.pub公鑰文件。
ssh-keygen -t rsa -C "郵箱地址"

5.3 將公鑰添加到Github
- 查看并復(fù)制本地公鑰
cat ~/.ssh/id_rsa.pub

登陸到GitHub上,右上角小頭像->Setting->SSH and GPG keys中,點擊new SSH key。


將本地的公鑰文件復(fù)制到key下面,點擊“Add SSH key”。

六、上傳項目到Github
6.1 在本地倉庫創(chuàng)建項目
- 在本地倉庫創(chuàng)建測試項目
root@ubuntu-001:/data/myproject# mkdir -p ./{aa,bb,cc}
root@ubuntu-001:/data/myproject# ls
aa bb cc
root@ubuntu-001:/data/myproject# echo "hello test" > bk.txt
6.2 將項目文件保存在暫存區(qū)
- 執(zhí)行以下命令,將將項目文件保存在暫存區(qū)。
git add .
6.3 將文件保存到本地倉庫
- 將暫存區(qū)文件保存在本地倉庫
git commit -m "1.0 master-jeven create item for test "

6.4 添加遠程倉庫
添加自己gitHub的遠程倉庫,其中倉庫地址填寫格式為“ git@github.com:Username/Repositories_Name.git”。
git remote add origin git@github.com:awakm618/myprojetc.git
6.5 上傳項目
執(zhí)行以下命令,將測試項目上傳到Github。
git push -u origin master

6.6 檢查項目
在Github倉庫中,查看剛才上傳的項目是否成功。

七、總結(jié)
配置SSH免密碼連接對于在Ubuntu系統(tǒng)中使用GitHub具有重要意義,它不僅提升了開發(fā)效率,還增強了安全性。通過SSH密鑰對進行身份驗證,避免了頻繁輸入密碼的繁瑣過程,同時由于私鑰保存在本地,相比密碼認證提供了更好的數(shù)據(jù)保護。設(shè)置SSH免密碼登錄至GitHub是每個開發(fā)者應(yīng)該掌握的基礎(chǔ)技能,它簡化了工作流程,確保了代碼提交過程的安全與便捷。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Linux使用fdisk調(diào)整分區(qū)大小實現(xiàn)磁盤在線擴容的實戰(zhàn)指南
在云平臺運維和服務(wù)器管理過程中,經(jīng)常會遇到磁盤空間不足的情況,本文將詳細介紹如何使用 Linux 內(nèi)置的 fdisk工具,在不丟失數(shù)據(jù)的前提下,對磁盤分區(qū)進行動態(tài)擴容,需要的朋友可以參考下2026-01-01
在Linux下用 mkdir 命令來創(chuàng)建目錄和子目錄的用法
這篇文章主要介紹了在Linux下用 mkdir 命令來創(chuàng)建目錄和子目錄的用法,具體一定的參考價值,有需要的可以了解一下。2016-10-10
linux應(yīng)用軟件編程之多任務(wù)(進程)詳解
文章介紹了進程與多任務(wù)的概念,涵蓋進程定義、狀態(tài)(運行、就緒、等待、僵尸等)、調(diào)度算法及資源回收機制,并列舉了ps、top、kill等系統(tǒng)命令和fork、exit等編程方法,說明如何創(chuàng)建、管理及終止進程2025-08-08

