📖

GitHubへのマージ手順

2024/11/21に公開

はじめに

本記事ではマージの手順について書きます。

作業環境

Windows
GitHub
VSCode

作業手順(簡易版)

※見やすさを重視するために簡単な説明しか書いていませんが、最初の慣れないうちはそれぞれのコマンドの意味を理解し、今何をしようとしているのかイメージしながら入力してください。
※Gitでの管理は他の方に迷惑をかける可能性があるので、何をするにしても慎重に行う癖をつけておきましょう。

Git イメージ図.drawio.png

コマンド アクション
① [メニュータブ]でFile→Open Folder→対象のフォルダを選択 プロジェクトを行っているディレクトリへ移動する
② pwd 今いるディレクトリを確認する
③ git branch リポジトリ内の全てのブランチを表示する
④ git fetch リモートリポジトリの内容をローカルリポジトリのリモート追跡ブランチに反映する
⑤ git diff origin/develop..HEAD --name-status ローカルリポジトリとリモート追跡ブランチの差分ファイルを確認する
⑥ git merge リモートリポジトリの内容をローカルリポジトリに反映する

作業手順(詳細版)

①[メニュータブ]でFile→Open Folder→対象のフォルダを選択(プロジェクトを行っているディレクトリへ移動する)

そもそも今いるディレクトリが間違えていたら欲しい情報を取り込まないため、必ず移動しましょう。

②pwd(今いるディレクトリを確認する)

これは①の手順が正しく行えているか確認する作業になります。もし違うディレクトリが出たらやり直してください。

③git branch(リポジトリ内の全てのブランチを表示する)

これはリポジトリ内にあるブランチ一覧を表示するコマンドです。その中で今いるブランチには→がついた状態になっていると思いますので、こちらも合っているか確認しておきましょう。

④git fetch(リモートリポジトリの内容をローカルリポジトリのリモート追跡ブランチに反映する)

このコマンドはリモートリポジトリの内容を取ってくるコマンドです。ローカルリポジトリ自体にはまだ反映されておらず、リモートリポジトリの情報が見れるようになっただけ、という状態です。私が入っている今の案件ではfetchしてから、diffコマンドでリモートリポジトリとローカルリポジトリが競合しないか確認を行うルールとなっています。

⑤git diff origin/develop..HEAD --name-status(ローカルリポジトリとリモート追跡ブランチの差分ファイルを確認する)

ここで表示されるファイルに自身が編集中のファイルが含まれている場合は、一度退避させます。
※退避しなかったらコンフリクトが起こります。(ターミナルにエラーが出て教えてくれるので、データが書き換わることはありません。)

⑥git merge(リモートリポジトリの内容をローカルリポジトリに反映する)

全ての確認が行い、問題なければmergeして最新のリモートリポジトリのソースコードを取り込みます。

Discussion