Посты с тэгом системы управления версиями


[Перевод] Конвертирование репозитория Git из табуляций в пробелы

Эта статья о том, что сказано в заголовке.

Я имел обыкновение работать на Yelp. По историческим причинам — на самом деле «это предпочли первоначальные разработчики» — их кодовая база, по большей части на Python, всегда содержала отступы с табуляциями. Это совершенно контрастирует с большей частью огромной экосистемы Python, которая, в основном, использует рекомендацию гайда по стилю стандартной библиотеки о четырех пробелах. Присутствие табуляций периодически вызывало небольшую головную боль и ворчание среди Python-разработчиков, которых сейчас бесчисленное множество, и которые привыкли к пробелам.

В конце 2013 я пожаловал в Yelp с рождественским подарком: я конвертировал табуляции в четыре пробела во всей их первичной кодовой базе. Вряд ли кто-либо еще захочет повторить то же само


Быстрое обновление всех клонированных репозиториев

Не совсем в тему блога, но все же, надеюсь, что кому-то предоставленный ниже скрипт и принцип работы будут полезными.

Итак, работая с любым Django проектом я использую целую тучу разнообразнейших reusable apps. Установка и добавления любого reusable app'а в свой Django-проект проста и не тривиальна: клонирование репозитория, обновление sys.path, добавление appname в INSTALLED_APPS.

Намного интересней становится, когда приходит время пробежаться по всем склонированным локально репозиториям и проверить наличие обновление в них (сейчас и далее актуально только для тех, кто на передовой). Согласитесь, имея в наличии под 100 svn репозиториев c googlecode, да 20-30 git репозиториев с github'а, а также по паре тройке разнообразных bzr с hg репозиториев, их обновление посредством ручного набора поочередно:

$ svn up /path/to/django
$ cd /path/to/werkezeug && hg fetch
$ cd /path/to/django-debug-toolbar &&