Ежедневный Git

Уже были статьи про основы гита (0, 1, 2), были и статьи про внутреннее устройство репозитория. Сегодня поговорим, как простому смертному работать с гитом на автопилоте и не морочить себе голову.

Во-первых, шорткаты (в порядке убывания популярности):
alias gst=’git-status’
alias ga=’git-add’
alias gc=’git-commit -m’
alias gp=’git pull && git push’
alias gull=’git pull’
alias gush=’git push’
alias gb=’git-branch’
alias gco=’git-checkout’
alias gd=’git-diff’
Читать далее

Функции в Perl

В Perl заложено огромное количество возможностей, которые, на первый взгляд, выглядят лишними, а в неопытных руках могут вообще приводить к появлению багов. Доходит до того, что многие программисты, регулярно пишущие на Perl, даже не подозревают о полном функционале этого языка! Причина этого, как нам кажется, заключается в низком качестве и сомнительном содержании литературы для быстрого старта в области программирования на Perl. Это не касается только книг с Ламой, Альпакой и Верблюдом («Learning Perl», «Intermediate Perl» и «Programming Perl») — мы настоятельно рекомендуем их прочитать.

Читать далее

Удачная модель ветвления для Git

Удачная модель ветвления для Git

Перевод статьи Vincent Driessen: A successful Git branching model

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

Читать далее

Тестирование программ Perl для начинающих. Test:: Simple

Test::Simple — это базовый, очень простой модуль, который используется для написания тестов.

Модуль дает возможность использовать для тестирования всего одну функцию — ok(). Если возможностей данной функции недостаточно, рекомендуется использовать Test::More. Тесты, написанные с помощью Test::Simple полностью совместимы с Test::More.
Читать далее

Test::More для начинающих

Руководство Test::More

Руководство написано с использованием публикации Test::More. By Michael G Schwern. Copyright 2001-2002, 2004-2006 и является ее частичным переводом. Все примеры созданы автором специально для данного руководства.

Модуль Test::More поставляется со стандартным дистрибутивом Perl начиная с версии 5.8. Модуль для более ранней версии можно взять в CPAN. Модуль работает со всеми версиями Perl, начиная с версии 5.6.

Test::More — это полноценный фреймворк (framework) для написания тестовых скриптов. Имеет множество специализированных функций.

Читать далее

Логирование чего угодно в Perl

Для логирования сообщений Перл предлагает несколько готовых решений. Все они, как водится, размещены на CPAN’е. По запросу «log» можно найти кучу модулей на все случаи жизни.

Однако, среди всех этих модулей есть один особенный, называется он Log::Any.
Читать далее

Конечный автомат на bash

Думаю все из нас, кто учился на ИТ-специальностях, в университете изучали конечные автоматы. Для тех, кто не в курсе, это абстрактный автомат способный находиться в конечном количестве состояний, переход из одного состояния в другое происходит при выполнение некоторых условий. Штука интересная, но не совсем понятно когда и как это можно применить для решения реальных задач. О том, как я пришел к решению возникшей задачи на основе конечного автомата, а также о том, как реализовал его на bash, я бы и хотел рассказать. А в качестве бонуса опишу как сохранять его состояние для возможности восстановить работу с прерванной точки. Читать далее