2021-05-12 14:32:11
Ubuntu 18.04下GitHub和Git的安裝設定入門教學
Git是在GPL的開源許可下發布的。它可以通過網際網路免費使用。您可以使用Git來進行版本管理,而無需支付一分錢。由於它是一個開放原始碼,您可以下載其原始碼並根據您的要求執行更改。本文通過圖文並茂的形式介紹如何在Ubuntu 18.04 Linux下安裝Git,並且設定與GitHub上的倉庫連結。
Git可以說是目前世界上最先進的分散式版本控制系統,主要功能:儲存程式碼檔案,保留歷史紀錄,可以回到過去,多端共用,團隊共同作業等。
Git使用一種稱為安全雜湊函數(SHA1)的常用加密雜湊函數來命名和標識其資料庫中的物件。 每個檔案和提交都會在結帳時通過校驗和進行校驗和檢索。 這意味著,在不知道Git的情況下,不可能在Git資料庫中更改檔案,日期和提交訊息以及任何其他資料。
熟練使用Git/Github是網際網路公司程式設計師的必備技能之一。當開發中遇到困難或者職業技能遇到瓶頸時,Github簡直是相見恨晚的利器,身為一線開發者,如果沒有接觸過Github,的確是一大損失。
考慮到很多Linux公社的網友可能對版本控制工具和Linux命令列工具都不是非常了解,我寫了一個簡單的文章來讓大家學會入門使用方法。本課程就將帶領大家敲開Git與Github的大門。
第一部分:GitHub相關基礎知識
GitHub的簡單使用與建立GitHub賬號 請參考https://www.linuxidc.com/Linux/2015-02/114121.htm
接著建立一個GitHub開發者應用
1. 點選右上角你的頭像,在下拉式選單中選擇Settings。
2. 在左邊的Personal settings(個人設定)中選擇OAuth Apps。
3. 點選上圖中的綠色按鈕Register a new application,填寫應用名稱,你的主頁,應用描述和回撥URL。
4. 點選上圖中的綠色按鈕Register applciation註冊應用,註冊成功後,記住下一頁中的Client ID和Client Secret值。
OK,現在你就可以使用此Client ID和Client Secret做GitHub三方登入了。
第二部分:Git相關基礎知識
Ubuntu Linux下安裝Git很簡單
使用命令apt-get來安裝
linuxidc@linuxidc:~$ sudo apt install git
設定使用者名稱密碼
linuxidc@linuxidc:~$ git config --global user.name "linuxidc"
linuxidc@linuxidc:~$ git config --global user.email root@linuxidc.net
此時,Home目錄下會新建一個.gitconfig檔案
為GitHub賬號新增SSH Keys
1.生成Keys
linuxidc@linuxidc:~$ ssh-keygen -t rsa -C "root@linuxidc.net"
輸出如下範例:
Generating public/private rsa key pair.
Enter file in which to save the key (/home/linuxidc/.ssh/id_rsa):
/home/linuxidc/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/linuxidc/.ssh/id_rsa.
Your public key has been saved in /home/linuxidc/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:SJzejSuID3eygvca1i7Ci+TqTIbxWcXULnw949ZXyMM root@linuxidc.net
The key's randomart image is:
+---[RSA 2048]----+
| .. |
| + .. |
| .*. . . o |
| +oooo+ E .|
|. . ooS..+ o |
|.o.= . .o . . |
|o**.o . .. . |
|@o+= . . |
|BO*+o |
+----[SHA256]-----+
linuxidc@linuxidc:~$
系統會提示key的儲存位置(一般是~/.ssh目錄)和指定口令,保持預設,連續三次迴車即可
2.複製SSH Key到GITHUB
開啟該檔案,id_rsa.pub檔案內的內容,粘帖到github帳號管理的新增SSH key介面中
linuxidc@linuxidc:~$ cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDRTOMUbHoY8yr6fyYE43pL3bD7VUz9FvlGzi3ACX4jYeUcaPM+Ni5XBtM1ZPD1l1EN0fCNrSpR1Y1sw4dJzbeE9JFM/iLTugFyUaxaLcNPpqXkR4uxipheeM5aIg+523Lm2oR7HeImORjHPr2SN5ZR/YbLecMxhDbx3rAbeYYNtxBE9c9kRF0m0gyLneCo8HxIZz+9wXK2G/B5eZEpnG/8zWkGkCwRB16J6JeWF+9kjwohxXTtZHDjXSt8VysW0EFRkxjxSk5JOTPgPtJOPDKfmXWsw47OeY3gRJHCb4BCMxBvlU341Ncp/rYP/S9bWuUDWHCt8rkGoRXF/6LKw9FD root@linuxidc.net
登入github-> Settings-> SSH and GPG Keys-> New SSH key新增
3.測試是否連線成功
linuxidc@linuxidc:~$ ssh -T git@github.com
輸出如下範例:
The authenticity of host 'github.com (52.74.223.119)' can't be established.
RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
Are you sure you want to continue connecting (yes/no)? yes
直接輸入 yes 就可以了,然後提示成功:
Warning: Permanently added 'github.com,52.74.223.119' (RSA) to the list of known hosts.
Hi linuxidc! You've successfully authenticated, but GitHub does not provide shell access.
第二部分:建立一個本地linuxidc倉庫
1. 在命令列輸入 linuxidc@linuxidc:~$ mkdir linuxidc,建立一個新資料夾。你可以使用ls命令來檢視當前目錄下有哪些檔案和資料夾。
linuxidc@linuxidc:~$ ls
Desktop Music www.linuxidc.com
Documents n 公共的
Downloads newrepo 模板
go n.pub 視訊
google-chrome-stable_current_amd64.deb Pictures 圖片
hello-word Public 文件
linuxidc readme.txt 下載
linuxidc.com snap 音樂
linuxidc.com.gif teamviewer_amd64.deb 桌面
linuxmi Templates
Linux公社 Videos
2. 輸入cd命令進入新資料夾,注意在輸入命令時,你可以用Tab鍵來自動補全。
linuxidc@linuxidc:~$ cd linuxidc
3. 輸入git init初始化Git倉庫。此時用ls -a檢視當前目錄,可以看到多了一個.git/的資料夾,此資料夾儲存了版本控制的所有相關資訊。
linuxidc@linuxidc:~/linuxidc$ git init
已初始化空的 Git 倉庫於 /home/linuxidc/linuxidc/.git/
linuxidc@linuxidc:~/linuxidc$ ls -a
. .. .git
注意,在此處使用的所有命令,如果你是在Linux環境下開發,用法都是完全一樣的。所以對於完全沒有Linux使用經驗的學員,這也是一個開始接觸Linux工作方式的好方法。
接下來,讓我們建立一份簡單的說明檔案,並提交到版本庫中。
4. 輸入echo "This is a simple practise" > readme.txt,建立一個readme.txt檔案。
1-4步截圖如下:
5. 輸入git status檢視當前版本庫狀態,在Untracked files(未跟蹤檔案)下,會出現紅色的readme.txt,代表此檔案還未被Git所管理。
6. 使用git add readme.txt,將該檔案加入緩衝區,如果你確定所有的修改都需要提交,可以使用git add .來加入所有修改。現在用git status檢視,將看到檔名變為綠色。
7. 使用git commit -m "This is my first commit via Git!"來提交修改,-m後面所帶的引數是本次提交資訊,一般用來記錄本次提交的主要意圖。
8. 提交成功後,可以用git log檢視歷史提交記錄。每個記錄都會有提交id,作者和提交日期。
9. 你可以用git branch檢視當前有哪些分支,當然,因為我們沒有建立任何分支,目前只會有一個master分支。
10. 使用git checkout -b feature建立一個名為feature的分支,再用git branch檢視一下。
以上是最最基本的Git操作,大家可以在此linuxidc專案中隨意嘗試各種其他Git命令,最好的參考資料是Pro Git book,PDF下載見 https://www.linuxidc.com/Linux/2013-05/85066.htm。
注意:學會Git的唯一方式是在實際使用中學習,切記不要嘗試先記住一大堆理論知識或者Git命令。
第三部分:專案的下載,檢視和修改
第一步. 從GitHub上下載我們的專案程式碼。
1. 以linuxidc專案為例,點選綠色按鈕Clone or download,然後在彈出視窗中點選剪下板圖示,複製倉庫的URL。
2. 在git bash中下載專案原始碼。
linuxidc@linuxidc:~/linuxidc$ git clone https://github.com/linuxidc/linuxidc.git
正克隆到 'linuxidc'...
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
展開物件中: 100% (3/3), 完成.
第二步. 檢視版本歷史
1. cd到專案資料夾下,使用git log能看到我們的歷史提交記錄。
2. 要回到某一歷史版本,可以使用git checkout commitId,看完後要回到最新程式碼,使用git checkout master。
第三步. 本地修改程式碼
你可以在我們的程式碼基線上任意修改,但為了下載新程式碼時不出現衝突,請遵循以下步驟:
1. 下載新程式碼:git pull。
2. 從master出撿出一個新的分支:git checkout -b feature。feature是分支名稱,你可以隨意取名,但請用英文。
3. 在feature分支上隨意修改,改完後你可以提交你的修改:git commit -m "some message" 。
4. 此時要同步程式碼,請先切回主分支:git checkout master,然後更新git pull。
5. 如果想刪除自己建立的分支,使用git branch -D feature,注意執行此命令後分支被強制刪除,無法恢復。
相關文章