Захотілося мені, щоб на сайті відображалався номер ревізії меркуріала, на основі якої зроблений deploy(перенесення скриптів на сервер).

Спочатку думав навісити хук до меркуріала, але вирішив піти легшим шляхом, як завжди. ;))). І переписав мій скрипт для деплою. Отож раніше мій скрипт(deploy.bat) для деплою був наступний: rmdir /S /Q temp mkdir temp cd temp hg clone d:\avcheck ... тут викликаються ще декілька пітоновський скриптів ... результат закидається на сервер Тож щоб дістати номер ревізії додав такі рядки: cd .. hg log --limit 1 > ./deploy/temp/rev.txt cd deploy які дістають опис останньої ревізії і зберігають його в файл deploy/temp/rev.txt

Далі в deploy.bat додав, щоб в кінці запускався пітоновський скрипт, що парсить файл rev.txt, дістає номер ревізії і зберігає його в Джанговський конфіг: import re with open('./temp/rev.txt', 'r') as fr: rev = fr.readline().split(':')[1].strip() if int(rev) < 0: print "error rev" exit with open('./temp/avcheck/avcheck/settings.py', 'r+') as fs: file_origin = fs.read() fs.seek(0) fs.write(file_origin) file_new = re.sub("REVISION_NUMBER = \d*", "REVISION_NUMBER = "+rev, file_origin) fs.write(file_new) Тепер в мене завжди на сайті показується внизу номер ревізії ;)

В мене занадто погана пам'ять, щоб хоч щось запам'ятати, тому стараюся все записувати. І для користування системою контролю версій Mercurial колись створив такий собі файлик. Для старта він не допоможе, але для згадування команд якраз буде в нагоді:

Глобальні налаштування.

Файл - C:\Users\Spirit\.hgrc [ui] username = Roman Khomenko #enable fetch [extensions] fetch =

Створення репозитарію:

$ hg clone https://presidentua@bitbucket.org/jespern/django-piston/ $ hg clone rep_from rep_to $ hg init myproject
Далі...
 
 
 
Роман Хоменко aka PresidentUA
mail/jabber: spirt40@gmail.com