私は別のブランチで作業している私のレールプロジェクトを持っています。私は新しいモデルやスキーマの変更などの追加に多くの変更を加えましたが、私は最近bundle install
の代わりにbundle update
を実行して新しい宝石を追加しました。私も宝石のバージョン(私はおそらくやるべきです)をロックしていないし、最新のバージョンに多くのものを更新しました。これは、それが見える多くの事を壊してしまった。私のブランチで私の "他の"変更をすべて失うことなく、これらをロールバックするにはどうすればいいですか?変更をすべてロールバックせずに、最近のバンドルのアップデートをロールバックする方法はありますか?
私の最初の考えは、私のmaster
ブランチのgemロックファイルからすべてのバージョン番号を調べて、それらをブランチの既存のgemfileに追加して、それらをロールバックするための更新をやり直しました。しかし、おそらくこれは私がやっているべきことではありませんか?ありがとう!
gemの更新が単一のコミットに分離されている場合は、[cherry picking](https://git-scm.com/docs/git-cherry-pick)を使用して不正なコミットを回避できます。それ以外の場合は、バージョン制約をgemfileに追加し、 'gem update'を再度実行して正しい依存関係を取得する必要があります。 – max
@max、okありがとう。私は先に進んで、 'master'ブランチのgemロックファイルを見て、既存のgemファイルを編集することでバージョン番号をやります。私は過去にそれをやっていたはずです。 – daveomcd
'Gemfile.lock'フォーム' master'をつかんで 'bundle install'を実行しただけでは助けにならないでしょうか?私は 'Gemfile'のバージョンを以前の状態に戻すように制限する必要はないと思います。 – BoraMa