@m_seki の

I like ruby tooから引っ越し

Mac miniをサーバーにするぞ #3

gitのpush先にするぞ

gitってサーバーって概念あるのかな。メイン機での作業をpushする先としてサーバーを設定する。

githubとかじゃだめなの?

個人的などうでもいいツールの場合、クレデンシャルとか鍵とかトークンとか、そういうのを直書きした方が便利なケース多いじゃん? かといって一台のマシンにだけしかコードが残っていないのも嫌なので、ご自宅サーバーにpushしておきたくなりました。

実験用のリポジトリを作る

メイン機(MacBook Pro / monet)のいつもの開発環境で、ディレクトリを作ってgit init。 この例のリポジトリは「as_bot」です

monet % mkdir as_bot
monet % cd as_bot
monet % git init

んでREADME.mdやら実験スクリプトやらをローカルのリポジトリにcommitしておきます。

サーバー側の設定

サーバー機(Mac mini / petit)でpush先にありリポジトリを準備します。 ホームディレクトリのしたに repos/ ディレクトリを作ってここを本拠地とする。

petit % mkdir repos
petit % mkdir repos/as_bot.git
petit % cd repos/as_bot.git
petit % git init --bare --shared

bareとsharedはどういう意味なんだろう。

pushしてみる

monet % git remote add origin mas@petit.local:repos/as_bot.git
monet % git push
fatal: The current branch main has no upstream branch.
To push the current branch and set the remote as upstream, use

    git push --set-upstream origin main

To have this happen automatically for branches without a tracking
upstream, see 'push.autoSetupRemote' in 'git help config'.

あれ?なんかエラーでた。言われるがままタイプしてみる。

monet % git push --set-upstream origin main
Enumerating objects: 6, done.
Counting objects: 100% (6/6), done.
Delta compression using up to 8 threads
Compressing objects: 100% (5/5), done.
Writing objects: 100% (6/6), 716 bytes | 716.00 KiB/s, done.
Total 6 (delta 0), reused 0 (delta 0), pack-reused 0
To petit.local:repos/as_bot.git
 * [new branch]      main -> main
branch 'main' set up to track 'origin/main'.

できた!

サーバー側でもcloneしてみる

サーバー側でもcloneしてみます。

petit % cd~/dev
petit % git clone ~/repos/as_bot.git

これでmonetで開発して、うまくいったらpetitで運用!とかできそう。

あわせて読みたい。いつか

_ko1の本屋さんで買ったけど積読してるやつ。