プッシュ
- 解説
- 1. プッシュとは
- 2. 初回のプッシュをしてみよう
- 3. リモートリポジトリの内容を確認しよう
- 4. 変更をプッシュしてみよう
解説
1. プッシュとは
プッシュ(push)とは、ローカルリポジトリの内容(コミット履歴など)を、リモートリポジトリに反映(アップロード)する操作のことです。
プッシュを実行することで、自分のPC上のプロジェクトを、リモートリポジトリを介して共有することができます。
2. 初回のプッシュをしてみよう
「git_lesson」プロジェクトのローカルリポジトリの内容を、Bitbucket上に作成したリモートリポジトリにプッシュしてみましょう。
プッシュの手順
手順1
(1) | Sourcetreeを起動し、画面左上の「プッシュ」ボタンをクリックして、「プッシュ」画面を開いてください。 |
(2) | 「プッシュ」画面中央の「プッシュするブランチ」に表示されている、「対象」にチェックを入れてください。 |
(3) | 画面右下の「プッシュ」ボタンをクリックしてプッシュを実行してください。 |
手順1
(1) | Sourcetreeを起動し、画面左上の「プッシュ」ボタンをクリックして、「プッシュ」画面を開いてください。 |
(2) | キーチェーンのアクセスを求めるダイアログが表示された場合は、Macのログインパスワードを入力し、「常に許可」をクリックしてください。 |
(3) | 画面中央の「プッシュするブランチ」に表示されている、チェックボックスにチェックを入れてください。 |
(4) | 画面右下の「OK」ボタンをクリックしてプッシュを実行してください。 |
以上でローカルリポジトリの内容(自分のPC上の「git_lesson」プロジェクト)を、Bitbucket上のリモートリポジトリにプッシュすることができました。
masterとorigin/master
初回のプッシュを実行すると、「origin/master」という名前の目印が新たに作成されます。「master」はローカルリポジトリの状態を表すのに対し、「origin/master」はリモートリポジトリの状態を表します。
「master」「origin/master」の役割り
master | ローカルリポジトリのコミットの先頭を指し示します。 |
origin/master | リモートリポジトリにプッシュされたコミットの先頭を指し示します。 |
3. リモートリポジトリの内容を確認しよう
Sourcetree画面右上の「リモート」ボタンをクリックし、Bitbucket上の「git_lesson」リポジトリにアクセスして、ローカルリポジトリの内容が反映されていることを確認しましょう。
Sourcetree画面右上の「リモートを表示」ボタンをクリックし、Bitbucket上の「git_lesson」リポジトリにアクセスして、ローカルリポジトリの内容が反映されていることを確認しましょう。
Bitbucketはサイドメニューからビューを切り替えることができます。
「ソース」画面
画面中央にリポジトリで管理しているフォルダーとファイルが表示されます。 ファイル名をクリックするとソースを確認することができます。 |
「コミット」画面
コミット履歴を確認することができます。 |
なお、「ソース」画面中央に「Take the next steps for this repository ~」というメッセージのウインドウが表示されている場合は、右上の「×」ボタンで閉じてしまってかまいません。
4. 変更をプッシュしてみよう
「git_lesson」プロジェクト内の「lesson.txt」ファイルに修正を加えて、ファイルの変更内容をコミット・プッシュしてみましょう。
コミット・プッシュの手順
手順2 - 「lesson.txt」ファイルに変更を加えてコミットする
(1) | VSCodeを起動し、ヘッダーメニューの「ファイル」>「フォルダーを開く...」から、「git_lesson」フォルダーを開いてください。 |
(2) | 「lesson.txt」ファイルの7行目に、下記テキストを追記して保存してください。 |
# はじめてのGit
## 学習メモ
- ローカルリポジトリを作成しました。
- コミットについて学習しました。
- プッシュについて学習しました。
(3) | Sourcetreeを開き、コミットメッセージを「学習メモを更新(プッシュの学習)」として、変更をコミットしてください。 |
サイドメニューから「History」を選択し、上の手順で実行したコミットの履歴を確認してみましょう。
手順2 - 「lesson.txt」ファイルに変更を加えてコミットする
(1) | VSCodeを起動し、ヘッダーメニューの「ファイル」>「開く...」から、「git_lesson」フォルダーを開いてください。 |
(2) | 「lesson.txt」ファイルの7行目に、下記テキストを追記して保存してください。 |
# はじめてのGit
## 学習メモ
- ローカルリポジトリを作成しました。
- コミットについて学習しました。
- プッシュについて学習しました。
(3) | Sourcetreeを開き、コミットメッセージを「学習メモを更新(プッシュの学習)」として、変更をコミットしてください。 |
サイドメニューから「履歴」を選択し、上の手順で実行したコミットの履歴を確認してみましょう。
ここまでの作業は、ローカルリポジトリ内でコミットを実行しただけなので、リモートリポジトリにはまだ反映されていません。
上の画像では、ローカルのコミットの記録を表す「master」が、リモートのコミットの記録を表す「origin/master」より1コミット先行している状態になります。
次の手順でプッシュを実行し、ローカルリポジトリで実行したコミットの記録をリモートリポジトリに反映しましょう。
手順3 - 最新のコミットをリモートにプッシュする
(1) | Sourcetree画面左上の「プッシュ」ボタンから「プッシュ」画面を開き、開いた画面右下の「プッシュ」ボタンをクリックして、最新のコミットをリモートリポジトリにプッシュしてください。 |
手順3 - 最新のコミットをリモートにプッシュする
(1) | Sourcetree画面左上の「プッシュ」ボタンから「プッシュ」画面を開き、開いた画面右下の「OK」ボタンをクリックして、最新のコミットをリモートリポジトリにプッシュしてください。 |
以上でローカルリポジトリの最新のコミットを、リモートリポジトリにプッシュすることができました。
プッシュを実行する前と後の画像を見比べて、「origin/master」が示す行を確認しておきましょう。プッシュを実行したことで、リモートリポジトリの状態を表す「origin/master」が、ローカルリポジトリの状態を表す「master」と同じ状態となりました。