コンテンツにスキップ

FreeBSD/gitupを使ったソースツリーの維持

出典: フリー教科書『ウィキブックス(Wikibooks)』

FreeBSDで/usr/srcおよび/usr/portsを最新の状態に維持するためには、gitupを利用する方法が推奨されています。以下に、gitupを使って最新の状態を維持する方法を示します。

gitupのインストール

[編集]

まず、gitupがインストールされていない場合は、次のコマンドでインストールします。

pkg install gitup

gitupによる更新方法

[編集]

gitupを使って、/usr/src(ソースコード)や/usr/ports(ポートツリー)を更新する手順は以下の通りです。

/usr/src(ソースコード)の更新

[編集]

gitupを実行して最新のソースコードを取得します。

gitup stable
これで、stableブランチ(例えば、stable/14)の最新のソースコードが取得されます。

/usr/ports(ポートツリー)の更新

[編集]

gitupを実行して最新のポートツリーを取得します。

gitup ports
これで、ポートツリーが最新の状態に更新されます。

初回クローン

[編集]

もし初めて/usr/src/usr/portsgitupでクローンする場合は、次の手順を実行します。

/usr/srcのクローン

[編集]
gitup -c stable

/usr/portsのクローン

[編集]
gitup -c ports

これで、gitup/usr/src/usr/portsのリポジトリを初回クローンしてくれます。

gitup設定ファイル

[編集]

gitupの設定ファイルは/usr/local/etc/gitup.confに保存されています。特定のリポジトリやブランチを更新するために、この設定ファイルをカスタマイズできます。

/usr/local/etc/gitup.conf
# /usr/local/etc/gitup.conf.sample をコピーし適宜書き換えます
{
        "defaults" : {
                "host"           : "git.freebsd.org",
                "port"           : 443,
                "low_memory"     : false,
                "display_depth"  : 0,
                "verbosity"      : 1,
                "work_directory" : "/var/db/gitup",
        },
        "ports" : {
                "repository_path"  : "/ports.git",
                "branch"           : "main",
                "target_directory" : "/usr/ports",
                "ignores"          : [],
        },
        "stable" : {
                "repository_path"  : "/src.git",
                "branch"           : "stable/14",
                "target_directory" : "/usr/src",
                "ignores"          : [
                        "sys/[^\/]+/conf",
                ],
        },
}

更新時の注意点

[編集]
  • gitupは軽量で依存関係の少ないツールであり、gitをインストールすることなくFreeBSDのソースやポートを更新することができます。
  • gitupはパックファイルを保持しないため、ディスクの使用量が少なく済みますが、gitの完全な履歴にはアクセスできません。そのため、gitupはシャロークローンを行い、履歴を深く掘り下げていくことはできません。

これらを踏まえて、定期的にgitupを実行することで、/usr/src/usr/portsを最新の状態に保つことができます。