数か月前に追加された機能にリグレッションがありました。この機能は、3つの別々のコミットで導入されました。機能を復元するためにgit cherry-pick
、コミットが本番環境にマージされる前に作成された最後のタグ(release-0.6.0)から作成されたブランチ(rel060)に3つのコミットを行いましたgit describe
。
これで完了です。この操作の結果を現在の本番ヘッドのファイルの内容と比較したいと思います。
git co -b rel060 release-0.6.0
git cherry-pick ead47f2
[rel060 f28fed4] Corrects non-display of subtabs. (SITE-657)
1 files changed, 5 insertions(+), 8 deletions(-)
git cherry-pick b22c4d4
[rel060 b0014f1] Correct subtab bug in Firefox/IE. (SITE-657)
1 files changed, 18 insertions(+), 24 deletions(-)
git cherry-pick ae5a321
[rel060 5b41410] Corrects bug with subtab line collapse. (SITE-657)
1 files changed, 5 insertions(+), 1 deletions(-)
git diff rel060:./cron_lp_functions.php..production:./cron_db_lpgenerate.php
error: Object 2ce3dd45e32e1bef6da0b22a9ee7208c63e203d2 is a blob, not a commit
error: Object f41574b41b82aba51876b5f7aba0d3ff9c6677c5 is a blob, not a commit
fatal: Invalid revision range rel060:./cron_lp_functions.php..production:./cron_db_lpgenerate.php
価値があるので、cron_lp_...でオートコンプリートをタブで試行すると次のようになります。Not a valid object name rel060:.
このfunctions
ファイルは、後で内容がにロールインされたファイルですlpgenerate
。
今、私がやりたいことを実行するためのより簡単な選択肢が何百万もあることに気付きました(3つのコミットを1つの差分として参照し、タグを差分して、問題の行の現在の状態に機能を解放します)。
私が知りたいのはこれです:なぜ私は特定のエラーを受け取ったのですか?結局のところ、さくらんぼ狩りは問題とは何の関係もないようです。タグからブランチを作成した後にdiffを実行しようとすると、同じエラーが発生します。gitの基本的な何かを見逃したことがありますか?リリースからブランチを作成することは無害に思えます...私が取り上げていない無害な落とし穴はありますか?