質問: ### progateにおけるエラーの原因と解消方法(Git) 4行目の共有リポジトリへのプッシュコマンドをした後エラーが出ているのか、共有へ保存されず 受け取る側がプルできない状態です。git学習が初めてなのでコミット、プッシュができているのかも わかりません。解答が載っているので、そのままコマンド入力して解決しようと試すもエラーが 出てしまうため自力での解決が難しいと感じ質問するに至りました。お手数をおかけいたしますが ヒントなどでもありがたいです。ご返信をお待ちしております。よろしくお願いいたします。 ``` ・mysite $ git add stylesheet.css ・mysite $ git commit -m "Create stylesheet.css"[master (root-commit) 33f66b4] Create stylesheet.css ・1 file changed, 3 insertions(+) create mode 100644 stylesheet.css ・mysite $ git push origin masterTo /home/progate/.remote/mysite.git ・ ! [rejected] master -> master (fetch first) ・error: failed to push some refs to '/home/progate/.remote/mysite.git' ・hint: Updates were rejected because the remote contains work that you do ・hint: not have locally. This is usually caused by another repositorypushing ・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. ``` ### 他サイトでの知識をもとに様々な方法を試したが、progateでのみの仕様となっているのか 最低限のコマンドしか受け付けず『許可されていないコマンド』と表示される。 ### プロゲート Git 学習コース I共同開発をしてみよう!7. 共同開発の流れを復習しよう
回答: git pull origin master とにかくこのコマンドを実行してください。 このエラーメッセージは、リモートリポジトリ(インターネット上にあるデータ)に更新があったから、まずデータ共有する前にお前がデータ受け取れや!!ということです。 ``` version 1.0 -> ローカルリポジトリ(自分のコンピューター上)にダウンロード version 2.0 <- 誰かが更新して version 2.0 に上げる version 1.1 <-あなたが更新したコードを version 1.1としてアップロード ``` もしこのエラーメッセージがなかったら、上のような変更が普通に行われてしまうということです。 version 2.0にアップデートされてから version 1.1に戻るなんておかしいですよね。 ですので、ネット上に新しい更新がある場合には、必ず先に新しい更新をダウンロードする必要があるのです。