hotoolong's blog

プログラムのことやエンジニアリングに関することを記事にしています。

2018-04-01から1ヶ月間の記事一覧

brew で MySQL8.0をインストールする

MySQL8.0がリリースされましたね。 MySQL8.0の機能 MySQL :: MySQL 8.0: Up to 2x Faster 新機能と以下が上げられています。 Document Store Transactional Data Dictionary SQL Roles utf8mb4 character set が Default に 共通テーブル式の追加 Window関数…

vim-gitgutterでGitコマンドを使う

以前から行単位で変更箇所を戻すのにGitGutterRevertHunkを使ってたのですが、 vim-gitgutterのバージョンを上げるとコマンド名が変更になっていました。 github.com .config/nvim/init.vim には以下の用にGitGutterRevertHunk だったのを GitGutterUndoHunk…

誤って git reset --hard HEAD^ してしまったので取り消したい

Git

表題通り git reset --hard HEAD^ を取り消したくなったので調べてみました。 以下のreflogコマンドで実行履歴を確認できます。 git reflog -n 5 戻したい場所を確認して、以下のコマンドで指定します。 HEAD@{1}に戻す場合は以下の通り git reset --hard "H…

今更ながら「20年目のRubyの真実」を読んだ

2015年の話なんですね。 ちょっと長いですが楽しく読めました。 個人的に以下が面白かったです。 驚き最小の法則が逆にめんどくさい 次の言語来てほしいけど誰も載ってこない Rails、Rubygemsなどのコミュニティが果たす影響はすごく大きい プロモーションが…

CIでbundle install するときには --clean をつけると無駄にキャッシュされない

タイトルどおりなのですが、 目からウロコだったので、メモとして残しておきます。 Circle CI 2.0 でstore_cache、 restore_cache を使って、Bundler の gem をキャッシュしていたので、 とても参考になります。 ローカル環境でも --clean を付けてもいいの…

MySQLのgroup_concatをつかって複数の項目を1行に並べる

1対多のテーブル構成を多になっているテーブルの情報をgroup_concatを使って表示したくなるケースがあったのですが、 単純に1カラムのデータだけを表示する場合はそのまま使えばいいのですが、 複数を一気に選択することができず、副問合せして取得しました…

Capybaraでselect時に同じ名称のvalueがありエラーになってしまう

RSpecでCapybaraのテストをしてたのですが、 select '東京都', from: '都道府県' と記載している箇所で Capybara::Ambiguous: Ambiguous match, found 2 elements matching visible option "東京都" within #<Capybara::Node::Element tag="select" path="/html/body/div/div/div[3]/div[2]/div/div/form/div[8]/select"> のようなエラーが出てしまいました。 FactoryBot</capybara::node::element>…