$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
今年学んだ便利ツール_便利技
Search
Ryu-nakayama
December 15, 2023
Programming
0
1.7k
今年学んだ便利ツール_便利技
2023/12/15のmobile.stmn#3登壇資料
Ryu-nakayama
December 15, 2023
Tweet
Share
More Decks by Ryu-nakayama
See All by Ryu-nakayama
「ジェン文字」使ってますか?
ryunakayama
0
31
Health Kit × Foundation Models でAIコーチを作ってみた
ryunakayama
0
320
iOSの画面の状態のアレコレを調査してみた
ryunakayama
0
51
作文ツール(Writing Tools)をアプリから制御する
ryunakayama
0
36
iOSアプリで測る!名古屋駅までの 方向と距離
ryunakayama
0
250
「ジェン文字」をアプリ内で使ってみよう
ryunakayama
0
130
SwiftDataと連携したWidgetを作ってみた
ryunakayama
1
150
Swift Macroでメソッドの実行時間を計測できるようにしてみた
ryunakayama
1
200
Appleの審査担当の方とお話ししてみた!
ryunakayama
0
310
Other Decks in Programming
See All in Programming
モデル駆動設計をやってみようワークショップ開催報告(Modeling Forum2025) / model driven design workshop report
haru860
0
280
AI時代を生き抜く 新卒エンジニアの生きる道
coconala_engineer
1
410
The Art of Re-Architecture - Droidcon India 2025
siddroid
0
120
AI 駆動開発ライフサイクル(AI-DLC):ソフトウェアエンジニアリングの再構築 / AI-DLC Introduction
kanamasa
11
3.5k
AI Agent Tool のためのバックエンドアーキテクチャを考える #encraft
izumin5210
3
850
Giselleで作るAI QAアシスタント 〜 Pull Requestレビューに継続的QAを
codenote
0
270
新卒エンジニアのプルリクエスト with AI駆動
fukunaga2025
0
230
perlをWebAssembly上で動かすと何が嬉しいの??? / Where does Perl-on-Wasm actually make sense?
mackee
0
120
令和最新版Android Studioで化石デバイス向けアプリを作る
arkw
0
440
AIエージェントの設計で注意するべきポイント6選
har1101
5
2k
Jetpack XR SDKから紐解くAndroid XR開発と技術選定のヒント / about-androidxr-and-jetpack-xr-sdk
drumath2237
1
180
ゆくKotlin くるRust
exoego
1
140
Featured
See All Featured
More Than Pixels: Becoming A User Experience Designer
marktimemedia
2
250
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.4k
Optimizing for Happiness
mojombo
379
70k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
25
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
680
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
Transcript
Chatwork株式会社 中山 龍 2023年12月15日 今年学んだ便利ツール/便利技
自己紹介 中山 龍 (なかやま りゅう) • Chatwork株式会社 ◦ iOSエンジニア ◦
2023年4月 新卒として入社 ◦ 社内最年少 (2002年6月生まれの21歳) • 愛知県在住 ◦ フルリモート勤務 ◦ 今のところ本イベントLT枠 皆勤賞 2 @ryu_develop
develop 開発する際のローカルのブランチ状況(例) 3 1 作業用 2 レビュー用 3 モブプロ用 4
最新の開発状況 動作確認で使用 チケット作業 で使用 手元でコードを 見たいときに使用 × チケット数
develop 開発する際のローカルのブランチ状況(例) 4 1 作業用 2 レビュー用 3 モブプロ用 4
最新の開発状況 動作確認で使用 チケット作業 で使用 手元でコードを 見たいときに使用 × チケット数 複数ブランチを扱っている
develop 開発する際のローカルのブランチ状況(例) 5 1 作業用 2 レビュー用 3 モブプロ用 4
最新の開発状況 動作確認で使用 チケット作業 で使用 手元でコードを 見たいときに使用 × チケット数 複数ブランチを扱っている 今から紹介する3つの合せ技で解決している ので、その方法を紹介します
便利ツール1: 『Fork』
Fork Fork: gitのクライアントアプリ 7 • コマンドを叩くことなくgitの操作ができる • GUIで表示でき、コードの変更箇所やブランチの状況などが確認しやすい • コンフリクトの解消もできる
• 部分を選択してステージしたり取り消したりもできる などなど、gitの操作がとても楽になる
Fork 複数ブランチのコミットをGUIで見れたり、コミットの情報も見やすい 8
Fork ポイント!タブとしてディレクトリ単位で開くことができる 9
Fork コミットするときも変更がある箇所を確認しやすい 10
Fork コンフリクトの解消もGUIで比較しながら行える 11
便利ツール2: 『iTerm2』
iTerm2 13 iTerm2: ターミナルアプリ 同期からのおすすめで使ってみた • ブランチ名が表示されていたり • 変更の有無が表示されたり •
コマンドに色がついたり • 過去に実行したコマンドを基に入力中のコマンドを推測してくれたり こちらの記事( Mac初心者に優しいターミナルにする( iTerm2/Oh My Zsh) )を参考に設定した
iTerm2 14 iTerm2: ターミナルアプリ Mac標準のターミナルよりも多機能で、コマンド弱々の自分のような人でもある補 完に助けてもらえるのが良い! (あと、コマンドラインがカラフルだったほうが少しテンション上がる) 【役立つシーン】 • ForkにはないようなGitコマンドを何度も実行する必要があるとき
• 自分がいるディレクトリは現在どのブランチなのかを知るとき
便利技: git-worktree
git-worktreeとは git-worktree: ディレクトリの移動でブランチを切り替えられる便利技 16
develop 開発する際のローカルのブランチ状況(例) 17 1 作業用 2 レビュー用 3 モブプロ用 4
最新の開発状況 動作確認で使用 チケット作業 で使用 手元でコードを 見たいときに使用 × チケット数 複数ブランチを扱っている
• stashしてブランチを切り替える • ブランチごとに新しくcloneする 複数ブランチを扱う場合 どうブランチを切り替えるか?
• stashしてブランチを切り替える • ブランチごとに新しくcloneする 複数ブランチを扱う場合 どうブランチを切り替えるか? git worktree
git worktreeのイメージ 1つのリポジトリに対して ブランチごとに作業ディレクトリ を作成するイメージ 20 リポジトリ ブランチ1 のワークツリー ブランチ2
のワークツリー ブランチごとに ディレクトリ作成
git worktreeで実現できること 21 git stashをして切り替える必要がなくなる 複数ヶ所で同じブランチをいじってしまうのを防げる 各ブランチが独立したディレクトリ(ワークツリー)として存在する → ディレクトリを移動するだけでブランチが切り替わる clone場合、同じブランチから複数cloneできてしまい、複数のディレクトリから同じブラ
ンチをいじってしまうことが発生する git worktreeなら同じブランチから複数のディレクトリを作成できない → 複数のディレクトリで同じブランチをいじってしまうのを防げる
git worktreeで実現できること git stashをして切り替える必要がなくなる 複数ヶ所で同じブランチをいじってしまうのを防げる 各ブランチが独立したディレクトリ(ワークツリー)として存在する → ディレクトリを移動するだけでブランチが切り替わる clone場合、同じブランチから複数cloneできてしまい、複数のディレクトリから同じブラ ンチをいじってしまうことが発生する
git worktreeなら同じブランチから複数のディレクトリを作成できない → 複数のディレクトリで同じブランチをいじってしまうのを防げる 複数ブランチを扱いやすい! 22
過去資料 23 過去にLTした資料もあるのでどうぞ 👀
3つを合わせて...
3つ合わせて... 1. iTermで過去に実行したgit-worktreeのコマンドを呼び出し、コマンド内の 「対象ブランチ」などの部分を少しだけ書き換えて実行する → 対象ブランチを扱うディレクトリが作成される 2. 扱いたいブランチと紐づいたディレクトリを、Forkでタブとして開く 3. Gitの操作を行いたいときには、Forkのタブを切り替える。それだけでGitの操
作をするブランチの切り替えが済む 25
最後に
便利ツールや便利技について紹介してきましたが... 社会人になって、新しい環境に入ってみて思った。 他人から学ぶことってめっちゃ多い 27 ペアプロ中に使ってるツールとか、Xcodeの操作で • 「それってなんてツールですか?」 • 「今の操作ってどうやったんですか?」 といった感じで、予期せぬ学びが生まれたな〜と思いました
来年も「それ、なんですか?」をたくさんやります
働くをもっと楽しく、創造的に