3 - да, для этого есть webhook.js для git . Как его создать - в гугле куча мануалов. Работает он, кажется, через ssh, то есть надо сделать себе ssh-ключ для git . Опять же, мануалов много по этой теме.
2 - Переменные окружения. Допустим, перед запуском проекта в консоли напишите: export NODE_ENV=development
В шаблоне/в коде создайте переменную, которая будет отвечать за ссылки в зависимости от значения NODE_ENV .
var api_url = process.env.NODE_ENV === 'development' ? 'тут локальный адрес' : 'тут боевой адрес';
И всё, осталось подставить эту переменную в ссылку.
1 - webhook.js помогает и в этом.