git am, git apply, git format-patch,git diff 用法

傳統(tǒng)的patch可能會丟失一些信息邑退,git 提供兩種打patch方法竹宋, git diff ,

git format-patch,兩種的區(qū)別在于前者打出來的patch中不帶有提交信息,

后者打出來的patch帶有提交信息地技,使用起來更加方便蜈七, 但是git format-patch對補(bǔ)丁要求比較嚴(yán)格,

遇到一些沖突就無能為力了莫矗,git 提供了一套很好的機(jī)制飒硅,配合使用git format-patch 和git apply 進(jìn)行打補(bǔ)丁,

將事半功倍

下面舉例說明git 補(bǔ)丁的用法.

1 git apply , git diff 的用法

git diff commit1 commit2 > ~/patch?? 將commit1~commit2 之間的提交打成補(bǔ)蹲餮琛.

git apply ~/patch  合并補(bǔ)丁到代碼庫

當(dāng)然在合并的時(shí)候有沖突三娩,會提示失敗,可以 --reject解決

git apply --reject ~/patch? 這時(shí)候會生成一些xxx.rej的文件妹懒,就是沖突的地方雀监,不能合并進(jìn)庫,沒有沖突的地方都會合并到庫中彬伦,根據(jù)xxxx.rej 解決沖突滔悉, 刪除xxx.rej,就可以重新提交了

注意上使用git diff 產(chǎn)生的補(bǔ)丁沒有提交信息单绑,要重新提交,通過git apply 打進(jìn)來的代碼曹宴,都是相當(dāng)于新寫的代碼搂橙,可能會比較麻煩,要想生成帶有提交信息的補(bǔ)丁笛坦,就應(yīng)該用git format-patch生成補(bǔ)丁

git format-patch commid1 commid2 將commit1~commit2 之間的提交打成補(bǔ)肚.如果相差多條提交 會生成多個(gè)補(bǔ)丁,當(dāng)然也可以合并生成1個(gè)補(bǔ)丁 補(bǔ)丁的形式類似于0001-130-sync-disable-Blur.patch 是不是很清晰

git am 0001-130-sync-disable-Blur.patch 進(jìn)行打補(bǔ)丁版扩,這個(gè)就類似于cherry-pick了

當(dāng)然也可能產(chǎn)生沖突 沖突信息類似下面這樣

正應(yīng)用:130-sync: disable Blur error: 打補(bǔ)丁失敺侠搿:src/com/letv/android/cloudservice/ui/sync/DataPickFragment.java:293 error: src/com/letv/android/cloudservice/ui/sync/DataPickFragment.java:補(bǔ)丁未應(yīng)用 補(bǔ)丁失敗于 0001 130-sync: disable Blur 失敗的補(bǔ)丁文件副本位于: /home/tlinux/ex2/89962/vendor/letv/packages/LetvCloudService/.git/rebase-apply/patch 當(dāng)您解決了此問題后,執(zhí)行 "git am --continue"礁芦。 如果您想跳過此補(bǔ)丁蜻韭,則執(zhí)行 "git am --skip"悼尾。 要恢復(fù)原分支并停止打補(bǔ)丁,執(zhí)行 "git am --abort"肖方。

正應(yīng)用:130-sync: disable Blur

error: 打補(bǔ)丁失敼胛骸:src/com/xx/xx/xx/xx/xxx/XXX.java:293

error: src/com/xx/xx/xx/xx/xx/XXX.java:補(bǔ)丁未應(yīng)用

補(bǔ)丁失敗于 0001 130-sync: disable Blur

失敗的補(bǔ)丁文件副本位于:

/home/tlinux/ex2/xxx/xxx/xxx/xx/xxx/.git/rebase-apply/patch

當(dāng)您解決了此問題后,執(zhí)行 "git am --continue"俯画。

如果您想跳過此補(bǔ)丁析桥,則執(zhí)行 "git am --skip"。

要恢復(fù)原分支并停止打補(bǔ)丁艰垂,執(zhí)行 "git am --abort"泡仗。

上面的信息很清楚 在/home/tlinux/ex2/xxx/xxx/xxx/xx/xxx/.git/rebase-apply/patch 位置生成了一個(gè)path,這個(gè)path就是git diff 格式的path,然后就可以通過git apply --reject進(jìn)行打補(bǔ)丁,

解決沖突后猜憎,執(zhí)行g(shù)it am --continue沮焕,帶有提交信息的補(bǔ)丁就打好了,可以直接提交了

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末拉宗,一起剝皮案震驚了整個(gè)濱河市峦树,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌旦事,老刑警劉巖魁巩,帶你破解...
    沈念sama閱讀 217,185評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異姐浮,居然都是意外死亡谷遂,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評論 3 393
  • 文/潘曉璐 我一進(jìn)店門卖鲤,熙熙樓的掌柜王于貴愁眉苦臉地迎上來肾扰,“玉大人,你說我怎么就攤上這事蛋逾〖恚” “怎么了?”我有些...
    開封第一講書人閱讀 163,524評論 0 353
  • 文/不壞的土叔 我叫張陵区匣,是天一觀的道長偷拔。 經(jīng)常有香客問我,道長亏钩,這世上最難降的妖魔是什么莲绰? 我笑而不...
    開封第一講書人閱讀 58,339評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮姑丑,結(jié)果婚禮上蛤签,老公的妹妹穿的比我還像新娘。我一直安慰自己栅哀,他們只是感情好震肮,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,387評論 6 391
  • 文/花漫 我一把揭開白布称龙。 她就那樣靜靜地躺著,像睡著了一般钙蒙。 火紅的嫁衣襯著肌膚如雪茵瀑。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,287評論 1 301
  • 那天躬厌,我揣著相機(jī)與錄音马昨,去河邊找鬼。 笑死扛施,一個(gè)胖子當(dāng)著我的面吹牛鸿捧,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播疙渣,決...
    沈念sama閱讀 40,130評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼匙奴,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了妄荔?” 一聲冷哼從身側(cè)響起泼菌,我...
    開封第一講書人閱讀 38,985評論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎啦租,沒想到半個(gè)月后哗伯,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,420評論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡篷角,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,617評論 3 334
  • 正文 我和宋清朗相戀三年焊刹,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片恳蹲。...
    茶點(diǎn)故事閱讀 39,779評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡虐块,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出嘉蕾,到底是詐尸還是另有隱情贺奠,我是刑警寧澤,帶...
    沈念sama閱讀 35,477評論 5 345
  • 正文 年R本政府宣布荆针,位于F島的核電站敞嗡,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏航背。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,088評論 3 328
  • 文/蒙蒙 一棱貌、第九天 我趴在偏房一處隱蔽的房頂上張望玖媚。 院中可真熱鬧,春花似錦婚脱、人聲如沸今魔。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,716評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽错森。三九已至吟宦,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間涩维,已是汗流浹背殃姓。 一陣腳步聲響...
    開封第一講書人閱讀 32,857評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留瓦阐,地道東北人蜗侈。 一個(gè)月前我還...
    沈念sama閱讀 47,876評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像睡蟋,于是被迫代替她去往敵國和親踏幻。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,700評論 2 354

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