Git 常用命令

2021-09-02 23:30:46 字數 3143 閱讀 2230

整理自廖雪峰老師的教程

初始化乙個git倉庫,使用git init命令。

新增檔案到git倉庫,分兩步:

使用命令git add,注意,可反覆多次使用,新增多個檔案;

使用命令git commit -m,完成。

要隨時掌握工作區的狀態,使用git status命令。

如果git status告訴你有檔案被修改過,用git diff可以檢視修改內容(此時未被提交)。

head指向的版本就是當前版本,因此,git允許我們在版本的歷史之間穿梭,使用命令git reset --hard commit_id

穿梭前,用git log可以檢視提交歷史,以便確定要回退到哪個版本。

要重返未來,用git reflog檢視命令歷史,以便確定要回到未來的哪個版本。

git diff head -- readme.txt命令可以檢視工作區和版本庫裡面最新版本的區別

git checkout -- file可以丟棄工作區的修改(就是讓這個檔案回到最近一次git commit或git add時的狀態。)

git reset head可以把暫存區的修改撤銷掉(unstage)

git reset命令既可以回退版本,也可以把暫存區的修改回退到工作區。當我們用head時,表示最新的版本。

撤銷修改 總結:

場景1:當你改亂了工作區某個檔案的內容,想直接丟棄工作區的修改時,用命令git checkout -- file

場景2:當你不但改亂了工作區某個檔案的內容,還新增到了暫存區時,想丟棄修改,分兩步,第一步用命令git reset head,就回到了場景1,第二步按場景1操作。

命令git rm用於刪除乙個檔案。如果乙個檔案已經被提交到版本庫,那麼你永遠不用擔心誤刪。

要關聯乙個遠端庫,使用命令git remote add origin git@server-name:path/repo-name.git

關聯後,使用命令git push -u origin master第一次推送master分支的所有內容;

此後,每次本地提交後,只要有必要,就可以使用命令git push origin master推送最新修改;

要轉殖乙個倉庫,首先必須知道倉庫的位址,然後使用git clone命令轉殖。

$ git clone git@server-name:path/repo-name.git
git支援多種協議,包括https,但通過ssh支援的原生git協議速度最快。

git鼓勵大量使用分支

檢視分支:git branch

建立分支:git branch

切換分支:git checkout

建立+切換分支:git checkout -b

合併某分支到當前分支:git merge

刪除分支:git branch -d

當git無法自動合併分支時,就必須首先解決衝突。解決衝突後,再提交,合併完成。

解決衝突就是把git合併失敗的檔案手動編輯為我們希望的內容,再提交。

git log --graph命令可以看到分支合併圖。

合併分支時,加上--no-ff引數就可以用普通模式合併,合併後的歷史有分支,能看出來曾經做過合併,而fast forward合併就看不出來曾經做過合併。

當手頭工作沒有完成時,先把工作現場git stash一下,然後去修復bug,修復後,再gitstash pop,回到工作現場。

git stash list檢視之前儲存的現場

需要恢復一下,有兩個辦法:

另一種方式是用git stash pop,恢復的同時把stash內容也刪了

你可以多次stash,恢復的時候,先用git stash list檢視,然後恢復指定的stash,用命令:

開發乙個新feature,最好新建乙個分支;

如果要丟棄乙個沒有被合併過的分支,可以通過git branch -d強行刪除。

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

首先,可以試圖用git push origin

推送自己的修改;

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

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

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

推送就能成功!

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

origin/

小結命令git tag用於新建乙個標籤,預設為head,也可以指定乙個commit id;

命令git tag -a -m "blablabla..."可以指定標籤資訊;

命令git tag可以檢視所有標籤。

命令git push origin可以推送乙個本地標籤;

命令git push origin --tags可以推送全部未推送過的本地標籤;

命令git tag -d可以刪除乙個本地標籤;

命令git push origin :refs/tags/可以刪除乙個遠端標籤。

常用命令 Git 常用命令大全

安裝教程可參照 廖雪峰老師的安裝教程。git config 在git中,使用git config 命令來配置 git 的配置檔案,git配置級別主要有3類 1 倉庫級別 local 本地 git 倉庫級別配置檔案,作用於當前倉庫。優先順序最高 2 使用者級別 global,全域性配置檔案,作用於所有...

git 常用命令

檢視是否存在檔案需要上傳 git status git add git commit m 建立遠端倉庫 git remote add origin 116.255.146.153 ruby cd work daily project.git 更新git fetch 116.255.146.153 r...

git常用命令

詳細 1,git log p 命令來顯示每一次提交與其父節點提交內容之間快照的差異。2,為了檢視載入 staged 而並未提交 not committed 的內容差異,可以使用 git diff stage 命令 在git 1.6之前的版本中,使用 cached 適應情形 在執行git commit...