GIT - использовать последнюю версию файла из всех веток
Знаете ли вы, как использовать последнюю версию файла из всех веток? Проблема в том, что для использования последней версии я должен проверить ветку, но я не знаю, какая ветка является последней версией.
Поэтому я могу использовать файл, который устарел из другой ветки, но я не знаю, что у другой ветки последняя версия.
Частичное решение: Создайте новую ветку, где будет последняя версия файла.
Можно ли решить это иначе? Спасибо
1 ответ
Я предполагаю, что вы используете git неправильно, если задаете такой вопрос.
Понятие "последняя версия" файла не имеет реального смысла в git.
Понятие "следующей версии, которая будет выпущена" файла зависит от вашей ветви и рабочего процесса выпуска, но должно быть детерминированным.
Может быть, вы должны объяснить свою корневую потребность для лучшего понимания того, чего вы хотите достичь.
Но, чтобы строго ответить на ваш вопрос:
Чтобы найти последний коммит, который изменил файл:
git log -1 --date-order --all --format=format:%H -- path/to/file/in/repository
Это даст вам хеш коммита.
Если вы хотите получить содержимое файла в этом коммите:
git show ${COMMIT_HASH}:path/to/file/in/repository
Если вы хотите найти ветви, содержащие этот коммит:
git branch --contains ${COMMIT_HASH}