Keep TODOs in git

  • This is a bad idea. I can come up with a TODO at any time; I especially do when I’m in the middle of something and have staged local changes. In that case, this:

        git commit --allow-empty -m "TODO: $*"
    
    Will do the wrong thing—committing my staged changes even if I didn’t want that, and giving them a wrong commit message. If the change is small, I might not notice. If I were going to involve Git in my task tracking, I would much prefer something like this:

        todo() {
          touch TODO
          printf "%s\n%s\n\n" "$(date)" "$*" | cat - TODO > TODO.tmp
          mv TODO.tmp TODO
          $(git config core.editor) TODO
        }

  • Why not just use 'git notes'? This seems like exactly the sort of use case that feature is for.

  • Nice,

    But I've checked nearly everything thing out. Online kanban boards, Trello, Asana, Org-Mode you name it...

    Its extremely hard to beat the flexibility of a diary and pencil/pen. You can doodle, scratch, draw, record, take notes, maintain time, review history, write a lesson, work out problems... The list is endless... You can do all this in a easy extremely distraction less tool. And to be frank maintaining a diary gives me a great deal of discipline in fighting procrastination. Diaries also are great progress indicators.

    Most successful people I know maintain diaries. Diaries and Pens are here to stay.

  • For a more fancy mature solution, consider http://bugseverywhere.org/

    Git (and dvcs generally) is a nice hammer to hit all sorts of things that look like storage/content/versioning nails.

  • clever code: keeping an empty todo commit in the repo tree.

    clear code: keeping a textual todo or org mode file committed in the repo.

    While this is another fun and a clever trick that can be done with git and it delights the geek within me, I wouldn't do this while collaborating on production code with a team.

  • For that purpose I use ticgit which creates an unrelated branch in a git repository to store data. There's even a web client if you want to go fancy.

    https://github.com/schacon/ticgit

  • Wow, nice tip. Seems like combining this with Sublime Todo (https://github.com/robcowie/SublimeTODO) would make for a really good setup.

  • The best TODO tool for me is pen & a paper. Silence is also the best music I have found to listen to while working :)

  • Anyone using http://todotxt.com/?

  • I pretty much always have a file called TODO in version control.

  • Bad advice. Keep tasks in issue tracker.