こんにちは!GitHub初心者の皆さん、今日はプロジェクトに参加している場合でも、自分のプロジェクトに対しても安全に機能追加や改修を行う方法についてお話しします。
動いているプログラムをいきなり変更するのはリスクが伴いますよね。そんなときに役立つのが、GitHubのブランチ機能です。
ブランチを活用すれば、メインのプログラムに影響を与えることなく、安全に新しい機能を追加したり、バグを修正したりすることができます。
この記事は 2024-5-28に「T.Miyakaw Blog https://miyakawa2449.github.io/」で公開した記事を写しています。
GitHubでの機能追加作業の流れ
新しいブランチを作成
まずは、新しい機能を追加するために新しいブランチを作成します。ブランチ名は feature/
プレフィックスを使うことが一般的です。
`git checkout -b feature/new-feature`
ブランチで作業する
作成したブランチでコードを改編し、変更をコミットします。
# ファイルを編集後
`git add .git commit -m "Add new feature"`
リモートリポジトリにプッシュ
変更をリモートリポジトリにプッシュします。
`git push origin feature/new-feature`
プルリクエスト (Pull Request) を作成
GitHub上でプルリクエストを作成し、変更をメインブランチにマージするようにリクエストします。
- GitHubのリポジトリページにアクセス
Pull requests
タブをクリックNew pull request
ボタンをクリックbase
ブランチにmain
(またはdevelop
など)、compare
ブランチにfeature/new-feature
を選択- プルリクエストのタイトルと説明を記入して作成
コードレビューとテスト
プルリクエストを通じて他の開発者にコードレビューを依頼し、必要な修正を行います。自動テストも含めて、テストを行います。
マージ
コードレビューとテストが完了したら、プルリクエストをマージします。
- プルリクエストページで
Merge pull request
ボタンをクリック - 必要に応じて、マージメソッド(
Create a merge commit
、Squash and merge
、Rebase and merge
)を選択
ローカルのメインブランチを更新
マージ後、ローカルのメインブランチを最新の状態に更新します。
コマンドの説明
`git checkout main`
このコマンドは、ローカルリポジトリの main
ブランチに切り替えます。これにより、現在の作業ブランチから main
ブランチに戻ることができます。
`git pull origin main`
このコマンドは、リモートリポジトリ(origin
)の main
ブランチの最新の変更をローカルリポジトリに取り込む(取得して統合する)ためのものです。これにより、ローカルの main
ブランチがリモートの最新の状態と同期されます。
ブランチ命名のベストプラクティス
一般的な機能追加ブランチ名の例
以下のような命名形式がよく使われます:
feature/new-feature
feature/add-user-authentication
feature/update-dashboard-ui
具体例
例えば、新しい認証機能を追加する場合のブランチ名:
`git checkout -b feature/add-authentication`
ユーザーインターフェースを更新する場合のブランチ名:
`git checkout -b feature/update-ui`
一般的な命名規則
feature/
プレフィックス: 機能追加であることを明示するために使います。- 説明的な名前: 機能の内容を簡潔に説明する名前を付けます。
その他の命名規則
- バグ修正:
bugfix/
を使う (bugfix/fix-login-issue
) - リリース準備:
release/
を使う (release/v1.2.0
) - 緊急修正:
hotfix/
を使う (hotfix/urgent-security-patch
)
カスタマイズの例
特定のプロジェクトやチームで独自の命名規則を持つことも可能です。例えば、add/
や update/
を使うこともできますが、チーム全体で統一した命名規則を決めると良いでしょう。
`# 機能追加を明示するために、チームで統一した規則を使用git checkout -b feature/add-new-feature`
このようにすることで、ブランチ名が一貫性を持ち、他の開発者にもわかりやすくなります。
まとめ
ブランチを活用することで、動いているプログラムに直接影響を与えることなく、安全に新しい機能を追加したり、バグを修正したりすることができます。プルリクエストを使って他の開発者にコードレビューを依頼し、テストを通じて変更を確認することで、プロジェクトの品質を保ちながら効率的に作業を進めることができます。ぜひ、今回ご紹介した方法を活用して、GitHubでの開発をより安全かつ効果的に進めてくださいね!