среда, 7 декабря 2011 г.

git+ssh через https прокси

В продолжение предидущей темы о работе git из-за прокси.

Собственно, предидущая тема рассчитана на взятие и обновления исходного кода из репозитория (git clone/pull). Отдачу дельты она не подразумевает (git push).
Однако в жизни разработчика наступает момент, когда необходимо что-либо поместить на сервер.

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


И тут на помощь нам приходит corkscrew. На Fedora она есть в репозиториях.

  1. Устанавливаем corkscrew (yum install corkscrew)
  2. Добавляем в $HOME/.ssh/config следующие строчки
Host github.com
    User git
    HostName ssh.github.com
    Port 443
    ProxyCommand corkscrew 127.0.0.1 9090 %h %p


У меня используется cntlm прокси, поэтому адрес 127.0.0.1 и порт 9090. Если у кого не так, нужно заменить эти значения на те, которые используются в вашей сети.

Теперь git push должен работать из-за прокси.
Если нужен другой сервер с ssh (не github.com), его также нужно добавить в $HOME/.ssh/config


.

среда, 6 октября 2010 г.

Цитата от Стива (перепост)

Не имеет смысла нанимать толковых людей, а затем указывать, что им делать. Мы нанимаем толковых людей, чтобы они говорили, что делать нам.

Взято отсюда

четверг, 9 сентября 2010 г.

Основные принципы Pixar

Гуглил я тут недавно и наткнулся на статью в SHR Consulting про Pixar - секрет фантастического успеха Стива Джобса.

Надо сказать, что довольно простые и правильные принципы. Многим компаниям имеет смысл перенять их.

Не могу не привести их у себя

Принципы успешности Pixar
  1. Всегда учиться: команда Pixar постоянно задает себе вопросы: «почему» и «что если ..?», что приводит к замечательным открытиям.
  2. Поиск правильных партнеров: Pixar работает с компанией Disney, Томом Хенксом, Стивом Джобсом, Тимом Алленом и многими другими. Правильные партнеры помогут оптимизировать эффективность и раскроют потенциал.
  3. Командность: хорошие команды состоят из хороших элементов, в команде много задач важнее собственных желаний. Команда Pixar оставалась командой даже в не самые светлые свои дни.
  4. Человеческий капитал: Pixar дисциплинированно воспитывали и растили лучших из лучших, они инвестировали в блестящих людей. Человеческий капитал это не затраты – это инвестиции.
  5. Доверие интуиции: история Pixar полна моментов, когда логика бизнеса говорила "нет" творческой интуиции (например, 3D анимация по сравнению с 2D), но они воплощали в жизнь идеи и добивались оглушительного успеха.
  6. Вера в успех: эта вера позволила компании работать в течение очень трудных лет.
  7. Талант: Только талантливо рассказанные и показанные истории становятся бестселлерами.
  8. Работа - это праздник: команда Pixar отмечает как праздник маленькие технические победы в течение работы.
  9. Упорство: Pixar потребовались десять долгих лет, чтобы добиться успеха, в течение которых компания перепродавалась, теряла миллионы долларов.

среда, 8 сентября 2010 г.

туннельный синдром

Прочитал историю о туннельном синдроме. Ведь работаю с клавиатурой. Правда с Dvorak раскладкой. Иногда подолгу и на ноутбуке. И emacs использую. И колесо мышки кручу. Стало немного неуютно...

Потом прочел комментарии от Евгения Охотникова и успокоился. Честно признаюсь - ну не даю я 1 КLOC в рабочий день. А если бы и давал, то как в анекдоте - такая бы фигня получалась.

Берегите себя и свои пальцы/кисти.

четверг, 6 мая 2010 г.

Кто такие консерваторы?

В фоне говорит телевизор.
В Великобритании предвыборная гонка...
Консерваторы против лейбористов...
Лидер консерваторов посещает детские сады и объясняет детям, кто такие консерваторы и почему они лучше лейбористов...

Спрашиваю жену:
- Дорогая, а кто такие консерваторы?
Старший сын (3 года и 2 месяца) ковыряясь в своих игрушках не глядя говорит:
- Я знаю, кто такие консерваторы. Это те кто открывает банки!

...

Мы с женой ничего не могли говорить минут 15 :)))))

четверг, 18 февраля 2010 г.

Как использовать git из за HTTP прокси с Linux машины

Оригинал статьи на Английском здесь

Собственно суть проблемы.

Все началось с того что я решил вытянуть на работе boost-cmake с gitorious, но так как там большие блобы, то клонирование по http:// протоколу через корпаративный прокси заканчивалось ошибкой 500, где-нибудь в районе 25-30%. Описание проблемы, похоже на приведенное здесь.

Утверждалось, что по git:// схеме такого быть не должно.

1. Собственно предложенный вариант - туннель git протокола через HTTP CONNECT. Данная схема используется для https:// соединений на порт 443. Так как все корпаративные прокси поддерживают данную возможность, то необходимо попросить админа разрешить метод HTTP CONNECT на порт 9418, который используется git.

2. Далее нужна утилита socat - устанавливаем ее со своего Linux репозитория (yum install socat).

3. Создайте исполняемый скрипт с именем gitproxy (или выберите имя на ваше усмотрение) где-нибудь в месте из переменной PATH (например ~/bin):

#!/bin/sh
# Use socat to proxy git through an HTTP CONNECT firewall.
# Useful if you are trying to clone git:// from inside a company.
# Requires that the proxy allows CONNECT to port 9418.
#
# Save this file as gitproxy somewhere in your path (e.g., ~/bin) and then run
# chmod +x gitproxy
# git config --global core.gitproxy gitproxy
#
# More details at http://tinyurl.com/8xvpny
# Configuration. Common proxy ports are 3128, 8123, 8000.
_proxy=proxy.yourcompany.com
_proxyport=3128
exec socat STDIO PROXY:$_proxy:$1:$2,proxyport=$_proxyport

4. Конфигурируем git на использование данного скрипта (git config --global core.gitproxy gitproxy или имя выбранное вами на шаге 3)

Собственно и все. Теперь git:// URL-ы тоже работают.

Оказалось, действительно, на данном протоколе все работает стабильнее।

Обновил:
- 04.02.2011 - исправил досадную опечатку в пункте 4 (спасибо Yalexand)