LoginSignup
7
10

More than 5 years have passed since last update.

もう少し押さえておきたいGitの仕組み(リモート編)

Posted at

こんな人が対象

サーバーの仕組みも基本は難しくない(かも)

  • 以下の説明は簡単のために細部を思い切ってはしょっているので、
    正確でない記述も含まれています

ローカルリポジトリとリモートリポジトリ

  • ローカルリポジトリ(ローカル)
    ローカルの開発環境にある.gitフォルダが、
    コミット/タグ/ブランチを管理している
  • リモートリポジトリ(リモート)
    サーバーにも.gitフォルダがあり、
    ローカルリポジトリと同様コミット/タグ/ブランチを管理している
  • ローカルとリモートの間でコミットをアップロード/ダウンロードしてやり取りする
  • SourceTreeで見ると1つのコミットグラフ上で
    ローカル/リモート両方のコミット/ブランチが確認できる
    ※名前が「origin/」で始まっているブランチがリモートブランチ

リモート関連の操作

  • クローン
    リモートリポジトリを丸ごとダウンロードしてローカルリポジトリを作成する
  • フェッチ
    SourceTreeに表示されるリモートの状態を最新にする
    ローカルの状態には影響を与えない
  • チェックアウト
    通常はブランチを切替えるだけだが、リモートブランチをチェックアウトした場合、
    ローカルブランチがなければ作成し、リモートブランチのコミットをダウンロードする
  • プル
    作業中ブランチのリモートに新しくできたコミットをローカルにダウンロードする
  • プッシュ
    作業中ブランチのローカルに新しくできたコミットをリモートにアップロードする
    リモートにブランチがなければ作成する

注意点

  • とりあえずフェッチ
    ローカルが古い状態のままで作業を進めると、
    マージの際にコンフリクトを起こしやすくなる等あまりいいことがないので、
    何か操作をする前にはフェッチをして、リモートの状態を確認するのがおすすめ
  • チェックアウトとプル
    リモートブランチをダウンロードする操作は、ローカルブランチの有無によって
    「なければチェックアウト、あればプル」という使い分けが必要
    ローカルブランチのアップロードに関してはプッシュしかないので使い分けは不要
7
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
10