Новая версия github:gist

    Команда Github продолжает радовать своими обновлениями, и на этот раз они приглашают нас попробовать полностью обновленный github:gist.

    Для тех, кто не был знаком с этим сервисом ранее — Gist предназначен для обмена кусочками кода (и не только кода) между людьми. В основе Gist лежит система контроля версий git, что делает возможным коллективную работу над материалом, поддержку форков и версионности.

    Gist успел стать незаменимым инструментом в арсенале Open Source сообщества. Например, таким простым образом распространяется перформанс-патч для руби, упомянутый недавно на хабре.

    Что нового?


    По сути, новое все. Код сервиса был написан с чистого листа, с использованием более качественных библиотек и официального стайлгайда. Изменился интерфейс, он стал удобнее и целостнее, и теперь шагает в ногу с функционалом самого гитхаба.

    В своем блоге, разработчики перечислили самые важные нововведения.

    Discover Gists


    Стало проще бродить, по гистам, изучать их и искать необходимые. Приятно, что из выдачи вывалились дубликаты, а сама поисковая система переняла удобство своего большого брата, которое, впрочем и у самого гитхаба все еще переживает различные трансформации. Но, как справедливо было замечено, на дворе 21 век, а к пагинатору еще не прикрутили подгрузку результатов аяксом.
    image

    Редактор Ace


    Теперь Gist использует Ace. Выбор так же навеян недавними изменениями у большого брата. Ace — это очень приятный, встраиваемый в браузер Open Source редактор кода. Его используют такие компании как Firefox, Codecademy и Cloud9 IDE. Реализована поддержка drag'n'drop.

    Я бы не отказался использовать его на хабре, кстати.
    image

    История гиста


    Процесс просмотра истории отдельно взятого гиста стал простым и понятным. Есть нормальный diff, полная история изменений, список форков (хотя он и был раньше, но все же подвергся редизайну).
    image

    Форки


    За форками гиста стало гораздо проще следить. Теперь можно найти популярные и активные форки, заглянуть в них, на люд посмотреть, себя показать.


    А дальше?


    На этом список нововведений не заканчивается, но это все, что можно понять на первый взгляд, руководствуясь лишь официальным постом в блоге. Команда радуется обновлению и призывает делать остальные открытия уже самостоятельно. Если Вы активно пользуетесь этим прекрасным сервисом, и заметили еще что-нибудь — пишите в комменты, я с удовольствием дополню пост Вашими мыслями.

    Добро пожаловать в новый Gist!

    Similar posts

    Ads
    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More

    Comments 31

      +2
      Что-то какая-то беда с авторизацией в Gist после обновления. На github нормально авторизуюсь, а в Gist не могу.
        –2
        Гитхабу и другим хостингам кода не хватает, как я считаю, более продвинутого анализа кода.
        По-моему, было бы просто замечательно переходить по Ctrl или F12 на определение того или иного метода, свойства, и т.д., описанных в другом файле, как в Visual Studio.

        А еще круче — это API по исходному коду. Чтобы можно было прямо вставлять на stackoverflow и другие сервисы куски кода из github. Ну и также естественно прямо по Ctrl + Click или F12 переходить на их определения. Т.е. получится тесная интеграция Q&A сайтов, форумов с сервисами хостинга кода. Мне кажется в этом направлении будут развиваться постепенно данные сервисы.
          0
          Ну лично у меня никогда небыло надобности встроить кусок кода(который возможно изменится) из репозитория.
          Если нужно показать код прямо в репозитории, можно отправить ссылку на конкретнуый файл, и на нужную строку кода.
          Если надо встроить кусок кода — для этого и есть Gist.
            0
            Репозиторий на то и репозиторий, что в нем данный кусок кода никогда не изменится. Отвечая на вопрос на SO, хочется пойти на github, найти то, что нужно, — и сказать копи-паст.
              0
              Не правда. Иногда бывают случаю, когда история меняется.
                –2
                ЛОЛШТО?

                Система контроля версий с необратимыми изменениями?
                  0
                  Не системой, конечно, а пользователем.
                  git filter-branch, git rebase и т.д.

                  Соответственно при смене истории меняются хеш-суммы всех коммитов, которых затронуло изменение.
                    0
                    И что?

                    Вы вообще читали комментарий, на который я отвечал? Не нужно пытаться мне доказать, что существуют системы контроля версий, в которых нельзя сослаться на кусок кода от определенной даты.
                    Файл «А», Дата «Б», Бранч «В», Строки «Г-Д» — однозначно задает кусок кода, который вы никакими ребейзами изменить не сможете. Именно такую ссылку и предлагается генерировать API, чтобы проще было вставлять в gist.

                      0
                      Читал.

                      Файл «А», Дата «Б», Бранч «В», Строки «Г-Д» — однозначно задает кусок кода

                      Я как раз говорю, что историю изменить можно. Так что не однозначно.
                        0
                        Мы оба говорим про сценарий push⇒rebase⇒push? Если да, то каждый push будет аккуратно запротоколирован головным гитом (гитхабом в нашем случае), и второй push можно будет откатить.
                        Если нет — то понятно, что коммит в гите значит не больше, чем ":w" в виме ;-)
                          0
                          Я говорю о специальном случае, например удаление случайно запротоколированного секретного файла из всех коммитов, или удаление определенно коммита из истории.

                          Все это можно выполнить используя стандартную возможность изменения истории git filter-branch.

                          Конечно эти случаи очень специфичны, но я хотел указать на то, что история может меняться.
                            –1
                            Типа, пришел PJ Hyett, воткнул клавиатуру в слот с вашим репозиторием и зафильтровал все к дедам? Вы (к счастью) не можете вот так взять и поменять хистори в чужом репозитории, вы туда только пуш можете сделать в лучшем случае. А гитхаб для вас — чужой апстрим.

                            Тогда уж проще обсудить вариант удаления проекта с гитхаба.
                              +1
                              git push -f для слабаков? Ну, само собой, рассово неверный подход, но он имеет место быть.
                                0
                                Ой.

                                Спасибо, вы мне открыли глаза (не сказать, что это сильно полезно, про --force флаги в 99% случаев лучше совсем не знать). Я, грешным делом, был уверен, что внутри себя апстрим сохранит итерацию «меня заставили все поменять с этого на это». Но, поверхностно глядя на дельты, приходится убедиться: вы правы. Трет, гад, не поперхнувшись.

                                Не знаете, случайно, а меркуриалы — тоже так себя ведут? Это же кошмар же. Учитывая, что, насколько я понимаю, невозможно разделить права на push и push -f.

                                  +1
                                  Это может работать так: внутри команды все договариваются форсануть и слить форсанутую ветку себе, а затем хранить молчание по поводу произошедшего. И никогда никому не признаваться в том, что --force имел место быть.

                                  Но да, в 99% случаев лучше притворяться, что такого ключа не существует. Особенно, когда хочется пушнуть без указания конкретной ветки и в конфиге содержится провал, вроде git config push.default matching.
                                    0
                                    Когда и как это бывает, я понимаю :-)

                                    Я не понимаю, почему ошибка раздающего права́ может привести к потере репозитория. Можно же было что-то наподобие «зашифровать „особенным“ ключом и не показывать вплоть до особого распоряжения» сделать.
                                    Так нет. Я не смог отыскать (в исходном коде, насколько могу судить, не предусмотрено), как я могу на своем апстриме сказать «пусть все пушат, но полную историю мне при случае отдай».

                                    Причем, я был настолько уверен в том, что оно — так (исходя исключительно из здравого смысла), что комментируя начало ветки даже проверять не полез.
            0
            На gistflow как-то реализована вставка кода с гистов — так что такое API уже есть, я полагаю.
              0
              В API то функционал такой есть, а вот в интерфейсе не реализовано еще.
              Я вообще пользуюсь плагином для Sublime Text 2. Он создает gist из выделенного текста.
            0
            На гитхабе вход выполнен, а на гист захожу — там я не залогинен. Жму войти — вываливается «OAuth failure»… сколько ни пытался — все так зайти и не могу…
              0
              Еще через 90 дней перестанет действовать DownloadAPI и Загрузка файлов. Ну архивами можно будет качать, но не будет секции Downloads, куда загружали файлы с компьютера. Вернее этот функционал уже убрали, но загруженные ранее файлы будут храниться в течение 90 дней. В дальнейшем рекомендуется использовать что-нить типа Amazon s3.
              А еще вот недавно ссылка на настройки репозитория называлась Admin а сейчас Settings )
                –1
                Возможности переопределить тип файла как не было, так и нет. Лучше б реальные проблемы решали вместо того, чтоб менюшки перерисовывать.
                  0
                  git clone https://gist.github.com/4262511.git
                  cd 4262511/
                  mv stuff.rb stuff.cpp
                  git commit -am 'Change file extension'
                  git push
                  

                  gist.github.com/4262511/revisions

                  Все правильно сделали.
                    +1
                    Видимо, шеллскриптов вы никогда не писали. Если что-то не нужно лично вам, это еще не значит, что это не нужно никому.
                      0
                      Может быть я неправильно Вас понял?
                  +4
                  Это Уолтер Уайт на последней картинке? =)
                    0
                    Да :) хочу футболку с этим октокотом
                    0
                    Что-то в новом убраны фичи, которые были _мне_ полезны… Ну вот.
                      0
                      Какие?
                        0
                        Скриншотов не осталось… Расстояние между элементами было меньше — справа в колонке отображалось больше моих gist'ов, чем сейчас вверху.
                        Список ревизий отображался сразу.

                        А теперь приходится кликать, кликать, кликать…
                      –2
                      Например, таким простым образом распространяется перформанс-патч для руби
                      А что, его автору было настолько влом, что отдельного репозитория этот патч не заслужил?
                        0
                        Давно хочется выделение и комментирование диапазона строк. paste.in.ua/7816/#2:3 — как пример.

                        Only users with full accounts can post comments. Log in, please.