Gitを使ったバージョン管理では、様々なワークフローや応用方法があります。この記事では、具体的なワークフローとその応用について記述します。
目次
- フォークとプルリクエストのワークフロー
- GitHub Actionsを使った自動化
- Gitのコンフリクト解決のベストプラクティス
1. フォークとプルリクエストのワークフロー
フォーク
GitHub上のリポジトリをフォークすることで、自分のアカウントにコピーを作成します。これにより、オリジナルのリポジトリに影響を与えずに変更を加えることができます。
クローン
フォークしたリポジトリをローカル環境にクローンします。
git clone https://github.com/your-username/repo.git
ブランチの作成
新しいブランチを作成し、変更を加えます。
git checkout -b feature-branch
変更のコミットとプッシュ
変更をコミットし、リモートリポジトリにプッシュします。
git add .
git commit -m "Add new feature"
git push origin feature-branch
プルリクエストの作成
GitHub上でプルリクエスト(PR)を作成し、変更をオリジナルのリポジトリにマージするようにリクエストします。
2. GitHub Actionsを使った自動化
GitHub Actionsは、リポジトリに対する自動化タスクを実行するためのツールです。CI/CDパイプラインを構築するために使用されます。
ワークフローの作成
.github/workflows
ディレクトリにワークフローファイルを作成します。
ci.yml
name: CI
on:
push:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Node.js
uses: actions/setup-node@v2
with:
node-version: '14'
- run: npm install
- run: npm test
3. Gitのコンフリクト解決のベストプラクティス
コンフリクトの発生
複数のブランチで同じファイルの同じ部分を変更した場合、マージ時にコンフリクトが発生します。
コンフリクトの解消
コンフリクトが発生した場合、Gitはコンフリクトのあるファイルを表示します。これを手動で修正し、ステージングします。
git add <ファイル名>
リベースとコンフリクト解消
リベース中にコンフリクトが発生した場合も同様に、コンフリクトを修正し、リベースを続行します。
git rebase --continue
まとめ
この記事では、フォークとプルリクエストのワークフロー、GitHub Actionsを使った自動化、コンフリクト解決のベストプラクティスについて記述しました。これらのツールと手法を活用して、効率的でスムーズなチーム開発を目指します。