Git——版本控制器(二:進階)

上一篇簡單的介紹了Git的安裝以及使用等换淆,簡單回顧下步驟:

1心褐,下載Git,然后一直next安裝完成
2誊役,配置信息和查看配置信息
3获列,初始化
4,提交代碼(本地代碼庫和遠程代碼庫)

這也就是Git最基本的用法蛔垢,現(xiàn)在來聊聊進階點的用法


(一)忽略文件

在上篇中击孩,我們的代碼庫創(chuàng)建完成了,也可以將代碼提交了啦桌,但是有個問題溯壶,如果有些文件我們不需要添加到庫中,我們應(yīng)該怎么做呢甫男?當(dāng)然我們可以一個文件一個文件的去操作,但是這種很耗時耗力验烧,比如板驳,在項目結(jié)構(gòu)當(dāng)中,build目錄下的文件都是編譯項目時生成的碍拆,這個目錄下存放著一些我們不需要的東西若治,比如apk,我們不應(yīng)該將這部分文件添加到庫中感混,我們應(yīng)該怎么做端幼?

其實Git提供了一種可配性很強的機制來允許用戶指定哪些文件不用提交,它會檢查代碼庫中目錄下是否存在一個.gitignore文件弧满,如果存在婆跑,就去執(zhí)行這里面的代碼,并且把里面每一行指定的文件或者目錄都不添加到庫庭呜,然而當(dāng)我們創(chuàng)建完Android項目時滑进,都會有這個文件,并且有兩個募谎,一個是根目錄下扶关,一個是app下,我們分別來看看

根目錄下的.gitignore

# Built application files
*.apk
*.ap_

# Files for the ART/Dalvik VM
*.dex

# Java class files
*.class

# Generated files
bin/
gen/
out/

# Gradle files
.gradle/
build/

# Local configuration file (sdk path, etc)
local.properties

# Proguard folder generated by Eclipse
proguard/

# Log Files
*.log

# Android Studio Navigation editor temp files
.navigation/

# Android Studio captures folder
captures/

# Intellij
*.iml
.idea/workspace.xml
.idea/tasks.xml
.idea/libraries
# Keystore files
*.jks

# External native build folder generated in Android Studio 2.2 and later
.externalNativeBuild

不知道你們發(fā)現(xiàn)沒有数冬,每一個目錄前面都有一個“#”节槐,這個符號的意思是代表這個目錄下的所有文件,不難看出,配置的都是一些不需要上傳的東西铜异,如apk地来,log,jks等熙掺,現(xiàn)在在來看看app下的.gitignore
app下的.gitignore

/build

就是一個build未斑,表示build目錄也不會被提交,不過注意币绩,這里是用 “/” 來表示的蜡秽,了解這兩個.gitignore之后,我們就可以任意的修改我們不需要提交的文件了缆镣,比如這樣

/build
/sre/test
/src/androidTest

這里指定了測試文件都不提交芽突,因為測試文件都是存放在這兩個目錄下,而且測試主要是在開發(fā)過程中來檢查代碼是否正確董瞻,真正完成項目之后寞蚌,就沒用了,所以我們可以不提交它們


(二)查看修改內(nèi)容

我們在提交完代碼后還可以查看修改過的內(nèi)容钠糊,通過命令

git status

我們來看看怎么做挟秤,我們首先在MainActivity隨便修改點東西,然后我們在Git Bash輸入命令抄伍,看下結(jié)果


可以看到艘刚,紅色那段說我們的MainActivity被修改了,然后我們可以通過命令來看看修改了什么

git diff app/src/main/java/com/mycoolweather/activity/MainActivity.java

如果我們僅僅想看這個類改了什么截珍,就可以通過全路徑的方式來查看俺泣,結(jié)果如下


紅色部分表示刪除夸赫,綠色表示添加,這里出現(xiàn)亂碼那是因為這兩段都是注釋,這里可能識別不了素跺,我們來看看修改什么


沒錯捧毛,我們將之前的注釋改成現(xiàn)在這個注釋示罗,是不是挺簡單的呢妖啥?


撤銷未提交的修改

這里注意,是沒有提交的修改才可以撤銷诞丽,否則是不行的鲸拥,我們想撤回修改前的代碼,可以使用命令

 git checkout app/src/main/java/com/mycoolweather/activity/MainActivity.java

然后我們在用git status查看下僧免,會發(fā)現(xiàn)


當(dāng)前項目沒有可提交的文件刑赶,說明了我們撤銷成功了

這里有個注意點,如果我們調(diào)用了git add命令了懂衩,在調(diào)用git checkout就無法撤回了撞叨,因為已經(jīng)添加了金踪,這時候我們可以用取消命令來取消添加,命令如下

git reset HEAD app/src/main/java/com/mycoolweather/activity/MainActivity.java

之后我們就可以做上面的操作了牵敷,這時候就跟原來的一樣了


查看提交記錄

我們可以通過命令來查看我們提交的記錄胡岔,命令是

git log

之后我們就可以看到我們的提交記錄了


我們可以看到每次提交的信息,有提交人枷餐,提交時間以及描述靶瘸,細心的你看到了有兩個提交人,但是他們都是統(tǒng)一郵箱毛肋,那是因為這個項目有兩個代碼庫怨咪,也就是說同一個項目我放到兩個代碼庫里面,如果你想看提交的內(nèi)容润匙,命令如下

git log a39a1e98fbf0618ea99ddff0e91f104ce6e6468f -1

通過git log加上提交的標(biāo)識并且加上-1我們就可以看到這行記錄了


然后我們可以查看這條記錄的內(nèi)容诗眨,只需要在查看記錄的命令后面加上-p就可以了

git log a39a1e98fbf0618ea99ddff0e91f104ce6e6468f -1 -p

然后結(jié)果如下

好了,到這里基本就結(jié)束了孕讳,用命令來玩Git是不是很爽很裝逼呢匠楚?哈哈哈哈哈

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市厂财,隨后出現(xiàn)的幾起案子芋簿,更是在濱河造成了極大的恐慌,老刑警劉巖蟀苛,帶你破解...
    沈念sama閱讀 206,602評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件益咬,死亡現(xiàn)場離奇詭異,居然都是意外死亡帜平,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,442評論 2 382
  • 文/潘曉璐 我一進店門梅鹦,熙熙樓的掌柜王于貴愁眉苦臉地迎上來裆甩,“玉大人,你說我怎么就攤上這事齐唆∴退ǎ” “怎么了?”我有些...
    開封第一講書人閱讀 152,878評論 0 344
  • 文/不壞的土叔 我叫張陵箍邮,是天一觀的道長茉帅。 經(jīng)常有香客問我,道長锭弊,這世上最難降的妖魔是什么堪澎? 我笑而不...
    開封第一講書人閱讀 55,306評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮味滞,結(jié)果婚禮上樱蛤,老公的妹妹穿的比我還像新娘钮呀。我一直安慰自己,他們只是感情好昨凡,可當(dāng)我...
    茶點故事閱讀 64,330評論 5 373
  • 文/花漫 我一把揭開白布爽醋。 她就那樣靜靜地躺著,像睡著了一般便脊。 火紅的嫁衣襯著肌膚如雪蚂四。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,071評論 1 285
  • 那天哪痰,我揣著相機與錄音遂赠,去河邊找鬼。 笑死妒御,一個胖子當(dāng)著我的面吹牛解愤,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播乎莉,決...
    沈念sama閱讀 38,382評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼送讲,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了惋啃?” 一聲冷哼從身側(cè)響起哼鬓,我...
    開封第一講書人閱讀 37,006評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎边灭,沒想到半個月后异希,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,512評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡绒瘦,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,965評論 2 325
  • 正文 我和宋清朗相戀三年称簿,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片惰帽。...
    茶點故事閱讀 38,094評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡憨降,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出该酗,到底是詐尸還是另有隱情授药,我是刑警寧澤,帶...
    沈念sama閱讀 33,732評論 4 323
  • 正文 年R本政府宣布呜魄,位于F島的核電站悔叽,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏爵嗅。R本人自食惡果不足惜娇澎,卻給世界環(huán)境...
    茶點故事閱讀 39,283評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望操骡。 院中可真熱鬧九火,春花似錦赚窃、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,286評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至虑鼎,卻和暖如春辱匿,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背炫彩。 一陣腳步聲響...
    開封第一講書人閱讀 31,512評論 1 262
  • 我被黑心中介騙來泰國打工匾七, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人江兢。 一個月前我還...
    沈念sama閱讀 45,536評論 2 354
  • 正文 我出身青樓昨忆,卻偏偏與公主長得像,于是被迫代替她去往敵國和親杉允。 傳聞我的和親對象是個殘疾皇子邑贴,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,828評論 2 345

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