Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Рекурсивный поиск и замена текста в файлах Linux?

Лучший ответ:
find . -type f -name '*.py' -exec sed -i -r 's/regexp/new_replacement/g' {} \;
Заменит во всех файлах *.py начиная от текущей директории строку regexp на new_replacement. (можно использовать regexp выражения)
Живой пример:find . -type f -name '*.py' -exec sed -i -r 's/^(# Copyright 2008 -) [0-9]{4}/\\1 2015/g' {} \;

Худший ответ:
Когда критично ручное подтверждение каждой замены, есть хороший GUI инструмент: regexxer.sourceforge.net/
деб-пакет есть: sudo aptitude install regexxer
Вопрос: Уровень C# и Unity?

Лучший ответ:
Больше математику нужно знать, чем программирование.

Худший ответ:
Документация Unity предлагает очень простые примеры скриптования, но необязательно ограничиваться только ими.
В свою очередь, в проектах Unity подразумевается свой стиль кодирования, который может подпортить понимание программиста, не очень близко знакомого с C#.
Лучше знать больше, но потом ограничиваться тем, что позволяет Unity; чем ограничивать знания тем, что допускает Unity.
Вопрос: Что делать с угрозами жалоб в Роскомнадзор?

Лучший ответ:
Ну во-первых, сделайте раздел закрытым (только для зарегистрированных).
Во-вторых, запретите просмотр этого раздела с адресов из списка https://github.com/AntiZapret/antizapret (показывайте для этих адресов 404, а не 403 или любую другую ошибку). 
Застраховаться совсем, к сожалению, никак нельзя, кроме как закрыть раздел.

Худший ответ:
Варианты, хм... Посчитать, сколько дохода получает владелец форума от рекламы в разделе "Оффтоп" и принять решение, нужен ли владельцу геморрой мозга за эти деньги.
Вопрос: Связка HTML/CSS + Python?

Лучший ответ:
Какая, к чертям, для начинающего разница фронтэнд-бэкэнд?Мне сейчас главное получить работу,
Вот и займитесь этим. Ни разу не встречал человека, который сидя дома с нуля чему-то научился. Вон, пример, знакомый, юрист, "точно решил стать программистом", уже второй год учит html и сидит на шее то родителей, то девушки.
Сначала погуглите - не ведет ли какая-нибудь веб-студия или компания курсы программирования в вашем городе. Даже в моей деревне такое есть, лично знаю три компании, которые бесплатно с нуля готовы учить - иначе бы у них вообще специалистов не было. PHP? Да, php - говно. Но вам шашечки или ехать?
Если нет - смотрите вакансии - даже в самом захолустье есть вакансии без опыта или прямо с поиском джунов. Плевать какая технология. Программит - это программист, а не java- или js- или шарпо- скриптер Читаете все слова. Учите, проходите туториалы, гоняете себя по вопросам "собеседование *имя основной технологии*". Максимум - неделя-две. С этими знаниями и головой на плечах вас берут. Затем идете работать-учиться. За полгода-год станете достаточно уверенным специалистом.

Худший ответ:
Если учишь питон - ищи специализированные сайты. Например категория питон на хабре или на тпрогер или на https://pythonist.ru/
Вопрос: Не понимаю, как переменные работают в Angular?

Лучший ответ:
Вы не переменные в Ангуляре не понимаете, а области видимости и асинхронность в js.
https://learn.javascript.ru/task/make-army

Худший ответ:
Потому что эта функция асинхронна и к моменту, когда она выполняется, цикл давно прошел, переменная i, соответственно, равна последнему значению
Создайте функцию и передайте туда $scope.geoObjects[i] в цикле, или просто i. Получится замыкание и значение уже не изменится
Вопрос: Чем на сервере пережать видео?

Лучший ответ:
вот в два прохода
битрейт замените на свой
$1 исходный файл
$2 целевой
ffmpeg -y -i "$1" -an -pass 1 -vcodec libx264 -vpre fastfirstpass -b 800K -bt 1600K -threads 4 -s 640x360 $2_360p.mp4
ffmpeg -y -i "$1" -pass 2 -vcodec libx264 -vpre hq -b 800K -bt 1600K -threads 4 -s 640x360 -acodec libmp3lame -ab 96K -ar '44100' $2_360p.mp4

в конце неплохо бы метаданные перенести чем нить вроде yamdi

Худший ответ:
Пример обратного перекодирования, из AVI в MP2 для онлайн-вещания, с увеличением размера:
vlc -I dummy "Kino_Ishodnoe.avi" :sout='#transcode{vcodec=mp2v,vb=4096,acodec=mp2a,ab=192,scale=1,channels=2,deinterlace,audio-sync}:std{access=file, mux=ps,dst='"Kino_Gotovoe.mpg"'}' vlc://quit

Примеры transcode со сменой кодека, разрешения, сжатия, битрейта и т.д.
смотрите тут: wiki.videolan.org/Transcode#Example_script
и тут: habrahabr.ru/post/73944/
Вопрос: Как поставить видео на фон?

Лучший ответ:
Как-то так:<video autoplay poster="test.jpg" id="vidos">
    <source src="test.mp4" type="video/mp4">
</video>#vidos {
    position: fixed; 
    right: 0;
    bottom: 0;
    min-width: 100%; 
    min-height: 100%;
    width: auto; 
    height: auto; 
    z-index: -1;
    background:  url(test.jpg) no-repeat;
    background-size: cover;
}

Худший ответ:
Посмотри ка здесь реализовано www.misfitcreative.com, только задай блоку c видео fixed
Вопрос: Как сделать чтобы блок модального окна внутри выпадающего списка, показывался поверх остальных?

Лучший ответ:
Задать ему в свойствах z-index

Худший ответ:
У меня и без z-index ставит его поверх окна.    codepen.io/anon/pen/Nxjadj
Я еще не понял у вас этот блок виден при наведении или он всегда виден?
Скинте пожалуйста свой css.
Вопрос: Путь от мигающего светодиода до своего личного изобретенного устройства, гаджета/техники?

Лучший ответ:
В профильный институт?

Худший ответ:
Для начала можно посмотреть учебники по физике школьные (про амперы, вольты, сопротивления и конденсаторы, как их соединять). Про микроконтроллеры есть годные курсы на Амперке по Ардуинам - как старт идеально.
Вопрос: Какой язык использовать для парсера динамичных сайтов?

Лучший ответ:
Может Selenium подойдет?
www.seleniumhq.org
habrahabr.ru/post/186496

Худший ответ:
Если я правильно понял вопрос, то вам нужно найти url на который отсылается ajax запрос на сайте (F10 > Network) , что подгружает контент, и на него отправлять такой же post ajax только со своими данными (page=1, page=2 или offset=20, offset=40...)
Вопрос: Зачем в Apple Thunderbolt Display есть Gigabit Ethernet port?

Лучший ответ:
Верно. Он там за тем же, зачем и USB порты и FireWIre порт. Только это не только для Air, для любого макбука. Ведь это логично, что раз вы покупаете дисплей, значит у вас есть макбук, и дисплей будет стоять дома. А раз он стоит дома, то зачем же вам каждый раз перевтыкать все нужные и ненужные провода в ноутбук, если их можно воткнуть в дисплей и подключать всего-лишь один Thunderbolt в ноутбук.

Худший ответ:
Подключать сеть? Видимо это нужно для сцинария использования этого дисплея с каким-нибудь эйром
Вопрос: Проброс порта для айпи камеры на mikrotik 951 как сделать правильно?

Лучший ответ:
add action=dst-nat chain=dstnat dst-port=[внешний порт] in-interface=[внешний интерфейс] protocol=tcp to-addresses=192.168.88.[камеры] to-ports=80
Порты обычно 80 (web), 554 (rtsp), 8008 (mjpeg), зависит от производителя.

Худший ответ:
Спасибо,заработало, только если я из своей сети через вайфай к ней стучусь - то молчит. Если просто из веба под айпи не из сети - то работает. Так должно быть?
Вопрос: Определение центра окружности или эллипса по его точкам

Лучший ответ:
Так в чем же проблема?

Уравнение эллипса известно — Ax2+ Bxy + Cy2 + Dx + Ey = 1.
Если выписать его для каждой точки, рассматривая x и y как известные величины, а A,B,C,D,E — как неизвестные, то получится обычная СЛАУ с пятью неизвестными и от 6 до 8 уравнениями.

Если бы координаты точек были заданы точно, это этого было бы достаточно для точного решения. Поскольку точность ограничена — надо найти больше точек и использовать МНК.

Если вы не знаете, как применять МНК к СЛАУ, то проще всего его запомнить в матричной форме:
есть уравнение вида M t = r
его решение методом МНК — это (t = MT M)-1 MT r
осталось реализовать умножение и обращение матриц.

Осталось определить центр эллипса. Для этого запишем уравнение в виде 
A(x-x0)2 + B(x-x0)(y-y0) + C(y-y0)2 = F
и заметим, что 
D = -(2Ax0 + By0),
E = -(2Cy0 + Bx0),
F — 1 = (Ax02 + Bx0y0 + Cy02)

Из первых двух уравнений получаем центр, про третье — забываем.

Сложнее обстоит дело с погрешностью — точных формул я не помню, да и что считать несколько непонятно. Возьмите 25 точек, сделайте из них от 10 до 1000 случайных выборок по 12 точек, и решите задачу для этих выборок, после чего можно найти дисперсию распределения центров.

Худший ответ:
Ого, приятно, что мою статейку в комментариях вспомнили.
Защищая себя, скажу, что методом МНК ну совсем просто всё делается, поэтому я счёл «Рассуждения есть, кода нет» достаточными.
По ссылке ниже можно скачать образец моего класса примерно годичной давности. Вы уж простите, даже в старой версии уже не совсем МНК :) Для оптимизации скорости я немного забрался вглубь проблемы, так что теперь всё работает быстро. Для работы нужна библиотека Jama. (исп. Jama.matrix, можно прям с ней собрать проект, чтобы остальную часть Jama не таскать).
Тынц.
Вопрос: Prepare statement для like?

Лучший ответ:
Это особенность подготовленных выражений. Должно быть так:prepare...('SELECT * FROM table WHERE field LIKE :like ...');
$bind['like'] = '%' . $myVar . '%';

Худший ответ:
С PostGRE плотно не работал, но по опыту работы с другими СУБД как-то так должно получиться:
field LIKE '%'+:like+'%'
Смысл в том, что переданные в Prepare Statement значения - это переменные в SQL запросе, вот и работайте с ними как с переменными, а не как с константами.
Вопрос: Являются ли новости объектом авторского права?

Лучший ответ:
Нет. 
ГК Статья 1259. Объекты авторских прав
6. Не являются объектами авторских прав:
1) официальные документы государственных органов и органов местного самоуправления муниципальных образований, в том числе законы, другие нормативные акты, судебные решения, иные материалы законодательного, административного и судебного характера, официальные документы международных организаций, а также их официальные переводы;
2) государственные символы и знаки (флаги, гербы, ордена, денежные знаки и тому подобное), а также символы и знаки муниципальных образований;
3) произведения народного творчества (фольклор), не имеющие конкретных авторов;
4) сообщения о событиях и фактах, имеющие исключительно информационный характер (сообщения о новостях дня, программы телепередач, расписания движения транспортных средств и тому подобное).

Худший ответ:
Думаю что нет, но лучше всего указать ссылку на источник.
Вопрос: У кого-нибудь есть опыт привязки отзывов с Яндекс.Маркета на сайт?

Лучший ответ:
Можно быстро привязать отзывы с Яндекс.Маркет к своему сайту при помощи виджетов, через сервис www.commentbook.ru

Худший ответ:
Можете сделать виджет с отзывами с Яндекс Маркета через Reviewlab https://reviewlab.ru
Вопрос: Как ускорить запрос SELECT count?

Лучший ответ:
Единственный способ ощутимо ускорить COUNT, это не использовать COUNT, для определенных задач есть альтернативы, например если COUNT нужен вам для постраничной навигации, то можно выбирать число страниц больше нужного в n раз + 1 и на основании этого делать пагинацию.
Пример:
В таблице 700000 записей, нам нужно вывести десятую страницу с 10 записями с постраничной навигацией: выбираем не 10, а 41 запись (не забываем про офсет), выводим 10, но благодаря тому, что выбралась 31 запись вперед, мы знаем что еще есть как минимум 4 страницы на которые можно отобразить ссылки.

Худший ответ:
попробуйте IN заменить на ANY.
Вопрос: Как почта пришла с admin@admin.adm?

Лучший ответ:
Okey, google, "подмена отправителя email".

Худший ответ:
Если посмотреть инфу как отправляется почта, то станет все ясно.
Клиент подключается к серверу, отправляет письмо через свой как. Сервер пересылает серверу получателя, где указывает от кого. По факту если у вас свой сервер, можно написать что угодно.
Но на самом деле в 99% случаев это не пашет, ибо сервера получателей будут проверять адрес по DNS.
Вопрос: Почему при вызове cap deploy затирается старая информация на сервере?

Лучший ответ:
Потому что каждый раз при деплое Capistrano создает новую директорию, в которую загружается свежий релиз вашего приложения. Соответственно, ваши изображения остаются в старой директории. Вам нужно настроить в файле deploy.rb симлинк с папками, в которых будут храниться изображения, сами эти папки обычно хранятся в директории shared выше по дереву относительно директории, содержащей релизы. Надеюсь, понятно объяснил :)
И судя по тому, что информация в БД у вас затирается, вы используете SQLite3 в качестве базы данных. Локум предоставляет для каждого проекта базу данных на PostgreSQL, MySQL или какую-то еще на выбор, рекомендую перебраться в PostgreSQL. Эта БД - де-факто стандарт для приложений на Rails, хотя иной раз выбор зависит от проекта. А SQLite - это только для этапа, когда разработка на Rails только-только постигается. Раньше переберетесь - проще будет в дальнейшем.

Худший ответ:
Вот пример, как после деплоя создать симлинк с пользовательскими данными в shared директорию//app/config/deploy.rbtask :symlink_shared do
    run "rm -rf  #{current_path}/public/uploads"
    run "ln -nsf #{shared_path}/uploads #{release_path}/public/uploads"
end

after 'deploy:restart', 'symlink_shared'
Вопрос: Как настроить hotspot в уже имеющейся среде?

Лучший ответ:
Да, реально. Сценарий годный, не самый оптимальный, но годный. 
Проблемы будут с теми девайсами которые должны получать инет просто так (без всякой левой хотспотовской авторизации), камеры принтеры и тыды. 
В общем случае всё будет работать так:
1. Для всех устройст микротик становится шлюзом по умолчанию
2. Всю сеть l2 замыкаете на него и пускаете трафик именно через микротик, если у вас все роутеры связаны медью - то микротик в тот же свич, если часть из них репитеры \ ретрансляторы, то тик подключаете к основному, остальные без изменений. 
3. На тике настраиваем Хотспот, тюним его и тыды. 
4. Выделяем группу устройств - даём им интернет. Если Asus поддерживает VLAN и несколько SSID - то лучше для организовать вторую сеть - закрытую с блекджеком и шлю усиленной авторизацией но без hotspot.

Худший ответ:
1) Да
2) Все точки в режим АР перевести, чтоб они были не роутерами.
3) Да, поднять хотспот на любом существующем сервере либо перепрошить роутеры на прошивку с хотспотом.
Вопрос: Как редиректить иностранные СМСки?

Лучший ответ:
Посмотрите zadarma.com, не уверен про UK, но на московский номер принимает и отправляет.
Ну и nexmo.com, правда там не было раньше интерфейса, для разработчиков сервис, но так как мы на хабре, можно его посоветовать.

Худший ответ:
Не принимает на ZADARMA нигде кроме Московских номеров.
Вопрос: FB Like........?

Лучший ответ:
Зайдите вот сюда
developers.facebook.com/tools/debug
и введите адрес вашей страницы
это как даст вам всю информацию о том как вас видит FB 
так и автоматически обновит кеш FB

Худший ответ:
Зайдите вот сюда
developers.facebook.com/tools/debug
и введите адрес вашей страницы
это как даст вам всю информацию о том как вас видит FB 
так и автоматически обновит кеш FB
Вопрос: Возможно ли подключить внешний файл стилей для приложения на PyQt4?

Лучший ответ:
Наконец-то нашел простой и рабочий пример - https://github.com/jangelo/pyqt-helloworld. 
Обычное окно:
То же окно с подключенным внешним файлом стилей:

Худший ответ:
на SO говорят, что красиво нельзя, только через костыль
Вопрос: Можно ли защититься от &quot;чужих глаз&quot; при использовании Skype?

Лучший ответ:
Технический путь один: задавать пароль типа 4?3tIgА_АFFi*YlR60s7Q3Wpd и ни символом меньше!

Как вариант: разбить пароль на три части, одну часть записать и хранить на бумажке, вторую часть на электронном носителе, третью часть запомнить...:)

P.S.
А что у Скайпа нет возможности стереть историю переписки ??

Худший ответ:
Вроде как через сайт скайпа данная фича отключается, вечером могу точнее сказать
Вопрос: Какие менеджеры выполнения PHP-скриптов существуют?

Лучший ответ:
Я думаю в вашем случае будет лучше написать shell-скрипт для управления скриптами, ну и создать расписание в cron для его вызова по времени.
Вместо shell-скрипта можно также написать собственный менеджер на том же PHP ориентируясь на функции exec или system.

Худший ответ:
Нашел интересные варианты:
1. www.rabbitmq.com
https://ru.wikipedia.org/wiki/RabbitMQ
2. gearman.org
habrahabr.ru/post/123451
Вопрос: Как придумывать названия?

Лучший ответ:
Не сильно заморачивайтесь.
Берите пример с Тостера ;)
Главное не название, а контент.

Худший ответ:
Придумайте такое название, чтобы я понял что я могу у вас купить.
Вопрос: Как правильно сверить пароль при авторизации?

Лучший ответ:
Или например Hash::check('secret', $hashedPassword)

Худший ответ:
То, что каждый раз от одинакового пароля хэш получается разным - это фича bcrypt.
Сверить пароль можно функцией password_verify() : www.php.net/manual/en/function.password-verify.php
Вопрос: Как сверстать такой блок (форма трапеции)?

Лучший ответ:
Мне кажется на скриншоте тупо выравнивание по правому краю и отбивка строки.
И дизайн древний.

Худший ответ:
Уж не знаю кто надоумил вас на подобного рода дизайнерское решение, да и к тому же вы хотите сделать его адаптивным ) В плане рисования фигур и обтекания текстом смотрите вот эту статью www.internet-technologies.ru/articles/article_2059.html
Вопрос: Как изучить 1С?

Лучший ответ:
Есть такой продукт: 1C: Версия для обучения программированию. Стоит 600-800р. Это коробка, в которой лежит диск, мануалы в эл. виде и несколько книг. По-моему, стоит начать с него.

Худший ответ:
Я как то задумывался над этим вопросом и решил вот что: 
1. Прочитать документации всякие 
2. Попробывать дома на практике чтонибудь сделать.
3. Найти какую нибудь молодую организацию и договорится с ними «Я вам внедрю систему за бесплатно, но есть риск что что то не выйдет потому что я только учусь». Лучшее обучение на практике, после такой практики вам сразу станет понятно что вам нужно изучить и в какую сторону двигатся дальше.

Может быть стоило бы и записатся на курсы, но у меня они вызывают сомнения. 

И последнее: программистов в мире много бугалтеров тоже много а вот программистов-бугалтеров недостаток. 
Являясь хорошим программистом вы не являетесь хорошим адинэсником ибо там нужно знать кое какие специфичные вещи. 

Советую прочитать книгу «Записки автоматизатора» — там про это все подробро расписанно. 

PS: Я не 1C программист это мои догадки
Вопрос: На западе не заказывают верстку? Или я туплю и не могу найти?

Лучший ответ:
"Но первоначальная задача хотя бы по части верстки перебраться на зарубежные биржи" - это, типа, сперва попробовать верстать, а потом и JS  научиться?) Попробуйте делать все комплексно - и верстку, и программирование.
Ключевики у вас вроде корректные(сам раньше по таким искал, но работаю в более узкой нише). И проектов по ним была уйма. Я бы еще и javascript добавил.
Видимо, проблема в чем-то еще. Например:
- Если пытаетесь найти в выходные(сб,вск), то проектов будет меньше. Для кого-то очевидно, для кого-то нет. Бывают заказчики, работающие по выходным, но процентов 70 - отдыхают.
- Важны время дня и разница в часовых поясах. Представим, что заказчики из США работают с 08:00 до 17:00.
Тогда с восточного побережья деловая активность у людей начнется в 16-17 по мск, а на западном побережье - в 19-20 часов. Плюс, не все будут постить проекты с раннего утра.
- Возможно, у вас как-то неправильно настроены фильтры. Я вообще для поиска работы на этих биржах пользуюсь lancemonitor.com. Уже года полтора.

Худший ответ:
Мой вам совет: создавайте себе сайт, влейте в него денег, и будут у вас заказы!
Вопрос: Как узнать, что этот скрипт делает?

Лучший ответ:
Ваш пароль не такой трудный на самом деле, как вам кажется. Вы его засветили где-то еще или он у вас на почте висит в письме от хостера.
Какой-то дилетант брутфорсит ssh пароли. Повезло еще, что вам попался не самый серьезный кул хацкер, тогда вы бы еще пару лет не узнали, что сервером пользуется кто-то еще.
Поменяйте пароль, запретите логин для рута (жалательно это делать сразу как только устанавливается любой сервер), ребутните сервер и смотрите что пишет `ps aux` и конфиги веб-сервера. Маловероятно, что там что-то останется рабочее.
Но если серьезно подходить к проблеме, то при любых подозрениях на взлом делают реинсталл системы, это самый быстрый и эффективный способ лечения всякой нечести.

Худший ответ:
судя по269  [2014-08-10 14:27:32] git clone https://github.com/vanhauser-thc/thc-hydra.git
  270  [2014-08-10 14:27:43] ./configure
  271  [2014-08-10 14:27:51] make
  272  [2014-08-10 14:28:14] make install
  273  [2014-08-10 14:28:17] hydra
вас используют для перебора паролей как минимум
Вопрос: Что читать на данном этапе обучения программированию?

Лучший ответ:
Попробуйте начать писать что то "для себя". Буквально - чувствуете нехватку какого то софта - попробуйте его написать. Единственное - тут можете столкнуться с проблемами в реализации интерфейсной части. Идеально если ваше "для себя" будет консольным и более "алгоритмичным" чем "юзер-френдли". По крайней мере голод утихнет :-)

Худший ответ:
Прежде чем браться за любой ЯП, нужно понимать как программировать, как это работает изнутри и конечно же алгоритмы. Для этого лучше подходит С без плюсов.
Пишите код только для закрепления каких-то моментов, не нужно торопиться говнокодить свои велосипеды, таких программистов, которые осилили только половину книги, сейчас миллионы по всему миру. Все они говорят, что знают С++ имя опыт в несколько лет, а написать функцию нахождения максимального числа их 3-х не могут.
Вопрос: Как правильно выстроить процесс разработки?

Лучший ответ:
Какие инструменты могут понадобится для реализации такой системы?
Вопрос скорее всего не совсем уместен. Вам могут перечислить инструменты, которые нужны для постройки дома, однако дом вам построить это не поможет. Но, чтобы не быть голословным, вам понадобятся: 
1. Git server (Bitbucket, Gitlab, etc). Если работаете один или проект очень простой, то достаточно будет gitolite.
2. CI server (Bamboo, Jenkins, etc).
3. Любой язык программирования для написания pre-receive/post-receive хуков и задач для CI.Правильно ли я представляю себе этот процесс?
Вне зависимости от того, будете ли вы работать один или в команде, с моей точки зрения процесс выглядит усложненным и надуманным. Я бы начал с простого процесса и усложнял бы его только по мере появления каких-то проблем. Если вы начнете со сложного, то вы сразу создадите себе проблемы. И будете создавать новые, решая старые. 
Как я вижу простой процесс:
1. Возьмите одну ветку, которая будет стабильна, например, master. 
2. Для каждой фичи создавайте отдельную ветку из стабильной. Например, ivan-news-block или ivan-search-bug-fix. Правила нейминга придумать можно любые.
3. Тестируйте код на своей виртуалке. Обычный vagrant + virtualbox. Если у вас добавляется второй разработчик, то он просто берет Vagrantfile и у него на машине появляется виртуалка с готовым окружением для работы. Зачем вам общий dev сервер? 
4. Процессом деплоя управляет или CI сервер, или ansible/puppet, или самописные скрипты. 
5. Когда ветка готова к релизу, то запускайте процесс деплоя на тестовый стенд, где вы можете показать это заказчику или кому-то еще. Там же CI может прогонять тесты.
6. Когда фича аппрувнута заказчиком или ПО задачи, то запускайте процесс деплоя на бой.Как это реализовать?
Вопрос явно требует уточнения. Сейчас ваш вопрос звучит так: "Как нарисовать сову?". 
Но что-то могу порекомендовать:
Начать надо с построения процесса с проделыванием всех действий вручную. Далее постепенно каждую ручную операцию переводить на автоматику. Не стоит сразу пытаться сделать какой-то идеальный механизм.

Худший ответ:
sourcetree в последней версии глючен, в течении последних двух неделю отказались от него полностью.
так и возьмите hg/git flow , будет ветка для продакшена (деплоется на боевой), для последних версий разработки  develop ветка, которая деплоется на test, ну и по ветке на каждую фичу которую каждый разработчик расзрабатывает на своём dev сервере, когда закончил закрывает ветку фичи и она сливается в develop ветку и автоматом разворачивается на test сервере. Когда на тестовом сервере видим, что то вменяемое дев ветка сливается в мастер и мастер деплоется на боевой сервер.
гуглить hg/git flow