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
0
480
git cococoとRailsアプリ開発
git cococoの説明とRailsアプリケーション開発で使われる場面を説明します.
Yuya.Nishida.
March 31, 2018
Tweet
Share
More Decks by Yuya.Nishida.
See All by Yuya.Nishida.
削除操作 しない させない ゆるさない
nishidayuya
0
32
meeting about memo
nishidayuya
0
800
Useful Chef cookbooks
nishidayuya
0
46
Other Decks in Technology
See All in Technology
mrubyと micro-ROSが繋ぐロボットの世界
kishima
2
280
~宇宙最速~2025年AWS Summit レポート
satodesu
1
1.8k
PHP開発者のためのSOLID原則再入門 #phpcon / PHP Conference Japan 2025
shogogg
4
740
生成AI時代 文字コードを学ぶ意義を見出せるか?
hrsued
1
420
エンジニア向け技術スタック情報
kauche
1
260
Snowflake Summit 2025全体振り返り / Snowflake Summit 2025 Overall Review
mtpooh
2
400
Oracle Cloud Infrastructure:2025年6月度サービス・アップデート
oracle4engineer
PRO
2
240
PostgreSQL 18 cancel request key長の変更とRailsへの関連
yahonda
0
120
解析の定理証明実践@Lean 4
dec9ue
0
180
Model Mondays S2E02: Model Context Protocol
nitya
0
220
Welcome to the LLM Club
koic
0
170
Clineを含めたAIエージェントを 大規模組織に導入し、投資対効果を考える / Introducing AI agents into your organization
i35_267
4
1.6k
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
31
8.6k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
670
Automating Front-end Workflow
addyosmani
1370
200k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Faster Mobile Websites
deanohume
307
31k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
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