GNU Stow
Description:
シンボリックリンクを管理し、複数のディレクトリ構成を一箇所に統合・展開するシンボリックリンクファームマネージャー
GitHub:
Tags:
Updated:
2026/01/28
- ・ シンプルなリンク管理: 特定のディレクトリ構造を別の場所に「投影」するように、一括でシンボリックリンクを作成・削除。
- ・ Dotfiles管理に最適: 設定ファイルを一つのGitリポジトリにまとめつつ、ホームディレクトリなどの適切な場所に簡単に展開可能。
- ・ クリーンな管理: ファイルを直接コピーするのではなくリンクを張るため、設定の変更が即座に同期され、アンインストール(リンク削除)も安全。
- ・ パッケージ感覚の運用: ツールごとに設定をディレクトリ分けしておき、必要なものだけを
stowコマンドで個別に適用可能。
- ・ Dotfiles(設定ファイル)の同期:
~/.dotfiles内で管理しているbash,vim,tmux等の設定を、各マシンのホームディレクトリへ一気に展開。 - ・ 独自ビルドプログラムの配置:
/usr/local/stow/内にバージョンごとにアプリを配置し、/usr/local/bin等へ必要なバージョンだけをリンク。 - ・ 複数マシン間での設定共有: Gitリポジトリ化した設定ファイルを
git pullしてからstowすることで、すべてのマシンで共通の環境を維持。
構築・初期設定
Section titled “構築・初期設定”インストール
Section titled “インストール”Unix系OSであれば、ほとんどの標準リポジトリに含まれています。
- Ubuntu / Debian
- macOS (Homebrew)
- Arch Linux
基本的な使い方 (Dotfiles管理の例)
Section titled “基本的な使い方 (Dotfiles管理の例)”- 設定をまとめるディレクトリを作成し、その中にアプリごとのディレクトリを作ります。
.dotfilesディレクトリへ移動し、stowコマンドを実行してリンクを張ります。
これで ~/.vimrc が ~/.dotfiles/vim/.vimrc へのシンボリックリンクとして作成されます。
リンクの解除
Section titled “リンクの解除”設定を元に戻したい(リンクを削除したい)場合は -D オプションを使います。