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
Jujutsuを使うモチベーション
Search
thirdlf03
August 23, 2025
0
34
Jujutsuを使うモチベーション
thirdlf03
August 23, 2025
Tweet
Share
More Decks by thirdlf03
See All by thirdlf03
学生のうちにいろんなカンファレンスへ行こう!
thirdlf03
0
53
MCP登場から約1年!あの頃と今、何が変わった? / MCP One Year Later
thirdlf03
0
70
cursorで実践するContext Engineering
thirdlf03
1
38
Cloudflare Containers使ってみた
thirdlf03
1
20
自己紹介
thirdlf03
0
18
uv + ruff + tyを使ったモダンな環境でdiscord bot作ってみよう(Genspark製)
thirdlf03
0
23
Workers-rs使ってみた
thirdlf03
0
13
プログラミングを教えるときに大切なこと
thirdlf03
0
16
チーム開発におけるベストプラクティス、バッドプラクティス
thirdlf03
0
41
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
58
6.2k
Code Reviewing Like a Champion
maltzj
527
40k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
250
Docker and Python
trallard
47
3.7k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.1k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
270
Mind Mapping
helmedeiros
PRO
0
48
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
69
It's Worth the Effort
3n
188
29k
AI: The stuff that nobody shows you
jnunemaker
PRO
2
170
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
280
Transcript
JujutsuΛ͏Ϟνϕʔγϣϯ @thirdlf
ࣗݾհ • ໊લ: thirdlf(͞ͲΔ;) • झຯ: ϋοΧιϯɺϥΠϒ • ࠷ۙϨΠϠʔʹڵຯ͋Γ
GitΛͬͨ͜ͱ͋Δํ🙋
JujutsuͬͯVCSͬͯΔํ🙋 㕩ઓͷํͰͳ͍Ͱ͢
GitΛ͏Ϟνϕʔγϣϯ ͍ΖΜͳཧ༝͕͋ͬͯɺGitΛ͍ͬͯΔͱࢥ͏͕… Ұ൪ͷϞνϕʔγϣϯɺϑΝΠϧͷཤྺཧ(όʔδϣϯཧ)͍ͨ͠ ͔Βͩͱࢥ͍·͢ʂ
ͨͩɺgit logݟͨ࣌ʹ͜Μͳϩάʹ ͳͬͨܦݧ͋Γ·ͤΜ͔ʁ
… Ұ୴ίϛοτͨ͠ΓɺtypoͰίϛο τͨ͠Γ…
ଞʹGit͍ͬͯΔ࣌ʹ… • ίϯϑϦΫτىͬͯ͜࡞ۀ͕ࢭ·ͬͯ͠·ͬͨ • ίϛοτ࿙Ε • git resetrevertΛ࣮ߦ͢Δͷ͕ා͍ • ෳࡶͳཤྺฤू͕ԯ߷
ͦΜͳΈΛղܾͯ͘͠ΕΔͷ͕ JujutsuͰ͢ʂ
Jujutsuͱʁ JujutsuɺRustͷVCS ࡞ऀɺGoogleͷιϑτΣΞΤϯδχΞͰɺGoogleͷطଘͷVCS ʢPerforceɺPiperɺMercurialʣΛஔ͖͑ΔํͰ։ൃ͕ਐΊΒΕͯ ͍ΔΒ͍͠ɻ https://github.com/jj-vcs/jj
Jujutsuͷಛ • Gitͱޓੑ͕͋Δ • git addʹ͋ͨΔίϚϯυ͕ͳ͍ • Change ID •
ίϯϑϦΫτͰΤϥʔ͕ى͖ͳ͍ • ίϚϯυͷཤྺ͕Δ Jujutsuͷಛ
Gitͱޓੑ͕͋Δ GitHubͬͨΓɺGitͱซ༻ͨ͠ΓͰ͖Δ ➡νʔϜϝϯόʔGitɺࣗjjՄ ➡طଘͷϓϩδΣΫτΛঃʑʹjjʹҠߦͨ͠ΓͰ͖Δ
git addʹ͋ͨΔίϚϯυ͕ͳ͍ ϑΝΠϧ͕Ճ͞ΕͨΓɺมߋ͞ΕΔͱࣗಈͰ ➡ίϛοτ࿙Ε͕ͳ͘ͳΔ *.gitignoreͰର֎ʹͰ͖ͨΓɺjj splitͰίϛοτʹؚΊΔϑΝΠ ϧͳͲબΔ
Change ID JujutsuʹɺՄมͷCommit IDͱෆมͷChange ID͕ଘࡏ͢Δɻ zzzzzzzzͷ෦͕Change IDɺ00000000͕Commit ID
ίϯϑϦΫτͰΤϥʔ͕ى͖ͳ͍ ίϯϑϦΫτίϛοτͷதʹཧతͳঢ়ଶͱͯ͠ه͞ΕΔ
ίϚϯυͷཤྺ͕Δ jj op logͰίϚϯυͷϩά͕ݟΔ͜ͱ͕Ͱ͖Δ jj op undoͰҰͭલͷίϚϯυΛ࣮ߦ͢Δલͷঢ়ଶʹͬͨΓɺjj op restore opidࢦఆ͢ΔͱɺͦͷidͷίϚϯυΛߦͳ͏ͷঢ়ଶʹΔ͜ͱ
͕Ͱ͖Δ
None
JujutsuΛ͏Ϟνϕʔγϣϯ ͱʹ͔͘։ൃʹ಄Ͱ͖Δɻཤྺฤूා͘ͳ͍ʂ ➡ ࡞ۀ͢ΔखΛࢭΊͳ͍͍ͯ͘ʂʂʂʂʂ AIΛͬͨ։ൃͱ૬ੑ͕͍͍ ➡ jj workspaceͰ git workspaceͷΑ͏ͳ͜ͱ͕Ͱ͖ͨΓɺฒྻ։ൃ͍ͤͯ͞Δ࣌ʹίϯϑϦ
Ϋτ͕ى͖ͯޙ͔ΒղܾͰ͖Δʂʂ ʮෳͷGemini CLI͕ಉ࣌։ൃ͢Δڰؾ - Jujutsu͕࣮ݱ͢ΔAIΤʔδΣϯτڠௐͷ৽ੈքʯͱ ݕࡧͯ͠Έ͍ͯͩ͘͞
͖ͳίϚϯυ • jj log • jj edit • jj absorb
jj log σϑΥϧτͰάϥϑදࣔ͞ΕΔͷ͕ ͖
jj edit ࢦఆͨ͠Change ID or Commit IDʹ Ҡಈ͠ɺίϛοτΛฤू͢Δ͜ͱ͕ Ͱ͖Δ ࠓճɺippai
henkouΛׂ͍ͨ͠
ฤूޙ ฤूલ
jj absorb ͍͍ײ͡ʹϑΝΠϧͷมߋΛաڈͷίϛ οτʹऔΓࠐΜͰ͘ΕΔ ྫ͑ɺλΠϙϛεΛฤूͨ͠ޙɺ absorb͏ͱ࠷ޙͦͷϑΝΠϧΛมߋ͠ ͨίϛοτʹऔΓࠐΜͰ͘ΕΔ ➡ fi x
typoίϛοτͳͲΛ࡞Βͳ͍͍ͯ͘
·ͱΊ • Jujutsu͍͍ͧʔ • Gitͱซ༻Ͱࢼͯ͠Έͯʂʂ