It pains me to think that people nowadays need to be reminded that many cloud services were/are originally available locally, for unlimited use. Amazon's whole services model seems to revolve around converting on-prem services into cloud offerings, even.<p>Modern computing is just like the chemicals industry now. You can clean your whole house with just a few simple ingredients (only one is a product -- water, citrus, baking soda, vinegar, mud, and bleach), but how many of us actually know that? Instead we go to the store and pick up Windex, Drain-o, and everything else, because we paid more attention to advertisements and marketing droids than the world around us.<p>The damage that modern technology has done to human resourcefulness makes me weep
The point of Github is not so much the repo hosting part (well, that too). The point of Github is<p>- the nice web UI for browsing code<p>- the social features (issues, pull requests, reviews)<p>That's why, after years of Gitolite (i.e. nearly as bare Git hosting as the submission discusses), I've switched to Gogs last year.
I built a free lightweight service that automates this, and provides a nice CLI tool for interacting with it. Right now it deploys to free hosting on the gitup servers. Repo auth is handled via git-ssh verification with offloaded key storage and individual user roles/permissions.<p><a href="https://gitup.io" rel="nofollow">https://gitup.io</a><p><a href="https://npmjs.com/package/gitup-cli" rel="nofollow">https://npmjs.com/package/gitup-cli</a><p>Some commands include:<p>- `gitup login <username>` : authenticates/registers user<p>- `gitup new <repo-name>` : creates a new repo at gitup.io/username/repo-name<p>- `gitup add-user <repo-name> <username>` : share a repo with another gitup user<p>Repos are private by default. Right now this is a very basic free service but hope to expand the offering quickly including self hosting the repo storage, the key store, web interface, etc.<p>Would love to know if you check it out and come across a bug or have any feedback for me! Thank you.
I recently did something like this as well, and one thing I particularly missed was the convenience of quickly creating the remote repository, so I made this bash script: <a href="https://gist.github.com/zikes/926fd8bb72f9856776e309fba45f07cc" rel="nofollow">https://gist.github.com/zikes/926fd8bb72f9856776e309fba45f07...</a><p>An interesting thing about git, if there's an executable somewhere in your $PATH and it starts with git-, then it becomes a "git command". So in my case, I named it git-make-remote.sh, and I can execute it via "git make-remote myreponame" and it will SSH to my private git server and create the associated remote repo.
I have essentially the same tutorial on my readme here: <a href="https://github.com/divbit/grimoire" rel="nofollow">https://github.com/divbit/grimoire</a> except I've included a step where Ubuntu uncomplicated firewall is setup. I wonder if anyone has any suggestions on other basic security measures that should be taken for a private git repo?
I've git all my local scripts and snippets for years. Good to rollback sometimes.
I have a 2010 laptop running behind TV. Any SSH host can be git server. And it hosts my owncloud. In purpose of rolling back binary documents, it works much faster and frequently.
I built a docker container that can serve as a quick plug and play ssh over git repository: <a href="https://github.com/rkcf/docker-git-server" rel="nofollow">https://github.com/rkcf/docker-git-server</a>
Even if you need issues, you can still use apps like gitissius that will store the data in your repo <a href="https://github.com/glogiotatidis/gitissius/blob/master/README.org" rel="nofollow">https://github.com/glogiotatidis/gitissius/blob/master/READM...</a><p>For PRs there's <a href="https://github.com/google/git-appraise/blob/master/README.md" rel="nofollow">https://github.com/google/git-appraise/blob/master/README.md</a>
Those who are missing issue tracking with this approach might want to consider using Fossil (<a href="https://www.fossil-scm.org/" rel="nofollow">https://www.fossil-scm.org/</a>) which includes a wiki and issue tracking in one simple DSCM system.
For a lot of my non-critical work that I want to share between computers (e.g. desktop and laptop), I commit to various git repositories in my Dropbox. It's very convenient, and allows me to share my git repos as seamlessly as documents.