Linus Torvalds 氏の理想の git 運用と GitHub

Posted on 2023/03/05 in tech • Tagged with git

Note
本記事の内容は Linus 氏の発言が人を傷つける場合に筆者がそれを良しと考えるといった意図はございません

少し古い記事になるが、 Linus Torvalds 氏 の GitHub に対する苦言が記事になっていた。

Linus 氏が GitHub について苦言を呈するのは今に始まったことではない(後述)が、
別に GitHub のすべてを否定しているわけではない。[1]

では一体何が不満なのか。Linus 氏の理想とする git の開発フローを考察した上で、整理してみたい。

Linus 氏の理想

結論からいうと、

「意味あるコミットを作れ」「コミットを大事にしろ」 という思想が伺える。

では 「意味あるコミット」「大事にされたコミット」 とは何なのか。 筆者なりに整理したところ以下 2 つに集約されるように思う。

  • 信頼性: パッチの身元がわかること

  • 説明性: パッチの目的・背景がわかること

信頼性 …


Continue reading

共用リポジトリ内で自分専用の名前空間を使う: Git namespaces

Posted on 2021/03/01 in tech • Tagged with git

独自の名前空間に push できる機能、gitnamespaces を紹介します。

基本的な使い方

オプション

--namespace オプションを git コマンドの直後に付与します。

$ git --namespace=me push origin main
$ git --namespace=me fetch origin

上記例では、名前空間 me に push しています。

環境変数

GIT_NAMESPACE 環境変数を利用します。

$ GIT_NAMESPACE=me git push origin main
$ GIT_NAMESPACE=me git fetch origin

名前空間の仕組み

名前空間 me に push されたリモートリポジトリ上では、ブランチ [1 …


Continue reading

git: レンタルサーバーに cgit で構築する Web インターフェイス

Posted on 2021/02/07 in tech • Tagged with git, cgi

cgit とは

kernel.org で利用されている git リポジトリの Web インターフェイスです。

cgit という名前からも察せられるように、 cgi で動きます。

さくらのレンタルサーバー で試しに cgit をセットアップしたところスムーズにセットアップできたのですが、 設定で少々詰まったところもあり、また日本語どころか英語の情報もあまりなかったので、メモがてら書いていきます。

この記事で書か ない こと

レンタルサーバー上の設定を考慮しているので、以下のようなことは書いてません。

  • Apache のインストール方法
  • httpd.conf (apache2.conf) の設定方法

また、ssh でのログイン方法なども書いてません。

書くこと

逆に、以下のようなことは書きます。

  • Makefile …

Continue reading