Свежие комментарии

Title Comment
Верно ли я понимаю, кстати, что если я хочу java в браузере,

Верно ли я понимаю, кстати, что если я хочу java в браузере, то мне нужен линуксовый браузер и эмулятор?

Кто бы линуксу еще ZFS приделал, цены бы не было машинке...

Кто бы линуксу еще ZFS приделал, цены бы не было машинке...

<q>linux-sun-jre-1.6.0.24 You must manually fetch the JRE se

linux-sun-jre-1.6.0.24 You must manually fetch the JRE self-extracting file for the Linux platform (jre-6u24-linux-i586.bin) from http://www.oracle.com/technetwork/java/javase/downloads/index.html, place it in /usr/ports/distfiles and then run make again.
это лицензионные заморочки, ты типа там с лицензией согласится должен, что б тебе дали скачать.

Ну и разные гадости пишут по треду по ссылке, врут что на Linux оно реже падает.
я думаю врут.
у них типа ядро падало

А что там ТАК? Ну вот к примеру: FreeBSD supports only hard

А что там ТАК?
Ну вот к примеру: FreeBSD supports only hardware virtualized (HVM) kernels on amd64 (http://wiki.freebsd.org/FreeBSD/Xen). Прощай live migration, не говоря об эффективности.

linux-sun-jre-1.6.0.24 You must manually fetch the JRE self-extracting file for the Linux platform (jre-6u24-linux-i586.bin) from http://www.oracle.com/technetwork/java/javase/downloads/index.html, place it in /usr/ports/distfiles and then run make again.
Ну и разные гадости пишут по треду по ссылке, врут что на Linux оно реже падает.

Нуууу, на FreeBSD есть

Нуууу, на FreeBSD есть полностью живой Valgrind и есть DTrace, которого не Линухе нет, а это ОЧЕНЬ мощная штука. VTune нет, да.
Виртуализация -- VirtualBox вполне поддерживается. kvm нет, факт.

в больших конторах я в

в больших конторах я в основном RedHAT встречал. Удивительно, что Rambler, ища стабильность и уверенность + иметь возможность своих админов отпускать вечерами домой к семье выбрали опять черти что, а не коммерческий RedHAT, где они получат любую консультацию почему у них что-то не работает. А ведь для такой конторы как Рамблер стабильность должна быть на первом плане, а они ищут халявки. позор.

По опыту работы в *ix, всё равно в <i>больших конторах</i> и

По опыту работы в *ix, всё равно в больших конторах или солярка (ну и ещё немного хпукса, аикса, т.п.)., или свой переработанный дистрибутив линуха. А этот свой преработанный — всё равно, что там в начале было. Эти стенания на предмет пакедж манагеров, т.п. — кого это волнует, всё равно при разворачивании «сотни серверов» надо своё.

За Родинуфрибзду обидно, конечно, но выделенные пункты — да, никуда не пройти мимо.

И пара ссылок, рядом с этой темой: http://www.c0t0d0s0.org/archives/7386-Implications.html и (не нашёл ссылку) в последней vSphere можно делать виртуалку в виртуалке.

а что с виртуализацией (уж больно кратко)? что не так с java

а что с виртуализацией (уж больно кратко)?
что не так с java?

То что Рамблер с Я переезжают

То что Рамблер с Я переезжают на Линукс - это не такой убедительный показатель что Фря плоха - те же полугодовые бенчмарки от того же порнослоника в домене показали что разница несущественна. Вероятно Рамблер имеет в своем штате низкоквалифицированных Unix (Linux+other) и имеет теперь Linux-only одминов - каждый использует то, что лучше знает, это факт. К тому же это все бизнес - а из-за бизнеса и людей с легкостью убивают. CUDA, кстати сказать в FreeBSD-CURRENT поддерживается (отдельным патчем). Я и сам, будь только 1 дистрибутив Linux, переехал бы и серверами и рабочей станцией на Linux. Но сейчас Linux раскалывается также как когда-то пошли порознь пути Linux-BSD - у всех разные порт-менеджеры, у многих сейчас разные X-серверы (Ubuntu привет), у многих разные системы запуска (systemd, openrc..) и что самое страшное - начали появляться дистрибутивы которым не нравяться глибцы, есть дистры с dietlibc или uClibc или Newlib. Теперь холивары между дистрибутивами Линукс а также в скором времени будут новости типа "Рамблер переехал с Debian на RedHAT". "Яндекс переезжает с CentOS на TurboLinux". Хорошо еще ядро пока у всех одно - но оно стало невероятно огромным - корпорации в своих интересах тащат туда все что не поподя, не ровен час когда эта громозека сама себя начнет переваривать.

100tnx

100tnx

Спасибо. Приятно наконец то

Спасибо.
Приятно наконец то почуствовать себя не полным идиотом. :-)

Я лишь добавлю что гит скажет

Я лишь добавлю что гит скажет при пуше второго, что fast forward невозможен. Это значить что нужно сделать пулл и ребэйз. Но.
git pull это тоже самое что и

git fetch
git merge

Мы рекомендуем git pull не делать, иначе гит будет мержить локальный коммит с тем что свалилось с сервера. Можно так
git pull --rebase тогда это будет эквивалентно:
master> git fetch
master> git rebase origin/master

Как уже сказал lexa второй получит конфликт при rebase, и нужно будет его решит прежде чем продолжить. Потом можно делать пуш.

Так как диффы - всегда на

Так как диффы - всегда на уровне строк, то конфликт обязательно будет.

Так как пушатся (и вообще коммитятся) не отдельные файлы, а changeset-ы (не вдавался, как это в git называется), значит там возникает блокировка (на проект?) и второй не успеет.

Значит этот самый второй при пуше - обломается (кто пришел вторым) и ему придется порезолвить конфликт.

Я так щетаю.

Сюда тоже СПАСИБО!!! Я это

Сюда тоже СПАСИБО!!!
Я это тоже все перечитал. На этих графиках крыша ехала.
Теперь (после всей последовавшей дискуссии) стал въезжать для чего это надо.

Вот уже и не знаю куда

Вот уже и не знаю куда отвечать.
СПАСИБО!!!
Внимательно следил за вашей с J0hn дискуссией и боялся прервать. Наконец то стало проясняться про rebase и прочие нюансы и usecsae-ы.
Тупой окончательный вопрос про rebase (для себя):
Есть CMakeLists.txt и в нем допустим строка:

clahe equalizer highpass hotpixels lowlight

мы вдвоем с живчиком сделали pull, чего то там натворили, поправили CMakeLists.txt
живчик:

clahe equalizer highpass hotpixels lowlight nlmeans

я:

clahe equalizer highpass hotpixels lowlight density

Живчик успел push раньше.
я делаю pull и rebase
1) у меня случится конфликт? или втихомолку внесутся мои изменения, потеряв изменения живчика?
2) а если мы одновременно пушить начали (что конечно маловероятно). Кто последний, того и тапочки? По идее конфликт должен случиться и я думаю будет.

Можно коротко. Я уже почти достиг просветления на данном этапе.

Почитал я письмецо в кернел

Почитал я письмецо в кернел трап.
Думаю самое время подвести итог. Похоже кто то всетаки находит пользу в мерж коммитах, они им нравятся и все такое. Я пожалуй спорить не буду (да я особо и не спорил). У каждого свои проекты, люди. Если почитать Линуса, то вообщем то ясно, что он не может ребейзить физически из за того, что у него тоже вытягивают какие то ветки. К томуже 2500 патчей звучит как то уж совсем дофига, я так понимаю что это даже не коммиты. У нас пулят только из одного места, в него все и сливают. Есть проект в котором сливают в мастер и если тесты зеленые то скрипт это все дело _мержит_ в мастер-стейбл. То есть ребейзить можно,
что мы и делаем. Такой воркфлоу у нас уже 2,5 года и проблем с историей небыло. Кол-во коммитов можно глянуть тут:
https://qt.gitorious.org/qt-components/qt-components
и тут
https://meego.gitorious.org/meegotouch/libmeegotouch

Все же кернел это не рядовой проект. Да и Линус с камрадами я скажу не рядовые личности. Я нисколько не сомневаюсь что они смогут разобраться кучей мержовых коммитов. Другое дело что у нас в комманде таких людей нет :)

* например про rebase: "and basically use git as an efficient patch-queue manager that remembers *your* patches" *
Это как раз то, что я хотел написать, что гит эффективный менеджер патчей. Только получается, из его слов что ребейзят лузеры а уж на полную катушку гит используют чуваки которые мержат. Но рано или поздно станет ясно что лучше для конкретного проекта.

Про статью с хабра...Вообщем, к чему то подобному мы тоже пришли. Есть бранчи для релизов (1.0, 2.0) в которые черипикаются баг фиксы, есть таги, только ветка стабильная одна - мастер. если она не стабильная коммит сразу откатывается. Практика показывает что если что то может быть нестабильным оно будет нестабильным всегда. Вся работа ведется в клонах, а патчи засылаются merge requestами. Есть несколько человек которые их пушат. Когда пушили все, билды были красными.

В QT я так и не смог понять пытаются они сделать историю линейной или нет. У них там демон есть который пушит автоматом коммиты, они ессно смерженые. В чем ценность мерж коммитов в таком случае мне понять сложно.

В целом ваша позиция ясна, я надеюсь моя тоже (а на большее я и не расчитывал :) )

* 1 То что merge-commit's это

* 1 То что merge-commit's это вообще плохо? *
Да.

Ну а как без них нормально организовать что-то чуть более сложнее одной стволовой ветки, например http://habrahabr.ru/blogs/Git/106912/ ?

или если какой то шустрик до нас запушил:

я такой rebase делаю, но merge'у с --no-ff, специально, чтобы не было fastforward. по той ссылке, с которой вы взяли картинку, чувак с ником "Apreche" делать merge-коммиты. Например показывает, что merge легче откатить, так как это один коммит, а не все мелкие коммиты.
Если делать fast-forward, то чем это всё отличается (глобально) от например svn?

А картинка должна была проиллюстрировать то чем эти мерж коммиты плохи.
выражение "merge-коммиты плохи", у меня ассоциируется с "ветвления плохи".
merge'ить ветки естественно , а полностью вливать одну ветку в другую - нет.
вот почитайте, что авторитет пишет http://kerneltrap.org/Linux/Git_Management .
например про rebase: "and basically use git as an efficient
patch-queue manager that remembers *your* patches"

Покажите свою, давайте лучше ее обсудим.
Я гит использую как клиент к удалённому svn'у - там всё линейно.
Локально же у меня feature-бранчи, которые вливаются в master, через merge --no-ff, всё чисто и аккуратно.
Мои картинки скучны - слишком прямолинейны, а обсуждать чужие похоже не очень интересно.
Неинтересно обсуждать чужие, тогда когда не ясно как эти картинки получились, и что вообще там творилось - если дадите ссылку на какой-нибудь реальный репозиторий, то я с радостью обсужу его картинки .

* 1 То что merge-commit's это

* 1 То что merge-commit's это вообще плохо? *

Да.

* 2.Или то что merge'ить (через merge-commit) feature-ветки в master это плохо? *

В этом вообще смысла нет (ну то есть для вас похоже есть, если хотите оставить информацию о том где бранч был сделан и куда он смержился)
prompt [featureB]>git push origin HEAD:master

или если какой то шустрик до нас запушил:

prompt [featureB]>git fetch origin
prompt [featureB]>git rebase origin/master
prompt [featureB]>git push origin HEAD:master

А картинка должна была проиллюстрировать то чем эти мерж коммиты плохи. Покажите свою, давайте лучше ее обсудим. Мои картинки скучны - слишком прямолинейны, а обсуждать чужие похоже не очень интересно.

merge тут вообще не нужен.

Что вы хотели показать этой

Что вы хотели показать этой картинкой:

1 То что merge-commit's это вообще плохо?

2.Или то что merge'ить (через merge-commit) feature-ветки в master это плохо?

Для иллюстрации 2. картинка не подходит, так как там ветки вливаются не только в master, но и между собой - что именно там происходило, вы так и не объяснили

Это

Это отсюда:
http://www.viget.com/extend/only-you-can-prevent-git-merge-commits/
Но я подобные картинки видел везде. Если просто мержить, то будет нечно вроде такого.

почему образуются - это

почему образуются - это понятно,
понятно что если делать rebase, и merge с -ff (то есть просто merge) то будет fastforward.
Я конкретно спрашивал про ту картинку - там ветки merge'атся, не только в одну, но и в друг друга - что это за workflow?

Почитай вот этого товарища,

Почитай вот этого товарища, тут еще с картинками, он объясняет почему образуются merge commitы и как их убрать.
http://lostechies.com/joshuaflanagan/2010/09/03/use-gitk-to-understand-g...

То есть если вы мержите _и_ ребейзите, то столько ветвлений не будет, будет прямая. Если мержить без ребейза, будут такие рельсы.

Ну граф истории будет

Ну граф истории будет напоминать вот такой
http://www.viget.com/uploads/image/merge_commits.jpg
если работаешь один или вдвоем. Если людей поболе то конечно и проблем с этим будет поболе :)

Ещё, раз, что именно это за граф? Какоей именно там workflow? это не похоже на то, когда все merge'ат feature барнчи в главную

Ну так в случае с merge, в

Ну так в случае с merge, в обсуждении с Линусом, именно советуется откатить откат, то есть тоже самое.

http://www.kernel.org/pub/software/scm/git/docs/howto/revert-a-faulty-me...
"In such a situation, you would want to first revert the previous revert"

* А вот чтобы было в той

* А вот чтобы было в той ситуции, если бы делали rebase? Точнее что по вашему было бы в варианте с rebase? *

Если я правильно понял вопрос, то с rebase история получается линейная, и как следствие revert работает правильно потому как можно откатить любой патч, а потом откатить откат и все такое.

git merge --squash - но это

git merge --squash - но это опять workaround, так как графа мержа нет.

причём вроде то что я хочу, не вписывается вообще в текущию модель git - как я понял это связанно с хэшированием родительских хэшей.
Реально как-то гадко получается - merge дурацкий, rebase в этом случае вообще workaround, а главное что одна из рекламируемых фич git'а это легковесные локальные ветки, которые как оказываются в стандартных work-flow'ах (когда ветка мержится в публичную ветку) вообще не локальные.

Это, как справедливо написано

Это, как справедливо написано в мануале, bad idea в тому случае если ребэйз делается с коммитами которые уже лежат на сервере. Для локальных коммитов таких проблем нет. Уже два года ребейзим всем маемо, и никаких проблем.
читаем заново моё высказывание "я вот этой ситуации не понял. но если это про rebase в общем репозитории, то это как бы bad idea."
я не говорил, что rebase в локальном repo это bad idea.

А и еще, если откатываешь мерж, то в некоторых случаях можно поиметь кучу проблем, с обычными коммитами такого не будет.
Впрочем напрячься нужно будет всегда

Ну в описанной ситуации с Линусом, там всё ясно. Если revert - это всего лишь reverse commit, то так и должно быть.
А вот чтобы было в той ситуции, если бы делали rebase? Точнее что по вашему было бы в варианте с rebase?

о блин, сейчас поигрался с

о блин, сейчас поигрался с несколькими репозиториями - действительно, push коммитет и смёрженную ветку тоже - rtfm мне.
Интересно, может есть опция, которая будет коммитеть только merge-commit'ы, а не все ветвления.
Но rebase это workaround, а не решение проблемы. нужен dcommit для git'всих репозиториев..

все, объяснили тупому )) не в

все, объяснили тупому )) не в Castom Maps а в папку BirdsEye надо закидвать карту.

Ну вот а советуешь мануал

Ну вот а советуешь мануал читать мне :)
Это все в одной ветке/branch. когда используешь git merge гит создает коммит которые в логе выглядит вот так:

commit a0b46a7c57e37f5dc43373ba9167ad2da32c1ec5
Merge: c2d8046... 73e0e15...
Author: Fred Bloggs
Date: Tue Jun 17 17:30:49 2008 +0100

Merge branch 'master' into new_feature

gitk, и другие визуализаторы истории показывают историю как на той картинке. Без такого графа вообще иногда не понятно что смержили, откуда и зачем. Бранчи тут не причем.
Возможно в git-svn эта информация теряется и все не выглядит так плохо.

http://www.kerrybuckley.org/2008/06/18/avoiding-merge-commits-in-git/

Pages

Subscribe to comments_recent_new