Ask HN: What's the one feature you'd want in a GitHub productivity tool?
16 points
1 year ago
| 24 comments
| HN
I’m building a tool that analyzes your GitHub activity to boost productivity. Before I start developing, I’d love to hear from the community: What’s the one feature you’d want most in a GitHub productivity tool?

Drop your ideas below, and I’d really appreciate your feedback to help shape the tool!

codeapprove
1 year ago
[-]
I’m biased (I created https://codeapprove.com) but I think GitHub has let code review lag so far behind the rest of the platform. They’ve done a lot of work on project management, CI, discussions, and code authoring but code review has been the same for about 10 years.

Tools like Graphite, CodePeer, Codelantis (and of course CodeApprove) make it so much easier to have a meaningful discussion on a PR. Making sure every thread comes to resolution, knowing whose turn it is, having a fast way to navigate between code and comments, etc. The FAANG companies all have this kind of thing built in house because good code review is a key part of building high quality large software projects.

reply
rockwotj
1 year ago
[-]
I was just going to say this, but you said it better than I would have!
reply
jeremy_k
1 year ago
[-]
A chronological list of all the commits that affected a line of code. I've often gone and looked at a line, looked at the blame for that line, and then had to traverse backwards through history to find where the change I'm interested in happened. Using the GitHub UI, this takes a considerable amount of clicks.

1) Click on a file 2) Click blame 3) Click the parent commit SHA 4) Click View File 5) Click blame

Repeat as you traverse back in history.

reply
akerl_
1 year ago
[-]
In the "Blame" view on Github, you can click the little stacked-rectangles next to a line and it will take you directly to the blame of the commit before that change occurred.
reply
jaredsohn
1 year ago
[-]
Here is how you can do this via the commandline for one or more lines:

git log -L 40,50:app/models/user.rb

reply
sureIy
1 year ago
[-]
I think that will lose track of what you're really after if the function changes enough, or is moved to a different part of the file, or just moved out. Without tools that understand the code (e.g. AI) git alone can't keep track of changes the way humans do.
reply
jaredsohn
1 year ago
[-]
Yeah, you're right. I did a little investigation before posting that and it seemed to handle some movement within the file but after looking at it more closely I see it is not fully robust (even within the same file it misses some earlier changes).

This page provides some other techniques: https://tekin.co.uk/2020/11/patterns-for-searching-git-revis... but I think they have their own limitations.

reply
poetril
1 year ago
[-]
I actually have a very glue and duck taped solution for this. But I'd love if there way a tool to auto expand the "Load more..." button present in PRs with lots of conversations/commits.

Everytime I refresh the page on a large PR I have to click through 10-12 "Load more" buttons before I can have the whole picture.

reply
sssilver
1 year ago
[-]
All issues and wiki + documentation to be part of the Git repository rather than some opaque UI feature.
reply
abraham
1 year ago
[-]
reply
dv_dt
1 year ago
[-]
Better categorizations for GH notifications
reply
rurban
1 year ago
[-]
Stacked PR's with automatic or assisted rebasing on updates.
reply
ankitdce
1 year ago
[-]
reply
sunsetMurk
1 year ago
[-]
Have you used this? What’s your experience like?

I’m looking for ‘a tool’ like this to help manage code changes and communicating about those releases across a set of github repos.

reply
rurban
1 year ago
[-]
No, that looks good. I have my own sets of scripts to manage so far.
reply
cuteboy19
1 year ago
[-]
ive had horrible experiences with mergifys tool. do you know if this is better
reply
jd__
1 year ago
[-]
Why's that?
reply
solumos
1 year ago
[-]
Hmm, I don't think that I would want a GitHub productivity tool. The experience is already pretty optimal for PRs and code review. In terms of things within the development lifecycle that would need their productivity boosted, GitHub isn't close to the top of the list for me.
reply
rockwotj
1 year ago
[-]
I have never heard someone calling Github code reviews anything close to optimal. Here is where it falls short for me - do you not hit these?

- Main view is not the code, nor can I approve from that view, so it’s always half a dozen clicks to review even something trivial. - The main conversation view is very broken for me. Conversations always get lost or forgotten. - Any long conversation gets hidden behind another button and trying to load or find something at that point is very hard - There is a concept of resolving threads but no way to see if there are any unresolved threads

I am probably missing some but these are the largest issues for me

reply
klabetron
1 year ago
[-]
I’d like to see fine grained control over what PR notifications I get. Let me unsubscribe from notifications for some of the teams I’m on but don’t need to directly review. This would make it easier for me to help my day-to-day team be more productive.

But… that’s probably not in scope for your tool.

reply
foobarkey
1 year ago
[-]
I think you can already do that
reply
davydm
1 year ago
[-]
Tell me all the commits I've made for the day across all repos. Can be very helpful when attempting to capture time logs. I often work across several projects and/or several branches in a project daily.
reply
pseudo_meta
1 year ago
[-]
I wrote a small shell function that does exactly that. Uses gh and yq (you can replace the yq part with jq) https://github.com/chrisgrieser/.config/blob/main/zsh/config...
reply
t1mmen
1 year ago
[-]
If you’re flexible on the time tracker to use, www.timely.com tracks GitHub activity (and so much more, entirely privately).

It works great for eliminating the «what did I actually work on X days ago?» problem (that used to be the bane of my existence)

Disclaimer: I work at Timely

reply
G1N
1 year ago
[-]
Very different from everyone here I think, but we’re currently running into weird artifact eviction issues in our GitHub actions pipelines ( our fault for using GitHub CI, I’m aware lol). We’ve set up some CLI tools to help with this (basically scanning artifacts and freeing on some LRU basis), but I’d really like some tool that lets me view artifact creation stats across an entire GitHub org to figure out which teams’ actions need to be throttled. Not sure if that’s in scope at all for your project but throwing it out there nonetheless
reply
beretguy
1 year ago
[-]
One click migrate all your repos to a different git hosting.
reply
anacrolix
1 year ago
[-]
1. Non trivial merges. Merges are still too hard with git. 2. Store code as an AST. This extends into diff minimisation.
reply
digitalsushi
1 year ago
[-]
maybe there's a quick way to do this but i would like a way to find a git commit, and trace it to the people that approved a PR that got it into the default branch.

it'd make my life easier to know who let the bug into prod

reply
Topgamer7
1 year ago
[-]
I wish gitlens was in the GitHub.dev environment. I use it's like blame all the time!
reply
KTibow
1 year ago
[-]
You can install it and it'll work. Check your extensions tab to make sure it's loaded.
reply
samarthr1
1 year ago
[-]
Something to view ALL pull requests that i need to review, across repos?
reply
achempion
1 year ago
[-]
reply
samarthr1
1 year ago
[-]
Thanks!
reply
jerrygoyal
1 year ago
[-]
I use 'GitHub Projects' for this.
reply
ydnaclementine
1 year ago
[-]
I wish the Notifications page had better design and functionality. Let me filter stuff for a specific org (ex: work related only), don't shorten the list
reply
revskill
1 year ago
[-]
I want it to prevent the layout shift issue with right sidebar whenever i click on a keyword. It's annoying.
reply
thealistra
1 year ago
[-]
Control click on symbol name to go to definition for all popular languages
reply
ramesh31
1 year ago
[-]
Workflow management. The disparate flow of actions is a nightmare.
reply
impure
1 year ago
[-]
Not really a productivity tool but just today I was like "It would be really nice to have an LLM analyze dependency changes for supply chain attacks." You could even expand it to tell you what are the main changes in each of your dependencies including breaking changes you may want to be aware of.
reply
jaggs
1 year ago
[-]
One click push and pull
reply
kojeovo
1 year ago
[-]
stop me from causing an incident in production
reply
melindang
1 year ago
[-]
It doesn't sell to Microsoft
reply
brudgers
1 year ago
[-]
Whatever features you want are fine by me.
reply
ianpurton
1 year ago
[-]
I want an AI to take issues and turn them into PR's.

I want the PR's to be so good and well tested that I can actually approve them and commit them to the project.

reply
saurik
1 year ago
[-]
FWIW, I feel like the job of approving and committing PRs is probably easier than the job of writing them, so arguably we should automate and replace you first ;P.
reply