Git常用命令

2021-08-14 22:51:31 字數 3504 閱讀 4914

git clone

用法: 進入到git工作目錄,輸入git clone  

進行轉殖

clone下**後,**缺省會在master分支,我們需要把**切換到乙個自己的分支,這樣的話,我們隨便怎樣修改,怎樣提交,都不會影響到master或其它分支。

git checkout -b feature-test

這個時候,feature-test分支和master分支的**是完全一樣的,但是此後,你做的所有修改都不會影響master分支,只會在feature-test分支上往下進行。

git status

將乙個普通檔案交給git管理或者將修改過的檔案新增到git的索引庫中。當我們使用git commit時,git將依據索引庫中的內容來進行檔案的提交。

git add index.html

如果我們一次修改比較多的檔案,需要把所有修改的檔案都新增到索引庫,可以使用:

git add --all

如果我們誤把乙個檔案新增進了索引庫,可以使用以下命令將其「拉回」暫存區:

git reset head index.html

如果我們想把乙個檔案恢復成修改前的狀態,可以使用以下命令,就撤銷了我們所有的修改:

git checkout index.html

但是,執行這個命令要慎重哦!一旦執行,你的所有修改都找不回來啦!

在執行之前,看一下這次修改了那些東西,那麼就需要使用git diff命令:

git diff index.html

git diff命令會調出乙個類似於vi的文字編輯器(唯讀),裡面紅色的部分說明你刪除了這一行,綠色的部分說明你新增了display: block;這一行。看完了,按q鍵就可以退出啦~

將所有新增到索引庫的檔案提交到

本地倉庫

最簡單的commit操作如下:

git commit -m "upd"

所以commit message主要要說3件事:

是upd(更新)、add(新增)還是del(刪除)操作

操作了什麼檔案(或者什麼內容)

為什麼要做這個操作(或者能夠解決什麼bug,解決什麼問題)

即-m 後面的引號能寫注釋

將本地倉庫的修改推送到

遠端倉庫

git push origin feature-test

如果不push,協作的小夥伴們將永遠不知道你關起門來做了什麼傷天害理的事兒,所以,當我們做完功能後,要記得使用git push將自己的改動推送到遠端**倉庫。

如果遠端倉庫當前沒有feature-test這個分支,將會新建分支。

本地倉庫維護著一堆「remote-tracking branches」,翻譯過來叫「遠端跟蹤分支」,對應著本地倉庫裡remote/masterremote/develop這些分支。

fetch操作後,遠端跟蹤分支就和遠端**倉庫裡的相應分支**保持一致了~

git fetch

fetch操作預設只會fetchorigin倉庫的分支,如果要fetch其它倉庫的分支,需要在後面加上倉庫名:

git fetch repo-caiyou

通常,我們的feature分支在完成使命後會被管理員刪除掉,而我們各自的本地卻不知道,硬碟空間吃緊。所以,如果我們想在管理員刪除了遠端的某些分支的時候,將自己本地對應的「遠端跟蹤分支」刪除掉,需要在fetch操作時加乙個-p引數:

git fetch -p

將乙個或多個分支合併

git merge origin/develop

這樣,develop分支就和remote/develop分支一樣了。

git merge操作通常還用在別的一些場景中,比如,我們的同事在feature-x分支上做好了某個業務,此時,需要將feature-x分支合併到develop分支,便於在測試環境上線,就需要先切換到develop分支:

git checkout develop

再將feature-x分支merge到develop分支:

git merge feature-x

當然,如果是比較大的變更,或是涉及到比較重要的檔案時,這類業務上的merge操作建議在github上使用pull-request,或是gitlab系統裡的merge-request,貿然merge產生大量衝突會很蛋疼的哦~

git pull

不負責任地講,git pull基本上等於git fetch+git merge fetch_head,但是,git pull操作無法看清中間的**差異和合併的邏輯(其實是我不太清楚啊。。。),曾經踩過坑,**合併出問題,所以我個人不會直接使用git pull這個操作,畢竟,耿直boy們更喜歡手動擋嘛~

檢視**提交日誌

git log

會顯示最基本的log資訊,但是不直觀,不能看清分支之間的分叉、合併、前因後果,所以個人習慣加上--all`--decorate--graph這3個引數:

git log --all --decorate --graph

常用命令 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...