Git使用詳解

文章內容參考:廖雪峰Git教程

Git命令:

git init  //把當前目錄變成Git可以 管理的倉庫
git add <file>  //把文件添加到倉庫
git commit -m <message> //帶說明的提交,說明信息最好具有實際意義
git status  //隨時掌握工作區(qū)的狀態(tài)
git diff  //查看修改的內容
git log  //可以查看提交歷史,以便確定要回退到哪個版本
git log --pretty=oneline  //查看提交歷史的簡要信息
git reset //回退版本 
git reset --hard HEAD^  //回退到上一個版本
git reset --hard HEAD^^  //回退到上上個版本
git reset --hard HEAD~100  //回退到前100個版本
git reset --hard 1094a  //回退到指定版本號
git reflog  //記錄你的每一次命令豪治,以便確定要回到未來的哪個版本
git checkout -- file  //丟棄工作區(qū)的修改
git reset HEAD <file>  //可以把暫存區(qū)的修改撤銷掉(unstage),重新放回工作區(qū)
git rm  //用于刪除一個文件
git remote add origin  //關聯(lián)一個遠程庫
git push -u origin master  //第一次推送master分支的所有內容
git push origin master  //推送最新修改
git clone <遠程倉庫地址>  //克隆一個庫到本地庫
git branch <分支名稱>  //創(chuàng)建分支
git checkout <分支名稱>  //切換分支
git checkout -b <分支名稱>  //創(chuàng)建并切換分支
git branch  //查看當前分支
git merge  //合并指定分支到當前分支
git switch  //切換分支
git switch -c <分支名稱>  //創(chuàng)建并切換分支
git branch -d <分支名稱>  //刪除分支
git log --graph  //查看分支合并圖
git merge --no-ff -m <描述> <分支名稱>  //合并分支,--no-ff參數(shù)染服,表示禁用Fast forward
git stash  //把當前工作現(xiàn)場“儲藏”起來汹族,等以后恢復現(xiàn)場后繼續(xù)工作
git stash pop  //回到工作現(xiàn)場
git cherry-pick <bug修復完提交的id>  //把bug提交的修改“復制”到當前分支疯攒,避免重復勞動
git branch -D <分支名稱>  //丟棄一個沒有被合并過的分支,強行刪除
git remote  //查看遠程庫的信息
git remote -v  //顯示更詳細的信息
git push origin branch-name  //從本地推送分支
git pull  //抓取遠程的新提交
git checkout -b branch-name origin/branch-name  //在本地創(chuàng)建和遠程分支對應的分支陡叠,本地和遠程分支的名稱最好一致
git branch --set-upstream branch-name origin/branch-name  //建立本地分支和遠程分支的關聯(lián)
git rebase  //把分叉的提交歷史“整理”成一條直線,看上去更直觀
git tag <name>  //就可以打一個新標簽
git tag v0.9 f52c633  //要對某次add merge提交打標簽肢执,且它對應的commit id是f52c633
git show <tagname>  //查看標簽信息
git tag -a <tagname> -m "blablabla..."  //可以指定標簽信息

Git 命令使用:

默認使用visual studio code

git clone --使用git clone從遠程倉庫拉取代碼

git clone git@github.com:nangongque/doumijia-react-native.git
/** Cloning into 'doumijia-react-native'...
Warning: Permanently added the RSA host key for IP address '13.229.188.59' to the list of known hosts.
remote: Enumerating objects: 94, done.
remote: Counting objects: 100% (94/94), done.
remote: Compressing objects: 100% (78/78), done.
remote: Total 94 (delta 2), reused 91 (delta 2), pack-reused 0R
Receiving objects: 100% (94/94), 232.52 KiB | 163.00 KiB/s, done.
Resolving deltas: 100% (2/2), done.**/

git add --把文件添加到倉庫

/** 修改README.md文件如下:
豆米家
2020.9.15更新枉阵,由于項目中使用的豆瓣api經常變動,導致接口有時不可用预茄,有問題可以及時聯(lián)系我的郵箱兴溜,謝謝。
**/
/**保存后進行添加**/
 git add README.md

git commit --提交

/** 針對add后修改的文件進行提交**/
git commit -m 'first change README.md'
/** 
[master 20e8cc3] first change README.md
 1 file changed, 2 insertions(+), 1 deletion(-)
**/

git status --隨時掌握工作區(qū)的狀態(tài)

/**時刻掌握倉庫當前的狀態(tài) **/
git status
/**
On branch master
Your branch is ahead of 'origin/master' by 1 commit.
  (use "git push" to publish your local commits)
nothing to commit, working tree clean
**/

git diff --查看修改的內容

git diff 
/**
diff --git a/README.md b/README.md
index 552a71e..139e58e 100644
--- a/README.md
+++ b/README.md
@@ -1,2 +1,3 @@
 豆米家
-2020.9.15更新耻陕,由于項目中使用的豆瓣api經常變動拙徽,導致接口有時不可用,有問題可以及時聯(lián)系我的郵箱诗宣,謝謝膘怕。
\ No newline at end of file
+2020.9.15更新,由于項目中使用的豆瓣api經常變動梧田,導致接口有時不可用淳蔼,有問題可以及時聯(lián)系我的郵箱,謝謝裁眯。
+米西米西鹉梨,畫布垃圾
\ No newline at end of file
**/

git log --查看提交歷史,以便確定要回退到哪個版本

git log
/**
commit 20e8cc32eba612e88c1209c8206af90d236b9d3b (HEAD -> master, origin/master, origin/HEAD)
Author: murong-yuxuan <350****21@qq.com>
Date:   Tue Sep 15 22:11:49 2020 +0800

    first change README.md

commit 429d3cee52b38ec8846299704f7a108f4348a36f
Author: 李*坡 <189****1995@163.com>
Date:   Tue Sep 15 12:39:50 2020 +0800

    Initial commit

commit 1c33f7c2f470cc5bbb7060b237379b6882e663ff
Author: nangongque <48037565+nangongque@users.noreply.github.com>
Date:   Tue Sep 15 11:47:56 2020 +0800

    Initial commit
**/
git log --pretty=onelin //查看提交歷史的簡要信息
/**
20e8cc32eba612e88c1209c8206af90d236b9d3b (HEAD -> master, origin/master, origin/HEAD) first change README.md
429d3cee52b38ec8846299704f7a108f4348a36f Initial commit
1c33f7c2f470cc5bbb7060b237379b6882e663ff Initial commit
**/

git push origin master --推送最新修改

git push origin master
/**
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 4 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 314 bytes | 314.00 KiB/s, done.
Total 3 (delta 2), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (2/2), completed with 2 local objects.
To github.com:nangongque/doumijia-react-native.git
   20e8cc3..a145af8  master -> master
**/

git reset --hard HEAD^ --回退到上一個版本

git reset --hard HEAD^
/** README.md文件被還原到上一個版本的內容**/

git reflog -- 記錄你的每一次命令穿稳,以便確定要回到未來的哪個版本

git reflog
/**
20e8cc3 (HEAD -> master) HEAD@{0}: reset: moving to HEAD^
a145af8 (origin/master, origin/HEAD) HEAD@{1}: commit: first change commit
20e8cc3 (HEAD -> master) HEAD@{2}: commit: first change README.md
429d3ce HEAD@{3}: clone: from git@github.com:nangongque/doumijia-react-native.git
**/

git checkout -- file --丟棄工作區(qū)的修改

git checkout -- .\README.md
/** 上一次修改的代碼將被撤銷**/

git branch --創(chuàng)建分支

git branch test1 

git checkout --切換分支

git checkout test1
/**Switched to branch 'test1'**/

git push origin --推送分支到遠程倉庫

git push origin test1:test1
/**
Warning: Permanently added the RSA host key for IP address '52.74.223.119' to the list of known hosts.
Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
remote:
remote: Create a pull request for 'test1' on GitHub by visiting:
remote:      https://github.com/nangongque/doumijia-react-native/pull/new/test1
remote:
To github.com:nangongque/doumijia-react-native.git
 * [new branch]      test1 -> test1
**/

git switch --切換分支

git branch
/**
  master
* test1
**/
 git switch master
/**
Switched to branch 'master'
Your branch is behind 'origin/master' by 1 commit, and can be fast-forwarded.
  (use "git pull" to update your local branch)
**/
git branch
/**
* master
  test1
**/

git stash --把當前工作現(xiàn)場“儲藏”起來存皂,等以后恢復現(xiàn)場后繼續(xù)工作

git stash
/**
Saved working directory and index state WIP on master: 20e8cc3 first change README.md
**/
/**會把工作區(qū)中修改的代碼暫時隱藏起來**/

git stash pop --回到工作現(xiàn)場

git stash pop
/**
On branch master
Your branch is behind 'origin/master' by 1 commit, and can be fast-forwarded.
  (use "git pull" to update your local branch)

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        modified:   README.md

no changes added to commit (use "git add" and/or "git commit -a")
Dropped refs/stash@{0} (f09780a198fda8a2f4b36d8d0498c52daef5eab1)
**/
/**先前隱藏的代碼又出來了**/

git tag --打一個新標簽

git show --查看標簽信息

git tag v0.1
git show v0.1
/**
Author: murong-yuxuan <350****21@qq.com>
Date:   Tue Sep 15 22:11:49 2020 +0800

    first change README.md

diff --git a/README.md b/README.md
index 49e1184..552a71e 100644
--- a/README.md
+++ b/README.md
@@ -1 +1,2 @@
-# doumijia-react-native
\ No newline at end of file
+豆米家
+2020.9.15更新,由于項目中使用的豆瓣api經常變動,導致接口有時不可用旦袋,有問題可以及時聯(lián)系我的郵箱骤菠,謝謝。
\ No newline at end of file
**/

未完待續(xù)....

其他開發(fā)工具下使用的git命令后續(xù)補上

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末疤孕,一起剝皮案震驚了整個濱河市商乎,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌祭阀,老刑警劉巖鹉戚,帶你破解...
    沈念sama閱讀 218,755評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異专控,居然都是意外死亡抹凳,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評論 3 395
  • 文/潘曉璐 我一進店門伦腐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來赢底,“玉大人,你說我怎么就攤上這事柏蘑⌒叶常” “怎么了?”我有些...
    開封第一講書人閱讀 165,138評論 0 355
  • 文/不壞的土叔 我叫張陵辩越,是天一觀的道長嘁扼。 經常有香客問我,道長黔攒,這世上最難降的妖魔是什么趁啸? 我笑而不...
    開封第一講書人閱讀 58,791評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮督惰,結果婚禮上不傅,老公的妹妹穿的比我還像新娘。我一直安慰自己赏胚,他們只是感情好访娶,可當我...
    茶點故事閱讀 67,794評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著觉阅,像睡著了一般崖疤。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上典勇,一...
    開封第一講書人閱讀 51,631評論 1 305
  • 那天劫哼,我揣著相機與錄音,去河邊找鬼割笙。 笑死权烧,一個胖子當著我的面吹牛眯亦,可吹牛的內容都是我干的。 我是一名探鬼主播般码,決...
    沈念sama閱讀 40,362評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼妻率,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了板祝?” 一聲冷哼從身側響起宫静,我...
    開封第一講書人閱讀 39,264評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎券时,沒想到半個月后囊嘉,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經...
    沈念sama閱讀 45,724評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡革为,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,900評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了舵鳞。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片震檩。...
    茶點故事閱讀 40,040評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖蜓堕,靈堂內的尸體忽然破棺而出抛虏,到底是詐尸還是另有隱情,我是刑警寧澤套才,帶...
    沈念sama閱讀 35,742評論 5 346
  • 正文 年R本政府宣布迂猴,位于F島的核電站,受9級特大地震影響背伴,放射性物質發(fā)生泄漏沸毁。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,364評論 3 330
  • 文/蒙蒙 一傻寂、第九天 我趴在偏房一處隱蔽的房頂上張望息尺。 院中可真熱鬧,春花似錦疾掰、人聲如沸搂誉。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,944評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽炭懊。三九已至,卻和暖如春拂檩,著一層夾襖步出監(jiān)牢的瞬間侮腹,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,060評論 1 270
  • 我被黑心中介騙來泰國打工广恢, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留凯旋,地道東北人。 一個月前我還...
    沈念sama閱讀 48,247評論 3 371
  • 正文 我出身青樓,卻偏偏與公主長得像至非,于是被迫代替她去往敵國和親钠署。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,979評論 2 355