コミットする前にファイルリストからファイルのチェックを外すと、変更セットには入りません。これは、プッシュでは機能しないことを意味します(これらは変更セットごとにあるため)。
これはTortoiseの機能の1つであり、コマンドラインで役立ちます。
編集したファイルでプルを行うと、複数のヘッドが作成されます。ファイルに変更を加えたい場合は、これらをマージできますが、これは手動の手順である可能性があります。
あるいは、設定ファイルの場合、Mercurialのパッチキュー機能を使用すると便利です。したがって、コマンドラインからこれが可能になります(作業ディレクトリで変更されたと仮定します)。
hg qnew "localConfig"
hg qrefresh
これにより、「localConfigs」という新しいパッチキューアイテムが作成され、編集されたファイル(構成ファイル)がアイテムに配置されます。その後、次のことができます。
hg qpop
パッチキューから(変更セットパスから)削除します。または:
hg qpush
チェンジセットパスに入れます。これは、中央リポジトリに対応することに加えて、定期的に行うファイル変更を管理するためのより簡単な方法です。キューアイテムを取り出し、プルして更新し、キューアイテムを元に戻します(ただし、これらはマージの競合を処理します)あなたのアイテムが小さい場合はまれです)。このようにして、複数の頭を避けます。
https://www.mercurial-scm.org/wiki/MqExtension
私たちのオフィスではこのメカニズムを使用する傾向があります。
プッシュとポップはスタックコレクションのように機能することに注意してください。「localConfigs」が「moreLocalChanges」の上にある場合、「localConfigs」をプッシュする場合は両方が必要になります。私の例では、「localConfigs」パッチがキュー内の唯一のパッチであると想定しています。Mercurial構成ではデフォルトで無効になっていますが、バンドルされているため、簡単に有効にできます。
[extensions]
mq =