SlideShare ist ein Scribd-Unternehmen logo
1 von 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の調子が悪いせいか、単体テストが不安定だったので

Weitere ähnliche Inhalte

Was ist angesagt?

クラウドコンピューティングでつくるビッグデータ解析のいまとこれから
クラウドコンピューティングでつくるビッグデータ解析のいまとこれからクラウドコンピューティングでつくるビッグデータ解析のいまとこれから
クラウドコンピューティングでつくるビッグデータ解析のいまとこれから
Shohei Kobayashi
 

Was ist angesagt? (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
 

Ähnlich wie Gitlab meetup prm説明資料_2017_1117

@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門
Takashi Imagire
 
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
Takashi Uemura
 

Ähnlich wie 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
 

Mehr von Tetsuya Sato

niconicogakkai_8th_TetsuyaSato
niconicogakkai_8th_TetsuyaSatoniconicogakkai_8th_TetsuyaSato
niconicogakkai_8th_TetsuyaSato
Tetsuya Sato
 

Mehr von 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