03
Ах Git. Много слышал об этом прекрасном инструменте, но никогда не приходилось с ним столкнуться. Думал, что если оседлал Subversion, то мануал по гиту перечитывать не прийдется. К счастью пришлось. По Subversion то я мало что читал хД. Документации по Git много. Но я приведу несколько сжатых ознакомительных статей о Git и несколко возможных ошибок и проблем которые могут возникнуть у Вас. Эта статья об основах Git и самых первых операциях над файлами удаленного репозитория с помощью команд clone, pull, add, commit.
1. Устанавливаем Git.
$ apt-get install git-core
2. Мы работаем с удаленным репозиторием. Клонируем его себе. git clone
$ git clone user@server:somefolders/key.git
у меня это выглядело примерно так $ git clone git@test_project.unfuddle.test_project/key.git
key.git – public ключ. Для доступа к хранилищу Git через SSH необходимы public и private ключи.
2.1 Создаем ключи
$ ssh-keygen -t rsa //задаем имя и пароль для ключей
Созданные ключи лежат в каталоге, откуда Вы их создавали. Скорее всего это корневая папка Вашего пользователя. Переносим их в скрытую папку .ssh (Ctrl + H – покажет скрытые папки) . Она должна находиться в корневой папке пользователя. Если ее нет – создаем. Далее копируем public ключ на сервер.
2.2 В данном случае для доступа к хранилищу необходмо зайти от юзера Git или зайти в Users and Groups(Юзеры и Группы) и включить Вашего пользователя в группу Git и задать ему основную группу Git. Для этого заходим в Users and Groups / Advanced settings / Advanced / Main group: git
Вот теперь клонируем…
3. pull
Нечто похожее на Update в Subversion. Если вы не единственный программист, который работает с Вашим репозиторием, и Вы какое-то время потратили на ознакомление, обновим локальный репозиторий. (слияние локальных файлов с репозиторием).
$ git pull user@server:somefolders/key.git
Как правило после клона можно просто $ git pull
Есть еще одна подобная команда fetch. О ней подробнее в следующей части.
4. add и commit
Представьте, что есть временное хранилище данных, которое накапливается перед тем как зафиксироавть ряд изменений, т.е. сделать commit. Нужно проиндексировать ($ git add) файлы в хранилище и потом зафиксировать значения($ git commit). Давайте разберемся для чего это нужно. Допустим, Вы работаете над какой-либо частью (элемент, блок, страница, какая-нибуть операция над чем-либо и т.д.) вашего проекта (сайта) и, чтобы выполнить задачу целиком, нужно добавить и/или исправить несколько файлов или даже один файл. Командой add Вы складываете изменения в коробку по очереди, т.е. изменили что-либо, ага, добавлю, потом еще что-то изменили/добавили, ага, нужно добавить в нашу коробку с изменениями. Когда вы набрали какое-то количество изменений (не важно с чем Вы работали и с каким количеством файлов, git все равно добаляет в коробку Ваши изменения, а не файлы) и хотите запаковать коробку и подписать, что вы там наделали и для чего, то следует выполнить $ git commit -m “Написал куеву кучу ненужного кода“, после чего Ваша подписанная коробка с изменениями отправилась в хранилище Вашего компьютера. Вы поймете как это упрощает рабочий процесс и помагает следить за ходом выполнения проекта. В следующей статье я расскажу Вам как вернуться на определенный этап Ваших изменений.
Пока все, скоро буду дополнять и продолжать статьи на эту тему.
Если Вам статья интересна или в чем-то помогла, пожалуйста оставляйте комментарии.