寫在前面的話
git bash中的一些命令,用的是linux命令,建議先對linux基本命令有所瞭解再進行git學習。
我的其他博文就有linux命令學習筆記,僅供參考。
git bash命令彙總
命令行 | 作用 |
---|---|
git init | 初始化本地庫 |
echo “first commit” >> test.c | 建立一個文件test.c 內容爲"first commit" |
git add test.c | 添加修改文件到暫存區,並不添加到本地倉庫 |
git commit -m “first commit test” | commit提交到本地倉庫 |
git status | 查看狀態 |
git reset HEAD demo.c | 把暫存區的修改回退到工作區 |
git checkout – demo.c | 工作區clean |
git log | 查看歷次提交版本,含commit號 |
git reset --hard commit號 | 回退到commit號指定的版本 |
ssh-keygen -t rsa -C “[email protected]” | 創建ssh key |
ssh -T [email protected] | 驗證本地和github是否連通 |
git remote add origin [email protected]:Hyf338/bash_doc_test.git | 關聯本地倉庫和遠程github倉庫 |
git push -u origin master | 將本地倉庫推送至遠程倉庫,-u:默認把本地master和遠端master關聯上 |
git push | 直接推送到遠端 |
文章目錄
git工作流介紹
工作區有一個隱藏目錄.git,這個不算工作區,而是Git的版本庫。Git的版本庫裏存了很多東西,其中最重要的就是稱爲stage(或者叫index)的暫存區,還有Git爲我們自動創建的第一個分支master,以及指向master的一個指針叫HEAD。
- 把文件往Git版本庫裏添加的時候,是分兩步執行的:
- 第一步是用git add把文件添加進去,實際上就是把文件修改添加到暫存區;
- 第二步是用git commit提交更改,實際上就是把暫存區的所有內容提交到當前分支。
因爲我們創建Git版本庫時,Git自動爲我們創建了唯一一個master分支,所以,現在,git commit就是往master分支上提交更改。
本地
001創建版本庫
版本庫又名倉庫,英文名repository,你可以簡單理解成一個目錄,這個目錄裏面的所有文件都可以被Git管理起來,每個文件的修改、刪除,Git都能跟蹤,以便任何時刻都可以追蹤歷史,或者在將來某個時刻可以“還原”。
1.1在當前目錄下建立一個study_git_bash文件夾
1.2進入目錄建立本地倉庫
通過git init命令把這個目錄變成Git可以管理的倉庫
1.3創建文件
1.4添加文件進暫存區(添加到暫存區不代表添加到本地倉庫)
002版本回退到上一版本(從add回退,暫存區中)
2.1新建的文件,查看狀態,文件在工作區,並且沒有在本地倉庫進行跟蹤
2.2文件添加到暫存區,commit提交到本地倉庫去
2.3修改文件後再查看git狀態
2.4將修改後的文件 提交到暫存區並查看狀態
2.5把暫存區的修改回退到工作區
2.6工作區clean
003版本回退(從commit回退,本地倉庫)
3.1第二次修改文件
3.2再次add 與 commit提交到本地倉庫
3.3查看我們的對demo.c的三次修改,並且複製第一次修改(即新添空白文件)的commit號
3.4 --hard : 暫存區和本地倉庫都回退到第一次提交
3.5本地刪除demo.c文件
3.6變更提交到本地倉庫
005創建SSH key
以上的命令都在本地執行,如果想通過git分享你的代碼,或者與其他開發人員合作,就需要把數據放到一臺別人可以遠程鏈接的服務器上面。
5.1創建SSH key
本地的git庫和github倉庫之間傳輸是通過ssh加密傳輸的。
5.2切換路徑,查看公鑰內容
5.3添加公鑰內容到github賬戶中
5.4驗證本地和github是否連通
006添加遠程倉庫
6.1創建文件夾和readme文檔
6.2將修改的文件add和commit操作,添加到master版本庫中
6.3關聯本地倉庫和遠程github倉庫
6.4push推送到遠端
6.5重新修改readme文檔
6.6再次add、commit和push,推送到遠端倉庫
然後看看遠端,readme已經本修改
007克隆倉庫
將遠程的倉庫裏面的代碼克隆一份到本地
7.1將剛剛的測試倉庫克隆到本地
7.2修改README
7.3再次add、commit和push,推送到遠端倉庫
再次查看github,README文檔已被更新