Auto: リリース時のGitの失敗(ただし、何が失敗したのかわからない)

作成日 2019年10月21日  ·  12コメント  ·  ソース: intuit/auto

バグを説明する

いくつかの不正スタートの後、私はついにrelay-compiler-language-typescriptを再びリリースしました。 トラビスからのプッシュは、理解するのが困難でした。

成功したビルドは次のとおりです: https

その後、同僚がPRをマージしたところ、新たな失敗に終わりました。

  • ビルド: https
  • エラー:
ℹ  info      Getting commits from v9.0.0 to HEAD

fatal: ambiguous argument 'v9.0.0..HEAD': unknown revision or path not in the working tree.

Use '--' to separate paths from revisions, like this:

'git <command> [<revision>...] -- [<file>...]'

ビルドの結果を見ると、何が失敗したのかすぐにはわかりません。

それがしなかった唯一のことは、最後のバージョンのconsole.logでした(失敗したため)...しかし、ログは、他のすべてのことを行う前に、失敗したはずだと私に信じさせます。

私はちょっと困惑しています、ハ。 何かご意見は?

documentation question

全てのコメント12件

私は今日これを経験しました。 ambiguous argument 'v9.0.0..HEAD'git fetch --tagsで修正する必要があります。これにより、envに差分を見つけるために必要なすべてのタグが含まれるようになります。

ヘッズアップ@strassをありがとう。 私たちはここで私たちが期待するものをチェックし、それらが存在しない場合はそれらをつかむことを試みる機会があるように感じます。

しかし、ログは私に他のすべてのことをする前にそれが失敗したはずだと信じさせます。

正しいログを見ているかどうかはわかりません。 彼らは何かが起こる前に道を終えます

私は何が起こったのか理解しました:

  1. https://github.com/relay-tools/relay-compiler-language-typescript/pull/147マージ9:32 am(ビルド1)
  2. https://github.com/relay-tools/relay-compiler-language-typescript/pull/139マージされた9:33 am(ビルド2)
  3. ビルド1はgit checkout master && git pull origin && git branch --set-upstream-to origin/master masterを実行します。これには、ビルド2のコミットが含まれます。
  4. ビルド1は「スキップリリース」でしたが、ビルド1はビルド2の変更のメジャーリリースを行います
  5. ビルド2は変更をリリースしようとしますが、ビルド1はすでにリリースしています。 したがって、CIは失敗します

問題は、マージコミットのビルドを実行しているときにtravisがマスター上にないため、gitfuを実行する必要があるようです。 これがアクションに対してこれを処理する方法です( git checkout master && git pull origin欠如に注意してください)

https://github.com/hipstersmoothie/create-check/blob/master/.github/workflows/push.yml#L41

@zephraph優れたtravisセットアップを説明するページをドキュメントに追加できますか?

私は今日これを経験しました。 ambiguous argument 'v9.0.0..HEAD'git fetch --tagsで修正する必要があります。これにより、envに差分を見つけるために必要なすべてのタグが含まれるようになります。

私はhttps://github.com/intuit/auto/pull/626でこれに対処しました@strassを自由に確認して改善して

@hipstersmoothie私はまた、この自動のどれだけがユーザーのためにやるべきか疑問に思いますか? その場合のように、タグを自動的にフェッチしようとします。

GitHawkで送信

私はこの仕事をもう少しするためにautoを作るために開いています、私はそれが実際にどのように実行されるかわかりません。 あなたの場合のように、この機能を追加すると、すべてがすでにリリースされているため、「空の」リリースが作成されます。 私の考えでは、コードが別のブランチからリリースされたときにエラーが発生する(おそらくより良いメッセージが表示される)のがより良い経験です。

また、最新のタグの背後にあるブランチでshipitを実行している場合、すべてがどのように動作するかわかりません。

#626が出荷されたので、これを閉じます。

travisconfigにいくつかのドキュメントを追加します。

このページは役に立ちましたか?
0 / 5 - 0 評価