Magitセクションのデフォルトの可視性を変更する

私は人気のあるレポのフォークを持っている、私は自分の個人的なコミットを自分のフォークに持っている間にそのレポに押しつけられるコミットを追跡することができるようにしたい。アップストリームにマージされるように私の変更を本当に望んでいないので、誰かが上流のレポにコミットするたびにマージ/リベースしても問題ありません。

私は、三角形のワークフローとそれに対するMagitのサポートについて読んで、素晴らしいと思った。私のローカルコミットが最終的にメインリポジトリにマージされ、 Unmerged in upstream/master セクションのローカルコミットのリストが表示されるようにしなければならないことを除いて、

Head:     
Merge:    upstream/master 
Push:     origin/master 

Unpulled from upstream/master (1)
987ac90 upstream/master 

Unmerged into upstream/master (1)
123baf8 master origin/master 

これはコミットのカップルがある場合は問題ありませんが、後で私の個人的な変更が積み重なり、リストが大きくなります。 Unmerged in upstream/master セクションを常に非表示にする方法はありますか?

8

1 答え

この機能は頻繁に要求されていないため、これを簡単に行うオプションはありません。 (これまでに要求されたことは覚えていませんが、少し驚きました)。私は最終的にそのようなオプションを追加しようと考えていますが、セクションコードに対して他のより基本的な変更を加えるまではありません。

しかし、これを行うために使用できるフックが存在します。あなたは少しの定型文を書く必要があります:

(defun local-magit-initially-hide-unmerged (section)
  (and (not magit-insert-section--oldroot)
       (eq (magit-section-type section) 'unpushed)
       (equal (magit-section-value section) "@{upstream}..")
       'hide))

(add-hook 'magit-section-set-visibility-hook
          'local-magit-initially-hide-unmerged)
    magit-insert-section-oldrootnil の場合、バッファは最初に作成されています(更新されていません)。この場合、nil以外の値を返したいだけです。
  • セクションの値とタイプを取得するには、 M-x magit-describe-section を使用します。
  • 戻り値は非表示表示、または nil でなければなりません。
  • このような関数は、フック内で magit-section-set-visibility-of-cache の前に来なければなりません。

それは端の周りに少し荒いです、そして、これは再び内部目的のためだけに意図されていました。

9
追加された
ああ、ありがとう!これは私が必要とするものです。
追加された 著者 titanous,