ブランチの管理について
ブランチを使用して、プロジェクトの変更を安全に試すことができます。 ブランチは、開発作業をリポジトリ内の他のブランチから分離します。 たとえば、ブランチを使用して新しい機能を開発したり、バグを修正したりすることができます。
ブランチは常に既存のものから作成します。 通常、リポジトリのデフォルトブランチからブランチを作成します。 その後、他の人がリポジトリに加えた変更とは別に、新しいブランチで作業できます。
ブランチの履歴で、以前のコミットから始まるブランチを作成することもできます。 これは、バグを調査するためにリポジトリの以前のビューに戻る必要がある場合や、最新リリースの上にホットフィックスを作成する必要がある場合に役立ちます。
作業が完了したら、プルリクエストを作成して、現在のブランチの変更を別のブランチにマージできます。 詳細については、「GitHub Desktop からの issue または pull request の作成」および「pull requests について」を参照してください。
リポジトリへの読み取りアクセスがある場合は、常に GitHub Desktop でブランチを作成できますが、リポジトリへの書き込みアクセスがある場合のみ、ブランチを GitHub にプッシュできます。
リポジトリ管理者は、ブランチの保護を有効化できます。 保護されたブランチで作業しているなら、ブランチを削除したり、ブランチにフォースプッシュしたりすることはできません。 リポジトリ管理者は、他の保護されたブランチの設定を有効化して、ブランチがマージできるようになる前に特定のワークフローを強制することができます。 詳しくは、「保護されたブランチについて」を参照してください。
リポジトリ管理者も、ルールセットを有効にすることができます。 ルールセットを使用すると、新しいブランチを作成するときに特定のブランチ名を要求したり、バイパス アクセス許可を持つユーザーのみに新しいブランチをリモート リポジトリへの発行を許可したりできます。 GitHub Desktop は警告を表示し、ブランチがルールセットに従っていない場合、ブランチが作成されないようにします。 詳しくは、「ルールセットについて」を参照してください。
ブランチの作成
ヒント: 最初に作成する新しいブランチは、既定のブランチを基にしています。 複数のブランチがある場合、現在チェックアウトされているブランチまたはデフォルトのブランチに基づいて、新しいブランチを選択できます。
-
アプリの上部で [現在のブランチ] をクリックし、ブランチの一覧から、新しいブランチのベースにしたいブランチをクリックしてください。
-
[New Branch] (新しいブランチ) をクリックします。
-
[ブランチの作成] ウィンドウの [名前] に新しいブランチの名前を入力します。
-
[ブランチ作成のベース] で新しいベース ブランチを選びます。
-
[Create Branch] (ブランチの作成) をクリックします。
以前のコミットからブランチを作成する
-
左サイドバーにある [履歴] をクリックします。
-
新しいブランチを作成するコミットを右クリックし、 [コミットからブランチの作成] を選択します。
-
[ブランチの作成] ウィンドウの [名前] に新しいブランチの名前を入力します。
-
[Create Branch] (ブランチの作成) をクリックします。
ブランチを公開する
GitHub Enterprise Server にブランチを作成する場合は、ブランチを公開して、GitHub でのコラボレーションに使用できるようにする必要があります。
- リポジトリ バーの [現在のブランチ] をクリックし、公開するブランチをクリックします。
- [ブランチを公開する] をクリックします。
ブランチ間の切り替え
リポジトリのどんなブランチに対しても、コミットを表示したり、コミットを行ったりすることができます。 まだコミットしていない、保存した変更がある場合は、その変更の扱いについて、ブランチを切り替える前に決める必要があります。 現在のブランチに変更をコミットする、現在のブランチへの変更を一時的に保存するために stash する、または変更を新しいブランチに移動することが可能です。 ブランチを切り替える前に変更をコミットする場合は、「GitHub Desktop でプロジェクトの変更をコミットしてレビューする」を参照してください。
ヒント: ブランチを切り替える場合の既定の動作は、 [詳細] で設定できます。 詳しくは、「GitHub Desktop での基本設定の構成」を参照してください。
- リポジトリ バーの [現在のブランチ] をクリックし、切り替え先のブランチをクリックします。
- コミットされていない変更を保存した場合は、[ブランチの切り替え] ウィンドウで、 [変更を CURRENT-BRANCH に残す] または [変更を NEW-BRANCH に反映する] を選んで、 [ブランチの切り替え] をクリックします。
ブランチの削除
現時点でブランチがオープンなプルリクエストに関連付けられている場合は、ブランチを削除できません。 ブランチの削除を取り消すことはできません。
- リポジトリ バーの [現在のブランチ] をクリックし、削除するブランチをクリックします。
- メニュー バーの [Branch] (ブランチ) をクリックし、 [Delete...] (削除) をクリックします。Shift+Command+D を押すこともできます。
- リポジトリ バーの [現在のブランチ] をクリックし、削除するブランチをクリックします。
- メニュー バーの [Branch] (ブランチ) をクリックし、 [Delete...] (削除) をクリックします。Ctrl+Shift+D を押すこともできます。
参考資料
- 「GitHubからのGitHub Desktopへのリポジトリのクローン方法」
- GitHub 用語集の「GitHub 用語集」
- ブランチの概要
- Git ドキュメントの "Nutshell でのブランチ"
- GitHub Desktop での変更の一時退避