Posts, comments, reposts and quotes are commits (GITSOCIAL.md), written to the gitmsg/social branch unless init names another. The timeline is the union of the lists a workspace follows.
Initialize · Post · Blog · Lists and timeline · Followers · Reference
gitsocial social init [-b <branch>]
gitsocial social config get|set|list
init is idempotent. It creates refs/gitmsg/social/config and the gitmsg/social branch. -b names the branch that post, comment, repost and quote write to.
On each branch that the timeline reads, a commit without a GitMsg: trailer is a post, so a plain git commit is also a post. Commits with a trailer are comments, reposts, quotes, edits or retractions.
gitsocial social post "Hello world" [-l kind/note]
gitsocial social comment <ref> "Great idea!"
gitsocial social repost <ref>
gitsocial social quote <ref> "Worth reading:"
gitsocial social edit <ref> "Updated text"
gitsocial social retract <ref>
The original of a comment is the root post of the thread, and a nested reply adds reply-to for its parent. Edits and retractions use core versioning, and the latest version has priority.
A blog uses one branch and has no gitmsg/social branch.
gitsocial social init -b main
git commit -m "Hello world" # a plain commit on main is a post
gitsocial social post "A shorter note"
gitsocial social edit <ref> "Updated text"
gitsocial social retract <ref>
edit and retract write to the branch that the post is on; for a blog, this is main. A follower names that branch with list add -b main, or lets list add record the repository's default branch.
A list is a named set of repositories. The timeline shows posts from every list, or from one list with -l.
gitsocial social list create following
gitsocial social list add following https://github.com/user/repo [-b <branch> | --all-branches]
gitsocial social list remove following https://github.com/user/repo
gitsocial social list show [following]
gitsocial social list ls
gitsocial social list delete following
gitsocial social list repo <repo-url> # the lists a remote repository publishes
gitsocial social timeline [-l following] [-r workspace] [-n 50]
gitsocial social fetch # every repository in every list; `gitsocial fetch` does this and more
list add fetches the URL that you type; list remove accepts each form of it, because GitSocial compares URLs by identity. A repository is in a list one time, on one branch or on all branches. The timeline reads the branch that the member names, the gitmsg/social branch of the repository, and all branches of the workspace.
In the TUI, the Repository view reads all branches of a repository unless a branch is picked. My Branches in the navigation, or b on a repository, lists the branches with their commit counts, and Enter opens one (TUI-KEYS.md). c on a repository or a branch opens its code: the tree of the branch, and each file with line numbers (TUI-KEYS.md). My Tags, or t, lists the tags of the local clone with the commits since the previous tag, and Enter opens the release that names a tag (TUI-KEYS.md). w on My Repository shows the working tree: s and u stage and unstage a file, and C commits the index with a subject and a body (TUI-KEYS.md).
A repository follows the workspace when one of its lists contains the workspace URL. GitSocial finds followers during a fetch.
gitsocial social followers [--json]
refs/gitmsg/social/lists/<name>/, one ref per member and metadata at _meta (ARCHITECTURE.md).gitsocial social log lists an item by its own type: a comment on a post is a comment, not a post.S opens the timeline (TUI-KEYS.md).An action is derived from commits that exist already: an edit that changes a state, or a review. No command writes an action.
| Action | Shown for | Source |
|---|---|---|
closed, reopened, canceled | issue, milestone, sprint | an edit whose state differs from the version before it |
started, completed | sprint | an edit that changes state to active or completed |
merged, closed, reopened | pull request | an edit whose state differs from the version before it |
ready | pull request | an edit that removes draft="true" from an open pull request |
approved, changes-requested | pull request | a review with review-state; an edit of the review only when the value changes |
closed entry of an issue is hidden when the same author merged a pull request that closes it not more than 60 seconds before.-l). Issue, pull request and repository lists show items only, and a review shows there with its full text.