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
2
3.2k
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
Tweet
Share
More Decks by Kuniwak
See All by Kuniwak
テストケースの名前はどうつけるべきか?
orgachem
PRO
1
400
欠陥を早期に発見するための Software Engineer in Test とその重要性 / What is Software Engineer in Test and How they works
orgachem
PRO
22
4.1k
住宅を WebXR で評価しよう / Evaluating My Home by WebXR
orgachem
PRO
0
100
HOME VR
orgachem
PRO
1
800
uGUI の自動操作の考え方と操作方法
orgachem
PRO
1
1.4k
Swift Macro に備えて構文木を 10min で学ぶ / Learn Syntax Tree for Swift Macro in 10 minutes
orgachem
PRO
1
1.3k
SoftWare Engineer in Test のおしごと / What is SWET
orgachem
PRO
1
1.1k
私と Nature Remo E / Nature Remo E
orgachem
PRO
0
26k
存在しないアセットへの参照と 未公開アセットでのネタバレに どう立ち向かうか / How to prevent missing assets and spoilers by assets
orgachem
PRO
1
1.1k
Other Decks in Programming
See All in Programming
DenoでOpenTelemetryに入門する
yotahada3
1
190
気がついたら子供が社会人になって 自分と同じモバイルアプリエンジニアになった件 / Parent-Child Engineers
koishi
0
210
신입 안드로이드 개발자의 AI 스타트업 생존기 (+ Native C++ Code를 Android에서 사용해보기)
dygames
0
400
Rails 1.0 のコードで学ぶ find_by* と method_missing の仕組み / Learn how find_by_* and method_missing work in Rails 1.0 code
maimux2x
1
290
技術好きなエンジニアが "リーダーへの進化" によって得たものと失ったもの
pospome
4
1.1k
Better Code Design in PHP
afilina
0
200
Webフレームワークとともに利用するWeb components / JSConf.jp おかわり
spring_raining
1
170
15分で学ぶDuckDBの可愛い使い方 DuckDBの最近の更新
notrogue
3
910
The Price of Micro Frontends… and Your Alternatives @bastacon 2025 in Frankfurt
manfredsteyer
PRO
0
360
Goで作るChrome Extensions / Fukuoka.go #21
n3xem
2
2.1k
はじめてのIssueOps - GitHub Actionsで実現するコメント駆動オペレーション
tmknom
7
2k
「個人開発マネタイズ大全」が教えてくれたこと
bani24884
1
330
Featured
See All Featured
How to Ace a Technical Interview
jacobian
276
23k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
11
1.4k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Done Done
chrislema
182
16k
Adopting Sorbet at Scale
ufuk
75
9.3k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
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