Меркуриал
В сабжевой DVCS все хорошо, но есть один слабо понятный мне момент. А именно, merge. Если ребе
belnetmon сделает push в центральный репозиторий и я после этого хочу сделать тоже push, то даже если у нас никак не пересекающиеся изменения - оно этого сделать не даст, нужно сначала сделать hg pull, потом hg merge, потом hg commit и только после этого получится сделать hg push.
Может, я чего не так делаю?
![[livejournal.com profile]](https://www.dreamwidth.org/img/external/lj-userinfo.gif)
Может, я чего не так делаю?
no subject
no subject
no subject
no subject
Работа svn (через апач или svnserve) или тем более mercurial - естественна. Работа SS - чудо. Да, он древнее, чем говно мамонта, и так же устарел - но сделан на совесть.
no subject
no subject
no subject
no subject
no subject
no subject
Варианты:
hg fetch - разом сделает pull-merge-push (если не возникнет конфликтов)
hg pull --rebase - сделает pull и воткнёт твои изменения после него (получится примерно как при работе с SVN - линейная история)
no subject
no subject
no subject
Для винды - в Mercurial.rc, секция extensions, раскомментить/вписать строки
fetch =
graphlog =
mq =
rebase =
ну и прочие по вкусу
no subject
no subject
no subject
Но навскидку - должно или создать файл для разрешения конфликтов, или запустить утилиту для их разрешения, прописанную в конфиге (kdiff3, к примеру).
no subject
no subject
no subject
no subject
И, да, это как раз сильно упрощает merge, хотя и делает его обязательным.
no subject
no subject
no subject
no subject
no subject
Этим пиздецом пользоваться просто невозможно.
no subject
no subject
no subject
no subject
Но subversion тоже не торт.
no subject
no subject
no subject
no subject
(disclaimer: дальше про git, возможно в hg что-то не так)
Хотя, чтобы не коммитить наперегонки, можете каждый пушить в свою ветку, а мержить чужие по утрам или по явной нужде.
Следующий шаг - вообще выкинуть центральный репозиторий и расшарить свои рабочие.
Где-то было эпическое видео Линуса, где в свойственной ему манере (What do you use here? Perforce? I'm ... I'm sorry) он подробно рассказывает, как они работают с git.
no subject