emacs/var/elfeed/db/data/f6/f6ae6bf8a49fa78079fb529a4f74aec83a7f52bc
2022-01-03 12:49:32 -06:00

48 lines
2.6 KiB
Plaintext

<p>
As I found the documentation for adding a self-hosted instance of GitLab to to
magit/forge a bit difficult, I thought I'd write a note for my future self (and
anyone else who might find it useful).
</p>
<p>
First put the following in `~/.gitconfig`
</p>
<div class="org-src-container">
<pre class="src src-gitconfig">[<span class="org-type">gitlab</span> <span class="org-function-name">"gitlab.private.com/api/v4"</span>]
<span class="org-variable-name">user</span> = my.username
</pre>
</div>
<p>
Then create an access token on GitLab. I ticked <code>api</code> and <code>write_repository</code>,
which seems to work fine so far. Put the token in <code>~/.authinfo.gpg</code>
</p>
<div class="org-src-container">
<pre class="src src-authinfo"><span class="org-variable-name">machine</span> <span class="org-builtin">gitlab.private.com/api/v4</span> <span class="org-comment-delimiter">login</span> <span class="org-keyword">my.user^forge</span> <span class="org-comment-delimiter">password</span> <span class="org-doc">&lt;token&gt;</span>
</pre>
</div>
<p>
(Remember that a newline is needed at the end of the file.)
</p>
<p>
Finally, add the GitLab instance to <code>'forge-alist</code>
</p>
<div class="org-src-container">
<pre class="src src-emacs-lisp"><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-keyword">setq</span>
forge-alist
'<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"gitlab.private.com"</span> <span class="org-string">"gitlab.private.com/api/v4"</span> <span class="org-string">"gitlab.private.com"</span> forge-gitlab-repository<span class="org-rainbow-delimiters-depth-3">)</span>
<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"github.com"</span> <span class="org-string">"api.github.com"</span> <span class="org-string">"github.com"</span> forge-github-repository<span class="org-rainbow-delimiters-depth-3">)</span>
<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-string">"gitlab.com"</span> <span class="org-string">"gitlab.com/api/v4"</span> <span class="org-string">"gitlab.com"</span> forge-gitlab-repository<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>
<span class="org-rainbow-delimiters-depth-1">)</span>
</pre>
</div>
<p>
That's it!
</p>
<div class="taglist"><a href="https://magnus.therning.org/tags.html">Tags</a>: <a href="https://magnus.therning.org/tag-emacs.html">emacs</a> <a href="https://magnus.therning.org/tag-git.html">git</a> <a href="https://magnus.therning.org/tag-magit.html">magit</a> </div>