😸

LinuxさんでGitを使う~複製人で作業編~

2021/01/17に公開

はじめに

くーばねてすをやっつけるためにLinuxさんと仲良くさせていただいているが、LinuxさんでもなんとGitをインストールしてファイルの変更管理ができるそうだ!
LinuxさんでGit!

概要

■複数人での作業
■fetchとmergeをまとめたコマンド
■Gitでの開発流れ
をまとめた^^

■複数人での作業

これまでは一人でローカルにバージョン管理システムを使用してきたが、通常であればある程度大きなプロジェクトの場合、複数人で共同作業を行う。
このようなときにGitを使っていると変更履歴を共有することができる。
複数人で作業する時はそれぞれのユーザーにローカルリポジトリを作成し、それぞれがローカルで作業をし、変更をユーザー全員が共有できる共有リポジトリに送ることになる。

作業を進めてきりがいいところで共有リポジトリにpushするのはローカルでバックアップをとっていたのに似ているが、複数人で作業するときは複製のユーザーが1つのバックアップリポジトリを共有してバックアップにpushしていると近い。

共有リポジトリの作成方法は「LinuxさんでGitを使う~リポジトリのバックアップ~」でまとめた
バックアップ用リポジトリの作成方法と同じだ。
コミット方法もこれまでと同じでコミット先を共有リポジトリに送信するだけである。

今回は共有リポジトリをoriginという名前とする。
変更された共有リポジトリの変更状況を確認するにはgit fetch(とりだす)コマンドを使う。

ほかのリポジトリの変更内容を確認する
$ git fetch リポジトリ名
共有リポジトリの変更を確認
$ git fetch origin

git fetchコマンドで取得した履歴は、自分で作成したブランチとは別に他のリポジトリの変更内容を確認することができる。
git fetchコマンドで取得した履歴は、リモート追跡ブランチというブランチに保存される。
リモート追跡ブランチはリモート名/ブランチ名で自動的に作られる。
リモート追跡ブランチを表示するにはgit branch に-rオプションで取得することができる。

リモート追跡ブランチを表示する
$ git branch -r
origin/HEAD -> origin/master(※⇦リモート追跡ブランチ名)
origin/master

「origin/master」という名前のリモート追跡ブランチが作成されていた!

内容を確認したら取得した内容をgit mergeコマンドで反映する。
反映するためにはマージ先のブランチに移動してからgit mergeコマンドで反映する。

リモート追跡ブランチに取得した内容をマージする
$ git checkout master
$ git merge origin/master(※⇦リモート追跡ブランチ名)

これでローカルに共有リポジトリの内容をマージすることができる。

■fetchとmergeをまとめたコマンド~pull~

git fetchコマンドとgit mergeコマンドはセットでよく使うので一つにまとめたコマンドがある。
git fetchとgit mergeコマンドを一緒に使うのにはpullコマンドを使う。

共有リポジトリのmasterブランチを現在のブランチにマージする
$ git pull リポジトリ名 ブランチ名

■Gitでの開発流れ

①ある程度の間隔をあけて共有リポジトリの変更内容を反映させる。
②自分のリポジトリにコミットする。
③公開してもよい状態になれば共有リポジトリに履歴をおくる。
という流れになる。

まとめ

二人以上でやったことないから実行できなかった(@_@)

Discussion