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
今年学んだ便利ツール_便利技
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
Swift Macroでメソッドの実行時間を計測できるようにしてみた
ryunakayama
1
110
Appleの審査担当の方とお話ししてみた!
ryunakayama
0
230
大公開!iOS開発の悩みトップ5 〜iOSDC Japan 2024〜
ryunakayama
0
270
Translation API について 〜WWDC24〜
ryunakayama
0
270
効率化に挑戦してみたらモバイル開発が少し快適になった話
ryunakayama
0
1.7k
新卒1年目がプロジェクトを進めるときにコケたポイント
ryunakayama
1
1.8k
期限が近づいてきた!Privacy Manifests対応
ryunakayama
5
11k
新卒iOSエンジニアとしてやってきたこと
ryunakayama
0
1.8k
git worktreeを使って複数ブランチを扱いやすくする
ryunakayama
0
3.1k
Other Decks in Programming
See All in Programming
SwiftUI Viewの責務分離
elmetal
PRO
0
150
sappoRo.R #12 初心者セッション
kosugitti
0
230
Amazon Q Developer Proで効率化するAPI開発入門
seike460
PRO
0
110
負債になりにくいCSSをデザイナとつくるには?
fsubal
9
2.3k
Grafana Cloudとソラカメ
devoc
0
140
Writing documentation can be fun with plugin system
okuramasafumi
0
120
時計仕掛けのCompose
mkeeda
1
280
Flutter × Firebase Genkit で加速する生成 AI アプリ開発
coborinai
0
150
Ruby on cygwin 2025-02
fd0
0
140
GitHub Actions × RAGでコードレビューの検証の結果
sho_000
0
240
Bedrock Agentsレスポンス解析によるAgentのOps
licux
2
720
第3回 Snowflake 中部ユーザ会- dbt × Snowflake ハンズオン
hoto17296
4
360
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
137
6.8k
Producing Creativity
orderedlist
PRO
343
39k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
Six Lessons from altMBA
skipperchong
27
3.6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Writing Fast Ruby
sferik
628
61k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
10
1.3k
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の操作で • 「それってなんてツールですか?」 • 「今の操作ってどうやったんですか?」 といった感じで、予期せぬ学びが生まれたな〜と思いました
来年も「それ、なんですか?」をたくさんやります
働くをもっと楽しく、創造的に