Git使用(個人總結)

2022-09-11 17:57:14 字數 3475 閱讀 2931

git是目前世界上最先進的分布式版本控制系統

安裝完成後配置

git config --global user.name "your name"

git config --global user.email "[email protected]"

找個資料夾(工作區), 通過git init命令把這個目錄變成git可以管理的倉庫,會生成乙個.git隱藏資料夾(版本庫)

git init

initialized empty git repository in /users/michael/learngit/.git/

為什麼git新增檔案需要add,commit一共兩步呢?

因為commit可以一次提交很多檔案,所以你可以多次add不同的檔案

git add file1.txt

git add file2.txt file3.txt

git commit -m "add 3 files."

git status命令可以看到當前專案是否提交

git diff就是檢視和之前版本difference

git log顯示更新的歷史記錄,加上引數 --pretty=oneline內容簡潔,只顯示commit注釋內容和commit id不顯示具體哪個使用者

git reset --hard +commit id可以往前或者或後退到某個版本

git reflog可以檢視之前輸入的命令

git add和git commit內部流程(暫存區)

當你把test.txt內容修改了,但是未add,可以通過 git checkout -- test.txt進行還原。

當你把test.txt內容修改了,並且add了,可以先通過 git reset head test.txt再通過git checkout -- test.txt進行還原。

當你把test.txt內容修改了,並且add,commit之後,但未提交到遠端倉庫,可以通過git reset --hard +commit id號進行還原。

如果在工作區刪除了乙個檔案,git版本庫中並沒有刪除,如果要刪除版本庫中內容git rm test.txt,如果是誤刪,則git checkout -- test.txt恢復。

ssh key確認是本人推送的內容

建立金鑰ssh-keygen -t rsa -c "[email protected]"在c/users/***/ .ssh目錄,裡面有id_rsa和id_rsa.pub兩個檔案, id_rsa是私鑰,不能洩露出去,id_rsa.pub是公鑰,將公鑰新增到碼雲和github中去

連線github倉庫,在本地輸入git remote add origin [email protected]:***/***.git

第一次push操作git push -u origin master,-u git不但會把本地的master分支內容推送的遠端新的master分支,還會把本地的master分支和遠端的master分支關聯起來,在以後的推送或者拉取時就可以簡化命令。 git push origin master

git clone [email protected]:***/***.git,ssh協議速度最快

建立分支

git checkout -b dev

git checkout命令加上-b引數表示建立並切換,相當於以下兩條命令:

git branch dev

git checkout dev

git branch命令檢視當前分支

在dev分支下本地提交修改後的資料,git checkout master切換到master分支,git merge dev再將merge分支合併,接著將merge分支刪除git branch -d dev

圖示如下:將指標指向dev

dev分支提交後

dev合併到master分支

git switch -c dev建立分支(老版本用不了)

git switch master切換分支

如果在master的基礎上,兩個分支都對乙個檔案進行改動,會導致分支矛盾,需要手動解決衝突,如果改變兩個檔案則不會有影響

git merge --no-ff -m "merge with no-ff" feature1合併時關閉 fast forward模式在git log中可以查到合併操作,如果直接合併log中不會顯示

在dev分支下在建立分支,進行編碼

每個bug都可以通過乙個新的臨時分支來修復,修復後,合併分支,然後將臨時分支刪除。

提示語changes not staged for commit:修改未add

changes to be committed:修改未commit

在本地,如果沒有add的情況下,各個分支的內容都是最新的,如果你不想提交完成了的一半**,去別的分支改bug,可以先git stash 將這一半的**存到堆疊中,**會變為最初的**,然後去別的分支改bug,在別的分支改bug時最好要在建立乙個分支,改好後在和該分支合併,改好提交後,可以回到分支,git stash pop將內容還原為修改到一半的**

git branch -d div強行刪除沒有合併過的分支

分支提交

git checkout -b dev origin/dev

git push origin dev

因此,多人協作的工作模式通常是這樣:

1.首先,可以試圖用git push origin

推送自己的修改;

2.如果推送失敗,則因為遠端分支比你的本地更新,需要先用git pull試圖合併;

3.如果合併有衝突,則解決衝突,並在本地提交;

4.沒有衝突或者解決掉衝突後,再用git push origin

推送就能成功!

如果git pull提示no tracking information,則說明本地分支和遠端分支的鏈結關係沒有建立,用命令git branch --set-upstream-to

origin/

。新增標籤

git tag v1.0 +commitid號

git 個人使用總結

git add a or git add a or git add it means to add all files which are unstaged 先cd到工程資料夾下!git init 即把該 資料夾變成了乙個倉庫 git add 新增進去!git status 當前倉庫的狀態 git ...

Git使用個人總結

1.eclipse git外掛程式配置秘鑰.解決方式 window preference general network connection ssh2 配置已有ppk 2.gitignore檔案中新增檔案路徑即可忽略,提交時不再出現已配置的路徑檔案 3.衝突時,先編輯衝突,再commit push...

git使用個人總結

git init建立版本庫 1.基礎命令 git add把檔案新增進去,將檔案修改新增到暫存區 git commit git commit m 提交描述 提交更改,將暫存區所有內容提交到當前分支 git status時刻掌握倉庫當前的狀態 git diff檢視different gitdiff he...