Git的概念及常用命令

2021-08-26 23:22:32 字數 3303 閱讀 5168

一、概念git reflog

二、常用命令

命令:git init,將目錄變成git可以管理的倉庫

命令:git add,將檔案新增到git倉庫,可以多次新增

命令:git commit -m,將檔案提交,只需一次提交

命令:git log,顯示最近到最遠的提交日誌(–pretty=onelint,將多行合併一行)

命令:git reset --hard head^,回到上乙個版本,在git中,head表示當前版本,上乙個版本就是head^,上上個版本就是head^^,如果是多個則使用head~10(回到前10個版本)

命令:git reflog,記錄每次操作命令

命令:git reset --hard commit_id,回到指定版本

命令:git diff head --,檢視檔案工作區版本和庫中最新版本的區別

三、工作區和暫緩區關係

第一步是用git add把檔案新增進去,實際上就是把檔案修改新增到暫存區;

第二步是用git commit提交更改,實際上就是把暫存區的所有內容提交到當前分支。

四、撤銷修改

場景1:當改亂了工作區某個檔案的內容,想直接丟棄工作區的修改時,用命令:git checkout -- file場景2:當不但改亂了工作區某個檔案的內容,還新增到了暫存區時,想丟棄修改,分兩步,第一步用命令:git reset head,就回到場景1的情況,再安裝場景1處理

場景3:已經提交了不合適的修改到版本庫時,想要撤銷本次提交,參版本回退方法(前提是沒有推送到遠端庫)

五、刪除檔案

git checkout -- test.txt其實是用版本庫里的版本替換工作區的版本,無論工作區的是修改還是刪除,都可以「一鍵還原」

git rm用於刪除乙個檔案。如果乙個檔案已經被提交到版本庫,那麼永遠不用擔心誤刪,但要訊息,只能恢復檔案到最新的版本,會丟失最近一次提交後修改的內容

六、建立金鑰

ssh-keygen -t rsa -c "[email protected]"然後輸入檔名id_rsa,連續空格鍵,在git包下即可找到id_rsa.pub檔案裡既是金鑰

七、推送到遠端服務

把本地master分支的最新修改推送至github,命令:git push origin master轉殖遠端服務,例:git clone [email protected]:michaelliao/gitskills.git

八、建立與合併

分支建立:git checkout -b,在git checkout命令上新增-b引數表示建立並切換,name分支名

檢視所有分支,git branch,當前分支前會有「*」

合併分支,git merge,合併指定分支到當前分支

刪除分支,git branch -d檢視分支合併圖,git log --graph --pretty=online --abbrev-commit

九、分支管理策略

fast forward模式下,刪除分支後會丟掉分支資訊。git merge --no-ff -m:表示禁用該fast forward模式

十、bug分支

2.git還提供了乙個stash功能,可以把當前工作現場「儲藏」起來,等以後恢復現場後繼續工作,git stash

一、新功能

在開發乙個新的feature,最好新建乙個分支;如果要丟棄乙個沒有被合併過的分支,可以通過git branch -d強行刪除 十

二、多人協作

當從遠端倉庫轉殖時,實際上git自動把本地的master分支和遠端的master分支對應起來,並且,遠端倉庫的預設名稱時origin。檢視遠端庫資訊,使用命令:git remote,或者git remote -v顯示更詳細的資訊

2. 推送分支git push origin master,如果推送其他分支,比如dev,git push origin dev

十三、抓取分支

預設情況下,只能看到本地master分支,要在dev分支上開發,就必須遠端建立origin的dev分支到本地,命令:git checkout -b branch-name origin/branch-name例:git checkout -b dev origin/dev

本地新建的分支如果不推送到遠端,對其他人就是不可見的

從本地推送分支,使用git push origin branch-name,如果推送失敗,先用git pull抓取遠端的新提交,如果抓取失敗,則需要建立本地分支與遠端分支的鏈結git branch --set-upstream branch-name origin/branch-namerebase操作可以把本地未push的分叉提交歷史整理成直線,git rebase

十四、標籤

檢視標籤資訊,命令git show

刪除本地標籤,命令:git tag -d,

如果要推送某個標籤到遠端,使用命令:git push origin,或者,一次性推送全部尚未推送到遠端的本地標籤:git push origin --tags如果標籤已經推送到遠端,要刪除,則先刪除本地:git tag -d,然後刪除遠端:git push origin :refs/tags/

十五、關聯遠端庫

命令:git remote add origin [email protected]:使用者名稱/專案名.git

git的概念和常用命令

官方定義 git是版本控制工具。這裡的版本其實是每一次發布的 git會把每一次提交的 都儲存下來,並給它乙個叫做 版本號 的編號。這類似於期刊出版的過程,每一次出版都有它的期號。git具有備份檔案的功能,允許我們找到修改前的檔案,可以 反悔 git具有分支機制,像寫 可以分出幾條支線。這樣允許我們在...

Git 重要概念和常用命令

本文是git的學習筆記,教程請移步 廖雪峰 git 教程。目錄.git,是git的版本庫。git的版本庫里存了很多東西,其中最重要的就是稱為stage 或者叫index 的暫存區,還有git為我們自動建立的第乙個分支master,以及指向master的乙個指標叫head。git add把檔案新增進去...

常用命令 Git 常用命令大全

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