タグ

patchに関するamayanのブックマーク (2)

  • diffの動作原理を知る~どのようにして差分を導き出すのか | gihyo.jp

    UNIXの基的なコマンドの1つであるdiff。 これに実装されているアルゴリズムは実に興味深い世界が広がっています。 稿では、筆者が開発した独自ライブラリ「dtl」をもとに「diffのしくみ」を解説します。 はじめに diffは2つのファイルやディレクトリの差分を取るのに使用するプログラムです。 ソフトウェア開発を行っている方であれば、SubversionやGitなどのバージョン管理システムを通して利用していることが多いかと思います。稿ではそのdiffの動作原理について解説します。 差分の計算の際に重要な3つの要素 差分を計算するというのは次の3つを計算することに帰結します。 編集距離 2つの要素列の違いを数値化したもの LCS(Longest Common Subsequence) 2つの要素列の最長共通部分列 SES(Shortest Edit Script) ある要素列を別の要

    diffの動作原理を知る~どのようにして差分を導き出すのか | gihyo.jp
  • パッチをあてる(その3:patchコマンドの-pオプションについて)

    「パッチをあてる」シリーズの第3回です。 サイトを検索すると、patch コマンド実行時に C:¥work>patch -p0 < patch.txt と青色の "-p0" を付与しているサンプルが一般的のようですが、この -pnumber というオプションの意味を調査・実験してみました。 このオプションはパッチファイルに記述されたディレクトリを無視する階層を示すものです。例えばパッチファイルの1?2行目の青色部分が --- lib/MT/Util.pm.bak Fri Jan 06 14:19:44 2006 +++ lib/MT/Util.pm Fri Jan 06 14:20:48 2006 @@ -401,7 +401,7 @@ $str ||= ''; my @paras = split /\r?\n\r?\n/, $str; for my $p (@paras) { - if

    パッチをあてる(その3:patchコマンドの-pオプションについて)
  • 1