Базовая работа с репозиторием
Получение исходных кодов:hg clone http://<user>:<pass>@<host>:<port>/<repo>Обновление исходников:
cd <repo>
hg pull
hg update --check
Создание изменений
Добавление нового файла:hg add <filename>Или автоматический поиск новых файлов в текущей директории:
hg add .Удаление файлов (внимание, файлы удаляются и из индекса и физически с диска)
hg remove <filename>Так же, только рекурсивно текущую директорию:
hg remove .Но есть намного более удобная команда, которая сразу выполняет и удаление из индекса и добавление новых файлов:
hg addremoveЗапись сделанных изменений (если не указать сообщение ключом -m то откроется редактор):
hg commit -m 'сообщение об изменениях'Если есть ветка, которую надо принудительно заменить:
hg push
hg push -fСлияние текущих изменений с веткой репозитория:
hg merge
Пример BASH-скрипта
Вот таким образом я обновляю несколько репозиториев:
#!/bin/bash
# Директории с исходниками
dirs="repo1 repo2 trunc"
# Правка для cron
my_path="$(dirname $0)"
cd "$my_path"
# Выполним цикл
for dir in $dirs
do
if [ -e "$dir" ]
then
cd "$dir"
hg pull
hg update --check
cd ..
else
echo "$dir not found"
fi
done
Комментариев нет:
Отправить комментарий