(Git) git init ~ git push で詰まった話。めっちゃrejectされる

 

git init とはgitのローカルリポジトリを作成するコマンド。

git clone でリモートレポジトリをローカルにコピーしてきてってやり方は知っていたが、ローカルでいきなりリポジトリを作れるのは知らなかった。

やってみたら色々と詰まったので、備忘録。

 

git init でローカルリポジトリ作成 〜 コミットまで

この流れはサクサク進んだ。
リポジトリを作りたい空ディレクトリの中で、「git init」。

git-init

んで適当にファイル作成

git-index

 

git add してgit commitして、

git-add

 

git-commit

 

ここまでやったらローカルリポジトリでの作業は終了。

 

完全に誤認していた「git remote add origin <リモートリポジトリ>」というやつ

 

んで今作ったローカルリポジトリをリモートリポジトリに反映させようと思った。
で、そのときにリモートに反映させるコマンドだと思ってたのが

git remote add origin <リモートリポジトリ> ってコマンド。
なので

git-remote-add

こう打った。
この時点で「githubにリポジトリが生成されている」と勘違いしていた。

全ての準備は整ったと思いpush

git-push-repository-not-found

「remote:Repository not found」
レポジトリがない?

よくわからなかったので詳しい人に聞いたところ、
「Github等でリモートリポジトリは作成されましたか?」

ここでようやく気づいた。
git remote add でリモートレポジトリが作られるわけじゃないんだ

事前にgithubでリポジトリを作っておく必要があるのね

 

githubでリポジトリ作成後pushしようとするが、、rejected!

んで早速githubでリモートリポジトリを作成。
もういけっるしょと思い再度push。

 

さっきより色々激しく怒られてる。
エラー文言をググると

「git pull origin master」すると直るよ、との記載が、

おお、なんだ簡単じゃんと思い打ってみる。。すると

おお、なんか進んだ。いけそうな予感。
次こそ行ける、push

同じかよ、と思いきや微妙に変わっている、、
さらにググる、すると

「git fetch && git merge origin/master」すれば良いよ

との記載が、打ってみる、すると

色々消えた。が、
「fatal: refusing to merge unrelated histories」だけ残ってる。

関係ない履歴をマージできないよってなんだ、、
またぐぐる。すると

「git merge –allow-unrelated-histories origin/master」
が良いとのこと

またなんか動いた、

push

、、エラーが出ない

やっっとできた。githubにもローカルの内容が反映された

 

 

 

 

記事が気に入った方はシェアをお願いします!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です