AR ホームベーカリー

オイラのアウトプット用ホームベーカリー!

git log の表示

追記: 2024/03/03

最近 git flow like なプロジェクトを見ることが多くて、feature ブランチが大量に発生しているので、日付と合わせてコミットされた時刻も出すようにした。

❯ git config --global alias.tree 'log --all --date-order --date=format:"%Y-%m-%d %H:%M:%S" --graph --format=" <%h> %ad [%an] %C(auto)%d%Creset %s"'

視認性は下がったけど、取得できる情報量は増えたのでこれで。

git tree

いつも git log -3 --graph とかしてるので、下記記事を参考に git tree を設定した。

qiita.com

git config --global alias.tree 'log --all --date-order --date=format:"%Y-%m-%d" --graph --format=" <%h> %ad [%an] %C(auto)%d%Creset %s"'

おまけ

コメント兄貴の auto にしてみた。 わかりやすいのでワイは auto で行く所存。

画像のコミットログは、今一人で作業しているプロジェクトの直近の成果です……。

green

ブランチのフォント色は green で統一される

auto

リモートが red でローカルが green かな?

credentials.yml.enc をやめる

なんかこれも前に書いた気がするな。

#{RAILS_ROOT}/config/credentials.yml.encmaster.key が無いと復号化できなく欠けた状態では動きません。 master.key はたしか .gitignore に標準で記載されているので、何らかの手段で rails new した人が、チーム内で共有する必要があります。

credentials をやめる方法

#{RAILS_ROOT}/config/enviroments/ 以下の RAILS_ENV に対応する development|staging|production|test それぞれの .rb ファイルから以下のように記述しておきます。

# master.key を参照する (credentials.yml.enc を使う場合はこっち)
# config.require_master_key = true
# SECRET_KEY_BASE を参照する (credentials.yml.enc をやめる場合はこっち)
config.require_master_key = false

おまけ

マーこれ過去に「なくても動くでしょ」って言われて共有拒否られたのがトラウマになってて、 credentials.yml.enc 否定派になっちゃんすよね。 (動くって言ってた人が rails new してたので、そりゃあんたの環境では動くでしょうよ、という顔になっていた。)

正直なところ、昨今では .env .direnv 的なドットファイルで管理せず AWS のパラメタストアのような、インスタンスの外部に存在するサービスに秘匿保存しろ (インスタンスには依存する秘匿情報の類は保存しない、気軽に壊して作れるように) みたいな風潮を感じつつ。 Rails5.2 リリース当時の、ウェブアプリも暗号化がんばろうねとか Docker などコンテナが本格的になる前の風潮から進んだ感あるので。 コンフィグとして存在するのは確かにアリなんだけど、有効化はしなくていいよなって個人的な気持ちから無効化して運用しています。

rbenv のコマンドを何時も忘れてる

以前も書いた気がするけど思い出せないので再度書く

更新

anyenv 利用時

anyenv update

手動で rbenv plugin として入れている時

github.com

インストール可能なバージョン一覧の表示

よく忘れるやつ、最近の rbenv で --list-all オプションに変わったんだっけ?

rbenv install --list-all

インストール済みのバージョン一覧の表示

rbenv versions

現在居るディレクトリで有効になっている (rbenv から指定されている) ruby のバージョン

.ruby-version があると切り替わるやつ

rbenv version
ruby -v

brew update が素直にできなくなってた

Error:
  homebrew-core is a shallow clone.
  homebrew-cask is a shallow clone.
To `brew update`, first run:
  git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow
  git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask fetch --unshallow
This restriction has been made on GitHub's request because updating shallow
clones is an extremely expensive operation due to the tree layout and traffic of
Homebrew/homebrew-core and Homebrew/homebrew-cask. We don't do this for you
automatically to avoid repeatedly performing an expensive unshallow operation in
CI systems (which should instead be fixed to not use shallow clones). Sorry for
the inconvenience!

fetch 2種実施してから update しましょう。 めちゃめちゃ時間かかった (ズンビーになったかと思った) ので時間あるときにやるといいすよ。