From 817607a319b855c962237a1a248501bc66a65773 Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Wed, 28 Feb 2024 15:15:36 +0100 Subject: [PATCH] build --- .gitignore | 1 + body.md | 24 ---------------------- build.sh | 15 ++++++++++++++ index.md | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 75 insertions(+), 24 deletions(-) create mode 100644 .gitignore delete mode 100644 body.md create mode 100755 build.sh create mode 100644 index.md diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e2e7327 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/out diff --git a/body.md b/body.md deleted file mode 100644 index c4d2b35..0000000 --- a/body.md +++ /dev/null @@ -1,24 +0,0 @@ -# Git - -## Concepts - -* hash - * sha1 (sha256) - -## Porcelain - -* git init - * bare | non-bare -* git config - * user name & email - * description -* git worktree - -## Plumbing - -* .git/config -* .git/description -* .git/objects - * .git/objects - * git hash-object -w file - * git cat-file -p hash diff --git a/build.sh b/build.sh new file mode 100755 index 0000000..216da24 --- /dev/null +++ b/build.sh @@ -0,0 +1,15 @@ +#! /usr/bin/env bash +FILE="$(realpath "${BASH_SOURCE[0]}")" +ROOT="$(dirname "${FILE}")" + +OUTPUT="${ROOT}/out" + +#rm --force --recursive "${OUTPUT}" +mkdir --parents "${OUTPUT}" + +pandoc \ +--standalone \ +--self-contained \ +--output "${OUTPUT}/index.html" \ +--write 'revealjs' \ +"${ROOT}/index.md" diff --git a/index.md b/index.md new file mode 100644 index 0000000..380b920 --- /dev/null +++ b/index.md @@ -0,0 +1,59 @@ +--- +author: Marc Beninca +title: Git CPP +subtitle: Concepts, Porcelain & Plumbing +date: 2024 / 03 +--- + +# Git + +## Concepts + +* hash + * sha1 (sha256) + +## Porcelain + +* git init + * bare | non-bare +* git config + * system → global → local + * user name & email + * description +* git status +* git branch --force +* git add +* git commit +* git checkout | switch +* git worktree +* git merge + * fast-forward + * three-way +* git rebase + * as-is + * merge-squash + * cherry-pick + * interactive +* git reflog +* git remote | clone +* git fetch | pull +* git push +* git tag + +## Plumbing + +* .git/config +* .git/description +* .git/refs + * heads/branch + * remotes/remote/branch + * tags/tag +* .git/objects + * .git/objects + * git cat-file -t|-p hash + * git update-ref refs/heads/dev hash + * git symbolic-ref HEAD refs/heads/main + * git hash-object -w file + * git update-index + * git write-tree + * git commit-tree