patch
「patch」とは、つぎあて・あて布・斑点・ばんそうこう・畑のことを意味する英語表現である。
「patch」とは・「patch」の意味
patchのコアとなる意味は「つぎあて」や「区画」であり、ここから転じて様々な意味で用いられる。基本的には可算名詞として使用されるが、稀に他動詞として機能するケースがあるので注意が必要である。他動詞の場合は「つぎ当てる」「取り急ぎ直す」といった意味合いになる。「patch」の複数形
patchの複数形は末尾にesを付けてpatchesとする。これは末尾がchで終わる単語の複数形にはsではなくesを用いるという法則に則ったものである。「patch」のスラングとしての意味
patchにはスラングらしいスラングはないものの、比較的使用例が少ない意味としては「やくざの縄張り」や「警察の管轄区域」といったものが挙げられる。また、日常会話ではRough Patchという言い回しで「ちょっとした問題」を意味することがある。「patch」の発音・読み方
patchの発音は「パッチ」であり、アクセントは「パ」に置かれる。ただし、日本語の会話中にカタカナ英語として用いられる場合は「チ」にアクセントが置かれて語尾上がりになることが多い。「patch」の語源・由来
patchの語源はケルト祖語であるkwesdisとされている。kwesdisは古期フランス語で「一切れ」を指すpiecheに変化し、英語圏に伝わる過程でpatchとなった。「patch」を含む英熟語・英語表現
「patch notes」とは
patch notesとは主にゲーム業界で用いられる表現である。オンラインゲームやリリース後も開発継続中のゲームでは、しばしばゲーム内容のアップデートを目的としたプログラムが配布される。ゲーム業界ではこれを一般的にpatchと言い、patchに含まれているゲームの修正・調整内容が書かれたテキストをpatch notesと呼ぶ。
「パッチアップ」とは
パッチアップは「一時的に取り繕う」「(けんかの後に)仲直りする」といった意味の熟語である。動詞の他にも名詞・形容詞として機能する場合もあるため、文脈を見て判断する必要がある。
「パッチワーク」とは
いくつもの布片を繋ぎ合わせて一つの布に仕立て上げる手芸をパッチワークと呼ぶ。ヨーロッパの農村において衣服の修繕に余った布切れを使っていたことが起源とされており、17世紀頃には装飾を施した手芸品として成立した。布同士の間に綿を挟んで縫い合わせることをキルティングと言い、パッチワークと組み合わせた手法をパッチワークキルトと呼ぶ。
「パッチケーブル」とは
パッチケーブルとは音響機器同士、あるいは楽器の音色に変化を加えるエフェクターと呼ばれる機材同士を繋ぎ合わせるために用いられる比較的短いケーブルのことを言う。一般的には1/4インチのフォーンジャックで接続され、長さが15cm~60cm程度のものを指す。プラグの形状は一直線上になっているストレート型、接続端子がケーブルに対して直角になるよう設計されたL字型がある。
「patchファイル」とは
コンピューター用語としてはバグの修正や機能の微調整に用いるための配布プログラムをpatchファイルと呼ぶ。「patch」を含む様々な用語の解説
「patchコマンド」とは
patchファイルは既存プログラムのファイルに差分ファイルを適用する処置が必要であり、そのために用いる手法をpatchコマンドと言う。patchコマンドはdiffコマンドによって作成した差分ファイルを既存ファイルに適用し、新しいファイルを生成する。patchファイルの適用確認(--dry-runオプション)、バックアップ作成 (-bオプション)、パッチファイルの指定 (-iオプション)など必要に応じて様々なオプションが用いられる。
「劇団Patch」とは
劇団Patchとはワタナベエンターテインメント関西事業本部所属の男性俳優による劇団プロジェクトである。関西で一生懸命である様を表す「必死のパッチ」が劇団名の由来となった。2012年4月結成当時のメンバーは中山義紘・井上拓哉・松井勇歩・竹下健人・三好大貴・星璃の六名である。「patch」の使い方・例文
・The patch file will be distributed tonight.(パッチファイルは今夜配布予定です)
・I read patch notes thoroughly with my friend.(私は友人とパッチノートを熟読した)
・My mother's hobby is patch work.(母の趣味はパッチワークだ)
劇団Patchとはワタナベエンターテインメント関西事業本部所属の男性俳優による劇団プロジェクトである。関西で一生懸命である様を表す「必死のパッチ」が劇団名の由来となった。2012年4月結成当時のメンバーは中山義紘・井上拓哉・松井勇歩・竹下健人・三好大貴・星璃の六名である。
「patch」の使い方・例文
・The patch file will be distributed tonight.(パッチファイルは今夜配布予定です)・I read patch notes thoroughly with my friend.(私は友人とパッチノートを熟読した)
・My mother's hobby is patch work.(母の趣味はパッチワークだ)
パッチ
パッチ(英: patch)とは、主に「修正プログラム」(プログラムの修正データ)の意味で用いられる語です。つまり、コンピュータプログラムを部分的に修正・更新するために用いられる追加分のデータのことです。
パッチを用いてソフトウェアを更新することを「パッチを適用する」とか「パッチを当てる」という風に表現します。
修正プログラムとしてのパッチは、ソフトウェアの小規模な修正や改良を目的として配布される、いわば差分データです。最新版ソフトウェアをまるごと配布し直す方法と比べると、パッチの方が少ないデータ量の通信で済みます。その意味で、かつて回線通信速度が非常に限られていた時代には特に、パッチの配布による更新方式は重宝されました。
「ソフトウェアの最新バージョンを導入する」という場合、ソフトウェア全体をインストールし直す格好であり、一般的には「アップデート」や「更新」と呼び、「パッチの適用」とは区別されます。
もともとパッチは英語で、「つぎはぎ(に使う布)」、継ぎ当てに用いる「当て布」を指す語です。たとえば、服などの破れたりすり切れたりした箇所を補修するために用いられた布がパッチです。ちなみに、このパッチの継ぎ合わせの手法を駆使して意匠を表現する縫製の方法がパッチワーク(patchwork)です。
プログラムの修正データとしての「パッチ」も、いわゆる「当て布」も、既存の完成品の修繕や改良を目的に「あてがう」物である、という点で共通しています。その意味では、修正データとしての「パッチ」は、「当て布」になぞらえられた(比喩的な)呼び名とも解釈できます。しかしながら、かつてパンチカードにプログラムを記述してコンピュータに読み込ませていた黎明期には、実際にパンチカードに継ぎ当てを加えてプログラムの修正・更新を行っていたらしく、パッチは元々は文字通りパッチ(当て布)だったということが、一時期話題になったことがあります。
パッチ【patch】
パッチ
改良後のソフトウェアと改良前のソフトウェアの差分情報。パッチ(patch)とはもともと、「当て布」の意味である。穴の空いた衣服を当て布で繕うように、改良前のソフトウェアに差分情報を適用すれば、不具合(バグ)修正や機能追加などの改良を施せる。パッチを使ってソフトウェアを改良する作業は、当て布からの連想で「パッチを当てる」と表現することが多い。
ソフトウェアの不具合修正や機能追加は、一般に、部分的な修正で実現できる。ソフトウェア全体の再配布に比べ、配布すべき情報量が少なく効率的であるため、パッチを使った問題修正方法が広く利用されている。セキュリティ問題を修正する目的で作成されたパッチは特に「セキュリティパッチ」と呼ばれる。
なおUNIX系OSには、パッチを当てるためのpatchコマンドが用意されている。
関連見出し
バックポート
修正プログラム
別名:修正モジュール,修正パッチ,パッチ,アップデートプログラム
【英】update program, update module, update patch, patch
修正プログラムとは、ソフトウェアの修正を行うためのプログラムである。
修正プログラムには、変更箇所の差分情報が含まれており、完成されたプログラムの一部に対して、ソースコードを直接編集して再コンパイルをすることなく不具合の改修や仕様変更などを施すことができる。小さな機能追加や変更、セキュリティホールなどに対する対処としてよく利用される。修正プログラムは、インターネットからダウンロードするか、CD-ROMの配布によって入手できることが多い。
UNIX系OSにおいては、修正プログラムではなく修正パッチと呼ばれることが多い。また、MicrosoftのWindowsやMicrosoft Officeなどに対する修正プログラムについては、更新の規模などによってサービスパック(Service Pack)、セキュリティロールアップパッケージなどの種類に分かれる。
パッチ
ある部材の強度を局部的に上げる必要があるときに付加する、小さな補強材(当て板)をいう。例えば、耐久試験、強度試験などで車体のある部位から亀裂が発生したり、大きな応力集中が発生したときなどに、該当部品の板厚を上げたり、該当部位にパッチを補強部材として追加するケースがよくある。後者を、パッチを当てるという言い方をする。もちろん識別のために部品名称を付ける。例えばピラーに付ければピラーリーンフォースメントである。
パッチ [patch]
Patch
patch
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/03/08 16:26 UTC 版)
開発元 | GNUプロジェクト |
---|---|
最新版 |
2.7
/ 2012年9月12日 |
リポジトリ | |
プログラミング 言語 | C |
ライセンス | GPL |
公式サイト |
savannah |
patch(パッチ)は、テキストファイルにパッチ処理を行うUNIX上のプログラム。「パッチファイル」と呼ばれるファイルに格納された命令群に従ってテキストファイルを更新する。パッチファイル(単にパッチとも呼ばれる)自体もテキストファイルであり、diff を使って元のファイルと更新後のファイルの差分をとることで作成される。パッチによるファイルの更新を「パッチを当てる」などという。
歴史
patch を最初に作ったのは(後に Perl を開発した)ラリー・ウォールであり、彼はそれを1985年5月にmod.sources へポストした(後に comp.sources.unix となった)。このプログラムはGNUプロジェクトの一部となり、フリーソフトウェア財団が保守している。
使用法
patchはプログラマの間でのやり取りのために作られ、ソースコードの更新のためによく用いられている。そのため、パッチソフトと言えばプログラムに使うものという先入観がある人が多いが、実際にはあらゆるテキストに適用可能である。パッチソフトは「当て布」という本来の語義に反して、テキストの追加のみでなく削除も行うことができる。なおpatchは、バイナリ形式のパッチを扱うプログラムではない。
ソフトウェア開発におけるパッチ
patch への入力となる diff ファイルは読み取り可能なテキストファイルであり、使う前に人間が中身を確かめることが容易である。より進んだ diff を使った場合、パッチ適用前に独自に修正されたファイルにもパッチを適用可能である(それらの修正が patch を妨げない限り)。これは例えばコンテキスト形式 (diff -c) やユニファイド形式 (diff -u) を使う場合である。これらの diff は変更箇所の前後の文脈(コンテキスト)も diff の一部として示す。patch はそれらの情報を使って、行番号がずれていてもパターンマッチングによってパッチ適用箇所を特定する(もちろん、最初は行番号を使ってパッチを適用しようと試みる)。
コンテキスト形式やユニファイド形式は行番号に依存しないのでパッチに適している。ユニファイド形式は慣れていないと読みにくく、コンテキスト形式の方が分かりやすい。ただし、ユニファイド形式の方が非常にコンパクトになる。また、多くのオープンソースプロジェクトは「diff -u 変更前ファイル 変更後ファイル」で生成されたユニファイド形式のパッチを推奨している。
diff プログラム以外にも diff 形式のファイルを生成するプログラムがある。ほとんどのバージョン管理システム(Git、Subversion、CVS、RCSなど)は対応している。バージョン管理システムでもパッチは重要な要素である。
オープンソースの世界では、diff と patch を使って修正をやり取りするのが一般的である。あるフリーソフトウェアのソースを外部の者がダウンロードし、修正を加え、それを diff 形式でチームに送る。そうすると、チームメンバーはそれをパッチとして適用する前にレビューでき、外部の者がアクセスできるソースではなく、開発中の最新のソースにパッチを適用することで修正を取り込むことができる。
使用例
ファイル単位
ファイル単位でパッチを作成するには、以下のコマンドをシェル上で実行する。
$ diff -u test.c.orig test.c > mods.patch
パッチを適用するには、以下のコマンドをシェル上で実行する。
$ patch -p0 < mods.patch
パッチファイル mods.patch 内にはパッチを適用すべきファイル名が書かれているためコマンド中に指定する必要がない。
パッチを適用前の状態に戻すには '-R' オプションを使用する。
$ patch -p0 -R < mods.patch
diff を適用したバージョン(上記test.c)とパッチを適用しようとしているバージョンが異なる場合、パッチは正しく適用できない。 例えば、パッチを適用しようとしているテキストの先頭に行が挿入されていると、パッチファイル内に書かれている行番号が一致しなくなる。 patch はパターンマッチングで修正する前後の行を特定するため、ある程度は変更に対処できる。また修正箇所近辺の内容が違っている場合も対処可能である(fuzz)。ただし、独自の修正を加えられたソースにパッチを適用して正しく動作するかは保証されない。
フォルダ単位
フォルダ単位でパッチを作成し、元に戻すには以下のように行う。
$ diff -ur old new > mods.patch
$ cd old
$ patch -p1 < mods.patch
サブディレクトリにあるファイルへのパッチ適用には -pnumber オプションを必要とし、ソースツリーのベースディレクトリがパッチファイルに含まれている場合は number に 1、さもなくば 0 を指定する。例えば、git などを使うと、a/test.c と b/test.c に対するパッチという形で古い方を仮想的にフォルダa、新しい方を仮想的にフォルダbに入れるので、この形式のパッチは、patch -p1 < mods.patch
を使う。
移植
UNIX系システムが起源だが、patch はMicrosoft Windowsなどにも移植されている。Windows 版の patch は GNU utilities for Win32 にある。
Windows Vista 以後はプログラム名に「patch」という単語が含まれていると UAC によってマルウェアと判断されるので、UAC に対応したものを利用する必要がある。
関連項目
外部リンク
- patch(1) - マニュアル
- patchutils - パッチ操作ユーティリティ
- GNU tools for Win32 - Win32 への移植版(diff と patch を含む)(Version 2.5.9-7 UAC制限)
- GNU utilities for Win32 - Win32 への移植版(diff と patch を含む)(Version 2.5 UAC制限)
- Git for Windows - Win32 への移植版が付属している (Version 2.5 UAC対応済)
- Strawberry Perl for Windows - Win32 への移植版が付属している (Version 2.5.9 UAC対応済)
- diffstat
- Patchのページへのリンク