By adding the git layer to Spacemacs you have the fully featured git client called magit. The github layer allows you to clone repositories from Github and to create, list, update and delete gists

Today I discovered Magithub which can create a new remote repository on Github from within Spacemacs, using the command line tool called hub.

Previously I opened a shell inside Emacs and ran the hub create command to create a new remote Github repository for a project. This worked, but not the same speed as having a feature built-in to Magit itself.

What is Magithub

Magithub is an interface to GitHub using the `hub’ command line tool. Its integrated into Magit workflows and allows very easy, very basic GitHub repository management. Supported actions include:

pushing brand-new local repositories up to GitHub

creating forks of existing repositories

submitting pull requests upstream

viewing and creating issues

Adding magithub to Spacemacs

As Magithub.el is not part of a layer, it can be added as an additional package in the dotspacemacs/layers of the ~/.spacemacs file.

1 dotspacemacs-additional-packages '(magithub)

The Magithub package needs to be loaded into Spacemacs once magit has been loaded. So we need to add a hook in the dotspacemacs/user-config section of the ~/.spacemacs file

1 2 3 (use-package magithub :after magit :config (magithub-feature-autoinject t))

Using Magithub

Open magit status with SPC g s and then you have access to the magithub features.

Press `H’ in the magit status buffer and you will see the following menu

Here is a simple example of taking an unversioned project, putting under Git version control with Magit and then creating a remote repository on Github with Magithub.

Thank you.

@jr0cket