<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" version="2.0">
    <channel>
        
        <title>
            <![CDATA[ Git - freeCodeCamp.org ]]>
        </title>
        <description>
            <![CDATA[ エキスパートの手によるプログラミングチュートリアル記事を幅広く掲載。ウェブ開発、データサイエンス、DevOps、セキュリティ、開発者としてのキャリアなどについて学びましょう。 ]]>
        </description>
        <link>https://www.freecodecamp.org/japanese/news/</link>
        <image>
            <url>https://cdn.freecodecamp.org/universal/favicons/favicon.png</url>
            <title>
                <![CDATA[ Git - freeCodeCamp.org ]]>
            </title>
            <link>https://www.freecodecamp.org/japanese/news/</link>
        </image>
        <generator>Eleventy</generator>
        <lastBuildDate>Tue, 19 May 2026 10:02:13 +0000</lastBuildDate>
        <atom:link href="https://www.freecodecamp.org/japanese/news/tag/git/rss.xml" rel="self" type="application/rss+xml" />
        <ttl>60</ttl>
        
            <item>
                <title>
                    <![CDATA[ Git のブランチ名の変更 – ローカルブランチ名を変更する方法 ]]>
                </title>
                <description>
                    <![CDATA[ プロジェクトの作業中に、ローカルブランチの名前を変更する場合があるかもしれません。でも、Git ではどのようにすればいいでしょうか？ この記事では、Git で管理しているローカルブランチ名を変更する方法を 2 つご紹介します。 ブランチ名を変更する方法 - #1 ステップ 1: プロジェクトのルートディレクトリであることを確認します まず ターミナルを開いてください。次に、cd (ディレクトリ変更) コマンドで、プロジェクトのルートに移動します。 たとえば、ターミナルでホームディレクトリを開き、デスクトップ上にあるプロジェクトに cd コマンドで移動したい場合は、このようなコマンドとなります。 cd Desktop/project-name こちらは、デスクトップ上の Happy_Messages_Bot というディレクトリ名のプロジェクトに移動する例です。 ステップ 2: 名前を変更したいブランチに切り替えます git checkout コマンドで、他のブランチに切り替えることができます。 git checkout branch-name こちらは、test-br ]]>
                </description>
                <link>https://www.freecodecamp.org/japanese/news/git-rename-branch-how-to-change-a-local-branch-name/</link>
                <guid isPermaLink="false">631d671287a3a3073e97e6a6</guid>
                
                    <category>
                        <![CDATA[ Git ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Akiko Takano ]]>
                </dc:creator>
                <pubDate>Tue, 13 Sep 2022 13:18:58 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/japanese/news/content/images/2022/09/mila-tovar-NTiW908Uc1A-unsplash.jpg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p data-test-label="translation-intro">
        <strong>原文:</strong> <a href="https://www.freecodecamp.org/news/git-rename-branch-how-to-change-a-local-branch-name/" target="_blank" rel="noopener noreferrer" data-test-label="original-article-link">Git Rename Branch – How to Change a Local Branch Name</a>
      </p><p>プロジェクトの作業中に、ローカルブランチの名前を変更する場合があるかもしれません。でも、Git ではどのようにすればいいでしょうか？</p><p>この記事では、Git で管理しているローカルブランチ名を変更する方法を 2 つご紹介します。</p><h2 id="-1">ブランチ名を変更する方法 - #1</h2><h3 id="-1-">ステップ 1: プロジェクトのルートディレクトリであることを確認します</h3><p>まず ターミナルを開いてください。次に、<code>cd</code> (ディレクトリ変更) コマンドで、プロジェクトのルートに移動します。</p><p>たとえば、ターミナルでホームディレクトリを開き、デスクトップ上にあるプロジェクトに <code>cd</code> コマンドで移動したい場合は、このようなコマンドとなります。</p><pre><code>cd Desktop/project-name
</code></pre><p>こちらは、デスクトップ上の <code>Happy_Messages_Bot</code> というディレクトリ名のプロジェクトに移動する例です。</p><figure class="kg-card kg-image-card"><img src="https://www.freecodecamp.org/japanese/news/content/images/2022/09/Screen-Shot-2021-11-02-at-10.30.01-PM-1.png" class="kg-image" alt="Screen-Shot-2021-11-02-at-10.30.01-PM-1" srcset="https://www.freecodecamp.org/japanese/news/content/images/size/w600/2022/09/Screen-Shot-2021-11-02-at-10.30.01-PM-1.png 600w, https://www.freecodecamp.org/japanese/news/content/images/2022/09/Screen-Shot-2021-11-02-at-10.30.01-PM-1.png 1000w" sizes="(min-width: 720px) 720px" width="1000" height="109" loading="lazy"></figure><h3 id="-2-">ステップ 2: 名前を変更したいブランチに切り替えます</h3><p><code>git checkout</code> コマンドで、他のブランチに切り替えることができます。</p><pre><code>git checkout branch-name
</code></pre><p>こちらは、<code>test-branch</code> として作成済みのブランチに切り替えたい場合の例です。</p><figure class="kg-card kg-image-card"><img src="https://www.freecodecamp.org/japanese/news/content/images/2022/09/Screen-Shot-2021-11-02-at-10.39.57-PM.png" class="kg-image" alt="Screen-Shot-2021-11-02-at-10.39.57-PM" srcset="https://www.freecodecamp.org/japanese/news/content/images/size/w600/2022/09/Screen-Shot-2021-11-02-at-10.39.57-PM.png 600w, https://www.freecodecamp.org/japanese/news/content/images/size/w1000/2022/09/Screen-Shot-2021-11-02-at-10.39.57-PM.png 1000w, https://www.freecodecamp.org/japanese/news/content/images/2022/09/Screen-Shot-2021-11-02-at-10.39.57-PM.png 1170w" sizes="(min-width: 720px) 720px" width="1170" height="68" loading="lazy"></figure><h3 id="-3-m-">ステップ 3: <code>-m</code> フラグをつけてブランチ名を変更します</h3><p>ブランチ名を変更したい場合には、このコマンドを使います:</p><pre><code>git branch -m new-branch-name
</code></pre><p>こちらは、<code>test-branch</code> から <code>test-branch2</code> へ変更したい場合の例です。</p><pre><code>git branch -m test-branch2
</code></pre><p><code>git status</code> を使って、新しいブランチ名に変更されたかどうかを確認できます。</p><figure class="kg-card kg-image-card"><img src="https://www.freecodecamp.org/japanese/news/content/images/2022/09/Screen-Shot-2021-11-02-at-10.52.02-PM.png" class="kg-image" alt="Screen-Shot-2021-11-02-at-10.52.02-PM" width="546" height="66" loading="lazy"></figure><h2 id="-2">ブランチ名を変更する方法 - #2</h2><p><code>git checkout</code> コマンドで変更したいブランチに切り替えなくとも、コマンド 1 つで名前を変更することができます。</p><h3 id="-1-master-main-">ステップ 1: master / main ブランチ上で作業していることを確認します</h3><p><code>git status</code> を使って、master あるいは main ブランチ上で作業しているかどうかを確認します:</p><figure class="kg-card kg-image-card"><img src="https://www.freecodecamp.org/japanese/news/content/images/2022/09/Screen-Shot-2021-11-02-at-11.02.20-PM.png" class="kg-image" alt="Screen-Shot-2021-11-02-at-11.02.20-PM" srcset="https://www.freecodecamp.org/japanese/news/content/images/size/w600/2022/09/Screen-Shot-2021-11-02-at-11.02.20-PM.png 600w, https://www.freecodecamp.org/japanese/news/content/images/2022/09/Screen-Shot-2021-11-02-at-11.02.20-PM.png 982w" sizes="(min-width: 720px) 720px" width="982" height="66" loading="lazy"></figure><p>master あるいは main ブランチ以外で作業している場合は、master あるいは main ブランチに切り替えます。<code>git checkout master</code> または <code>git checkout main</code> コマンドで切り替えます。</p><figure class="kg-card kg-image-card"><img src="https://www.freecodecamp.org/japanese/news/content/images/2022/09/Screen-Shot-2021-11-02-at-11.05.28-PM.png" class="kg-image" alt="Screen-Shot-2021-11-02-at-11.05.28-PM" srcset="https://www.freecodecamp.org/japanese/news/content/images/size/w600/2022/09/Screen-Shot-2021-11-02-at-11.05.28-PM.png 600w, https://www.freecodecamp.org/japanese/news/content/images/size/w1000/2022/09/Screen-Shot-2021-11-02-at-11.05.28-PM.png 1000w, https://www.freecodecamp.org/japanese/news/content/images/2022/09/Screen-Shot-2021-11-02-at-11.05.28-PM.png 1094w" sizes="(min-width: 720px) 720px" width="1094" height="76" loading="lazy"></figure><h3 id="-2-m-">ステップ 2: &nbsp;<code>-m</code> フラグをつけてブランチ名を変更します</h3><p>元のブランチ名を他の新しい名前に変える場合は、この構文が利用できます。</p><pre><code>git branch -m old-branch new-branch
</code></pre><p><code>test-branch</code> から <code>test-branch2</code> へ名前を変更する場合は、このようになります。</p><pre><code>git branch -m test-branch test-branch2
</code></pre><p>新しいブランチ名を確認するには、<code>git branch</code> コマンドを実行します。その結果、全てのブランチ名が表示されます。</p><figure class="kg-card kg-image-card"><img src="https://www.freecodecamp.org/japanese/news/content/images/2022/09/Screen-Shot-2021-11-02-at-11.15.52-PM.png" class="kg-image" alt="Screen-Shot-2021-11-02-at-11.15.52-PM" srcset="https://www.freecodecamp.org/japanese/news/content/images/size/w600/2022/09/Screen-Shot-2021-11-02-at-11.15.52-PM.png 600w, https://www.freecodecamp.org/japanese/news/content/images/2022/09/Screen-Shot-2021-11-02-at-11.15.52-PM.png 992w" sizes="(min-width: 720px) 720px" width="992" height="100" loading="lazy"></figure><p>これらの 2 つの方法で、Git で管理しているローカルブランチの名前を変更することができます。</p> ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ git add の取り消し方法 ]]>
                </title>
                <description>
                    <![CDATA[ コミット前の git add を取り消すには git reset <file> を実行します。すべてのファイルの変更を対象とする場合には git reset  を実行します。 古いバージョンの Git では、それぞれ git reset HEAD <file>、git reset HEAD というコマンドでした。この変更は Git 1.8.2 で対応されました。 その他のよく使われる Git の操作については下記の記事を参照してください。  * Git checkout [https://guide.freecodecamp.org/git/git-checkout/] (英語版)  * Git pull vs Git fetch    [https://guide.freecodecamp.org/miscellaneous/git-pull-vs-git-fetch/] (英語版)  * Gitignore [https://guide.freecodecamp.org/git/gitignore/] ]]>
                </description>
                <link>https://www.freecodecamp.org/japanese/news/how-to-undo-a-git-add/</link>
                <guid isPermaLink="false">62658e9c5535b50526b616d3</guid>
                
                    <category>
                        <![CDATA[ Git ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Beginners ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ まつだようこ ]]>
                </dc:creator>
                <pubDate>Wed, 27 Apr 2022 23:30:00 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/japanese/news/content/images/2022/04/5f9c9deb740569d1a4ca3a5e.jpg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p data-test-label="translation-intro">
        <strong>原文:</strong> <a href="https://www.freecodecamp.org/news/how-to-undo-a-git-add/" target="_blank" rel="noopener noreferrer" data-test-label="original-article-link">How to Undo a Git Add</a>
      </p><p>コミット前の <code>git add</code> を取り消すには <code>git reset &lt;file&gt;</code> を実行します。すべてのファイルの変更を対象とする場合には <code>git reset</code> を実行します。</p><p>古いバージョンの Git では、それぞれ <code>git reset HEAD &lt;file&gt;</code>、<code>git reset HEAD</code> というコマンドでした。この変更は Git 1.8.2 で対応されました。</p><p>その他のよく使われる Git の操作については下記の記事を参照してください。</p><ul><li><a href="https://guide.freecodecamp.org/git/git-checkout/">Git checkout</a> (英語版)</li><li><a href="https://guide.freecodecamp.org/miscellaneous/git-pull-vs-git-fetch/">Git pull vs Git fetch</a> (英語版)</li><li><a href="https://guide.freecodecamp.org/git/gitignore/">Gitignore</a> (英語版)</li></ul><h2 id="git-">Git に関する予備知識</h2><h3 id="git-3-">Git プロジェクトの 3 つのセクションを理解する</h3><p>Git プロジェクトには以下 3 つの重要なセクションがあります。</p><ol><li>Git ディレクトリ</li><li>ワーキングディレクトリ (またはワーキングツリー)</li><li>ステージングエリア</li></ol><p><strong>Git ディレクトリ</strong> (<code>YOUR-PROJECT-PATH/.git/</code> にあるディレクトリ) は、Git がプロジェクトを正確に追跡するために必要なすべてのものが保存されている場所です。その中には、メタデータと、圧縮されたプロジェクトファイルの各バージョンを含むオブジェクトデータベースが含まれます。</p><p><strong>ワーキングディレクトリ</strong>は、ユーザーがプロジェクトに対してローカルで変更を行う場所です。ワーキングディレクトリは Git ディレクトリのオブジェクトデータベースからプロジェクトのファイルを取得し、ユーザーのローカルマシンに配置します。</p><p><strong>ステージングエリア</strong>は、次のコミットに含める予定の情報を保存しているファイルです (「index」「stage」「cache」とも呼ばれます)。コミットとは、ステージングエリアに追加された変更を保存するよう Git に伝えるタイミングです。Git はその時点のファイルの状態のスナップショットを撮り、スナップショットを Git ディレクトリに永続的に保存します。</p><p>この 3 つのセクションにより、ある時点のファイルの状態は主に以下 3 種類のいずれかの状態を取ります。「変更済 (modified)」「ステージ済 (staged)」そして「コミット済 (committed)」です。ワーキングディレクトリにあるファイルに変更を加えると、そのファイルは「変更済」となります。次にそのファイルをステージングエリアに追加すると (訳注: <code>git add</code> コマンドによりこれが行われる)「ステージ済」となります。最後に、コミットすると「コミット済」となります。</p><h2 id="git--1">Git のインストール方法</h2><ul><li>Ubuntu の場合: <code>sudo apt-get install git</code> を実行</li><li>Windows の場合: <a href="https://git-scm.com/download/win">ダウンロードページ</a></li><li>Mac: <a href="https://git-scm.com/download/mac">ダウンロードページ</a></li></ul><h2 id="git--2">Git 環境の設定</h2><p>Git 環境をカスタマイズできる <code>git config</code> というツール (コマンド) があります。特定のコンフィグ変数を設定することで、Git の見た目や機能を変更できます。これから説明するコマンドは、コマンドラインインターフェースで実行します (Mac ならターミナル、Windows ならコマンドプロンプトか PowerShell)。</p><p>コンフィグ変数の保存場所には次の 3 つのレベルがあります。</p><ol><li>システム: <code>/etc/gitconfig</code> に保存されている変数は、そのコンピューターのすべてのユーザーに適用されるデフォルト設定です。このファイルに変更を加えるには、<code>git config</code> コマンドと <code>--system</code> オプションを使用します。</li><li>ユーザー: <code>~/.gitconfig</code> または <code>~/.config/git/config</code> に保存されている変数は、ある特定のユーザーの設定として適用されます。このファイルに変更を加えるには、<code>git config</code> コマンドと <code>--global</code> オプションを使用します。</li><li>プロジェクト: <code>YOUR-PROJECT-PATH/.git/config</code> に保存されている変数は、そのプロジェクトだけに適用される設定です。このファイルに変更を加えるには、<code>git config</code> コマンドを使用します。</li></ol><p>互いに競合する設定がある場合、プロジェクトレベルの設定はユーザーレベルの設定より優先され、ユーザーレベルの設定はシステムレベルの設定より優先されます。</p><p><strong>Windows ユーザー向けの注意</strong>: Git は、ユーザーレベルの設定ファイル (<code>.gitconfig</code>) をあなたの <code>$HOME</code> ディレクトリ (<code>C:\Users\$USER</code>) の中から探します。Git はまた <code>/etc/gitconfig</code> も探しますが、これは MSYS のルートディレクトリからの相対パスであり、インストーラーの実行時にあなたが Git を Windows システムのどこにインストールするよう指定したかによって変わります。あなたが Git for Windows のバージョン 2.x 以上を使用しているなら、システムレベルの設定ファイルが下記の場所にも存在します。</p><ul><li>Windows Vista 以降なら <code>C:\ProgramData\Git\config</code></li><li>Windows XP では <code>C:\Documents and Settings\All Users\Application Data\Git\config</code></li></ul><p>この設定ファイルは、<code>git config -f &lt;file&gt;</code> コマンドを管理者として実行する方法でのみ変更が可能です。</p><h3 id="-">ユーザー名とメールアドレスの追加</h3><p>Git は、ユーザー名とメールアドレスをコミットの情報の一部として含めます。下記コマンドでこの情報をユーザーレベルの設定ファイルに設定できます。</p><pre><code class="language-shell">git config --global user.name "My Name"
git config --global user.email "myemail@example.com"
</code></pre><h3 id="--1">テキストエディタの変更</h3><p>Git は自動でデフォルトのテキストエディタを使用しますが、変更することも可能です。下記は、代わりに Atom エディタを使用するよう設定する例です。(<code>--wait</code> オプションは、シェルにテキストエディタを待つように指示します。これにより、プログラムの実行が先へ進む前に、テキストエディタで作業することができます。)</p><pre><code class="language-shell">git config --global core.editor "atom --wait"
</code></pre><h3 id="--2">出力の表示色の設定</h3><p>このコマンドで、シェルが Git の出力に色を付けるように設定できます。</p><pre><code class="language-shell">git config --global color.ui true
</code></pre><p>すべての設定を確認するには、<code>git config --list</code> コマンドを使用します。</p><h2 id="-git-">プロジェクト内で Git を初期化する</h2><p>Git のインストールと設定後、バージョン管理機能を使い始めるためには、プロジェクトディレクトリ内で Git を初期化する必要があります。コマンドラインで、<code>cd</code> コマンドを使用してあなたのプロジェクトの一番上 (ルート) のディレクトリに移動します。次に、<code>git init</code> コマンドを実行します。このコマンドは、Git があなたのプロジェクトを追跡するのに必要なファイルやオブジェクトを含んだ Git ディレクトリを設置します。</p><p>Git ディレクトリはプロジェクトのルートディレクトリに設置されていることが重要です。Git はサブディレクトリ内のファイルを追跡することができますが、Git ディレクトリから見て親ディレクトリにあるファイルは追跡できません。</p><h2 id="git--3">Git のヘルプを表示する</h2><p>Git コマンドの使い方を忘れた場合、コマンドラインから Git のヘルプにアクセスする方法がいくつかあります。</p><pre><code class="language-shell">git help COMMAND
git COMMAND --help
man git-COMMAND
</code></pre><p>このコマンドは、指定されたコマンドのマニュアルページを表示します。シェルウィンドウに表示されたマニュアルは、上下キーでスクロールするか、下記のキーボードショートカットを使用して操作できます。</p><ul><li>f またはスペースキー: 次のページ</li><li>b: 前のページ</li><li>q: 閉じる</li></ul> ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ Git Clone Branch – 特定のブランチをクローンする方法 ]]>
                </title>
                <description>
                    <![CDATA[ SVN や CVS のような比較的古い集中型のバージョンコントロールシステムとは異なり、Git は分散型です。完全な履歴とコードを操作する権限を、各開発者がローカルまたはリモートに持っています。また、必要に応じて、コードの複数の部分をどこからでも変更できます。 有名な Linux OS カーネルの作者である Linus Torvalds が、2005 年、Linux カーネルの開発用に Git を作成し、その後 Git は世界中でもっとも広く使われているモダンなバージョンコントロールシステムとなりました。 この記事では、Git clone と Git branch のワークフローを紹介し、必要に応じて特定のブランチを clone する方法を説明します。では始めましょう。 必要なもの  * ターミナルについての基礎知識  * ターミナルにコマンドを入力できること  * Git のインストール (以下でも説明します)  * GitHub のアカウント  * 笑顔で楽しんで取り組む姿勢 Git と GitHub の簡単な紹介 Wikipedia ]]>
                </description>
                <link>https://www.freecodecamp.org/japanese/news/git-clone-branch-how-to-clone-a-specific-branch/</link>
                <guid isPermaLink="false">61d44faac6ab60050725151d</guid>
                
                    <category>
                        <![CDATA[ Git ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ まつだようこ ]]>
                </dc:creator>
                <pubDate>Thu, 03 Feb 2022 23:45:00 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/japanese/news/content/images/2022/01/article-banner--1-.gif" medium="image" />
                <content:encoded>
                    <![CDATA[ <p data-test-label="translation-intro">
        <strong>原文:</strong> <a href="https://www.freecodecamp.org/news/git-clone-branch-how-to-clone-a-specific-branch/" target="_blank" rel="noopener noreferrer" data-test-label="original-article-link">Git Clone Branch – How to Clone a Specific Branch</a>
      </p><p>SVN や CVS のような比較的古い集中型のバージョンコントロールシステムとは異なり、Git は分散型です。完全な履歴とコードを操作する権限を、各開発者がローカルまたはリモートに持っています。また、必要に応じて、コードの複数の部分をどこからでも変更できます。</p><p>有名な Linux OS カーネルの作者である Linus Torvalds が、2005 年、Linux カーネルの開発用に Git を作成し、その後 Git は世界中でもっとも広く使われているモダンなバージョンコントロールシステムとなりました。</p><p>この記事では、Git clone と Git branch のワークフローを紹介し、必要に応じて特定のブランチを clone する方法を説明します。では始めましょう。</p><h2 id="-">必要なもの</h2><ul><li>ターミナルについての基礎知識</li><li>ターミナルにコマンドを入力できること</li><li>Git のインストール (以下でも説明します)</li><li>GitHub のアカウント</li><li>笑顔で楽しんで取り組む姿勢</li></ul><h2 id="git-github-">Git と GitHub の簡単な紹介</h2><p><a href="https://ja.wikipedia.org/wiki/Git">Wikipedia</a> では下記のように説明されています。</p><blockquote><strong>Git</strong>（ギット）は、プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システムである。</blockquote><p>一方 <strong>GitHub</strong> は、Git を使用したバージョンコントロールのための、ウェブ上のホスティングサービスを指します。GitHub は、Git が持つ分散型バージョンコントロールとソースコード管理の全機能に加え、コンピューターコードのための追加機能も提供します。</p><h2 id="windows-git-">Windows に Git をインストールする方法</h2><p>最新の <a href="https://git-for-windows.github.io/">Git for Windows インストーラー</a> をダウンロード、インストールしてください。</p><h2 id="linux-git-">Linux に Git をインストールする方法</h2><p>以下の中からあなたの Linux ディストリビューションに合わせてコマンドを実行してください。</p><h3 id="debian-ubuntu">Debian または Ubuntu</h3><pre><code>sudo apt-get update
sudo apt-get install git
</code></pre><h3 id="fedora">Fedora</h3><pre><code>sudo dnf install git
</code></pre><h3 id="centos">CentOS</h3><pre><code>sudo yum install git
</code></pre><h3 id="arch-linux">Arch Linux</h3><pre><code>sudo pacman -Sy git
</code></pre><h3 id="gentoo">Gentoo</h3><pre><code>sudo emerge --ask --verbose dev-vcs/git
</code></pre><h2 id="mac-git-">Mac に Git をインストールする方法</h2><p>最新の <a href="https://sourceforge.net/projects/git-osx-installer/files/">Git for Mac インストーラー</a> をダウンロード、インストールしてください。</p><p>または下記のコマンドを実行してください。</p><pre><code>brew install git
</code></pre><p>これで Git がインストールできました。ではチュートリアルに進みましょう。</p><h2 id="git-">Git クローン入門</h2><p>Git を使うと、「リポジトリ」の中であなたのプロジェクトにバージョンを付けて管理できます。このリポジトリを GitHub のようなバージョンコントロール用のウェブベースホスティングサービスに保存します。</p><p>このリポジトリはあなたのローカルマシンにクローン (clone) することができ、すべてのファイルとブランチをローカルに持つことができます。(ブランチについては後ほど説明します。)</p><figure class="kg-card kg-image-card"><img src="https://www.freecodecamp.org/japanese/news/content/images/2022/01/Screenshot-2020-06-23-at-5.47.48-AM.png" class="kg-image" alt="Screenshot-2020-06-23-at-5.47.48-AM" srcset="https://www.freecodecamp.org/japanese/news/content/images/size/w600/2022/01/Screenshot-2020-06-23-at-5.47.48-AM.png 600w, https://www.freecodecamp.org/japanese/news/content/images/size/w1000/2022/01/Screenshot-2020-06-23-at-5.47.48-AM.png 1000w, https://www.freecodecamp.org/japanese/news/content/images/size/w1600/2022/01/Screenshot-2020-06-23-at-5.47.48-AM.png 1600w, https://www.freecodecamp.org/japanese/news/content/images/size/w2400/2022/01/Screenshot-2020-06-23-at-5.47.48-AM.png 2400w" sizes="(min-width: 720px) 720px" width="2560" height="1600" loading="lazy"></figure><p>例えば、freeCodeCamp のリポジトリを SSH を使用して clone するには、次のコマンドを使用します。</p><pre><code>git clone git@github.com:freeCodeCamp/freeCodeCamp.git
</code></pre><h2 id="git--1">Git ブランチ入門</h2><p>プロジェクトの作業中、さまざまな機能の開発をすることになります。そして複数のコントリビューターが、そのプロジェクトと各機能の作業をすることでしょう。</p><p>ブランチを使用すると、<code>master</code> ブランチと同じファイルで自由に作業できる「プレイグラウンド (playground)」と呼ばれる環境を作ることができます。本番環境のコードを壊したり影響を与えることのないように、このブランチで、独立した機能を作成したり、新しい機能を試したり、破壊的な変更を行ったり、修正を行ったり、ドキュメントを書いたり、アイデアを試したりできます。作業が完了したらそのブランチを本番の <code>master</code> ブランチにマージ (merge) します。</p><p>ブランチは Git の中核をなすコンセプトであり、GitHub でも 1 つのプロジェクトに異なるバージョンがあるワークフローの管理に使われています。<code>master</code> ブランチは、そのリポジトリのデフォルトブランチで、「本番環境にデプロイ可能なコード」と見なされることが多いです。<code>passwordless-auth</code> や <code>refactor-signup-ux</code> のような新しいブランチは <code>master</code> ブランチから作成できます。</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://www.freecodecamp.org/japanese/news/content/images/2022/01/Screenshot-2020-06-22-at-2.47.53-AM.png" class="kg-image" alt="Screenshot-2020-06-22-at-2.47.53-AM" srcset="https://www.freecodecamp.org/japanese/news/content/images/size/w600/2022/01/Screenshot-2020-06-22-at-2.47.53-AM.png 600w, https://www.freecodecamp.org/japanese/news/content/images/size/w1000/2022/01/Screenshot-2020-06-22-at-2.47.53-AM.png 1000w, https://www.freecodecamp.org/japanese/news/content/images/size/w1600/2022/01/Screenshot-2020-06-22-at-2.47.53-AM.png 1600w, https://www.freecodecamp.org/japanese/news/content/images/2022/01/Screenshot-2020-06-22-at-2.47.53-AM.png 2000w" sizes="(min-width: 720px) 720px" width="2000" height="1277" loading="lazy"><figcaption>freeCodeCamp リポジトリのすべてのブランチ</figcaption></figure><h2 id="git--2">Git ブランチをクローンする方法</h2><p>リポジトリは <code>git clone</code> コマンドでクローンすることができますが、このコマンドはブランチおよびリモートの <code>HEAD</code> をクローンすることを覚えておいてください。これは通常、デフォルトの設定では <code>master</code> ブランチとリポジトリ内の他のすべてのブランチを含みます。</p><p>つまり、リポジトリをクローンすると、<code>master</code> と他すべてのブランチをクローンすることになります。これは、クローンした後あなた自身の操作で目的のブランチにチェックアウトしなければならないということです。</p><p>例えば、あるプロジェクトにおけるあなたのタスクがユーザーダッシュボードにパスワードレス認証を追加することだとしましょう。この機能が <code>passwordless-auth</code> ブランチにあるとします。</p><p>この場合、あなたの "feature branch" は後で <code>master</code> ブランチにマージされるので、今は <code>master</code> ブランチは必ずしも必要ありません。では、「あなたが必要ないたくさんのファイル」がある他のブランチをフェッチ (fetch) せずにこの <code>passwordless-auth</code> ブランチをクローンするにはどうしたらいいのでしょう。</p><p>この説明用に下記のサンプルリポジトリを作成しました。このリポジトリは Nextjs で作成されたシンプルなブログで、下記 4 つのダミーブランチがあります。</p><ul><li>master</li><li>dev</li><li>staging</li><li>passwordless-auth</li></ul><p>Nextjs では、<code>pages/api</code> フォルダー内のすべてのファイルが <code>/api/*</code> パスにマッピングされ、ページではなくAPIエンドポイントとして扱われます。このリポジトリではそれぞれのブランチに差異をつけるため、<a href="https://github.com/BolajiAyodeji/nextjs-blog/tree/master/pages/api">このディレクトリ</a>にダミーのAPIを作成しました。</p><p><code>master</code> ブランチには <strong>pages/api/hello.js</strong> というファイルがありますが、 <code>passwordless-auth</code> ブランチには <strong>pages/api/auth.js</strong> というファイルがあります。それぞれのファイルはダミーテキストのレスポンスを返しています。<a href="https://nextjs-blog.bolajiayodeji.vercel.app/api/hello">こちら</a>にある <code>master</code> ブランチの hello API のレスポンスを見てみてください。(あなたへの挨拶のメッセージが入っているはずです。)</p><p>では、このリポジトリをクローンしてみましょう。</p><pre><code>git clone git@github.com:BolajiAyodeji/nextjs-blog.git
</code></pre><p>これでこのリポジトリ内のすべてのブランチにアクセスできるようになり、簡単にブランチを切り替えてそれぞれのバージョンとファイルを見ることができるようになります。</p><pre><code>git branch -a
</code></pre><figure class="kg-card kg-image-card"><img src="https://www.freecodecamp.org/japanese/news/content/images/2022/01/Screenshot-2020-06-22-at-4.51.56-AM.png" class="kg-image" alt="Screenshot-2020-06-22-at-4.51.56-AM" srcset="https://www.freecodecamp.org/japanese/news/content/images/size/w600/2022/01/Screenshot-2020-06-22-at-4.51.56-AM.png 600w, https://www.freecodecamp.org/japanese/news/content/images/size/w1000/2022/01/Screenshot-2020-06-22-at-4.51.56-AM.png 1000w, https://www.freecodecamp.org/japanese/news/content/images/2022/01/Screenshot-2020-06-22-at-4.51.56-AM.png 1199w" sizes="(min-width: 720px) 720px" width="1199" height="755" loading="lazy"></figure><p><strong>remotes/origin/..</strong> というブランチはどこから来たのか疑問に思いますか？</p><p>リポジトリをクローンする時、<strong>リモート (remote)</strong> と呼ばれる、インターネット上、あるいは社内のサーバーなどからリポジトリのデータをプル (pull) します。この origin という語は、リモートの URL を置き換える別名として Git が自動で作成したエイリアスです。(別のエイリアスを指定したり、変更することもできます。)</p><p>これらの &nbsp;<strong>remotes/origin/..</strong> というブランチは、インターネット上からクローンした際の元リポジトリ (origin) を指しており、origin に対して pull、push などの操作を行うことができます。</p><figure class="kg-card kg-image-card"><img src="https://www.freecodecamp.org/japanese/news/content/images/2022/01/Screenshot-2020-06-23-at-5.24.43-AM.png" class="kg-image" alt="Screenshot-2020-06-23-at-5.24.43-AM" srcset="https://www.freecodecamp.org/japanese/news/content/images/size/w600/2022/01/Screenshot-2020-06-23-at-5.24.43-AM.png 600w, https://www.freecodecamp.org/japanese/news/content/images/size/w1000/2022/01/Screenshot-2020-06-23-at-5.24.43-AM.png 1000w, https://www.freecodecamp.org/japanese/news/content/images/size/w1600/2022/01/Screenshot-2020-06-23-at-5.24.43-AM.png 1600w, https://www.freecodecamp.org/japanese/news/content/images/2022/01/Screenshot-2020-06-23-at-5.24.43-AM.png 1684w" sizes="(min-width: 720px) 720px" width="1684" height="298" loading="lazy"></figure><p>つまり <code>master</code> をあなたのマシンにクローンした場合、<code>remotes/origin/master</code> はインターネット上の元の <code>master</code> ブランチで、 <code>master</code> があなたのローカルマシンにあるブランチになります。pull、push などの操作は <code>remotes/origin/master</code> に向けて行います。</p><p>まとめると、<strong>remote</strong> はインターネット上のリポジトリを指す URL で、<strong>origin</strong> はこの remote URL のエイリアスです。</p><figure class="kg-card kg-image-card"><img src="https://www.freecodecamp.org/japanese/news/content/images/2022/01/Screenshot-2020-06-23-at-5.28.06-AM.png" class="kg-image" alt="Screenshot-2020-06-23-at-5.28.06-AM" srcset="https://www.freecodecamp.org/japanese/news/content/images/size/w600/2022/01/Screenshot-2020-06-23-at-5.28.06-AM.png 600w, https://www.freecodecamp.org/japanese/news/content/images/size/w1000/2022/01/Screenshot-2020-06-23-at-5.28.06-AM.png 1000w, https://www.freecodecamp.org/japanese/news/content/images/size/w1600/2022/01/Screenshot-2020-06-23-at-5.28.06-AM.png 1600w, https://www.freecodecamp.org/japanese/news/content/images/2022/01/Screenshot-2020-06-23-at-5.28.06-AM.png 2000w" sizes="(min-width: 720px) 720px" width="2000" height="1277" loading="lazy"></figure><h2 id="--1">特定のブランチをクローンする方法</h2><p>では、デモ用のリポジトリから特定のブランチをクローンしてみましょう。特定のブランチをクローンする方法は 2 つあります。以下いずれかの方法があります。</p><ul><li>リポジトリをクローンし、すべてのブランチをフェッチし、すぐ特定のブランチにチェックアウトする</li><li>リポジトリをクローンし、1 つのブランチだけをフェッチする</li></ul><h3 id="-1">方法その 1</h3><pre><code>git clone --branch &lt;branchname&gt; &lt;remote-repo-url&gt;
</code></pre><p>または</p><pre><code>git clone -b &lt;branchname&gt; &lt;remote-repo-url&gt;
</code></pre><p>上記の <strong>-b</strong> は <strong>--branch</strong> のエイリアスです。</p><p>このコマンドにより、リポジトリ内のすべてのブランチをフェッチし、<code>&lt;branchname&gt;</code> に指定したブランチにチェックアウトし、指定したブランチが、<code>git push</code> と <code>git pull</code> の設定がされたローカルブランチになります。しかしこのやり方では、まだ各ブランチから全てのファイルをフェッチしています。やりたいこととは少し違うようですね。</p><p>試してみましょう。</p><pre><code> git clone -b passwordless-auth git@github.com:BolajiAyodeji/nextjs-blog.git
</code></pre><p>このコマンドにより、<code>passwordless-auth</code> がローカルブランチに設定されますが、まだ他のブランチが追跡されています。</p><figure class="kg-card kg-image-card"><img src="https://www.freecodecamp.org/japanese/news/content/images/2022/01/Screenshot-2020-06-23-at-5.30.01-AM.png" class="kg-image" alt="Screenshot-2020-06-23-at-5.30.01-AM" srcset="https://www.freecodecamp.org/japanese/news/content/images/size/w600/2022/01/Screenshot-2020-06-23-at-5.30.01-AM.png 600w, https://www.freecodecamp.org/japanese/news/content/images/size/w1000/2022/01/Screenshot-2020-06-23-at-5.30.01-AM.png 1000w, https://www.freecodecamp.org/japanese/news/content/images/size/w1600/2022/01/Screenshot-2020-06-23-at-5.30.01-AM.png 1600w, https://www.freecodecamp.org/japanese/news/content/images/2022/01/Screenshot-2020-06-23-at-5.30.01-AM.png 2000w" sizes="(min-width: 720px) 720px" width="2000" height="1277" loading="lazy"></figure><figure class="kg-card kg-image-card"><img src="https://www.freecodecamp.org/japanese/news/content/images/2022/01/Screenshot-2020-06-30-at-3.27.31-AM.png" class="kg-image" alt="Screenshot-2020-06-30-at-3.27.31-AM" srcset="https://www.freecodecamp.org/japanese/news/content/images/size/w600/2022/01/Screenshot-2020-06-30-at-3.27.31-AM.png 600w, https://www.freecodecamp.org/japanese/news/content/images/size/w1000/2022/01/Screenshot-2020-06-30-at-3.27.31-AM.png 1000w, https://www.freecodecamp.org/japanese/news/content/images/2022/01/Screenshot-2020-06-30-at-3.27.31-AM.png 1476w" sizes="(min-width: 720px) 720px" width="1476" height="450" loading="lazy"></figure><h3 id="-2">方法その 2</h3><pre><code>git clone --branch &lt;branchname&gt; --single-branch &lt;remote-repo-url&gt;
</code></pre><p>または</p><pre><code>git clone -b &lt;branchname&gt; --single-branch &lt;remote-repo-url&gt;
</code></pre><p>上記の <strong>-b</strong> は <strong>--branch</strong> のエイリアスです。</p><p>このコマンドはほとんど方法その 1 と同じことを実行しますが、Git バージョン 1.7.10 以降で導入された <code>--single-branch</code> オプションを使用しています。このオプションにより、他のブランチをフェッチせず、指定のブランチのファイルだけをフェッチすることができます。</p><p>試してみましょう。</p><pre><code>git clone -b passwordless-auth --single-branch git@github.com:BolajiAyodeji/nextjs-blog.git
</code></pre><p>このコマンドにより <code>passwordless-auth</code> がローカルブランチに設定され、このブランチだけを追跡している状態になります。</p><figure class="kg-card kg-image-card"><img src="https://www.freecodecamp.org/japanese/news/content/images/2022/01/Screenshot-2020-06-23-at-5.31.12-AM.png" class="kg-image" alt="Screenshot-2020-06-23-at-5.31.12-AM" srcset="https://www.freecodecamp.org/japanese/news/content/images/size/w600/2022/01/Screenshot-2020-06-23-at-5.31.12-AM.png 600w, https://www.freecodecamp.org/japanese/news/content/images/size/w1000/2022/01/Screenshot-2020-06-23-at-5.31.12-AM.png 1000w, https://www.freecodecamp.org/japanese/news/content/images/size/w1600/2022/01/Screenshot-2020-06-23-at-5.31.12-AM.png 1600w, https://www.freecodecamp.org/japanese/news/content/images/2022/01/Screenshot-2020-06-23-at-5.31.12-AM.png 2000w" sizes="(min-width: 720px) 720px" width="2000" height="1277" loading="lazy"></figure><figure class="kg-card kg-image-card"><img src="https://www.freecodecamp.org/japanese/news/content/images/2022/01/Screenshot-2020-06-30-at-3.29.07-AM.png" class="kg-image" alt="Screenshot-2020-06-30-at-3.29.07-AM" srcset="https://www.freecodecamp.org/japanese/news/content/images/size/w600/2022/01/Screenshot-2020-06-30-at-3.29.07-AM.png 600w, https://www.freecodecamp.org/japanese/news/content/images/size/w1000/2022/01/Screenshot-2020-06-30-at-3.29.07-AM.png 1000w, https://www.freecodecamp.org/japanese/news/content/images/2022/01/Screenshot-2020-06-30-at-3.29.07-AM.png 1462w" sizes="(min-width: 720px) 720px" width="1462" height="394" loading="lazy"></figure><p><code>cd pages/api</code> コマンドを実行すると、前述した <code>passwordless-auth</code> ブランチの <code>auth.js</code> ファイルを見つけることができます。</p><h2 id="--2">結論</h2><p>インターネットの帯域やストレージの空き容量が少ない中で、特定のブランチの作業をしたい状況もあるでしょう。他にもさまざまな理由で、ファイルを限定して特定のブランチをクローンしたいことがあるかもしれません。幸い、Git はそれを実現できる柔軟性を持っています。まずは肩ならしにこの記事で学んだことを試してみましょう。Git について学ぶことはまだまだあります。</p><p>ここから一つずつ学んでいきましょう。</p> ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ Git ブランチを削除する方法 (ローカル、リモート) ]]>
                </title>
                <description>
                    <![CDATA[ 通常、Git ブランチの削除は簡単です。この記事ではローカルまたはリモートの Git ブランチを削除する方法を学びます。 TL;DR バージョン // ローカルのブランチを削除する場合 git branch -d localBranchName // リモートのブランチを削除する場合 git push origin --delete remoteBranchName ブランチはいつ削除するか Git リポジトリに複数のブランチがあるのは普通のことです。ブランチは、新しいコードをメインのコードベースから隔離した状態で異なる機能や修正の作業をするための良い方法です。 リポジトリにはメインのコードベース用の main ブランチがあることが多く、開発者は異なる機能の作業をするために別のブランチを作成します。 多くの場合、ある機能の作業が完了したら、そのブランチを削除することが推奨されます。 ローカルのブランチを削除する Git では現在のブランチを削除することはできません。そのため、削除対象以外のブランチに切り替える (チェックアウトする) 必要があります。 例: git ch ]]>
                </description>
                <link>https://www.freecodecamp.org/japanese/news/how-to-delete-a-git-branch-both-locally-and-remotely/</link>
                <guid isPermaLink="false">61d1284ccd084d0515c61174</guid>
                
                    <category>
                        <![CDATA[ Git ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ まつだようこ ]]>
                </dc:creator>
                <pubDate>Tue, 04 Jan 2022 04:00:00 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/japanese/news/content/images/2022/01/5f9c9e53740569d1a4ca3c89.jpg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p data-test-label="translation-intro">
        <strong>原文:</strong> <a href="https://www.freecodecamp.org/news/how-to-delete-a-git-branch-both-locally-and-remotely/" target="_blank" rel="noopener noreferrer" data-test-label="original-article-link">How to Delete a Git Branch Both Locally and Remotely</a>
      </p><p>通常、Git ブランチの削除は簡単です。この記事ではローカルまたはリモートの Git ブランチを削除する方法を学びます。</p><h3 id="tl-dr-">TL;DR バージョン</h3><pre><code class="language-bash">// ローカルのブランチを削除する場合
git branch -d localBranchName

// リモートのブランチを削除する場合
git push origin --delete remoteBranchName
</code></pre><h2 id="-">ブランチはいつ削除するか</h2><p>Git リポジトリに複数のブランチがあるのは普通のことです。ブランチは、新しいコードをメインのコードベースから隔離した状態で異なる機能や修正の作業をするための良い方法です。</p><p>リポジトリにはメインのコードベース用の <code>main</code> ブランチがあることが多く、開発者は異なる機能の作業をするために別のブランチを作成します。</p><p>多くの場合、ある機能の作業が完了したら、そのブランチを削除することが推奨されます。</p><h2 id="--1">ローカルのブランチを削除する</h2><p>Git では現在のブランチを削除することはできません。そのため、削除対象以外のブランチに切り替える (チェックアウトする) 必要があります。</p><p>例: <code>git checkout main</code></p><p>ブランチの削除は <code>git branch -d &lt;branch&gt;</code> で実行します。</p><p>例: <code>git branch -d fix/authentication</code></p><p><code>-d</code> オプションは、削除対象のブランチがリモートブランチにプッシュおよびマージ済みの場合のみ削除を実行します。プッシュ、マージされていないブランチを強制的に削除したい場合は、代わりに <code>-D</code> を使用します。</p><p>これでローカルのブランチが削除されました。</p><h2 id="--2">リモートのブランチを削除する</h2><p>こちらがリモートのブランチを削除するコマンドです。</p><pre><code>git push &lt;remote&gt; --delete &lt;branch&gt;
</code></pre><p>例: <code>git push origin --delete fix/authentication</code></p><p>これでリモートのブランチが削除されました。</p><p>こちらの、より短いコマンドでもリモートブランチを削除できます。</p><pre><code>git push &lt;remote&gt; :&lt;branch&gt;
</code></pre><p>例: <code>git push origin :fix/authentication</code></p><p>下記のエラーが発生した場合、すでに他の誰かがそのブランチを削除した可能性があります。</p><pre><code class="language-bash">error: unable to push to unqualified destination: remoteBranchName The destination refspec neither matches an existing ref on the remote nor begins with refs/, and we are unable to guess a prefix based on the source ref. error: failed to push some refs to 'git@repository_name'
</code></pre><p>下記のコマンドであなたのブランチ一覧を同期してみましょう。</p><pre><code>git fetch -p
</code></pre><p><code>-p</code> フラグは "prune" (取り除く) を意味します。フェッチ実行後、リモートに存在しないブランチは、ローカルからも削除されます。</p><p>このチュートリアルがお役に立ちましたら、ぜひ周りにも共有してください😉</p><p>英語版ではこのような記事を 8,000 件以上無料で公開しています。日本語、他言語も順次対応中です。</p> ]]>
                </content:encoded>
            </item>
        
    </channel>
</rss>
