Праздничное.

День Австралии.

Оказывается, празничный салют, на который жители нашей деревни сбегаются потолкаться локтями к заливу, превосходно видно из окна моего кабинета на втором этаже. Точнее, было бы превосходно видно, если бы над всей округой не сидело облако, моросящее таким оченним дождиком. Облака этого, кстати, на радаре не видно.

В Сиднее жить с видом на салют подороже будет, однако.

Авторам Дилберта сегодня подвезли травы.

Могут же, когда захотят (или когда вставит?)

Еще одна причина, почему shelves в TFS лучше не пользоваться.

Я уже как-то писал, что “изобретатель” shelves в TFS – по всей видимости человек, одаренный особыми, неподвластными нам, простым смертным, качествам. По сути наличие в системе контроля версий “возможности” временно сохранить что-о  не в репозитории, а в каком-то странном четвертом измерении противоречит самой идее системы контроля версий. Какой такой идее, спросите Вы? Да очень простой – изменил код – коммить изменения. Если коммитить нельзя (кто сказал, что нельзя? Плюнь ему в рожу!), все равно коммить. Займи, но выпей, то есть, создай свой бранч, но коммить!

Отступления от этого правила, впрочем, обычно ни к чему плохому не приводят. Однако, вы видели хоть один программный проект, который протекал бы как обычно? Нюанс, как говорится в анекдоте.

Зарисовка с натуры – продукт ушел в печать, код заморожен. Релиз уже завтра (или позавчера), и тут тестеры находят баг. Или бажище. Или Баг Шредингера, который проявляется только в 50% случаев, если его искать специально. Как бы то ни было, баг есть. Исправить его – тоже “есть”. А вот теперь тот самый нюанс – коммитить изменения в основное дерево низзя!  Особенно если проект большой и тяжелый, решение о том, как и в каком виде подавать багфикс, может приниматься на самом верху – то ли хотфикс выпустить, то ли сервис-пак готовить, то ли забить и ждать новой версии. Пока политки играют в свои игры, программисты у себя в подвале решили изменения в shelve положить, дабы собрать-протестировать-провести code review. Сказано – сделано. А тут, не прошло и полгода, большие боссы постановили – сервис-паку быть!

Недолго думая, сделали бранч. И… обломались очень жестко. TFS позволяет делать unshelve’ код только в ту же ветку, откуда ему сделали shelve. И никак иначе. С SVN все проще, чем два байта переслать – svn copy, svn switch и следующий коммит будет уже в новую ветку. TFS же, к счастью, предлагает возможность сделать unshelve в другую ветку. Если установлены TFS power toys (как? У Вас еще не  установлены?), без которых в TFS 2005 даже банальнейшего tree difference нет, то можно из командной строки сделать tfpt unshelve /merge. К несчастью, это не всегда работает – в моем случае попытка завершалась маловразумительным сообщением вроде “Cannot determine workspace”.

Решать проблему пришлось дедовским методом – доставать beyond compare и тупо сравнивать каталоги на диске. Кстати, если кто рискнет повторить сей трюк – сделать зарание Check-out всего дерева в той ветке, куда собираемся коммитить – очень, очень хорошая идея.

Очень, очень полезный гаджет

ViewSonic тоже не выдержал и решил влезть в посудную лавку торговцев так называемыми нетбуками.

Название нотебяки не оставляет никаких шансов – компьютер с именем VieBook просто необходим в хозяйстве!

Еще ссылко.

Нед Келли. Автопортрет.

Случайно нашли сегодня.

Ned Kelly auto portrait, Wolombi

Вообще в провинциальном Новом Южном Уэльсе, похоже, очень, очень интересно.

Ну вот и мы прошли крещение

После почти трех лет в Австралии встретили хантсмена. У себя дома, разумеется.

Было весело.

Узнал страшное

У России есть своя сборная по крикету.

Я фшоке.

Буду оригинален!

Всех читателей, ЖЖ-друзей, rss-подписчиков и просто проходивших мимо, с Новым Годом!

До компутера дополз только сейчас, но Новый Год мы встретили с вот таким видом

New Year eve on Cahill Expressway

Вид с Cahill Expressway однозначно стоил того, чтобы выиграть билет и отстоять очередь!

9 visitors online now
9 guests, 0 members
Max visitors today: 10 at 01:11 am MST
This month: 13 at 02-02-2012 08:06 am MST
This year: 29 at 01-23-2012 02:50 am MST
All time: 45 at 02-23-2011 09:11 am MST