Open dimateos opened 8 months ago
Hi @dimateos, thanks for the feedback, this is very helpful!
I feel like a bottom panel would keep the columns wide and happy :)
Sure, why not. Let's just make the split configurable (horizontally vs vertically) and all is good.
You can divide the panel in two like git graph: keep changed files at the top, which are the most important info per commit.
To the very least, something needs to be displayed at left/right side, yes, because otherwise there'd be a lot of wasted space.
In the end this section will probably look like Git Graph's UI again anyway. I kept trying to be a hipster and not do a plain copy of that extension's interface, but keep finding that its design is rather well-thought out, and there are often no other ways of doing it the way mhutchie did.
Btw I hid the button for now as I prefer to operate with the context menu instead and just show details here.
Me too, also they just take up so much space and are generally ugly :|
DESIGN: I would still would still prefer simpler straigth lines with a bit of optional rounded edges (e.g. options offered by git graph) but I guess those are hard to integrate?
Have you tried "git-log--graph.curve-radius": 0,
? It's not perfect but might suit you better.
DESIGN: I would also prefer branch names to be hidden behind commits messages.
something indeed needs to happen here, it's also discussed in #44. Following your suggestion 100% wouldn't be a good idea though, because when you make the graph area very small (or hide it), it would mean that most of your branches are completely hidden. Also sometimes you couldn't even see if there may be more branches hidden. Because of that I think they should always be visible somewhere somehow.
FEATURE: Branch names could be merged when all remotes are at the same
yes
I attached a suggested logo inspired in current one
Awesome, thank you very much! I'll put this as the new logo now, starting with the next release. The current logo has been, like most things in this repo, the result of way too little invested effort, and definitely doesn't look good when zoomed out.
Regarding your remaining points, I don't really have an opinion, but they sound reasonable / need fixes. Thanks for taking the time to write them down.
BUG: How to go back from Branch Context Menu -> "Show", so far I close and reopen the view?
You just click the refresh button. Not very intuitive, yes, but its implementation was just really basic. Maybe the refresh button could be brightly highlighted in that situation.
FEATURE: Following from the previous, being able to filter shown branches is a nice feature, I wonder if a checkbox could be added to "All branches" so that it could filter shown branches similarly to "jump"/"filter" (search spin menu).
I can see where you're coming from, but that's probably rather difficult to implement using the extension's current architecture, I'm afraid.
FEATURE: Similar to the previous, could I filter remotes?
What do you mean by that? There is no remote management yet (#37)
I have not tested whether I could only push to certain remote either.
git push, like all commands, is a text-based git command execution, so you can write anything you like there, for example replace origin/master
with some-other-origin/master
. Making remotes selectable via dropdown here would be interesting but yet again probably rather ugly to implement.
FEATURE: Would be nice to be able to highlight all when searching, maybe do it when search is set to "jump" while typing
sounds good
FEATURE: Its common to be able to configure commit time to relative e.g. 2 weeks ago etc
Yeah but that would take up much more space. Finally something that is easily implemented though :D
FEATURE: Wider lines for some branches (similar to https://github.com/mhutchie/vscode-git-graph/issues/207)
Pretty much impossible
develop or master could be easier to differentiate (list of regex to match in settings)
Basic css adjustments are no problem of course. I guess I'll start by adding classes to the lines so you can e.g. "custom-css": "line.branch-master { box-shadow whatever; }"
Key branches like master or development already have a fixed color, so they're somewhat recognizable.
Wrapping up?
Thank you for the kind words!
So much to do here, but at least the bottom details panel is done, please give the new setting details-position a try. It's getting increasingly annoying though to not be able to properly resize this window, this definitely needs some care soon. Also I haven't optimized its layout apart from making it two-column now
Hey!
Will be using the new update today, looks very nice :)
Later I will revise your answers again, as I read them sometime ago...
I can also break this monolohic issue into more manageable ones after your comments, so you can keep it closed. Or go ahead and create the ones you find more important, etc
Thank you for the kind words!
Thank you for taking your time with the issue and for all the work Phil!
FEATURE: Its common to be able to configure commit time to relative e.g. 2 weeks ago etc, or to other time formats (e.g. current seconds seems overkill).
This is already possible, in the main view Configure...
at the top edit the log command and replace --date=iso-local
with --date=relative
Hey 🐸
I love the docked bottom panel from git graph:
I also like a lot git log columns and the tiny colored dots before commit messages:
But I dont enjoy much the side panel, for some repos with long user names/commits the columns can get disaligned and commit messages cut too short (worsen by branch names being drawn over them):
I feel like a bottom panel would keep the columns wide and happy :)
~A few~ comments/ideas on design (numbered for reference and personal priority):
DESIGN: I would still would still prefer simpler straigth lines with a bit of optional rounded edges (e.g. options offered by git graph) but I guess those are hard to integrate? Just wanted to mention it as it might be the main reason that deters new user from this extension graph view:
DESIGN: I would also prefer branch names to be hidden behind commits messages. Sometimes long branch names hide them completely and seems a bit unintuitive: the beginning of the commit message is its most important part whereas the ending of the branch name rarely matters (you can already identify it). The whole branch name could be displayed when hovering over it, or as a tooltip a few momments later. This is worsen by split branch names for the same branch in different remotes etc, as commented in the following point:
FEATURE: Branch names could be merged when all remotes are at the same (also happens with local HEAD?), worsens overlapping branches over the commit messages:
DESIGN: Icon has too thin lines for small editor tab icons (git graph for comparison), but the lack of contrast is also noticeable in the extensions marketplace. I attached a suggested logo inspired in current one (edited the current svg a bit), but could be even simpler like the current icon used for "Open in graph view":
DESIGN: I feel like bold-italic is harder to read and seems like it is used for branch names? I guess this could be easlily changed with the custom css option, to e.g. regular italic:
DESIGN: Tags / Stashes could have a different icon isntead of just white text, or replace the white dot before the message:
BUG: Resize widget is ok for now (would be more intuitive to grab any part of the edge), but I cannot get the horizontal scrolling bar to dissapear no matter how I resize the pannel:
BUG: BTW, in my case the scroll to top button appears at the middle of the vertical bar:
BUG: How to go back from Branch Context Menu -> "Show", so far I close and reopen the view?
FEATURE: Following from the previous, being able to filter shown branches is a nice feature, I wonder if a checkbox could be added to "All branches" so that it could filter shown branches similarly to "jump"/"filter" (search spin menu). Atm when seeing a unique branch, the "All branches" fail to go to a any filtered one, therefore I guess then I would filter those from the list too. Git-graph has a combo box with selection as you probably knew, here for reference:
FEATURE: Similar to the previous, could I filter remotes? I have not tested whether I could only push to certain remote either. But I guess is ok if all pushes just go to default remote.
FEATURE: Would be nice to be able to highlight all when searching, maybe do it when search is set to "jump" while typing (similar to filter).
FEATURE: Its common to be able to configure commit time to relative e.g. 2 weeks ago etc, or to other time formats (e.g. current seconds seems overkill). As an example, git graph has options for:
FEATURE: Wider lines for some branches (similar to https://github.com/mhutchie/vscode-git-graph/issues/207), develop or master could be easier to differentiate (list of regex to match in settings)
Wrapping up?
Absolutely no pressure nor expectations, I was just exited about this active alternative to git graph. Probably many of these were already planned or thought by you. Hope you dont mind the comparisons / samples with git graph. I will continue using git-log--graph and see if I stumble upon other rough edges I would add to this list.
Nonetheless, IMO you have done a great job so far. The extension is excellent at the current state so simply looking forwards to its development :) Thank you!
Best regards