Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
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
820
Useful Chef cookbooks
nishidayuya
0
66
Other Decks in Technology
See All in Technology
Cloudflare Workers 向けアプリを C# で構築する ~WASM Native AOT への道~
nenonaninu
1
1.8k
セルフサービスのオブザーバビリティ基盤をOpenTelemetryで作る / Building a Self-Service Observability Platform with OpenTelemetry
ymotongpoo
3
430
サーバーレスをどこまで使う? WebRTC対戦ゲームで選んだVPSとの共存設計
kaidouji85
0
480
人にやさしく、AIにやさしく、書き手を選ばないIaCのガードレール再考 / Rethinking IaC Guardrails for Humans and AI Alike
kohbis
5
1.6k
Lambda MicroVMsが分からなすぎたので使い所を1から考えてみた
tsukuboshi
1
120
ScotSecure West 2026 - Glasgow
raybugg
0
200
「今盗んで、後で解く」に備える ― AWSのポスト量子暗号入門
yama3133
2
260
LT:「このままでいいのかな?」から一歩踏み出した私のデータキャリア選択〜社会人3年目に上京を決意したリアル〜Snowflake女子会 vol.8
snowwmn0824
0
110
全社共通データ基盤をつくる。ソニーのDatabricks活用とデータガバナンス設計の裏側
sony
0
130
GoのInterface内部構造から学ぶ!最高パフォーマンスを出すコード設計
yappli_developers
1
300
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
16
120k
【Findyテック文化祭ワークショップ】新卒エンジニア&採用担当と作る、 なりたい姿と今やるべき一歩
dip_tech
PRO
0
130
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
1k
Chasing Engaging Ingredients in Design
codingconduct
0
340
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
GraphQLとの向き合い方2022年版
quramy
50
15k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
520
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
550
Documentation Writing (for coders)
carmenintech
77
5.5k
Scaling GitHub
holman
464
140k
Tell your own story through comics
letsgokoyo
1
1.1k
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