Github 與 Git,新手初次接觸的尷尬歷程

2020-10-08 13:00:18

在這裡插入圖片描述

安裝軟體、搭建環境的時候,遇到各種各樣的問題又找不到教學作者的時候是非常煩的,如果看我的教學而安裝不成功,可以隨時私信我
本文建立在已有GitHub賬號的基礎上

安裝Git

這裡不會給你官網地址,太慢了。

前往淘寶映象下載,滑到最下面選最新版,
在這裡插入圖片描述

注意看網址。

下載好後安裝預設下一步即可,安裝完後選單會有三個程式:

 Git Bash:Unix與Linux風格的命令列,使用最多(推薦)
 Git CMD:Windows風格的命令列
 Git GUI:圖形介面的Git

在桌面空白處右鍵滑鼠,若出現「Git GUI Here」、「Git Bash Here」則安裝成功:(此處先記一下)
在這裡插入圖片描述


GitHub上建立工作區

在這裡插入圖片描述

先點那隻貓,從首頁進入這個介面,然後建立一個專案,設定為公有。


Git繫結GitHub

在這裡插入圖片描述

這張圖的操作是註冊本地賬號,註冊郵箱

在這裡插入圖片描述

這張圖是設定ssh,第一次會讓你輸入祕鑰存放位置,預設就回車。
第二次是讓你設定密碼,最好設一個。

開啟.ssh下的id_rsa.pub檔案,複製裡面的內容,直接把.pub檔案改成doc檔案,問題不大。

進入github,頭像->settings->SSH and GPG keys->new SSH key。(頭像在右上角)
在這裡插入圖片描述

在這裡插入圖片描述

輸入命令列ssh -T git@github.com測試,如圖就成功連上github。

在這裡插入圖片描述


關聯遠端倉庫

在這裡插入圖片描述

當我們需要讓Git去管理某個新專案/已存在專案的時候,就需要建立倉庫了。注意,建立倉庫時使用的目錄不一定要求是空目錄,選擇一個非空目錄也是可以的,但是不建議在現有專案上來學習Git,否則造成的一切後果概不負責!
注意:為了避免在學習或使用過程中出現各種奇葩問題,請不要使用包含中文的目錄名(父目錄亦是如此)。

新手不懂的話,先這樣,動起來之後再自己摸索,和SVN差不多

  1. 建立遠端倉庫
    在首頁左上角點選New 新建遠端倉庫
    在這裡插入圖片描述

填寫倉庫名,描述等,選擇語言和證書。

  1. clone到本地
    在這裡插入圖片描述

在這裡插入圖片描述

上面的第一個失敗,是因為專案被設定了私有。
私有專案改公有

在這裡插入圖片描述

這張圖裡有兩個操作講一下:

Git倉庫初始化(讓Git知道,它需要來管理這個目錄)
指令:git init
表現:執行之後會在專案目錄下建立「.git」的隱藏目錄,這個目錄是Git所建立的,不能刪除,也不能隨意更改其中的內容

檢視當前狀態:git status 【非必要】

上邊第一個報錯,是因為確實沒有資料夾,第二個報錯,是有空格,當然,這個空格你看不到,反正回刪鍵多點幾下。

在這裡插入圖片描述

這張圖上的問題是由於,專案建立在了非空資料夾上。。。。


通過命令關聯

在這裡插入圖片描述

git remote #檢視已關聯的遠端倉庫
git remote rm 倉庫名 #刪除
git remote add 倉庫名 你的倉庫ssh #新增/關聯

在這裡插入圖片描述

我剛開始操作的時候把專案建立在了非空資料夾上,現在學聰明瞭。。。


此時檔案狀態顯示暫存區有新檔案readme.txt,還說可以輸入git restore復原來unstage取消暫存。我們接下來提交,輸入git commit -m 」註釋可隨意填「。
在這裡插入圖片描述

此時檔案已經提交到本地倉庫了,顯示nothing to commit。我們接下來同步到遠端倉庫,輸入git push -u origin master。

在這裡插入圖片描述

到github遠端倉庫中檢視,test.txt檔案已經同步上去了。

在這裡插入圖片描述

找不到檔案的話調一下分支。


後續持續更新GitHub操作,先放一些別人的吧

時光穿梭機——版本回退

版本回退分為兩步驟進行操作:
步驟:
①檢視版本,確定需要回到的時刻點
指令:
git log
git log --pretty=oneline
②回退操作
指令:
git reset --hard 提交編號

案例:想坐時光機回到建立好第一個檔案readme.txt的時候。

在這裡插入圖片描述

注意:回到過去之後,要想再回到之前最新的版本的時候,則需要使用指令去檢視歷史操作,以得到最新的commit id。
指令:git reflog

在這裡插入圖片描述

小結:
a. 要想回到過去,必須先得到commit id,然後通過git reset –hard 進行回退;
b. 要想回到未來,需要使用git reflog進行歷史操作檢視,得到最新的commit id;
c. 在寫回退指令的時候commit id可以不用寫全,git自動識別,但是也不能寫太少,至少需要寫前4位元字元;

分支管理

什麼是分支?
在這裡插入圖片描述
在版本回退的章節裡,每次提交後都會有記錄,Git把它們串成時間線,形成類似於時間軸的東西,這個時間軸就是一個分支,我們稱之為master分支。
在開發的時候往往是團隊共同作業,多人進行開發,因此光有一個分支是無法滿足多人同時開發的需求的,並且在分支上工作並不影響其他分支的正常使用,會更加安全,Git鼓勵開發者使用分支去完成一些開發任務。
在這裡插入圖片描述


其他的這兩天陸續更新吧,先把安裝教學拿出來給我的朋友們。