2021/04/18(日)なんと! FreeBSD 13 から、ソースコード管理が subversion から git へ・・・

2021/04/18 5:47 サーバ運営・管理
2021/04/13 付けで、FreeBSD 13 が公開されました。
今回から、aarch64(arm64) と称されるアーキテクチャが amd64 と同等の Tier 1 に、
最初のTier 1 サポートになった i386 が Tier 2 に変更となっています。時代の変化です。
aarch64 は Raspberry pi に代表される小型のボードが主な対応機器になります。

Tier 1 は、フルサポートが保証されるプラットフォームで amd64 と aarch64 が該当、
Tier 2 は、実使用出来るものの、新機能追加やセキュリティサポートが積極的に行われないバージョンで、最も多くのプラットフォームがこれです。

FreeBSD の Tier ランクは4つあり、Tier 3 が実験的アーキテクチャ(FreeBSD 13 では該当なし)、
Tier 4 は「サポート終了宣言」のアーキテクチャで、現在は、pc98(NEC系の古いパソコン) と sparc64(20年近く前にかなり普及していた、サンマイクロシステムズのワークステーション) が主に該当します。

前置きが長くなりましたが、今回から変更になったものがもう一つ。ソースコードの管理です。。
リリースが近くなってから話には聞いていたものの、『実に厄介だ』というのが第一印象。

いつものように、メンテナンスのためにソースコードからアップデートかけようと、
ソースコード取得を下記のように試みるが・・・
20210418.png

このように「そんなものは無い」と拒絶されます。

今まではOSバージョンアップデート時には、/usr/src と /usr/obj 配下をまっさらにしてから、
# svnlite checkout https://svn.freebsd.org/base/releng/xx.x/ /usr/src
パッチアップデート時には、
# svnlite update
みたいな形で、と直感的なものがあったが、今回からはそれぞれ、
# cd /usr
# git clone -b releng/xx.x ssh://anongit@git.freebsd.org/src.git
# cd /usr/src
# cd /usr
# git pull
# cd /usr/src
とする必要がある。
-b に続く文字列は FreeBSD のリリースブランチ(タグ名とも称す)を示し、
FreeBSD 12.2 だと releng/12.2 FreeBSD 13.0 だと releng/13.0 FreeBSD 13-stable だと stable/13 のようになります。

慣れの問題なのでしょうが、git の第一印象は悪い(当方と同世代なエンジニアは概ね同じ印象を持っている人が案外多い)のもあり、抵抗感がややあります。

git ツールはデフォルトではインストールされていないので、
portsツリーを最新版にしてから、
# cd /usr/ports/devel/git
# make install
# rehash
みたいなコマンドを実行して、git をインストールすることが必要なのです。
ただ、ソースコード取得は subversion よりは高速なようです。

また、今回から、make buildworld , make buildkernel にかかった所要時間が秒数で表示されるようになったようです。
コンパイルにかかる所要時間は、FreeBSD 12 より若干高速になったようです。