
Forge – Work with Git forges from the comfort of Magit - jdormit
https://github.com/magit/forge/
======
mattnewport
Is "forge" a well known term in this context? What does it mean exactly? A web
based git host that adds collaboration features like issues and pull requests?
Seems like that from the context but I've not seen the term before.

~~~
piotr-yuxuan
[https://en.wikipedia.org/wiki/Forge_(software)](https://en.wikipedia.org/wiki/Forge_\(software\))

~~~
dstaley
This article has no citations for the history/use of the term. It was largely
written by a single editor over a decade ago.

~~~
stronglikedan
> over a decade ago

If it ain't broke, don't fix it. Also:
[https://www.computerweekly.com/blog/Open-Source-
Insider/What...](https://www.computerweekly.com/blog/Open-Source-Insider/What-
is-a-software-forge)

~~~
stefan_
That's exactly the kind of article that gets written from a page on Wikipedia.

~~~
dstaley
Furthermore the "definition" they provide is something they came up with; a
Google search for portions of the definition only returns results for the
article itself.

~~~
stronglikedan
Then your Google isn't my Google. If the definition is used on sr.ht[0], then
it's pretty much galvanized. Not to mention that I've heard it used that very
way over the decades that I've been in software development.

[0] [https://meta.sr.ht](https://meta.sr.ht)

------
tptacek
I know this is off-topic, but: a resource I really wish existed is "how to
build Emacs UI like Magit".

~~~
nextos
That's so true! Emacs has got some modern and really well crafted packages
during last decade (e.g. Magit, Org or Notmuch). It's a really interesting and
vibrant platform right now. I have high hopes for lsp-mode.

Another package with great UI is calfw.

Of course, there were already plenty of great classic packages (e.g. Dired,
Calc, Gnus or Eshell) and modes (e.g. AucTeX, SLIME, ESS...). But things are
getting really good lately.

ELPA and use-package have also done away with lots of friction points when
installing and updating packages.

~~~
mbrock
Thanks for the calfw recommendation! I just installed it and it's really nice.

------
mattnewport
I hear good things about magit, does anyone have any good learning resources
for someone who is relatively new to emacs?

~~~
180wdock
Here's a recent talk/screencast by John Wiegley that covers a lot of Magit
tips and tricks: [https://www.youtube.com/watch?v=j-k-
lkilbEs](https://www.youtube.com/watch?v=j-k-lkilbEs)

~~~
aloisamae
Thank you for this!

------
erk__
I have been using it happily, but I have an issue where I have a fork on
github, but I can't get the forge to point at upstream instead of my fork, it
changes to the other github as soon as I set pus Default if I remember
correctly. Is there any way to do this?

~~~
tarsius

        The convention is to name the upstream remote ~origin~.  If you follow
        this convention, then you have to do nothing else and the remote by
        that name is automatically used, provided it exists and regardless of
        whether other remotes exist.  If it does not exist, then no other
        remotes are tried.
    
        If you do not follow the naming convention, then you have to inform
        Forge about that by setting the Git variable ~forge.remote~ to the name
        that you instead use for upstream remotes.  If this variable is set,
        then Forge uses the remote by that name, if it exists, the same way
        it may have used ~origin~ if the the variable were undefined.  I.e. it
        does not fall through to try ~origin~ if no remote by your chosen name
        exists.
    

This is from the manual, but I will have to move (or copy) to a more prominent
place within the manual. (This is currently in the node titled "Token
Creation".)

------
detaro
previously:
[https://news.ycombinator.com/item?id=18722548](https://news.ycombinator.com/item?id=18722548)

