20210416のGitに関する記事は4件です。

【Heroku】git push heroku masterしたとき、error: failed to push some refs to 'https://git.heroku.com/herokuname-12345.git'と怒られた時の対処法

症状 git push heroku masterをしたところ、下記エラーメッセージが表示されてしまい、herokuにpushできませんでした。 gitpushherokumaster git push heroku master Counting objects: 219, done. Compressing objects: 100% (193/193), done. Writing objects: 100% (219/219), 3.96 MiB | 2.48 MiB/s, done. Total 219 (delta 70), reused 0 (delta 0) remote: Compressing source files... done. remote: Building source: remote: remote: -----> Building on the Heroku-20 stack remote: -----> Determining which buildpack to use for this app remote: -----> Ruby app detected remote: -----> Installing bundler 2.2.15 remote: -----> Removing BUNDLED WITH version in the Gemfile.lock remote: -----> Compiling Ruby/Rails remote: Command: 'set -o pipefail; curl -L --fail --retry 5 --retry-delay 1 --connect-timeout 3 --max-time 30 https://s3-external-1.amazonaws.com/heroku-buildpack-ruby/heroku-20/ruby-2.6.3.tgz -s -o - | tar zxf - ' failed on attempt 1 of 3. remote: Command: 'set -o pipefail; curl -L --fail --retry 5 --retry-delay 1 --connect-timeout 3 --max-time 30 https://s3-external-1.amazonaws.com/heroku-buildpack-ruby/heroku-20/ruby-2.6.3.tgz -s -o - | tar zxf - ' failed on attempt 2 of 3. remote: remote: ! remote: ! The Ruby version you are trying to install does not exist on this stack. remote: ! remote: ! You are trying to install ruby-2.6.3 on heroku-20. remote: ! remote: ! Ruby ruby-2.6.3 is present on the following stacks: remote: ! remote: ! - cedar-14 remote: ! - heroku-16 remote: ! - heroku-18 remote: ! remote: ! Heroku recommends you use the latest supported Ruby version listed here: remote: ! https://devcenter.heroku.com/articles/ruby-support#supported-runtimes remote: ! remote: ! For more information on syntax for declaring a Ruby version see: remote: ! https://devcenter.heroku.com/articles/ruby-versions remote: ! remote: ! Push rejected, failed to compile Ruby app. remote: remote: ! Push failed remote: ! remote: ! ## Warning - The same version of this code has already been built: e4e8b0a69aeb09b76275b11e90d4096eb832212c remote: ! remote: ! We have detected that you have triggered a build from source code with version e4e8b0a69aeb09b76275b11e90d4096eb832212c remote: ! at least twice. One common cause of this behavior is attempting to deploy code from a different branch. remote: ! remote: ! If you are developing on a branch and deploying via git you must run: remote: ! remote: ! git push heroku <branchname>:main remote: ! remote: ! This article goes into details on the behavior: remote: ! https://devcenter.heroku.com/articles/duplicate-build-version remote: remote: Verifying deploy... remote: remote: ! Push rejected to murmuring-headland-65418. remote: To https://git.heroku.com/murmuring-headland-65418.git ! [remote rejected] master -> master (pre-receive hook declined) error: failed to push some refs to 'https://git.heroku.com/murmuring-headland-65418.git' 翻訳すると、「インストールしようとしているRubyバージョンはこのスタックに存在しません。」 「エラー:一部の参照を「https://git.heroku.com/herokuname-12345.git」にプッシュできませんでした」 解決方法 Gemfileのrubyをしている箇所をコメントアウトすることで、上記エラーが表示されなくなりました。 herokuがruby2.6.3をサポートしていなかったようです。 Gemfile # ruby '2.6.3' ターミナル #bundleinstallしておく bundle install #gitにpushしておく git add -A git commit -m "changeGemfile" git push heroku master 参考 【初心者向け】RailsチュートリアルでHerokuデプロイ時に「Ruby 2.6.3はインストールできない」と言われたときの適切な対処方法 https://qiita.com/jnchito/items/c3035cc49a9cef053549
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

Gitで状態を確認したい時や綺麗に戻したい時に使うコマンド

はじめに コードを書いてると、変更しているファイルを確認したり、編集・ステージングの内容を取り消したい時がたびたび訪れます。 整理も兼ねてよく使っているコマンドをまとめます。 ブランチを確認したい 現在のブランチを表示 $ git branch * hoge fuga piyo ブランチの切り替え $ git checkout fuga 変更を確認したい 変更されているファイルを確認 $ git status ファイルの変更内容を確認 $ git diff HEAD {ファイルパス} コミットするファイルを指定 $ git add {ファイルパス} もう一度綺麗な状態に戻りたい 新しいファイルの取り消し git clean -f 編集・ステージングの取り消し git reset --hard HEAD おわりに 間違って大事な更新を消さないように気をつけましょう。
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

gitコマンドの使い方(チーム開発)

GitとGitHubとは コマンドの使い方に入る前に、まずはGitとGitHubについて説明します Gitとは wikipediaから引用 Gitは、プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システムである。 GitHubとは Github公式から引用 GitHubは、ユーザのみなさんからヒントを得て作成された開発プラットフォームです。オープンソースプロジェクトやビジネスユースまで、GitHub上にソースコードをホスティングすることで数百万人もの他の開発者と一緒にコードのレビューを行ったり、プロジェクトの管理をしながら、ソフトウェアの開発を行うことができます。 結論 語弊を恐れずに記載するならば、GitとGitHubの関係は以下のようなものです。 Git ローカル環境でソースコードのバックアップを取れるもの GitHub リモート環境でGitで取ったバックアップをアップロードすることで、そのソースコードの共有ができるもの ローカルとは、「自分のパソコン内で」という意味なのでネットに繋がっていないオフライン環境でも利用することができます。 リモートとは、「ネット上の」という意味なのでネットに繋がっているオンライン環境でのみ利用することができます。 ブランチ チーム開発を想定した場合に、同じプロジェクトのソースコードを複数人で編集していくことになります。その際に一人が作業しているときに他の人が作業できないという状況では困ってしまいます。そのため、ブランチという形でそのプロジェクトを複製(ブランチを切る)し、それを編集し、後から合体(マージ)させることで複数人での作業を可能にしています。 チーム開発で使うコード一覧 チーム開発の場合は、個人での開発と違いブランチをきったり、ソースコードをマージする作業が増えます。 個人開発はこちら 既存のソースコードを使う場合 GitHubからソースコードをクローンする(ダウンロード) クローン git clone [URLを入力] リモート上のブランチの一覧を取得 リモート上に存在しているブランチの一覧を取得 →この作業をすることで新規作成したリモートブランチなどもブランチ一覧の表示コマンドを打ったときに反映されるようになります。 フェッチ git fetch -p ※「-p」は省略することもできますが、リモート上で閉じたブランチであってもコンソール側にはその情報は自動で反映されないため、削除された情報も含めてリモートの最新情報を取得する場合にはつけます。 ブランチの一覧の表示 ブランチの一覧の表示(ローカルのみ) ブランチの一覧の表示(ローカルのみ) git branch ブランチの一覧の表示(フェッチで取得したリモートブランチも含めて取得) →リモート上のブランチは使用しているツールによっては文字色がローカルとは違う色で表示されます。 ブランチの一覧の表示(フェッチで取得したリモートブランチも含めて取得) git branch -a リモートブランチの内容をローカルに反映させる マージする →フェッチ作業は変更内容を取得しただけで、まだローカルのブランチにその内容が適用されていないため、適用する作業が必要になります。 マージ git merge origin/[ブランチ名] リモートの内容を直接ローカルに反映させる リモートにある情報をローカルにすぐに反映させる →フェッチ+マージにあたるコマンドです プル git pull ローカルブランチの新規作成 ローカル上に新規で名前をつけてブランチを作成します →特別な場合がない限り、リモートで作成したブランチ名とローカルで作成するブランチ名は同じものにした方が良いです。違う名前にしていると、コマンド操作を行うときにリモートの名前を毎回指定しなくてはいけなくなり面倒です。 ローカルブランチの新規作成 git branch '[ブランチ名]' ※「'」を省略することもできますが、先頭に記号がきた時などに正常にコマンドが適用されないことがあるので、つけた方が間違いないです。 作業ブランチの移動 ローカルで今作業しているブランチを移動 →デフォルトではmainブランチが選択されているため、移動したいブランチ名を入力して、移動してからソースコードを書き始めます 作業ブランチの移動 git checkout '[ブランチ名]' ※「'」を省略することもできますが、先頭に記号がきた時などに正常にコマンドが適用されないことがあるので、つけた方が間違いないです。 ローカルで編集した作業内容のコミット 編集した変更をステージング →変更箇所の確認 ステージング git add . ステージングした内容をコミットする →ローカルにバックアップを作成する コミット git commit -m '[コメントの内容]' コミットした内容をプッシュする コミットした内容をプッシュする →コミットで作成したローカルにあるバックアップをアップロード プッシュ git push
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

gitコマンドの使い方(個人開発)

GitとGitHubとは コマンドの使い方に入る前に、まずはGitとGitHubについて説明します Gitとは wikipediaから引用 Gitは、プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システムである。 GitHubとは Github公式から引用 GitHubは、ユーザのみなさんからヒントを得て作成された開発プラットフォームです。オープンソースプロジェクトやビジネスユースまで、GitHub上にソースコードをホスティングすることで数百万人もの他の開発者と一緒にコードのレビューを行ったり、プロジェクトの管理をしながら、ソフトウェアの開発を行うことができます。 結論 語弊を恐れずに記載するならば、GitとGitHubの関係は以下のようなものです。 Git ローカル環境でソースコードのバックアップを取れるもの GitHub リモート環境でGitで取ったバックアップをアップロードすることで、そのソースコードの共有ができるもの ローカルとは、「自分のパソコン内で」という意味なのでネットに繋がっていないオフライン環境でも利用することができます。 リモートとは、「ネット上の」という意味なのでネットに繋がっているオンライン環境でのみ利用することができます。 個人開発で使うコード一覧 ブランチをきったりしないので個人で開発する範囲であれば、以下のコマンドで十分だと思います。 チーム開発はこちら 既存のソースコードを使う場合 GitHubからソースコードをクローンする(ダウンロード) クローン git clone [URLを入力] ローカルで編集した作業内容のコミット 編集した変更をステージング →変更箇所の確認 ステージング git add . ステージングした内容をコミットする →ローカルにバックアップを作成する コミット git commit -m '[コメントの内容]' コミットした内容をプッシュする コミットした内容をプッシュする →コミットで作成したローカルにあるバックアップをアップロード git push
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む