質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
GitHub

GitHubは、Gitバージョン管理システムを利用したソフトウェア開発向けの共有ウェブサービスです。GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウントを提供しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

解決済

1回答

320閲覧

GITHUBで共同開発:コラボレーター(インド人)が修正した内容をとりこむには?(git pull origin master?)

TOKUSABU

総合スコア87

GitHub

GitHubは、Gitバージョン管理システムを利用したソフトウェア開発向けの共有ウェブサービスです。GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウントを提供しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

0クリップ

投稿2018/10/09 15:26

現在 簡単なQ&Aアプリを作っています。
一部自分では修正しきれないため、修正をインド人に依頼しました

するとすぐにインド人の方がなにかした修正をした様子で
「GITHUBで確認してください!」と連絡がきました

なにやらブランチができている様子です
https://github.com/TOKUSABURO/WINEQA/branches

しかし・・・専門プログラマーではない私では???です
とにかくgit push orijin masterをしてみると下記のエラーがでました

Warning: Permanently added 'github.com,192.30.253.112' (RSA) to the list of known hosts. To github.com:TOKUSABURO/WINEQA.git ! [rejected] master -> master (fetch first) error: failed to push some refs to 'git@github.com:TOKUSABURO/WINEQA.git' hint: Updates were rejected because the remote contains work that you do hint: not have locally. This is usually caused by another repository pushing hint: to the same ref. You may want to first integrate the remote changes hint: (e.g., 'git pull ...') before pushing again. hint: See the 'Note about fast-forwards' in 'git push --help' for details.

まだ修正が取り込まれていない様子
ググると、https://techacademy.jp/magazine/10274 みたいな説明があり
git pull origin masterをすればいいような記載がありました

こちらに関して
1:GITHUBにコラボレーターが修正した内容を取り込むには
git pull origin masterであっていますでしょうか?
2:もしあっているならgit pull origin master とはそもそも何でしょうか?
修正を取り込むマスターという理解でよろしいでしょうか?
3:GITでコラボレーターと共同で開発するなら読んでおけ!なるサイトなど
ありますでしょうか?

GITHUBでの共同開発は初めての経験で、ググりながら探りながら
おこなっております
何卒、何卒ご教授をお願いしたくよろしくお願いいしますm(_ _)m

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

どうも相手がmasterに直接commitしちゃったので手元の編集と衝突しているようですね・・・。

  1. 手元の編集をすべてcommitする
  2. git branch tmpで作業用branchを作成してチェックアウト
  3. git fetch origin
  4. git reset --hard origin/master
  5. git merge tmpでマージ。conflictしたら頑張って解決。

今度からは別のbranchで作業してもらうよう伝えるといいでしょう。

投稿2018/10/09 15:36

編集2018/10/09 15:40
yumetodo

総合スコア5850

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TOKUSABU

2018/10/09 15:44

早急なご連絡大変ありがとうございます!!!!! 特に私の方ではなにもcommitするものはないので (なにかあったときに備えてcommitは念のため無い様にしてました) その場合は、2以下を行えばよいとの理解でよろしいでしょうか? もしくはその場合5でまーいすればよいでしょうか? 何卒、何卒ご教授いただきたく・・・ 共同開発初めてで、涙しながらググっておりまする・・・・ ちなみに私がgit commit を行うと、下記が出てきます・・・ On branch master Your branch is up-to-date with 'origin/master'. nothing to commit, working tree clean
TOKUSABU

2018/10/09 15:45

すみません「まーい」ではなく「git merge tmp」でマージでした。 (もしその場合コンフリクトしたらググりながら頑張ってみます・・・・(><))
yumetodo

2018/10/09 16:34

>なにかあったときに備えてcommitは念のため無い様にしてました それはそれであかん・・・。branchさえ分けてればこまめにcommitするべき。つまり手元で作業するときも複数人開発ならbranch分けたほうが無難だったりします。 手順2からでいいです。
yumetodo

2018/10/09 16:37 編集

ん、ちょっとまった。今git log -n 1 --onelineで出てくる結果なんですか?なにか見落としているかもしれない(意図としてはあなたの手元の最新commitのhashを知りたい)。
TOKUSABU

2018/10/10 09:33

ご返信大変ありがとうございます!&返信遅くて大変すみません(><) git log -n 1 --onelineしてみると c58fcd9 (HEAD -> master, origin/master, origin/HEAD) modify translation とでました。ぐぐりましたところ・・・ 下記がありましたが、よくわかりません。 https://qiita.com/masashi127/items/2e103c3fba9d1b058961 最終手段としてはインド人に反映させる方法教えてくれ!!など来てみようかと思ってます。
yumetodo

2018/10/10 09:41 編集

ああ、なるほど。ならgit pull origin masterだけでいいです。枝分かれしてたら私が書いたようにするのが楽ですが、単にremote(ここではGithub)の歴史が直線的に進んだだけならgit pull origin masterが全部上に書いたようなことをやってくれます。 判断した理由: https://github.com/TOKUSABURO/WINEQA/commits/master を見たときに追記いただいたc58fcd9というhashを探すと上から2番めにあり、つまり単に1commit増えただけだと判断できます。
TOKUSABU

2018/10/10 09:43

なるほど!!!大変、大変ありがとうございます!! (しかも早急な大変助かります!!) ぶっきらぼうなインド人に聞かなくてすみました さっそくためしてみます!! 私は説明をきいてもいまいち理解しきれていないので netでgithub今回の内容のあたり、勉強してみます いや、本当に助かりました!!!(^~^)
TOKUSABU

2018/10/10 09:49

ご報告 git pull origin master をすると下記がでました どうやら、ご指摘の通り上記をすると反映した感じです ありがとうございました! Warning: Permanently added 'github.com,192.30.253.112' (RSA) to the list of known hosts. remote: Enumerating objects: 23, done. remote: Counting objects: 100% (23/23), done. remote: Compressing objects: 100% (2/2), done. remote: Total 12 (delta 10), reused 12 (delta 10), pack-reused 0 Unpacking objects: 100% (12/12), done. From github.com:TOKUSABURO/WINEQA * branch master -> FETCH_HEAD c58fcd9..085ded3 master -> origin/master Updating c58fcd9..085ded3 Fast-forward app/assets/stylesheets/styles/questions.sass | 5 +++++ app/views/questions/show.html.slim | 2 +- config/settings.yml | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-)
TOKUSABU

2018/10/10 09:55

内容確認してみたところ、一部ですが修正確認できました。 インド人凄い・・・日本の価格の1/50(私と友達の意見)の価格で対応してくれるのか ・・・衝撃・・・
yumetodo

2018/10/10 10:28

Fast-forwardってのはまあ有名な用語というかなんというかなのでググっておくと理解が深まるでしょう。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問