avva: (Default)
[personal profile] avva
(эта запись может быть интересна программистам)

Наверное, это неправильно, что меня так смешит запись Reset Demystified. Если вкратце, то автор книги Pro Git (!), признается в том, что мало написал о команде git reset в своей книге, потому что плохо ее понимал (!!). Но с тех пор он прочитал о ней побольше, и сейчас объяснит ее раз и навсегда, в блог-записи на 17 страниц!

Можно ли придумать более убедительную демонстрацию извращенности и враждебности командной строки гита? У команды git reset, которая потенциально может полностью стереть ваши изменения навсегда, есть три разных подвида, каждый из которых делает совершенно разную работу, и еще один из этих подвидов очень похож на другую команду, git checkout, но только в одном из ее подвидов - другой опять-таки делает совершенно другое! Но ничего, все станет кристально ясно, как только мы изучим полезнейшую сводную таблицу в конце записи:



Правда, теперь все понятно?

Я вспомнил, когда это прочитал, как два или три года назад мне так же было смешно, когда в Hacker News обсуждали новый сайт "Daily git tips". Я пытался сказать одну простую вещь: если вам для работы с системой управления версиями нужен сайт с ежедневными новыми советами, то что-то не так в вашей системе. Но меня, кажется, не очень поняли. Или не согласились.

Date: 2012-02-02 08:08 pm (UTC)
From: [identity profile] konstantin tenzin (from livejournal.com)
Мы в таком случае рекомендуем использовать pull с опцией rebase: история получается линейной и понятной.

Date: 2012-02-02 08:56 pm (UTC)
From: [identity profile] alexis-m.livejournal.com
В меркуриал это ровно та же команда с той же опцией pull --rebase.
Про детали врать не буду, потому что ни в git, ни в hg предпочитают не делать автоматических мерджей/ребейзов/комитов. Личная параноя :-)
Мой вопрос был, как git лучше окучивает описаный выше юзкейс с разъехавшейся историей.

Date: 2012-02-03 06:16 am (UTC)
From: [identity profile] konstantin tenzin (from livejournal.com)
Кажется придумать что-то принципиально новое здесь сложно. Я вижу пути с pull с merge, или pull с rebase, или выборочный cherry-pick своих изменений (по сути тот же rebase). Так что я не ожидаю, что здесь одна из систем удобней другой.

Date: 2012-02-03 03:35 pm (UTC)
From: [identity profile] alexis-m.livejournal.com
А вот nec_p1us_u1tra выше утверждает, что в git удобнее, поэтому я и спросил чем именно удобнее.

January 2026

S M T W T F S
    1 2 3
4 5 6 78910
11121314151617
18192021222324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 7th, 2026 04:45 pm
Powered by Dreamwidth Studios