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
git勉強会(トラブルシューティングについて考えよう)
Search
EngineerCafe
February 03, 2024
0
250
git勉強会(トラブルシューティングについて考えよう)
EngineerCafe
February 03, 2024
Tweet
Share
More Decks by EngineerCafe
See All by EngineerCafe
エンジニアカフェ台湾ツアー2025
engineercafe
0
3
台湾視察報告レポート_2024
engineercafe
1
89
インド・バンガロール視察報告会
engineercafe
0
95
イベントレポート_Hacktivation 続:生成AI時代におけるブロックチェーンの可能性
engineercafe
0
74
Docker はじめの一歩 #1 Dockerコンテナを動かしてみよう
engineercafe
0
69
git勉強会 (基本的なコマンドを覚えよう)
engineercafe
0
110
エンジニアのための論文ゆる輪読会 #1【 #ゆるりん 】
engineercafe
0
140
Unityの環境構築
engineercafe
0
77
git勉強会(ブランチを操作しよう)
engineercafe
0
310
Featured
See All Featured
Context Engineering - Making Every Token Count
addyosmani
1
23
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
How to Think Like a Performance Engineer
csswizardry
26
1.9k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
Why Our Code Smells
bkeepers
PRO
339
57k
The World Runs on Bad Software
bkeepers
PRO
70
11k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Rails Girls Zürich Keynote
gr2m
95
14k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
580
YesSQL, Process and Tooling at Scale
rocio
173
14k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
Transcript
git勉強会 (トラブルシューティングについて考えよう) 2024年2月4日(日)10時~ 渕上 恵士朗
自己紹介 ・名前:渕上 恵士朗(ふちがみ けいしろう) ・出身:福岡大学商学部 ・仕事:某銀行でアプリ開発(バックエンド) エンジニアカフェスタッフとしてたまに勤務 ・技術:vb.net、SQLServer、IIS(windowsアプリ) 最近kotlin(spring boot)でAPI開発 AWS関連作業もやり始めたり ・業界:ホテル基幹システム、販売管理システム、
バンキングアプリ
イベントの目的 ・gitの初歩から実務的な運用、コマンドまで理解を深める (ステップ別に複数回のイベント実施を企画しています!!) ・よりよいgitの運用方法を皆さんで議論したい ・主催者が転職先でgitを利用するので、使い方を思い出したい
何となくのカリキュラム 1回目:gitをインストールしよう(開催済) 2回目:基本的なコマンドを覚えよう(開催済) 3回目:ブランチを操作しよう(開催済) 4回目:トラブルシューティングについて考えよう(本日開催)
今回の目標 ・競合(conflict)発生時の対応 ・前のコミットに戻りたい(revert) ・前のコミットを消したい(reset) ・コミットをきれいにしたい(reset, push -f) ・特定のコミットのみマージしたい(cherry-pick) ・ブランチのみ切り替えたい(switch) ・特定のファイルやディレクトリはgitで管理しない(ignoreファイル)
コンフリクトとは? ・同じブランチから派生している複数のブランチで同じ個所を編集した際に発生。 どちらの修正が正しいか判断ができないので、人間が目で見て判断してあげる 必要がある。 https://www.engilaboo.com/git-conflict/
前のコミットに戻る(revert) ・取り消したいコミットを消したコミットを新しく作成する https://backlog.com/ja/git-tutorial/stepup/29/
前のコミットに戻る(reset) ・取り消したいコミットを消す(物理的) ・soft,mixed,hardがある(デフォルトはmixed) https://www.r-staffing.co.jp/engineer/entry/20191129_1
push済みのコミットを整理したい ・作業中にレビューを依頼するためにリモートにpushしてプルリクエストを作成。 その時はマージは行わず、全ての作業が完了したタイミングで再度pushを行っ た。このときに1つの修正に対して複数コミットができてしまう。 ・そのブランチは自分のみ作業しているとする ・git reset →git push -f(強制pushを行う)
特定のコミットのみマージしたい(cherry-pick) ・ブランチを切って作業していたが、急遽特定の変更のみ派生ブランチにマージ する必要が出てきた。 https://www.r-staffing.co.jp/engineer/entry/20200327_1
ブランチのみ切り替える(switch) ・checkoutはブランチ操作、ファイル操作も実行される ・2019年からブランチ操作のみ(switch)、ファイル操作のみ(resotre)が実装され た。 ・ファイルは上書きされたくないが、ブランチのみ切り替えたい場合に利用する。 https://hiro8blog.com/git-switch/
特定ファイルは管理しない ・どれだけ気を付けても不要なファイルをaddして気付かずpushまでしてしまうこ とはある。 ・ignoreファイルを作成することでトラッキング対象外にすることができる。 https://qiita.com/anqooqie/items/110957797b3d5280c44f