This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2023-05-16
Channels
- # announcements (1)
- # babashka (13)
- # beginners (33)
- # calva (26)
- # cherry (33)
- # clerk (5)
- # clj-kondo (3)
- # clojure (40)
- # clojure-europe (24)
- # clojure-finland (2)
- # clojure-norway (29)
- # clojurescript (18)
- # cursive (2)
- # datomic (6)
- # docker (11)
- # emacs (12)
- # events (1)
- # fulcro (71)
- # graalvm (8)
- # hyperfiddle (2)
- # lsp (23)
- # meander (5)
- # off-topic (36)
- # polylith (4)
- # re-frame (6)
- # reitit (13)
- # shadow-cljs (87)
- # spacemacs (1)
- # tools-deps (19)
- # vim (5)
- # xtdb (57)
Magit Forge 🔨 VS GitHub CLI Which do you prefer? Or do you actually go to http://github.com like some kind of animal? :lion_face: (i jest i use the UI most of the time myself currently)
I've used magit forge a bit (and it's really really good) but I still mostly use the website. However, I'm not a fan of GitHub. It has been abusing its market share to promote its own stuff over open standards, e.g. forks over... no forks, https://blog.brixit.nl/git-email-flow-versus-github-flow/, GitHub actions over something that works on other platforms, discussions, issues, labels. That's why we're forced to use tools like magit-forge and/or browse the UI for some operations. It makes sense from a business perspective because that's how GitHub generates engagement but on the other hand it forces you to leave your editor. That's technically/ergonomically inferior imho.
I'm using magit, forge, gh-notify, git-link, code-review and gist, in addition to a bunch of custom-written functions like for example to open a raw github file (works in private repos). Did you know that you can open any GitHub/GitLab file in Emacs? Simply grab the raw URL and feed it to eww-browse, switch the mode, e.g., org-mode and voila.
> Simply > feed it to eww-browse > switch the mode I know it’s silly, but I wish that was more “streamlined”, in the same way that navigating and editing files inside a compressed archive is, or editing stuff over tramp. (i.e. they both feel magical, easy in a way that feels almost wrong/incorrect)
https://github.com/agzam/.doom.d/blob/main/modules/custom/git/autoload/misc.el#L79 for my own use. It's a bit messy, sorry. Basic idea - bisect a github url to a file, form a raw link to it, send a request in case it's in a private repo (that's not a rare case for me) and pop that shit in a buffer. It works when you want to read a single file in Emacs occasionally. I wanted at some point figure out a way of finding the file in the local repo (if you have it cloned), and also make this thing to work with diffs and files in branches.
Magit Forge is excellent, I use it all the time. So much quicker than going to the GitHub website and I can use all the Emacs (Evil) editing tools. I started using Forge to create pull requests a long time ago and found it so useful I then started managing and creating new issues. Add a developer token and the repo your working on to the forge database and your off https://practical.li/spacemacs/source-control/magit/forge/
I think it took me awhile to configure forge right the last time I tried, and then when I found i needed another library to do the thing I wanted (reviews) I gave up 😛
it's definitely not perfect, it doesn't always work - some PRs are too big, it fails to fetch them. Adding comments a bit quirky. But once you set it up and make it work, it's pretty nice - you can see the code, the diff, the comments, all without having to leave Emacs.
Haha currently :lion_face: because I was having trouble with emacs and keys for some weird reason on my old machine, but it just-works ™️ on my new one, so the plan is to learn 🔨 .