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
Unity の meta ファイルの過不足の merge を防止しよう / How to pr...
Search
Kuniwak
PRO
March 24, 2021
Programming
3.8k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Unity の meta ファイルの過不足の merge を防止しよう / How to prevent missing or dangling meta files
Gotanda.unity #17 sponsored by 株式会社キッズスター 2021/3/24
https://meetup.unity3d.jp/jp/events/1279
Kuniwak
PRO
March 24, 2021
More Decks by Kuniwak
See All by Kuniwak
AIベース静的検査器の偽陽性率を抑える工夫3選
orgachem
PRO
8
2.8k
仕様漏れ実装漏れをなくすトレーサビリティAI基盤のご紹介
orgachem
PRO
16
11k
要求定義・仕様記述・設計・検証の手引き - 理論から学ぶ明確で統一された成果物定義
orgachem
PRO
39
23k
DeNA での思い出 / Memories at DeNA
orgachem
PRO
8
3.7k
それ CLI フレームワークがなくてもできるよ / Building CLI Tools Without Frameworks
orgachem
PRO
18
4.8k
状態遷移図を書こう / Sequence Chart vs State Diagram
orgachem
PRO
4
800
テストケースの名前はどうつけるべきか?
orgachem
PRO
2
960
欠陥を早期に発見するための Software Engineer in Test とその重要性 / What is Software Engineer in Test and How they works
orgachem
PRO
22
5k
住宅を WebXR で評価しよう / Evaluating My Home by WebXR
orgachem
PRO
0
250
Other Decks in Programming
See All in Programming
変わらないものが、変わるものを決める — 意図駆動開発 × イベントソーシング × イミュータブル | What Doesn't Change Decides What Can — IDD × Event Sourcing × Immutability
tomohisa
0
1.4k
Claude CodeとAgentCore Gatewayを繋ぐ際の認証認可 / Authentication and authorization when connecting Claude Code with AgentCore Gateway
har1101
1
250
freee が目指す データ マネジメント戦略 AI-Ready 時代を支える 攻めのガバナンスとは
freee
PRO
0
300
AI時代のPHPer生存戦略 ~「言語、もうなんでもよくない?」に本気で向き合う~
vivion
0
300
継続モナドとリアクティブプログラミング
yukikurage
3
690
Built Our Own Background Agent at LayerX
layerx
PRO
9
5k
5分で問診!Composer セキュリティ健康診断
codmoninc
0
910
Laravel Boostに学ぶ、AIにPHPを書かせる技術 〜OSSの実装から蒸留するエージェント制御の王道〜
kentaroutakeda
3
670
メールのエイリアス機能を履き違えない
isshinfunada
0
230
Detecting Compromised CI with eBPF and Cilium Tetragon
lizrice
0
160
進化を続けるGo toolsの現在地 / The Current State of Ever-Evolving Go Tools
hond0413
0
150
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
550
Featured
See All Featured
The agentic SEO stack - context over prompts
schlessera
0
860
Tell your own story through comics
letsgokoyo
1
1k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
240
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
Skip the Path - Find Your Career Trail
mkilby
1
180
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
360
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.3k
Amusing Abliteration
ianozsvald
1
240
The Limits of Empathy - UXLibs8
cassininazir
1
600
The Mindset for Success: Future Career Progression
greggifford
PRO
0
440
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
260
Transcript
6OJUZͷNFUBϑΝΠϧͷ աෆΛࢭ͠Α͏ Kuniwak - DeNA Co.,Ltd. 2021.03.24 Gotanda.unity #17
ؒͰ͍͑ͨ͜ͱ
6OJUZͰॏཁͳNFUBϑΝΠϧͷաෆΛ ετϨεͳ͘ݟ͚ͭΔπʔϧ͍͔͕Ͱ͔͢ 3 ͍͑ͨ͜ͱ
6OJUZͰॏཁͳNFUBϑΝΠϧͷաෆΛ ετϨεͳ͘ݟ͚ͭΔπʔϧ͍͔͕Ͱ͔͢ 4 ·ͣ͜ΕΛղઆ ͍͑ͨ͜ͱ
NFUBϑΝΠϧͱ
6 NFUBϑΝΠϧΞηοτͷϝλใ͕ه͞ΕͨϑΝΠϧ IUUQTEPDTVOJUZEDPN%PDVNFOUBUJPO.BOVBM"TTFU8PSLqPXIUNM fileFormatVersion: 2 guid: 96e963ca667b44… TextureImporter: internalIDToNameTa externalObjects:
{} serializedVersion: mipmaps: mipMapMode: 0 … ը૾ΞηοτΛ JNQPSU ରԠ͢ΔNFUBϑΝΠϧ͕ ࣗಈੜ͞ΕΔ 6OJUZͷΠϯεϖΫλ͔Β ͍͡ΕΔ TBNQMFQOH TBNQMFQOHNFUB
6OJUZͰॏཁͳNFUBϑΝΠϧͷաෆΛ ετϨεͳ͘ݟ͚ͭΔπʔϧ͍͔͕Ͱ͔͢ 7 ͜͜·Ͱ0, ͍͑ͨ͜ͱ
6OJUZͰॏཁͳNFUBϑΝΠϧͷաෆΛ ετϨεͳ͘ݟ͚ͭΔπʔϧ͍͔͕Ͱ͔͢ 8 Կ͕ى͜Δͷ͔ ͍͑ͨ͜ͱ
NFUBϑΝΠϧաෆͷᜁΓ
NFUBϑΝΠϧΛ DPNNJU͠ΕΔ όάΔ͔ NFUBϑΝΠϧΛ ফ͠ΕΔ ࡞ۀͷअຐ
NFUBϑΝΠϧΛ DPNNJU͠ΕΔ όάΔ͔ NFUBϑΝΠϧΛ ফ͠ΕΔ ࡞ۀͷअຐ
12 NFUBϑΝΠϧͷDPNNJUΕόάͷݪҼʹͳΔ TBNQMFNBUʢϚςϦΞϧʣ TBNQMFQOHʢςΫενϟʣ TBNQMFQOHNFUB fileFormatVersion: 2 guid: 96e963ca667b44… TextureImporter:
... ςΫενϟͷࢀর ϚςϦΞϧ͔Β ςΫενϟΛ ࢀর͍ͨ͠
13 NFUBϑΝΠϧͷDPNNJUΕόάͷݪҼʹͳΔ TBNQMFNBUʢϚςϦΞϧʣ TBNQMFQOHʢςΫενϟʣ TBNQMFQOHNFUB fileFormatVersion: 2 guid: 96e963ca667b44… TextureImporter:
... NFUBͷ(6*%Λࢀর ࣮ମ ը૾ͷNFUBʹ ॻ͔Εͨ(6*%͕ ϚςϦΞϧଆʹ ॻ͔ΕͯΔ͜ͱͰ ࣮ݱ͞Ε͍ͯΔ
14 NFUBϑΝΠϧͷDPNNJUΕόάͷݪҼʹͳΔ TBNQMFNBUʢϚςϦΞϧʣ TBNQMFQOHʢςΫενϟʣ TBNQMFQOHNFUBʢผʣ fileFormatVersion: 2 guid: 96e963ca667b44… TextureImporter:
... NFUBͷ(6*%Λࢀর ࣮ମ ͠NFUBϑΝΠϧΛ DPNNJU͠ΕΔͱɺ ผͷਓͷڥͩͱ ผͷNFUBϑΝΠϧ͕ ࣗಈੜ͞Εͯ͠·͏
15 NFUBϑΝΠϧͷDPNNJUΕόάͷݪҼʹͳΔ TBNQMFNBUʢϚςϦΞϧʣ TBNQMFQOHʢςΫενϟʣ TBNQMFQOHNFUBʢผʣ fileFormatVersion: 2 guid: 96e963ca667b44… TextureImporter:
... NFUBͷ(6*%Λࢀর ࣮ମ ผͷNFUBʹผͷ (6*%͕ৼΒΕΔͷͰ ࢀর͕ΕΔ
16 NFUBϑΝΠϧͷDPNNJUΕόάͷݪҼʹͳΔ TBNQMFNBUʢϚςϦΞϧʣ TBNQMFQOHʢςΫενϟʣ TBNQMFQOHNFUBʢผʣ fileFormatVersion: 2 guid: 96e963ca667b44… TextureImporter:
... NFUBͷ(6*%Λࢀর ࣮ମ ςΫενϟͷࢀর ݁ՌతʹϚςϦΞϧ ςΫενϟΛࢀর Ͱ͖ͳ͘ͳͬͯόάΔ
NFUBϑΝΠϧΛ DPNNJU͠ΕΔ όάΔ͔ NFUBϑΝΠϧΛ ফ͠ΕΔ ࡞ۀͷअຐ
NFUBϑΝΠϧΛফ͠ΕΔͱ खݩͰຖؔͳ͍͕ࠩग़ͯ͏͍͟
6OJUZͰॏཁͳNFUBϑΝΠϧͷաෆΛ ετϨεͳ͘ݟ͚ͭΔπʔϧ͍͔͕Ͱ͔͢ 19 ͍͠͏͍͟ ͍͑ͨ͜ͱ
20 ͔͠͠ɺͨͼͨͼNFUBϑΝΠϧͷ աෆ͕ຖൃੜ͍ͯͨ͠ ͦ͜ͰNFUBϑΝΠϧͷաෆΛͳͳ ͢༯ਫ਼͞Μ͕ੜͨ͠ͱ͍͏ʜ
ͦ͜Ͱ༯ਫ਼͞ΜΛۤߦ͔Βղ์͢Δ πʔϧΛͭ͘Γ·ͨ͠
None
23 $ cd /path/to/unity/project $ unity-meta-check -silent missing: Autofix/Missing.meta missing:
Missing.meta dangling: Autofix/Dangling.meta dangling: Dangling.meta λʔϛφϧͰ؆୯ʹ࣮ߦͰ͖Δ
24 NFUBʹաෆ͕͋Δ13ͷNFSHFΛ CMPDL͢Εଞͷਓͷ࡞ۀΛࢭΊͳ͍ͰࡁΉ
25 ݕࠪͷ࣮ߦ࣌ؒ࡞ۀ͕ ࢭ·ͬͯ͠·͏͜ͱʹҙ NFUBʹաෆ͕͋Δ13ͷNFSHFΛ CMPDL͢Εଞͷਓͷ࡞ۀΛࢭΊͳ͍ͰࡁΉ
6OJUZͰॏཁͳNFUBϑΝΠϧͷաෆΛ ετϨεͳ͘ݟ͚ͭΔπʔϧ͍͔͕Ͱ͔͢ 26 ͜͜ॏཁ ͍͑ͨ͜ͱ
ετϨεͷͳ͞
Ξηοτ ࣮ߦඵ
+FOLJOTʹࡌ͚ͬͯ ࣮ߦඵະຬ +FOLJOTͷͪ࣌ؒͱήʔϜຊମͷQVMM࣌ؒͷΦʔόʔϔου͕͍
͔ͬͨʜʂʁʢϑϥάʣ
31 +FOLJOT্Ͱੜ͞ΕͨΞηοτ ʢϚελʔσʔλʣʹ NFUBϑΝΠϧ͕ͳ͍ʜ
32 $ unity-meta-check | unity-meta-autofix \ -fix-missing \ -fix-dangling \
./Assets/AutoGenerated/ ؆қతͳBVUPpYػೳ͡Ί·ͨ͠
͜ΕͰ࣮ӡ༻ʹΕ·ͨ͠
ӡ༻ͯ͠Θ͔ͬͨ͜ͱ
NFUBաෆ ୭ѱ͘ͳ͔ͬͨ ਓʑ6OJUZͱ(JUʹ ࿔͞Ε͍ͯΔ͚ͩͩͬͨ ࠔͬͯͨਓ͕6OJUZ࠶ىಈͨ͠Β࣏Γ·ͨ͠ใࠂ͢ΔͳͲṖ͕ਂ͍ (JUۭϑΥϧμΛ෮ݩ͠ͳ͍ͷͰରԠͨ͠NFUB͕ʹු͘ ʢͨͩ͠6OJUZ͔ΒۭϑΥϧμ࡞ͬͯ͘ΕΔʣ
·ͱΊ 36 6OJUZͰॏཁͳNFUBϑΝΠϧͷաෆΛ ετϨεͳ͘ݟ͚ͭΔπʔϧ͍͔͕Ͱ͔͢
37 Πϯετʔϧํ๏3&"%.&ΛΈ͍ͯͩ͘͞ɿ https://github.com/DeNA/unity-meta-check