私のCIサーバでlazilyコマンドを実行したいのは、(2つの最新のコミットの間で)サブディレクトリに変更があった場合だけです。これはgit diffを使用することが望ましいです。gitを使ってサブディレクトリに変更があった場合にのみコマンドを実行する方法は?
0
A
答えて
0
[[ -z "$(git diff --numstat your-sub-folder)" ]] || echo "Changes"
「あなたのサブフォルダ」の内容を比較し、サブシェルでGitの差分を実行し、検出されたすべての変更がある場合の変更をエコーます。
1
トリックを行うには、何らかの種類のファイルシステムウォッチャー(たとえば、inotifywaitなど)を使用できます。
+0
申し訳ありませんが、今質問を明確にしました。 CIがビルドを実行するのはオフラインのシナリオです。サブフォルダ内でファイルが変更されていない場合、いくつかのコマンドをスキップします。 –
+0
デーモンの変形 - incrond/icrondもあります。私は 'inotifywait |読んでいる間に 'ループ。しかし、私は(n)crondはそれをはるかに簡単に行うことができます。 – anishsane
関連する問題
- 1. 変更があった場合にngModelChangeを変更する
- 2. Docker変更があった場合にpip requirements.txtを実行する方法? Dockerfileで
- 3. batファイルを使ってgit bashで特定のディレクトリに入った後にgulpコマンドを実行するには?
- 4. 変更があった場合にデータの保存を促す
- 5. Gitを使って変更をコミットしてプッシュする方法
- 6. git difftoolを使ってファイルの変更をマージする方法
- 7. 特定のフォルダに変更があった場合、OOZIEジョブをスケジュールする方法はありますか?
- 8. 私は/ blog/URIを持っている場合にのみサブディレクトリにリダイレクトする方法
- 9. git diffを使って追加された行を変更する方法はありますか?
- 10. 間違ったパスを使ってコマンドを実行する
- 11. pythonを使ってcurlコマンドを実行する方法3.6 windows
- 12. Bashスクリプト、サブディレクトリを使ったコマンド
- 13. 場合によってのみグローバル変数が変更されました
- 14. APKのみを持っている場合のバンドルIDの変更方法
- 15. git rebaseを行った後で変更がなくなった
- 16. Jqueryは、チェックボックスがオンになっている場合にのみ実行する必要があります
- 17. mongooseを使って生のmongoDBコマンドを実行するには?
- 18. linux - rc.localを使ってディレクトリを変更し、起動時にコマンドを実行する方法
- 19. gitコマンドで何があってもリモート変更を取得する
- 20. 私のプロジェクト(Django)に変更があったときにテストを自動的に実行する方法は?
- 21. 変更があってリモートが先行する場合の処理
- 22. Javaを使用してプログラムによってadbコマンドを実行する方法
- 23. Groovyスクリプトを使ってGit checkoutを実行するには?
- 24. バッチを使って同時に2つのコマンドを実行する方法
- 25. サブディレクトリにある可能性がある場合にローカルgitリポジトリのパスを見つける方法
- 26. 条件が真である場合にのみセグを実行する方法
- 27. CreateProcessを使ってcmdでコマンドを実行するには?
- 28. dosコマンドを使ってサイクルを実行するには?
- 29. awsコマンドを使ってシェルスクリプトを実行するには?
- 30. Net :: SSH :: Perlを使ってSSHコマンドを実行するには?
ローカルのgit repoを持っていて、あなたのコードに変更があったかどうかをチェックしたいと思いますか?そしてもしそうなら、あなたはコマンドを実行したいですか?詳細を説明してください。 – cb0