昼寝王子のエンジニアメモスマートフォン用の表示で見る昼寝王子のエンジニアメモこの広告は、90日以上更新していないブログに表示しています。2016-11-02初めてgitを使って見る(Bitbucket編)Part2前回に引き続きgitについてまとめます。今回は複数人でソースコードの管理をするときにどのようにするのかというのをテーマにまとめていきます。【仮想的にもう一つの作業場所を確保】そのために、今回は仮想的にもう一人の作業場所を作成します。今まで使っていたローカルリポジトリの他のどこかにフォルダを作成してください。フォルダ名のどちらでも構いません。作ったフォルダをgitのローカルレポジトリにしましょう。initのようなことはせずに、今あるリモートリポジトリからコピーする形で作成します。Bitbucketのページの左側にある「アクション」の下にあるクローンをクリックしてください。すると以下のようなコマンドが出てくると思います。それをコピーして貼り付けてください。https://ユーザ名@bitbucket.org/ユーザ名/リモートリポジトリ名.gitこれで、リモートリポジトリを基にした作業場所がローカルに作成されます。この時点でリモートとローカルはリンクもしているので大丈夫です。先ほど作ったフォルダの中にリモートレポジトリと同じ名前のフォルダがあると思うのでcdコマンドで移動しておきましょう。※これからの作業では、ターミナルは一つではなく2つ起動しておいて、「cdコマンド」でそれぞれのディレクトリに移動しておきましょう。複数人でソースコードを管理する際にどのような問題が起きてしまうのか、簡単に体験してみましょう。・最初にadd/commit/pushした方のフォルダで作業してる人をA・先ほどリモートレポジトリから作ったフォルダで作業してる人をBとして解説します。Aさんの方で1つファイルの内容を書き換えてみましょう。その後add/commit/pushをしてみましょう。問題なくpushできたはずです。次にBさんの方で先ほどと同じ名前のファイルの内容を書き換えてみましょう。その後、add/commit/pushをしてみましょう。うまくいかなかったと思います。details.これが「競合」です。したら「なんでこんなことが起こるの!!」「さっとプッシュさせろ!」と思った方もいるかもしれません。考えてみてください、これでBさんの変更がリモートレポジトリの方に登録されてしまうとAさんの変更がなかったことになってしまいます。それを防ぐためにこの競合ということが起きます。【競合を解決するための機能「ブランチ」】では、どのようにすればこのうまくいくのでしょうか。そこで出てくるブランチというものです。ブランチとは日本語で「枝」を意味しています。競合を避けるためにはまず作業員それぞれが枝を持ち、それを結合させることで1つのファイルにするというイメージを持っていただけるといいです。<ブランチの作成>ここからはA/B同時に作業を進めていきます。Aさんの方でtest_aというブランチを作成します。test_aというコマンドを実行すれば大丈夫です。次にBさんの方でtest_bというブランチを作成します。test_bこれでお互いが作業するためのブランチが完成しました。<ブランチの切り替え>ブランチは作成しただけでも使っていることにはなりません。作業する前にブランチの切り替えを行わなければなりません。ブランチ名というコマンドを実行します。test_bというコマンドを実行してブランチの切り替えをしましょう。<ブランチの結合>ブランチの結合(マージ)これが一番よくわかりませんでした。masterそして、ブランチのマージを行います。test_aとしてみるとでも、これだけではローカル環境のブランチが結合しただけなので、リモートリポジトリには何の変化もありません。そこで、次にもう一度commit/pushを行います。masterすると何かしら怒られると思います。pullというコマンドを実行します。すると、コメントの入力が要求されます。そこにコメントを入力すれば、リモートリポジトリの方も更新されます。これをBでも行えば大丈夫です。ROLLBACKを解消した話スマホ対応のWebページを作ってみる2スマホ対応のWebページを作ってみるrubyでのスクレイピングはCapybaraに決まり2月別アーカイブはてなブログをはじめよう!mr-itaya-magicさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。