私はfeature
ブランチとtesting
ブランチ(初期回帰用)を持っています。テスト環境用の私のtesting
ブランチ用の作業コピーを用意したいと思います。しかし、スクリプトを介してソースコードの一部を圧縮する必要があります(バイナリではなく、最適化するだけです)。私はpost-receive Gitフックを通してこのスクリプトを制定することができます。GitフックでCIスクリプトを使ってソースを圧縮する方法
私はbashスクリプト(CI用)を設計して、かなり堅牢で、Gitの競合を引き起こす自動化を避けたいと考えています。私は、主リポジトリ(origin
)とテスト環境リポジトリ(ci_test
)を持って、CIをコミットできるようにすることを考えています。
ソースをプロモートするときにci_test/testing
にプッシュすることを考えています。 CIは圧縮し、追加し、コミットし、origin/testing
からフェッチし、必要に応じてマージし(コンフリクトを完全にとってから)、origin/testing
にプッシュします。
上記の私のモデルの問題は、作業コピーがあるので、ci_test/testing
にプッシュしようとするとGitが文句を言うことです(それらは同期されない可能性があるので意味があります)。継続的統合スクリプトをGitと一緒に使用して、まだ追跡されている(自動化された)方法はありますか?上記の私のモデルに
[プッシュツーチェックアウト](https://git-scm.com/docs/githooks#_push_to_checkout)フックは有望です。私はそのフックが存在することに気づいていなかった。 私はci_testが作業コピーを持っていた理由は、フックがソースを変更し、変更をコミットしたいからです(私は作業コピーなしでそれを行うことはできません)。私はまた、アプリケーションのテスト版を読むために使用されるディレクトリとして作業コピーを使用しています。 – BLaZuRE
@BLaZuREはい、あなたのケースでは、プッシュツーチェックアウトが適しているようです。 – VonC