在一切開始之前,先推薦一個git簡易工具書——Git_Cheat_Sheet,非常適合新手。自行搜索即可,也有熱心者提供了中文版。
一、下載 Git
-
從Git官網下載Git安裝包
https://git-scm.com/downloads
注意不要下成 GUI,點擊官網首頁電視里的下載即可。
-
雙擊安裝包安裝
根據自己的需要配置,若是一直點下一步也沒有問題。
二、配置 Git 環境變量(可選)
配置環境變量后,打開 cmd 輸入 git 便可直接運行。但直接使用 git-bash 也是不錯的選擇。
我的 git 安裝完成后就自己配置好了環境變量。如果沒有自動配置的話,可以找到 git 安裝路徑下的 cmd 文件夾(默認為C:\Program Files\Git\cmd
),復制該路徑。
將改路徑添加至系統環境變量。打開文件資源管理器,右鍵點擊左側的此電腦->屬性->高級系統設置->環境變量->在下方系統變量中找到 path ->選中 path 並選擇編輯->新建->將剛才的路徑復制到其中->保存退出。
三、生成並配置 SSH 密匙
-
系統生成 SSH 密匙
打開 git-bash,這里要執行三條命令。git config –global user.name "你的用戶名"
git config –global user.email "你的@郵箱.com"
ssh-keygen -t rsa -C "你的@郵箱.com"
前兩條配置很重要,每次 Git 提交時都會引用這兩條信息,說明是誰提交了更新,所以會隨更新內容一起被永久納入歷史記錄。可用 git config --list
來查看已有配置。
第三條配置用來生成密匙,提示的是給 key 配置一個 password,可以為空,所以按三次回車,不設置密碼,之后正常情況下就會生成成功。
SSH 公鑰和私鑰都被保存在提示的文件夾中,我們需要的是公鑰id_rsa.pub
- 在 github 中配置 SSH 密匙
打開 github 並登陸,點開右上角個人頭像,打開 Settings。選擇左邊 SSH and GPG keys 標簽,在 SSH Keys 一欄右邊點擊 New SSH Key。
title自行填寫,key將id_rsa.pub里面的公鑰完整的復制粘貼進來
點擊 Add SSH Key,然后多了一個 SSH key,添加成功。
四、上傳項目至 github
- 初始化本地倉庫
打開終端,選擇一個文件夾作文本地倉庫,進入該文件夾下,執行命令:git init
返回 “Reinitialized existing Git repository in 文件路徑” 即為初始化成功。
- 將你的 github 遠程端連接到本地倉庫
(首次連接遠程倉庫不必要)查看當前的遠程庫。執行命令:git remote -v
可以查看當前的遠程庫及其對應的克隆地址。
添加一個遠程庫。要添加一個新的遠程倉庫,可以指定一個簡單的名字,以便將來引用。執行:
git remote add [庫名] [倉庫網絡地址]
Example: git remote add Planegame https://github.com/coolbooksir/Vue-Navigation-components.git
倉庫網絡地址可在github倉庫中的Clone or Download中復制。
- 將遠程端版本合並到本地版本中
由於是首次執行,本地版本甚至沒有 master 分支,需要更新本地版本使之與遠端同步。執行命令:git pull [庫名] master
即可將遠端的 master 分支合並到本地。若無這一步,系統會報以下錯誤:
error: src refspec master does not match any.
error: failed to push some refs to '倉庫網絡地址'
PS:此步驟會生成一個 .git 文件夾用來做版本控制;另外會有一個 .gitignore 文件,用來排除一些不想上傳的文件。
-
向 git 添加文件
將你想上傳的文件放置於當前文件夾下,執行命令:
git add或者 git add .
以此來添加單個文件或一次添加所有文件。之后可執行 git status 命令來檢查你剛才添加的文件是否確實添加到位。 -
提交剛才添加的文件到本地版本庫,並加上注釋
執行命令:git commit -m "注釋信息"
該注釋信息是你這次版本更新的備注信息,最終會顯示在 github Repository 文件列表對應的項目后。
- 將本地倉庫內容上傳
執行命令:git pull -u [庫名] master (分支名)
輸入github的賬號密碼后,系統返回上傳進度,上傳成功。
若步驟3未及時執行,會導致版本沖突,報錯如下:
! [rejected] master -> master (non-fast-forward)
error: failed to push some refs to 'git@github.com:BIUSekale/test.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
可以在步驟6時執行強制上傳命令:git pull -u [庫名] master -f
但是原來網絡端master分支的文件會被全部替換,要謹慎使用。所以也可以選擇重新 git init 重頭再來。