To set up my question, maybe I should share a sort of hazy crackpot vision or dream. So when I look at Git, I see a variety of postmodernism that's like “look, we’re not being pretentiously intellectual or even pessimistic—we’re being
realistic, software just
is a postmodern world, Alice and Bob both have software that they call ‘Linux’ on their laptops, and they just
aren’t the same source code, but they
are both Linux, and trying to assess which one is the “true” Linux really does devolve into asking questions about power and basically in this case the power is vested ultimately in one king, Linus Torvalds, who says which one is more modern, and that’s fine as long as you understand that it’s arbitrary and anyone can fork the project at any time and create a rival power-structure and so forth.” Like, these ideas that I made fun of when I was a kid turn out to be amazingly practical things as finally revealed by git enlightenment.
I would summarize the problems of various bugtrackers including Jira as being insufficiently “up with the times” therefore. They reflect the old modernist approach to truth. Schedules, deadlines, when was this “done”. But we know in software that really you want your source of truth of your bugtracker to basically be in the same Git repository as your code: one and the same commit needs to simultaneously close a bug as needs to properly change the source code to fix that bug, because the bug may be fixed in your “staging” codebase but that bugfix may not yet be deployed to “prod.” A reversion merged into prod as a hotfix needs to suddenly re-open the bug that we said was fixed-in-prod because now it no longer is. All of that. That's my hazy crackpot vision. :)
Given all that, there is also a great difficulty with people using workflows like GitFlow which have the same “old way of doing things” misunderstandings. It’s not that those workflows aren’t good, they are good—for SVN repositories. You apply them to a Git repository and then you have this strange tension where the workflow and the VCS are working at cross-purposes sometimes. So it's also things like GitLab's CI/CD being a file checked into Git. This sounds great until you realize that nobody is expecting postmodernism to suddenly pop up here. “How did you merge that thing into prod when all of our admins were unreachable? Admins are supposed to have to push the button.” “Well, I was really in a bind, so I did something I would have never normally done: I pushed up my own branch `fix-master`, and in that branch I changed the CI/CD file to trigger deploys to production on pushes to `fix-master` instead of `master`.” But I had to!” Git was like “hegemony? what hegemony? if `master` has power then everyone has power.” Hah.
So my question is, based on this description, I am not sure that I see you have “drunk the same Kool-aid” about Git, I am instead seeing a declaration that you want something fast-and-easy-and-supports-Git.
Which, like, is fine. I don’t want to come across as crapping on your invention with a dream that I absolutely admit is hazy and crackpot, right? You have actually done the work and I am hypothetical and I have mad respect for you and your work. But I am sharing kind of my bigger vision to ask, “do you have a bigger vision? is it different than mine, some more systematic structure?” Is Tara just an easy way to do something like Jira with Git, or do you have a fundamentally new concept in mind that you are headed towards that will change how we track issues with our software?