Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
git cococoとRailsアプリ開発
Search
Yuya.Nishida.
March 31, 2018
Technology
510
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
git cococoとRailsアプリ開発
git cococoの説明とRailsアプリケーション開発で使われる場面を説明します.
Yuya.Nishida.
March 31, 2018
More Decks by Yuya.Nishida.
See All by Yuya.Nishida.
削除操作 しない させない ゆるさない
nishidayuya
0
52
meeting about memo
nishidayuya
0
810
Useful Chef cookbooks
nishidayuya
0
65
Other Decks in Technology
See All in Technology
DMMブックスのNext.js化を加速させるAI活用 / Migrating DMM Books to Next.js with AI
kentarom
1
330
AIで開発は速くなったのに、なぜ現場は楽にならないのか 〜あなたの組織のボトルネックを突き止めるワークショップ〜
jacopen
1
260
多摩川(.dev)ランニング入門 / Tamagawa.dev#3
fujiwara3
3
350
2026-09-04 SRE Tech Talk #15 怠惰なTerraform / Lazy Terraform
masasuzu
0
190
AIで仕事のやり方を変える
matsu7874
1
370
V8コントリビュート超入門
riyaamemiya
0
140
振り返りこそエンジニアの本領
negima
0
290
設計の世代交代を乗り越える、14年続くAndroidアプリの開発戦略
sansantech
PRO
1
120
全員がプロダクトへ向き合う組織を持続成長させるために——組織づくりのフライホイールと4象限 / The Flywheel Model and Four Quadrants for Organizational Design
hiro_torii
3
820
KPIだけでは評価できないプロダクトが考えるべき Evalsという第二の評価系 / Beyond KPIs: Evals as a Second Evaluation Framework for Products #PdEConf
aki_iinuma
4
3.6k
Tab5をRubyで動くパソコンにする
kishima
1
180
スクラムで身についていた動き方を、XPで捉え直してみた
codmoninc
PRO
1
200
Featured
See All Featured
Between Models and Reality
mayunak
4
450
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
570
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
660
The Cost Of JavaScript in 2023
addyosmani
55
10k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
A designer walks into a library…
pauljervisheath
211
25k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.2k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.2k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
240
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Practical Orchestrator
shlominoach
191
12k
Transcript
git cococoとRailsアプリ開発 西田雄也 2018-03-31 kunibiki.rb#7 Powered by Rabbit 2.2.1
自己紹介 西田雄也 Twitter,GitHub: @nishidayuya 趣味: 小さいものを書く スノーボード なんとかGo(昨年末にTL40) 1/16
git cococoっ てなに?
git cococoってなに? 実行したコマンドとともにコマンドによる変更をコミ ットするコマンド $ git cococo bundle update コマンド実行前にコミット漏れがないか確認
1. コマンド実行 2. 変更点をコミット もう一度同じことをするコミットメッセージとともに 3. 3/16
git cococoってなに? 実行したコマンドとともにコマンドによる変更をコミ ットするコマンド $ git cococo bundle update コマンド実行前にコミット漏れがないか確認
1. bundle updateを実行 2. 「run: git cococo bundle update」といったコ ミットメッセージで変更点をコミット 3. 4/16
もう一度同じことをするための コミットメッセージ コマンド実行はいいとしてコミットメッセージを 書くときにコピー&ペーストするの面倒. 毎回「どんな風に書いてたっけ…」って思いな がらgit logで調べて同じように書くの面倒. ↓ これを解決! 実行時に一回だけ書けば良い
コミットメッセージはコマンド任せ 5/16
動機 松江Ruby会議08のa_matsudaさんの話 「コード生成するコマンドを実行した場合は、そ のままコミットするのが望ましい。」 読みたいのは人間が書いた部分 コマンドでコード生成した部分は実行したコマンドがわ かればいい 6/16
デモ
デモ: Railsア プリケーショ ン開発でよく ある使い方
構成 git cococoはBourneシェルのシェルスクリプト 当初はRubyで実装していた. Windowsで動かしたくなった. mruby-cliもあるけど… Gitが動く環境にはBourneシェルあるいは互換のシェ ルがある. 自動試験はRubyで書いている. 単体テストとインテグレーションテスト
test-unitが試験を書きやすい. 9/16
設計 思想
設計思想: インストールが簡単 1ファイルのシェルスクリプトで実装してある. ダウンロードして実行パーミッションを与えるだ け. $ wget https://raw.githubusercontent.com/nishidayuya/git-cococo/master/exe/git-cococo $ chmod
a+x git-cococo $ mv git-cococo move-to-PATH-env-directory/ 11/16
設計思想: 動く環境はGit Gitが動作する全ての環境で動く(はず). はず… 全ての環境で試験できません! 次の環境でCIをまわしている. Ubuntu Windows MacOSX 動かないUnixあるいはUnix互換OSがあれば
教えてください&プルリクエスト歓迎です. 12/16
設計思想: 余計なことはしない 当初はコミット漏れがあれば自動的にgit stash することを考えていた. ↓ 使ってみたところコマンド実行に失敗したときに stashしたままになるが,自動的にやっちゃうと stashしたものが消えたように見える. 焦っているときは特に困る.
↓ --autostashオプションで明示的に指示する形 とした. 13/16
設計思想: Gitと合わせる(1) --autostashオプションについて 当初は--auto-stashというオプション名で考え ていた. ↓ git rebaseに--autostashオプションがあること に気がついて揃えた. 14/16
設計思想: Gitと合わせる(2) git cococoという名前について Gitにはgit rerereコマンドがある. REuse REcorded REsolutionの略 ↓
git cococo COmmit COmpletely COmmand outputの略 意味が合っている. 短い. 15/16
ご静聴ありがとうございました インストールは https://github.com/nishidayuya/git-cococo より 気に入ってくださったらスターとかいただけると 調子に乗ります 励みになります. 16/16 Powered by
Rabbit 2.2.1