Open2
GitHubでのリポジトリ新規作成からVSCode+Git Bashでのローカルリポジトリ作成、紐付けまで
やりたいこと
ローカルで作成済みのソースコードをGitHubにあげる手順を忘れる⏩ハマるを繰り返しているので、手順をメモしておく。
前提条件
ローカルフォルダ上でプログラミングする間は、リモートリポジトリもローカルリポジトリもつくらず、一通りできたらリモートリポジトリを作成。
手順
1️⃣ GitHub上でリモートリポジトリの作成
GitHubの自分のページから、repository
-New
をクリック。
Repository nameや公開範囲などを設定。今回は以下の設定
- Repository name:M5-Unified-SwitchBot-Meter-BLE
- 公開:Public
- Add a README file:オフ
- Add .gitignore:None
- Choose a license:MIT
※README
,.gitignore
については今回ローカルで作成済みのため、オフ
2️⃣ VSCode上でローカルリポジトリの作成
VSCode上でGit Bashを立ち上げ、GitHubにあげたいフォルダの直下でgit init
コマンドを実行
$ pwd
{WORK DIR}/M5-Unified-SwitchBot-Meter-BLE
$ git init
Initialized empty Git repository in {WORK DIR}/M5-Unified-SwitchBot-Meter-BLE/.git/
3️⃣ リモートリポジトリとローカルリポジトリの紐付け
GitHub上のリモートリポジトリのページから、リモートリポジトリのアドレスをコピー
VSCode上のローカルリポジトリ直下でGit Bashにて以下コマンドを実行
$ git remote add origin https://github.com/yankee-08/M5-Unified-SwitchBot-Meter-BLE.git
特にエラーでなければokなはず
・・・今回は全く問題なくさらっと終わった
4️⃣ push時にエラー発生
ローカルリポジトリへのcommitまでは問題なく行えたが、その後pushを実行すると、
「"main"ブランチにリモートブランチはありません。このブランチを公開しますか?」と表示された。
OKを選択すると、
「Can't push refs to remote. Try runngin "Pull"」 first to integrate your changes.」と表示された。
この後、指示に従い、pullも行ったが、それもエラー色々調べると以下の解決方法に至った。
ここに記載の通り、以下コマンドを実行。
git merge --allow-unrelated-histories origin/main
リモートリポジトリとローカルリポジトリでそれぞれ最初のコミットを実行していることが原因?
今回のような手順でリポジトリを作成した場合は同じことが起きそう・・
具体的な回避方法はまだわからず。とりあえず初めてリポジトリ作るときはこの手順で逃げる