• opsだけどgitを使ってみた~その1

    こんにちは。小宮です。 opsだけどgitを使ってみた~その1ということで、githubもgitlabもgitも初心者なので忘れないようにメモ。 今回はたどたどしくpushするところくらいまでにします。branch切ってみるとこは初回から書くとおなかいっぱいになりそうなので。 たぶんその2までです。その2はbranchとtagとconfrictのことを書いています。

    背景とメリットデメリット

    ・背景  昨今の継続的インテグレーションだとかでchefでサーバ構築の需要があってその流れ弾に当たった機会を得たため、  そのリポジトリをバージョン管理する必要が生じましてgitをつかうことに。最初は会社のエンタープライズ版のgithubに保存してもらっていたんですが、  VPN経由でのやり取りの需要からgitlabの導入を行うことになりました。 ・gitのメリット  ヒストリ追わなくていい。見える化。ファイル内の差分が見やすいので確認がブラウザで容易に可能になる ・gitのデメリット  同僚がつかいはじめてくれない(必要にせまられないと忙しくてスルー傾向)  まあなんか気持ちはわかります。私もきっかけは半ば強制的な感じでした。

    githubとgitlabの違い  gitコマンド的にはあんま変わんない気もしますが、制度がオープン(エンタープライズはクローズ可)かクローズでいけるか、  gilabの場合は容量制限もディスク容量とかの環境次第でユーザ権限を細かく設定できたりなどするのがいい感じです。  もっというとVPN越しにしかつながらないようにしたいとかの自由がききます。共有Webサービスつかうか自前構築のつかうかの差です。  gilab導入の手間は最近はchefで気軽に入るレシピもあり軽減されてきたようです。

    githubの場合、二段階認証をなんとかする

     詳細な説明は省きますが、まずgithubに登録して会社のgithubの二段階認証をなんとかします  →会社で用意していただいたマニュアルのとおりに実施。   要はgmailの2段階認証みたいなことで携帯にSMS通知が届いて認証する仕組みのセットアップです。

     接続するホストでsshの鍵の作成と、作成した公開鍵の登録をgithub側のユーザプロファイルで行います。

    pushするホストでgitを初期設定する

    まずgitコマンド打つ人のユーザ情報を登録です。

    git config --global user.email "komiyay@xxxxx"`
    git config --global user.name "Yxxx Komiya"
    

    設定ファイルにメモリ制限やスレッド数を指定しないとOutOfMemoryエラーが出ます。

    $ vi ~/.gitconfig
    [user]
            email = komiyay@xxxxx
            name = Yxxx Komiya
    [core]
            packedGitWindowSize = 128m
            packedGitLimit = 128m
    [pack]
            windowMemory = 128m
            threads = 2
            deltaCacheSize = 128m
            packSizeLimit = 128m
    

    ※m1.smallくらいでこの設定にしました。t1.microだとメモリエラー出ました。

    ...