Свежие комментарии
Title | Comment |
---|---|
Я смотрел, что это за ветки, |
Я смотрел, что это за ветки, я не пойму - где они? локально или в центральном repo? |
В mastere будут merge |
В mastere будут merge commity. Ну посмотри на картинку. при чем тут бранчи я не понял. |
для git это также |
для git это также справедливо. про git-svn сказал, чтобы подчеркнуть. |
Аааа, речь все еще об |
Аааа, речь все еще об git-svn? Я думал мы уже просто про гит говорим :) |
Это, как справедливо написано |
Это, как справедливо написано в мануале, bad idea в тому случае если ребэйз делается с коммитами которые уже лежат на сервере. Для локальных коммитов таких проблем нет. Уже два года ребейзим всем маемо, и никаких проблем. Я пожалуй не смогу толково рассказать про ту проблему потому как мы сразу запрещаем использовать merge и толком словить проблемы с конфликтами не удалось, но предположительно это случается в том случае когда первый чувак делает ветку скажем сегодня, работает 3 дня и мержит с конфликтами которые решает, второй чувак делает ветка завтра, и мержит через неделю. Так вот есть мысль, что ему прийдется иметь дело с конфликтами которые решил первый чувак. Но это предположение. На практике это выглядит так что ты ребейзишь свою ветку (например что бы работать с последними комитами с мастера) а тут вылезают конфликты файлов которые ты не трогал. А и еще, если откатываешь мерж, то в некоторых случаях можно поиметь кучу проблем, с обычными коммитами такого не будет. Usually you cannot revert a merge because you do not know which side of the merge should be considered the mainline. This option specifies the parent number (starting from 1) of the mainline and allows revert to reverse the change relative to the specified parent. Reverting a merge commit declares that you will never want the tree changes brought in by the merge. As a result, later merges will only bring in tree changes introduced by commits that are not ancestors of the previously reverted merge. This may or may not be what you want. |
мы видимо о разном говорим. У |
мы видимо о разном говорим. |
Ну граф истории будет |
Ну граф истории будет напоминать вот такой |
Пример про тарелки имхо |
Пример про тарелки имхо как-то не очевиден. |
К тому же там получается |
К тому же там получается засада с теми мержами в которых были конфликты и которые твои коллеги успешно решили но посколько использовали merge то в некоторых случаях при rebase тебе прейдется делать то что делали они. я вот этой ситуации не понял. но если это про rebase в общем репозитории, то это как бы bad idea. про это даже в http://kernel.org/pub/software/scm/git/docs/git-rebase.html написано: |
разобрался, сконвертил |
разобрался, сконвертил (проблемка крылась в запретах винды) |
ээ, я какбы говорил о том, |
ээ, я какбы говорил о том, что в master, от всей моей бурной работы в ветке feature, отразится только один merge-commit |
Когда 20 обезъян тащут в |
Когда 20 обезъян тащут в главную ветку миллион своих коммитов, получается свалка. И есть очень даже большой смысл это все чистить. Полезность информации о нескольких патчах сомнительна. |
Я вот когда начал git |
Я вот когда начал git изучать, сначала искал QuickRefernce, типа основные команды посмотреть - ничего доступного для бысторого вьезжания сходу не нашёл. Потом начал смотреть краткие статьи с описанием - то что я видел, всё написано сумбурно и полно горячей мочи от восторгов. Особенно умиляют советы типа, для лучшего понимания нужно изучить структуру данных git'а - вот это вообще пипец. ----- |
Представь, что у тебя в руках |
Представь, что у тебя в руках стопка тарелок, и на сервере (origin) стопка тарелок. Я например обхожусь без мержа. git checkout -b featureBv2 если кто то до меня пушнул нужно сделать так: |
> Ну и нафига 20 коммитов |
> Ну и нафига 20 коммитов тащить в общий репозиторий, если их можно rebase -i в один Извиняюсь, что встреваю. Но может хоть здесь пошлют в правильном направлении. git checkout -b featureBv2 origin/master А далее уже push или чего еще. Интересно это просто еще один способ достигнуть желаемого результата или чтото в нем есть глубоко порочное? |
Мой опыт состоит в том, что в |
Мой опыт состоит в том, что в архив приходится ходить черезвычайно редко. Ближе к никогда. |
Выше - ветка комментариев, |
Выше - ветка комментариев, где мы обсуждали с таким же страдальцем: http://blog.lexa.ru/2011/05/12/o_rastre_v_gps_howto.html#comment-18187 Повторять ее еще раз мне бы не хотелось..... |
Да, и про удаление |
Да, и про удаление (объединение) коммитов и про удаление нахрен неудачных форм эволюции. Если эти формы в чем-то могут быть интересны - в архив их. И забыть навсегда: возвраты к экспериментальному коду годовалой давности если и бывают, то единичные. Мой опыт состоит в том, что в архив приходится ходить черезвычайно редко. Ближе к никогда. |
Прошу простить, но все же не |
Прошу простить, но все же не поюму. Установил FWTools в папку bin закинул map2jnx (читал где то что так можно сконвертить) На компе просматривать не буду, сразу в прибор загружу а там и гляну. Только как сконвертить я так и не понял (( |
- пространство бранчей должно |
- пространство бранчей должно быть обозримым. Т.е. это максимум - экран (24 строки), а оптимум вообще меньше десятка (5-8). |
Не, я вот лично считаю, что |
Не, я вот лично считаю, что на *моем* рабочем месте А если мне понадобится тестовый код, написанный в прошлом году (допускаю, что может, хотя я скорее всего про него забуду раньше) - я согласен потратить несколько минут на его поиски, настолько редко это нужно на самом деле. А вот в регулярном списке тегов мне этого не надо. |
О рентабельности имеет смысл |
О рентабельности имеет смысл говорить, если показана не только расходная часть, но и доходная. |
вы не учитываете: - стоимость |
вы не учитываете: и я не говорю о таких вещях как off-line архив на жестких дисках стоимостью 120$ за терабайт (с учетом 2х избыточности и резервные винты) в итоге получается что процесс в его оптимальном варианте, с учетом инфляции не сильно изменился в цене, а ваш вариант с флешками (пока) не рентабелен ;) |
Я согласен, что рабочее место |
Я согласен, что рабочее место должно быть прибрано - хоть и пришёл к этому опытным путём. Когда реально видишь результаты этой аккуратности, начинаешь особенно её ценить. Но заводить отдельный репоизторий для мелких коммитов не считаю необходимым. Мелкие feature/topic-branch'и мерджатся одним коммитом в стволовые ветки - и после не мешаются. кстати, вот эти чуваки кричат что наоборот, не надо прятать скелетов - http://www.youtube.com/watch?v=0SARbwvhupQ . |
Ну то есть вы считаете, что |
Ну то есть вы считаете, что надо все хранить, на всякий случай, а я предпочитаю только чистовые варианты. Ну так заведите репозиторий "всякая хрень" и push-те туда все свои бранчи, проблем то. А в рабочем (и, особенно, общекомпанейском т.е. "центральном") держите только чистовые варианты. На мой личный взгляд, на рабочем месте должно быть относительно прибрано, а какие скелеты живут в шкафу - неважно. |
Во, git log -g то чего мне не |
Во, git log -g |
Не, это понятно. Я вот только |
Не, это понятно. |
Ну вот я в мастере говорю git |
Ну вот я в мастере говорю git merge vendor-branch и импортируются только те изменения, которые были с прошлого merge. Ну правильно, вы ведь ветку vendor-branch не удаляете - а кладёте следующую версию dcraw.c в ту же vendor-branch. И после этого ветка feature нафиг не нужна. Вот сделал копию одного репозитория, грохнул master (предварительно создав ветку, на самом первом коммите) - размер не изменился.. |
Да, и то же самое касается |
Да, и то же самое касается линейной разработки в локальном репозитории. Ну и нафига 20 коммитов тащить в общий репозиторий, если их можно rebase -i в один ("добавлена, протестирована и документирована фича 8") и уже в виде одного коммита push-ить. Потому как тому, кто будет с этими коммитами потом разбираться вдруг, ему тоже один большой коммит удобнее десятка мелких. |
Про последовательные merge на |
Про последовательные merge на примере libraw: Ну вот я в мастере говорю git merge vendor-branch и импортируются только те изменения, которые были с прошлого merge. Касаемо хранения всей истории: git предполагает, что ветки создаются легко, дешево и на каждый чих (merge отличный, почему бы нет). А отбранчевание (дешевое) нужно, чтобы на момент разработки feature, когда все разобрано и поломано - ветка master оставалась бы рабочей. |
Pages
