Author Archives: bullgare
Gitlab flow
Github flow для gitlab. Как это выглядит. Есть центральный репозиторий http://gitlab.lan/group/repo_name. Каждый разработчик создаёт себе свой fork, в котором и производится работа (например, http://gitlab.lan/bullgare/repo_name). Результаты работы push-атся ведётся в своём репозитории (для этого нужно, чтобы git remote origin смотрел на gitlab@gitlab.lan:bullgare/repo_name.git). Также нужно добавить основной репозиторий вторым удалённым репозиторием
1 |
git remote add upstream gitlab@gitlab.lan:bullgare/repo_name.git |
Перед началом работы по фиче …
Моя версия Quadtree на javascript
Мне нужно было загружать кучу точек на плоскость и потом быстро узнавать, на какой из этих точек кликнули мышкой. Точек может быть действительно много — до десяти тысяч — поэтому делать для каждой точки свой DOM-элемент слишком накладно. Поэтому нужно было эффективно отслеживать клики мышкой на плоскости и вычислять на лету подходящую точку. Долго возился …
Github Flow
По сравнению с git flow всё проще. Создаётся fork, разработка фичи ведётся в отдельной ветке. Потом создаётся pull request (merge request для gitlab), опционально назначаются ответственные за merge, в процессе обсуждений может продолжаться работа в ветке (изменения будут автоматически добавлены к request). После одобрения ветка мёржится в мастер/главную ветку https://guides.github.com/introduction/flow/index.html
Sass-mixin для media query
1 2 3 4 5 |
@mixin media($query) { @if $query { @media only screen and (#{$query}) { @content; } } } |
Использование:
Скопировать ssh-ключ из-под Windows
Скачать plink — http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html (http://the.earth.li/~sgtatham/putty/latest/x86/plink.exe). Открыть терминал. Перейти в папку C:\Users\имя пользователя\.ssh (там уже должен лежать ssh-ключ). Затем выполнить
1 |
type id_rsa.pub | d:\Down\plink.exe -ssh user@host -pw password "cat >> .ssh/authorized_keys" |
http://serverfault.com/questions/224810/is-there-an-equivalent-to-ssh-copy-id-for-windows https://blog.bullgare.com/2012/08/%d1%87%d1%82%d0%be-%d1%81%d0%b4%d0%b5%d0%bb%d0%b0%d1%82%d1%8c-%d1%87%d1%82%d0%be%d0%b1%d1%8b-%d0%bb%d0%be%d0%b3%d0%b8%d0%bd%d0%b8%d1%82%d1%8c%d1%81%d1%8f-%d0%ba-%d1%83%d0%b4%d0%b0%d0%bb%d1%91%d0%bd/ https://blog.bullgare.com/2013/03/%d0%bf%d1%83%d1%82%d1%8c-%d0%bf%d0%be-%d1%83%d0%bc%d0%be%d0%bb%d1%87%d0%b0%d0%bd%d0%b8%d1%8e-%d0%b4%d0%bb%d1%8f-ssh-%d0%ba%d0%bb%d1%8e%d1%87%d0%b5%d0%b9-%d0%b2-windows/
Внедрение e2e- и unit-тестов в сборку AngularJS-приложения: Protractor, Karma и gulp
Допустим, у нас уже есть сборка проекта на gulp. И нужно добавить в процедуру сборки релиза e2e-тесты на protractor.
Поддержка стилей разными почтовыми программами
https://www.campaignmonitor.com/css/
Кастомизация скролла в 21м веке
Стилизация нативного scrollbar в Chrome. Chrome custom scroll
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
.wrapper { width: 300px; height: 200px; background-color: red; overflow-y: auto; } .element { width: 200px; height: 500px; background-color: green; } ::-webkit-scrollbar { height: 10px; width: 6px; background: #fff; } ::-webkit-scrollbar-thumb { background: #616161; -webkit-border-radius: 1ex; -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.75); } ::-webkit-scrollbar-corner { background: #fff; } |
http://css-tricks.com/examples/WebKitScrollbars/
Настройка nginx для кроссдоменных ajax-запросов
Как разрешить кроссдоменные ajax-запросы в nginx.
1 2 3 4 5 |
location /geoip { add_header Access-Control-Allow-Origin "*"; add_header Access-Control-Allow-Methods "GET"; add_header Access-Control-Allow-Methods "OPTIONS"; } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
upstream GEOIP { server []; } server { listen *:80; server_name []; location /geoip { # CORS Headers if ($request_method = OPTIONS ) { add_header Access-Control-Allow-Methods "GET"; add_header Access-Control-Allow-Origin "*"; return 204; } add_header Access-Control-Allow-Origin "*"; set $args "format=json&language=ru&ip=$remote_addr"; proxy_pass http://GEOIP/?$args; } } |
Webstorm, Ubuntu 14.04, русская раскладка — фикс сочетаний клавиш
https://github.com/zheludkovm/LinuxJavaFixes Скачать репозиторий, положить 2 jar-файла из директории build в нужное место. Затем в файле ~/Applications/WebStorm-138.2001.2328/bin/webstorm64.vmoptions добавить строку
1 |
-javaagent:[path to directory with jar files]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar |