SlideShare une entreprise Scribd logo
1  sur  8
Git操作自動化クライアント
を作った話
株)デザインルール
佐藤哲也
つくったもの
• github-flowのための下記の操作を自動化
origin/master:
local/topic:
1)自動でclone
2)Topicを生成 3)変更を検知して
自動コミット
origin/topic:
4) 一定の変化がない場合に
自動でpush
5)PullReq/MergeReqを作成
6)設定により自動マージ
つくったもの(その2)
• Office/PDFのファイルをgit管理したい
• つまり、xlsx/docx/pptx/pdfのdiffを見ながら作業したい
• ローカルでdiff確認用のテキストファイルを作成
想定する利用シーン
• 作業の結果をPullReq/MergeReqで欲しい
• しかし、作業者がgitを使えないケースが多い
• マイクロ(クラウド)タスキングでのデータ収集
• Webアプリのデザインの組み込み
• 作業者がいつ、どのぐらい作業しているのか把握したい
• コミット履歴を共有できると便利
• 大学の研究室でゼミのレジュメを共有
メモランダム
• メリット
• 原本の同一性保持
• 変更内容を細かくレビューできる
• 制約・できないこと・課題など
• 一人=1Topic=1PullReq/MergeReq
• コンフリクトが起きたら別名ファイルを生成するしかない
• 大きいファイルへの対応(LFS)
将来的に
• 知的生産のロガーとして使えたりしないだろうか?
• RPA(Robot Process Automation)の基盤としてのgitの活用
• git-commitの履歴を蓄積して、学習データにすれば単純な作業は自動化するんじゃ
ないだろうか?
• リポジトリマイニングとの親和性
• PullReq/MergeReqベースで作業結果を提案される世界
• 論文の英語校閲
• クラウドソーシング
利用している技術
• Electron
• windowsとMacでCompatibleで便利
• git-credential-manager
• 公開鍵認証を使わないため、レポジトリへのhttpsを利用
• ユーザアカウントはgit-credenetial機構に依存
• windowsのgit-credentil-managerは動作が微妙、平文保存するしかないかも
• gitlab/github api
• 認証からのtoken取得
• MergeReq/PullReqの作成のためにAPI コールができる
• bitbucketはAPI対応がなさそう?で非対応
開発におけるgitlab.comの利用
• gitlab-ci-runnerの利用による実機テスト
• プライベートなリボジトリをMac環境でビルドする手段として重宝
• Electronアプリのため、OS固有環境を踏まえたテスト必要
• コードサイニングやネイティブモジュールのビルド
• 当初はwin/macの両方で実施
• 途中からwin環境不安定のためAppveyorに移行
• windowsでの実機テストを断念した理由
• spectronがwindowsで起動できず起動できなかった(electron-mochaから起動していたから)
• ssdの調子が悪いせいか、単体テストが不安定だったので

Contenu connexe

Tendances

RubyでGitHubをちょっと便利にする
RubyでGitHubをちょっと便利にするRubyでGitHubをちょっと便利にする
RubyでGitHubをちょっと便利にするnomlab
 
20160523 Red Hat and Microsoft
20160523 Red Hat and Microsoft20160523 Red Hat and Microsoft
20160523 Red Hat and MicrosoftTakayoshi Tanaka
 
クラウドコンピューティングでつくるビッグデータ解析のいまとこれから
クラウドコンピューティングでつくるビッグデータ解析のいまとこれからクラウドコンピューティングでつくるビッグデータ解析のいまとこれから
クラウドコンピューティングでつくるビッグデータ解析のいまとこれからShohei Kobayashi
 
Heroku+MongoLabでダミーサーバー
Heroku+MongoLabでダミーサーバーHeroku+MongoLabでダミーサーバー
Heroku+MongoLabでダミーサーバーHironytic
 
Apache Airflow入門 (マーケティングデータ分析基盤技術勉強会)
Apache Airflow入門  (マーケティングデータ分析基盤技術勉強会)Apache Airflow入門  (マーケティングデータ分析基盤技術勉強会)
Apache Airflow入門 (マーケティングデータ分析基盤技術勉強会)Takeshi Mikami
 
Cloud functions for Firebase
Cloud functions for FirebaseCloud functions for Firebase
Cloud functions for FirebaseSENSY Inc
 
AWSで自作CGIをサーバレス実装してみた 〜その3
AWSで自作CGIをサーバレス実装してみた 〜その3AWSで自作CGIをサーバレス実装してみた 〜その3
AWSで自作CGIをサーバレス実装してみた 〜その3祐樹 夏目
 
KubeWeekly読書メモの紹介
KubeWeekly読書メモの紹介KubeWeekly読書メモの紹介
KubeWeekly読書メモの紹介ina job
 
try!swift必見5選
try!swift必見5選try!swift必見5選
try!swift必見5選Kenta Kudo
 

Tendances (11)

RubyでGitHubをちょっと便利にする
RubyでGitHubをちょっと便利にするRubyでGitHubをちょっと便利にする
RubyでGitHubをちょっと便利にする
 
20160523 Red Hat and Microsoft
20160523 Red Hat and Microsoft20160523 Red Hat and Microsoft
20160523 Red Hat and Microsoft
 
クラウドコンピューティングでつくるビッグデータ解析のいまとこれから
クラウドコンピューティングでつくるビッグデータ解析のいまとこれからクラウドコンピューティングでつくるビッグデータ解析のいまとこれから
クラウドコンピューティングでつくるビッグデータ解析のいまとこれから
 
Heroku+MongoLabでダミーサーバー
Heroku+MongoLabでダミーサーバーHeroku+MongoLabでダミーサーバー
Heroku+MongoLabでダミーサーバー
 
Apache Airflow入門 (マーケティングデータ分析基盤技術勉強会)
Apache Airflow入門  (マーケティングデータ分析基盤技術勉強会)Apache Airflow入門  (マーケティングデータ分析基盤技術勉強会)
Apache Airflow入門 (マーケティングデータ分析基盤技術勉強会)
 
Cloud functions for Firebase
Cloud functions for FirebaseCloud functions for Firebase
Cloud functions for Firebase
 
Dotnetconf2017
Dotnetconf2017Dotnetconf2017
Dotnetconf2017
 
AWSで自作CGIをサーバレス実装してみた 〜その3
AWSで自作CGIをサーバレス実装してみた 〜その3AWSで自作CGIをサーバレス実装してみた 〜その3
AWSで自作CGIをサーバレス実装してみた 〜その3
 
KubeWeekly読書メモの紹介
KubeWeekly読書メモの紹介KubeWeekly読書メモの紹介
KubeWeekly読書メモの紹介
 
try!swift必見5選
try!swift必見5選try!swift必見5選
try!swift必見5選
 
Katib
KatibKatib
Katib
 

Similaire à Gitlab meetup prm説明資料_2017_1117

@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門Takashi Imagire
 
筋肉によるGoコードジェネレーション
筋肉によるGoコードジェネレーション筋肉によるGoコードジェネレーション
筋肉によるGoコードジェネレーションlestrrat
 
GitHubで見つかるFileMaker関連ソフトウェア
GitHubで見つかるFileMaker関連ソフトウェアGitHubで見つかるFileMaker関連ソフトウェア
GitHubで見つかるFileMaker関連ソフトウェアAtsushi Matsuo
 
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力ThinReports
 
Confluence と DITA による Webマニュアル作成フロー
Confluence と DITA によるWebマニュアル作成フローConfluence と DITA によるWebマニュアル作成フロー
Confluence と DITA による Webマニュアル作成フローTakashi Yamaguchi
 
GitLab から GitHub + CircleCI に乗り換えてチーム運用を改善しつつある話
GitLab から GitHub + CircleCI に乗り換えてチーム運用を改善しつつある話GitLab から GitHub + CircleCI に乗り換えてチーム運用を改善しつつある話
GitLab から GitHub + CircleCI に乗り換えてチーム運用を改善しつつある話R S
 
GitHub最新情報キャッチアップ 2023年6月
GitHub最新情報キャッチアップ 2023年6月GitHub最新情報キャッチアップ 2023年6月
GitHub最新情報キャッチアップ 2023年6月Kazumi IWANAGA
 
gitを使って、レポジトリの一部抽出forkしてみました
gitを使って、レポジトリの一部抽出forkしてみましたgitを使って、レポジトリの一部抽出forkしてみました
gitを使って、レポジトリの一部抽出forkしてみましたTakako Miyagawa
 
今さら聞けない人のためのGit超入門 GitLab 13対応版
今さら聞けない人のためのGit超入門 GitLab 13対応版今さら聞けない人のためのGit超入門 GitLab 13対応版
今さら聞けない人のためのGit超入門 GitLab 13対応版VirtualTech Japan Inc./Begi.net Inc.
 
GMO プライベート DMP 開発で 取り組んできた DevOps と今後の展望
GMO プライベート DMP 開発で 取り組んできた DevOps と今後の展望GMO プライベート DMP 開発で 取り組んできた DevOps と今後の展望
GMO プライベート DMP 開発で 取り組んできた DevOps と今後の展望Tetsuo Yamabe
 
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜Takashi Uemura
 
Git & GitHub & kintone でウルトラハッピー!
Git & GitHub & kintone でウルトラハッピー!Git & GitHub & kintone でウルトラハッピー!
Git & GitHub & kintone でウルトラハッピー!ymmt
 
ロボットシステム学2015年第9回
ロボットシステム学2015年第9回ロボットシステム学2015年第9回
ロボットシステム学2015年第9回Ryuichi Ueda
 
日本androidの会 中国支部 29回勉強会 github
日本androidの会 中国支部 29回勉強会 github日本androidの会 中国支部 29回勉強会 github
日本androidの会 中国支部 29回勉強会 githubTomohiko Himura
 

Similaire à Gitlab meetup prm説明資料_2017_1117 (20)

@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門
 
Yapc2012資料
Yapc2012資料Yapc2012資料
Yapc2012資料
 
筋肉によるGoコードジェネレーション
筋肉によるGoコードジェネレーション筋肉によるGoコードジェネレーション
筋肉によるGoコードジェネレーション
 
GitHubで見つかるFileMaker関連ソフトウェア
GitHubで見つかるFileMaker関連ソフトウェアGitHubで見つかるFileMaker関連ソフトウェア
GitHubで見つかるFileMaker関連ソフトウェア
 
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
 
今さら聞けない人のためのGit超入門 OSC2018広島版
今さら聞けない人のためのGit超入門 OSC2018広島版今さら聞けない人のためのGit超入門 OSC2018広島版
今さら聞けない人のためのGit超入門 OSC2018広島版
 
Confluence と DITA による Webマニュアル作成フロー
Confluence と DITA によるWebマニュアル作成フローConfluence と DITA によるWebマニュアル作成フロー
Confluence と DITA による Webマニュアル作成フロー
 
GitLab から GitHub + CircleCI に乗り換えてチーム運用を改善しつつある話
GitLab から GitHub + CircleCI に乗り換えてチーム運用を改善しつつある話GitLab から GitHub + CircleCI に乗り換えてチーム運用を改善しつつある話
GitLab から GitHub + CircleCI に乗り換えてチーム運用を改善しつつある話
 
GitHub最新情報キャッチアップ 2023年6月
GitHub最新情報キャッチアップ 2023年6月GitHub最新情報キャッチアップ 2023年6月
GitHub最新情報キャッチアップ 2023年6月
 
gitを使って、レポジトリの一部抽出forkしてみました
gitを使って、レポジトリの一部抽出forkしてみましたgitを使って、レポジトリの一部抽出forkしてみました
gitを使って、レポジトリの一部抽出forkしてみました
 
今さら聞けない人のためのGit超入門 GitLab 13対応版
今さら聞けない人のためのGit超入門 GitLab 13対応版今さら聞けない人のためのGit超入門 GitLab 13対応版
今さら聞けない人のためのGit超入門 GitLab 13対応版
 
今さら聞けない人のためのGitLabの始め方 Ubuntu編
今さら聞けない人のためのGitLabの始め方 Ubuntu編今さら聞けない人のためのGitLabの始め方 Ubuntu編
今さら聞けない人のためのGitLabの始め方 Ubuntu編
 
GMO プライベート DMP 開発で 取り組んできた DevOps と今後の展望
GMO プライベート DMP 開発で 取り組んできた DevOps と今後の展望GMO プライベート DMP 開発で 取り組んできた DevOps と今後の展望
GMO プライベート DMP 開発で 取り組んできた DevOps と今後の展望
 
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
 
Git & GitHub & kintone でウルトラハッピー!
Git & GitHub & kintone でウルトラハッピー!Git & GitHub & kintone でウルトラハッピー!
Git & GitHub & kintone でウルトラハッピー!
 
ロボットシステム学2015年第9回
ロボットシステム学2015年第9回ロボットシステム学2015年第9回
ロボットシステム学2015年第9回
 
Git 20100724
Git 20100724Git 20100724
Git 20100724
 
HTML5最新動向
HTML5最新動向HTML5最新動向
HTML5最新動向
 
日本androidの会 中国支部 29回勉強会 github
日本androidの会 中国支部 29回勉強会 github日本androidの会 中国支部 29回勉強会 github
日本androidの会 中国支部 29回勉強会 github
 
今さら聞けない人のためのGit超入門 2020/12/19
今さら聞けない人のためのGit超入門 2020/12/19今さら聞けない人のためのGit超入門 2020/12/19
今さら聞けない人のためのGit超入門 2020/12/19
 

Plus de Tetsuya Sato

AIは政治を変えるか_AI社会論発表_20170725
AIは政治を変えるか_AI社会論発表_20170725AIは政治を変えるか_AI社会論発表_20170725
AIは政治を変えるか_AI社会論発表_20170725Tetsuya Sato
 
【模擬選挙×マニフェストスイッチ】開票結果について 150829
【模擬選挙×マニフェストスイッチ】開票結果について 150829【模擬選挙×マニフェストスイッチ】開票結果について 150829
【模擬選挙×マニフェストスイッチ】開票結果について 150829Tetsuya Sato
 
【模擬選挙×マニフェストスイッチ】開票結果について
【模擬選挙×マニフェストスイッチ】開票結果について【模擬選挙×マニフェストスイッチ】開票結果について
【模擬選挙×マニフェストスイッチ】開票結果についてTetsuya Sato
 
【埼玉賢人 第3回付録】埼玉県における地方創生
【埼玉賢人 第3回付録】埼玉県における地方創生【埼玉賢人 第3回付録】埼玉県における地方創生
【埼玉賢人 第3回付録】埼玉県における地方創生Tetsuya Sato
 
【埼玉賢人 第2回付録】埼玉県の安心と安全
【埼玉賢人 第2回付録】埼玉県の安心と安全【埼玉賢人 第2回付録】埼玉県の安心と安全
【埼玉賢人 第2回付録】埼玉県の安心と安全Tetsuya Sato
 
【クラーク高校】模擬選挙授業用資料
【クラーク高校】模擬選挙授業用資料【クラーク高校】模擬選挙授業用資料
【クラーク高校】模擬選挙授業用資料Tetsuya Sato
 
【模擬投票×マニフェストスイッチ】概要説明資料
【模擬投票×マニフェストスイッチ】概要説明資料【模擬投票×マニフェストスイッチ】概要説明資料
【模擬投票×マニフェストスイッチ】概要説明資料Tetsuya Sato
 
【埼玉賢人 第1回付録】人口動態から考える埼玉県の未来
【埼玉賢人 第1回付録】人口動態から考える埼玉県の未来【埼玉賢人 第1回付録】人口動態から考える埼玉県の未来
【埼玉賢人 第1回付録】人口動態から考える埼玉県の未来Tetsuya Sato
 
オープンデータ・オークションの提案
オープンデータ・オークションの提案オープンデータ・オークションの提案
オープンデータ・オークションの提案Tetsuya Sato
 
niconicogakkai_8th_TetsuyaSato
niconicogakkai_8th_TetsuyaSatoniconicogakkai_8th_TetsuyaSato
niconicogakkai_8th_TetsuyaSatoTetsuya Sato
 

Plus de Tetsuya Sato (10)

AIは政治を変えるか_AI社会論発表_20170725
AIは政治を変えるか_AI社会論発表_20170725AIは政治を変えるか_AI社会論発表_20170725
AIは政治を変えるか_AI社会論発表_20170725
 
【模擬選挙×マニフェストスイッチ】開票結果について 150829
【模擬選挙×マニフェストスイッチ】開票結果について 150829【模擬選挙×マニフェストスイッチ】開票結果について 150829
【模擬選挙×マニフェストスイッチ】開票結果について 150829
 
【模擬選挙×マニフェストスイッチ】開票結果について
【模擬選挙×マニフェストスイッチ】開票結果について【模擬選挙×マニフェストスイッチ】開票結果について
【模擬選挙×マニフェストスイッチ】開票結果について
 
【埼玉賢人 第3回付録】埼玉県における地方創生
【埼玉賢人 第3回付録】埼玉県における地方創生【埼玉賢人 第3回付録】埼玉県における地方創生
【埼玉賢人 第3回付録】埼玉県における地方創生
 
【埼玉賢人 第2回付録】埼玉県の安心と安全
【埼玉賢人 第2回付録】埼玉県の安心と安全【埼玉賢人 第2回付録】埼玉県の安心と安全
【埼玉賢人 第2回付録】埼玉県の安心と安全
 
【クラーク高校】模擬選挙授業用資料
【クラーク高校】模擬選挙授業用資料【クラーク高校】模擬選挙授業用資料
【クラーク高校】模擬選挙授業用資料
 
【模擬投票×マニフェストスイッチ】概要説明資料
【模擬投票×マニフェストスイッチ】概要説明資料【模擬投票×マニフェストスイッチ】概要説明資料
【模擬投票×マニフェストスイッチ】概要説明資料
 
【埼玉賢人 第1回付録】人口動態から考える埼玉県の未来
【埼玉賢人 第1回付録】人口動態から考える埼玉県の未来【埼玉賢人 第1回付録】人口動態から考える埼玉県の未来
【埼玉賢人 第1回付録】人口動態から考える埼玉県の未来
 
オープンデータ・オークションの提案
オープンデータ・オークションの提案オープンデータ・オークションの提案
オープンデータ・オークションの提案
 
niconicogakkai_8th_TetsuyaSato
niconicogakkai_8th_TetsuyaSatoniconicogakkai_8th_TetsuyaSato
niconicogakkai_8th_TetsuyaSato
 

Gitlab meetup prm説明資料_2017_1117