<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Do It Yourself on danix's ramblings</title><link>https://danix.xyz/tags/do-it-yourself/</link><description>Recent content in Do It Yourself on danix's ramblings</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Sun, 13 Jun 2021 12:07:49 +0200</lastBuildDate><atom:link href="https://danix.xyz/tags/do-it-yourself/index.xml" rel="self" type="application/rss+xml"/><item><title>Git Setup Your Own Server</title><link>https://danix.xyz/articles/2021/06/git-setup-your-own-server/</link><pubDate>Sun, 13 Jun 2021 12:07:49 +0200</pubDate><guid>https://danix.xyz/articles/2021/06/git-setup-your-own-server/</guid><description>&lt;p&gt;Hello everyone,&lt;/p&gt;
&lt;p&gt;I recently decided to move all my code under GIT, I&amp;rsquo;ve used it before and I&amp;rsquo;ve used also SVN, but I find GIT to be more straightforward in some aspects.&lt;/p&gt;
&lt;p&gt;In order to use git I needed a place online where to store my projects, and I thought that github could be a good place, but the fact that you have to pay to keep a project private just didn&amp;rsquo;t sound right in my opinion. Of course github is there to make money (specially now that M$ bought it), but I prefer to have a simpler setup and be able to do things my way as much as possible.&lt;/p&gt;
&lt;p&gt;So I started planning what I wanted my git server to have. Here&amp;rsquo;s a list:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Security&lt;/strong&gt; - I decided to make it work only under ssh, that way only someone who has the key can clone or access the repository. I also added an unprivileged git user that has only access to very few commands, so even if somebody manages to access through ssh he&amp;rsquo;ll find himrself with only very few options available.&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;&lt;strong&gt;Notifications&lt;/strong&gt; - my server already tells me a lot of what happens, so I wanted my git service to do the same. I implemented a mail service that notifies me every time a new repository is added or everytime there&amp;rsquo;s a push to a repository.&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Automation&lt;/strong&gt; - I wanted to have less steps possible between creation of the project and deployment to production. Now in two steps I can create a repository and clone it to my local computer, and when I&amp;rsquo;m done I just need to push my modifications and the code is deployed &lt;mark&gt;automatically&lt;/mark&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Visibility&lt;/strong&gt; - I haven&amp;rsquo;t yet decided if I want my code to be visible, so I haven&amp;rsquo;t even started thinking about this possibility.&lt;/li&gt;
&lt;/ul&gt;</description></item></channel></rss>