一、環境準備
建立倉庫後,初始化倉庫,先從本地建立一個本地倉庫,再push到伺服器倉庫中
- git init
提供遠端倉庫位址
- git remote add origin 克隆/下載下傳中的url
從遠端倉庫拉取檔案
- git pull origin master
送出本地項目到遠端倉庫
-
git add空格加.
git commit -m "注釋:現在我送出了一次項目"
-
git push origin master
彈出資訊框輸入自己的gitee賬号密碼 完成将本地項目送出到伺服器遠端倉庫中(此時Gitee倉庫中就已新增了檔案)
熟練後也可使用工具簡化操作
Goland
一、環境準備
建立倉庫後,初始化倉庫,先從本地建立一個本地倉庫,再push到伺服器倉庫中
- git init
提供遠端倉庫位址
- git remote add origin 克隆/下載下傳中的url
從遠端倉庫拉取檔案
- git pull origin master
送出本地項目到遠端倉庫
-
git add空格加.
git commit -m "注釋:現在我送出了一次項目"
-
git push origin master
彈出資訊框輸入自己的gitee賬号密碼 完成将本地項目送出到伺服器遠端倉庫中(此時Gitee倉庫中就已新增了檔案)
熟練後也可使用工具簡化操作
Goland
vscode
二、分支
使用目的
大型項目,不可能所有人操作master分支,每一個人每一個需求都去建立功能分支feature_x,最終将功能分支合并到master分支。
建立分支,并切換到該分支。一步到位指令
- git checkout -b 分支名
養成習慣,檢視git狀态是位于哪個分支等
- git status
現在我想從遠端master拉取代碼
- git pull
執行後顯示目前分支沒有跟蹤資訊(建立跟蹤資訊)
- git branch --set-upstream-to=origin/分支名 分支名
此時提示請求的上遊分支不存在,由于我正計劃推送一個能與對應遠端分支建立跟蹤的新的本地分支,此時需要推送分支并配置和上遊的關聯
- git push -u
此時提示目前分支沒有對應的上遊分支,需要推送目前分支并建立與遠端上遊的跟蹤
- git push --set-upstream origin 分支名
此時git status顯示如下圖所示即可。
三、Git三大分區
通俗易懂解釋:
工作區:編譯器中正在編寫的代碼。
暫存區:将你編寫的代碼,類似緩存,暫存到暫存區中。index檔案中,index為二進制檔案(感興趣研究不同指令二進制代碼變化)
這裡由于是二進制檔案直接打開會顯示亂碼,這裡使用hexdump來檢視二進制檔案的十六進制編碼。
實際上據我了解,編寫的代碼add到暫存區後,暫存區存儲的代碼在git/objects檔案中
版本庫:執行git commit -m "注釋",将代碼送出到版本庫中。
在我每次執行送出指令時,都會生成一此commit日志記錄,通過git cat-file -p xxx可知裡面存放着一個tree對象,檢視此tree
得知這個tree對象對應的就是最頂層的工作目錄,由于我的工作目錄裡隻有兩個檔案,故此tree下隻有兩個blob對象,一般tree下不僅有blob,還有tree的。
到此,得知,一串哈希值指向的對應一串内容,當儲存改動後,都會重新儲存一次快照。若未改動,保留上次的快照(hash值)。
三、reset
四、revert
五、rebase
六、stash
根據工具貯藏與恢複 Stash Changes貯藏目前改變 Unstash Changes恢複指定的代碼
根據Git指令貯藏與恢複
檢視目前貯藏清單
- git stash list
貯藏
- git stash save -u "注釋"
恢複,根據list序号
- git stash apply [email protected]{數字}
vscode