4 февраля 2015 г.

Практика работы с Git в Eclipse (Часть 1)

И так у нас есть наш клонированные проект Test

G00001

Изменим строчку в файле strings.xml на Hello Git! и сохраним изменения нажав на иконку дискеты. Но такое сохранение не сохраняет изменения в репозитарий Git. Чтобы изменения сохранились в локальном репозитарии Git нужно дать команду Commit changes.

G00002

Обязательно вводим комментарий к коммиту и жмем Commit, чтобы сохранить изменения в локальном репозитарии.

G00003

После этого изменения будут зафиксированы в локальном репозитарии. Это можно увидеть в истории commit ов

G00004

Теперь можем посмотреть изменения которые были сделаны в данном коммите

G00005

Как видим, хотя мы изменили только один файл strings.xml в коммите присутствует еще несколько файлов. Это произошло потому, что Eclipse после каждого сохранения файла компилирует проект, что позволяет сразу находить ошибки в проекте, но ведет к увеличению расхода энергии процессора (это важно понимать и знать если работаете на ноутбуке на батарее). То есть после каждого раза когда вы что-то просто сохраняете в проекте происходит его компиляция.

Можно сравнить с предыдущей версией файла

G00006

В результате увидим

G00007

Теперь загрузим эти изменения на сервер GitHub для этого дадим команду Push

G00008

G00009

G00010

Нам сообщают что было загружено на GitHub

Теперь сходим на GitHub и посмотрим что там у нас теперь

G00011

На странице проекта на GitHub видим что у нас было 2 коммита, комент к последнему коммиту и его хэш код.

Если кликнуть по строке Изменили строку strings.xml на Hello Git! то увидим подробно какие были сделаны изменения

G00012

Сделаем еще какое-нибудь изменение в коде Активности, например просто добавим комментарий

G00013

И кроме того, нет ни какой необходимости загружать каждый раз на GitHub да и в локальное хранилище файлы .apk и .dex, попробуем исключить их из коммитов

G00014

И делаем commit

G00015

В окне истории видим наш новый коммит

G00016

Загрузим это все на GitHub

G00017

И посмотрим что теперь у нас на GitHub

G00018

И посмотрим конкретные изменения в этом коммите

G00019

И можно увидеть историю всех изменений то есть всех наших коммитов

G00020

G00021

Теперь попробуем сделать один трюк с локальным хранилищем Git в котором лежат наши проекты.

Зная что Git все свои настройки хранит в каталоге .git можно легко перемещать сам каталог с репозитарием Git куда нам надо.

Мне не нравится что в пути к нашему репозитарию Git два раза повторяется TestEclipse, то есть существует один не нужны подкаталог.

G00022

Попробуем это поправить. Выходим из Eclipse (на всякий случай) и архивируем последний каталог в пути TestEclipse где у нас и лежат файлы проекта

G00023

Затем запускаем снова Eclipse и в перспективе Git удаляем наш репозитарий. Мы собственно вообще ни чем не рискуем. Во первых у нас есть копия на GitHub и во вторых копия в архиве rar.

G00025

В принципе все удалилось, но все таки последняя папочка TestEclipse осталась и в ней один файлик .project, но это можно удалить и руками.

В рабочем пространстве Eclipse наши проекты так же были удалены.

Теперь разворачиваем наш сохраненный архив таким образом

G00026

То есть из пути мы исключили одну лишнюю папку TestEclipse.

Далее идем в перспективу Git и выбираем добавить существующий локальный репозитарий Git

G00027

G00028

И вуууааааля! Вот он наш родненький репозитарий, но уже по другому более короткому пути

G00029

Теперь только осталось добавить наши проекты в рабочее пространство

G00030

G00031

G00032

и вот они наши проекты в рабочем пространстве

G00033

Со всей историей изменений

G00034

В принципе использовать Git можно только локально и не публиковать свои проекты на Github. Однако если вы хотите облагодетельствовать мир своим кодом, а так же иметь надежное резервное хранилище, то можно использовать Github или подобные ему репозитарии Git в интернет.

Ну и чтобы проверить что все работает запустим наш проект

G00035

Все работает!

1 комментарий:

  1. в целом информация полезная где то до строк про "короткий" адрес... либо у меня более новая версия где Уже нет этой проблемы, либо в себе жизнь усложняете.

    ОтветитьУдалить