linux打補丁和git打patch方法

1、linux打補丁方法


一、處理單個文件補丁的方法:


# 產生補丁
python

diff -uN from-file to-file >to-file.patch

# 打補丁linux

patch -p0 < to-file.patch

# 取消補丁git

patch -RE -p0 < to-file.patch

二、對整個文件夾打補丁的狀況:


# 產生補丁
app

diff -uNr  from-docu  to-docu  >to-docu.patch

# 打補補丁spa

cd to-docu
patch -p1 < to-docu.patch

# 取消補丁code

patch -R -p1 <to-docu.patch

2、git打patch方法

一、git format-patch <commit>  (推薦)


 只適用於git的patch
包含diff信息,包含提交人,提交時間等
若是git format-patch 生成的補丁不能打到當前分支,git am會給出提示,並協助你完成打補丁工做
例:
orm

從master checkout一個新分支修改而後與master對比生成patch。
git format-patch -M master //-M選項表示這個patch要和那個分支比對
git am 001-xxx.patch(沒必要從新commit)


二、git diff <commit>


生成標準的patch,只包含diff信息
git diff生成的Patch兼容性強,能夠用git apply --check 查看補丁是否可以乾淨順利地應用到當前分支中。
例:
it

從master checkout一個新分支修改而後與master對比生成patch。 
git diff master > patch
git apply xxx.patch(須要從新commit)
相關文章
相關標籤/搜索