git のリポジトリ内容の共有
#21 リポジトリの内容を共有してみよう
http://dotinstall.com/lessons/basic_git/6721
をもとに、
複数ユーザでの内容の共有について学習
今回は、共有リポジトリの内容を
myweb2
というディレクトリの中に作成する
これには
git clone
を使う
git clone ~/ourweb.git/ myweb2
と実行すると
Cloning into ‘myweb2’…
done.
となり、
新しく myweb2 というディレクトリが作成され
その中にリポジトリも作成されている
書式としては
git clone 共有リポジトリのURL 新しいディレクトリ
というかんじになる
内容ができているか、確認するには
cd myweb2/
git log
で確認できる
そして、今度は、myweb2 の中でファイルを編集して
それを 共有リポジトリに追加する
vim index.html
でファイルを開いて
line end
と追記して保存
git add .
でインデックス化
git commit -m “line end added”
でリポジトリ登録
git clone したときに、リモート情報も
引き継ぎできているので
git push で共有リポジトリに追加することができる
今回なら
git push origin master
とすれば、URLの指定をせずに、そのまま送ることができる
これは、リモート情報も引き継ぎしているため
とりあえず、ユーザB役での編集などはできたので
今度は
ユーザA役の myweb ディレクトリで操作する
Linux なら端末を
Ctrl + Alt + t で開けるので
新しい端末を開いて
cd myweb/
で移動
共有リポジトリの内容をマージするには
git pull
を使う
でも、違いを理解するために
まずは git log で内容の確認
commit 0180f5a3844aa7df2cb4c231f03df5e61f36efe9
Author: snowpool
Date: Thu May 30 20:51:12 2013 +0900
line3 added
が最新の内容
確認したら、 git pull で内容を共有リポジトリから引っ張ってくる
今回なら
git pull origin master
とする
これで、git log で内容を確認すると
commit b3c348a6f9fa5416831020ad5649fbdf09050acc
Author: snowpool
Date: Fri May 31 20:57:41 2013 +0900
line end added
とでているので、
ユーザB役の myweb2 ディレクトリで編集したものも
しっかりと反映されていることが確認できる
これらのことから、
git clone で共有リポジトリを作成
git push で編集した内容をアップする
git pull で編集された内容をダウンロードして編集する
というような流れで複数の人による共同開発が可能となる
もっとも、複数人数での開発以外にも
git サーバーを構築して
自分の複数マシンでソースを共有することで
外出先でもソースの編集を容易にするという使い方もできるので
git 関連をやっておくと便利だと思う
git のリポジトリ内容の共有
git
コメント