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恢复Force Push内容
Search
Mark24
July 29, 2019
Programming
72
0
Share
Git恢复Force Push内容
git高级技巧,恢复force push的内容
Mark24
July 29, 2019
More Decks by Mark24
See All by Mark24
DSL分享
mark24code
0
130
Rails初探
mark24code
0
47
Anti Hook
mark24code
0
79
Other Decks in Programming
See All in Programming
Hive Metastoreを通して学ぶIceberg REST Catalog ― 仕様から実装まで
okumin
0
310
OCRを使ってゲームのアイテムをデータ化する
kishikawakatsumi
0
120
誰も頼んでない機能を出荷した話
zekutax
0
150
DynamoDBには集計系のクエリがないけどなんとかしたい
musan
1
110
柔軟なPDFレイアウトエディタを支える型システム設計 — Discriminated UnionとConditional Typeの実践
minako__ph
4
1.2k
Transactional Change Stream Processing With Debezium and Apache Flink
gunnarmorling
1
140
開発体験を左右するライブラリの API 設計 - GraphQL スキーマ構築ライブラリから考える #tskaigi
izumin5210
2
1.4k
今さら聞けないCancellationToken
htkym
0
210
[KCD Czech] eBPF Meets the GPU: Future of AI Infra Observability
doniacld
0
130
RTSPクライアントを自作してみた話
simotin13
0
390
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
410
Inside Stream API
skrb
1
440
Featured
See All Featured
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
470
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Odyssey Design
rkendrick25
PRO
2
650
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
Evolving SEO for Evolving Search Engines
ryanjones
0
210
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
160
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.5k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
540
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.5k
WCS-LA-2024
lcolladotor
0
610
Transcript
Git 远程恢复被force-push的队友的commit 2019.07.29 @mark
情景⼀一
情景⼀一:彼此没有沟通,A、B各⾃自依次force push的了了代码。 远程仓库显示了了最后的B的提交。 请问如何,恢复A的部分commit? 开发A 开发B 远程仓库 19:00 pm force
push 19:50 pm force push
⽅方法⼀一 ⽤用户A解决
经过沟通,开发者A可以cherry-pick或者rebase,把⾃自⼰己的本地 提交,和远程分⽀支,进⾏行行处理理,再进⾏行行后续的追加提交。
⽅方法⼆二 中央仓库解决
远程机器器,git reflog ,使⽤用cherry-pick恢复。 实际上这个不不合理理。中⼼心节点,不不应该操作。 其实我不不太清楚,中央节点,有没有reflog,应该是有的 中央仓库解决
⽅方法三 ⽤用户B解决
1.本地reflog仅仅是⾃自⼰己的——⽆无法下载到远程的reflog。这条 路路不不通。 2.⽆无法QQ远程共享屏幕帮A操作,假设A还离职了了,还删除了了 远程仓库(Hard模式) B在本地⽆无记录的情况下如何恢复A的部分节点? B的Hard模式
Git-apply Git-am
1.中央仓库是有记录的。 2.查看想要找回的commit 3.下载patches⽂文件 4.本地使⽤用 git apply 针对单个⽂文件 5.本地使⽤用 git am
针对单⽂文件、⽬目录(批量量⽂文件) 6.区别am会⽣生成commit节点。这个就是我们想要的
问题解决 The End