Что же, добро пожаловать, хош келигиз, барух аба!

Ответ на вопрос — «зачем мне это хотеть?» в обсуждении этой статьи.

Оговорюсь сразу — это вводный курс молодого бойца, не имеющего никакого понятия ни о гите ни о гитхабе. Это неправильный курс, единcтвенная задача которого — преодолеть порог вхождения и дать тот минимальный набор знаний, необходимых для того, что бы затем более опытные и правильные товарищи могли наставлять на путь истинный. Если же вы git-сихан, то не проходите мимо, дайте наставлений в комментах юным падаванам.

Что делаем? Если не зарегистрировались еще — регистрируемся: https://github.com
Авторизуемся, находим в правом верхнем углу такую картинку: .
Нажимаем на крестик, выбираем New repository.
Видим такую картинку:


Ничего страшного, заполняем. В repository name — краткое название репы на английском (может и на других языках можно, не проверял).
Description — описание репы, я сюда пишу собственно название статьи. Ставим галочку на Initialize this repository with a README, это говорит гитхабу о том, что в репу надо добавить README.md, который выполняет функции index.html для репы, то есть отображается для посетителя репозитория, если он явно не указал, какой файл хочет посмотреть. Почему md? Потому что markdown, подробности, как подсказывает spmbt, здесь:
help.github.com/articles/markdown-basics
help.github.com/articles/github-flavored-markdown
help.github.com/articles/writing-on-github

Ну что, жмем на большую зеленую кнопку create repository, получаем вот такой экран:



Внизу мы видим содержимое README.md, а сразу над ним — ссылку на этот файл. Жмем на ссылку и попадаем в экран редактирования файла:



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

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

), и вообще устраивать сложную иерархию. Это имеет смысл только для циклов статей или как то иначе связанных документов. Я предпочитаю для каждой статьи делать отдельную репу. Читатель, заинтересовавшийся статьей, может форкнуть репу, может отметить звездочкой и все такое. Если в репе много статей, то копируя репу, читатель получит все, что в ней есть, в том числе и то, что его не интересует. То же самое касается и подписчиков — подписавшись на репу из за одной статьи, подписчик будет получать уведомления по всем изменениям всех документов репозитория.

Ок, теперь у нас есть несколько статей (читай репозиториев), как бы нам их собрать в кучу (сделать личный хабик)? Как выяснилось (спасибо гитхаб-юзеру aol-nnov), гитхаб предоставляет простой способ хостить свои пожитки.

Что же. Англоязычновладеющие могут ознакомиться с оригиналом, я же опишу вкратце. Есть особый репозиторий, который автоматически хостится гитхабом как сайт. Для этого достаточно репозиторий назвать ВАШ_ЛОГИН.github.io, создать в нем index.html и закоммитить. После этого он (index.html) становится доступен по адресу ВАШ_ЛОГИН.github.io:



Но помним — тут уже верстка в html, не markdown. Можно ссылаться на другие документы этого же репозитория ссылками типа /путь к документу. Можно ссылаться на документы других своих репозиториев ссылками типа httрs://USER_NAME.github.io/REPO_NAME/путь к документу, но тут есть один нюанс — документ с другой репы публикуется только в том случае, если он есть в ветке gh-pages. Если такого документа в этой ветке нет или же нет самой ветки — выдаст 404. Что такое ветки — ниже будет ссылка на развитие кругозора, а пока же создадим такую ветку, не понимая глубины и широты происходящего, так же, как мы смотрим телевизор, не понимая механизма дифракции электронов на решетке или причин, по которым свободный электрон не поглощает фотон, в отличие от электрона на орбите. Все эти досадные помехи реальности не мешают нам наслаждаться очередной серией Симпсонов.

Ok, что делаем? Создадим ветку gh-pages в той репе, ссылки на документы из которой мы хотим разместить на своем публичном хабе.
То есть, к примеру, у нас есть репа test, и мы хотим что бы some_page.html из этой репы выводился у нас в user_name.github.io.
Идем в репу тест и находим вот эту кнопочку: .
Жмем на нее и вводим в поле ввода gh-pages:

Жмем enter, все! Ветка gh-pages создана! Теперь на все файлы репы можно ссылаться, формат ссылки я указывал выше.

Собственно все! Мы научились создавать документ, редактировать и публиковать его. За бортом остались форки, пулл-реквесты и мерджи, но для понимания этих моментов уже необходимо знать основы гита. А тут уже — обещанная ссылка: git book (без паники, на русском). Поймете основы гита — поймете основы гитхаба, ведь гитхаб — это гит с веб-обвесом и хорошо сдобренный community-building плюшками.

Хорошего всем дня! А, да, и напоследок блиц-опрос.
целесообразность публикаций на гитхабе

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.

Проголосовало 32 человека. Воздержалось 16 человек.

Комментарии ()


  1. SirEdvin
    20.07.2015 02:06
    +1

    Простите, а как же CMS, которые специально уже интегрировали с Github Pages? Например, Jekyll.


    1. gonzazoid
      20.07.2015 02:09

      да нормально наверно себя чувствуют, а в чем вопрос? Статья — пособие для самых маленьких, как поселиться на гитхабе.


    1. progchip666
      20.07.2015 08:29

      Вот про это как раз было бы интересно почитать! Но наверно уже в следующей статье, нельзя объять необъятное. За один раз во всяком случае.


  1. progchip666
    20.07.2015 08:29

    Получилось хорошее пособие для начинающих, но цикл конечно нужно продолжать.
    В чём преимущества для выкладывания своих проектов конечно понятно. Ведь вы получаете все возможности системы управления данными и полный контроль над ними. Вернее полное управление контролем, потому что часть данных можно сделать публичными или ограниченно публичными.
    В чём его преимущество, как площадки для блогосферы например, и есть ли они для меня пока не совсем очевидны. В комментах к моей статье я читал что существует большое количество программных оболочек, которые упрощают знакомство и работу с ресурсом для неподготовленного пользователя, не привыкшего к интерфейсу командной строки. Хорошо бы какой то обзор сделать подобного ПО.
    Хотелось также посмотреть на примеры реализации блогосферы на Гит, если они имеются.
    Как бесплатное хранилище информации он хорош, а насколько хорош для её систематезации и удобного представления именно статей?
    Не думаю что Гит является альтернативой Хабру, но точно может стать хорошим дополнением. Вместо того, чтобы создавать собственный сайт, возможно сегодня проще использовать Гит, где можно не только информацию о себе хранить, но и свои проекты и создавать под них профильные комьюнити.
    Лично мне эта площадка больше всего интересна именно за свои возможности формирования комьюнити, тоесть в качестве дополнения к Хабру. В качестве альтернативы — сомневаюсь… Прежде чем дорасти до таких масштабов нужно пройти очень большой путь.
    Кстати, вы не забыли в статье указать ссылку на свои статьи на Гите? Хотелось бы посмотреть что получилось после переноса.
    Лично я, работаю с Mercurial и использую оболочку «TortoiseHg». Очень удобная штука, но крайне слабо документированная, как почти всё бесплатное ПО. Вроде бы есть её аналог и под GIT. Репозиторий размещаю на bitbucket. Очень удобно для совместной работы над проектом, но совершенно не понимаю как это можно использовать для создания блогосферы.