2019年9月19日木曜日

gitのエラー「fatal: refusing to merge unrelated histories」の解消方法

 git push -u origin masterでソースコードをリモートにpushしようとしたら、以下のエラーがおきました。

$ git push -u origin master
To https://git.xxxx.com/test/xxx.git
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'https://git.xxxx.com/test/xxx.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.

hint: See the 'Note about fast-forwards' in 'git push --help' for details.

どうや先にpullしないとだめみたいです。$ git pull origin masterでpullをしたら、今度またエラーがおきました。
fatal: refusing to merge unrelated histories
解決方法は、オプション--allow-unrelated-historiesを追加することです。

以下で無事に解決できました。
$ git pull origin master --allow-unrelated-histories
From https://git.xxxx.com/test/xxx.git
 * branch            master     -> FETCH_HEAD
Merge made by the 'recursive' strategy.
 README.md | 2 ++

 1 file changed, 2 insertions(+)

aws cliでインターネットゲートウェイを削除するコマンド

一つのVPCの中、インターネットゲートウェイが一つしか作れないです。

自分が間違って2回作成コマンドを押してしまいました。そしたら以下のようにエラーが起きました。
* aws_internet_gateway.gw: error attaching EC2 Internet Gateway (igw-094efbee9f367a97a): Error attaching internet gateway: InvalidParameterValue: Network vpc-43332a1a already has an internet gateway attached
status code: 400, request id: befcb4ad-c9a6-4a08-9622-0686b048a69b



detached状態なインテーネットゲートウェイを削除するには、もちろんコンソール上からできますが、いちいちコンソールにログインするのは少し手間なので、コマンドで削除します。
コマンドは以下の通りになります。
$ aws ec2 delete-internet-gateway --internet-gateway-id igw-c0a643a8
おまけに、本操作ではなく事前動作検証をしたいなら、--dry-run をつければ動作可能かどうかをチェックしてくれます。

2019年9月18日水曜日

aws 失敗したNATゲートウェイを削除する方法

AWSのNATゲートウェイ作成に失敗すると、コンソールから削除できなくなります。

削除するにはaws cliからするしかないです。
削除するコマンドは以下の通りです。


aws ec2 delete-nat-gateway --nat-gateway-id nat-04ae55e711cec5680