Что происходит с тегами Git, указывающими на удаленный коммит

В настоящий момент нет официального способа сделать это, но вы можете использовать небольшой трюк, чтобы достичь этого! Помните, что это экспериментально, и у него есть некоторые ограничения ... (проверьте эту ссылку , если вы беспокоитесь о совместимости с навигатором)

Что вы можете сделать, это использовать селектор CSS3: псевдо classe nth-child()

#list>* {
  display: inline-block;
  padding: 20px 28px;
  margin-right: 5px;
  border: 1px solid #bbb;
  background: #ddd;
  color: #444;
  margin: 0.4em 0;
}

#list :nth-child(-n+4) {
  color: #600b90;
  border: 1px dashed red;
  background: orange;
}

The oranges elements are the previous sibling li selected using li:nth-child(-n+4)

1

2

3

4
5

6

7

8

9

Ограничения

  • Вы не можете выбрать предыдущие элементы основанный на классах следующих элементов
  • Это то же самое для псевдо классов

30
задан idanshmu 22 October 2015 в 14:33
поделиться

1 ответ

... таким образом, так как я все еще немного озадачен..., кто-либо может подтвердить то, что я пишу здесь?

предполагают, что у нас есть следующее:

-- A -- B -- D -- E ... (master-branch commits)
        |
        C (branch) -- C1 -- C2 -- C3 -- C4 ... (branch commits)
                             |
                             v1 (tag)

теперь я удаляю C-branch , не объединяясь это назад ведущему устройству (поэтому обычно, фиксации были бы потеряны)

однако, так как я поместил тег на C2, фиксации C1 и C2 будут сохранены, так как на них все еще ссылается тег. (C3 и C4, с другой стороны, потеряны, так как ничто не ссылается к нему после того, как ответвление удалено)

Так, в конце я могу всегда возвращаться к состоянию кода в теге v1, даже при том, что C-branch больше не существует. (Я мог даже создать новое ответвление его для запуска в C2 снова), @Rene

0
ответ дан 27 November 2019 в 04:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: