特定のコミットIDまたは時間の後にすべてのコミットをチェンジセットでフェッチしたいとします。 Mercurial APIを使用してそれを行うための直接的な方法はありますか?Mercurial APIを使用して特定の時間枠の間、または特定のリビジョンまたはコミットIDの後に最新のものまでのリビジョン履歴を取得するにはどうすればよいですか?
2
A
答えて
1
ご存じのように、Mercurialにはno stable Python-level APIがあります。コマンドラインは、サポートされている唯一のAPIです(JavaHgやpython-hglibなどのラッパーライブラリを使用している場合を除く)。
ので、コマンドラインで、あなたはID
後にすべてのチェンジセットを取得するために
$ hg log -r "ID::"
を実行します。 ::
オペレータは、子孫ではなく、ID
の子孫でなくても、リビジョン番号が高いチェンジセットを必要とする場合は、ID:
を使用します。 JavaHgを使用して
、あなたはRepository
オブジェクトをインスタンス化し、LogCommand
を使用します。
List<Changeset> changesets = LogCommand.on(repo).rev(id + "::").execute();
あなたはその後、changesets
リストを反復することができます。あなたはMercurialのコードをインポートする場合のpython-hglibと、それは
changesets = client.log(id + "::")
のように見える最後に、直接あなたはchangectx
オブジェクトを返すイテレータを取得するために
ctxs = repo.set(id + "::")
を行うことができます。私たちはPython APIについて保証しませんが、私はこれも非常に安定していると期待しています。
上記は変更セットIDまたはリビジョン番号を参照することに焦点を当てています。日付で検索する場合は、その後、あなたはdate
キーワード引数を設定し、内部のpython-hglibで、あなただけのLogCommand
にdate(String date)
メソッドを使用することができますJavaHgで
$ hg log -d '>YOUR-DATE'
と同等のものを呼び出す必要がありますdate
revset述語 - hg help revsets
を参照してください。
関連する問題
- 1. JGitを使用して特定のブランチでマージを除いた特定のパスの最新のリビジョンIDを取得する方法は?
- 2. Git Log =特定のリビジョンのマージされたリビジョンIDを表示します
- 3. 特定のリビジョンのコミットメッセージとファイルリストをどのように取得しますか?
- 4. cURLを使用して特定の期間のgitコミット履歴を取得するにはどうすればよいですか?
- 5. TortoiseSVN:特定のリビジョン以降に変更された(または新しい)ファイルのみを取得します。
- 6. デフォルトの特定のリビジョンまで特定のリビジョンまで「同期」または特定のブランチをキャッチアップする方法
- 7. 特定の時間間隔でファイルのバックアップを取得するにはどうすればよいですか?
- 8. SVNKitを使用して特定のファイルのリビジョンを取得するには?
- 9. TortoiseSVNの特定のリビジョンのソースプロジェクトを取得するには
- 10. リビジョンの長さで特定のファイルを更新するにはどうすればよいですか?
- 11. 履歴の特定の日付、またはデスクトップアプリケーションのスラックチャンネルで最も古いメッセージにジャンプするにはどうすればよいですか?
- 12. Mercurial/hg:特定のリビジョンでファイルを検索する(そのリビジョンを更新しないで)
- 13. Mercurialの特定のリビジョン以降に影響を受けたファイルの一覧を取得するには
- 14. Mercurialで特定のコミットに対してのみプルリクエストを行うにはどうすればよいですか?
- 15. TFSテストマネージャAPIのTestCaseの特定のリビジョンを取得するには、ゼロアクション
- 16. Laravelで特定の時間の後にイベントまたはリスナー
- 17. 私のCSSファイルの最新のリビジョン日付を取得するにはどうすればよいですか?
- 18. Laravelの特定の時間枠内のレコードを取得する
- 19. 特定の時間後にログイン設定値を削除するにはどうすればよいですか?
- 20. Animatorを使用して特定の時間間隔後にOpenGL(Java JOGL)の表示を更新するにはどうすればよいですか?
- 21. Gitを使って、リポジトリの異なるリビジョン間での関数の変更を特定するにはどうすればよいですか?
- 22. gdocのリビジョン履歴をgitにエクスポートするにはどうすればよいですか?
- 23. 特定の時間枠でドキュメントを取得する最善の方法MongoDB
- 24. Mercurialの古いリビジョンに特定のディレクトリを更新することは可能ですか?
- 25. Apps Scriptの特定のリビジョンに戻るにはどうすればよいですか?
- 26. ASP.NETのSVNリポジトリからASP.NETのリビジョン履歴を取得する
- 27. Jenkinsの特定のリビジョンでgit repoをチェックアウトするには
- 28. 特定の履歴コミットから特定のフォルダを削除するにはどうすればよいですか?
- 29. Githubにブランチの特定のリビジョンのRails Gemをインストールします。
- 30. ファイルXを変更した最後のMercurialコミットを特定する方法は?