Git不會用?來我這兒練練手

2020-10-11 01:00:09

Author:看,未來

!!! 本檔案預設各位都已經有github賬號了

格式不好,有需要PDF私信我,那個排版好

Git不提供貼上,因貼上而出現各種問題請自行百度,它支援複製,請右擊複製,因Ctrl+C出現問題也請自行百度
如果沒有安裝Git
前往:http://npm.taobao.org/mirrors/git-for-windows/v2.28.0.windows.1/
下載,選擇64-bit.exe 檔案,下載之後直接安裝,一路預設。

在桌面空白處右鍵滑鼠,若出現「Git GUI Here」、「Git Bash Here」則安裝成功:

Git繫結本地賬號
註冊本地賬號:
git config --global user.name 「你的名字」
註冊本地郵箱:
git config --global user.email 「你的郵箱」

開通ssh :
獲取祕鑰:ssh-keygen -t rsa -C 「你的郵箱」
期間會讓你選擇祕鑰位置,預設位置就空格。
期間還會讓你填密碼,要密碼就填,不要就空格。

開啟祕鑰:開啟.ssh下的.pub檔案(如果是預設目錄的話,轉成doc檔案開啟就行)
進入github,頭像->settings->SSH and GPG keys->new SSH key。(頭像在右上角)

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

關聯遠端倉庫
當我們需要讓Git去管理某個新專案/已存在專案的時候,就需要建立倉庫了。注意,建立倉庫時使用的目錄不一定要求是空目錄,選擇一個非空目錄也是可以的,但是不建議在現有專案上來學習Git,否則造成的一切後果概不負責!

注意:為了避免在學習或使用過程中出現各種奇葩問題,請不要使用包含中文的目錄名(父目錄亦是如此)。

倉庫我建好了,還沒被邀請的各位把github賬號發群裡,沒被邀請進不來。

還是得先來張圖,各位心裡有數:

本地管理員
git init
表現:執行之後會在專案目錄下建立「.git」的隱藏目錄,這個目錄是Git所建立的,不能刪除,也不能隨意更改其中的內容
克隆遠端倉庫到本地(拉取遠端程式碼)
git clone git@github.com:BigControlSystem/control-system.git

git拉取遠端指定分支下程式碼(-b 分支名稱)

關聯本地倉庫
git remote add origin git@github.com:BigControlSystem/control-system.git

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

本地檔案上傳github(以資料夾形式提交)
查詢當前改動檔案:git status

把本地工作區檔案傳到暫存區:git add 「檔名」(如果要全提交,就 .)
把暫存區文集提交到倉庫:git commit -m 「註釋(寫版本號)」
本地倉庫檔案傳送到github上分支(比較穩妥):git push -u origin master
刪除快取區所有檔案命令:git rm -r --cached . 主要這個點一定要寫
版本回退:
版本回退分為兩個步驟進行操作

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

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

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

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

遇到問題及解決方案
1、bash:¥‘302\203’:command not found
問題原因:存在空格
解決方法:多退格幾次

2、failed to push some refs to

問題原因:沒有指定本地master分支與遠端遠端 origin/master 的連線,這裡根據提示:git branch --set-upstream-to=origin/master master

解決方法:git pull origin master --allow-unrelated-histories
然後執行git push步驟

3、遠端倉庫無許可權連線
問題原因:倉庫私有
解決方法:
https://jingyan.baidu.com/article/ceb9fb1014f71bccad2ba0d6.html

本檔案僅供大家測試使用git