Knocknote

  1. トップ
  2. コラム一覧
  3. 非エンジニアでも知らないとヤバイGit Part2

非エンジニアでも知らないとヤバイGit Part2

投稿日 : 2018.03.11  |  カテゴリー : 非エンジニアでも知らないとヤバイ

画像

はじめに

前回は、Gitの基本的な機能、リモートリポジトリ・ローカルリポジトリ、コミットについて説明した。
今回は、 Gitの機能の1つであるクローン、Push、Pullについて説明する。

クローンとは

共同で開発を進める際に作業を分担することがよくある。必ずしも同じタイミングで全員が作業に参加する訳ではないので、工程によって作業のスタートがずれることがある。
後から作業に参加する開発者は、どのような意図・状況で現在の状態になっているのか把握できなくなる。
しかし、このような問題はGitのクローン機能を使用すれば解決できる。
クローンは、すでに変更履歴が存在するリモートリポジトリ複製し、自分のマシンにローカルリポジトリを作成する操作。
リモートリポジトリの内容をまるごと自分の手元のマシンにダウンロードできる。
ただソースコードをダウンロードするのではなく、変更履歴も複製されるので、過去の履歴を参照して状況を把握しやすくなる。

Pushとは

前回も説明したが、Gitでは複数の開発者が共有しているリモートリポジトリを使って、各自のマシンにダウンロードされているローカルリポジトリの変更履歴を共有することでバージョン管理をしている。
Pushは各自のマシンのローカルリポジトリの変更履歴を、複数の開発者が共有しているリモートリポジトリにアップロードする操作のこと。
Pushを行うとPushしたローカルリポジトリとリモートリポジトリの変更履歴が同じ状態になる。

Pullとは

Pushを行っただけの段階では、Pushした開発者以外はリモートリポジトリと自分のマシンのローカルリポジトリは同じ状態ではない。
リモートリポジトリ自分のマシンのローカルリポジトリの状態を一致させるには、Pullという操作を行う。
Pullは、Pushの反対で変更履歴をダウンロードして自分のマシンのローカルリポジトリを、最新のリモートリポジトリの状態に更新する。
最後にPullした後に、他の開発者と同じファイルを作業していて他の開発者が先にPushして、その後自分がPushを行う場合は自分のPushは拒否される。
このように作業ファイルが衝突した場合は、他の履歴での変更を取り込む(マージ)までは自分のPushは拒否される。
これは、そのままPushできてしまうと先にPushした開発者の変更履歴が上書きされて消えてしまうからだ。

最後に

今回は、クローン、Push、Pullについて説明した。
次回は、マージについて詳しく説明する。
画像

この記事を共有する
  • facebookでシェアする
  • ツイッターでつぶやく
  • LINEで送る
関連記事
非エンジニアでも知らないとヤバイSQL

非エンジニアでも知らないとヤバイSQL Part5 〜UPDATEとDELETEでデータを編集〜

span{font-size:15px;} 非エンジニアでも知らないとヤバイSQL Part5 ~UPDATEとDELETEでデータを編集~ 前回はテーブルにデータを追加するためのINSERT文について学びました。 ...

非エンジニアでも知らないとヤバイGit Part1

そもそもGitとは Gitは分散型のバージョン管理システム。 分散型とは、リポジトリと言われる開発過程が保存されているデータベースが自分やチームのマシン(パソコン)に入っているタイプ。 バージョン管理システムは、コードなどの開発過 ...

非エンジニアでも知らないとヤバイSQL

非エンジニアでも知らないとヤバイSQL Part4 〜INSERT句でデータを追加〜

非エンジニアでも知らないとヤバイSQL Part4 〜INSERT句でデータを追加〜 前回はWHEREでテーブルから指定した条件のデータを抽出する方法を学びましたね。 今回はテーブルにデータを追加して拡張してくれるINSERT文について ...

非エンジニアでも知らないとヤバイSQL

非エンジニアでも知らないとヤバイSQL Part1

非エンジニアでもエンジニアの知識が最低限必要 IT業界で働いていくには、非エンジニアでもエンジニアの知識がある程度必要です。営業マンやマーケッター、プランナーやデザイナーであっても、同じ業界で働くためには社外の打ち合わせなどはもちろん、社 ...

非エンジニアでも知らないとヤバイSQL

非エンジニアでも知らないとヤバイSQL Part3 〜WHERE句で検索条件を指定〜

SELECT文について 前回は、SQLにてSELECTする際、全カラム抽出、カラム指定抽出、件数指定抽出、OFFSETを使った件数指定抽出についてでした。 DBの種類(「関係型」「NoSQL」「階層型」「ネットワーク型」)、その中でも現 ...

非エンジニアでも知らないとヤバイSQL

非エンジニアでも知らないとヤバイSQL Part6 〜似て非なるTRUNCATEとDROP〜

span{font-size:15px;} 非エンジニアでも知らないとヤバイSQL Part6 〜似て非なるTRUNCATEとDROP〜 前回はテーブルのデータの更新と削除を行うための「UPDATE」と「DELETE ...

非エンジニアでも知らないとヤバイCPU Part2

コア、クロック周波数 前回の非エンジニアでも知らないとヤバイCPU Part1 では、CPUの処理性能がわかるクロック周波数と、CPUの中心をになっているコアについて触れました。 今回は、処理を効率よく進めるためのキャッシュ ...

非エンジニアでも知らないとヤバイPHP Part1

プログラミング経験有無に関わらず知識は必要 タイトルに記載していますように非エンジニアの方(業界問わず)でもプログラミングに関する知識は必要です。昨今世界中においてあらゆる分野において情報化が進んでいます。これは日本も例外ではありません。 ...

非エンジニアでも知らないとヤバイCPU Part1

そもそもCPUとは CPUとは、Central Processing Unitの略で、日本語では中央演算処理装置と言い、別名はプロッセッサーです。 入力装置などから受けっとった値を処理し、出力装置などで結果を出力します。 CPUの内部 ...

非エンジニアでも知らないとヤバイGit Part3

はじめに 今回は競合の解決について説明する。 前回までの記事はこちら 非エンジニアでも知らないとヤバイGit Part1 非エンジニアでも知らないとヤバイGit Part2 競合の発生 リモートリポジトリとローカルリポジトリ ...

Knocknote Education(ノックノートエドゥケーション)