Работа с git в Eclipse(EGit)

Материал из BiTel WiKi

(Различия между версиями)
Перейти к: навигация, поиск
(Новая страница: «== Создание репозитария и подключение к проекту == Нужен пакет git-core. 0. Установить egit в eclipse , …»)
 
(2 промежуточные версии не показаны)
Строка 31: Строка 31:
</source>
</source>
-
5. Проделываем 5-ый пункт для каждого из проектов.
+
7. Проделываем 5-ый пункт для каждого из проектов.
 +
 
 +
8. Не забываем зайти в конфиг .git/config и поставить там rebase = true для всех веток( в том числе и для master).
 +
 
 +
== Что и как заливать ==
 +
# Исходные коды.
 +
# Скрипты сборки.
 +
# Jar файлы библиотек в каталоге lib проекта.
 +
# При необходимости, возможно в каталоге src добавить jar файлы с исходными кодами библиотек, пути указывать через Source Attachment - Workspace.
 +
# .classpath. Библиотеки должны быть добавлены в свойствах проекта как Add JARs, в этом случае пути относительны к проекту. JRE должны быть названы в Windows-Preferences согласованным образом, например jdk6, jdk7.
 +
# Файл .gitignore, в нём необходимо исключить его самого и различные файлы, возникающие при сборке.
 +
# Файл .project заливать не надо.
== Заливка изменений ==
== Заливка изменений ==
После разработки изменения в локальной ветке, чтобы внести её в основную одним каммитом можно применить следующий метод:
После разработки изменения в локальной ветке, чтобы внести её в основную одним каммитом можно применить следующий метод:
-
1. Пусть изменение разработано в ветке feature, а внести его нужно в ветку target.
+
# Пусть изменение разработано в ветке feature, а внести его нужно в ветку target.
-
2. Перейти в ветку target, сделать merge на неё ветки feature.
+
# Перейти в ветку target, сделать merge на неё ветки feature.
-
3. Сделать Reset Mixed ветки target в предыдущее состояние. При этом в ней возникнут все изменения, появившиеся после слияния.
+
# Сделать Reset Mixed ветки target в предыдущее состояние. При этом в ней возникнут все изменения, появившиеся после слияния.
-
4. Сделать каммит ветки target с изменениями.
+
# Сделать каммит ветки target с изменениями.
-
5. Ветка feature останется просто сбоку, в дальнейшем её необходимо удалить.
+
# Ветка feature останется просто сбоку, в дальнейшем её необходимо удалить.
Вообще в Git есть команда merge squash для подобной операции, но в плагине она пока не поддержана.
Вообще в Git есть команда merge squash для подобной операции, но в плагине она пока не поддержана.

Текущая версия на 08:10, 7 апреля 2014

Создание репозитария и подключение к проекту

Нужен пакет git-core. 0. Установить egit в eclipse , если не стоит . Install new software из " http://download.eclipse.org/egit/updates" . Поставить все, что предлагается

1. Ставим пакеты git git-core

2. В preferenses->Team->views->git убираем галочку relative dates.

3. В preferenses->Team->views->git->synchronize убираем галочку "Always run fetch... ".. Путает иначе, всегда вызыввает fetch. потому что используем pull всегда, а не fetch ..Это удобнее и нагляднее.. Чтобы это работало нормально лезем в конфиг .git/config и ставим там rebase = true для всех нужных веток.

4. Для транка, перейти в каталог проектов :

git clone ssh://git@git/~git/bgbilling.git <имя проекта транк>

5. В eclipse создаем java-проект с таким же именем( <имя проекта транк> ), в team делаем share project , там выбираем git, потом ставим галочку(use or create...) и со всем соглашаемся .

Если нужно создавать несколько проектов с разных веток одного репозитария, то понадобится утилита

sudo chmod 777 /usr/share/doc/git/contrib/workdir/git-new-workdir

При использовании этой утилиты проекты используют фактически один локальный GIT репозитарий и должны находиться рядом. Пример создания проектов для веток 5.1 и 5.2:

6. Перейти в каталог проектов:

/usr/share/doc/git/contrib/workdir/git-new-workdir <имя проекта транк> <имя проекта 5.1> 5.1  
/usr/share/doc/git/contrib/workdir/git-new-workdir <имя проекта транк> <имя проекта 5.2> 5.2

7. Проделываем 5-ый пункт для каждого из проектов.

8. Не забываем зайти в конфиг .git/config и поставить там rebase = true для всех веток( в том числе и для master).

Что и как заливать

  1. Исходные коды.
  2. Скрипты сборки.
  3. Jar файлы библиотек в каталоге lib проекта.
  4. При необходимости, возможно в каталоге src добавить jar файлы с исходными кодами библиотек, пути указывать через Source Attachment - Workspace.
  5. .classpath. Библиотеки должны быть добавлены в свойствах проекта как Add JARs, в этом случае пути относительны к проекту. JRE должны быть названы в Windows-Preferences согласованным образом, например jdk6, jdk7.
  6. Файл .gitignore, в нём необходимо исключить его самого и различные файлы, возникающие при сборке.
  7. Файл .project заливать не надо.

Заливка изменений

После разработки изменения в локальной ветке, чтобы внести её в основную одним каммитом можно применить следующий метод:

  1. Пусть изменение разработано в ветке feature, а внести его нужно в ветку target.
  2. Перейти в ветку target, сделать merge на неё ветки feature.
  3. Сделать Reset Mixed ветки target в предыдущее состояние. При этом в ней возникнут все изменения, появившиеся после слияния.
  4. Сделать каммит ветки target с изменениями.
  5. Ветка feature останется просто сбоку, в дальнейшем её необходимо удалить.

Вообще в Git есть команда merge squash для подобной операции, но в плагине она пока не поддержана.

Личные инструменты