SlideShare a Scribd company logo
1 of 35
Download to read offline
© CROOZ,Inc. 1
怖くないブランチ開発
技術統括本部
鈴木 優一
© CROOZ,Inc. 2
本日の内容
・ ブランチという概念
・ ブランチ開発の必要性
・ 避けては通れないマージ
・ なぜvenus 3.0以降ではGITか?
・ venus 3.0での開発フロー
・ GITを利用する場合のクライアントツール
・ DEMO
・ まとめ
© CROOZ,Inc. 3
1.ブランチという概念
その前に、なぜバージョン管理
ツールが必要なのか?
当たり前のこととして片付けられているのか
意外と記事がないので、改めて考えてみま
しょう。
© CROOZ,Inc. 4
0.何故バージョン管理が必要なのか
疑問1
わざわざ面倒なことをしなくてもFTPでサーバーに更新
すれば済むのでは?
疑問2
バックアップだけであれば、RAIDとかDRBD※で良いの
では?
※サーバ越しにディレクトリをミラーリングする手法
© CROOZ,Inc. 5
0.何故バージョン管理が必要なのか
複数名で開発していると起こりやすい問題はなにか?
上書きの問題の発生
タイムライン
サーバ
開発者A
開発者B
タスク1:機能追加
タスク2:バグ修正
上書き上書き
バージョンを管理していないと、貴重な時間をかけて作成
したソースコードを失ってしまう。
© CROOZ,Inc. 6
0.何故バージョン管理が必要なのか
バージョン管理の仕組みを導入していると…
上書きの問題の発生
タイムライン
サーバ
+
バージョン管理ツール
開発者A
開発者B
タスク1:機能追加
タスク2:バグ修正
保存
ソースコードをローカルのものとサーバ上の最新のもの
を比較し、差分があれば教えてくれます。
競合を通知
マージ
保存
© CROOZ,Inc. 7
0.何故バージョン管理が必要なのか
答え
上書きによるソースコード変更分の
損失を防ぎ、作り直しにかかる無駄
な時間ロスやデグレによるサービス
への影響を最小限にするため。
© CROOZ,Inc. 8
0.何故バージョン管理が必要なのか
ほかにも
更新履歴を管理し特定の状態に
戻せることで、バグ発生時にどの
作業が元で問題があったかの切
分けを、復旧を容易にするため。
ソースコードの差分を管理するうえで、必然的に履歴を
内部で管理しています。
この履歴を利用して特定の状態に戻すことができます。
この機能を利用ることで、いつどのコードでバグが出た
かの切り分けを容易にすることができます
© CROOZ,Inc. 9
0.何故バージョン管理が必要なのか
ただ以下の疑問がある人いませんか?
うちのチームはバージョン管理ツール入れて
るんだけど、よくデグレ起こるんだよなぁ…
何故か?
大きく分けて原因は2つです
・ 実は作業開始前の手元のソースコード
が最新ではない。
・ マージが適切に行えていない。
© CROOZ,Inc. 10
0.何故バージョン管理が必要なのか
実は作業開始前の手元のソースコードが最新ではない
例) 作業対象のソースコードがサーバ上で更新されて
いることを知らずに、手元のソースコードが最新だ
と思い込んで修正を行い、サーバに更新してしま
った。
マージが最適に行われていない
例) 本来ならばサーバ上のソースコードに修正内容を
追加しなければならないところを、間違えて追加を
せずにサーバ上に更新してしまった。
この2つが組み合わさるとデグレがおこる
© CROOZ,Inc. 11
0.何故バージョン管理が必要なのか
従って、バージョン管理を正しく行うためには以下の2点
を必ず守って下さい。
作業開始前に手元のソースコードを
必ず最新の状態にする
GITの用語でいうと「作業開始前に必ずPULLする」
正しくマージを行いサーバに更新する
GITの用語でいうと「正しくマージしてコミットし、リモート
リポジトリにPUSHする」
© CROOZ,Inc. 12
1.ブランチという概念
話を戻して
ブランチとは「枝・分岐」のこと
変更1 変更2 変更3
変更3’
変更4
変更4’
ブランチ
タイムライン
© CROOZ,Inc. 13
1.ブランチという概念
例えば、あるサイトを作っていて「ちょっとだけ違う」サイト
をBP向けに作ってくれと言われたら貴方はどうしますか?
ソースコードをコピーし、別のサイトのリポジトリとして
管理しようとすると以下課題があることに気づきます
・ コピー元のサイトのバグFIXが適応されず、わざわざ
コピー先のサイトに反映しなければならない
このような時に「ブランチ」という概念が重要となります。
特定のバージョンからブランチとして枝分かれさせること
で、枝分かれする前のバグFIXを2重に管理しなくても
良くなります。
© CROOZ,Inc. 14
1.ブランチという概念
つまり、
「一つの開発の流れが、もう一方と独立して
存在しているが、 もし過去にさかのぼれば
同じ履歴を共有している」
というのがブランチの概念です
© CROOZ,Inc. 15
2.ブランチ開発の必要性
チーム開発をしていると以下のようなことはないですか?
・ 複数の機能を並行して同時に開発しなければ
ならなくなった
・ 開発していた機能のリリースが見送られ、次に
開発する機能がリリースしてからとなった
・ バグFIXと機能開発が並行して行わなければ
ならなくなった
このような時に、ブランチ開発の必要性が出てきます
© CROOZ,Inc. 16
2.ブランチ開発の必要性
ブランチ開発を行うこと
バグFIX1
機能開発1
バグFIX2
完了
タイムライン
機能開発2 完了
リリース リリース
複数の開発案件を同時に行うことができる
開発順どおりに
リリースしなくて
もよくなる
© CROOZ,Inc. 17
2.ブランチ開発の必要性
・ 案件を直列にしか行えなくなる
ブランチ開発を行わないと…
・ 無理やり行えば並行に開発できるが、デバッ
グがかなり面倒なことになる
結論
複数の案件を並行で動かす現場において
開発スピードを上げたければブランチ開発
が必須。
理由
開発工程のうち、必ず直列でしか行えない
個所がボトルネックとなるから
© CROOZ,Inc. 18
2.ブランチ開発の必要性
この必要性について十分理解してください
なぜなら
最終的に苦労するのはプログラマだから
一度概念と操作方法を覚えれば済むことです。
気合いで解決しようとすると、開発スピードとのトレード
オフで余裕がなくなり、バグがバグを生むデスマーチに
なり取り返しがつかないことになります。
必要性を理解し効率よく開発しましょう
© CROOZ,Inc. 19
補足
ブランチはバージョン管理上の概念です。
従って枝分かれしたソースについてはそのままではweb
上で確認できず、リポジトリから出力しweb上から見れる
用にWebサーバの設定を変更する必要があります。
そして、この一連の作業を仕組みとして自動化している
のはVenus 3.0以降です。
チーム開発が想定されるプロジェクトで、開発スピードを
向上したいのであれば、venus3.0以降を採用して下さい
© CROOZ,Inc. 20
3.避けては通れないマージ
おさらい
マージとは競合が発生した際にローカルの
ソースコードと、サーバ上のソースコードの
差分を埋める作業のこと
サーバ
+
バージョン管理ツール
開発者A
開発者B
タスク1:機能追加
タスク2:バグ修正
保存
競合を通知
マージ
保存
マージ
© CROOZ,Inc. 21
3.避けては通れないマージ
まず、マージは必ず必要があります
なぜなら、リリースできないから
リリース対象は枝分かれする前のものなので、元の主流
に戻してあげないリリースできない
変更1 変更2 変更3
変更3’
マージ
変更4’
タイムライン
リリース対象
作成したブランチ
当たり前だが、マージしない限り反映されません
© CROOZ,Inc. 22
3.避けては通れないマージ
次に、頻繁にマージする必要があります
なぜなら、差分が累積され何が正しいか
わからなくなるから
バージョン管理にはツールを使います。
ツールで把握できることは差分が存在するかとファイルの
タイムスタンプで並び替えた時に、何が確からしいかだけ
つまり、
どちらの内容が正しいかは
人にしか分からない
© CROOZ,Inc. 23
3.避けては通れないマージ
マージを頻繁に行わないと
1.マージ対象のファイルが増える
2.その間にも別の開発者により
サーバ上のソースが更新される
3.何が正しいかの確認が大変
この繰り返し
© CROOZ,Inc. 24
3.避けては通れないマージ
特に問題なのは
1.マージ対象のファイルが増える
2.その間にも別の開発者により
サーバ上のソースが更新される
3.何が正しいかの確認が大変
この繰り返し
マージしてサーバに更新していればマージ対象
も少ないし、チームの中で1人が行えば済んだ。
© CROOZ,Inc. 25
3.避けては通れないマージ
ではどうすればよいのか?
以下のことを注意してください
1.開発開始前は必ずサーバ上から
更新差分を取得すること
2.開発終了後は必ずサーバ上に
更新し、競合が発生した場合に
マージすること
3.マージする際はしっかりと何が
正しいかを確認すること
© CROOZ,Inc. 26
3.避けては通れないマージ
この3点だけ
考えながら行えば何も
恐れることはありません
考えないで行うと
大変面倒なことになります
© CROOZ,Inc. 27
4.なぜvenus 3.0ではGITか?
補足でも説明した通り、venus 3.0からブランチに格納さ
れているソースコードについてもが行えるWebサーバ上
から確認できる仕組みをフレームワーク上で提供してい
ます。
ただし、これはフレームワークの機能であり、バージョン
管理ツールへの要件はブランチ管理が行えることです。
そして、その要件はGIT以外もSVNでも満たすことがで
きます。
枯れ切っているSVNではなく覚え直してまでもGITが前提
となっているのか?
© CROOZ,Inc. 28
4.なぜvenus 3.0ではGITか?
いくつかの理由があります。ここで重要なのは
・ プロトコルが速い
・ 分散アーキテクチャ
・ ブランチ開発が行いやすい
・ マージが容易
ブランチ開発を行う上で気を使うところはマージです
なぜならここを失敗すると間違った内容がリポジトリに保
管されてしまい、苦労して作成したソースコードが一瞬で
消えてしまうからです
© CROOZ,Inc. 29
5.venus 3.0での開発フロー
ロ
ー
カ
ル
環
境 ①Eclipse等で開発
②ローカル上で確認
http://blog.ローカルドメイン名
③ローカル環境
にcommit
dev
環
境
④workブランチに
push
⑤ワークブランチ上で確認
http://work.dev3.ドメイン名
⑦masterブランチに
push
⑧マスターブランチ上で確認
http://dev3.ドメイン名
work
ブランチ
master
ブランチ
⑥ローカルでwork→master
にmerge
・ローカル⇒dev
devには2つのブランチが存在
© CROOZ,Inc. 30
5.venus 3.0での開発フロー
・ローカル⇒dev
masterブランチ
リリース対象(このままプレで検証し、本番に反映する)
となるブランチ。(http://dev3.ドメイン名/)
workブランチ
開発時のテスト用ブランチ
ローカルでテストした後にAPI連携などを確認するため
のブランチ。(http://work.dev3.ドメイン名/)
その他ブランチ
開発用に個別でブランチを作成可能
確認後必ずローカルでmasterブランチにマージ
してからdevのmasterブランチにpushすること
© CROOZ,Inc. 31
5.venus 3.0での開発フロー
・devから⇒本番
dev
環
境
master
ブランチ
プ
レ
環
境
master
ブランチ
⑨プレ環境にpush
⑩プレ環境で確認
http://pre3.ドメイン名
本
番
環
境
⑪本番環境にsync
⑫本番環境で確認
http://blog.crooz.jp
プレ以降は変更なし。
devからプレは、venus 2.0のようにローカルから
プレ上のリポジトリへの更新ではなく、dev上で
pushすることにより反映します。
© CROOZ,Inc. 32
6.GITを利用する場合のクライアントツール
・Windowsの場合
・Git Bash コマンドラインツール
・TortoiseGit TortoiseSVNのGIT版
・Git Extensions GUIツール
お勧めは、Git BashとGit Extensions
TortoiseGitはpushのオペレーションがわかりづらいの、コミットグラフがわかりづらい
・Macの場合
Source Tree
© CROOZ,Inc. 33
6.GITを利用する場合のクライアントツール
Git Extensionsを利用する際の注意点
・インストールの際に必ずGit BashとKDiff3を一緒に
インストールすること
・KDiff3の文字コード設定は必ずUTF-8で行ってくださ
い
© CROOZ,Inc. 34
7.DEMO
実際にやってみましょう
© CROOZ,Inc. 35
8.まとめ
複数の案件を並行で動かす現場において
開発スピードを上げたければブランチ開発
が必須。
ブランチ開発の難点は競合とマージ
頻繁にマージして更新さえしていれば
マージは面倒ではない
ブランチ開発は怖いものではなく一度覚え
てしまえば開発スピードも上がり楽になる

More Related Content

What's hot

マジカルsvnとキュアgit
マジカルsvnとキュアgitマジカルsvnとキュアgit
マジカルsvnとキュアgitTakafumi ONAKA
 
Redmine + gitlab: merge base development
Redmine + gitlab: merge base developmentRedmine + gitlab: merge base development
Redmine + gitlab: merge base developmentsmdkk
 
やさしいGitの内部構造 - yapcasia2013
やさしいGitの内部構造 - yapcasia2013やさしいGitの内部構造 - yapcasia2013
やさしいGitの内部構造 - yapcasia2013DQNEO
 
GitとCIとかチャットとかをオンプレで運用する話
GitとCIとかチャットとかをオンプレで運用する話GitとCIとかチャットとかをオンプレで運用する話
GitとCIとかチャットとかをオンプレで運用する話mdome
 
Dockerの事例紹介
Dockerの事例紹介Dockerの事例紹介
Dockerの事例紹介Hiroki Endo
 
Git flowの活用事例
Git flowの活用事例Git flowの活用事例
Git flowの活用事例Hirohito Kato
 
GitLabを16万8千光年ワープさせた話(改)
GitLabを16万8千光年ワープさせた話(改)GitLabを16万8千光年ワープさせた話(改)
GitLabを16万8千光年ワープさせた話(改)Wataru NOGUCHI
 
RedmineとGitとスクラム
RedmineとGitとスクラムRedmineとGitとスクラム
RedmineとGitとスクラムTakashi Okamoto
 
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」Taisuke Inoue
 
ニフティクラウドを使った安定運用のススメ
ニフティクラウドを使った安定運用のススメニフティクラウドを使った安定運用のススメ
ニフティクラウドを使った安定運用のススメNIFTY Cloud
 
Al mininum 47redmine-2nd
Al mininum 47redmine-2ndAl mininum 47redmine-2nd
Al mininum 47redmine-2ndmikoto20000
 
一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理Takafumi Yoshida
 
Nifty cloud automationでクラウド構築・運用の自動化
Nifty cloud automationでクラウド構築・運用の自動化Nifty cloud automationでクラウド構築・運用の自動化
Nifty cloud automationでクラウド構築・運用の自動化NIFTY Cloud
 
Rancher による社内向けテナントサービス基盤
Rancher による社内向けテナントサービス基盤Rancher による社内向けテナントサービス基盤
Rancher による社内向けテナントサービス基盤Keita Shimada
 
Cocos2d-x 3.0を使ったゲーム “消滅都市” の開発事例
Cocos2d-x 3.0を使ったゲーム “消滅都市” の開発事例Cocos2d-x 3.0を使ったゲーム “消滅都市” の開発事例
Cocos2d-x 3.0を使ったゲーム “消滅都市” の開発事例gree_tech
 
20171028_66842_Emacs実践入門_出版記念イベント_以前Emacs使いだったVim使いがEmacsのリハビリしている様子(回想多め)
20171028_66842_Emacs実践入門_出版記念イベント_以前Emacs使いだったVim使いがEmacsのリハビリしている様子(回想多め)20171028_66842_Emacs実践入門_出版記念イベント_以前Emacs使いだったVim使いがEmacsのリハビリしている様子(回想多め)
20171028_66842_Emacs実践入門_出版記念イベント_以前Emacs使いだったVim使いがEmacsのリハビリしている様子(回想多め)Wataru NOGUCHI
 

What's hot (20)

マジカルsvnとキュアgit
マジカルsvnとキュアgitマジカルsvnとキュアgit
マジカルsvnとキュアgit
 
Redmine + gitlab: merge base development
Redmine + gitlab: merge base developmentRedmine + gitlab: merge base development
Redmine + gitlab: merge base development
 
やさしいGitの内部構造 - yapcasia2013
やさしいGitの内部構造 - yapcasia2013やさしいGitの内部構造 - yapcasia2013
やさしいGitの内部構造 - yapcasia2013
 
GitとCIとかチャットとかをオンプレで運用する話
GitとCIとかチャットとかをオンプレで運用する話GitとCIとかチャットとかをオンプレで運用する話
GitとCIとかチャットとかをオンプレで運用する話
 
ドリコムJenkins勉強会資料
ドリコムJenkins勉強会資料ドリコムJenkins勉強会資料
ドリコムJenkins勉強会資料
 
Dockerの事例紹介
Dockerの事例紹介Dockerの事例紹介
Dockerの事例紹介
 
Git flowの活用事例
Git flowの活用事例Git flowの活用事例
Git flowの活用事例
 
Jenkinsはじめました - Yahoo! JAPANのCI+CD -
Jenkinsはじめました - Yahoo! JAPANのCI+CD -Jenkinsはじめました - Yahoo! JAPANのCI+CD -
Jenkinsはじめました - Yahoo! JAPANのCI+CD -
 
Jenkins 再入門
Jenkins 再入門Jenkins 再入門
Jenkins 再入門
 
GitLabを16万8千光年ワープさせた話(改)
GitLabを16万8千光年ワープさせた話(改)GitLabを16万8千光年ワープさせた話(改)
GitLabを16万8千光年ワープさせた話(改)
 
RedmineとGitとスクラム
RedmineとGitとスクラムRedmineとGitとスクラム
RedmineとGitとスクラム
 
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」
 
ニフティクラウドを使った安定運用のススメ
ニフティクラウドを使った安定運用のススメニフティクラウドを使った安定運用のススメ
ニフティクラウドを使った安定運用のススメ
 
Al mininum 47redmine-2nd
Al mininum 47redmine-2ndAl mininum 47redmine-2nd
Al mininum 47redmine-2nd
 
一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理
 
Nifty cloud automationでクラウド構築・運用の自動化
Nifty cloud automationでクラウド構築・運用の自動化Nifty cloud automationでクラウド構築・運用の自動化
Nifty cloud automationでクラウド構築・運用の自動化
 
真Drone入門
真Drone入門真Drone入門
真Drone入門
 
Rancher による社内向けテナントサービス基盤
Rancher による社内向けテナントサービス基盤Rancher による社内向けテナントサービス基盤
Rancher による社内向けテナントサービス基盤
 
Cocos2d-x 3.0を使ったゲーム “消滅都市” の開発事例
Cocos2d-x 3.0を使ったゲーム “消滅都市” の開発事例Cocos2d-x 3.0を使ったゲーム “消滅都市” の開発事例
Cocos2d-x 3.0を使ったゲーム “消滅都市” の開発事例
 
20171028_66842_Emacs実践入門_出版記念イベント_以前Emacs使いだったVim使いがEmacsのリハビリしている様子(回想多め)
20171028_66842_Emacs実践入門_出版記念イベント_以前Emacs使いだったVim使いがEmacsのリハビリしている様子(回想多め)20171028_66842_Emacs実践入門_出版記念イベント_以前Emacs使いだったVim使いがEmacsのリハビリしている様子(回想多め)
20171028_66842_Emacs実践入門_出版記念イベント_以前Emacs使いだったVim使いがEmacsのリハビリしている様子(回想多め)
 

Similar to 怖くないブランチ開発外部公開用

はんなりPython #45
はんなりPython #45はんなりPython #45
はんなりPython #45hiroya akita
 
ALMツールたべくらべ
ALMツールたべくらべALMツールたべくらべ
ALMツールたべくらべKaoru NAKAMURA
 
クラウドワークスを使ったバーチャル開発術(セミナー資料)
クラウドワークスを使ったバーチャル開発術(セミナー資料)クラウドワークスを使ったバーチャル開発術(セミナー資料)
クラウドワークスを使ったバーチャル開発術(セミナー資料)Innova Inc.
 
クラウドワークスを使ったバーチャル開発術
クラウドワークスを使ったバーチャル開発術クラウドワークスを使ったバーチャル開発術
クラウドワークスを使ったバーチャル開発術Kimiya Sato
 
「クラウド移行をめぐるウソ・ホント」 オンプレのVMwareからの切替は大変?P2V2Cの具体的な事例を紹介
「クラウド移行をめぐるウソ・ホント」 オンプレのVMwareからの切替は大変?P2V2Cの具体的な事例を紹介「クラウド移行をめぐるウソ・ホント」 オンプレのVMwareからの切替は大変?P2V2Cの具体的な事例を紹介
「クラウド移行をめぐるウソ・ホント」 オンプレのVMwareからの切替は大変?P2V2Cの具体的な事例を紹介富士通クラウドテクノロジーズ株式会社
 
リクルートにおけるPaaS活用事例
リクルートにおけるPaaS活用事例リクルートにおけるPaaS活用事例
リクルートにおけるPaaS活用事例Recruit Technologies
 
repositoryパターンを維持しながら n+1問題を起こさないようにする方法論
repositoryパターンを維持しながら n+1問題を起こさないようにする方法論repositoryパターンを維持しながら n+1問題を起こさないようにする方法論
repositoryパターンを維持しながら n+1問題を起こさないようにする方法論智也 鈴木
 
CIサーバを制圧せよ! - プロジェクトメトリクスと自動化技術の活用よる混乱の収拾と「最強」の組織の育成
CIサーバを制圧せよ! - プロジェクトメトリクスと自動化技術の活用よる混乱の収拾と「最強」の組織の育成CIサーバを制圧せよ! - プロジェクトメトリクスと自動化技術の活用よる混乱の収拾と「最強」の組織の育成
CIサーバを制圧せよ! - プロジェクトメトリクスと自動化技術の活用よる混乱の収拾と「最強」の組織の育成Rakuten Group, Inc.
 
WeDX Flow Hands-on
WeDX Flow Hands-onWeDX Flow Hands-on
WeDX Flow Hands-onJingun Jung
 
OSC Hiroshima 2013
OSC Hiroshima 2013OSC Hiroshima 2013
OSC Hiroshima 2013Yuya Adachi
 
ToolChainを使った次世代DevOps環境の作り方
ToolChainを使った次世代DevOps環境の作り方ToolChainを使った次世代DevOps環境の作り方
ToolChainを使った次世代DevOps環境の作り方Harada Kazuki
 
【HinemosWorld2015】B1-5_【入門】Hinemosではじめるクラウド運用
【HinemosWorld2015】B1-5_【入門】Hinemosではじめるクラウド運用【HinemosWorld2015】B1-5_【入門】Hinemosではじめるクラウド運用
【HinemosWorld2015】B1-5_【入門】Hinemosではじめるクラウド運用Hinemos
 
.NET 7期待の新機能
.NET 7期待の新機能.NET 7期待の新機能
.NET 7期待の新機能TomomitsuKusaba
 
【de:code 2020】 二兎追う者は二兎を得る!クラウド VDI で利便性とセキュリティのどちらも手に入れる!
【de:code 2020】 二兎追う者は二兎を得る!クラウド VDI で利便性とセキュリティのどちらも手に入れる!【de:code 2020】 二兎追う者は二兎を得る!クラウド VDI で利便性とセキュリティのどちらも手に入れる!
【de:code 2020】 二兎追う者は二兎を得る!クラウド VDI で利便性とセキュリティのどちらも手に入れる!日本マイクロソフト株式会社
 
Nitrous.IOを触ってみた~web IDE(クラウドIDE)について~
Nitrous.IOを触ってみた~web IDE(クラウドIDE)について~Nitrous.IOを触ってみた~web IDE(クラウドIDE)について~
Nitrous.IOを触ってみた~web IDE(クラウドIDE)について~Shin O
 
.NET 7におけるBlazorの新機能
.NET 7におけるBlazorの新機能.NET 7におけるBlazorの新機能
.NET 7におけるBlazorの新機能TomomitsuKusaba
 
2021/03/19 パブリッククラウドを活かす運用プロセス自動化
2021/03/19 パブリッククラウドを活かす運用プロセス自動化2021/03/19 パブリッククラウドを活かす運用プロセス自動化
2021/03/19 パブリッククラウドを活かす運用プロセス自動化Issei Hiraoka
 
D1-2-OS2_オンプレミスのVMワークロードをGCPへ移行する
D1-2-OS2_オンプレミスのVMワークロードをGCPへ移行するD1-2-OS2_オンプレミスのVMワークロードをGCPへ移行する
D1-2-OS2_オンプレミスのVMワークロードをGCPへ移行するHideaki Tokida
 
WVD運用に欠かせない5つのポイント
WVD運用に欠かせない5つのポイントWVD運用に欠かせない5つのポイント
WVD運用に欠かせない5つのポイントTsukasa Kato
 

Similar to 怖くないブランチ開発外部公開用 (20)

はんなりPython #45
はんなりPython #45はんなりPython #45
はんなりPython #45
 
ALMツールたべくらべ
ALMツールたべくらべALMツールたべくらべ
ALMツールたべくらべ
 
クラウドワークスを使ったバーチャル開発術(セミナー資料)
クラウドワークスを使ったバーチャル開発術(セミナー資料)クラウドワークスを使ったバーチャル開発術(セミナー資料)
クラウドワークスを使ったバーチャル開発術(セミナー資料)
 
クラウドワークスを使ったバーチャル開発術
クラウドワークスを使ったバーチャル開発術クラウドワークスを使ったバーチャル開発術
クラウドワークスを使ったバーチャル開発術
 
「クラウド移行をめぐるウソ・ホント」 オンプレのVMwareからの切替は大変?P2V2Cの具体的な事例を紹介
「クラウド移行をめぐるウソ・ホント」 オンプレのVMwareからの切替は大変?P2V2Cの具体的な事例を紹介「クラウド移行をめぐるウソ・ホント」 オンプレのVMwareからの切替は大変?P2V2Cの具体的な事例を紹介
「クラウド移行をめぐるウソ・ホント」 オンプレのVMwareからの切替は大変?P2V2Cの具体的な事例を紹介
 
FJcloud-Vの無料トライアルで雑にWordPressを入れてみた(リベンジ)
FJcloud-Vの無料トライアルで雑にWordPressを入れてみた(リベンジ)FJcloud-Vの無料トライアルで雑にWordPressを入れてみた(リベンジ)
FJcloud-Vの無料トライアルで雑にWordPressを入れてみた(リベンジ)
 
リクルートにおけるPaaS活用事例
リクルートにおけるPaaS活用事例リクルートにおけるPaaS活用事例
リクルートにおけるPaaS活用事例
 
repositoryパターンを維持しながら n+1問題を起こさないようにする方法論
repositoryパターンを維持しながら n+1問題を起こさないようにする方法論repositoryパターンを維持しながら n+1問題を起こさないようにする方法論
repositoryパターンを維持しながら n+1問題を起こさないようにする方法論
 
CIサーバを制圧せよ! - プロジェクトメトリクスと自動化技術の活用よる混乱の収拾と「最強」の組織の育成
CIサーバを制圧せよ! - プロジェクトメトリクスと自動化技術の活用よる混乱の収拾と「最強」の組織の育成CIサーバを制圧せよ! - プロジェクトメトリクスと自動化技術の活用よる混乱の収拾と「最強」の組織の育成
CIサーバを制圧せよ! - プロジェクトメトリクスと自動化技術の活用よる混乱の収拾と「最強」の組織の育成
 
WeDX Flow Hands-on
WeDX Flow Hands-onWeDX Flow Hands-on
WeDX Flow Hands-on
 
OSC Hiroshima 2013
OSC Hiroshima 2013OSC Hiroshima 2013
OSC Hiroshima 2013
 
ToolChainを使った次世代DevOps環境の作り方
ToolChainを使った次世代DevOps環境の作り方ToolChainを使った次世代DevOps環境の作り方
ToolChainを使った次世代DevOps環境の作り方
 
【HinemosWorld2015】B1-5_【入門】Hinemosではじめるクラウド運用
【HinemosWorld2015】B1-5_【入門】Hinemosではじめるクラウド運用【HinemosWorld2015】B1-5_【入門】Hinemosではじめるクラウド運用
【HinemosWorld2015】B1-5_【入門】Hinemosではじめるクラウド運用
 
.NET 7期待の新機能
.NET 7期待の新機能.NET 7期待の新機能
.NET 7期待の新機能
 
【de:code 2020】 二兎追う者は二兎を得る!クラウド VDI で利便性とセキュリティのどちらも手に入れる!
【de:code 2020】 二兎追う者は二兎を得る!クラウド VDI で利便性とセキュリティのどちらも手に入れる!【de:code 2020】 二兎追う者は二兎を得る!クラウド VDI で利便性とセキュリティのどちらも手に入れる!
【de:code 2020】 二兎追う者は二兎を得る!クラウド VDI で利便性とセキュリティのどちらも手に入れる!
 
Nitrous.IOを触ってみた~web IDE(クラウドIDE)について~
Nitrous.IOを触ってみた~web IDE(クラウドIDE)について~Nitrous.IOを触ってみた~web IDE(クラウドIDE)について~
Nitrous.IOを触ってみた~web IDE(クラウドIDE)について~
 
.NET 7におけるBlazorの新機能
.NET 7におけるBlazorの新機能.NET 7におけるBlazorの新機能
.NET 7におけるBlazorの新機能
 
2021/03/19 パブリッククラウドを活かす運用プロセス自動化
2021/03/19 パブリッククラウドを活かす運用プロセス自動化2021/03/19 パブリッククラウドを活かす運用プロセス自動化
2021/03/19 パブリッククラウドを活かす運用プロセス自動化
 
D1-2-OS2_オンプレミスのVMワークロードをGCPへ移行する
D1-2-OS2_オンプレミスのVMワークロードをGCPへ移行するD1-2-OS2_オンプレミスのVMワークロードをGCPへ移行する
D1-2-OS2_オンプレミスのVMワークロードをGCPへ移行する
 
WVD運用に欠かせない5つのポイント
WVD運用に欠かせない5つのポイントWVD運用に欠かせない5つのポイント
WVD運用に欠かせない5つのポイント
 

More from CROOZ, inc.

CROOZ SHOPLIST株式会社 エンジニア向け会社説明資料
CROOZ SHOPLIST株式会社 エンジニア向け会社説明資料CROOZ SHOPLIST株式会社 エンジニア向け会社説明資料
CROOZ SHOPLIST株式会社 エンジニア向け会社説明資料CROOZ, inc.
 
【CROOZ】新卒会社説明資料
【CROOZ】新卒会社説明資料【CROOZ】新卒会社説明資料
【CROOZ】新卒会社説明資料CROOZ, inc.
 
【CROOZ】新卒採用_会社説明資料
【CROOZ】新卒採用_会社説明資料【CROOZ】新卒採用_会社説明資料
【CROOZ】新卒採用_会社説明資料CROOZ, inc.
 
モバイルゲームの全世界オンライン対戦を実現する方法を考察する
モバイルゲームの全世界オンライン対戦を実現する方法を考察するモバイルゲームの全世界オンライン対戦を実現する方法を考察する
モバイルゲームの全世界オンライン対戦を実現する方法を考察するCROOZ, inc.
 
第7回テックヒルズ『Game Engines!!~どのゲームエンジンを選ぶ?~』資料
第7回テックヒルズ『Game Engines!!~どのゲームエンジンを選ぶ?~』資料第7回テックヒルズ『Game Engines!!~どのゲームエンジンを選ぶ?~』資料
第7回テックヒルズ『Game Engines!!~どのゲームエンジンを選ぶ?~』資料CROOZ, inc.
 
Mongo db勉強会の補足
Mongo db勉強会の補足Mongo db勉強会の補足
Mongo db勉強会の補足CROOZ, inc.
 
Mongo dbを知ろう
Mongo dbを知ろうMongo dbを知ろう
Mongo dbを知ろうCROOZ, inc.
 
リソースディレクトリの管理
リソースディレクトリの管理リソースディレクトリの管理
リソースディレクトリの管理CROOZ, inc.
 
Piwikを用いたアクセス解析外部公開用
Piwikを用いたアクセス解析外部公開用Piwikを用いたアクセス解析外部公開用
Piwikを用いたアクセス解析外部公開用CROOZ, inc.
 
MySQL Index勉強会外部公開用
MySQL Index勉強会外部公開用MySQL Index勉強会外部公開用
MySQL Index勉強会外部公開用CROOZ, inc.
 
MySQL勉強会 インデックス編.2013 08-02
MySQL勉強会 インデックス編.2013 08-02MySQL勉強会 インデックス編.2013 08-02
MySQL勉強会 インデックス編.2013 08-02CROOZ, inc.
 
MySQL勉強会 リプリケーション編.2013 08-09
MySQL勉強会 リプリケーション編.2013 08-09MySQL勉強会 リプリケーション編.2013 08-09
MySQL勉強会 リプリケーション編.2013 08-09CROOZ, inc.
 

More from CROOZ, inc. (12)

CROOZ SHOPLIST株式会社 エンジニア向け会社説明資料
CROOZ SHOPLIST株式会社 エンジニア向け会社説明資料CROOZ SHOPLIST株式会社 エンジニア向け会社説明資料
CROOZ SHOPLIST株式会社 エンジニア向け会社説明資料
 
【CROOZ】新卒会社説明資料
【CROOZ】新卒会社説明資料【CROOZ】新卒会社説明資料
【CROOZ】新卒会社説明資料
 
【CROOZ】新卒採用_会社説明資料
【CROOZ】新卒採用_会社説明資料【CROOZ】新卒採用_会社説明資料
【CROOZ】新卒採用_会社説明資料
 
モバイルゲームの全世界オンライン対戦を実現する方法を考察する
モバイルゲームの全世界オンライン対戦を実現する方法を考察するモバイルゲームの全世界オンライン対戦を実現する方法を考察する
モバイルゲームの全世界オンライン対戦を実現する方法を考察する
 
第7回テックヒルズ『Game Engines!!~どのゲームエンジンを選ぶ?~』資料
第7回テックヒルズ『Game Engines!!~どのゲームエンジンを選ぶ?~』資料第7回テックヒルズ『Game Engines!!~どのゲームエンジンを選ぶ?~』資料
第7回テックヒルズ『Game Engines!!~どのゲームエンジンを選ぶ?~』資料
 
Mongo db勉強会の補足
Mongo db勉強会の補足Mongo db勉強会の補足
Mongo db勉強会の補足
 
Mongo dbを知ろう
Mongo dbを知ろうMongo dbを知ろう
Mongo dbを知ろう
 
リソースディレクトリの管理
リソースディレクトリの管理リソースディレクトリの管理
リソースディレクトリの管理
 
Piwikを用いたアクセス解析外部公開用
Piwikを用いたアクセス解析外部公開用Piwikを用いたアクセス解析外部公開用
Piwikを用いたアクセス解析外部公開用
 
MySQL Index勉強会外部公開用
MySQL Index勉強会外部公開用MySQL Index勉強会外部公開用
MySQL Index勉強会外部公開用
 
MySQL勉強会 インデックス編.2013 08-02
MySQL勉強会 インデックス編.2013 08-02MySQL勉強会 インデックス編.2013 08-02
MySQL勉強会 インデックス編.2013 08-02
 
MySQL勉強会 リプリケーション編.2013 08-09
MySQL勉強会 リプリケーション編.2013 08-09MySQL勉強会 リプリケーション編.2013 08-09
MySQL勉強会 リプリケーション編.2013 08-09
 

Recently uploaded

TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 

Recently uploaded (8)

TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 

怖くないブランチ開発外部公開用