git使用總結(jié)

git和其他所有的版本控制系統(tǒng)一樣惭等,都只能追蹤文本的改變

配置用戶名和email

git config --global user.name "curious_cat"
git config --global user.email "xx@qq.com"

global參數(shù)設(shè)置了電腦上的所有的git倉(cāng)庫(kù)的默認(rèn)的name和email
git config --global user.name和git config --global user.email能查看當(dāng)前的所有g(shù)it倉(cāng)庫(kù)默認(rèn)的用戶名和email

初始化git倉(cāng)庫(kù)

git init     當(dāng)前目錄成為了git可以管理的倉(cāng)庫(kù)(版本庫(kù))封字,并且當(dāng)前目錄自動(dòng)生成了.git目錄叙凡,.git目錄是Git來(lái)跟蹤管理版本庫(kù)的晴音。

.git目錄中會(huì)自動(dòng)創(chuàng)建一個(gè)叫master的分支
*HEAD指針總是指向當(dāng)前分支 *

將文件添加到git倉(cāng)庫(kù)

git add test.txt  把工作目錄中文件添加到.git目錄的暫存區(qū)灰粮,可同時(shí)添加多個(gè)文件

test.txt等文件必須放在工作目錄炬搭,才可以添加到git倉(cāng)庫(kù)

將文件提交到git倉(cāng)庫(kù)

git commit -m "修改了test.txt文件"  把文件提交到.git目錄的中的當(dāng)前分支(HEAD指針指向的分支)

每次修改文件后必須先執(zhí)行g(shù)it add 再執(zhí)行g(shù)it commit -m夺姑,因?yàn)間it管理的是修改违施,而非文件

查看git倉(cāng)庫(kù)狀態(tài)

git status              查看git倉(cāng)庫(kù)的狀態(tài)

On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: test.txt
no changes added to commit (use "git add" and/or "git commit -a")
提示修改了文件test.txt,需要使用git add test.txt 添加到暫存區(qū)瑟幕,或者使用git checkout -- test.txt撤銷修改磕蒲。

On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: test.txt
提示:test.txt 的修改需要使用git commit -m "修改了XX" 提交到當(dāng)前分支上

查看文件是如何修改的

git diff test.txt      

*如果git status提示有文件被修改過(guò)(未git add),用git diff就能查看修改的內(nèi)容了 *

刪除文件

rm test.txt  直接用rm命令刪除

On branch master
Changes not staged for commit:
(use "git add/rm <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
deleted: test.txt
no changes added to commit (use "git add" and/or "git commit -a")
提示使用git checkout -- text.txt將撤銷對(duì)文件的刪除只盹,使用git rm text.txt 然后使用git commit確實(shí)要從版本庫(kù)中刪除該文件

 git rm text.txt  配合git commit -m "xx"   從版本庫(kù)刪除該文件

查看git倉(cāng)庫(kù)日志和版本回退

git log --pretty=oneline    查看提交日志辣往,以便確定要回退到哪個(gè)版本    
git reflog   查看命令日志,以便確定要回到未來(lái)的哪個(gè)版本
git reset --hard HEAD^    回退到上一個(gè)版本殖卑,HEAD表示當(dāng)前版本站削,HEAD^表示上一個(gè)版本
git reset --hard HEAD^^  回退到上上一個(gè)版本,HEAD^^表示上上一個(gè)版本
git reset --hard 3628164   回退到指定的版本孵稽,需配合git reflog使用

撤銷修改

git checkout -- readme.txt    修改文件后许起,使用git status會(huì)提示使用此命令將撤銷對(duì)工作目錄中readme.txt的修改
git reset HEAD readme.txt    修改文件后并使用了git add,使用git status會(huì)提醒使用此命令會(huì)把暫存區(qū)的修改撤銷菩鲜,但工作區(qū)中仍然是修改后的內(nèi)容园细,相當(dāng)于回到了未git add狀態(tài)。

如果修改文件后使用了git add 和git commit 只能使用版本回退功能了

創(chuàng)建與合并分支

1. git checkout -b dev  -b參數(shù)表示創(chuàng)建dev分支并切換到分支接校,可以進(jìn)行分支開(kāi)發(fā)了猛频,上面命令相當(dāng)于:   git branch dev 創(chuàng)建分支dev ; git checkout dev 切換到分支dev; 
2. git checkout master  dev分支開(kāi)發(fā)完成后切換到master分支
3. git merge dev  然后合并dev分支到當(dāng)前分支上
4. git branch -d dev 合并完成后就可以刪除dev分支了
git branch 命令會(huì)列出所有分支,當(dāng)前分支前面會(huì)用(*)號(hào)標(biāo)識(shí)

git鼓勵(lì)在分支上完成任務(wù)蛛勉,合并后再刪除分支鹿寻,這和直接在master分支上工作效果一樣,但過(guò)程更安全

解決分支合并沖突

1. 打開(kāi)沖突的文件修改后使用git add 和git commit -m命令提交到當(dāng)前分支
2. git merge dev 然后合并dev分支到當(dāng)前分支上
3. git branch -d dev 合并完成后就可以刪除dev分支了
git log --graph 可以查看合并圖

Bug分支

  • git stash 保存當(dāng)前工作現(xiàn)場(chǎng)诽凌,等以后恢復(fù)現(xiàn)場(chǎng)后繼續(xù)工作
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末毡熏,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子侣诵,更是在濱河造成了極大的恐慌痢法,老刑警劉巖恬试,帶你破解...
    沈念sama閱讀 207,113評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異疯暑,居然都是意外死亡训柴,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門妇拯,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)幻馁,“玉大人,你說(shuō)我怎么就攤上這事越锈≌锑拢” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 153,340評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵甘凭,是天一觀的道長(zhǎng)稀拐。 經(jīng)常有香客問(wèn)我,道長(zhǎng)丹弱,這世上最難降的妖魔是什么德撬? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,449評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮躲胳,結(jié)果婚禮上蜓洪,老公的妹妹穿的比我還像新娘。我一直安慰自己坯苹,他們只是感情好隆檀,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,445評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著粹湃,像睡著了一般坪郭。 火紅的嫁衣襯著肌膚如雪刹前。 梳的紋絲不亂的頭發(fā)上轨奄,一...
    開(kāi)封第一講書(shū)人閱讀 49,166評(píng)論 1 284
  • 那天溉箕,我揣著相機(jī)與錄音,去河邊找鬼济赎。 笑死鉴逞,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的司训。 我是一名探鬼主播,決...
    沈念sama閱讀 38,442評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼液南,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼壳猜!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起滑凉,我...
    開(kāi)封第一講書(shū)人閱讀 37,105評(píng)論 0 261
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤统扳,失蹤者是張志新(化名)和其女友劉穎喘帚,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體咒钟,經(jīng)...
    沈念sama閱讀 43,601評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡吹由,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,066評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了朱嘴。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片倾鲫。...
    茶點(diǎn)故事閱讀 38,161評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖萍嬉,靈堂內(nèi)的尸體忽然破棺而出乌昔,到底是詐尸還是另有隱情,我是刑警寧澤壤追,帶...
    沈念sama閱讀 33,792評(píng)論 4 323
  • 正文 年R本政府宣布磕道,位于F島的核電站,受9級(jí)特大地震影響行冰,放射性物質(zhì)發(fā)生泄漏溺蕉。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,351評(píng)論 3 307
  • 文/蒙蒙 一悼做、第九天 我趴在偏房一處隱蔽的房頂上張望焙贷。 院中可真熱鬧,春花似錦贿堰、人聲如沸辙芍。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,352評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)故硅。三九已至,卻和暖如春纵搁,著一層夾襖步出監(jiān)牢的瞬間吃衅,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,584評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工腾誉, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留徘层,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,618評(píng)論 2 355
  • 正文 我出身青樓利职,卻偏偏與公主長(zhǎng)得像趣效,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子猪贪,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,916評(píng)論 2 344

推薦閱讀更多精彩內(nèi)容

  • 1.git的安裝 1.1 在Windows上安裝Git msysgit是Windows版的Git跷敬,從https:/...
    落魂灬閱讀 12,649評(píng)論 4 54
  • 序言:CGAffineTransform可以完成二維的平移、旋轉(zhuǎn)热押、縮放變換西傀,其本質(zhì)都是就是仿射變換斤寇。一個(gè)任意的仿射...
    yehkong閱讀 520評(píng)論 0 1