минусплюс +3
25.01.2016 23:56 Обновлено: 14.06.2022 13:30
Заливаю утилиту «Стаж» на github или первый опыт работы с git

В прошлом году попросили меня в отделе кадров поставить программу для рассчёта стажа сотрудников.
Гугление и установка различных программ, а так же предложения всяких онлайн калькуляторов было отвергнуто. Одна программа не подходила по одной причине, другая по другой. Если честно, причины я уже не помню. В итоге, подумав, что утилита не особо сложная вызвался просто её написать. Сейчас как раз немного её подкорректировал. И пришло мне в голову, что я давно хотел попробовать github.

Выложить эту утилитку — идеальная проба возможностей git и заодно постараюсь правильно оформить GPL. Для этого я зарегистрировался на гитхабе, залез на сайт gnu.org, посмотрел как правильно оформлять GPL.
Тут утверждается, что надо использовать GPLv3. Ну кто я такой чтобы спорить с сайтом gnu 🙂
В общем, теперь я счастливый владелец репозитория. И моя утилитка в исходниках на Лазарусе доступна по этому адресу: https://github.com/temaps/staj
Имеет смысл осветить пару моментов использования команды git. Если честно, не всё сразу получилось. Но команда выдаёт понятные подсказки, и, если им следовать, то никаких проблем.
Сначала я создал папку git. Зашёл в эту папку и там выполнил:

Появилась папка staj. Зашёл в эту папку и скопировал в неё исходники.
Далее нужно сделать git add файлы исходников.
Например, для файлов staj.lpi и staj.lpr можно использовать звёздочку:

Ну и

Далее ошибка:

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


UPD
Подоспел фикс мегакорявых русских букв 🙂
Нужно всего лишь в файле ~/.bash_profile дописать строчки:


Пишем, сохраняем, выходим.

Это ещё не всё. Теперь это надо push на сайт:

Команда выдала кучу нерусских надписей, которые я, каюсь, читать не стал. Главное, что меня спросили логин и пароль, я их ввёл и всё запушилось на сайт.

Для обновления локальных файлов с гитхаба используется команда:

Ещё небольшое дополнение по откатам коммитов. На пару коммитов назад:

Или на конкретный коммит по хэшу:

Потом залить на github:

После этого на гитхабе тоже будет откачено до нужного коммита.

Ну и чтобы два раза не вставать пару слов про diff.
Сравнить предыдущий с текущим:

ну и по аналогии с вышеописанным, можно использовать HEAD~2 и хэш