内容
1.はじめに
SQLiteはGitを使用しません。 代わりに、SQLiteをサポートするために特別に設計および作成されたFossilバージョン管理システムがあります。
SQLiteが他のすべての人と同じようにGitを使用しない理由を尋ねられることがあります。 記事では、この質問に答えようとします。 さらに、セクション3では、SQLiteソースコードに簡単にアクセスする方法に関するGitユーザー向けのヒントを提供しています。
1.1。 編集
この記事は、 Hacker News 、 Reddit、およびLobstersで見つかったバグを明確にし、懸念や懸念に対応し、バグを修正するために数回改訂されています。 完全な編集履歴はこちら 。
2. SQLiteがGitを使用しないいくつかの理由
SQLiteがGitシステムを使用しない理由はすべて1つの文で表現できます。主要なSQLite開発者はこれを受け入れられないと考えています。 Gitが好きで、それを使用したい場合は、素晴らしいです。 私はGitが好きではなく、もっと良いものを好むと思います。
以下は、Gitが好きではない理由です。
2.1。 Gitはコミット後に子孫を見つけることを困難にします
Git . (check-in) , Git . . - , Git , . , , . Git, GitHub, .
, Git . . , StackOverflow Unix :
git rev-list --all --parents | grep ".\{40\}.*.*" | awk '{print $1}'
( bash- shell , ). . . , Fossil . .
, . Fossil , -, Fossil. : Fossil () «» . , , . : Fossil (), , .

Git, , . , . , , .
2.2. Git
Git . Git :
- .
- «» (staging area).
- (HEAD).
- .
- .
Git ( ) .
, Fossil , . 60% . . Fossil , .
Git Fossil HN:
«Fossil , … … Git».
2.3. Git
Git DAG . — , . .
SQLite GitHub Fossil.
Fossil , . , . GitHub . GitHub , .
GUI Git, . , , Git / GitHub, - , Git . , .
2.4. Git
Git — . Git - . Git . GitHub, , Git, «». GitLab, .
, Fossil — , $PATH. Git, GitHub / GitLab. -, , — .
— , ( SQLite) — .
2.5. Git
— , :

— Git. .
— . ?
— . . , . , - , .
. , Git . , , git.
. . , . Git , . SQLite .
3. Git SQLite
Git, SQLite. .
3.1. GitHub
SQLite GitHub. mackyle, SQLite . , . SQLite GitHub, — .
3.2.
SQLite Fossil Tarball, ZIP SQLite SQLite. URL- , . :
https://sqlite.org/src/tarball/VERSION/sqlite.tar.gz
VERSION . ( ), , , “version-3.23.1”:
https://sqlite.org/src/tarball/version-3.23.1/sqlite.tar.gz
, “release” VERSION:
https://sqlite.org/src/tarball/release/sqlite.tar.gz
, “trunk” VERSION:
https://sqlite.org/src/tarball/trunk/sqlite.tar.gz
. ZIP SQLite “/tarball/” “/zip/”, “/sqlar/”, “.zip” “.sqlar”.
3.3. Fossil
Fossil . Unix ( Windows ).
- Fossil - $PATH.
mkdir ~/fossils
fossil clone https://sqlite.org/src ~/fossils/sqlite.fossil
mkdir ~/sqlite; cd ~/sqlite
fossil open ~/fossils/sqlite.fossil
./configure; make
( Windows MSVC
nmake /f Makefile.msc
).
Fossil,
update
:
fossil update VERSION
“trunk” SQLite. — , - . . , VERSION.
fossil ui
~/sqLite -.
Fossil . .
. , .
4.
, Fossil Git: