Задать вопрос

Как взять один файл из раннего комита?

Только осваиваю для себя DSVC. Работаю над проектом, в котором три файла: file1, file2, file3. Работаю, делаю комиты, всё в порядке. И вот на этапе комита номер 10 я понимаю, что всё, что я делал в file2 за последние 4 комита, было неверным. То есть мне нужно на этапе комита номер 10 взять версию file2 из комита 6, но не менять файлы file1, file3. Какой правильный и красивый способ это сделать если я использую git? Если Mercurial?

Решение в лоб, которое я вижу: откатиться к комиту номер 6, ручками скопировать file2 куда-то в сторону от репозитория в папку TMP, вернуться к комиту 10, перезаписать файл 2 из папки TMP в рабочую, закомитить как комит 11. Но это как-то грубо и не изящно.
  • Вопрос задан
  • 604 просмотра
Подписаться 3 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • ProductStar
    Python + Flask + Git: веб-разработка с нуля
    2 месяца
    Далее
  • Учебный центр IBS
    DEV-007 Введение в систему контроля версий Git
    1 неделя
    Далее
  • Stepik
    Git (система контроля версий)
    1 неделя
    Далее
Решения вопроса 1
@aol-nnov
> я понимаю, что всё, что я делал в file2 за последние 4 комита, было неверным.
git checkout HEAD~4 -- path/to/file2
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@BorisKorobkov
Web developer
Удобнее пользоваться средствами IDE. Например, для PhpStorm это делается в пару кликов https://www.jetbrains.com/help/phpstorm/reverting-...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Нижний Новгород
от 50 000 до 90 000 ₽
Made In Dream Санкт-Петербург
от 100 000 до 220 000 ₽
от 250 000 до 320 000 ₽