web-dev-qa-db-ja.com

「アークグラフト」と「アークパッチ」の違いは何ですか?

arc help --full | lessgraftについてこれを明らかにします:

  graft revision

      Grafts revision and its dependencies (if any) onto your working tree.

      --force
          Do not run any sanity checks.

      --skip-landed
          Do not try to patch landed/closed diffs.

これはpatchの場合:

  patch D12345
  patch --revision revision_id
  patch --diff diff_id
  patch --patch file
  patch --arcbundle bundlefile
      Supports: git, svn, hg
      Apply the changes in a Differential revision, patchfile, or arc
      bundle to the working copy.

      --arcbundle bundlefile
          Apply changes from an arc bundle generated with 'arc export'.

これは私にはあいまいです。 「graft」という言葉を使って「graft」の意味を説明してもあまり役に立ちません。


知らない人のために、arc(Arcanist)は "Phabricator"内のコマンドラインツールで、Git(またはMercurialおよびSubversion)の高レベルのラッパーのように機能し、開発を支援します。大規模なソフトウェアプロジェクトのプロセス。ここにいくつかのリンクがあります:

https://phacility.com/phabricator/

PhabricatorはもともとFacebookの内部ツールとして開発されました。[7] [8] [9] Phabricatorの主な開発者はEvan Priestleyです[1]。プリーストリーはフェイスブックを離れ、ファシリティと呼ばれる新会社でファブリケーターの開発を続けた。 https://en.wikipedia.org/wiki/Phabricator

7
Gabriel Staples

これは gitrafts に関連している可能性があります。ここでは、コミット/リビジョンを取得し、その親コミットを変更します。レポの歴史。
(ただし、 Git 2.18、Q2 2018以降、Graftはgitに置き換えられましたref/replace/

既存のdiffから新しいコミット/リビジョンを作成し、リポジトリの履歴に追加するパッチとは対照的です。

0
VonC