IPB

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Git
Поделиться
ИВК
сообщение 3.5.2015, 13:24
Сообщение #1


Профессионал
*******

Группа: Глоб. Модератор
Сообщений: 9988
Регистрация: 22.6.2009
Вставить ник
Цитата
Из: Онега
Пользователь №: 1352
Страна: Россия
Город: Не указан
Пол: Муж.



Репутация: 30


Тема про git вообще и про его использование в сообществе ALT Linux в частности. Открыта она в связи вот с этим предложением. Первый вопрос: если ничего толком про git не знаешь, то что почитать, чтобы войти в курс дела?


--------------------
Не пью, не курю, не смотрю телевизор, не пользуюсь Windows
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Дмитрий Ханжин
сообщение 3.5.2015, 16:52
Сообщение #2


Странник
**

Группа: Пользователь
Сообщений: 40
Регистрация: 4.4.2015
Вставить ник
Цитата
Пользователь №: 2795
Страна: Россия
Город: Нижний Новгород
Пол: Муж.



Репутация: 3


Про git вообще
https://git-scm.com/book/ru/v1

Применительно к Alt
http://www.altlinux.org/Git

Я, конечно, не велик спец, но, если что, помогу.
И на нашем Вики много документации.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
kostyalamer
сообщение 3.5.2015, 18:59
Сообщение #3


Профессионал
*******

Группа: Пользователь
Сообщений: 4384
Регистрация: 17.9.2009
Вставить ник
Цитата
Пользователь №: 1617
Страна: Россия
Город: Санкт-Петербург
Пол: Муж.



Репутация: 20


Перетащил в важные темы, пользоваться git-ом не обещаю , но почитаю об этом с удовольствием smile.gif
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Michael Shigorin
сообщение 4.5.2015, 10:19
Сообщение #4


Специалист
****

Группа: Пользователь
Сообщений: 128
Регистрация: 21.10.2011
Вставить ник
Цитата
Пользователь №: 2177
Страна: Украина
Город: Москва
Пол: Муж.



Репутация: 5


Цитата(Дмитрий Ханжин @ 3.5.2015, 15:52) *
Применительно к Alt
http://www.altlinux.org/Git

Не только применительно к альту -- на этой страничке отличная секция ссылок именно на такие случаи. Почитать стоит "everydy git with 20 commands or so", а если не спеша и фундаментально -- Pro Git (есть и русский перевод, и epub).

И если что -- спрашивай :)


--------------------
--
Michael Shigorin | ALT Linux Team | OpenNET | ANNA-News Agency
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
ИВК
сообщение 4.5.2015, 20:48
Сообщение #5


Профессионал
*******

Группа: Глоб. Модератор
Сообщений: 9988
Регистрация: 22.6.2009
Вставить ник
Цитата
Из: Онега
Пользователь №: 1352
Страна: Россия
Город: Не указан
Пол: Муж.



Репутация: 30


Почитал более-менее (в основном первые главы "Pro Git"). Это всё очень интересно. Но не могу вот так сразу без очевидной причины сменить привычную среду (в которой и сейчас активно работаю) на иную - потому что переход требует какого-то времени, а с ним проблемы. Вот сделаю git-репозиторий для Навигатора... дальше что будем делать? Это к Дмитрию вопрос, видимо.


--------------------
Не пью, не курю, не смотрю телевизор, не пользуюсь Windows
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Drool
сообщение 5.5.2015, 1:00
Сообщение #6


Профессионал
*******

Группа: Пользователь
Сообщений: 1764
Регистрация: 28.7.2010
Вставить ник
Цитата
Из: Берислав, Херсонщина
Пользователь №: 1879
Страна: Украина
Город: Не указан
Пол: Муж.



Репутация: 9


Еще в 2012-м выложил эту книгу у себя. Обновил на вторую редакцию.

Сообщение отредактировал Drool - 5.5.2015, 1:11


--------------------

Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Дмитрий Ханжин
сообщение 5.5.2015, 2:55
Сообщение #7


Странник
**

Группа: Пользователь
Сообщений: 40
Регистрация: 4.4.2015
Вставить ник
Цитата
Пользователь №: 2795
Страна: Россия
Город: Нижний Новгород
Пол: Муж.



Репутация: 3


Цитата(IVK @ 4.5.2015, 19:48) *
Почитал более-менее (в основном первые главы "Pro Git"). Это всё очень интересно. Но не могу вот так сразу без очевидной причины сменить привычную среду (в которой и сейчас активно работаю) на иную - потому что переход требует какого-то времени, а с ним проблемы. Вот сделаю git-репозиторий для Навигатора... дальше что будем делать? Это к Дмитрию вопрос, видимо.


Ээээ... Очевидных причин, очевидно, две: удобство для себя- видно историю изменений, и для коллег-
удобство импорта-экспорта кода. И еще множество других-прочих.
В Альте, кмк и везде, инструменты для работы с гитом уже настолько отполированы, бери и пользуйся.
mkdir someproject.git ; cd someproject.git ; git init-db ; gear-srpmimport ../someproject.rpm
Всего делов-то. И опубликовать.
Простейший гит-репо, кмк, проблем вооще не имеет, одни только удобства.
И как прикажете собирать тот же spacefm, если исходник у него в гите? Или icewm?

Мне для сборки хватает git, gitk, gear и нескольких однострочников для запуска в настроенной среде.
Вот ещё бы стандартизовать эти настройки сборочной среды. Но об этом потом.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Michael Shigorin
сообщение 5.5.2015, 12:19
Сообщение #8


Специалист
****

Группа: Пользователь
Сообщений: 128
Регистрация: 21.10.2011
Вставить ник
Цитата
Пользователь №: 2177
Страна: Украина
Город: Москва
Пол: Муж.



Репутация: 5


Цитата(IVK @ 4.5.2015, 19:48) *
Но не могу вот так сразу без очевидной причины сменить привычную среду

Гляньте everyday git, там буквально школьная методичка по объёму -- и попробуйте начинать с m-p-d, который уже в гите:
Код
git clone git://git.altlinux.org/people/boyarsh/packages/mkimage-profiles-desktop.git
git checkout p7

потом распакуйте свои наработки туда же, чтоб перекрыли, и
Код
git status
git diff

если в статусе фигурируют новые файлы -- их надо git add (или git add . для всего текущего каталога), а затем
Код
git commit -a -m 'my changes as of today'

и можно посмотреть git log --decorate, git log -p, можно найти, кто последний трогал каждую строчку файла (git blame файл)... в общем, вдруг появляется масса полезнейшего инструментария для работы с историей изменений.

Например, когда что-то никак не получается доделать до точки, git diff -- это палочка-выручалочка: "что я там вчера оставил перед сном?".

Коммиты лучше делать небольшими, посвящёнными одному законченному изменению -- при необходимости последовательность таковых можно относительно небольшими усилиями переработать при помощи git rebase -i, но это уже малость нетривиальные темы (но очень удобно -- сперва работаешь над кодом, затем наработанное раскладываешь по полочкам, внятно комментируя, что зачем было сделано так).


--------------------
--
Michael Shigorin | ALT Linux Team | OpenNET | ANNA-News Agency
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
ИВК
сообщение 5.5.2015, 15:21
Сообщение #9


Профессионал
*******

Группа: Глоб. Модератор
Сообщений: 9988
Регистрация: 22.6.2009
Вставить ник
Цитата
Из: Онега
Пользователь №: 1352
Страна: Россия
Город: Не указан
Пол: Муж.



Репутация: 30


Через несколько дней сделаю новую версию Навигатора, в которой будет переключение между m-p и m-p-d и возможность собирать в m-p, для начала, хоть какой-то из уже имеющихся в нём дистрибутивов. Вот этой версией и можно заняться в git'е. А прямо сейчас мне просто нечего предложить для совместной разработки. Старую "mpd-only" версию дорабатывать бессмысленно, она всё равно скоро будет удалена. А версия "mpd+mp" не готова, я там даже не все пути к файлам успел привести в соответствие с изменившейся структурой каталогов. А производить этот переход с "mpd-only" на первичный "mpd+mp" уже в git'е... ну не буду усложнять, доделаю эту операцию так, как начал.


--------------------
Не пью, не курю, не смотрю телевизор, не пользуюсь Windows
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Michael Shigorin
сообщение 6.5.2015, 14:57
Сообщение #10


Специалист
****

Группа: Пользователь
Сообщений: 128
Регистрация: 21.10.2011
Вставить ник
Цитата
Пользователь №: 2177
Страна: Украина
Город: Москва
Пол: Муж.



Репутация: 5


Цитата(IVK @ 5.5.2015, 14:21) *
Через несколько дней сделаю новую версию Навигатора

Так я не про него, а про ту копию m-p-d, в которую вносите свои правки :) (кстати, с m-p это ещё актуальней будет, т.к. стараюсь собирать изменения, сделанные другими людьми, в основную ветку)


--------------------
--
Michael Shigorin | ALT Linux Team | OpenNET | ANNA-News Agency
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
ИВК
сообщение 6.5.2015, 17:31
Сообщение #11


Профессионал
*******

Группа: Глоб. Модератор
Сообщений: 9988
Регистрация: 22.6.2009
Вставить ник
Цитата
Из: Онега
Пользователь №: 1352
Страна: Россия
Город: Не указан
Пол: Муж.



Репутация: 30


Лучше я начну знакомство с Git'ом с того, что затолкну в него Навигатор. Кстати, для сборки в нём какого-нибудь (я взял для пробы tde.iso) из уже имеющихся в m-p дистрибутивов потребовалась лишь одна небольшая правка конфига в m-p. И я вообще ориентируюсь на то, что в итоге надо бы наладить работу Навигатора с, так сказать, чистым m-p, а не с его прилагаемым к программе хакнутым вариантом. Это с вашей помощью, конечно. Думаю, надо сразу иметь в виду такую перспективу. Сейчас ещё разберусь с побочными эффектами, вызванными прикручиванием m-p к Навигатору, и, видимо, завтра выложу его версию с хотя бы базовой поддержкой m-p. Вот ей место в Git'е. Только лучше укажите в точности, что именно мне делать, куда и как этот новоявленный git-репозиторий выкладывать. С учётом того, что в его составе хакнутый m-p-d и чуть-чуть изменённый m-p. И я же не знаю определённо, что потом с этим будете делать в Git'е вы и Дмитрий, и вообще обстановка для меня в этом плане неопределённая, так что лучше уж предложите оптимальный вариант, его и реализуем.


--------------------
Не пью, не курю, не смотрю телевизор, не пользуюсь Windows
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Michael Shigorin
сообщение 7.5.2015, 15:15
Сообщение #12


Специалист
****

Группа: Пользователь
Сообщений: 128
Регистрация: 21.10.2011
Вставить ник
Цитата
Пользователь №: 2177
Страна: Украина
Город: Москва
Пол: Муж.



Репутация: 5


Цитата(IVK @ 6.5.2015, 16:31) *
Кстати, для сборки в нём какого-нибудь (я взял для пробы tde.iso) из уже имеющихся в m-p дистрибутивов потребовалась лишь одна небольшая правка конфига в m-p.

А какая правка, можете патч показать или прислать почтой?

Цитата(IVK @ 6.5.2015, 16:31) *
И я вообще ориентируюсь на то, что в итоге надо бы наладить работу Навигатора с, так сказать, чистым m-p, а не с его прилагаемым к программе хакнутым вариантом.

И это правильно.

Цитата(IVK @ 6.5.2015, 16:31) *
Только лучше укажите в точности, что именно мне делать, куда и как этот новоявленный git-репозиторий выкладывать. С учётом того, что в его составе хакнутый m-p-d и чуть-чуть изменённый m-p. И я же не знаю определённо, что потом с этим будете делать в Git'е вы и Дмитрий, и вообще обстановка для меня в этом плане неопределённая, так что лучше уж предложите оптимальный вариант, его и реализуем.

m-p лучше выбросить из состава как только получится, а текущий забирать из git://git.altlinux.org/people/mike/packages/mkimage-profiles.git -- как вариант, можно дальше брать (git checkout) ветку 1.0, а не master, там изменений почти нет, а для сборки на t7 и, возможно, даже на t6 (под который есть отдельная одноименная ветка) целей довольно много.

Вообще для включения сторонних и автономно развивающихся проектов в гите тоже есть механизм (submodules), но сама такая практика обычно является порочной -- особенно если приходится включаемый проект серьёзно изменять, порождая таким образом форк.

Как выкладывать -- например, опубликовать на том же github по штатной документации.

Меня пока более всего интересуют патчи для m-p, чтобы или принять и Вам их не надо было у себя держать, или объяснить, почему так делать не надо, и рассказать, как было задумано.


--------------------
--
Michael Shigorin | ALT Linux Team | OpenNET | ANNA-News Agency
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
ИВК
сообщение 7.5.2015, 16:31
Сообщение #13


Профессионал
*******

Группа: Глоб. Модератор
Сообщений: 9988
Регистрация: 22.6.2009
Вставить ник
Цитата
Из: Онега
Пользователь №: 1352
Страна: Россия
Город: Не указан
Пол: Муж.



Репутация: 30


Цитата(Michael Shigorin @ 7.5.2015, 14:15) *
А какая правка, можете патч показать или прислать почтой?

Открыл отдельную тему "Mkimage-Profiles и DistroNavigator"
А с Git'ом попробую сейчас разобраться.


--------------------
Не пью, не курю, не смотрю телевизор, не пользуюсь Windows
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
ИВК
сообщение 8.5.2015, 20:16
Сообщение #14


Профессионал
*******

Группа: Глоб. Модератор
Сообщений: 9988
Регистрация: 22.6.2009
Вставить ник
Цитата
Из: Онега
Пользователь №: 1352
Страна: Россия
Город: Не указан
Пол: Муж.



Репутация: 30


Что-то в этом роде? Забросил туда весь каталог с исходниками ДистроНавигатора.


--------------------
Не пью, не курю, не смотрю телевизор, не пользуюсь Windows
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Дмитрий Ханжин
сообщение 10.5.2015, 23:17
Сообщение #15


Странник
**

Группа: Пользователь
Сообщений: 40
Регистрация: 4.4.2015
Вставить ник
Цитата
Пользователь №: 2795
Страна: Россия
Город: Нижний Новгород
Пол: Муж.



Репутация: 3


Цитата(IVK @ 8.5.2015, 19:16) *
Что-то в этом роде? Забросил туда весь каталог с исходниками ДистроНавигатора.


Ну да, примерно так.

Не могу удержаться :-) , я недавно, помните, собирал udevil.
Это я бы назвал лабораторкой для себя, поскольку собирал с нуля, только с документацией
и некоторым опытом. Это тут
https://github.com/jinn-alt/udevil/tree/sisyphus
Бранч master - оригинальный исходник, sisyphus - бранч, из которого собран готовый пакет,
бранч alt-specific - там патч для сборки в Альт, затрудняюсь назвать иначе.
Надеюсь, поможет в освоении гита, только лучше смотреть не через веб, а локально, но это
ИМХО, через gitk мне нагляднее, чем вебом.

Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
ИВК
сообщение 11.5.2015, 18:17
Сообщение #16


Профессионал
*******

Группа: Глоб. Модератор
Сообщений: 9988
Регистрация: 22.6.2009
Вставить ник
Цитата
Из: Онега
Пользователь №: 1352
Страна: Россия
Город: Не указан
Пол: Муж.



Репутация: 30


Попрактиковался немного с Git'ом, после чего снёс пробный репозиторий (у себя и на сервере) и создал его заново (содержимое - исходники ДистроНавигатора на сегодняшний день), сделал первый пробный коммит. Вроде всё правильно. Пожалуй, так и буду продолжать smile.gif


--------------------
Не пью, не курю, не смотрю телевизор, не пользуюсь Windows
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Дмитрий Ханжин
сообщение 13.5.2015, 1:41
Сообщение #17


Странник
**

Группа: Пользователь
Сообщений: 40
Регистрация: 4.4.2015
Вставить ник
Цитата
Пользователь №: 2795
Страна: Россия
Город: Нижний Новгород
Пол: Муж.



Репутация: 3


Цитата(IVK @ 11.5.2015, 17:17) *
Пожалуй, так и буду продолжать smile.gif

Замечательно!

Решил показать свои скрипты для сборки и сборочную среду, вдруг будет польза.
Из gear-репозитория собираю скриптом (все 64- потому-что под 64 бита)
Прикрепленный файл  gearhsht764.txt ( 115 байт ) Кол-во скачиваний: 4

Для сравнения- произвольный RPM собираю скриптом
Прикрепленный файл  hsht764.txt ( 101 байт ) Кол-во скачиваний: 3


Сборочная среда на tmpfs, своп сделан на 10Гб, из них 8 для сборки.
Смонтировано это не в /tmp, а в /tmp/.private, см
Прикрепленный файл  fstab.txt ( 745 байт ) Кол-во скачиваний: 2

Дерево формируется автоматом при старте icewm
Прикрепленный файл  buildpref.txt ( 585 байт ) Кол-во скачиваний: 3

создаются симлинки на реальные каталоги.

Работаю в кэширующем режиме, для этого кэш apt'а утащен на раздел /home,
но за пределы домашних каталогов, расставлены соответствующие права доступа
и создан симлинк для системного кэша, чтоб и систему можно было обновлять.
apt.conf для этого
Прикрепленный файл  apt.conf.t7.x86_64.txt ( 443 байт ) Кол-во скачиваний: 4

и sources.list
Прикрепленный файл  sources.list.t7.x86_64.txt ( 647 байт ) Кол-во скачиваний: 3

Среда получилась достаточно универсальной и для меня удобной,
с этим-же apt.conf можно собрать и регулярку на t7, а с таким-же для Сизифа-
соответственно на Сизифе, и пакеты для него собираются в дереве рядом.

Критика приветствуется. smile.gif
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
ИВК
сообщение 13.5.2015, 9:41
Сообщение #18


Профессионал
*******

Группа: Глоб. Модератор
Сообщений: 9988
Регистрация: 22.6.2009
Вставить ник
Цитата
Из: Онега
Пользователь №: 1352
Страна: Россия
Город: Не указан
Пол: Муж.



Репутация: 30


У меня пока всё не так автоматизировано. И притом пользуюсь локальными зеркалами репозиториев, так что схема получается проще. А "на раздел /home, но за пределы домашних каталогов" - это любопытное решение; в подобных случаях использую разделы, с ОС вовсе не связанные; но это детали, к Git отношения не имеющие.


--------------------
Не пью, не курю, не смотрю телевизор, не пользуюсь Windows
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Balbes
сообщение 21.5.2015, 12:42
Сообщение #19


Мастер
******

Группа: Пользователь
Сообщений: 794
Регистрация: 9.7.2010
Вставить ник
Цитата
Пользователь №: 1865
Страна: Россия
Город: Зарайск/Московской
Пол: Муж.



Репутация: 6


Цитата(Дмитрий Ханжин @ 5.5.2015, 2:55) *
Ээээ... Очевидных причин, очевидно, две: удобство для себя- видно историю изменений, и для коллег-
удобство импорта-экспорта кода. И еще множество других-прочих.
В Альте, кмк и везде, инструменты для работы с гитом уже настолько отполированы, бери и пользуйся.
mkdir someproject.git ; cd someproject.git ; git init-db ; gear-srpmimport ../someproject.rpm
Всего делов-то. И опубликовать.
Простейший гит-репо, кмк, проблем вооще не имеет, одни только удобства.
И как прикажете собирать тот же spacefm, если исходник у него в гите? Или icewm?

Мне для сборки хватает git, gitk, gear и нескольких однострочников для запуска в настроенной среде.
Вот ещё бы стандартизовать эти настройки сборочной среды. Но об этом потом.


gear-srpmimport ../someproject.SRC.rpm


а то я как лох обрадовался, что можно из простых rpm-ок сделать исходники, а оказалось, что без исходников не получиться .... blush.gif

Сообщение отредактировал Balbes - 21.5.2015, 12:43
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
( Гостей: 2 )
Пользователей: 0

 



RSS Текстовая версия Сейчас: 29.3.2024, 3:55