Gitdo is a tool for formalising the tracking of task annotations in source code. The idea is that when a new git (working on mercurial support as well) commit contains a new task such as;
// TODO: Make sure the README makes sense in explaining this.
Gitdo will capture it at pre-commit time, use the chosen plugin (see here) to get an ID for which will be added to the source code. Then when a git push is ran it will add the new tasks to the chosen task manager.
Example | Captured |
---|---|
//TODO: Is this captured? |
Y |
// TODO: Is this captured? |
Y |
// TODO Is this captured? |
N |
# TODO: Is this captured? |
Y |
#TODO: Is this captured? |
Y |
# TODO Is this captured? |
N |
//TODO(): Is this captured |
Y |
install: go get -u golang.org/x/vgo
See research by Russ Cox here
- If a commit message is empty, gitdo will run, even though git will fail.
- If a task has a new line character it will not look at the second line, and treat only the first line.
- If a plugin fails, it is not clear whether gitdo will fail to, and stop the commit.
Cannot get it to run when committing from Eclipse. Running Git from CLI is bestHow to fix.- Intellij runs hook if selected, but will not give information unless it fails. Running Git from CLI is best.