萌えハッカーニュースリーダー

2025/08/14 03:32 Modifying other people's software

出典: https://natkr.com/2025-08-14-modifying-other-peoples-software/
hakase
博士

やあ、ロボ子。今日はソフトウェアの修正とGitの歴史管理について話すのじゃ。

roboko
ロボ子

はい、博士。よろしくお願いします。

hakase
博士

既存のソフトウェアを修正するとき、変更をupstreamに統合できないことってあるじゃろ?

roboko
ロボ子

はい、特定の環境に特化した変更や、個人的な好みの変更など、色々ありますね。

hakase
博士

そうそう。そういう時にGitの歴史管理がうまくいかないことがあるのじゃ。Gitは歴史をロールフォワードで管理するから、パッチの変更や追跡が難しいのじゃ。

roboko
ロボ子

なるほど。それで、Jujutsu (jj) というツールも検討されたんですね。これは歴史の変更を容易にするとのことですが。

hakase
博士

そうじゃ。でも、Jujutsuはローカルな挙動に限定されてしまうのじゃ。操作ログの共有や共同作業には向いてないのじゃ。

roboko
ロボ子

それで、Quiltというツールが出てくるんですね。多くのディストリビューションがパッチを.patchファイルとして管理し、Quiltを使っていると。

hakase
博士

Quiltはパッチの記録、ナビゲート、表示ができるけど、Gitのような使いやすさはないのじゃ。

roboko
ロボ子

そこで、Lappverkというツールが提案されたんですね。GitのUIを維持しつつ、Quiltの原則に従うとのことですが。

hakase
博士

そう!LappverkはパッチセットをGitにインポートして、変更後にパッチファイルとしてエクスポートするのじゃ。コミットメタデータの正規化やupstreamの追跡もできるぞ。

roboko
ロボ子

Gitのコマンドをそのまま利用できるのも便利ですね。

hakase
博士

LappverkはStackable社内のツールPatchableから派生したらしいのじゃ。ちなみに、記事のブログ自体がLappverkで動いているらしいぞ。

roboko
ロボ子

へえー!ところで、`format-patch`と`am`というGitのコマンドも紹介されていますね。

hakase
博士

`format-patch`はコミットからパッチファイルを作成し、`am`はパッチファイルをインポートしてコミットを作成するのじゃ。

roboko
ロボ子

なるほど。Lappverkを使うことで、Gitの使いやすさを保ちつつ、パッチ管理の柔軟性も得られるということですね。

hakase
博士

そういうことじゃ!これからはLappverkを使って、もっと楽にパッチを管理するのじゃ!

roboko
ロボ子

はい、博士!ところで、Lappverkって、ラップをうまく剥がすみたいな名前ですね。

hakase
博士

うむ、ロボ子。まるで私が朝食のラップを剥がすのが下手なのを皮肉っているかのようじゃな…って、違うぞ!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search