echo "dnkqslnokqe" | git hash-object --stdin -w bca2068e9b221d47154d1e3eaebf8c9abd86951f git cat-file -p bca2068e9b221d47154d1e3eaebf8c9abd86951f dnkqslnokqe git update-ref refs/bug/HEAD bca2068e9b221d47154d1e3eaebf8c9abd86951f git show refs/bug/HEAD git push origin "refs/bug/*" git fetch origin "refs/bug/*:refs/bug/*" git show-ref refs/bug git update-index --add --cacheinfo 100644 83baae61804e65cc73a7201a7252750c76066a30 test.txt git show-ref --hash refs/bugs/4ef19f8a-2e6a-45f7-910e-52e3c639cd86 git for-each-ref --format="%(refname)" "refs/bugs/*" -- delete all remote bug refs git for-each-ref refs/remote/origin/bugs/* --format="%(refname:lstrip=-1)" | xargs -i git push origin :refs/bugs/{} Bug operations: - create bug - change title - add comment - edit text comment - hide/unhide/delete comment - (?) reply to comment - add/remove [label, assignee, project, milestone, ...] G-Set (append only log) ----- - create bug - change title - add/edit/hide/unhide/delete comment LWW-e-Set (add + remove, based on timestamp) --------- - label - assignee - project - milestone