Чем отличаются git grafts и replace? (Grafts теперь устарели?)

Очень мало вопросов и ответов по git grafts по сравнению с replace . Поиск [git] + grafts + replace нашел только два, которые считались актуальными из 5. what-are-git-info-grafts-for и git-what- is-a-graftcommit-or-a-graft-id . Также есть примечание к git.wiki.kernel.org:GraftPoint

Теперь графты полностью вытеснены replace и filter-branch ], или они все еще нужны для некоторых особых случаев (и обратной совместимости)?

В целом, чем они отличаются (например, которые передаются между репозиториями) и в чем они в целом одинаковы? Я видел, что Линус, похоже, не заботится о прививках в настоящее время при обсуждении номеров поколений коммитов (максимальных родителей обратно к любому типу корня) «Прививки уже ненадежны.»

РЕДАКТИРОВАТЬ: подробнее информация найдена.
Поиск на www.kernel.org/pub/software/scm/git/docs по запросу graft нашел только 3 результата:

  1. git-filter-branch (1),
  2. v1.5.4. 7 / git-filter-branch (1),
  3. v1.5.0.7 / git-svn (1).

Немного более широкий поиск обнаружил RelNotes / 1.6.5.txt , который содержит :

  • refs / replace /ierarchy предназначен для использования в качестве замены механизма "прививки", с дополнительным преимуществом, что он может быть переносится между репозиториями.

К сожалению, gitrepository-layout (5) еще не обновлен с информацией о макете refs / replace / repository (и примечаниями), а также примечанием об устаревании info / трансплантаты.

Это приближается к подтверждению того, о чем я думал, но я приветствовал бы любое подтверждение или разъяснение.

53
задан Community 23 May 2017 в 02:10
поделиться