Ситуация:
У меня есть основной репозиторий с основной веткой разработки и множеством «экспериментальных» веток, вырастающих из него (например, exp1
и exp2
). Цель этих ветвей эксперимента — служить заполнителями для экспериментов, которые генерируют числовые результаты. Я записываю название ветки (и идентификатор коммита) веток эксперимента, чтобы иметь возможность вернуться к коммитам, чтобы точно увидеть код и историю результатов.
Но теперь появилось так много экспериментальных ветвей, что становится трудно увидеть главное дерево. Итак, я переосмысливаю свою стратегию сохранения заполнителей в коде каждого набора результатов (т. е. каждого эксперимента). Очевидно, я мог бы просто сохранить рабочий каталог в каждой ветке, но было бы неплохо также сохранить историю коммитов.
Возможное решение:
Один из способов справиться с этим — переместить ветки эксперимента в свои собственные независимые репозитории, каждая из которых будет укоренена в дочернем узле соответствующего узла в истории коммитов ветки разработки. Вот иллюстрация того, что я имею в виду:
Нажмите здесь, чтобы открыть увеличенную версию изображения (на imgur.com).
Так, например, для ветки exp1
я хотел бы экспортировать коммиты A->B->C
в отдельный репозиторий с корнем в коммите A
. Затем я могу просто записать хэш фиксации P1
, чтобы знать, откуда произошла ветвь exp1
.
Вопрос:
Как я могу это сделать?
Лучший вопрос:
С другой стороны, я сильно подозреваю, что есть гораздо лучшая стратегия для выполнения того, что я хочу сделать, а именно: очистить дерево для визуального осмотра, но сохранить заполнители для предыдущих ветвей, чтобы я мог вернуться к ним в случае необходимости. Итак, может ли кто-нибудь порекомендовать стратегию для этого?
git log --oneline --graph --decorate --all
. Как я могу изменить эту команду git-log, чтобы не отображать данный пульт? - person synaptik   schedule 07.08.2014git replace
а> - person Ajedi32   schedule 07.08.2014git branch
и не хотите видеть там все эти дополнительные ветки? - person Gabriel Staples   schedule 11.03.2021