5 ms·
Magit is an exceptionally well made interface to Git. Yes, it’s built on top of Emacs, and that might stop many from even looking into it. - I am glad I made a
by submeta 5y ago
Magit is an exceptionally well made interface to Git. Yes, it’s built on top of Emacs, and that might stop many from even looking into it. - I am glad I made a deep dive into Emacs last year, and although I stopped using it as an IDE (VS Code is just too good), I still come back to it because of Magit (and macros, general text editing and org-mode). Yes, I have an interface for Git in VS Code as well, but it‘s very rudimentary compared to Magit, and it’s limited to the narrow left bar. And to give an example: Making „micro commits“ by staging various lines of changes is super easy in Magit, but I still haven‘t found out how to select several disconnected lines for staging in VS Code.
- smitty1e 5y agoSpacemacs.org brings the vi modal editing configuration to bear and is highly recommended.
- pault 5y agoOpen the diff, select the lines, right click, "stage selected lines".
- submeta 5y agoBut how do you select lines / changes spread all over the file? Doesn‘t work via Shift or Command click.
- pault 5y agoActually it might require the gitlens extension. It's very well integrated and I've been using it for so long I don't know where one ends and the other begins. Regardless, if you open the diff view, the right hand side is editable and you can make selections like any other view.
- pitaj 5y agoYou can either do it multiple times (my preference), or you can use Alt for multiple selections.
- kahole 5y agoYou should check out edamagit, magit for vscode! https://github.com/kahole/edamagit https://github.com/kahole/edamagit
- jeremyjh 5y agoI just found this earlier this week and this as a key ingredient of VSpaceCode (Spacemacs bindings) enabled me to finally able to switch to VS Code for Elixir & Javascript programming, which has made me so much happier.
- dunefox 5y agoHave you used Git Lens yet?
- k4rli 5y agoVSCode with Gitlens is the best git GUI experience I've had. I prefer most operations via git cli, but for commiting partial changes and merge conflicts, it's everything I could ask for.
- IshKebab 5y agoI disagree. It's ok. But it doesn't even have a DAG viewer. What kind of GUI doesn't even have `git log --tree`? Hopefully that's just because VSCode didn't allow arbitrary widgets until recently. Presumably they're working on it.
- piaste 5y agoGit Graph [0] already exists as a different extension from GitLens. It works quite well, although of course it would be nice if the two extensions could integrate with each other. [0] https://marketplace.visualstudio.com/items?itemName=mhutchie.git-graph https://marketplace.visualstudio.com/items?itemName=mhutchie...
- IshKebab 5y agoThat looks nice! Yeah these things are so integral to development it would be nice if they were just core features of VSCode.
- stOneskull 5y agoi agree. vscode is my magic these days.
- piaste 5y agoI just discovered that GitLens has been acquired by GitKraken. Considering that GK's entire business is "buy our premium Git GUI because the free ones suck", I have to wonder if they'll try going to intentionally wreck the extension. Fortunately it's MIT licensed.
- ggregoire 5y ago> I still haven‘t found out how to select several disconnected lines for staging in VS Code. In the Source Control window, select your file then in the right panel: - Select the first range of lines - Alt + select the second range of lines - Cmd + Shift + P > "Git: Stage Selected Ranges" or in multiple steps (I usually do it like that): - Select the first range of lines - Cmd + Shift + P > "Git: Stage Selected Ranges" - Select the second range of lines - Cmd + Shift + P > "Git: Stage Selected Ranges"
- pitaj 5y agoOr just right click on the selected lines and Stage Selected Range