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
Salesforceプロジェクトのバージョン管理
Search
Taiki Yoshikawa
August 02, 2023
Technology
0
1.1k
Salesforceプロジェクトのバージョン管理
tyoshikawa1106
Taiki Yoshikawa
August 02, 2023
Tweet
Share
More Decks by Taiki Yoshikawa
See All by Taiki Yoshikawa
Salesforce World Tour Tokyo 2023 Day 2
tyoshikawa1106
0
100
Salesforce World Tour Tokyo 2023 Day 1
tyoshikawa1106
0
37
Service Cloudの導入設定の始め方
tyoshikawa1106
0
380
Salesforce開発環境構築 (2023年版)
tyoshikawa1106
0
700
Sales Enablement (myTrailhead) の導入設定
tyoshikawa1106
0
460
Salesforce World Tour Tokyo 2022
tyoshikawa1106
0
910
Other Decks in Technology
See All in Technology
自分だけの仮想クラスタを高速かつ効率的に作る kubefork
donkomura
0
110
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
19k
困難を「一般解」で解く
fujiwara3
7
1.6k
目標と時間軸 〜ベイビーステップでケイパビリティを高めよう〜
kakehashi
PRO
8
890
Cracking the Coding Interview 6th Edition
gdplabs
14
28k
E2Eテスト自動化入門
devops_vtj
1
100
開発組織を進化させる!AWSで実践するチームトポロジー
iwamot
2
500
AIエージェント元年@日本生成AIユーザ会
shukob
1
250
EDRの検知の仕組みと検知回避について
chayakonanaika
12
5.2k
EMConf JP 2025 懇親会LT / EMConf JP 2025 social gathering
sugamasao
2
200
OPENLOGI Company Profile for engineer
hr01
1
20k
AIエージェント入門
minorun365
PRO
32
19k
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
29
8.4k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.3k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
650
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
13
1k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.4k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
A better future with KSS
kneath
238
17k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.1k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Optimizing for Happiness
mojombo
377
70k
Transcript
5BJLJ:PTIJLBXB 4BMFTGPSDFϓϩδΣΫτͷόʔδϣϯཧ
4BMFTGPSDFϓϩδΣΫτͷόʔδϣϯཧʹ͍ͭͯ ˞%FW0QT$FOUFSͰ͜Ε·ͰΑΓόʔδϣϯཧ͘͢͠ͳͬͨɻ IUUQTIFMQTBMFTGPSDFDPNTBSUJDMF7JFX JETGEFWPQT@DFOUFS@TFUVQIUNUZQF
4BMFTGPSDFϓϩδΣΫτͷ࡞
7JTVBM4UVEJP$PEFͰ4BMFTGPSDFϓϩδΣΫτΛ࡞ɻ
4BMFTGPSDF৫Λೝূ
ιʔείʔυΛऔಘ
(JU)VCϦϙδτϦΛ࡞
ʰHJUJOJUʱίϚϯυ࣮ߦ
(JUϦϙδτϦʹө HJUBEE HJUTUBUVT HJUDPNNJUN fi STUDPNNJU HJUCSBODI.NBJO HJUSFNPUFBEEPSJHJOHJU!HJUIVCDPNUZPTIJLBXBTGEDNZQMBZHSPVOEHJU HJUQVTIVPSJHJONBJO
͜ΕͰ4BMFTGPSDFͷϦιʔεҰࣜΛόʔδϣϯཧͰ͖Δঢ়ଶͱͳΓ·͢ɻ
1BDLBHFYNMΛΧελϚΠζͯ͠ઃఆใΛόʔδϣϯཧ σϑΥϧτͰ"QFYίʔυͷΈ͕ରͱͯ͠ࢦఆ͞Ε͍ͯ·͢ɻ ϝλσʔλ"1*͕ఏڙ͍ͯ͠ΔͷՃ͢Δ͜ͱͰϝλใΛऔಘͰ͖·͢ɻ ˞ඪ४ΦϒδΣΫτ$VTUPN0CKFDUͷͱ͜Ζʹݸผʹࢦఆ͢ΔͱऔಘՄೳͰ͢ɻ
ৄࡉϝλσʔλ"1*ͷ։ൃऀΨΠυʹهࡌ͞Ε͍ͯ·͢ɻ IUUQTEFWFMPQFSTBMFTGPSDFDPNEPDTBUMBTKBKQBQJ@NFUBNFUBBQJ@NFUBNFUB@UZQFT@MJTUIUN ˞৫Ͱ༗ޮԽ͍ͯ͠ͳ͍ػೳͦͷଞͷ݅ͰࢦఆෆՄͷͷ͋Γɻ ˞ઃఆมߋ࣌ͷࠩѲʹ༻Ͱ͖Δɻ ແବʹཧରʹՃͯ͠ํ͕ແ͍ͷͰ༻్ΛܾΊͯཧରʹՃ͍ͯ͘͠ɻ
ϖʔδϨΠΞτͷઃఆมߋཧΛྫʹհɻ
ϖʔδϨΠΞτ͔ΒෆཁͳϘλϯΛඇදࣔʹมߋ͢Δ࡞ۀΛ࣮ࢪɻ 74$PEFͰ࠷৽ͷใΛ৫͔ΒऔಘɻࠩൃੜΛ֬ೝͰ͖Δɻ
ϝλใͳͷͰɺײతʹมߋ༰Λ֬ೝͰ͖ΔΑ͏ͳײ͡Ͱͳ͍Ͱ͢ɻ ͜Ε͚ͩͰҙਤ͠ͳ͍มߋͯ͠͠·ͬͨͱ͖ʹؾ͍ͮͨΓͰ͖Δͱࢥ͍·͢ɻ ˞͜͏͍͏͍ํͰ͖Δͱ͍͏ײ͡ͷྫͰ͢ɻ
ͻͱ·ͣQBDLBHFYNMͷσϑΥϧτͰ༻ҙ͞Ε͍ͯΔ"QFYίʔυҰࣜͷόʔδϣϯཧ Λ͓͚ͯ͠ࠔΒͳ͍ͱࢥ͍·͢ɻඞཁʹԠͯ͡ݕূ্ͨ͠ͰՃ͍ͯ͘͠ײ͡ɻ
(JU)VCϦϙδτϦ͔Β4BMFTGPSDFϓϩδΣΫτͷऔಘ
ॳճʹ4BMFTGPSDFϓϩδΣΫτͷ࡞ͱ(JU)VCϦϙδτϦͷ࡞͕ྃͨ͋͠ͱɺνʔϜ ϝϯόʔ͕4BMFTGPSDF։ൃڥΛ༻ҙ͢Δͱ͖ɺ(JU$MPOFίϚϯυͰϓϩδΣΫτΛऔ ಘ͠·͢ɻ λʔϛφϧͰϫʔΫεϖʔεͷσΟΫϨΫτϦʹҠಈɻ DMPOFίϚϯυΛ࣮ߦɻ63-(JU)VCϦϙδτϦͰ֬ೝͰ͖Δɻ
͜ΕͰ(JU)VCϦϙδτϦͰཧ͞ΕͨϦιʔεҰ͕ࣜऔಘͰ͖Δɻ (JUMPHίϚϯυͰ͜Ε·Ͱͷϩά֬ೝͰ͖Δঢ়ଶɻ
(JUIVC͔ΒϦιʔεҰࣜऔಘͰ͖ͨΒɺ4BMFTGPSDF৫ͱଓɻ ͜ΕͰ৫͔ΒιʔεΛऔಘͨ͠Γɺ"QFY։ൃΛਐΊͨΓ͕ՄೳʹͳΓ·͢ɻ 4BMFTGPSDF%9ͷొͰ4BMFTGPSDF։ൃ͕(JU)VCόʔδϣϯཧͳͲΓ͘͢ͳͬͨͷ ͜ͷ͋ͨΓͷૢ࡞͕؆୯ʹͰ͖ΔΑ͏ʹͳͬͯ·͢ɻ
։ൃڥͷ༻ҙ 4BOECPYPSεΫϥον৫
ຊ൪৫Ͱ4BMFTGPSDFϓϩδΣΫτΛ࡞ͯ͠(JU)VCϦϙδτϦͷόʔδϣϯཧͷΈ Λ༻ҙͰ͖ͨΒ։ൃڥΛ༻ҙ͠·͢ɻ ௨ৗຊ൪৫ͱಉ͡ڥ͕༻ҙͰ͖Δ4BOECPYڥΛ༻͢Δ͜ͱʹͳΔͱࢥ͍·͕͢ɺ %FWFMPQFS&EUJPOͰ༻Ͱ͖ͳ͍ͷͰࠓճεΫϥον৫Ͱ༻ɻ
·ͣ%FW)VC৫Λ༗ޮԽ͠·͢ɻҰॹʹ৫γΣΠϓ༗ޮԽɻ
৫ͷ%FW)VC༗ޮԽ͕ྃͨ͠ঢ়ଶͰ%FW)VC৫ͷೝূΛߦ͏ɻ Γํ $-*ίϚϯυͰ%FW)VC৫ͱͯ͠ѻ͏Α͏ʹՃɻ TGDPO fi HTFUUBSHFUEFWIVC<"MJBTFT໊> ˞ิ ը໘ΩϟϓνϟͰ༻͍ͯ͠ΔʰTGFOWMJTUʱίϚϯυ࠷৽൛ͷ4BMFTGPSDF$-*Ͱɺ
ʰTGPSHMJTUʱίϚϯυʹมߋ͞Ε͍ͯ·ͨ͠ɻ ଞʹ͜͏͍͏έʔε͋Δͱࢥ͍·͢ͷͰ͜ͷลެࣜαΠτͰ֬ೝ͍ͯͩ͘͠͞ɻ
Γํ ̎ 7JTVBM4UVEJP$PEF͔Βૢ࡞͢Δ͜ͱՄೳɻ ΤΠϦΞε໊طଘͱಉ͡Ͱ0, TGFOWMJTUίϚϯυͰ%FW)VC৫ͱͯ͠ೝূ͞Εͨ͜ͱΛ֬ೝͰ͖Δɻ
ࢀߟɿεΫϥον৫࡞ϑΝΠϧͷઃఆϑΝΠϧ DPO fi HQSPKFDUTDSBUDIEFGKTPO εΫϥον৫ͷ࡞ίϚϯυΛ࣮ߦ
·ͬ͞Βͳڥ͕࡞͞ΕͨΒεΫϥον৫ͷ࡞ྃɻ ཧऀϢʔβͷύεϫʔυϦηοτͰύεϫʔυઃఆ͓ͯ͘͠ɻ
74$PEF͕ଓதͷ৫ࠨԼͰ֬ೝɻมߋ͕Ͱ͖Δɻ ˘ͷΞΠίϯΛΫϦοΫ͢ΔͱϒϥβͰ৫ʹΞΫηεͰ͖Δɻ εΫϥον৫࡞ޙɺ"QFYίʔυҰࣜΛεΫϥον৫ʹσϓϩΠ͢Δ͜ͱ͕Մೳɻ
ࢀߟɿεΫϥον৫ͷιʔεͷసૹʹؔ͢Δৄࡉ։ൃऀΨΠυʹهࡌ͞Ε͍ͯΔɻ IUUQTEFWFMPQFSTBMFTGPSDFDPNEPDTBUMBTKBKQTGEY@EFWNFUBTGEY@EFWTGEY@EFW@QVTI@NE@UP@TDSBUDI@PSHIUN
ͦΕͧΕͷڥͰόʔδϣϯཧ
εΫϥον৫ ։ൃ༻৫ ͷ࡞͕ྃͯ͠"QFYίʔυͷөͰ͖·ͨ͠ɻ ࠷ॳͷ%FW)VC৫Λຊ൪৫ͱͯ͠ѻ͍ɺεΫϥον৫Ͱ։ൃˠϦϦʔεͱ͍͏ײ͡Ͱ ཧ͢ΔΠϝʔδͰ͢ɻ %FW)VC৫ ຊ൪ڥ εΫϥον৫ Ծ4BOECPY ʮNBJOʯཧ
ʮϒϥϯνʯཧ
Լهͷঢ়ଶ(JU)VCͷʰNBJOʱʹଓɻTBMFTGPSDFͷຊ൪৫ʹଓ͍ͯ͠Δঢ়ଶɻ ·ͣ4BMFTGPSDFଓઌΛεΫϥον৫ʹมߋ͢Δɻ
࣍ʹϒϥϯνΛ࡞ ϒϥϯν໊TDSBUDIͱࢦఆ ϒϥϯν࡞͞Ε͔ͨ࣍ͷίϚϯυͰ֬ೝͰ͖Δɻ ࣍ͷίϚϯυͰϒϥϯνΛΓସ͑ɻ ࡞ͨ͠ϒϥϯνQVTIίϚϯυͰ(JU)VCϦϙδτϦʹөͰ͖Δɻ
(JU)VC্ͰϒϥϯνՃ͞Εͨ͜ͱΛ֬ೝͰ͖Δɻ ಛʹ͜͜Ͱૢ࡞͠ͳ͍ɻ
74$PEFͷଓઌ͕ϒϥϯνɺ։ൃڥʹͳ͍ͬͯΔ͜ͱΛ֬ೝ͔ͯ͠Β։ൃΛਐΊΔɻ TDSBUDI৫࡞ޙʹDNE TΩʔͰίʔυͷมߋΛอଘͨ͠ͱ͖ʹɺ4BMFTGPSDFଆʹࣗ ಈͰσϓϩΠ อଘ ͞Εͳ͍߹74$PEFͷઃఆͰରԠͰ͖·͢ɻ
ઃఆͷશମΠϝʔδ
εΫϥον৫Ͱ৽نίʔυΛՃɻ
Ճͨ͠ίʔυΛϒϥϯνʹίϛοτɻ ίϛοτͨ͠ΒϓογϡίϚϯυΛ࣮ߦͯ͠(JU)VCʹөɻ
(JU)VCʹөͨ͠ΒϓϧϦΫΤετͱ͔ͦΜͳײ͡ɻ
ϓϧϦΫΤετ࡞ˠϨϏϡʔˠϚʔδͱ͍͏ײ͡ͰਐΜͰ͍͘ɻ Ϛʔδޙʹϒϥϯνআը໘͔ΒͰ͖Δɻ
None
͜ͷ࣌Ͱ(JU)VCϦϙδτϦʹө͞Ε͚ͨͲɺ4BMFTGPSDF৫ʹө͞Ε͍ͯͳ ͍ঢ়ଶɻ 74$PEFʹͬͯϒϥϯνͷΓସ͑ͱ4BMFTGPSDFଓઌͷมߋ HJUCSBODI HJUDIFDLPVUNBJO HJUCSBODI 4BMFTGPSDFͷଓઌมߋίϚϯυ͡Όͳͯ͘6*ૢ࡞Ͱɻ
ଓઌΛมߋͨ͠ΒHJUQVMMίϚϯυͰ(JU)VCϦϙδτϦʹՃ͞ΕͨίʔυΛऔಘɻ
TGEYͷEFQMPZίϚϯυͰຊ൪৫ʹө ͍͔ͭ͋͘ΔΓํͷҰྫ IUUQTEFWFMPQFSTBMFTGPSDFDPNEPDTBUMBTKBKQTGEY@EFWNFUBTGEY@EFWTGEY@EFW@EFWFMPQ@BOZ@PSHIUN
͜ΕͰεΫϥον৫Ͱ։ൃͨ͠ίʔυΛຊ൪৫ʹϦϦʔεͰ͖·͢ɻ ˞ҙ ͍͔ͭ͋͘ΔΓํͷҰͭͰ͢ɻ%FWFMPQFS&EUJPO εΫϥον৫͜ΕͰେৎɻ ӡ༻ڥͩͱͪΌΜͱϦϦʔεରߜΔͳͲ͖ͪΜͱཧ͕ඞཁɻ
%FW0QT$FOUFSͰόʔδϣϯཧ
4VNNFS`Ͱ6*ϕʔεͰ4BMFTGPSDFϓϩδΣΫτͷόʔδϣϯཧ͕ՄೳʹͳΔػೳ͕ ొ͠·ͨ͠ɻʮ%FW0QT$FOUFSʯͰ͢ɻઃఆϖʔδʹՃ͞Ε͍ͯ·͢ɻ ˞ຊ൪ڥͰ༗ޮԽͯ͠։ൃ৫ͱଓ͢ΔΈͰ͢ɻ
༗ޮԽϘλϯͰػೳΛ༗ޮԽͰ͖·͢ɻ ར༻ͷࡍͷنͷಉҙ͕͋Γ·͢ɻ ύοέʔδΛΠϯετʔϧϘλϯ͔Β%FW0QT$FOUFSΛΠϯετʔϧ͠·͢ɻ
Πϯετʔϧྃ͢ΔͱΠϯετʔϧࡁΈύοέʔδͱͯ͠Ճ͞Ε·͢ɻ
࠷ॳͷઃఆͱͯ͠৽نଓΞϓϦέʔγϣϯͷઃఆΛߦ͍·͢ɻ ઃఆ༰ʹ͍ͭͯϔϧϓΛࢀরͷ͜ͱɻ IUUQTIFMQTBMFTGPSDFDPNTBSUJDMF7JFX JETGEFWPQT@DFOUFS@DSFBUF@DPOOFDUFE@BQQIUNUZQF
ଓΞϓϦέʔγϣϯͷ࡞͕Ͱ͖ͨΒ.BOBHFϘλϯΛΫϦοΫɻ ݖݶηοτͷઃఆΛߦ͍·͢ɻ
ϢʔβʹݖݶηοτׂΓͯͰݖݶΛ༩͠·͢ɻͦΕͧΕͷׂʹ͋ͬͨͷΛׂΓͯ ͳ͍ͱɺϦϦʔε࡞ۀ·Ͱ࣮ߦͰ͖ΔͷͰҙ͢Δ͜ͱɻ
ΞϓϦέʔγϣϯϥϯνϟʔ͔Β%FW0QT$FOUFSʹΞΫηεͰ͖·͢ɻ
৽͍͠ϓϩδΣΫτ͔Β(JU)VCͱଓɻ
৽نϙδτϦͷ࡞طଘϦϙδτϦͱͷඥ͚྆ํՄೳͰ͢ɻ อଘϘλϯΫϦοΫ͢Δͱ(JU)VCͱͷೝূϖʔδ͕දࣔ͞ΕΔͷͰೝূ͠·͢ɻ
ϦϦʔεڥͷͱ͜ΖͰɺϦϦʔεڥͷઃఆΛߦ͍·͢ɻ
ϓϩδΣΫτ໊ϦϯΫͳͲ͔ΒৄࡉϖʔδʹҠಈɻύΠϓϥΠϯͷઃఆΛߦ͍·͢ɻ ։ൃڥʹࠓճ༻ҙ͍ͯ͠ΔεΫϥον৫ΛࢦఆɻೝূઃఆΛߦ͍·͢ɻ ΠϯςάϨʔγϣϯ6"5༻ͷ৫Λઃఆ͢Δ͜ͱՄೳͰ͢ɻ ࠓճআ͢Δɻ
ϓϩδΣΫτ໊ϦϯΫͳͲ͔ΒৄࡉϖʔδʹҠಈɻύΠϓϥΠϯͷઃఆΛߦ͍·͢ɻ ։ൃڥʹࠓճ༻ҙ͍ͯ͠ΔεΫϥον৫ΛࢦఆɻೝূઃఆΛߦ͍·͢ɻ ΠϯςάϨʔγϣϯ6"5༻ͷ৫Λઃఆ͢Δ͜ͱՄೳͰ͢ɻ ࠓճআ͢Δɻ
ೝূͷઃఆ͕Ͱ͖ͨΒ༗ޮԽϘλϯΛΫϦοΫͯ͠ӡ༻։࢝ͷͨΊͷ४උྃɻ ˞ϝχϡʔʹ͋Δઃఆ࡞ۀ߲ॳظઃఆͰͷૢ࡞ඞཁ͋Γ·ͤΜɻ ˞ඞཁʹԠͯ͡։ൃڥͷͱ͜ΖͷಉظͷϦϯΫ͔Βಉظઃఆͷ༗ޮԽ͓͖ͯ͠·͢ɻ
ϦϦʔε४උ·ͰਐΜͩΒຊ൪ڥͷ%FW0QT$FOUFSʹΞΫηεɻ ࡞ۀ߲Λ࡞͠·͢ɻ
࡞ۀ߲ͱର৫Λଓɻ มߋΛऔΓࠐΉϘλϯͰࠩΛऔಘɻ खಈͰࢦఆ͢ΔܗͰऔಘՄೳ
ରΛબͯ͠ίϝϯτΛೖྗɻมߋΛ֬ఆϘλϯΛΫϦοΫ͠·͢ɻ
ॲཧதʹͳͬͨΒϨϏϡʔϘλϯΛΫϦοΫͯ࣍͠ʹਐΊ·͢ɻ
(JU)VC্ʹϓϧϦΫΤετ͕࡞͞ΕͨΓ͍ͯ͠ΔͷͰͦ͜Ͱ֬ೝͰ͖·͢ɻ
ϨϏϡʔྃޙঢ֨४උྃϘλϯΛΫϦοΫɻ ύΠϓϥΠϯͷը໘ʹΓସ͑ͯঢ֨ ϦϦʔε ͠·͢ɻ
ঢ֨ΦϓγϣϯͰςετΦϓγϣϯࢦఆͰ͖·͢ɻঢ֨ϘλϯͰϦϦʔε։࢝ɻ ϦϦʔεʹͳ͚Εਖ਼ৗʹॲཧ͞Ε·͢ɻ
࡞ۀ߲ྃࡁΈϑΣʔζͱͳΓɺࢀরͷΈʹΓସΘΓ·͢ɻ
ຊ൪৫Λ֬ೝ͢ΔͱϦϦʔεରʹબͨ͠ίʔυ͕ແࣄϦϦʔε͞Ε͍ͯΔ͜ͱΛ ֬ೝͰ͖·͢ɻ (JU)VCϦϙδτϦʹө͞Ε͍ͯ·͢ɻ
Ҏ্͕%FW0QT$FOUFSΛ͔ͭͬͨ։ൃ͔ΒϦϦʔε·ͰͷྲྀΕͷΠϝʔδͰ͢ɻ (JUίϚϯυͳͲͷૢ࡞ΛߦΘͣదͳόʔδϣϯཧͱϦϦʔε࡞ۀ͕࣮ࢪͰ͖·͢ɻ ։ൃऀਓʹ͖ͭͭͷ4BMFTGPSDFϢʔβ͕ඞཁʹͳΔͷͱɺ%FW0QT$FOUFSͷૢ࡞ ຊ൪৫Ͱͷ࡞ۀ͕ඞཁʹͳΔͷಋೖ࣌ͷߟྀ͔͠Ε·ͤΜɻ ࣾͷ։ൃऀͱཧऀ͚ʹͳΓͦ͏ɻ ௨ৗͷ(JUίϚϯυʹΑΔόʔδϣϯཧͱ%FW0QT$FOUFSͰͷόʔδϣϯཧͷཱ྆ ՄೳͳͷͰ։ൃऀ(JUཧɺཧऀ%FW0QT$FOUFSతͳӡ༻͕ՄೳͰ͢ɻ
4BMFTGPSDFϓϩδΣΫτͷόʔδϣϯཧ͜Μͳײ͡ͰͰ͖Δͱࢥ͍·͢ɻ