ローカルリポジトリの変更がメインのリモートリポジトリにプッシュされたときに、ブックマークを使用して変更が行われていることを確認したいと思います。そのため、初めてローカルに追加したブックマークを初めてプッシュするか、すでにブックマークした行にリモートからプッシュしています。Mercurial Hookの現在のブックマーク
私は
[フック] pretxnchangegroup.push =のpython ...このよう.hgrc内部hgrcファイルに水銀のためのPythonのフックを設定している:./ HG/pushhook.py:bookmakrhook
私がプッシュすると、コールバックが発生し、funcが呼び出されます。どのようにして、ユーザーのロケコからすべてのクローン作成元のメインリポジトリへの変更が入っているアクティブブックマークを取得できますか?
私はPythonのフックファイルにこの署名を持っている:
デフbookmarkhook(UI、レポ、** kwargsから)
私は枝などを取得する以外、レポインスタンスで何もすることができないよう
レポ[なし] .branches()
私は、少なくとも、彼らがデフォルトに押して、別のヘッド(私は1つのブランチのみを望んで作成されていないことを確認することができますので、これは、スタートです - デフォルト、および多くをブックマーク)。
プッシュリモートサーバ上のブックマークがすでに存在しているときに、私はrepo._bookmarksでそれを得ることができ、[OK]を、ので、私はブックマークにプッシュしていますチェックするために、これは結構ですが、最初の時間ローカルリポジトリからリモートリポジトリへのリンクが実際にリモートリポジトリにブックマークを作成するために発生した場合、ブックマークはリモートリポジトリにはまだ存在しないため、存在しないため、_bookmarksのチェックは失敗します。ブックマークが最初に作成されているかどうかを確認する方法が必要です。リモートブック上の_bookmarksを取得するだけでなく、 –
リモートのブックマークが存在しないために 'hg incoming'経由でチェックするのはどうでしょうか? – planetmaker