git config --global merge.tool kdiff3




TradingActivityDemo – Git, GitHub

(NetBeans)

Этап 1

Устанавливаем приложение для контроля версий Git на Windows7/8/10

Настраиваем Git

Создаем локальный репозиторий проекта при помощи Git

 

1. Скачиваем дистрибутив с сайта git-scm.com;

2. Устанавливаем в каталог, находящийся в корне логического диска и не содержащий пробелов в имени;

3. При установке выбираем опцию работы через командную строку ОС;

4. Заходим в «проводнике» в каталог проекта, ПКМ – Git Bash – набираем и выполняем команду git init (в каталоге появится скрытый подкаталог с настройками репозитория). Автодополнение - tab, вставка текста – ctrl+insert (shift+insert);

5. Создаем локального пользователя (для текущего проекта) или глобального (для текущей ОС). Например, глобальный пользователь с именем user1 и email-ом tyaa@ukr.net:

 

git config --global user.name “user1”

git config --global user.email tyaa@ukr.net

 

6. Проверяем результативность изменений конфигурации: открываем файл глобальных настроек.gitconfig, находящийся в каталоге настроек текущего пользователя ОС, а также выполняем команду вывода списка глобальных настроек в консоль:

 

Git config --list

 

7. В каталоге проекта создаем текстовый файл локальных настроек с именем.gitconfig, добавляем в него пути к каталогам и файлам, которые программа контроля версий не будет «видеть». Например, скрываем каталоги настроек среды разработки, настроечные файлы build.xml и каталоги готовых дистрибутивов на любой глубине вложенности:

 

nbproject/*

build/*

build.xml

dist/*

8. В консоли выполняем команду проверки состояния проекта (все «видимые» файлы и каталоги должны быть отмечены, как не поставленные под контроль, а «скрытые» от контроля не должны отображаться вообще):

 

Git status

cd TAServer

git status --untracked-files=all

9. Ставим под контроль всех не «скрытых» от git каталогов и файлов (в консоли мы должны находиться в корне проекта), затем проверяем результат командой git status:

 

Git add.

 

10. Для вывода отдельного файла из-под контроля перед коммитом выполняем команду, показанную в подсказке, затем ненужный файл добавляем в файл игнора:

 

git rm --cached file_name.file_extention

 

11. Выполняем команду коммита с параметрами «добавить новые файлы в индекс» и «коммитить все подконтрольные файлы, находящиеся в индексе», и репозиторий готов (без параметра -m внесение изменений, в данном случае, комментария в коммит, будет предложено сделать в консольном текстовом редакторе vim. Также при помощи изменения настройки core.editor в конфигурации можно установить другой текстовый редактор, имеющийся в ОС):

 

git commit -a -m "init"

 

 

Этап 2

Регистрируем изменения проекта в репозитории

Просматриваем историю репозитория

 

1. Вносим изменение в любой текстовый файл проекта (например, файл каких-либо исходных кодов), находящийся в репозитории, проверяем статус репозитория в консоли, выполняем повторное добавление изменившегося файла в индекс, перейдя в соответствующий каталог в консоли. Делаем коммит с комментарием об изменении. Параметр -a в данном случае во второй команде можно опустить, т.к. команда add выполняет адресное индексирование файла, имя которого указано:

 

git add file_name.file_extention

git commit -a -m "some comment"

 

2. Если не выполнять добавление изменившихся файлов в индекс, при следующих коммитах будет коммититься устаревшая копия файла! Откат файла в репозитории до одного из прошлых состояний (предпоследнего):

 

git checkout -- file_name.file_extention

 

3. Для просмотра логов выполняем команду git log. Выход из просмотра – клавиша q на клавиатуре. Просмотр документации по конкретной команде: git help command_name. В документации можно найти настройки форматирования вывода журанала;

 

 

Этап 3

Создаем ветки репозитория

Объединяем изменения, зарегистрированные в разных ветках

 

1. Отщепляем новую ветку от существующего репозитория и проверяем список веток (параметр -b создает ветку, а команда затем переключает сеанс консоли на эту ветку):

 

git checkout -b my_new_branch

Git branch

 

2. Первая команда без параметра, но с именем ветки переключает на нее, вторая команда с именем ветки создает новую ветку без переключения на нее;

3. Вносим изменение в какой-либо файл. Находясь в консоли на новой ветке, делаем добавление изменившегося файла в индекс и коммит. Добавляем еще одну ветку, проделываем для нее те же операции, только без изменений в текстовом файле. Коммитим на основной ветке «мастер», предварительно внеся в тот же текстовый файл проекта другие изменения, чем были зарегистрированы в первой дополнительной ветке. Получен конфликт изменений в основной и первой дополнительной ветках.

4. Для разрешения конфликта переключаемся в первую дополнительную ветку, все изменения должны быть закоммичены. Скачиваем, устанавливаем и указываем в консоли утилиту разрешения конфликтов:

 

git config --global merge.tool kdiff3

 

5. Если утилита не найдена, нужно выполнить данную команду с явным указанием пути:

 

git config --global mergetool.kdiff3.cmd '"C:\\Program Files (x86)\\KDiff3\\kdiff3" $BASE $LOCAL $REMOTE -o $MERGED'

 

6. Начинаем слияние текущей ветки с основной, получаем ошибку:

 

Git merge master

 

7. Запускаем утилиту разрешения конфликтов, нажимаем «ввод»:

 

Git mergetool

 

8. В графическом окне делаем конфликтные строки одинаковыми и жмем сохранение;

9. В ткущей ветке (первой дополнительной) коммитим;

10. Переходим в «мастер», выполняем слияние с изменениями, произошедшими в дополнительных ветках:

 

git merge my_new_branch

 

Этап 4

Заливаем проект с контролем версий на GitHub и работаем с ним совместно с другими пользователями

 

1. Регистрируемся на сайте GitHub, создаем на нем бесплатный репозиторий (открыт для всех), первоначальную инициализацию не выбираем, т.к. проект у нас уже есть;

2. Читаем список рекомендуемых команд, выполняем подключение к удаленному репозиторию (remote) и заливаем (push) проект с локального репозитория в удаленный. Например, git push origin master;

3. При выполнении этих действий нужно вводить имя и пароль аккаунта. Если используются удаленный репозиторий на рабочем сервере, например, в Интернете, и общий рабочий репозиторий в локальной сети, имя пользователя и пароль создаются при ручной генерации ключей: https://git-scm.com/book/ru/v1/Git-%D0%BD%D0%B0-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B5-%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BE%D1%82%D0%BA%D1%80%D1%8B%D1%82%D0%BE%D0%B3%D0%BE-SSH-%D0%BA%D0%BB%D1%8E%D1%87%D0%B0;

4. Если другой пользователь сделал изменения в удаленном репозитории, нужно обновить с него свой локальный репозиторий, выполнив команду pull;

5. Первоначальное скачивание чужого проекта с удаленного репозитория. Клонирование из локальной сети (адрес_компьютера:имя_проекта):

 

git clone git@ 192.168.0.116:musicsale.com.ua

 

TODO: если используете OS Linux, выполните аналогичные действия под ним. Используйте среду разработки для разрешения конфликтов слияния веток репозитория.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2022-12-31 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: