Git 學習筆記

2021-09-25 09:54:10 字數 2099 閱讀 4027

1.git安裝與配置 登入

git config --global user.name "username"

git config --global user.email "email"

生成sshkey

ssh-keygen -t rsa -c "email"
2.git基本命令

3.git工作區與暫存區

工作區就是你在電腦裡能看到的目錄

版本庫工作區有乙個隱藏的目錄.git,這個不算工作區,而是git的版本庫。

git的版本庫裡面存了很多東西,其中最重要的是稱為stage或者index的暫存區,還有git為我們自動建立的第乙個分支maser,以及只想master的乙個指標叫head

暫存區(stage,index)

當使用git命令git add後,新增的檔案會進入版本庫的暫存區

然後使用git commit命令後,會一次性把所有的修改提交到暫存區

一旦提交成功後,暫存區就是空的。

注意每次git commit只會提交暫存區的內容。每次修改,如果不用git add到暫存區,那就不會加入到commit中。

5.git撤銷修改

撤銷修改(丟棄工作區的修改)

回退暫存區的修改到工作區

6.git分支管理

1. 建立與合併分支

每次提交git都會把它們串成一條時間線,這條時間線就是乙個分支。只有一條時間線的話,這個分支叫做主分支,即master分支

1.1 建立分支

git branch dev

git checkout dev

這兩個命令可以用乙個命令表示

git checkout -b dev # -b引數表示建立並切換
1.2 檢視當前分支
$ git branch

* dev

master

1.3 合併分支
git merge master
git merge命令用於合併指定分支到當前分支

2. 衝突解決

當兩個分支都有所改變的時候,合併該兩個分支就會發生衝突

合併兩個分支的話就會出現如下情況

aaaa

bbbccc

<<<<<<< head

mydev

*****==

mymaster

>>>>>>> master

git用<<<<<<<*****==>>>>>>>標記出不同分支的內容其中mydev是dev分支新增的內容,mymaster是master新增的內容

然後修改檔案裡面的衝突就再git add,git commit就解決衝突了

通常情況下合併分支時,git會用fast forward模式,但這種模式下,刪除分支後,會丟掉分支資訊

如果禁用fast forward模式,git就會再merge時生成乙個新的commit,這樣,從分支歷史上就可以看出分支資訊。

參考資料

Git學習筆記

git stash git stash list 顯示git棧內的所有備份,可以利用這個列表來決定從那個地方恢復。git stash clear 清空git棧。此時使用gitg等圖形化工具會發現,原來stash的哪些節點都消失了。關於git stash的詳細解釋,適用場合,這裡做乙個說明 使用git...

git 學習筆記

1 git checkout master 切換分支 2 git checkout b xx 新建分支,同時切換到該分支 3 dev 4 git add a 將變動檔案,提交到index 5 git commit m 將 暫存區 檔案,加入到版本控制中。6 git checkout master 7...

Git 學習筆記

顯示版本庫.git所在的目錄 git rev parse git dir 顯示工作區的根目錄 git rev parse show toplevel 相對於工作區根目錄的相對目錄 git rev parse show prefix git config 命令各引數的區別 git config e 版...