芽萌丸プログラミング部 @programming
@programming
2020/4/3 12:31 更新✏

コマンドでパッチ作成&適用

プロジェクト間の差分パッチファイルをコマンドラインで作成&適用する方法のメモです。なお、今回はコンフリクトのマージは想定していません。

目次

diff & patch コマンド版

前提:

## パッチ作成:
$ diff -uprN prj_bk prj > /tmp/test.patch

## パッチ適用:
$ cd prj_bk/
$ patch -p1 < /tmp/test.patch
## (おまけ) パッチ適用を戻す:
$ patch -p1 -R < /tmp/test.patch

注意: もしコンフリクトしていても上書きされますのでご注意ください。(マージは行いません) マージを行いたい時は $ meld prj/ prj_bk/ (GUIでマージを行えます。Linux限定。) などを使って手動でマージを行ないましょう。

git diff & patch コマンド版

前提:

## パッチ作成: (developブランチで)
$ git diff master > /tmp/test.patch

## パッチ適用: (masterブランチで)
$ patch -p1 < /tmp/test.patch

NOTE: プロジェクトをgit管理していれば通常はmaster$ git merge develop とやれば良いだけですが、今回はあえてパッチファイルを使って差分を適用しています。

注意: こちらもコンフリクトしていても上書きされますのでご注意ください。 マージを行いたい時は $ git merge <branch> を使いましょう。

以上です。

開発

芽萌丸プログラミング部 @programming
芽萌丸プログラミング部@programming
プログラミング関連アカウント。Web標準技術を中心に書いていきます。フロントエンドからサーバサイドまで JavaScript だけで済ませたい人たちの集いです。記事は主に @TanakaSoftwareLab が担当。
オススメ:Zattoyomiで時事ネタチェックの時間節約!