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の本屋さんで買ったけど積読してるやつ。