Cài đặt

Cần clang (hoặc tương thích). Không cần zlib, openssl, hay libgit2 — tất cả nằm trong source.

Lấy source

Clone hoặc mở thư mục mygit.

cd mykernel/mygit

Build

Một lệnh clang cho toàn bộ module.

clang -O2 -Wall -Wextra -pthread -o mygit \
  sha1.c zlib.c util.c object.c index.c tree.c \
  cmds.c push.c worktree.c main.c

Cài vào PATH (tuỳ chọn)

Script sẵn có — symlink vào ~/.local/bin.

./install.sh

Tự kiểm chứng

Build + so khớp với git thật trong repo tạm.

./run.sh

Repo đầu tiên

Store nằm ở .mygit/ — chạy được ngay trong repo git thật.

mkdir demo && cd demo
mygit init
printf 'xin chao\n' > a.txt
mygit add a.txt
mygit commit -m "first"
mygit log

Deploy site

gitvn.com

Thư mục web/ là static site. Deploy lên Cloudflare Pages:

deploy
$ npm i
$ npx wrangler login
$ npm run deploy
# → https://gitvn.pages.dev
# Custom domain: Cloudflare Dashboard → Pages → gitvn → Custom domains → gitvn.com