<?xml version="1.0" encoding="utf-8"?>

<rdf:RDF
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns:cc="http://web.resource.org/cc/"
  xmlns="http://purl.org/rss/1.0/">

<channel rdf:about="https://zusann123.cocolog-nifty.com/blog/">
<title>現在と未来のITなどのテクノロジー</title>
<link>https://zusann123.cocolog-nifty.com/blog/</link>
<description>近未来のお徳情報とサイエンスフィクション、Linux、映画などなど</description>
<dc:language>ja-JP</dc:language>
<dc:creator></dc:creator>
<dc:date>2026-07-03T10:29:32+09:00</dc:date>


<items>
<rdf:Seq><rdf:li rdf:resource="https://zusann123.cocolog-nifty.com/blog/2026/07/post-2a186a.html" />
<rdf:li rdf:resource="https://zusann123.cocolog-nifty.com/blog/2026/01/post-5f6e4a.html" />
<rdf:li rdf:resource="https://zusann123.cocolog-nifty.com/blog/2025/10/post-4665ea.html" />
<rdf:li rdf:resource="https://zusann123.cocolog-nifty.com/blog/2025/07/post-d4f161.html" />
<rdf:li rdf:resource="https://zusann123.cocolog-nifty.com/blog/2025/01/post-fe0811.html" />
</rdf:Seq>
</items>

</channel>

<item rdf:about="https://zusann123.cocolog-nifty.com/blog/2026/07/post-2a186a.html">
<title>Wordpress 数式表示プラグイン</title>
<link>https://zusann123.cocolog-nifty.com/blog/2026/07/post-2a186a.html</link>
<description>







数式を正確に表示させるための、Wordpress用のプラグインと...</description>
<content:encoded><![CDATA[<div class="" data-turn-id-container="eb10ead2-b61e-46aa-be45-e6b3b5c14352" data-is-intersecting="true">
<section class="text-token-text-primary w-full focus:outline-none has-data-writing-block:pointer-events-none [&amp;:has([data-writing-block])&gt;*]:pointer-events-auto R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-(--sticky-padding-top)" dir="auto" data-turn-id="eb10ead2-b61e-46aa-be45-e6b3b5c14352" data-turn-id-container="eb10ead2-b61e-46aa-be45-e6b3b5c14352" data-testid="conversation-turn-1" data-turn="user">
<div class="text-base my-auto mx-auto pt-3 [--thread-content-margin:var(--thread-content-margin-xs,calc(var(--spacing)*4))] @w-sm/main:[--thread-content-margin:var(--thread-content-margin-sm,calc(var(--spacing)*6))] @w-lg/main:[--thread-content-margin:var(--thread-content-margin-lg,calc(var(--spacing)*16))] px-(--thread-content-margin)">
<div class="[--thread-content-max-width:40rem] @w-lg/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col" data-conversation-screenshot-content="">
<div class="flex max-w-full flex-col gap-4 grow">
<div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&amp;]:mt-1" dir="auto" data-message-author-role="user" data-message-id="eb10ead2-b61e-46aa-be45-e6b3b5c14352">
<div class="flex w-full flex-col gap-1 empty:hidden items-end rtl:items-start">
<div class="user-message-bubble-color corner-superellipse/0.98 relative min-w-0 overflow-hidden rounded-[22px] px-4 py-2.5 leading-6 max-w-(--user-chat-width,70%)">
<div class="max-w-full min-w-0 [overflow-wrap:anywhere] whitespace-pre-wrap">数式を正確に表示させるための、Wordpress用のプラグインと、場合によって、html用に利用できる、Javascriptについて、雑学や業界話を交えながら、解説してください。</div>
</div>
</div>
</div>
</div>
<div class="z-0 flex justify-end"></div>
</div>
</div>
</section>
</div>
<div class="" data-turn-id-container="request-WEB:6409a33a-9ac8-41a0-b934-1fe52806432c-0" data-is-intersecting="true">
<section class="text-token-text-primary w-full focus:outline-none has-data-writing-block:pointer-events-none [&amp;:has([data-writing-block])&gt;*]:pointer-events-auto R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]" dir="auto" data-turn-id="request-WEB:6409a33a-9ac8-41a0-b934-1fe52806432c-0" data-turn-id-container="request-WEB:6409a33a-9ac8-41a0-b934-1fe52806432c-0" data-testid="conversation-turn-2" data-turn="assistant">
<div class="text-base my-auto mx-auto pb-10 [--thread-content-margin:var(--thread-content-margin-xs,calc(var(--spacing)*4))] @w-sm/main:[--thread-content-margin:var(--thread-content-margin-sm,calc(var(--spacing)*6))] @w-lg/main:[--thread-content-margin:var(--thread-content-margin-lg,calc(var(--spacing)*16))] px-(--thread-content-margin)">
<div class="[--thread-content-max-width:40rem] @w-lg/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn" data-conversation-screenshot-content="">
<div class="flex max-w-full flex-col gap-4 grow">
<div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&amp;]:mt-1" dir="auto" data-message-author-role="assistant" data-message-id="76c2e651-7135-4074-968b-1def21ba541b" data-message-model-slug="gpt-5-5" data-turn-start-message="true" tabindex="0">
<div class="flex w-full flex-col gap-1 empty:hidden">
<div class="markdown prose dark:prose-invert wrap-break-word w-full dark markdown-new-styling">
<p data-start="0" data-end="43">数式をWebで美しく表示する世界は、実は「Web技術の進化」を象徴する分野の一つです。</p>
<p data-start="45" data-end="172">現在では、大学・研究機関・数学ブログ・物理学の解説サイト・AI関連の技術ブログなどでは、ほぼ <strong data-start="92" data-end="106">LaTeX（ラテフ）</strong> という数式記法が共通言語になっています。WordPressでも、LaTeXを入力し、それをブラウザで美しく描画する方法が主流です。</p>
<hr data-start="174" data-end="177" />
<h1 data-section-id="7j2bvy" data-start="179" data-end="200">なぜ普通のHTMLでは数式が苦手なのか</h1>
<p data-start="202" data-end="224">HTMLは文章を書くために設計されています。</p>
<p data-start="226" data-end="229">例えば</p>
<p data-start="226" data-end="229"> </p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="relative">
<div class="h-full min-h-0 min-w-0">
<div class="h-full min-h-0 min-w-0">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="relative">
<div class="pe-11 pt-3">
<div class="relative z-0 flex max-w-full">
<div id="code-block-viewer" class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr">
<div class="cm-scroller">
<pre class="cm-content q9tKkq_readonly m-0"><code>x² + y² = z²</code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="">
<div class=""></div>
</div>
</div>
</div>
</div>
</div>
<p data-start="253" data-end="271">くらいならUnicodeで書けます。</p>
<p data-start="273" data-end="277">しかし、</p>
 <br />∫−∞∞e−x2dx=π\int_{-\infty}^{\infty} e^{-x^2}dx=\sqrt{\pi}<span class="katex-html" aria-hidden="true"><span class="base"><span class="mop"><span class="mop op-symbol large-op">∫</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist"><span class="sizing reset-size6 size3 mtight"><span class="mord mtight">−∞</span></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight">∞</span></span></span><span class="vlist-s">​</span></span></span></span></span><span class="mord"><span class="mord mathnormal">e</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist"><span class="sizing reset-size6 size3 mtight"><span class="mord mtight">−<span class="mord mathnormal mtight">x</span><span class="sizing reset-size3 size1 mtight">2</span></span></span></span></span></span></span></span><span class="mord mathnormal">d</span><span class="mord mathnormal">x</span><span class="mrel">=</span></span><span class="base"><span class="mord sqrt"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist"><span class="svg-align"><span class="mord"><span class="mord mathnormal">π</span></span></span></span><span class="vlist-s">​</span></span></span></span></span></span>
<p data-start="332" data-end="333">や</p>
ddx(sin⁡xx)\frac{d}{dx}\left( \frac{\sin x}{x} \right)<span class="katex-html" aria-hidden="true"><span class="base"><span class="mord"><span class="mfrac"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist"><span class="mord mathnormal">d</span><span class="mord mathnormal">x</span><span class="mord mathnormal">d</span></span><span class="vlist-s">​</span></span></span></span></span><span class="minner"><span class="mopen delimcenter"><span class="delimsizing size3">(</span></span><span class="mord"><span class="mfrac"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist"><span class="mord mathnormal">x</span><span class="mop">sin</span><span class="mord mathnormal">x</span></span><span class="vlist-s">​</span></span></span></span></span><span class="mclose delimcenter"><span class="delimsizing size3">)</span></span></span></span></span>
<p data-start="386" data-end="396">のような式になると、</p>
<ul data-start="398" data-end="434">
<li data-section-id="yhs3xg" data-start="398" data-end="402">添字</li>
<li data-section-id="1m5if2f" data-start="403" data-end="410">上付き文字</li>
<li data-section-id="yhvlzy" data-start="411" data-end="415">分数</li>
<li data-section-id="yhngjn" data-start="416" data-end="420">積分</li>
<li data-section-id="yi8tpv" data-start="421" data-end="425">行列</li>
<li data-section-id="1mhwf54" data-start="426" data-end="434">ギリシャ文字</li>
</ul>
<p data-start="436" data-end="448">などが大量に登場します。</p>
<p data-start="450" data-end="461">HTMLだけで書くと、</p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="relative">
<div class="h-full min-h-0 min-w-0">
<div class="h-full min-h-0 min-w-0">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="relative">
<div class="pe-11 pt-3">
<div class="relative z-0 flex max-w-full">
<div id="code-block-viewer" class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr">
<div class="cm-scroller">
<pre class="cm-content q9tKkq_readonly m-0"><code>&lt;span&gt;<br />
&lt;span style="vertical-align:super"&gt;</code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="">
<div class=""></div>
</div>
</div>
</div>
</div>
</div>
<p data-start="515" data-end="546">のような大量のタグになってしまい、人間にはほぼ編集不可能です。</p>
<p data-start="548" data-end="571">そこで生まれたのが <strong data-start="558" data-end="567">LaTeX</strong> です。</p>
<hr data-start="573" data-end="576" />
<h1 data-section-id="iqki0t" data-start="578" data-end="592">LaTeXという世界標準</h1>
<p data-start="594" data-end="597">例えば</p>
<p> </p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="relative">
<div class="h-full min-h-0 min-w-0">
<div class="h-full min-h-0 min-w-0">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="relative">
<div class="pe-11 pt-3">
<div class="relative z-0 flex max-w-full">
<div id="code-block-viewer" class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr">
<div class="cm-scroller">
<pre class="cm-content q9tKkq_readonly m-0"><code>\frac{a+b}{c+d}</code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="">
<div class=""></div>
</div>
</div>
</div>
</div>
</div>
<p data-start="624" data-end="628">と書けば</p>
 <br />a+bc+d\frac{a+b}{c+d}<span class="katex-html" aria-hidden="true"><span class="base"><span class="mord"><span class="mfrac"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist"><span class="mord mathnormal">c</span><span class="mbin">+</span><span class="mord mathnormal">d</span><span class="mord mathnormal">a</span><span class="mbin">+</span><span class="mord mathnormal">b</span></span><span class="vlist-s">​</span></span></span></span></span></span></span>
<p data-start="653" data-end="659">になります。</p>
<p data-start="661" data-end="664">さらに</p>
<p> </p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="relative">
<div class="h-full min-h-0 min-w-0">
<div class="h-full min-h-0 min-w-0">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="relative">
<div class="pe-11 pt-3">
<div class="relative z-0 flex max-w-full">
<div id="code-block-viewer" class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr">
<div class="cm-scroller">
<pre class="cm-content q9tKkq_readonly m-0"><code>\sum_{i=1}^{n}</code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="">
<div class=""></div>
</div>
</div>
</div>
</div>
</div>
<p data-start="690" data-end="692">なら</p>
 <br />∑i=1n\sum_{i=1}^{n}<span class="katex-html" aria-hidden="true"><span class="base"><span class="mop op-limits"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist"><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathnormal mtight">i</span><span class="mrel mtight">=</span>1</span></span><span class="mop op-symbol large-op">∑</span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathnormal mtight">n</span></span></span></span><span class="vlist-s">​</span></span></span></span></span></span>
<p data-start="716" data-end="722">になります。</p>
<p data-start="724" data-end="745">LaTeXは1980年代から使われており、</p>
<ul data-start="747" data-end="778">
<li data-section-id="yhtdj2" data-start="747" data-end="751">数学</li>
<li data-section-id="yhpyw7" data-start="752" data-end="756">物理</li>
<li data-section-id="1nneo2z" data-start="757" data-end="763">情報科学</li>
<li data-section-id="1j3gb81" data-start="764" data-end="770">AI論文</li>
<li data-section-id="168cfks" data-start="771" data-end="778">arXiv</li>
</ul>
<p data-start="780" data-end="793">では事実上の世界標準です。</p>
<p data-start="795" data-end="868">ちなみに、現在の生成AI（ChatGPTなど）も、数式はLaTeX形式で出力することが非常に多く、Web表示でもそのまま活用しやすいのが特徴です。</p>
<hr data-start="870" data-end="873" />
<h1 data-section-id="18cpaow" data-start="875" data-end="904">Wordpressで最も人気があるのは MathJax</h1>
<h2 class="" data-section-id="10mebl2" data-start="906" data-end="918">① MathJax</h2>
<p data-start="920" data-end="927">最も有名です。</p>
<p data-start="929" data-end="931">特徴</p>
<ul data-start="933" data-end="981">
<li data-section-id="1sugxtk" data-start="933" data-end="941">非常に美しい</li>
<li data-section-id="1jv4du" data-start="942" data-end="948">論文品質</li>
<li data-section-id="ipp6xx" data-start="949" data-end="957">大学でも採用</li>
<li data-section-id="hjb83u" data-start="958" data-end="967">SVG表示可能</li>
<li data-section-id="opvydh" data-start="968" data-end="981">アクセシビリティが高い</li>
</ul>
<p data-start="983" data-end="985">入力</p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="relative">
<div class="h-full min-h-0 min-w-0">
<div class="h-full min-h-0 min-w-0">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="relative">
<div class="pe-11 pt-3">
<div class="relative z-0 flex max-w-full">
<div id="code-block-viewer" class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr">
<div class="cm-scroller">
<pre class="cm-content q9tKkq_readonly m-0"><code>$$<br />
E=mc^2<br />
$$</code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<p data-start="1009" data-end="1010">↓</p>
<p data-start="1012" data-end="1014">表示</p>
 <br />E=mc2E=mc^2<span class="katex-html" aria-hidden="true"><span class="base"><span class="mord mathnormal">E</span><span class="mrel">=</span></span><span class="base"><span class="mord mathnormal">m</span><span class="mord"><span class="mord mathnormal">c</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist"><span class="sizing reset-size6 size3 mtight"><span class="mord mtight">2</span></span></span></span></span></span></span></span></span>
<h3 data-section-id="10yiw7a" data-start="1030" data-end="1038">メリット</h3>
<ul data-start="1040" data-end="1077">
<li data-section-id="1v4nbco" data-start="1040" data-end="1053">ほぼLaTeXそのまま</li>
<li data-section-id="1v2efas" data-start="1054" data-end="1065">数学記号が全部ある</li>
<li data-section-id="16g1pnx" data-start="1066" data-end="1077">長い数式も崩れない</li>
</ul>
<h3 data-section-id="b6j51d" data-start="1079" data-end="1088">デメリット</h3>
<p data-start="1090" data-end="1097">やや重いです。</p>
<p data-start="1099" data-end="1126">ページを開いたあとJavaScriptで描画するので、</p>
<p data-start="1128" data-end="1130">昔は</p>
<blockquote data-start="1132" data-end="1156">
<p data-start="1134" data-end="1156">「MathJaxを入れるとページが重くなる」</p>
</blockquote>
<p data-start="1158" data-end="1178">というのがWeb業界では有名な話でした。</p>
<p data-start="1180" data-end="1207">現在のVersion 3ではかなり高速化されています。</p>
<hr data-start="1209" data-end="1212" />
<h1 class="" data-section-id="17vkk84" data-start="1214" data-end="1223">② KaTeX</h1>
<p data-start="1225" data-end="1235">現在人気急上昇です。</p>
<p data-start="1237" data-end="1240">これは</p>
<p data-start="1242" data-end="1258"><strong data-start="1242" data-end="1258">Khan Academy</strong></p>
<p data-start="1260" data-end="1268">が開発しました。</p>
<p data-start="1270" data-end="1272">特徴</p>
<ul data-start="1274" data-end="1305">
<li data-section-id="lfaalf" data-start="1274" data-end="1281">とても高速</li>
<li data-section-id="yi9f0a" data-start="1282" data-end="1286">軽量</li>
<li data-section-id="13uoqzc" data-start="1287" data-end="1296">SEOにも有利</li>
<li data-section-id="f4jxpl" data-start="1297" data-end="1305">モバイル向き</li>
</ul>
<p data-start="1307" data-end="1327">MathJaxより数倍高速と言われます。</p>
<hr data-start="1329" data-end="1332" />
<h2 data-section-id="1i8u2ol" data-start="1334" data-end="1340">業界話</h2>
<p data-start="1342" data-end="1352">最近の技術ブログでは</p>
<p data-start="1354" data-end="1372"><strong data-start="1354" data-end="1372">MathJaxよりKaTeX</strong></p>
<p data-start="1374" data-end="1390">を採用するサイトが増えています。</p>
<p data-start="1392" data-end="1395">理由は</p>
<p data-start="1397" data-end="1404">Googleが</p>
<ul data-start="1406" data-end="1430">
<li data-section-id="2h35nn" data-start="1406" data-end="1412">表示速度</li>
<li data-section-id="1gu7p06" data-start="1413" data-end="1430">Core Web Vitals</li>
</ul>
<p data-start="1432" data-end="1448">を重視するようになったためです。</p>
<p data-start="1450" data-end="1478">速度を少しでも改善したいブログではKaTeXが人気です。</p>
<hr data-start="1480" data-end="1483" />
<h1 data-section-id="14tqqgm" data-start="1485" data-end="1501">Wordpressプラグイン</h1>
<h2 data-section-id="zftkg8" data-start="1503" data-end="1520">Simple MathJax</h2>
<p data-start="1522" data-end="1529">最もシンプル。</p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="relative">
<div class="h-full min-h-0 min-w-0">
<div class="h-full min-h-0 min-w-0">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="relative">
<div class="pe-11 pt-3">
<div class="relative z-0 flex max-w-full">
<div id="code-block-viewer" class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr">
<div class="cm-scroller">
<pre class="cm-content q9tKkq_readonly m-0"><code>$$<br />
...<br />
$$</code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="">
<div class="">だけで動きます。</div>
</div>
</div>
</div>
</div>
</div>
<p data-start="1560" data-end="1566">初心者向き。</p>
<hr data-start="1568" data-end="1571" />
<h2 data-section-id="13m8mkj" data-start="1573" data-end="1589">WP QuickLaTeX</h2>
<p data-start="1591" data-end="1599">昔からあります。</p>
<p data-start="1601" data-end="1613">画像生成方式も使えます。</p>
<p data-start="1615" data-end="1631">現在では少し古い印象があります。</p>
<hr data-start="1633" data-end="1636" />
<h2 data-section-id="13y8ttb" data-start="1638" data-end="1654">MathJax-LaTeX</h2>
<p data-start="1656" data-end="1663">こちらも定番。</p>
<p data-start="1665" data-end="1670">投稿本文に</p>
<p data-start="1665" data-end="1670"> </p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="relative">
<div class="h-full min-h-0 min-w-0">
<div class="h-full min-h-0 min-w-0">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="relative">
<div class="pe-11 pt-3">
<div class="relative z-0 flex max-w-full">
<div id="code-block-viewer" class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr">
<div class="cm-scroller">
<pre class="cm-content q9tKkq_readonly m-0"><code>\( ... \)<br /><br /></code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<p data-start="1692" data-end="1693">や</p>
<p> </p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="relative">
<div class="h-full min-h-0 min-w-0">
<div class="h-full min-h-0 min-w-0">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="relative">
<div class="pe-11 pt-3">
<div class="relative z-0 flex max-w-full">
<div id="code-block-viewer" class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr">
<div class="cm-scroller">
<pre class="cm-content q9tKkq_readonly m-0"><code>$$ ... $$</code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="">
<div class=""></div>
</div>
</div>
</div>
</div>
</div>
<p data-start="1714" data-end="1720">を書くだけ。</p>
<hr data-start="1722" data-end="1725" />
<h2 data-section-id="1awon29" data-start="1727" data-end="1746">Gutenberg対応プラグイン</h2>
<p data-start="1748" data-end="1752">最近では</p>
<ul data-start="1754" data-end="1762">
<li data-section-id="1e4uu8w" data-start="1754" data-end="1762">数式ブロック</li>
</ul>
<p data-start="1764" data-end="1780">として入力できるものもあります。</p>
<p data-start="1782" data-end="1807">ブロックエディタとの相性はかなり良くなっています。</p>
<hr data-start="1809" data-end="1812" /><br />
<p> </p>
<h1 data-section-id="hgv0vx" data-start="1814" data-end="1829">HTMLだけで利用するなら</h1>
<p data-start="1831" data-end="1848">実はWordPressは不要です。</p>
<p data-start="1850" data-end="1855">HTMLに</p>
<p> </p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="relative h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="relative" data-custom-highlighting-behavior="boundary">
<div class="h-full min-h-0 min-w-0">
<div class="h-full min-h-0 min-w-0">
<div class="">
<div class="relative [container-type:inline-size]">
<div class="w-full overflow-x-hidden overflow-y-auto">
<div class="relative z-0 flex max-w-full">
<div id="code-block-viewer" class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr">
<div class="cm-scroller">
<pre class="cm-content q9tKkq_readonly m-0"><code><span class="ͼ13">&lt;script&gt;</span></code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="">
<div class=""></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<p data-start="1879" data-end="1889">を追加するだけです。</p>
<p data-start="1891" data-end="1894">例えば</p>
<p> </p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="relative h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="relative" data-custom-highlighting-behavior="boundary">
<div class="h-full min-h-0 min-w-0">
<div class="h-full min-h-0 min-w-0">
<div class="">
<div class="relative [container-type:inline-size]">
<div class="w-full overflow-x-hidden overflow-y-auto">
<div class="relative z-0 flex max-w-full">
<div id="code-block-viewer" class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr">
<div class="cm-scroller">
<pre class="cm-content q9tKkq_readonly m-0"><code><span class="ͼ13">&lt;script</span> <span class="ͼ12">src</span><span class="ͼv">=</span><span class="ͼz">"https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"</span><span class="ͼ13">&gt;&lt;/script&gt;</span></code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="">
<div class=""></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<p data-start="1993" data-end="1998">これだけで</p>
<p> </p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="relative">
<div class="h-full min-h-0 min-w-0">
<div class="h-full min-h-0 min-w-0">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="relative">
<div class="pe-11 pt-3">
<div class="relative z-0 flex max-w-full">
<div id="code-block-viewer" class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr">
<div class="cm-scroller">
<pre class="cm-content q9tKkq_readonly m-0"><code>$$<br />
a^2+b^2=c^2<br />
$$</code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="">
<div class=""></div>
</div>
</div>
</div>
</div>
</div>
<p data-start="2027" data-end="2035">が表示できます。</p>
<p data-start="2037" data-end="2040">つまり</p>
<ul data-start="2042" data-end="2075">
<li data-section-id="1cew2qv" data-start="2042" data-end="2052">自作ホームページ</li>
<li data-section-id="11hioul" data-start="2053" data-end="2067">GitHub Pages</li>
<li data-section-id="13wt3sc" data-start="2068" data-end="2075">静的サイト</li>
</ul>
<p data-start="2077" data-end="2084">でも使えます。</p>
<hr data-start="2086" data-end="2089" />
<h1 data-section-id="1sn3ajb" data-start="2091" data-end="2101">KaTeXの場合</h1>
<p data-start="2103" data-end="2110">読み込むものは</p>
<p data-start="2103" data-end="2110"> </p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="relative h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="relative" data-custom-highlighting-behavior="boundary">
<div class="h-full min-h-0 min-w-0">
<div class="h-full min-h-0 min-w-0">
<div class="">
<div class="relative [container-type:inline-size]">
<div class="w-full overflow-x-hidden overflow-y-auto">
<div class="relative z-0 flex max-w-full">
<div id="code-block-viewer" class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr">
<div class="cm-scroller">
<pre class="cm-content q9tKkq_readonly m-0"><code>katex.min.css</code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="">
<div class=""></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<p data-start="2139" data-end="2140">と</p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="relative h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="pointer-events-none absolute inset-x-4 top-12 bottom-4">
<div class="pointer-events-none sticky z-40 shrink-0 z-1!">
<div class="sticky bg-token-border-light"></div>
</div>
</div>
<div class="relative" data-custom-highlighting-behavior="boundary">
<div class="h-full min-h-0 min-w-0">
<div class="h-full min-h-0 min-w-0">
<div class="">
<div class="relative [container-type:inline-size]">
<div class="w-full overflow-x-hidden overflow-y-auto">
<div class="relative z-0 flex max-w-full">
<div id="code-block-viewer" class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr">
<div class="cm-scroller">
<pre class="cm-content q9tKkq_readonly m-0"><code>katex.min.js</code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="">
<div class=""></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<p data-start="2168" data-end="2171">です。</p>
<p data-start="2173" data-end="2176">さらに</p>
<p> </p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="relative h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="pointer-events-none absolute inset-x-4 top-12 bottom-4">
<div class="pointer-events-none sticky z-40 shrink-0 z-1!">
<div class="sticky bg-token-border-light">auto-render.min.js</div>
</div>
</div>
<div class="relative" data-custom-highlighting-behavior="boundary">
<div class="">
<div class=""></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<p data-start="2210" data-end="2215">を使うと、</p>
<p data-start="2217" data-end="2223">ページ全体の</p>
<p> </p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="relative">
<div class="h-full min-h-0 min-w-0">
<div class="h-full min-h-0 min-w-0">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="relative">
<div class="pe-11 pt-3">
<div class="relative z-0 flex max-w-full">
<div id="code-block-viewer" class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr">
<div class="cm-scroller">
<pre class="cm-content q9tKkq_readonly m-0"><code>$$<br />
...<br />
$$</code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="">
<div class=""></div>
</div>
</div>
</div>
</div>
</div>
<p data-start="2244" data-end="2260">を自動検出して表示してくれます。</p>
<hr data-start="2262" data-end="2265" />
<h1 data-section-id="1f919rk" data-start="2267" data-end="2282">JavaScriptの役割</h1>
<p data-start="2284" data-end="2295">JavaScriptは</p>
<p> </p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="relative">
<div class="h-full min-h-0 min-w-0">
<div class="h-full min-h-0 min-w-0">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="relative">
<div class="pe-11 pt-3">
<div class="relative z-0 flex max-w-full">
<div id="code-block-viewer" class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr">
<div class="cm-scroller">
<pre class="cm-content q9tKkq_readonly m-0"><code>\frac{a}{b}</code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="">
<div class=""></div>
</div>
</div>
</div>
</div>
</div>
<p data-start="2318" data-end="2331">という文字列を見つけると、</p>
<p data-start="2333" data-end="2336">内部で</p>
<p> </p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="relative">
<div class="h-full min-h-0 min-w-0">
<div class="h-full min-h-0 min-w-0">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="relative">
<div class="pe-11 pt-3">
<div class="relative z-0 flex max-w-full">
<div id="code-block-viewer" class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr">
<div class="cm-scroller">
<pre class="cm-content q9tKkq_readonly m-0"><code>HTML</code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="">
<div class=""></div>
</div>
</div>
</div>
</div>
</div>
<p data-start="2352" data-end="2353">↓</p>
<p> </p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="relative">
<div class="h-full min-h-0 min-w-0">
<div class="h-full min-h-0 min-w-0">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="relative">
<div class="pe-11 pt-3">
<div class="relative z-0 flex max-w-full">
<div id="code-block-viewer" class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr">
<div class="cm-scroller">
<pre class="cm-content q9tKkq_readonly m-0"><code>CSS</code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="">
<div class=""></div>
</div>
</div>
</div>
</div>
</div>
<p data-start="2368" data-end="2369">↓</p>
<p> </p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="relative">
<div class="h-full min-h-0 min-w-0">
<div class="h-full min-h-0 min-w-0">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="relative">
<div class="pe-11 pt-3">
<div class="relative z-0 flex max-w-full">
<div id="code-block-viewer" class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr">
<div class="cm-scroller">
<pre class="cm-content q9tKkq_readonly m-0"><code>SVG</code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="">
<div class=""></div>
</div>
</div>
</div>
</div>
</div>
<p data-start="2384" data-end="2387">または</p>
<p> </p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="relative">
<div class="h-full min-h-0 min-w-0">
<div class="h-full min-h-0 min-w-0">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="relative">
<div class="pe-11 pt-3">
<div class="relative z-0 flex max-w-full">
<div id="code-block-viewer" class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr">
<div class="cm-scroller">
<pre class="cm-content q9tKkq_readonly m-0"><code>HTML+CSS</code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="">
<div class=""></div>
</div>
</div>
</div>
</div>
</div>
<p data-start="2407" data-end="2414">へ変換します。</p>
<p data-start="2416" data-end="2419">つまり</p>
<p> </p>
<div class="relative w-full mt-4 mb-1">
<div class="">
<div class="contents">
<div class="relative">
<div class="h-full min-h-0 min-w-0">
<div class="h-full min-h-0 min-w-0">
<div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl">
<div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback">
<div class="relative">
<div class="pe-11 pt-3">
<div class="relative z-0 flex max-w-full">
<div id="code-block-viewer" class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr">
<div class="cm-scroller">
<pre class="cm-content q9tKkq_readonly m-0"><code>LaTeX<br /></code></pre>
<p> </p>
<pre class="cm-content q9tKkq_readonly m-0"><code>
↓<br /></code></pre>
<p> </p>
<pre class="cm-content q9tKkq_readonly m-0"><code>
JavaScript<br /></code></pre>
<p> </p>
<pre class="cm-content q9tKkq_readonly m-0"><code>
↓<br /></code></pre>
<p> </p>
<pre class="cm-content q9tKkq_readonly m-0"><code>
綺麗な数式</code></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="">
<div class=""></div>
</div>
</div>
</div>
</div>
</div>
<p data-start="2461" data-end="2469">という流れです。</p>
<hr data-start="2471" data-end="2474" />
<h1 data-section-id="10duuw7" data-start="2476" data-end="2492">SVGとHTMLレンダリング</h1>
<p data-start="2494" data-end="2503">MathJaxには</p>
<ul data-start="2505" data-end="2521">
<li data-section-id="1npo2ip" data-start="2505" data-end="2513">HTML描画</li>
<li data-section-id="177wxby" data-start="2514" data-end="2521">SVG描画</li>
</ul>
<p data-start="2523" data-end="2529">があります。</p>
<p data-start="2531" data-end="2537">SVGの特徴</p>
<ul data-start="2539" data-end="2566">
<li data-section-id="1jgicr4" data-start="2539" data-end="2548">拡大しても綺麗</li>
<li data-section-id="1qbg84k" data-start="2549" data-end="2555">印刷品質</li>
<li data-section-id="vpw9ej" data-start="2556" data-end="2566">PDF化にも向く</li>
</ul>
<p data-start="2568" data-end="2575">HTML描画は</p>
<ul data-start="2577" data-end="2596">
<li data-section-id="yi8wc1" data-start="2577" data-end="2581">軽い</li>
<li data-section-id="yi6zf7" data-start="2582" data-end="2586">速い</li>
<li data-section-id="1gzuvnh" data-start="2587" data-end="2596">コピーしやすい</li>
</ul>
<p data-start="2598" data-end="2611">用途によって使い分けます。</p>
<hr data-start="2613" data-end="2616" />
<h1 data-section-id="17swyhz" data-start="2618" data-end="2627">SEOへの影響</h1>
<p data-start="2629" data-end="2631">昔は</p>
<p data-start="2633" data-end="2645">「数式は画像にして貼る」</p>
<p data-start="2647" data-end="2657">ことが一般的でした。</p>
<p data-start="2659" data-end="2666">しかし画像では</p>
<ul data-start="2668" data-end="2704">
<li data-section-id="6xbyxb" data-start="2668" data-end="2681">Googleが読めない</li>
<li data-section-id="1h0uqs7" data-start="2682" data-end="2691">コピーできない</li>
<li data-section-id="lagy5e" data-start="2692" data-end="2704">検索対象になりにくい</li>
</ul>
<p data-start="2706" data-end="2718">という問題がありました。</p>
<p data-start="2720" data-end="2781">現在はMathJaxやKaTeXにより、数式をテキストベースで扱えるため、検索エンジンや支援技術との相性も向上しています。</p>
<hr data-start="2783" data-end="2786" />
<h1 data-section-id="19bir9o" data-start="2788" data-end="2799">AI時代の数式表示</h1>
<p data-start="2801" data-end="2815">近年は生成AIの普及により、</p>
<ul data-start="2817" data-end="2852">
<li data-section-id="6gc00l" data-start="2817" data-end="2826">ChatGPT</li>
<li data-section-id="bhoywd" data-start="2827" data-end="2834">数学系AI</li>
<li data-section-id="1thozn8" data-start="2835" data-end="2843">論文要約AI</li>
<li data-section-id="19auwe8" data-start="2844" data-end="2852">教育サービス</li>
</ul>
<p data-start="2854" data-end="2954">などがLaTeX形式の数式をそのまま出力することが増えています。そのため、Web側でもLaTeXを直接表示できる環境を整えておくと、AIが生成した数式をほとんど加工せず掲載できるという利点があります。</p>
<hr data-start="2956" data-end="2959" />
<h1 data-section-id="3u3w43" data-start="2961" data-end="2972">ちょっとした業界話</h1>
<ul data-start="2974" data-end="3202">
<li data-section-id="12e396" data-start="2974" data-end="3027"><strong data-start="2976" data-end="2987">MathJax</strong> は「品質重視」の代表格で、大学や学術系サイト、研究機関で広く採用されています。</li>
<li data-section-id="t69dxq" data-start="3028" data-end="3085"><strong data-start="3030" data-end="3039">KaTeX</strong> は「速度重視」の代表格で、教育サービスや技術ブログ、静的サイトなどで人気が高まっています。</li>
<li data-section-id="9j9r6h" data-start="3086" data-end="3143"><strong data-start="3088" data-end="3108">Markdown + KaTeX</strong> の組み合わせは、技術ドキュメントや知識共有サイトでもよく見られます。</li>
<li data-section-id="iulass" data-start="3144" data-end="3202">数学系サイトだけでなく、AI・機械学習・データサイエンス分野ではLaTeX対応がほぼ標準機能になりつつあります。</li>
</ul>
<p data-start="3204" data-end="3306" data-is-last-node="" data-is-only-node=""><strong data-start="3204" data-end="3306" data-is-last-node="">これからWordPressで新しく数式を扱うサイトを作るのであれば、表示速度を重視するなら KaTeX、対応範囲や互換性を重視するなら MathJax を選ぶ、というのが現在でも定番の選択肢です。</strong></p>
<p> </p>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
</div>
<p>
<script src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
</p>]]></content:encoded>



<dc:creator>ずー</dc:creator>
<dc:date>2026-07-03T10:29:32+09:00</dc:date>
</item>
<item rdf:about="https://zusann123.cocolog-nifty.com/blog/2026/01/post-5f6e4a.html">
<title>GitとGitHub完全マスタリング講座 - 実行コマンドと業界話で解説</title>
<link>https://zusann123.cocolog-nifty.com/blog/2026/01/post-5f6e4a.html</link>
<description>



学習内容




Gitの根幹をなしている概念の理解 (Gitのデータ構...</description>
<content:encoded><![CDATA[<div class="_9663006"><br />
<div class="d29f3d7d ds-message _63c77b1"><br />
<div class="fbb737a4"><br />
<div class="component-margin what-you-will-learn_what-you-will-learn__Ey184"><br />
<h2 class="ud-heading-xl what-you-will-learn_title__l9p28">学習内容</h2>
<div class="what-you-will-learn_content-spacing__pk5Du"><br /><br /><br />
<ul class="ud-unstyled-list ud-block-list what-you-will-learn_objectives-list__iS24Z what-you-will-learn_objectives-list-two-column-layout__z1oXn">
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-tight ud-block-list-item-neutral ud-text-sm" data-purpose="objective"><br />
<div class="ud-block-list-item-content"><span class="what-you-will-learn_objective-item___3wH9">Gitの根幹をなしている概念の理解 (Gitのデータ構造から仕組みを理解する)</span></div>
</div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-tight ud-block-list-item-neutral ud-text-sm" data-purpose="objective"><br />
<div class="ud-block-list-item-content"><span class="what-you-will-learn_objective-item___3wH9">Gitでのチーム開発の方法と一通りのコマンドの修得</span></div>
</div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-tight ud-block-list-item-neutral ud-text-sm" data-purpose="objective"><br />
<div class="ud-block-list-item-content"><span class="what-you-will-learn_objective-item___3wH9">誤った変更を元に戻せる</span></div>
</div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-tight ud-block-list-item-neutral ud-text-sm" data-purpose="objective"><br />
<div class="ud-block-list-item-content"><span class="what-you-will-learn_objective-item___3wH9">GitHubを用いたプルリクエスト・レビュー・マージの開発フロー</span></div>
</div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-tight ud-block-list-item-neutral ud-text-sm" data-purpose="objective"><br />
<div class="ud-block-list-item-content"><span class="what-you-will-learn_objective-item___3wH9">ブランチの作成とコンフリクトの解消がスムーズにできる</span></div>
</div>
</li>
</ul>
</div>
</div>
<div>
<div>
<h2 class="related-topics_title__ermUx ud-heading-xl">関連トピックを探索</h2>
</div>
</div>
<div class="">
<div data-testid="track-impression"><br />
<div class="course-includes_course-includes-body__ivulV" data-testid="course-includes"><br />
<h2 class="course-includes_course-heading__cSpoY ud-heading-xl">このコースの内容:</h2>
<div>
<div class="course-includes_double-list-container__O_ifi" data-testid="double-list-container"><br /><br /><br />
<ul class="ud-unstyled-list ud-block-list course-includes_incentives-list__5KuAA">
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-tight ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div data-testid="track-impression"><span class="ud-text-md">5.5時間のオンデマンドビデオ</span></div>
</div>
</div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-tight ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div data-testid="track-impression"><span class="ud-text-md">5個の記事</span></div>
</div>
</div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-tight ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div data-testid="track-impression"><span class="ud-text-md">9個のダウンロード可能なリソース</span></div>
</div>
</div>
</li>
</ul>
<br /><br />
<ul class="ud-unstyled-list ud-block-list course-includes_incentives-list__5KuAA">
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-tight ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div data-testid="track-impression"><span class="ud-text-md">モバイルとPCからアクセス</span></div>
</div>
</div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-tight ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div data-testid="track-impression"><span class="ud-text-md">字幕</span></div>
</div>
</div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-tight ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div data-testid="track-impression"><span class="ud-text-md">修了証明書</span></div>
</div>
</div>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="component-margin"><br />
<p> </p>
 <br />
<div data-testid="track-impression"><br />
<div data-purpose="course-curriculum"><br />
<h2 class="curriculum_curriculum-header__g8qYv ud-heading-xl" data-purpose="curriculum-header">コースの内容</h2>
<div class="curriculum_curriculum-sub-header__mqUpU"><br />
<div class="ud-text-sm" data-testid="curriculum-stats">セクションの数: 11 • レクチャーの数: 68 • 総時間: 5時間54分</div>
</div>
<div>
<div class="_panel_xk1nn_16 curriculum-section_panel__SwN4P _expanded_xk1nn_56"><br />
<div class="ud-btn ud-btn-medium ud-btn-link ud-heading-md ud-accordion-panel-toggler _panel-toggler_xk1nn_24 _outer-panel-toggler_xk1nn_37"><br />
<h3 class="ud-accordion-panel-heading curriculum-section_section-title-container__DraJr"> </h3>
</div>
<div id="_R_34uhrav5ubtqivb_" class="_content-wrapper_xk1nn_63" role="group" aria-labelledby="_R_34uhrav5ubtqivbH1_" aria-hidden="false"><br />
<div class="ud-accordion-panel-content _content_xk1nn_63"><br /><br /><br />
<ul class="ud-unstyled-list ud-block-list">
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">はじめに、コースについて</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">2:46</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">Gitってなんのために使う？</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">3:10</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">Gitの歴史</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">2:14</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">GitHubってなに？</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">3:28</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">コースを受講するにあたって</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">1:16</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
</ul>
</div>
</div>
</div>
<div class="_panel_xk1nn_16 curriculum-section_panel__SwN4P _expanded_xk1nn_56"><br />
<div class="ud-btn ud-btn-medium ud-btn-link ud-heading-md ud-accordion-panel-toggler _panel-toggler_xk1nn_24 _outer-panel-toggler_xk1nn_37"><br />
<h3 class="ud-accordion-panel-heading curriculum-section_section-title-container__DraJr"> </h3>
</div>
<div id="_R_54uhrav5ubtqivb_" class="_content-wrapper_xk1nn_63" role="group" aria-labelledby="_R_54uhrav5ubtqivbH1_" aria-hidden="false"><br />
<div class="ud-accordion-panel-content _content_xk1nn_63"><br /><br /><br />
<ul class="ud-unstyled-list ud-block-list">
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">Gitのインストール (Mac OS X)</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">2:26</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">Gitのインストール (Windows)</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">1:34</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">Atomのインストール (Mac OS X)</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">1:50</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">Atomのインストール (Windows)</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">2:30</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">GitHubの登録</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">1:41</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">Gitの初期設定</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">3:36</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">ターミナルの頻出コマンド</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">0:29</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
</ul>
</div>
</div>
</div>
<div class="_panel_xk1nn_16 curriculum-section_panel__SwN4P _expanded_xk1nn_56"><br />
<div class="ud-btn ud-btn-medium ud-btn-link ud-heading-md ud-accordion-panel-toggler _panel-toggler_xk1nn_24 _outer-panel-toggler_xk1nn_37"><br />
<h3 class="ud-accordion-panel-heading curriculum-section_section-title-container__DraJr"> </h3>
</div>
<div id="_R_74uhrav5ubtqivb_" class="_content-wrapper_xk1nn_63" role="group" aria-labelledby="_R_74uhrav5ubtqivbH1_" aria-hidden="false"><br />
<div class="ud-accordion-panel-content _content_xk1nn_63"><br /><br /><br />
<ul class="ud-unstyled-list ud-block-list">
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">Gitの基本的な仕組みを知ろう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">5:25</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">Gitの操作の流れを掴もう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">6:10</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">Gitってどのようにデータを管理しているの？１</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">6:34</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">Gitってどのようにデータを管理しているの？２</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">6:17</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">Gitのデータ管理の補足</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">9:56</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">Gitを始めよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">4:56</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">GitHub上にあるプロジェクトから始めよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">3:25</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">変更をステージに追加しよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">3:38</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">変更を記録しよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">5:32</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">現在の変更状況を確認しよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">5:13</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">何を変更したのかを確認しよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">5:21</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">変更履歴を確認しよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">3:57</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">ファイルの削除を記録しよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">6:21</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">ファイルの移動を記録しよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">4:09</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">GitHubにプッシュしよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">10:59</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">GitHubの画面を確認しよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">4:23</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">コマンドにエイリアスを付けよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">4:26</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">バージョン管理しないファイルは無視しよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">5:34</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">本章の復習</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
</ul>
</div>
</div>
</div>
<div class="_panel_xk1nn_16 curriculum-section_panel__SwN4P _expanded_xk1nn_56"><br />
<div class="ud-btn ud-btn-medium ud-btn-link ud-heading-md ud-accordion-panel-toggler _panel-toggler_xk1nn_24 _outer-panel-toggler_xk1nn_37"><br />
<h3 class="ud-accordion-panel-heading curriculum-section_section-title-container__DraJr"> </h3>
</div>
<div id="_R_94uhrav5ubtqivb_" class="_content-wrapper_xk1nn_63" role="group" aria-labelledby="_R_94uhrav5ubtqivbH1_" aria-hidden="false"><br />
<div class="ud-accordion-panel-content _content_xk1nn_63"><br /><br /><br />
<ul class="ud-unstyled-list ud-block-list">
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">ファイルへの変更を取り消そう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">3:54</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">ステージした変更を取り消そう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">7:08</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">直前のコミットをやり直そう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">6:56</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">本章の復習</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
</ul>
</div>
</div>
</div>
<div class="_panel_xk1nn_16 curriculum-section_panel__SwN4P _expanded_xk1nn_56"><br />
<div class="ud-btn ud-btn-medium ud-btn-link ud-heading-md ud-accordion-panel-toggler _panel-toggler_xk1nn_24 _outer-panel-toggler_xk1nn_37"><br />
<h3 class="ud-accordion-panel-heading curriculum-section_section-title-container__DraJr"> </h3>
</div>
<div id="_R_b4uhrav5ubtqivb_" class="_content-wrapper_xk1nn_63" role="group" aria-labelledby="_R_b4uhrav5ubtqivbH1_" aria-hidden="false"><br />
<div class="ud-accordion-panel-content _content_xk1nn_63"><br /><br /><br />
<ul class="ud-unstyled-list ud-block-list">
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">リモートの情報を確認しよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">2:59</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">リモートリポジトリを追加しよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">4:26</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">リモートから取得しよう (フェッチ編)</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">6:34</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">リモートから取得しよう (プル編)</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">3:49</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">フェッチとプルを使い分けよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">3:22</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">リモートの情報を詳しく知ろう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">1:40</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">リモートを変更・削除しよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">2:21</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">本章の復習</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
</ul>
</div>
</div>
</div>
<div class="_panel_xk1nn_16 curriculum-section_panel__SwN4P _expanded_xk1nn_56"><br />
<div class="ud-btn ud-btn-medium ud-btn-link ud-heading-md ud-accordion-panel-toggler _panel-toggler_xk1nn_24 _outer-panel-toggler_xk1nn_37"><br />
<h3 class="ud-accordion-panel-heading curriculum-section_section-title-container__DraJr"> </h3>
</div>
<div id="_R_d4uhrav5ubtqivb_" class="_content-wrapper_xk1nn_63" role="group" aria-labelledby="_R_d4uhrav5ubtqivbH1_" aria-hidden="false"><br />
<div class="ud-accordion-panel-content _content_xk1nn_63"><br /><br /><br />
<ul class="ud-unstyled-list ud-block-list">
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">ブランチって何？</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">3:10</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">ブランチの仕組みを知ろう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">13:27</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">新しいブランチを作成しよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">4:41</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">ブランチを切り替えよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">9:18</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">変更をマージしよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">13:14</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">コンフリクトを解決しよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">8:55</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">コンフリクトが起きないようにするには？</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">3:30</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">ブランチを変更・削除しよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">4:16</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">ブランチを利用した開発の流れ</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">3:46</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">リモートブランチって何？</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">4:23</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">本章の復習</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
</ul>
</div>
</div>
</div>
<div class="_panel_xk1nn_16 curriculum-section_panel__SwN4P _expanded_xk1nn_56"><br />
<div class="ud-btn ud-btn-medium ud-btn-link ud-heading-md ud-accordion-panel-toggler _panel-toggler_xk1nn_24 _outer-panel-toggler_xk1nn_37"><br />
<h3 class="ud-accordion-panel-heading curriculum-section_section-title-container__DraJr"> </h3>
</div>
<div id="_R_f4uhrav5ubtqivb_" class="_content-wrapper_xk1nn_63" role="group" aria-labelledby="_R_f4uhrav5ubtqivbH1_" aria-hidden="false"><br />
<div class="ud-accordion-panel-content _content_xk1nn_63"><br /><br /><br />
<ul class="ud-unstyled-list ud-block-list">
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">プルリクエストの流れ</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">16:13</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">GitHub Flowの流れ</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">5:28</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">GitHub Flowを実践しよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">5:45</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
</ul>
</div>
</div>
</div>
<div class="_panel_xk1nn_16 curriculum-section_panel__SwN4P _expanded_xk1nn_56"><br />
<div class="ud-btn ud-btn-medium ud-btn-link ud-heading-md ud-accordion-panel-toggler _panel-toggler_xk1nn_24 _outer-panel-toggler_xk1nn_37"><br />
<h3 class="ud-accordion-panel-heading curriculum-section_section-title-container__DraJr"> </h3>
</div>
<div id="_R_h4uhrav5ubtqivb_" class="_content-wrapper_xk1nn_63" role="group" aria-labelledby="_R_h4uhrav5ubtqivbH1_" aria-hidden="false"><br />
<div class="ud-accordion-panel-content _content_xk1nn_63"><br /><br /><br />
<ul class="ud-unstyled-list ud-block-list">
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">リベースする</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">15:07</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">リベースでしてはいけないこと</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">3:56</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">リベースとマージのどちらを使う？</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">6:48</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">プルの設定をリベースに変更する</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">5:44</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">リベースで履歴を書き換える①</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">13:11</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">リベースで履歴を書き換える②</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">14:58</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
</ul>
</div>
</div>
</div>
<div class="_panel_xk1nn_16 curriculum-section_panel__SwN4P _expanded_xk1nn_56"><br />
<div class="ud-btn ud-btn-medium ud-btn-link ud-heading-md ud-accordion-panel-toggler _panel-toggler_xk1nn_24 _outer-panel-toggler_xk1nn_37"><br />
<h3 class="ud-accordion-panel-heading curriculum-section_section-title-container__DraJr"> </h3>
</div>
<div id="_R_j4uhrav5ubtqivb_" class="_content-wrapper_xk1nn_63" role="group" aria-labelledby="_R_j4uhrav5ubtqivbH1_" aria-hidden="false"><br />
<div class="ud-accordion-panel-content _content_xk1nn_63"><br /><br /><br />
<ul class="ud-unstyled-list ud-block-list">
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">タグの一覧を表示する</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">2:32</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">タグを作成する</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">6:28</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">タグをリモートリポジトリに送信する</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">3:30</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
</ul>
</div>
</div>
</div>
<div class="_panel_xk1nn_16 curriculum-section_panel__SwN4P _expanded_xk1nn_56"><br />
<div class="ud-btn ud-btn-medium ud-btn-link ud-heading-md ud-accordion-panel-toggler _panel-toggler_xk1nn_24 _outer-panel-toggler_xk1nn_37"><br />
<h3 class="ud-accordion-panel-heading curriculum-section_section-title-container__DraJr"> </h3>
</div>
<div id="_R_l4uhrav5ubtqivb_" class="_content-wrapper_xk1nn_63" role="group" aria-labelledby="_R_l4uhrav5ubtqivbH1_" aria-hidden="false"><br />
<div class="ud-accordion-panel-content _content_xk1nn_63"><br /><br /><br />
<ul class="ud-unstyled-list ud-block-list">
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">作業を一時避難しよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">3:34</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">避難した作業を確認しよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">1:18</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">避難した作業を復元しよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">3:33</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content"><br />
<div>
<div class="curriculum-section_row__hliji"><span class="curriculum-section_course-lecture-title__OJIk4">避難した作業を削除しよう</span><span class="curriculum-section_hidden-on-mobile__qJo7A curriculum-section_item-content-summary__EhE20">2:46</span></div>
</div>
</div>
</div>
<div class="ud-color-scheme-dark course-preview-entry-point_wrapper__fau2V"></div>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="component-margin"><br />
<h2 class="title ud-heading-xl" data-purpose="requirements-title">要件</h2>
<br /><br />
<ul class="ud-unstyled-list ud-block-list">
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-tight ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content">インターネットに接続できるコンピュータ (Windows/Mac/Linux)</div>
</div>
</li>
<li>
<div class="ud-block-list-item ud-block-list-item-small ud-block-list-item-tight ud-block-list-item-neutral ud-text-sm"><br />
<div class="ud-block-list-item-content">基本的なパソコンの操作</div>
</div>
</li>
</ul>
</div>
<div class="ud-text-sm component-margin" data-purpose="course-description"><br />
<h2 class="ud-heading-xl course-description_description-header__wS19r" data-purpose="description-title">解説</h2>
<div class="_container_kolij_42" data-expanded="true"><br />
<div class="_content_kolij_32 _with-gradient_kolij_57"><br />
<div tabindex="0">
<div data-purpose="safely-set-inner-html:description:description" data-testid="safely-set-inner-html:description:description"><br />
<p> </p>
<strong>&#x2605;ゼロからプロのチーム開発の現場でGitを使いこなせるよう完全マスターします</strong>
<p> </p>
こちらのコースは未経験の方でも、プロのチーム開発の現場で必要とされるGitの全てを習得することを目的としたコースです。<br />
<p> </p>
<strong>&#x2605;次のようことを感じたことはないですか？</strong>
<p> </p>
「Gitって聞いたことあるけどよく分からない」<br />「マージするとコンフリクトが起きそうで怖い」<br />「エラーが出た時にどうしたらいいか分からない」<br />「コマンドが色々あって分かりにくい」<br />「リベースって使っちゃダメって言われたけどなんで？」<br />「データが壊れそう」<br />
<p> </p>
Gitが分かりづらく感じたり怖く感じたりするのは、そのコマンドの裏側で何が起こっているかがイメージできないからです。<br />
<p> </p>
こちらのコースでは、まず<strong>Gitの仕組みを図解でしっかりと理解</strong>していきます。<br />Gitってそもそも何のためにあるのか、コミットした時にどういう風にデータを保存しているのか、マージやリベースした時に何が起こっているのか、ブランチってどういう風に実現しているのか。<br />そういうことを仕組みから理解することで、Gitの<strong>分かりづらいコマンドを自信を持って使える</strong>ようになります。なにより、Gitを使う上でのハードルである<strong>ステージやブランチ、HEADの概念を完全に理解</strong>することができます。<br />
<p> </p>
その上で、実際にプロジェクトを作成しGitHubを用いながら、コマンドを実行して学んでいきます。<br />スキルを身につける上で、<strong>実際に作りながら学んでいく</strong>ことはとても大切です。理解したものを実践することで本当に使えるスキルを身に付けていきます。<br />
<p> </p>
<strong>&#x2605;こちらのコースで学ぶこと</strong>
<p> </p>
Gitにはたくさんのコマンドとオプションがあります。しかしこの中には、特に重要でないものもたくさんあります。<br />
<p> </p>
こちらのコースでは、チーム開発で必要とされる知識に重点を置いて、その部分を深く掘り下げて学んでいきます。そのことによって、非常に効率的に、そして応用の効く形で実践的スキルを身に付けます。<br />
<p> </p>
<strong>【GitとGitHubってなに？】</strong>では、GitとGitHubがそもそも何のためにあるのかということやバージョン管理の仕組みについて学んでいきます。<br />
<p> </p>
<strong>【インストールと初期設定をしよう】</strong>で次に、GitとGitHubのインストールと設定を行います。今回はGitの作業に、ターミナルとAtomエディタを使用します。ターミナルを使用することで、Gitの本来持っている力を100%引き出すことができます (エディタはAtomでなくても大丈夫です)。<br />
<p> </p>
<strong>【Gitの仕組みと基本的なコマンド】</strong>から、Gitのコマンドを具体的に学んでいきます。ここではステージやコミットの裏側で何が起きているのか、Gitはどのようにデータを記録しているのかということについて紹介します。その上でGitで作業する上で必須のコマンドを実践しながら身に付けます。<br />
<p> </p>
<strong>【変更を元に戻そう】</strong>では、間違って作業してしまったときに元に戻すやり方について紹介します。この内容を身に付けることで、何かあっても元に戻すことができるようになります。<br />
<p> </p>
<strong>【GitHubとやり取りしよう】</strong>でいよいよ、GitHubを利用した開発方法について学びます。フェッチとプルの使い分けなど、区別がつきにくいところもしっかり学んでいきます。<br />
<p> </p>
<strong>【ブランチとマージを使いこなそう】</strong>では、Gitの中でも分かりにくい、ブランチやマージの仕組みについて学びます。仕組みを図解した上で実践していきますので、今までよくわからなかった方でも、ブランチやマージを使いこなすことができるようになります。コンフリクトが起きてももう怖くありません。<br />
<p> </p>
<strong>【GitHubを利用した開発手順の流れ】</strong>では、GitHub Flowを利用した実践的チーム開発を行います。GitとGitHubを利用して、開発チームが最大限の力を発揮するための開発フローを紹介します。特にGitを利用することに慣れていないチームは、この内容を参考にして開発手順を構築することをおすすめします。<br />
<p> </p>
<strong>【リベースで変更履歴を修正しよう 】</strong>では、怖いと思われがちなリベースについて学びます。リベースを用いるとGitの変更履歴をきれいにすることができます。変更履歴をきれいにしつつ、リベースで事故らない方法を身に付けます。<br />
<p> </p>
<strong>【タグ付けしよう】</strong>では、タグの利用方法について学びます。タグをリリースポイントに利用することで、いつ何をリリースしたかが分かり、バグが起きた時の切り戻しも楽になります。<br />
<p> </p>
<strong>【スタッシュで作業を一次避難しよう】</strong>では、変更を一次避難させるスタッシュについて学びます。作業が途中でコミットしたくないけど別のブランチで作業しないといけない、そういう時に作業を一時避難できるようになります。<br />
<p> </p>
</div>
<div class="course-description_audience___d2an" data-purpose="target-audience"><br />
<h2 class="ud-heading-xl course-description_audience-title__5YHFk">このコースの対象受講者:</h2>
<br /><br />
<ul class="course-description_audience-list__i4eax">
<li>Gitやバージョン管理に興味があるエンジニアやデザイナー</li>
<li>Gitをされたことがないけどこれから使おうとされている方（インターン生も！）</li>
<li>commitやpush、pullはできるけどもっとGitを使いこなしたい方</li>
<li>Gitを用いてのチーム開発に携わるマネージャーやディレクター</li>
</ul>
</div>
</div>
</div>
</div>
</div>
ーーーーー　　　　　この内容のそれぞれについて、実行コマンドの具体例や業界話を交えながら解説してください。<br />
<p> </p>
</div>
</div>
<div class="_11d6b3a"><br />
<div class="_425ea0b"><br />
<div class="ds-flex _78e0558 _0bbda35"><br />
<div class="db183363 ds-icon-button ds-icon-button--m ds-icon-button--sizing-container" role="button" aria-disabled="false" tabindex="0"><br />
<div class="ds-icon-button__hover-bg"></div>
<div class="ds-focus-ring"></div>
</div>
</div>
</div>
</div>
</div>
<div class="_4f9bf79 d7dc56a8 _43c05b5"><br />
<div class="ds-message _63c77b1"><br />
<div class="ds-markdown"><br />
<h1 style="line-height: 2.3rem; margin-bottom: 1em;">GitとGitHub完全マスタリング講座 - 実行コマンドと業界話で解説</h1>
<h2>1. Gitの根幹概念とデータ構造</h2>
<h3>実行コマンド例:</h3>
<div class="md-code-block md-code-block-dark"><br />
<div class="md-code-block-banner-wrap"><br />
<div class="md-code-block-banner md-code-block-banner-lite"><br />
<div class="_121d384"><br />
<div class="d2a24f03"><span class="d813de27">bash</span></div>
</div>
</div>
</div>
<pre><span class="token comment"># Gitリポジトリの内部構造を確認</span>
<span class="token function">ls</span> <span class="token parameter variable">-la</span> .git/<br />
<span class="token function">find</span> .git/objects <span class="token parameter variable">-type</span> f <span class="token operator">|</span> <span class="token function">head</span> <span class="token parameter variable">-10</span></pre>
<p> </p>
<pre><span class="token comment"># コミットオブジェクトの中身を見る</span>
<span class="token function">git</span> cat-file <span class="token parameter variable">-p</span> <span class="token punctuation">[</span>コミットハッシュ<span class="token punctuation">]</span></pre>
<p> </p>
<pre><span class="token comment"># ツリーオブジェクトの中身を見る</span>
<span class="token function">git</span> ls-tree <span class="token punctuation">[</span>ツリーハッシュ<span class="token punctuation">]</span></pre>
</div>
<h3>業界話:</h3>
<p class="ds-markdown-paragraph">「Gitのデータ構造は、キーバリューストアと似ています。各コミットは40文字のSHA-1ハッシュで管理され、これがGitの強力な履歴追跡機能の基盤です。業界では『コミットは消えない』と言われますが、実際には.git/objects内の圧縮ファイルとして永続化されています。LinkedInやGoogleなどの大規模プロジェクトでも、この構造がスケーラビリティを実現しています」</p>
<p> </p>
<p> </p>
<hr />
<p> </p>
<h2>2. 基本的なGitワークフロー</h2>
<h3>実行コマンド例:</h3>
<div class="md-code-block md-code-block-dark"><br />
<div class="md-code-block-banner-wrap"><br />
<div class="md-code-block-banner md-code-block-banner-lite"><br />
<div class="_121d384"><br />
<div class="d2a24f03"><span class="d813de27">bash</span></div>
</div>
</div>
</div>
<pre><span class="token comment"># 典型的な1日の開発サイクル</span>
<span class="token function">git</span> status                     <span class="token comment"># 現在の状態確認</span>
<span class="token function">git</span> <span class="token function">add</span> <span class="token parameter variable">-p</span>                     <span class="token comment"># 変更を部分的にステージング</span>
<span class="token function">git</span> commit <span class="token parameter variable">-m</span> <span class="token string">"feat: ログイン機能実装"</span>
<span class="token function">git</span> pull <span class="token parameter variable">--rebase</span> origin main  <span class="token comment"># リベースしながら最新化</span>
<span class="token function">git</span> push origin feature/login</pre>
</div>
<h3>業界話:</h3>
<p class="ds-markdown-paragraph">「スタートアップでは、小さなコミットを頻繁に行う『小さなコミット主義』が主流です。これはコードレビューを容易にし、問題発生時の切り分けを簡単にします。GitHubが2022年に公開したデータでは、成功するプロジェクトほどコミットサイズが小さく、頻度が高い傾向があります」</p>
<p> </p>
<p> </p>
<hr />
<p> </p>
<h2>3. 誤った変更の復元方法</h2>
<h3>実行コマンド例:</h3>
<div class="md-code-block md-code-block-dark"><br />
<div class="md-code-block-banner-wrap"><br />
<div class="md-code-block-banner md-code-block-banner-lite"><br />
<div class="_121d384"><br />
<div class="d2a24f03"><span class="d813de27">bash</span></div>
</div>
</div>
</div>
<pre><span class="token comment"># ケース別の復元方法</span>
<span class="token function">git</span> checkout -- file.txt        <span class="token comment"># 変更を破棄</span>
<span class="token function">git</span> reset HEAD file.txt         <span class="token comment"># ステージング解除</span>
<span class="token function">git</span> commit <span class="token parameter variable">--amend</span>              <span class="token comment"># 直前コミット修正</span>
<span class="token function">git</span> revert abc1234              <span class="token comment"># 過去のコミット取り消し</span>
<span class="token function">git</span> reflog                      <span class="token comment"># 「全ての」操作履歴確認</span></pre>
</div>
<h3>業界話:</h3>
<p class="ds-markdown-paragraph">「Netflixの開発チームでは、『git revert』を推奨しています。なぜなら履歴を書き換えずに安全に変更を取り消せるからです。一方、『git reset』はローカルのみで使用し、既に共有した履歴は変更しないのが業界の暗黙ルールです」</p>
<p> </p>
<p> </p>
<hr />
<p> </p>
<h2>4. GitHub開発フロー</h2>
<h3>実行コマンド例:</h3>
<div class="md-code-block md-code-block-dark"><br />
<div class="md-code-block-banner-wrap"><br />
<div class="md-code-block-banner md-code-block-banner-lite"><br />
<div class="_121d384"><br />
<div class="d2a24f03"><span class="d813de27">bash</span></div>
</div>
</div>
</div>
<pre><span class="token comment"># プルリクエストベースの開発</span>
<span class="token function">git</span> checkout <span class="token parameter variable">-b</span> feature/new-api<br />
<span class="token comment"># 開発作業...</span>
<span class="token function">git</span> push <span class="token parameter variable">-u</span> origin feature/new-api<br />
<span class="token comment"># GitHubでPR作成 -&gt; レビュー -&gt; 修正 -&gt; マージ</span></pre>
<p> </p>
<pre><span class="token comment"># コードレビュー後の更新</span>
<span class="token function">git</span> <span class="token function">add</span> <span class="token builtin class-name">.</span>
<span class="token function">git</span> commit <span class="token parameter variable">--amend</span> --no-edit<br />
<span class="token function">git</span> push <span class="token parameter variable">-f</span> origin feature/new-api</pre>
</div>
<h3>業界話:</h3>
<p class="ds-markdown-paragraph">「Microsoftの大規模プロジェクトでは、全PRに最低2人の承認が必要です。GitHubのProtected BranchとRequired Reviewsを設定することで、品質担保を自動化しています。また、『Squash and Merge』 vs 『Merge Commit』の議論は今でも続いており、プロジェクトの文化によって選択されています」</p>
<p> </p>
<p> </p>
<hr />
<p> </p>
<h2>5. ブランチ戦略とコンフリクト解決</h2>
<h3>実行コマンド例:</h3>
<div class="md-code-block md-code-block-dark"><br />
<div class="md-code-block-banner-wrap"><br />
<div class="md-code-block-banner md-code-block-banner-lite"><br />
<div class="_121d384"><br />
<div class="d2a24f03"><span class="d813de27">bash</span></div>
</div>
</div>
</div>
<pre><span class="token comment"># ブランチ管理のベストプラクティス</span>
<span class="token function">git</span> branch <span class="token parameter variable">-a</span>                  <span class="token comment"># 全ブランチ表示</span>
<span class="token function">git</span> branch <span class="token parameter variable">--merged</span>            <span class="token comment"># マージ済みブランチ確認</span>
<span class="token function">git</span> branch <span class="token parameter variable">-d</span> old-feature      <span class="token comment"># 不要ブランチ削除</span></pre>
<p> </p>
<pre><span class="token comment"># コンフリクト解決フロー</span>
<span class="token function">git</span> merge main<br />
<span class="token comment"># コンフリクト発生...</span>
<span class="token function">git</span> status                     <span class="token comment"># コンフリクトファイル確認</span>
<span class="token comment"># ファイルを編集して解決...</span>
<span class="token function">git</span> <span class="token function">add</span> resolved-file.txt<br />
<span class="token function">git</span> merge <span class="token parameter variable">--continue</span></pre>
</div>
<h3>業界話:</h3>
<p class="ds-markdown-paragraph">「Googleでは、『trunk-based development』が主流で、すべての開発者がmainブランチに対して直接作業します。これには高度なCI/CDとテストカバレッジが必要です。日本ではGit Flowが人気ですが、海外ではGitHub FlowやGitLab Flowが増えてきています」</p>
<p> </p>
<p> </p>
<hr />
<p> </p>
<h2>6. 実践的なチーム開発コマンド</h2>
<h3>実行コマンド例:</h3>
<div class="md-code-block md-code-block-dark"><br />
<div class="md-code-block-banner-wrap"><br />
<div class="md-code-block-banner md-code-block-banner-lite"><br />
<div class="_121d384"><br />
<div class="d2a24f03"><span class="d813de27">bash</span></div>
</div>
</div>
</div>
<pre><span class="token comment"># チーム開発便利コマンド</span>
<span class="token function">git</span> log <span class="token parameter variable">--oneline</span> <span class="token parameter variable">--graph</span> <span class="token parameter variable">--all</span> <span class="token parameter variable">-20</span>  <span class="token comment"># 視覚的な履歴確認</span>
<span class="token function">git</span> stash                            <span class="token comment"># 一時避難</span>
<span class="token function">git</span> stash pop                        <span class="token comment"># 復元</span>
<span class="token function">git</span> cherry-pick abc123               <span class="token comment"># 特定コミットのみ適用</span>
<span class="token function">git</span> bisect start                     <span class="token comment"># バグ検出の二分探索</span></pre>
</div>
<h3>エイリアス設定例 (~/.gitconfig):</h3>
<div class="md-code-block md-code-block-dark"><br />
<div class="md-code-block-banner-wrap"><br />
<div class="md-code-block-banner md-code-block-banner-lite"><br />
<div class="_121d384"><br />
<div class="d2a24f03"><span class="d813de27">gitconfig</span></div>
</div>
</div>
</div>
<pre>[alias]<br />
    co = checkout<br />
    br = branch<br />
    ci = commit<br />
    st = status<br />
    lg = log --oneline --graph --all -20<br />
    unstage = reset HEAD --<br />
    last = log -1 HEAD</pre>
</div>
<p> </p>
<hr />
<p> </p>
<h2>7. 業界でよく使われる.gitignore</h2>
<div class="md-code-block md-code-block-dark"><br />
<div class="md-code-block-banner-wrap"><br />
<div class="md-code-block-banner md-code-block-banner-lite"><br />
<div class="_121d384"><br />
<div class="d2a24f03"><span class="d813de27">gitignore</span></div>
</div>
</div>
</div>
<pre># プロジェクト固有の無視設定<br />
.env<br />
.env.local<br />
*.log<br />
.DS_Store</pre>
<p> </p>
<pre># 言語/フレームワーク固有<br />
# Node.js<br />
node_modules/<br />
npm-debug.log*</pre>
<p> </p>
<pre># Python<br />
__pycache__/<br />
*.pyc</pre>
</div>
<h3>業界話:</h3>
<p class="ds-markdown-paragraph">「.gitignoreはプロジェクトの最初にしっかり設定することが重要です。特に.envファイルなどの機密情報を誤ってコミットする事故（『GitHub Leak』）は年間数千件発生しています。GitHubにはデフォルトの.gitignoreテンプレートが豊富に用意されています」</p>
<p> </p>
<p> </p>
<hr />
<p> </p>
<h2>8. リベースの実践的使い方</h2>
<h3>実行コマンド例:</h3>
<div class="md-code-block md-code-block-dark"><br />
<div class="md-code-block-banner-wrap"><br />
<div class="md-code-block-banner md-code-block-banner-lite"><br />
<div class="_121d384"><br />
<div class="d2a24f03"><span class="d813de27">bash</span></div>
</div>
</div>
</div>
<pre><span class="token comment"># 安全なリベース手順</span>
<span class="token function">git</span> fetch origin<br />
<span class="token function">git</span> rebase <span class="token parameter variable">-i</span> origin/main      <span class="token comment"># インタラクティブリベース</span></pre>
<p> </p>
<pre><span class="token comment"># 危険な操作（共有ブランチでは絶対にNG）</span>
<span class="token function">git</span> rebase <span class="token parameter variable">-i</span> HEAD~3           <span class="token comment"># ローカル履歴整理</span>
<span class="token function">git</span> push <span class="token parameter variable">-f</span>                    <span class="token comment"># 強制プッシュ（注意！）</span></pre>
</div>
<h3>業界話:</h3>
<p class="ds-markdown-paragraph">「Airbnbのコーディング規約では、『共有ブランチではリベース禁止、プライベートブランチでは推奨』と明確に分けています。リベースで履歴をきれいに保つ一方、チームメンバーが混乱しないよう配慮が必要です」</p>
<p> </p>
<p> </p>
<hr />
<p> </p>
<h2>プロの現場で生きる追加Tips:</h2>
<ol start="1">
<li>
<p class="ds-markdown-paragraph"><strong>コミットメッセージ規約</strong>: Conventional Commitsが業界標準に</p>
<p> </p>
<div class="md-code-block md-code-block-dark"><br />
<div class="md-code-block-banner-wrap"><br />
<div class="md-code-block-banner md-code-block-banner-lite"><br />
<div class="_121d384"><br />
<div class="d2a24f03"><span class="d813de27">text</span></div>
</div>
</div>
</div>
<pre>feat: 新機能追加<br />
fix: バグ修正<br />
docs: ドキュメント変更<br />
style: コードスタイル変更<br />
refactor: リファクタリング</pre>
</div>
</li>
<li>
<p class="ds-markdown-paragraph"><strong>フックスクリプト活用</strong>:</p>
<p> </p>
<div class="md-code-block md-code-block-dark"><br />
<div class="md-code-block-banner-wrap"><br />
<div class="md-code-block-banner md-code-block-banner-lite"><br />
<div class="_121d384"><br />
<div class="d2a24f03"><span class="d813de27">bash</span></div>
</div>
</div>
</div>
<pre><span class="token comment"># .git/hooks/pre-commitで自動テスト</span>
<span class="token function">npm</span> <span class="token builtin class-name">test</span>
<span class="token comment"># 失敗したらコミット中止</span></pre>
</div>
</li>
<li>
<p class="ds-markdown-paragraph"><strong>コードオーナー設定</strong>: GitHubのCODEOWNERSファイルでレビュアー自動割当</p>
</li>
<li>
<p class="ds-markdown-paragraph"><strong>セマンティックバージョニング</strong>: タグ付けを活用したリリース管理</p>
<p> </p>
<div class="md-code-block md-code-block-dark"><br />
<div class="md-code-block-banner-wrap"><br />
<div class="md-code-block-banner md-code-block-banner-lite"><br />
<div class="_121d384"><br />
<div class="d2a24f03"><span class="d813de27">bash</span></div>
</div>
</div>
</div>
<pre><span class="token function">git</span> tag <span class="token parameter variable">-a</span> v1.2.3 <span class="token parameter variable">-m</span> <span class="token string">"リリースバージョン1.2.3"</span>
<span class="token function">git</span> push <span class="token parameter variable">--tags</span></pre>
</div>
</li>
</ol>
<p class="ds-markdown-paragraph">このコースの内容を実践すれば、中小企業からFAANG（Meta, Amazon, Apple, Netflix, Google）レベルの開発現場でも通用するGitスキルが身につきます。特に重要なのは「なぜそのコマンドを使うのか」を理解することです。コマンドを暗記するのではなく、Gitのデータ構造とワークフローを理解すれば、あらゆる状況に対応できるようになります。</p>
<p> </p>
</div>
</div>
<div class="ds-theme"></div>
<div class="ds-flex _0a3d93b"><br />
<div class="ds-flex _965abe9 _54866f7"><br />
<div class="db183363 ds-icon-button ds-icon-button--m ds-icon-button--sizing-container" role="button" aria-disabled="false" tabindex="0"><br />
<div class="ds-focus-ring"></div>
</div>
<div class="db183363 ds-icon-button ds-icon-button--m ds-icon-button--sizing-container" role="button" aria-disabled="false" tabindex="0"><br />
<div class="ds-icon-button__hover-bg"><br />
<div data-test-render-count="1"><br />
<div class="group">
<div class="group relative relative pb-3" data-is-streaming="false"><br />
<div class="font-claude-response relative leading-[1.65rem] [&amp;_pre&gt;div]:bg-bg-000/50 [&amp;_pre&gt;div]:border-0.5 [&amp;_pre&gt;div]:border-border-400 [&amp;_.ignore-pre-bg&gt;div]:bg-transparent [&amp;_.standard-markdown_:is(p,blockquote,h1,h2,h3,h4,h5,h6)]:pl-2 [&amp;_.standard-markdown_:is(p,blockquote,ul,ol,h1,h2,h3,h4,h5,h6)]:pr-8 [&amp;_.progressive-markdown_:is(p,blockquote,h1,h2,h3,h4,h5,h6)]:pl-2 [&amp;_.progressive-markdown_:is(p,blockquote,ul,ol,h1,h2,h3,h4,h5,h6)]:pr-8"><br />
<div>
<div class="standard-markdown grid-cols-1 grid gap-4 [&amp;_&gt;_*]:min-w-0 standard-markdown"><br />
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]">このGitコース、実務で本当に役立つ内容が詰まっていますね！各セクションについて、実践的な視点で解説していきます。</p>
<p> </p>
<h2 class="text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold">&#x1F4DA; コース全体の構成と実務での重要性</h2>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]">このコースは「仕組みの理解」→「基本操作」→「チーム開発」という理想的な学習フローになっています。多くの開発者が「コマンドだけ覚える」アプローチで挫折するのに対し、このコースは根本から理解できる設計です。</p>
<p> </p>
<p> </p>
<hr class="border-border-200 border-t-0.5 my-3 mx-1.5" /><br />
<p> </p>
<h2 class="text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold">&#x1F3AF; 各セクションの詳細解説</h2>
<h3 class="text-text-100 mt-2 -mb-1 text-base font-bold">1. GitとGitHubの基礎理解</h3>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>なぜ重要か：</strong> 「なぜこのツールを使うのか」を理解していないと、トラブル時に対応できません。</p>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>業界の実態：</strong></p>
<p> </p>
<br /><br />
<ul class="[li_&amp;]:mb-0 [li_&amp;]:mt-1.5 [li_&amp;]:gap-1.5 [&amp;:not(:last-child)_ul]:pb-1 [&amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-2 pl-8 mb-3">
<li class="whitespace-normal break-words pl-2">スタートアップでも大企業でも、Git未使用の開発現場はほぼゼロ</li>
<li class="whitespace-normal break-words pl-2">「Gitできます」は面接での必須スキル</li>
<li class="whitespace-normal break-words pl-2">バージョン管理なしの開発は「セーブ機能のないゲーム」と同じ</li>
</ul>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>実務エピソード：</strong> あるプロジェクトで、新人がバージョン管理せず「最終版.docx」「最終版2.docx」「本当の最終版.docx」というファイルを作り、どれが最新か分からなくなった事件がありました。Gitがあれば履歴が全て残ります。</p>
<p> </p>
<p> </p>
<hr class="border-border-200 border-t-0.5 my-3 mx-1.5" /><br />
<p> </p>
<h3 class="text-text-100 mt-2 -mb-1 text-base font-bold">2. インストールと初期設定</h3>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>重要なコマンド例：</strong></p>
<p> </p>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">bash</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><span class="token"># Gitの初期設定（最初に必ず実行）</span>
<span class="token">git</span> config --global user.name <span class="token">"Yamada Taro"</span>
<span class="token">git</span> config --global user.email <span class="token">"yamada@example.com"</span></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># エディタの設定（コミットメッセージ編集用）</span>
<span class="token">git</span> config --global core.editor <span class="token">"vim"</span></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># 改行コード設定（Windows特有の問題を回避）</span>
<span class="token">git</span> config --global core.autocrlf <span class="token">true</span>  <span class="token"># Windows</span>
<span class="token">git</span> config --global core.autocrlf input <span class="token"># Mac/Linux</span>
``<span class="token">`</span></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
**業界の慣習：**<br />
- 会社用と個人用でメールアドレスを分ける開発者が多い<br />
- グローバル設定とプロジェクト別設定を使い分ける<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
---<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token">### 3. Gitのデータ構造と仕組み</span></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
**コアコンセプト：**<br />
Gitは「スナップショット」でデータを保存します。差分ではなく、その時点のファイル全体の状態を記録。<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
**実際の内部構造：**<br />
<span class="token">`</span>``<br />
.git/<br />
├── objects/     <span class="token"># 実際のデータ（blob, tree, commit）</span>
├── refs/        <span class="token"># ブランチやタグの参照</span>
├── HEAD         <span class="token"># 今いる場所を指すポインタ</span>
└── index        <span class="token"># ステージングエリア</span></code></pre>
</div>
</div>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>現場での理解度チェック：</strong> 「コミットって何？」と聞かれて「変更の保存」とだけ答える人は浅い理解。正解は「プロジェクト全体のスナップショットへの参照を持つオブジェクト」です。</p>
<p> </p>
<p> </p>
<hr class="border-border-200 border-t-0.5 my-3 mx-1.5" /><br />
<p> </p>
<h3 class="text-text-100 mt-2 -mb-1 text-base font-bold">4. 基本的なコマンド操作</h3>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>頻出コマンドの実例：</strong></p>
<p> </p>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">bash</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><span class="token"># リポジトリの初期化</span>
<span class="token">git</span> init<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># GitHubからクローン</span>
<span class="token">git</span> clone https://github.com/username/repo.git<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># ステージングに追加</span>
<span class="token">git</span> <span class="token">add</span> index.html<br />
<span class="token">git</span> <span class="token">add</span> <span class="token">.</span>  <span class="token"># 全ての変更を追加</span></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># コミット</span>
<span class="token">git</span> commit -m <span class="token">"Add login feature"</span></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># 状態確認（最も頻繁に使う）</span>
<span class="token">git</span> status<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># 差分確認</span>
<span class="token">git</span> <span class="token">diff</span>              <span class="token"># ワーキングツリー vs ステージ</span>
<span class="token">git</span> <span class="token">diff</span> --staged     <span class="token"># ステージ vs 最新コミット</span></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># ログ確認</span>
<span class="token">git</span> log<br />
<span class="token">git</span> log --oneline --graph --all  <span class="token"># 視覚的に確認</span></code></pre>
</div>
</div>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>実務のコミットメッセージ例：</strong></p>
<p> </p>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">bash</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><span class="token"># 悪い例</span>
<span class="token">git</span> commit -m <span class="token">"fix"</span>
<span class="token">git</span> commit -m <span class="token">"update"</span></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># 良い例</span>
<span class="token">git</span> commit -m <span class="token">"Fix login button alignment on mobile"</span>
<span class="token">git</span> commit -m <span class="token">"Add email validation to signup form"</span>
<span class="token">git</span> commit -m <span class="token">"Refactor: Extract user authentication logic"</span></code></pre>
</div>
</div>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>プロの小技：</strong></p>
<p> </p>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">bash</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><span class="token"># エイリアス設定で効率化</span>
<span class="token">git</span> config --global alias.st status<br />
<span class="token">git</span> config --global alias.co checkout<br />
<span class="token">git</span> config --global alias.br branch<br />
<span class="token">git</span> config --global alias.ci commit<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># 使用例</span>
<span class="token">git</span> st  <span class="token"># git status と同じ</span></code></pre>
</div>
</div>
<p> </p>
<hr class="border-border-200 border-t-0.5 my-3 mx-1.5" /><br />
<p> </p>
<h3 class="text-text-100 mt-2 -mb-1 text-base font-bold">5. 変更の取り消し</h3>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>危険度別のコマンド：</strong></p>
<p> </p>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">bash</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><span class="token"># 【安全】ワーキングツリーの変更を取り消し</span>
<span class="token">git</span> checkout -- file.txt<br />
<span class="token"># または（新しい記法）</span>
<span class="token">git</span> restore file.txt<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># 【安全】ステージングを取り消し（変更は残る）</span>
<span class="token">git</span> reset HEAD file.txt<br />
<span class="token"># または</span>
<span class="token">git</span> restore --staged file.txt<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># 【注意】直前のコミットをやり直し</span>
<span class="token">git</span> commit --amend -m <span class="token">"Correct commit message"</span></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># 【危険】コミットを取り消す</span>
<span class="token">git</span> reset --soft HEAD^   <span class="token"># コミットだけ取り消し（ステージは残る）</span>
<span class="token">git</span> reset --mixed HEAD^  <span class="token"># デフォルト、ステージも取り消し</span>
<span class="token">git</span> reset --hard HEAD^   <span class="token"># 全て削除（危険！）</span></code></pre>
</div>
</div>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>実務の失敗談：</strong> <code class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]">git reset --hard</code> を実行後「あ、あのファイル必要だった…」となるケースが頻発。こういう時は <code class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]">git reflog</code> で救出できます。</p>
<p> </p>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">bash</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><span class="token"># 削除したコミットを探す</span>
<span class="token">git</span> reflog<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># 特定のコミットに戻る</span>
<span class="token">git</span> reset --hard HEAD@<span class="token">{</span><span class="token">2</span><span class="token">}</span></code></pre>
</div>
</div>
<p> </p>
<hr class="border-border-200 border-t-0.5 my-3 mx-1.5" /><br />
<p> </p>
<h3 class="text-text-100 mt-2 -mb-1 text-base font-bold">6. リモートリポジトリとの連携</h3>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>実践コマンド：</strong></p>
<p> </p>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">bash</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><span class="token"># リモート確認</span>
<span class="token">git</span> remote -v<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># リモート追加</span>
<span class="token">git</span> remote <span class="token">add</span> origin https://github.com/user/repo.git<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># プッシュ（初回）</span>
<span class="token">git</span> push -u origin main<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># フェッチ（リモートの情報を取得、マージはしない）</span>
<span class="token">git</span> fetch origin<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># プル（フェッチ + マージ）</span>
<span class="token">git</span> pull origin main<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># リモートブランチの確認</span>
<span class="token">git</span> branch -r<br />
<span class="token">git</span> branch -a  <span class="token"># ローカル + リモート全て</span></code></pre>
</div>
</div>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>フェッチ vs プルの使い分け：</strong></p>
<p> </p>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">bash</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><span class="token"># 安全重視の開発フロー</span>
<span class="token">git</span> fetch origin          <span class="token"># まず情報だけ取得</span>
<span class="token">git</span> log origin/main       <span class="token"># リモートの変更を確認</span>
<span class="token">git</span> merge origin/main     <span class="token"># 問題なければマージ</span></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># 素早い開発（チーム内で調整済みの場合）</span>
<span class="token">git</span> pull origin main      <span class="token"># 一気に取得してマージ</span></code></pre>
</div>
</div>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>実務での落とし穴：</strong> いきなり <code class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]">git pull</code> すると、予期せぬ変更が入ってローカル作業が壊れることも。重要な作業中は <code class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]">fetch</code> → 確認 → <code class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]">merge</code> が安全です。</p>
<p> </p>
<p> </p>
<hr class="border-border-200 border-t-0.5 my-3 mx-1.5" /><br />
<p> </p>
<h3 class="text-text-100 mt-2 -mb-1 text-base font-bold">7. ブランチとマージ</h3>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>ブランチ戦略の実例：</strong></p>
<p> </p>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">bash</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><span class="token"># 新機能開発用ブランチ作成</span>
<span class="token">git</span> branch feature/user-profile<br />
<span class="token">git</span> checkout feature/user-profile<br />
<span class="token"># または一行で</span>
<span class="token">git</span> checkout -b feature/user-profile<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># 作業後、mainに戻ってマージ</span>
<span class="token">git</span> checkout main<br />
<span class="token">git</span> merge feature/user-profile<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># ブランチ削除</span>
<span class="token">git</span> branch -d feature/user-profile  <span class="token"># マージ済みのみ削除</span>
<span class="token">git</span> branch -D feature/user-profile  <span class="token"># 強制削除</span></code></pre>
</div>
</div>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>コンフリクト解消の実例：</strong></p>
<p> </p>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">bash</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><span class="token"># マージ時にコンフリクト発生</span>
<span class="token">git</span> merge feature/payment<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># ファイルを開くと以下のような表示</span>
<span class="token">&lt;&lt;&lt;</span><span class="token">&lt;&lt;&lt;</span><span class="token">&lt;</span> HEAD<br />
const price <span class="token">=</span> <span class="token">1000</span><span class="token">;</span>
<span class="token">==</span><span class="token">==</span><span class="token">==</span><span class="token">=</span>
const price <span class="token">=</span> <span class="token">1500</span><span class="token">;</span>
<span class="token">&gt;&gt;</span><span class="token">&gt;&gt;</span><span class="token">&gt;&gt;</span><span class="token">&gt;</span> feature/payment<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># 手動で修正後</span>
const price <span class="token">=</span> <span class="token">1500</span><span class="token">;</span>  <span class="token"># 正しい値を選択</span></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># 解消を完了</span>
<span class="token">git</span> <span class="token">add</span> payment.js<br />
<span class="token">git</span> commit -m <span class="token">"Resolve merge conflict in payment price"</span></code></pre>
</div>
</div>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>業界のブランチ命名規則：</strong></p>
<p> </p>
<br /><br />
<ul class="[li_&amp;]:mb-0 [li_&amp;]:mt-1.5 [li_&amp;]:gap-1.5 [&amp;:not(:last-child)_ul]:pb-1 [&amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-2 pl-8 mb-3">
<li class="whitespace-normal break-words pl-2"><code class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]">feature/</code> - 新機能</li>
<li class="whitespace-normal break-words pl-2"><code class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]">bugfix/</code> - バグ修正</li>
<li class="whitespace-normal break-words pl-2"><code class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]">hotfix/</code> - 緊急修正</li>
<li class="whitespace-normal break-words pl-2"><code class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]">release/</code> - リリース準備</li>
</ul>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]">例：<code class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]">feature/add-payment-system</code>、<code class="bg-text-200/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]">bugfix/fix-login-error</code></p>
<p> </p>
<p> </p>
<hr class="border-border-200 border-t-0.5 my-3 mx-1.5" /><br />
<p> </p>
<h3 class="text-text-100 mt-2 -mb-1 text-base font-bold">8. GitHub Flow（チーム開発の標準）</h3>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>実際の開発フロー：</strong></p>
<p> </p>
<br /><br />
<ol class="[li_&amp;]:mb-0 [li_&amp;]:mt-1.5 [li_&amp;]:gap-1.5 [&amp;:not(:last-child)_ul]:pb-1 [&amp;:not(:last-child)_ol]:pb-1 list-decimal flex flex-col gap-2 pl-8 mb-3">
<li class="whitespace-normal break-words pl-2"><strong>Issue作成</strong>（タスク管理）</li>
<li class="whitespace-normal break-words pl-2"><strong>ブランチ作成</strong></li>
</ol>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">bash</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash">   <span class="token">git</span> checkout -b feature/issue-123-add-search</code></pre>
</div>
</div>
<br /><br />
<ol class="[li_&amp;]:mb-0 [li_&amp;]:mt-1.5 [li_&amp;]:gap-1.5 [&amp;:not(:last-child)_ul]:pb-1 [&amp;:not(:last-child)_ol]:pb-1 list-decimal flex flex-col gap-2 pl-8 mb-3" start="3">
<li class="whitespace-normal break-words pl-2"><strong>開発・コミット</strong></li>
</ol>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">bash</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash">   <span class="token">git</span> <span class="token">add</span> <span class="token">.</span>
   <span class="token">git</span> commit -m <span class="token">"Add search functionality #123"</span></code></pre>
</div>
</div>
<br /><br />
<ol class="[li_&amp;]:mb-0 [li_&amp;]:mt-1.5 [li_&amp;]:gap-1.5 [&amp;:not(:last-child)_ul]:pb-1 [&amp;:not(:last-child)_ol]:pb-1 list-decimal flex flex-col gap-2 pl-8 mb-3" start="4">
<li class="whitespace-normal break-words pl-2"><strong>プッシュ</strong></li>
</ol>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">bash</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash">   <span class="token">git</span> push origin feature/issue-123-add-search</code></pre>
</div>
</div>
<br /><br />
<ol class="[li_&amp;]:mb-0 [li_&amp;]:mt-1.5 [li_&amp;]:gap-1.5 [&amp;:not(:last-child)_ul]:pb-1 [&amp;:not(:last-child)_ol]:pb-1 list-decimal flex flex-col gap-2 pl-8 mb-3" start="5">
<li class="whitespace-normal break-words pl-2"><strong>Pull Request作成</strong>（GitHub上で）</li>
<li class="whitespace-normal break-words pl-2"><strong>コードレビュー</strong></li>
<li class="whitespace-normal break-words pl-2"><strong>マージ</strong>（レビュー承認後）</li>
<li class="whitespace-normal break-words pl-2"><strong>ブランチ削除</strong></li>
</ol>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>実務のPR（プルリクエスト）例：</strong></p>
<p> </p>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">markdown</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-markdown"><span class="token">##</span><span class="token"> 概要</span>
ユーザー検索機能を追加<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-markdown"><br />
<span class="token">##</span><span class="token"> 変更内容</span>
<span class="token">-</span> 検索APIエンドポイント追加<br />
<span class="token">-</span> フロントエンドに検索UIを実装<br />
<span class="token">-</span> 検索結果のページネーション対応<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-markdown"><br />
<span class="token">##</span><span class="token"> テスト</span>
<span class="token">-</span> [ ] 検索機能の動作確認<br />
<span class="token">-</span> [ ] エッジケースのテスト（空文字、特殊文字）<br />
<span class="token">-</span> [ ] モバイル表示確認<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-markdown"><br />
<span class="token">##</span><span class="token"> スクリーンショット</span>
（画像添付）<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-markdown"><br />
関連Issue: #123</code></pre>
</div>
</div>
<p> </p>
<hr class="border-border-200 border-t-0.5 my-3 mx-1.5" /><br />
<p> </p>
<h3 class="text-text-100 mt-2 -mb-1 text-base font-bold">9. リベース（上級テクニック）</h3>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>マージ vs リベースの違い：</strong></p>
<p> </p>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">bash</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><span class="token"># マージ（履歴が分岐して見える）</span>
<span class="token">git</span> checkout main<br />
<span class="token">git</span> merge feature/new-ui<br />
<span class="token"># → マージコミットが作られる</span></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># リベース（一直線の履歴になる）</span>
<span class="token">git</span> checkout feature/new-ui<br />
<span class="token">git</span> rebase main<br />
<span class="token"># → feature ブランチのコミットが main の先頭に付け替えられる</span></code></pre>
</div>
</div>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>インタラクティブリベース（履歴の整理）：</strong></p>
<p> </p>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">bash</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><span class="token"># 直近3コミットを編集</span>
<span class="token">git</span> rebase -i HEAD~3<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># エディタが開く</span>
pick abc123 Add feature A<br />
pick def456 Fix typo<br />
pick ghi789 Add feature B<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># 以下のように変更可能</span>
pick abc123 Add feature A<br />
squash def456 Fix typo    <span class="token"># 前のコミットに統合</span>
pick ghi789 Add feature B</code></pre>
</div>
</div>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>禁止事項（絶対に守る）：</strong></p>
<p> </p>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">bash</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><span class="token"># &#x274C; プッシュ済みのブランチでリベースしてはいけない</span>
<span class="token">git</span> push origin main<br />
<span class="token">git</span> rebase <span class="token">..</span>.  <span class="token"># これをやると他の人のリポジトリが壊れる</span></code></pre>
</div>
</div>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>実務での使い分け：</strong></p>
<p> </p>
<br /><br />
<ul class="[li_&amp;]:mb-0 [li_&amp;]:mt-1.5 [li_&amp;]:gap-1.5 [&amp;:not(:last-child)_ul]:pb-1 [&amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-2 pl-8 mb-3">
<li class="whitespace-normal break-words pl-2"><strong>個人ブランチ</strong>：リベースでOK（履歴をきれいに）</li>
<li class="whitespace-normal break-words pl-2"><strong>共有ブランチ</strong>：マージのみ（安全第一）</li>
</ul>
<p> </p>
<hr class="border-border-200 border-t-0.5 my-3 mx-1.5" /><br />
<p> </p>
<h3 class="text-text-100 mt-2 -mb-1 text-base font-bold">10. タグ（リリース管理）</h3>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>実践例：</strong></p>
<p> </p>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">bash</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><span class="token"># 軽量タグ（簡易的）</span>
<span class="token">git</span> tag v1.0.0<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># 注釈付きタグ（推奨、詳細情報を記録）</span>
<span class="token">git</span> tag -a v1.0.0 -m <span class="token">"Release version 1.0.0 - Initial public release"</span></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># タグ一覧</span>
<span class="token">git</span> tag<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># タグをリモートにプッシュ</span>
<span class="token">git</span> push origin v1.0.0<br />
<span class="token">git</span> push origin --tags  <span class="token"># 全タグを送信</span></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># タグのチェックアウト</span>
<span class="token">git</span> checkout v1.0.0<br />
``<span class="token">`</span></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
**セマンティックバージョニング：**<br />
<span class="token">`</span>``<br />
v1.2.3<br />
^ ^ ^<br />
<span class="token">|</span> <span class="token">|</span> └─ パッチ（バグ修正）<br />
<span class="token">|</span> └─── マイナー（機能追加、後方互換性あり）<br />
└───── メジャー（破壊的変更）</code></pre>
</div>
</div>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>実務での活用：</strong> 本番環境へのデプロイ時、タグを打つことで「いつ何をリリースしたか」が明確に。問題発生時はタグで素早くロールバックできます。</p>
<p> </p>
<p> </p>
<hr class="border-border-200 border-t-0.5 my-3 mx-1.5" /><br />
<p> </p>
<h3 class="text-text-100 mt-2 -mb-1 text-base font-bold">11. スタッシュ（作業の一時退避）</h3>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>実用例：</strong></p>
<p> </p>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">bash</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><span class="token"># 緊急のバグ修正が入った！でも今の作業は未完成...</span>
<span class="token">git</span> stash  <span class="token"># 現在の変更を退避</span></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># バグ修正ブランチで作業</span>
<span class="token">git</span> checkout hotfix/urgent-bug<br />
<span class="token"># ... 修正 ...</span>
<span class="token">git</span> commit -m <span class="token">"Fix critical bug"</span></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># 元の作業に戻る</span>
<span class="token">git</span> checkout feature/my-work<br />
<span class="token">git</span> stash pop  <span class="token"># 退避した変更を復元</span></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># スタッシュ一覧</span>
<span class="token">git</span> stash list<br /></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># 特定のスタッシュを適用</span>
<span class="token">git</span> stash apply stash@<span class="token">{</span><span class="token">1</span><span class="token">}</span></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># スタッシュ削除</span>
<span class="token">git</span> stash drop stash@<span class="token">{</span><span class="token">0</span><span class="token">}</span></code></pre>
</div>
</div>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]"><strong>実務のシナリオ：</strong> 「プルリク出したけどレビュー待ち。その間に別タスクやろう」→ スタッシュで切り替えがスムーズに。</p>
<p> </p>
<p> </p>
<hr class="border-border-200 border-t-0.5 my-3 mx-1.5" /><br />
<p> </p>
<h2 class="text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold">&#x1F680; 実務で差がつくポイント</h2>
<h3 class="text-text-100 mt-2 -mb-1 text-base font-bold">コミット粒度の考え方</h3>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">bash</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><span class="token"># &#x274C; 悪い例（1日の作業を1コミットに）</span>
<span class="token">git</span> commit -m <span class="token">"Today's work"</span></code></pre>
<p> </p>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><br />
<span class="token"># &#x2705; 良い例（機能単位で細かく）</span>
<span class="token">git</span> commit -m <span class="token">"Add user model"</span>
<span class="token">git</span> commit -m <span class="token">"Add user controller"</span>
<span class="token">git</span> commit -m <span class="token">"Add user view"</span></code></pre>
</div>
</div>
<h3 class="text-text-100 mt-2 -mb-1 text-base font-bold">.gitignoreの活用</h3>
<div class="relative group/copy bg-bg-000/50 border-0.5 border-border-400 rounded-lg"><br />
<div class="sticky opacity-0 group-hover/copy:opacity-100 top-2 py-2 h-12 w-0 float-right"><br />
<div class="absolute right-0 h-8 px-2 items-center inline-flex z-10"></div>
</div>
<div class="text-text-500 font-small p-3.5 pb-0">bash</div>
<div>
<pre class="code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed"><code class="language-bash"><span class="token"># .gitignore ファイル例</span>
node_modules/<br />
.env<br />
*.log<br />
.DS_Store<br />
.idea/</code></pre>
</div>
</div>
<h3 class="text-text-100 mt-2 -mb-1 text-base font-bold">ブランチ運用の失敗談</h3>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]">あるチームでは全員がmainブランチで直接作業し、誰かがバグを混入すると全員が影響を受けました。ブランチ戦略導入後、問題が激減しました。</p>
<p> </p>
<p> </p>
<hr class="border-border-200 border-t-0.5 my-3 mx-1.5" /><br />
<p> </p>
<h2 class="text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold">&#x1F393; 学習のコツ</h2>
<br /><br />
<ol class="[li_&amp;]:mb-0 [li_&amp;]:mt-1.5 [li_&amp;]:gap-1.5 [&amp;:not(:last-child)_ul]:pb-1 [&amp;:not(:last-child)_ol]:pb-1 list-decimal flex flex-col gap-2 pl-8 mb-3">
<li class="whitespace-normal break-words pl-2"><strong>毎日触る</strong>：1週間に1回より、毎日10分の方が定着します</li>
<li class="whitespace-normal break-words pl-2"><strong>実プロジェクトで使う</strong>：架空のプロジェクトではなく、実際のコードで</li>
<li class="whitespace-normal break-words pl-2"><strong>失敗を恐れない</strong>：ローカルリポジトリで色々試してみる</li>
<li class="whitespace-normal break-words pl-2"><strong>チーム開発を経験</strong>：一人では学べないコンフリクト解消などを体験</li>
</ol>
<p> </p>
<hr class="border-border-200 border-t-0.5 my-3 mx-1.5" /><br />
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]">このコースを完走すれば、「Git使える人」から「Gitを理解している人」にレベルアップできます。特にデータ構造の理解は、トラブルシューティングで圧倒的な差になりますよ！</p>
<p class="font-claude-response-body break-words whitespace-normal leading-[1.7]">何か具体的なコマンドや概念について、さらに詳しく知りたい部分はありますか？</p>
<p> </p>
</div>
</div>
</div>
</div>
<div class="flex justify-start" role="group" aria-label="Message actions"><br />
<div class="text-text-300"><br />
<div class="text-text-300 flex items-stretch justify-between"><br />
<div class="w-fit" data-state="closed"></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="db183363 ds-icon-button ds-icon-button--m ds-icon-button--sizing-container" role="button" aria-disabled="false" tabindex="0"><br />
<div class="ds-icon"></div>
</div>
</div>
</div>
</div>]]></content:encoded>



<dc:creator>ずー</dc:creator>
<dc:date>2026-01-12T13:07:51+09:00</dc:date>
</item>
<item rdf:about="https://zusann123.cocolog-nifty.com/blog/2025/10/post-4665ea.html">
<title>Blog　イメージを刷新</title>
<link>https://zusann123.cocolog-nifty.com/blog/2025/10/post-4665ea.html</link>
<description>
Blog　イメージを刷新、　ブログタイトルを　gold（CSS:色）　にしまし...</description>
<content:encoded><![CDATA[<p><a href="https://zusann123.cocolog-nifty.com/photos/uncategorized/screenshot-from-20251008-062521.png" target="_blank" rel="noopener"><img style="margin: 3px;" title="Screenshot-from-20251008-062521" src="https://zusann123.cocolog-nifty.com/blog/images/screenshot-from-20251008-062521.png" alt="Screenshot-from-20251008-062521" width="460" height="204" border="0" /></a></p>
<p>Blog　イメージを刷新、　ブログタイトルを　gold（CSS:色）　にしました。</p>
<p>ローカルで運用、検索も出来るので、結構役に立っています。</p>]]></content:encoded>



<dc:creator>ずー</dc:creator>
<dc:date>2025-10-08T06:31:18+09:00</dc:date>
</item>
<item rdf:about="https://zusann123.cocolog-nifty.com/blog/2025/07/post-d4f161.html">
<title>素粒子論はなぜわかりにくいのか　　という吉田伸男の本について</title>
<link>https://zusann123.cocolog-nifty.com/blog/2025/07/post-d4f161.html</link>
<description>吉田伸男さんの本が掘り下げている「わかりにくさ」の要因は多岐にわたりますが、主な...</description>
<content:encoded><![CDATA[<p><span>吉田伸男さんの本が掘り下げている「わかりにくさ」の要因は多岐にわたりますが、主な点は以下の通りです。<br /></span></p>
<p> </p>
<p><span>1. 直感に反する世界観 &#x1F92F;<br />私たちの日常生活で経験する物理法則は、ニュートン力学や電磁気学といった古典物理学で記述されます。しかし、素粒子の世界は、量子力学と相対性理論という、私たちの直感とは大きくかけ離れた法則に支配されています。<br /></span></p>
<p> </p>
<p><span>量子力学の奇妙さ: 素粒子は同時に複数の場所に存在したり（重ね合わせ）、観測するまで状態が決まらなかったり（不確定性原理）、遠く離れた粒子が瞬時に影響し合ったり（量子もつれ）します。これは、リンゴが木から落ちるのを見るような日常的な感覚とは全く異なります。<br /></span></p>
<p> </p>
<p><span>相対性理論の時空の歪み: 高速で動く物体の時間が遅れたり、質量がエネルギーに変換されたりする（E=mc2乗）といった現象も、私たちの経験からは想像しにくいものです。<br /></span></p>
<p> </p>
<p><span>2. 目に見えない・触れられない対象 &#x1F47B;<br />素粒子はあまりにも小さすぎて、直接「見る」ことも「触れる」こともできません。私たちが知覚できるのは、加速器の中で衝突させたときに発生する反応の痕跡や、検出器が捉えた信号のみです。そのため、間接的な情報からその存在や性質を推測するしかなく、イメージしにくいのです。<br /></span></p>
<p> </p>
<p><span>3. 専門用語と数学の壁 &#x1F9F1;<br />素粒子論は、非常に高度な数学（場の量子論、群論など）と専門的な概念（スピン、フレーバー、ゲージ対称性など）に基づいています。これらの専門用語や概念が、一般の人々にとって大きな壁となります。<br /></span></p>
<p> </p>
<p><span>4. 完成されていない理論 &#x1F6A7;<br />素粒子物理学の標準模型は、非常に成功した理論ですが、重力を含んでいなかったり、暗黒物質や暗黒エネルギーの正体が分からなかったりと、未解明な点が残されています。統一理論（Theory of Everything: TOE）の探求は今も続いており、常に新しい発見や修正の可能性を秘めています。この「未完成さ」もまた、理解を難しくする一因かもしれません。<br /></span></p>
<p> </p>
<p><span>業界話と雑学 &#x1F913;<br />1. 加速器は巨大な「顕微鏡」 &#x1F52C;<br />素粒子はあまりに小さいため、その性質を探るためには非常に高いエネルギーで衝突させる必要があります。そのために使われるのが粒子加速器です。CERN（欧州原子核研究機構）にある大型ハドロン衝突型加速器（LHC）は、地下100m、円周27kmにも及ぶ巨大な装置です。これは、まさに宇宙の始まりの状態を再現し、新しい素粒子を探すための「巨大な顕微鏡」と言えます。このLHCが、2012年にヒッグス粒子を発見したことで世界を驚かせました。<br /></span></p>
<p> </p>
<p><span>2. 「神の粒子」ヒッグス粒子とその命名秘話 &#x2728;<br />ヒッグス粒子は、他の素粒子に質量を与えるメカニズム（ヒッグス機構）に関わる重要な粒子です。この粒子が「神の粒子（God Particle）」と呼ばれるようになったのは、ノーベル賞物理学者レオン・レーダーマンの著書のタイトルに由来します。実は、レーダーマンは「Get Damned Particle（忌々しい粒子）」と呼びたかったのですが、出版社がもっとキャッチーな「God Particle」を提案したという逸話があります。科学者の中にはこの通称を好まない人もいますが、一般への認知度を高めるのに一役買ったのは確かです。<br /></span></p>
<p> </p>
<p><span>3. 素粒子物理学者の日常 &#x1F4BB;&#x1F4CA;<br />素粒子物理学者の多くは、加速器での実験データ解析や、理論計算、シミュレーションに明け暮れます。巨大な国際共同研究チームの一員として、世界中の研究者と協力しながら、膨大なデータを分析し、ミクロな世界の謎を解き明かそうと日々奮闘しています。彼らが解析するデータ量は、テラバイトどころかペタバイト、エクサバイト単位にも及び、ビッグデータ解析の最先端でもあります。<br /></span></p>
<p> </p>
<p><span>4. SF作品への影響 &#x1F680;<br />素粒子物理学の概念は、SF作品の題材となることがよくあります。「量子もつれ」を利用した超光速通信（これは現在のところ不可能と考えられています）や、多世界解釈に基づいた並行宇宙、さらにはタイムトラベルなど、多くの物語にインスピレーションを与えています。これにより、一般の人々が素粒子論に興味を持つきっかけにもなっています。<br /></span></p>
<p> </p>
<p><span>5. 理論と実験の美しい協調 &#x1F91D;<br />素粒子物理学の進歩は、理論物理学と実験物理学の密接な連携によって支えられています。理論家は新しい粒子や相互作用の存在を予言し、実験家はその予言を検証するための実験を計画・実行します。ヒッグス粒子の発見も、数十年前の理論的な予言が、最新の加速器実験によって実証された典型的な例です。この両輪が揃ってこそ、私たちの宇宙に対する理解は深まっていきます。<br /></span></p>
<p> </p>
<p><span>吉田伸男さんの本は、このような複雑で魅力的な素粒子物理学の世界への入り口を提供してくれる一冊です。その「わかりにくさ」の奥には、人類の知的好奇心と探求心が詰まっていることが、この本を通じてきっと感じられるでしょう。</span> </p>]]></content:encoded>



<dc:creator>ずー</dc:creator>
<dc:date>2025-07-16T22:25:02+09:00</dc:date>
</item>
<item rdf:about="https://zusann123.cocolog-nifty.com/blog/2025/01/post-fe0811.html">
<title>BINGO GAME 01</title>
<link>https://zusann123.cocolog-nifty.com/blog/2025/01/post-fe0811.html</link>
<description>


    


  BINGO GAME 01 を作りました。遊んでください...</description>
<content:encoded><![CDATA[<!DOCTYPE html>
<html lang="ja">
<head>
  <style>
    body {
      margin: 0;
      padding: 0;
    }

#bingo-container {
  max-width: 400px;
  margin: 10px auto;
  padding: 10px;
  background-color: lightgray;
  text-align: center;
  border-radius: 5px;
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.1);
  width: 500px;
  height: 430px;
}

#buttons {
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
}

button {
  padding: 5px 10px;
  font-size: 9px;
  font-weight: bold;
  color: #fff;
  background-color: #4CAF50;
  border: none;
  border-radius: 2.5px;
  cursor: pointer;
}

button:disabled {
  background-color: #aaa;
  cursor: not-allowed;
}

#current-ball {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 10px;
}

#ball-container {
  display: flex;
  justify-content: space-around;
}

#ball-container div {
  background-color: #4CAF50;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  padding: 3px;
  text-align: center;
  border-radius: 2.5px;
}

#B,
#I,
#N,
#G,
#O {
  display: inline-block;
  margin: 0 5px;
}

#B::after,
#I::after,
#N::after,
#G::after,
#O::after {
  content: "";
  flex: 1;
}

#B div,
#I div,
#N div,
#G div,
#O div {
  margin: 2.5px 0;
}

#ball-display {
  margin: 12.5px auto;
  font-size: 30px;
  color: black;
  text-align: center;
}

.ball-container {
  width: 40px;
  height: 40px;
  border: 0.5px solid black;
  display: inline-block;
  text-align: center;
  vertical-align: middle;
  margin: 1px;
}

.ball-column {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.letter {
  display: block;
  font-weight: bold;
}

.number {
  display: block;
  font-size: 10px;
}

.letter {
  color: white;
  font-size: 10px;
}
  </style>  
</head>
<body>
  <p><span style="font-size: 1.3rem;">BINGO GAME 01 </span>を作りました。遊んでください。遊び方はNEW GAMEをクリックすると新しいゲームが始まります。NEW BALLをクリックするとランダムな数字が生成されてビンゴゲームができます。試してみてください。</p>
  <div id="bingo-container">
    <div id="buttons">
      <button id="new-game" onclick="handleNewGameClick()">NEW GAME</button>
      <button id="next-ball" onclick="handleNextBallClick()">NEXT BALL</button>
    </div>
    <div id="current-ball"></div>
    <div id="ball-container">
      <div class="bingo-board">
        <div class="ball-column" id="B">
          <div class="ball-container" id="ball-1"><span class="letter">B</span><span class="number"></span></div>
          <div class="ball-container" id="ball-6"><span class="letter">B</span><span class="number"></span></div>
          <div class="ball-container" id="ball-11"><span class="letter">B</span><span class="number"></span></div>
          <div class="ball-container" id="ball-16"><span class="letter">B</span><span class="number"></span></div>
          <div class="ball-container" id="ball-21"><span class="letter">B</span><span class="number"></span></div>
        </div>
        <div class="ball-column" id="I">
          <div class="ball-container" id="ball-2"><span class="letter">I</span><span class="number"></span></div>
          <div class="ball-container" id="ball-7"><span class="letter">I</span><span class="number"></span></div>
          <div class="ball-container" id="ball-12"><span class="letter">I</span><span class="number"></span></div>
          <div class="ball-container" id="ball-17"><span class="letter">I</span><span class="number"></span></div>
          <div class="ball-container" id="ball-22"><span class="letter">I</span><span class="number"></span></div>
        </div>
        <div class="ball-column" id="N">        
          <div class="ball-container" id="ball-3"><span class="letter">N</span><span class="number"></span></div>
          <div class="ball-container" id="ball-8"><span class="letter">N</span><span class="number"></span></div>
          <div class="ball-container" id="ball-13"><span class="letter">N</span><span class="number"></span></div>
          <div class="ball-container" id="ball-18"><span class="letter">N</span><span class="number"></span></div>
          <div class="ball-container" id="ball-23"><span class="letter">N</span><span class="number"></span></div>
        </div>
        <div class="ball-column" id="G">
          <div class="ball-container" id="ball-4"><span class="letter">G</span><span class="number"></span></div>
          <div class="ball-container" id="ball-9"><span class="letter">G</span><span class="number"></span></div>
          <div class="ball-container" id="ball-14"><span class="letter">G</span><span class="number"></span></div>
          <div class="ball-container" id="ball-19"><span class="letter">G</span><span class="number"></span></div>
          <div class="ball-container" id="ball-24"><span class="letter">G</span><span class="number"></span></div>
        </div>
        <div class="ball-column" id="O">
          <div class="ball-container" id="ball-5"><span class="letter">O</span><span class="number"></span></div>
          <div class="ball-container" id="ball-10"><span class="letter">O</span><span class="number"></span></div>
          <div class="ball-container" id="ball-15"><span class="letter">O</span><span class="number"></span></div>
          <div class="ball-container" id="ball-20"><span class="letter">O</span><span class="number"></span></div>
          <div class="ball-container" id="ball-25"><span class="letter">O</span><span class="number"></span></div>
        </div>
      </div>     
    </div>
    <div id="ball-display">Random Number</div> 
  </div>
  <script>
    // NEW GAME ボタンのクリックハンドラ
    function handleNewGameClick() {
        // 画面下の数字表示をリセット
        document.getElementById("ball-display").textContent = 'Random Number';

        const numberOfBalls = 25;
        const usedNumbers = new Set();

        // ボール要素にランダムな数字を表示する
        for (let i = 1; i <= numberOfBalls; i++) {
            const ballId = `ball-${i}`;
            const ballElement = document.querySelector(`#${ballId} .number`);
            ballElement.style.fontSize = '18px'; // 例: 20px
            ballElement.style.color = "blue";        
            let randomNumber;

            // 重複しない数字を見つけるまでループ
            do {
                randomNumber = Math.floor(Math.random() * 75) + 1;
            } while (usedNumbers.has(randomNumber));

            // 新しい数字を追加し、表示する
            usedNumbers.add(randomNumber);
            ballElement.textContent = randomNumber;
        }

        // N要素の3番目のボールに0を表示する
        const nThirdBallElement = document.querySelector('#ball-13 .number');
        nThirdBallElement.textContent = '0';
    }

    // NEW GAME ボタンにクリックイベントを追加
    const newGameButton = document.getElementById('new-game');
    newGameButton.addEventListener('click', handleNewGameClick);



    // 重複を避けるためのセットをグローバルスコープで作成
    var usedNumbers = new Set();

    // NEXT BALLボタンがクリックされたら
    function handleNextBallClick() {
      // ランダムな数字を生成
      var randomNumber;
      do {
        randomNumber = generateRandomNumber(1, 75);
      } while (usedNumbers.has(randomNumber));

      // 新しい数字をセットに追加し、画面下の中央に表示する
      usedNumbers.add(randomNumber);
      var ballDisplay = document.getElementById("ball-display");
      ballDisplay.textContent = randomNumber;

      // すでに表示されている数字と同じ場合、数字の色を赤に変える
      var existingNumbers = document.querySelectorAll('.number');
      existingNumbers.forEach(function(ballElement) {
        var existingNumber = parseInt(ballElement.textContent);
        if (existingNumber === randomNumber) {
          ballElement.style.color = "red";
        }
      });
    }

    // 指定範囲内でランダムな数字を生成する関数
    function generateRandomNumber(min, max) {
      return Math.floor(Math.random() * (max - min + 1)) + min;
    }  
  </script>
</body>
</html>]]></content:encoded>



<dc:creator>ずー</dc:creator>
<dc:date>2025-01-13T16:31:00+09:00</dc:date>
</item>


</rdf:RDF>
