実装の実験の為、commitしないでVagrantサーバーでテストしたが、
エラーが戻らなくなったので、実装前に戻したくなった。
しかし残念なことに戻らなかった。
自分でやった、出来たけど間違っている方法
※まだbranchは学習してない
pull heroku master , git reset --hard もその前に試したが
ファイルが戻らず混乱した為、強行した内容。
1:Vagrant 内の.git 以外を全削除
2:$ git clone https://git.heroku.com/アプリ名.git
3:$ bundle install
4:$ rails db:migrate
5:$ rails s
6:.git の config ファイルが変だったので修正する
※git push heroku master がエラーで出来なかった為
修正した config
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "heroku"]
url = https://git.heroku.com/アプリ名.git
fetch = +refs/heads/*:refs/remotes/heroku/*
[branch "master"]
remote = origin
merge = refs/heads/master
[remote "heroku"]とrefs/remotes/heroku/が origin に
なってたのでheroku へ修正した。
branchを試す
こういうときの為にbranch がある様です。
git checkout -b 任意の名前
とすると、master に干渉しないラインが出来上がります。
そこで作業して、heroku へは
git push heroku 任意の名前
で出来る様です。
ブランチを作成する
1:$ git checkout -b testbranch
Switched to a new branch 'testbranch'
2:作業して
$ git add .
$ git commit -am "testbranch"
3:$ git checkout master
4:$ git merge testbranch
※この時点でtestbranchで管理しているコードが masteに反映される
5:$ git add .
6:$ git commit -am "comment~略~"
7:$ git push heroku master
8:$ heroku run rails db:migrate
これで無事にアップ出来ました。
本来は、複数人で開発する場合、それぞれのブランチで開発して、
管理者がmasterブランチに取り込んでいくという使い方をする様です。