git中常用的操作命令有哪些?常用操作命令歸納

git中常用的操作命令有哪些?本篇文章就給到大家歸納了一些git中常用操作命令。有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

git開始

全局配置:配置用戶名和e-mail地址

$?git?config?--global?user.name"Your?Name" $?git?config?--global?user.email"email@example.com"

git init:初始化git倉庫,目錄下生成一個.git文件

git init

git add 文件名:將文件修改添加到倉庫

git add readme.txt //修改單個文件
git add . // 將所有修改的文件添加到暫存區

git commit -m ‘說明’:將文件提交到倉庫

$ git commit -m "wrote a readme file"

git status:查看當前倉庫的狀態,掌握工作區的狀態

git diff readme.txt: 查看文件修改的內容

版本回退

git log:查看歷史記錄

git log –pretty=oneline: 只查看commit.id(版本號) 和 說明

git reset –hard HEAD^: 回退到上一個版本? HEAD表示當前版本,上一個是HEAD^,往上一百個是HEAD~100

git reset –hard commit.id: 回到指定版本號對應的版本

git reset --hard 1049a

git reflog:用來記錄你的每一個命令,以便確定回到哪個版本

幾個概念

工作區(Working Directory):在電腦里的進行git操作的目錄

版本庫(Repository):工作區里的.git文件,就是版本庫,git版本庫里最重要的就是稱為stage(或者叫index)的暫存區,還有Git為我們自動創建的第一個分支master,以及指向master的一個指針叫HEAD。

把文件往Git版本庫里添加的時候,是分兩步執行的:

第一步是用git add把文件添加進去,實際上就是把文件修改添加到暫存區;

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

撤銷修改

撤銷分為三種情況:

第一種是readme.txt自修改后還沒有被放到暫存區,現在,撤銷修改就回到和版本庫一模一樣的狀態;(no add) —>? ?git checkout — file

第二種是readme.txt已經添加到暫存區后,又作了修改,現在,撤銷修改就回到添加到暫存區后的狀態。(no commit)—> git reset head file

第三種是readme.txt已經commit了,就使用版本回退即可 —> git reset –hard head^

1、git checkout — readme.txt:將制定文件在工作區的修改全部撤銷

注意:命令中的–很重要,沒有–,就變成了“切換到另一個分支”的命令

2、git reset:既可以回退版本,也可以把暫存區的修改回退到工作區

在第二種情況下,我們就可以使用git reset命令撤回工作區

git reset head readme.txt // head表示當前版本

撤回工作區后再使用git checkout命令從工作區撤回

刪除文件

git rm file:從版本庫中刪除文件

誤刪的情況下可以使用版本庫的版本’一鍵還原‘

git checkout -- test.txt

遠程倉庫

git remote add origin github倉庫地址:將本地倉庫與遠程倉庫關聯

git push -u origin master:?由于遠程庫是空的,我們第一次推送master分支時,加上了-u參數,Git不但會把本地的master分支內容推送的遠程新的master分支,還會把本地的master分支和遠程的master分支關聯起來,在以后的推送或者拉取時就可以簡化命令。

git push origin master: 將本地master分支的修改推送到遠程倉庫

git clone github倉庫地址:將遠程倉庫克隆到本地

分支管理

git branch dev:創建dev分支

git checkout dev :切換dev分支

git checkout -b dev:創建dev分支,并切換到dev分支。 -b參數表示創建并切換到dev分支

git branch: 查看所有分支, *表示當前分支

git merge dev: 合并指定分支到當前分支 。 結果中Fast-forward信息表示‘快進模式’ –>直接把master指向dev的當前提交,合并速度非常快

git merge –no-ff -m ‘描述內容’ dev :–no-ff參數表示禁用Fast-forward,使用普通模式

git branch -d dev: 刪除dev分支

git branch -D dev: 如果分支還沒合并,使用-d無法刪除,使用-D強制刪除

git log –graph: 可以查看分支合并圖。

git log –graph? –pretty=oneline –abbrev-commit? :–pertty=oneline 查看簡短信息? ?–abbrev-commit: 查看commit縮寫

場景:修復bug時創建分支

git stash: 將當前工作現場存儲起來

git stash list :查看存儲的工作現場列表

git stash pop:恢復工作現場并刪除stash的內容

git remote: 查看遠程倉庫的信息

git remote -v: 查看origin的地址

git checkout -b dev origin/dev:在本地創建和遠程分支對應的分支

git pull:抓取最新的遠程提交

git branch –set-upstream-to=origin/dev dev: 建立本地分支和遠程分支的關聯

git rebse:?把本地未push的分叉提交歷史整理成直線

標簽管理

git tag : 用于創建一個新標簽,默認指向head,也可以指向commi.id

git tag: 用于查看所有標簽

git tag -a ? -m? ‘標簽信息’ :為標簽指定信息

git tag -d : 刪除本地標簽

git push origin :推送本地標簽到遠程

git push origin –tags: 推送全部未推送的本地標簽到遠程

git push origin :refs/tags/:刪除一個遠程標簽

自定義git

git config –global alias.’自定義簡寫指令’ ‘被簡寫的指令’

git?config?--global?alias.st?statusgit?config?--global?alias.co?checkout

命令行命令

cat readme.txt: 查看文件內容

rm file 刪除文件

vi file: linux里的vi編輯器?

(1)通過i鍵進入插入模式,可以修改文件?

(2)通過Esc鍵進入命令模式? ?輸入’:wq!’ –>保存+退出vi? ? 輸入’:q!’ –>不保存退出

? 版權聲明
THE END
喜歡就支持一下吧
點贊9 分享