Заметки программиста
Записи с метками Git
Установщик Kohana от ShadowHand
31 марта
Недавно я описывал свои костыли по поводу использования sh и git.
Оказывается у недавно появился намного более продуманный инструмент для автоматической установки фреймворка Kohana.
Kohana Installer
Инструмент командной строки для создания основы kohana приложения из официального репозитория на Github.
Github:
Требования
Shell, Библиотека curl
Для пользователей Windows – cygwin
Установка
1. Склонировать репозиторий kohana-installer
2. Сделать исполняемым файл kohana (chmod +x kohana)
3. Создать символическую сссылку для запуска, например я создал в /usr/local/bin
Пример создания символической ссылки
ln -s kohana /usr/local/bin/kohana
Cоздание каркаса Kohana через git (часть 2)
15 марта
В продолжение темы о помощи sh в в решении насущных проблемах программиста, привожу улучшеный пример инициализации структуры фреймворка kohana и некоторых модулей.
Возможно существует более оригинальное решение проблемы создания нескольких репозиториев с разными ветвями, но я использовал для этого Shell.
Краткий справочник для начинающих использовать Git
13 марта
Краткий справочник для начинающих использовать Git в многопользовательской и не только среде.
Основы работы с удаленным репозиторием
git clone – создание копии (удаленного) репозитория
Для начала работы с центральным репозитарием, следует создать копию оригинального проекта со всей его историей локально.
Пример клонирования через http (возможно использование протоколов ssh:, git:)
git clone http://user@somehost:port/~user/repository/project.git
git pull - получение изменений из центрального репозитория
Команда git pull забирает изменения и проводит слияние с активной веткой.
git pull
git push — внесение изменения в удаленный репозитарий
Отправление своих изменения в удаленную ветку, созданную при клонировании по умолчанию:
git push
Не паникуй с Gitolite
21 января
Я уже писал о выборе git сервера и описал краткую установку Gitolite на linux, в моем случае это был Debian Lenny. Теперь пришло время поговорить о возможных проблемах.
При работе с gitolite возникла ситуация когда я потерял свой SSH ключ к доступу к админскому репозиторию. (Как результат при любых действиях выдавалась примерно такая ошибка (fatal: ‘gitolite-admin’ does not appear to be a git repository)
После попытки редактирования вручную конфигов пользователя git и репозиториев было найдено официальное решение проблемы. Для этого пришлось обновить исходники .
Утилита ~/.gitolite/src/gl-dont-panic позволит устранить проблемы
Git: Работа с submodule
12 августа
При работе с Git важное место занимает работа с модулями (submodules). Хочется сделать небольшую памятку для работы с submodule git.
Для добавления модуля в существующий репозиторий необходимо выполнить команду git submodule add. При этом первым параметром передается ссылка на наш модуль, вторым дирректория, в которой будет находиться модуль.
git submodule add git://github.com/kohana/core.git system
После добавления модулей необходимо произвести инициализацию URL’ов репозиториев в ‘.git/config’
git submodule initОбновление модулей
Для обновления всех подмодулей проекта до последней HEAD версии:
git submodule foreach 'git checkout master && git pull origin master'
Для обновления одного модуля, например system:
cd system git checkout master git pull origin master cd .. git add system git commit -m 'Updated system to latest version'
Для обновления модуля до выбранного коммита необходимо:
cd modules/database git pull origin master git checkout fbfdea919028b951c23c3d99d2bc1f5bbeda0c0b cd ../.. git add database git commit -m 'Updated database module'
При клонировании репозитория, который уже содержит подмодули необходимо выполнить:
git submodule init git submodule update
Этот небольшой мануал является лишь малой частью возможных операций с подмодулями в git. В книгах по git так много всего написано, что вырвать вещи первостепенной важности довольно не легко.
Установка Gitolite
23 июля
Я разобрался с большинством вопросов установки и настройки Git сервера Gitolite, теперь перейду к технической части.

Для установки сервера gitolite создаем отдельного пользователя на сервере, в моем случае это был git. Для работы gitolite требуется версия git > 1.6.2, поэтому скорее всего нужно будет обновиться.
Git Сервер – Gitolite
21 июля
Редмайн был успешно установлен, процесс я описывал здесь. Результат установки представлен на project.chodex.ru
Теперь стал вопрос использования хранилища данных, остановился на git – опыта работы с git намного больше, чем с svn, а про другое вообще молчу. Redmine содержит средства для визуализации git репозиториев, но не для работы с ними. Можно конечно использовать тот же самый и через cron поставить постоянный pull необходимых репозиториев. Этот вариант подошел бы для публичных репозиториев, но дополнительно платить за приватный доступ не хочется, да и зачем если есть собственный сервер?
В качестве Git сервера был выбран , который и был установлен на сервер.
Почитав документацию, я поник головой, ну слишком непонятно как же на самом деле работать с сервером. Куча конфигов, куча возможностей, но нормального описания простейшей работы нет.
Кто-нибудь работал с gitolite? Какие подходы используете вы? Давайте побеседуем на тему использования хранилищ данных в разработке
Плагин Git для NetBeans IDE 6.9
24 июня
Чуть больше недели назад вышел final build.
Из замеченных мной нововведений: поддержка Zend Framework, улучшенная работа с CSS, Javascript и PHPDoc.
Для работы с git в Netbeans я использовал плагин .
После установки новой версии Netbeans, nbgit отказался устанавливаться, выдывая такое сообщение:
Some plugins require plugin Editor Library to be installed.
The plugin Editor Library is requested in version >= 1.29.2.8.2 (release version 1) but only 2.10.1.10.2 (of release version different from 1) was found.
The following plugin is affected: nbgit
На официальном сайте и хранилище code.google.com обновленного плагина не нашлось, да и думаю еще не скоро он там появиться.
Решение было найдено на форуме netbeans: плагин nbgit для Netbeans 6.9.
Не забудьте обновиться до самой последней версии Netbeans, у меня сначала возникали проблемы с зависимостями некоторых плагинов.
UPDATE:
Вышел официальный плагин версии 0.4. Скачать можно
А какими IDE пользуетесь вы и для чего?
Быстрое создание каркаса Kohana через git
11 июня
Kohana использует для контроля версий и для совместной разработки. ()
Для незнакомых с git рекомендую к прочтению (Ru), так же хорошая документация на самом (En).
Ниже представлен пример sh скрипта для быстрого и удобного создания каркаса нового kohana приложения.
git init git submodule add git://github.com/kohana/core.git system git submodule add git://github.com/kohana/database.git modules/database git submodule add git://github.com/kohana/userguide.git modules/userguide git submodule add git://github.com/kohana/image.git modules/image git submodule add git://github.com/kohana/codebench.git modules/codebench git submodule add git://github.com/kohana/auth.git modules/auth git submodule add git://github.com/kohana/pagination.git modules/pagination git submodule add git://github.com/kohana/orm.git modules/orm git submodule init git commit -m 'Added initial submodules' mkdir -p application/classes/controller mkdir -p application/classes/model mkdir -p application/views mkdir -p application/config mkdir -m 0777 -p application/cache mkdir -m 0777 -p application/logs echo '[^.]*' > application/logs/.gitignore echo '[^.]*' > application/cache/.gitignore curl -o .htaccess http://github.com/kohana/kohana/raw/master/example.htaccess curl -o index.php http://github.com/kohana/kohana/raw/master/index.php curl -o application/bootstrap.php http://github.com/kohana/kohana/raw/master/application/bootstrap.php git add index.php git add .htaccess git add application git commit -m 'Added initial directory structure'
Для дальнейшей работы не забудьте отредактировать .htaccess и bootstrap.php.
Установка git на , , .