Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
SVNとGitを同期した話~Subgit~
Search
Skycat
September 20, 2017
Technology
2k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
SVNとGitを同期した話~Subgit~
GitLab Meetup Fukuoka #1 でLTをさせていただいたときの資料です。
https://gitlab-jp.connpass.com/event/64349/
Skycat
September 20, 2017
More Decks by Skycat
See All by Skycat
秒速でFlutterプロジェクトのCI/CD環境を構築した話
skycat_me
2
4.5k
未経験からの挑戦!超速ネイティブアプリ開発
skycat_me
0
1.8k
Other Decks in Technology
See All in Technology
LLM-as-a-Judgeは本当に信頼できるのか――評価器を評価する話
taka_aki
2
1k
Gemini Intelligence 入門 ― AppFunctions と Gemini Nano
takuroabe
0
340
価値について
gree_tech
PRO
0
140
局所最適は悪ではない。壊れているのは指標です。量と質を同時に見る先行指標の設計
recruitengineers
PRO
2
220
Active Record Connection Adaptersにおける長年の課題に再び取り組む
yahonda
0
400
JAWS-UGグッズ職人仕事の流儀
kentapapa
0
130
【データ横丁主催】AI エージェント時代のTranslytical Data Platform
shisyu_gaku
0
180
~最速でビジネスインパクトを創出する~ Sansanのデータ基盤と活用事例
sansantech
PRO
0
110
データエンジニアの次の戦場は "プロセスエンジニアリング"
sansantech
PRO
1
140
顧客価値を追いかけたら、プライシングにたどり着いた
sansantech
PRO
2
330
『SAR衛星データ解析入門』のご紹介とその応用
syuchimu
0
140
[JAWS-UG彩の国埼玉#12]そろそろ準備する?re:Invent2026をやさしく解説 / reinvent2026-sainokuni
sh_fk2
1
380
Featured
See All Featured
Building Adaptive Systems
keathley
44
3.3k
Thoughts on Productivity
jonyablonski
76
5.4k
Being A Developer After 40
akosma
92
590k
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
860
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
790
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
330
Intergalactic Javascript Robots from Outer Space
tanoku
273
28k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
1
570
SEO for Brand Visibility & Recognition
aleyda
0
4.8k
How to build a perfect <img>
jonoalderson
1
6.1k
We Are The Robots
honzajavorek
0
400
The Cult of Friendly URLs
andyhume
79
7k
Transcript
SVNͱGITΛಉظͨ͠ ʙ Subgit ʙ 2017/09/19
ࣗݾհ দຊ ▸ גࣜձࣾϋγΰ ▸ αʔόʔαΠυΤϯδχΞ ▸ Twitter: skycat_me
▸ Facebook: takuya.matsumoto.cat
ϓϩδΣΫτ ▸ SVNཧ ▸ ίʔυϨϏϡʔͭΒ͍ ▸ hook͕͑ͳ͍ʢେਓͷࣄ
ͳʹΑΓ Git ͰΓ͍ͨ GitlabͰιʔεϨϏϡʔΓ͍ͨ… GitlabCIͰࣗಈςετΓ͍ͨ… GitlabͷWebhookͰChatOpsతͳͷΓ͍ͨ…
ͰେਓͷࣄͰ શҠߦͰ͖ͳ͍
Subgit͕ͬͯͭΑͦ͞͏ʂ
શಉظʂ Subversion <=> Git
ίετ… খنͳνʔϜͳΒແྉʢSubgitࣗମͷ
ָͪΜಋೖ ▸ JavaͳͷͰJava͕ඞਢͰ͢ʂʂ ▸ vagrantbox ubuntu/trusty64ڥ # java8 install $
sudo add-apt-repository ppa:webupd8team/java $ sudo apt-get update $ sudo apt-get install oracle-java8-installer # Subgit install $ wget https://subgit.com/download/subgit_3.2.4_all.deb $ sudo dpkg -i subgit_3.2.4_all.deb $ sudo apt-get install -f
ָͪΜಋೖ ▸ GitRepositoryΛੜͯ͠SubgitίϚϯυΛଧ͚ͭͩʂ $ subgit configure {svn_repository_url} {git_repository} # sugitσΟϨΫτϦ͕ੜ͞ΕΔʂ
# SVNͱGitͷϢʔβϚοϐϯάઃఆ $ vim {git_repository}/subgit/authors.txt matsumoto_takuya = skycat <
[email protected]
> # SVNಉظઃఆʢྫͩͱSVNͷtrunk͕GitͷmasterʹͳΓ·͢) $ vim {git_repository}/subgit/config trunk = :refs/heads/master branches = branches/*:refs/heads/feature/* # SVNΞΫηεใ sshKeyFile = svn private Key userName =UserName
ࡉ͔͍ઃఆ # SVNಉظઃఆʢྫͩͱSVNͷtrunk͕GitͷmasterʹͳΓ·͢) $ vim {git_repository}/subgit/config minimalRevision=630000 SVNͷϦϙδτϦ͕ංେԽͯ͠͠·͍ͬͯΔ߹ɺ ಛఆͷϦϏδϣϯ͔Βಉظ͢Δ͜ͱ͕Մೳʂ Revision630000Ҏ͔߱Βಉظʂ
Քಇʂ # SVNΠϯετʔϧ $ subgit install {git_repository}/subgit/config SVNͷϦϙδτϦ͕ංେԽͯ͠͠·͍ͬͯΔ߹ɺ ಛఆͷϦϏδϣϯ͔Βಉظ͢Δ͜ͱ͕Մೳʂ ޭͨ͠ΒDaemonىಈͯ͠ಉظ͠·͢ʂ
෭࢈͕ͨ͘͞Μʂ ▸ GitlabCEΛཱͯͯίʔυϨϏϡʔ(๑•̀ŷ•́)و✧ ▸ GitlabCIͰࣗಈςετ(๑•̀ŷ•́)و✧ ▸ WebhookͰChatOps(๑•̀ŷ•́)و✧ ▸ Gitͷڭ(๑•̀ŷ•́)و✧
ͨͩɺ͋Δʂ ▸ Subgit͕݁ߏϝϞϦΛ৯͏ʀɻʀ ▸ ϓϩδΣΫτͷ߹্ɺݱࡏ12ݸͷRepositoryΛಉظத ▸ ݱࡏɺGitlabʹRAMΛ8.5GׂΓ͋ͯͯΔ USER PID %CPU
%MEM VSZ RSS git 1628 0.2 2.0 4115984 176568 ? Ssl Aug03 140:12 git 2402 0.5 4.8 4121252 423556 ? Ssl Aug14 294:30 git 12876 0.2 2.6 4118180 232660 ? Ssl Aug03 149:18 git 19817 0.2 2.2 4118304 199232 ? Ssl Aug03 146:00 git 23842 0.2 2.6 4115984 229092 ? Ssl Aug03 145:12 git 24513 0.2 2.7 4115984 238928 ? Ssl Aug03 148:40 git 25977 0.2 3.1 4115984 274436 ? Ssl Aug03 145:21 git 26915 0.5 5.4 4121116 476892 ? Ssl Aug09 308:55 git 27631 0.6 6.9 4118032 603960 ? Ssl Sep15 34:56 git 31213 0.2 2.6 4115984 233760 ? Ssl Aug03 150:43 git 31714 0.6 4.9 4121408 432184 ? Ssl Aug14 326:45 git 32111 0.2 1.9 4115984 172748 ? Ssl Aug03 152:39
ͨͩɺ͋Δʂ ▸ SubgitͷDaemon͕ϝϞϦෆͰ͓ͳ͘ͳΓʹ ▸ ࢹͯ͠ࢮΜͰͨΒੜ͖ฦ͢Α͏ʹ͢Δ ▸ subgit install —recover {git_repository}
▸ ͍ͨͩͭ݁͜ߏ͕͔͔࣌ؒΔʀ ▸ ͦͷؒɺಉظ͕ࢭ·ͬͯ͠·͏ͷͰGitlabͰϚʔδ͕Ͱ ͖ͳ͘ͳͬͨΓɺPushΠϕϯτ͕͜ͳ͘ͳΔ ▸ ݱঢ়ϝϞϦageageͰઓͬͯΔ͚ͲɺͲ͏ʹ͔͍ͨ͠ƅ ƅ´ωAƅ ƅŇűƅŖ
ಋೖͯ͠Α͔ͬͨ͜ͱʂ ▸ Gitܦݧ͕ͳ͔ͬͨϝϯόʔ͕Gitʹ৮ΕΔ͍͍ػձ͕Ͱ͖ͨ ▸ શҠߦͰͳ͘ಉظͳͷͰɺಋೖίετ͕ͱͯগͳ͍ ▸ GitlabͰLGTMը૾ͰΈΜͳϫΠϫΠͬͯͯ࠷ߴʂ ▸ ΤϯδχΞͷίϛϡχέʔγϣϯ͕׆ൃʹʂ
͝ਗ਼ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠