I am interested in some tool that lets me store (and delete) “keywords” associated with a commit. By “keyword” I simply mean simple names, like tags associated with a video. (But obviously I cannot use the word “tag”, since that’s already a technical term for something else in Git.)

These would be examples of keywords, with description/explanation in parentheses:

reviewed (The commit has been reviewed by someone.)
builds (The commit builds; not compiler errors etc.)
feature (The commit adds a new feature.)
docs (The commit affects the project’s documentation.)
configuration (The commit affects the configuration of the project.)

Wanted features

  • Able to add keywords to a commit.
  • Able to delete keywords.
  • Able to both add and delete keywords without having to “rewrite” a commit. In other words, the keywords shouldn’t be (exclusively) stored some place like the commit message, since then I would have to make a new commit if I wanted to add or delete a keyword.
  • Able to filter a set of commits based on the existence (or absence) of keywords. For example, a log of commit messages based on that filtering, or integration with existing tools like Git-log.
  • Search for commits based on keywords.
  • Probably more.

Possible implementation

One way to implement this would be using Git-notes. That way one would be able to fulfill the criteria of being to both add and remove keywords, which you can’t do if you put the keywords directly in the commit message.

  • I've never used Git notes, but they sound like they might do what you want. – Kodiologist Mar 10 '17 at 22:44
  • @Kodiologist I think Git-notes is a good place to store keywords, as well. In my very crude crude prototype I’ve used the notes in refs/notes/keywords. But I would like a tool that streamlines the manages of these keywords, not just using tools like Git-notes directly. – Guildenstern Mar 12 '17 at 15:38
  • Maybe I should edit to add the “storage model” I’ve thought up as my “if I were to implement this myself” plan. – Guildenstern Mar 12 '17 at 15:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.