ほぼほぼgithubなGitリポジトリを管理するサービス作ったよ「gitpage」

Pocket
LINEで送る
GREE にシェア
LinkedIn にシェア

こんにちわ。
 

webサービスは、高速に、大体なんでも自作できるようになった、下駄です。
 

「github」とかけまして、
 

「恋愛の駆け引き」と、ときます。
 

そのココロは・・・
 

pushしているだけではダメなので、引いてみる(pull)ことも、時には大事

githubはいいサービス

プログラミングをする人であれば、githubを使っていない人はいないといってもいいぐらいに浸透している、git管理サービスですが、
 

チーム管理や、OSSというオープンソースの拡大に一役買っている、非常にいいサービスです。
 

大手の企業が、フリーラーセンスを配布する手段にも使われているし、
 

レガシーなソフトウェアなどの、ソース公開などにも使われていて、もはやプログラムソースの宝庫と化しているため、このソースコードをAIで解析して、
 

エンジニアのクオリティを解析して、人材事業に活用しているような付随サービスまで生まれています。
 

何故gitを使うの?

gitの生まれる前までは、svnやmicrosoftのOpenSouseSafeを使っている人がほとんどで、そもそもそのツールたちも、使うのが難しかったり、有償だったりしたことから、個人ではソースコード管理などやっていないという人が大半でした。
 

手軽にlinuxサーバーが構築できるようになった時代背景と、インストールの楽さ、一度覚えてしまうと、使い勝手の良さがgitにはあり、
 

バージョン管理をやらない方がマイノリティという時代背景になってきた感じです。
 

githubを自分で作る

僕も自分で作ったツールやライブラリをgithubにたくさんアップしてきましたが、仕事で使う場合は、有料サービスを利用しないと、非公開モードにできません。
 

という事で、自分で非公開できるgitリポジトリ管理システムを作ればいいのでは?と考えて、作ってみました。
 


 

https://mynt.site/gitpage/
 

できることは、シンプルで、以下のような機能をもたせています。
 


・gitリポジトリの作成
・リポジトリのpushとclone
・リポジトリ内の情報を表示
・公開/非公開の切り替え

 

アカウントを登録すれば、誰でも使えるようにしています。
 

サービス構築の時の技術課題

このサービスを作る際に、gitリポジトリへのアクセスをなんとかhttp/https経由で行えないか考えていたところ、当初はできなかったけど、最近のgitツールでは、標準でcgi経由でリポジトリアクセスできる機能が搭載されているという事を知り、
 

nginxにfcgiwrapというphp-fpmのようなモジュールを介して行えることがわかったので、ここのサーバー設定と検証に一番時間がかかりました。
 

詳しくは、コチラに記事アップしてあります・・・
 

apacheでやれば、非常に簡単に行えるということも同時にわかったので、このサービス自体をオンプレで企業に導入したり、別のサーバーに移したりすることは、
さほど難しくないという感じですね。
 

自社開発している開発チームの悩み

何社かの開発チームコンサルティングを経験してきた時に、どの開発チームも、自分たちの運営と開発を行っているサービスなどの、デプロイシステムをどう構築すればいいか悩んでいるという声をたくさん聞きました。
 

確かに僕も以前に所属していた会社で、デプロイは、ftpを使って手作業でファイルアップロードしていたのですが、手作業によるミスと、作業効率の悪さ、問題発覚時の手戻り作業などが、ローテクすぎて数々の凡ミスを生んできました。
 

そうしたサーバーのapacheかnginxに、gitリポジトリの口を作っておけば、外部からpushして、サービス更新したりもできるし、非公開モードで、その開発チームのコマンドで、リポジトリサーバーから本番サーバーへ、pushしたり、逆の構成でpullしたりすることで、簡単にデプロイ作業ができてしまうという環境構築も意外と簡単に行えるんですね。
 

こうした事でお悩みのチームマネージャーの方いらっしゃいましたら、是非お問い合わせくださいませ。

Leave a Reply

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です