總結 git常用命令

2021-09-12 02:25:00 字數 2188 閱讀 9918

git常用命令

$ git config --global user.name "john doe"

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

git init --bare ***.git

chown git:git -r xx.git

git branch dev // 建立dev分支

git checkout dev // 簽出dev分支

git checkout -b release // 建立並切換到release分支

git merge master dev --no-ff //merge dev分支到master分支

git merge --abort // 遇到衝突時,取消這次merge

git branch -d

// 刪除本地分支

git push origin --delete

// 刪除遠端分支

git branch -a // 檢視分支

git rebase -i head~4 // 合併前4次commit

git tag v0.9 //打乙個init標籤 

git show v0.9

git push

git pull

git clone [email protected]:/gitrepository/***.git

git status

git remote add origion [email protected]:/gitrepository/***.git

git push -u origin master //-u引數關聯本地分支到origin master

git diff head -- readme.txt 

git revert(回退時候更推薦使用) //生成乙個新commit,該命令表示,撤銷某個commitid的修改,如果需要撤銷的是乙個merge分支,則需要加

上-m引數以標識主幹分支(主幹分支以外的那個分支的修改將會被撤銷,實際上是在主幹分支上,將提交與上一版本比對,執行修改的反操作)

git reset --hard //會丟棄歷史

git reflog 檢視命令歷史

git log --graph --decorate //顯示圖譜,顯示修飾符

如果commit已經被push到遠端倉庫上了,也就意味著其他開發人員就可能基於這個commit形成了新的commit,這時你去reset,就會造成其他開發

人員的提交歷史莫名其妙的丟失,或者其他災難性的後果。

因此,一旦commit已經被push到遠端倉庫,那麼是堅決不允許去reset它的。

reset和checkout區別

reset會把working directory裡的所有內容都更新掉

checkout不會去修改你在working directory裡修改過的檔案

reset把branch移動到head指向的地方

checkout則把head移動到另乙個分支

git branch -r 檢視遠端分支

git checkout . && git clean -df  // 可以放棄所有修改、新增、刪除檔案

git checkout . //放棄本地修改,沒有提交的可以回到未修改前版本

git clean是從工作目錄中移除沒有track的檔案.

通常的引數是git clean -df:

-d表示同時移除目錄,-f表示force,因為在git的配置檔案中, clean.requireforce=true,如果不加-f,clean將會拒絕執行.

git push origin feature-branch:feature-branch    //推送本地的feature-branch(冒號前面的)分支到遠端origin的feature-branch(冒號後面

的)分支(沒有會自動建立)

git checkout head^ 上乙個版本

git checkout head^^ 上上個版本

git checkout head~100 上一百個版本

git rebase -i [startpoint]  [endpoint] // 預設的終點是當前分支head指向的commit(注:該區間指定的是乙個前開後閉的區間)

所以。。。指定endpoint的時候,實際上是指定想要合併的commit的後面乙個commit

參考自:

Git常用命令總結

原文 author joseph lee e mail fdlixiaojun gmail.com 基礎概念 git是分布式版本控制系統,在每個主機上都儲存這版本庫的完整映象,這於cvs,svn 等集中式版本控制系統不同,集中式版本控制系統僅是在伺服器上儲存有所有資訊。git檔案更改後是以快照的方式...

git常用命令總結

一 分支新建與切換 git中的分支,本質上僅僅是個指向 commit 物件的可變指標。1 新建乙個分支 比如新建乙個名為testing的分支 git branch testing 即是在當前commit物件上新建了乙個分支指標 注 head指向當前所在的分支,用cat git head可以檢視 2 ...

git常用命令總結

檢查git 是否安裝 git 新增git 個人資訊 git config global user.name your name git config global user.email email example.com 建立乙個版本庫 mkdir learngit 建立乙個空目錄 cd learn...