3

Railsプロジェクトで自動化を成功させるには、すべてのテストに合格する必要があります。問題は、git add --patchコミットする前にかなり多く使用し、段階的な変更でのみテストを実行したいということです。

解決策1:コミット前に agit stash --keep-indexを実行するか、コミット後に単純git stashに実行し、その後にフック(rake tests)とを実行しgit stash popます。これは、それが終了するのを待つ必要があり、実行中はステージングされていない変更にアクセスできないことを意味します。

解決策2:新しいローカルリポジトリ(テスター)をセットアップし、最初のリポジトリ(開発)からコミット後のフックをセットアップして、テスターリポジトリにプッシュします。テスターリポジトリには、テストを実行し、プッシュする前にコミットの修正に合格したか失敗したかを(電子メールまたはwhateva経由で)通知するための受信後フックが必要です。

無視されたファイルのためにリポジトリに違いがあるとしても、2番目の解決策ははるかに良く聞こえます(私は推測します)。

提案する別の解決策はありますか?

4

2 に答える 2

1

git-new-workdirを見てください(gitリポジトリcontrib / workdirにあります)。テストの実行に使用できる新しい作業ディレクトリが作成されます。

于 2011-08-29T09:46:14.637 に答える
0

私はついにソリューション2に頼り、それがミニ継続的テストシステムに進化しました。

于 2011-08-29T09:03:55.123 に答える