GIT: ignoring changes in tracked files
14 ноября 2013
Рубрика: Git

В работе с гитом бывают случаи, когда файлы необходимо оставить в индексе, но игнорировать любые модификации. Яркий пример - /config/database.conf - данные с подключением к базе данных. Сам файлик крайне желательно оставить с дефолтными настройками (каркасом), но так же нужно менять его, прописав туда реальные данные.

Делается все предельно просто:

git update-index --assume-unchanged <file>

Эта команда оставит файл в индексе и будет игнорировать все последующие модификации.

Для начала отслеживания необходимо выполнить противополождую команду:

git update-index --no-assume-unchanged <file>
Git - патч с файлами, измененные коммитом
23 мая 2013
Рубрика: Git

У меня достаточно часто возникает необходимость передать людям в архиве файлы, которые были изменены в новой версии продукта (в определенном коммите)

Решение в случае работы с гитом очень простое:

git diff --name-status HEAD HEAD^ | awk '{ if ($1 != "D") print $2 }' | xargs git archive -o output.zip HEAD

git diff --name-status HEAD HEAD^ - покажет разницу между последним коммитом (HEAD) и предпоследним (HEAD^). Так же можно указывать хеши нужных коммитов.

 

awk '{ if ($1 != "D") print $2 }' - отсекаем удаленные файлы

xargs git archive -o output.zip HEAD - сохраняем в архив

В результате получим все файлы (новые+измененные) с сохранением структуры проекта

Git - онлайн справочник (online help)

С недавних пор начал разбираться с Git, читал статьи на хабре, просто в инете.

На хабре нашел хорошую статью по основам работы с Git - Git Wizardry.

В итоге захотелось держать все в одном месте в виде мануала.

Взял я исходную статью и скриптиком перегнал создал меню с соответствующими анкорами на странице.

Посмотреть можно по ссылке. Если кто захочет скачать - качайте исходники, там всего 3 файла - меню, контент и индекс с фреймами.

1C. Каталог пользователя занят

Достаточно часто (по крайней мене мне везет) случается, что пользователи не могут войти в 1С-ку (в 7.7).

Сообщение - Каталог пользователя занят.

Случается это от того, что в папке пользователя 1С создается (и, в итоге, не удаляется) файлик 1Cv7.LCK.

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

Описанная ситуация (в моем случае) случалась из-за того, что менеджеру, который логинится на сервер 1С, создается новый сеанс, тогда как на старом все еще остается открытой 1С.

Лечится все достаточно просто, в "Управление компьютером" - "Пользователи", открываем конкретного пользователя, вкладка "Сеансы" - ставим галочку напротив "Разрешить переподключение: только от предыдущего клиента".

В итоге при попытке заново подключится к серверу 1С, менеджеру будет предложено восстановить старую сессию.

Ну и как еще одно решение проблемы - воубивайте сессии пользователей сами (или погрохайте потом файлик 1Cv7.LCK)

DropBox как средство бэкапирования

В своей статье DropBox. Удобный обмен файлами по сети я описывал что такое DropBox и как его можно использовать. Сегодня мы посмотрим его применении для резервного бэкапирования файлов ( в моем случае - это бэкапы 1С-ки).

Вы уже должны! ;) знать, что после установки DropBox он создаст себе папку и будет ее мониторить на предмет изменений. Это нам и нужно. Никаких фтп, никаких левых задач. Просто скопировали архив в папку и все, дальше DropBox сам себе на сервачек будет качать его.

Подробнее...