2

プッシュする前に、変更してコミットしたファイルのリストを取得したいと思います。

私は通常、hg 発信でこれを問題なく行うことができます。

しかし、自分の変更をコミットした後に追加の変更を取り込むと、それらの新しい変更もリストされ、私の名前の下にもリストされます。マージのコミットを行いましたが、実際には何もマージされず、関連のない変更セットを取り込んだだけです。他のユーザーから多くの変更を取り込んでいる場合、私の変更はこれらすべての変更の中で失われます。

私の変更だけをリストする方法はありますか?

4

2 に答える 2

3

そのようなファイルリストを取得するために、いつでも revset の関数といくつかのテンプレート キーワードを使用してログを使用できます。

hg help revsets発信()の使用を示唆しています:

"outgoing([path])"
  Changesets not found in the specified destination repository, or the
  default push location.

--template "{files}\n"範囲内の各チェンジセット内のスペースで区切られたファイルのリストと、異なるチェンジセットからのセットの改行区切りを提供します。--template "{files % '{file}\n'}"trivk「ファイルごとの行」を実行します

ログの出力を並べ替えにパイプして、重複することなくファイルのリストを並べ替えることができます

最終草案hg log -r 'outgoing()' --template "{files % '{file}\n'}" | sort -u

于 2013-03-10T05:54:09.987 に答える
1

使用できます

hg outgoing --no-merge 

マージ変更セットを除外します (-M短いバージョンは を参照hg help outgoing)。

他の人が作成した変更セットをプルしたのと同じリポジトリにプッシュしている場合、作成した変更セットのみが表示されます。

于 2013-03-09T22:56:44.277 に答える