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...