# I am the Watcher. I am your guide through this vast new twtiverse.
# 
# Usage:
#     https://watcher.sour.is/api/plain/users              View list of users and latest twt date.
#     https://watcher.sour.is/api/plain/twt                View all twts.
#     https://watcher.sour.is/api/plain/mentions?uri=:uri  View all mentions for uri.
#     https://watcher.sour.is/api/plain/conv/:hash         View all twts for a conversation subject.
# 
# Options:
#     uri     Filter to show a specific users twts.
#     offset  Start index for quey.
#     limit   Count of items to return (going back in time).
# 
# twt range = 1 27
# self = https://watcher.sour.is/conv/rqifctq
git-bug

> Distributed, offline-first bug tracker embedded in git, with bridges

Interesting!
looks like it's written in go, @prologic
@abucci Yeah I've seen this nice tool before 😆 It's qtute fascinating how it works 🤔
@abucci Yeah I've seen this nice tool before 😆 It's qtute fascinating how it works 🤔
@abucci Yeah I've seen this nice tool before 😆 It's qtute fascinating how it works 🤔
@abucci Yeah I've seen this nice tool before 😆 It's qtute fascinating how it works 🤔
@abucci Wow, that's really cool. How is the actual data stored?
@mckinley I think in the Git reflog or something? 🤔
@mckinley I think in the Git reflog or something? 🤔
@mckinley I think in the Git reflog or something? 🤔
@mckinley I think in the Git reflog or something? 🤔
@prologic @mckinley I can't pretend to understand the guts since I just found it and only tinkered with it for a few minutes. But I can say that git bug push did this:

h
remote: Updating references: 100% (1/1)           
To $REPO
remote: Updating references: 100% (1/1)        19cf0dc6b52363cf5b8032755b16a5 -> refs/identities/af97ed38e619cf0dc6b52363cf5b8032755b16a5remote: Updating references: 100% (1/1)           
To $REPO
 * [new reference]   refs/bugs/00fd29b9f50294a64ad72c039a7340b5863d7907 -> refs/bugs/00fd29b9f50294a64ad72c039a7340b5863d7907


So it puts stuff in $DIR/.git/refs. It creates a cache directory too.

I have to say, it's surprisingly full-featured given that it's pre 1.0 and the main author warns that there be dragons here (though not so surprising given that there are over 2,000 commits!). You can do the entire create/label/comment on/push/pull/clear bug workflow entirely on the CLI with git subcommands, which is how I'd probably use it were I to adopt this. The webui looks remarkably like github/gitea/etc if you're into that.
@abucci @prologic @mckinley Some mates and I also started twice to build our own git based bugtracker several years ago. At the time there was nothing out there that really worked great. We failed to complete ours, because we wanted to have too many features and flexibility for small and large projects. So we ended up in the same useless state as all the other ones. I have to check this one out.
Interesting indeed. I’m curious why they didn’t chose a dedicated branch with regular files instead of working with Git objects directly. 🤔 Might be an interesting project for a gloomy weekend.
Interesting indeed. I’m curious why they didn’t chose a dedicated branch with regular files instead of working with Git objects directly. 🤔 Might be an interesting project for a gloomy weekend.
Interesting indeed. I’m curious why they didn’t chose a dedicated branch with regular files instead of working with Git objects directly. 🤔 Might be an interesting project for a gloomy weekend.
Interesting indeed. I’m curious why they didn’t chose a dedicated branch with regular files instead of working with Git objects directly. 🤔 Might be an interesting project for a gloomy weekend.
@movq I think I like that choice? Not sure yet since I haven't tried using it for anything real. I do like the fact that it doesn't introduce a bunch of weird files to your repository that you then have to worry about managing.
@abucci Right, hence a disconnected branch that you’d never interact with. 🤔 But really, no idea, I’ll have to take a closer look at the project first. 👌
@abucci Right, hence a disconnected branch that you’d never interact with. 🤔 But really, no idea, I’ll have to take a closer look at the project first. 👌
@abucci Right, hence a disconnected branch that you’d never interact with. 🤔 But really, no idea, I’ll have to take a closer look at the project first. 👌
@abucci Right, hence a disconnected branch that you’d never interact with. 🤔 But really, no idea, I’ll have to take a closer look at the project first. 👌
@abucci @movq We also tried both approaches. I will see if I can dig up our design considerations over the weekend.
Ah git-bug! Ive chatted with the creator when he was working on the graphql parts. Its working with git objects directly sorta like how git-repo does code reviews. Its a pretty neat idea for storing data along side the branches. I believe they don't add a disconnected branch to avoid data getting corrupted by merging branches or something like that.
Ah git-bug! Ive chatted with the creator when he was working on the graphql parts. Its working with git objects directly sorta like how git-repo does code reviews. Its a pretty neat idea for storing data along side the branches. I believe they don't add a disconnected branch to avoid data getting corrupted by merging branches or something like that.
@abucci Definitely going into my bag of tools!
@abucci Definitely going into my bag of tools!