【Git入門】リポジトリの変更を共有するpushとpull

gitリモートリポジトリ
  • このエントリーをはてなブックマークに追加
  • Pocket

このページではgit pushとgit pullを用いて、リモートサーバへの変更の共有と変更点のローカルへの反映方法についてまとめている。

参考にしていただければ幸いだ。

そもそも、リポジトリの変更を共有するとは?

リポジトリの変更を共有するとは、ローカルのリポジトリの変更をGitサーバ上のリモート・リポジトリに記録し、リモート・リポジトリを介してその変更を共有することだ。

リポジトリの変更を共有する作業の流れは、ローカルから報告された変更をリモートに記録するところから始まる。

記録されたリモートの変更をローカルの別のリポジトリに反映させることもできるし、リモート・リポジトリをそのままクローンしてローカルに別のリポジトリを作成することもできる。

Gitを使った作業の流れは次の通りだ。

git push

  • 変更をgit pushでリモート・リポジトリに反映させる。
  • リモート・リポジトリをgit cloneでクローンする。
  • 変更をgit pushとgit pullで他のリポジトリに反映させる。

では、基本的なGitの使い方と流れを見てみよう。

変更をリモート・リポジトリに反映させる

変更を共有するためにローカルのリポジトリに記録された変更をリモート・リポジトリに反映させる。この時originがリモート・リポジトリの名前で、masterがローカルにあるリポジトリの名前になる。

git-push

このために使うコマンドは簡単だ。

git push origin master

コマンドの実行の仕方を確認していこう。

使い方と流れ

ローカルにあるリポジトリのディレクトリに移動する。変更をリモート・リポジトリに反映させるためにgit pushコマンド実行する。

git-work

実行結果

リモート・リポジトリがあるディレクトリに移動して、git logコマンドを実行する。リモート・リポジトリにローカルのリポジトリの変更が反映されたことが確認できる。

リモート・リポジトリをクローンする

ローカルにリポジトリを作成するためにリモート・リポジトリをクローンすることもできる。クローンするとリモート・リポジトリのコピーが作成される。

git clone

このために使うコマンドの基本は簡単だ。

git clone [リモート・リポジトリ]

ここで、リモート・リポジトリをどのように指定するかだが、「リモート・リポジトリを作成する」のセクションで共有設定を行ったときに出てきた「ネットワーク・パス」を指定する。

コマンドの実行の仕方を確認していこう。

使い方と流れ

リポジトリをクローンするディレクト:/c/gitworkcloneを作成する。そのディレクトに移動して、git cloneコマンドを実行する。

git-clone2

実行結果

リポジトリのディレクトリに移動して、git logコマンドを実行するとリポジトリが作成されていることが確認できる。

 git sample

さらに、lsコマンドでディレクトリ内のファイルを書くにしてみると、Program01.javaファイルがあるのが確認できる。

ls

変更を他のリポジトリに反映させる

最初に説明したように、変更を共有するためにgit pushを使ってローカルのリポジトリに記録された変更をリモート・リポジトリに反映させることが必要だ。そして、リモート・リポジトリに反映された変更をローカルの別のリポジトリに反映させる。

git pull

このために使うコマンドの基本がpullだ。

git pull

コマンドの実行の仕方を確認していこう。

使い方と流れ

前のセクションでクローンして作成したリポジトリのディレクトリにあるProgram01.javaファイルを変更して、その変更が別のリポジトリに反映されるか確かめてみよう。

クローンで作成したディレクトリに移動して、現在のProgram01.javaのコードを見る。

programmer

Program01.javaのコードをエディタで「System.out.println("Function-01");」を追加し、コードが修正されたことを確認する。

result

変更をgit addとgit commitコマンドによりリポジトリに記録する。

git-add

次にgit pushコマンドで変更をリモート・リポジトリに反映させる。

push

他のリポジトリのディレクトリに移動する。リモート・リポジトリの変更をgit pullコマンドでローカルのリポジトリに反映させる。

origin-master

実行結果

変更の記録を見るためにgit logコマンドを実行すると、別のリポジトリのProgram01.javaの変更が反映されていることが分かる。

git-log

さらに、Program01.javaのコードを確認すると確かに「System.out.println("Function-01");」が追加されている。

java

まとめ

このページではリモートサーバへ変更を共有するgit pushおよび反対にローカルへ反映するgit pullについてまとめてみた。

gitの使い方の基本となるので、ぜひ参考にしていただければと思う。

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できます。

IT講師に興味はありませんか?

・「今までIT講師をやってきたが、更に多くの講義を行いたい」

・「エンジニアとしてやってきたが講師業に魅力を感じている」

・「講師として活躍するためにベースとなる知識を知りたい」

・「様々な分野や言語の講師にチャレンジしてみたい」


という方はぜひIT講師募集のページをご覧ください。


リナックスアカデミーでは「受講している方々にITを好きになってもらう」ことを目標に、同じ目標に向かって歩んで行ける講師の方を常に探しています。


システム開発やインフラ構築などのエンジニアリング経験を活かし、新入社員などの未経験者や経験の浅い初学者の方々に対してITトレーニングを行っていただくことになります。


テキストやカリキュラムは事前に用意されており、それらを元に講義を進めていくため、IT講師をはじめて実施する方でも安心してトレーニングを実施できます。


IT講師募集のページを見る

SNSでもご購読できます。

コメントを残す

*

未経験からの育成制度も充実
IT講師に興味はありませんか?

リナックスアカデミーでIT講師の積極募集を開始! 経験・未経験問わずご応募可能。育成制度で講師スキル向上も目指せます

IT講師に応募する