Продолжаем осваивать Git

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

git add * && git commit -m "Initial commit" && git push origin master

где,
origin это сервер на котором у нас код… и добавляется он вот так

git remote add origin ssh://git@/git/test.git

Возможны ошибки при первом комите:

root@client:app# git push
Password:
No refs in common and none specified; doing nothing.
Perhaps you should specify a branch such as 'master'.
fatal: The remote end hung up unexpectedly
error: failed to push some refs to 'ssh://root@giserver.com/git/app'

Указываем явно куда пушить

root@gitclient# git push origin master
Password:
Counting objects: 3, done.
Writing objects: 100% (3/3), 203 bytes, done.
Total 3 (delta 0), reused 0 (delta 0)
remote: error: refusing to update checked out branch: refs/heads/master
remote: error: By default, updating the current branch in a non-bare repository
remote: error: is denied, because it will make the index and work tree inconsistent
remote: error: with what you pushed, and will require 'git reset --hard' to match
remote: error: the work tree to HEAD.
remote: error:
remote: error: You can set 'receive.denyCurrentBranch' configuration variable to
remote: error: 'ignore' or 'warn' in the remote repository to allow pushing into
remote: error: its current branch; however, this is not recommended unless you
remote: error: arranged to update its work tree to match what you pushed in some
remote: error: other way.
remote: error:
remote: error: To squelch this message and still keep the default behaviour, set
remote: error: 'receive.denyCurrentBranch' configuration variable to 'refuse'.
To ssh://root@gitserver.com/git/app
 ! [remote rejected] master -> master (branch is currently checked out)
error: failed to push some refs to 'ssh://root@gitserver.com/git/app'

Все равно не поддается на провокацию. Сия ситуация хорошо описана тут http://pete.akeo.ie/2011/07/git-remote-repository.html
Git думает что раз репозиторий пустой, то есть не завершенный первый коммит и не дает простому смертному стать первым. Для этого мы на сервере создадим новую ветку:

root@gitserver : git checkout -b first-commit
Switched to a new branch 'first-commit'
root@gitserver $ git symbolic-ref HEAD refs/heads/first-commit

После этого можем внести изменения в код на клиенте и передать это на сервер

echo "new file" > README
git add README
git commit -m "Added file README"
git push origin master

Читати далі

ESP8266: мини-WiFi плата с GPIO

ESP-01 — удобен для прототипирования (есть разъем под макетку), но выведен всего 1 GPIO; ESP-03 — много выводов, плюс керамическая антенна; ESP-07 — то же самое что и ESP-03 + экран и разъем под внешнюю антенну. Обзор всех модификаций

Драйвер для Tormenta2 в Asterisk

Чтоб не искать каждый раз заново. Драйвер для ISDN PRI карты Tormenta2 от украинской компании Nika нужно подкинуть в каталог с оригинальными dahdi-linux-complete-2****/linux/drivers/dahdi/ И заменить в нем тот драйвер который уже есть tormenta2.rbt Сам фай можно скачать по это ссылке tormenta2.rbt

Zentyal Server

Щоб не забути погратись: Zentyal (раніше відомий під ім’ям eBox Platform) — серверний дистрибутив Linux, побудований на пакетній базі Ubuntu LTS з довготривалою підтримкою, і орієнтований на створення серверів для обслуговування локальних мереж підприємств середнього та малого бізнесу. Zentyal постачається як у вигляді окремого установного Live-дистрибутиву, так і у вигляді набору пакунків для Ubuntu. Сирцевий … Читати далі

Миграция на Zimbra с постороннего почтовика

Для переноса почты с постороннего почтового провайдера к которому у вас нет доступа по ssh, можно использовать Perl утилиту imapsync
Сначала подготовим пакеты

apt-get install makepasswd rcs perl-doc libio-tee-perl git libmail-imapclient-perl libdigest-md5-file-perl libterm-readkey-perl libfile-copy-recursive-perl build-essential make automake libunicode-string-perl libio-socket-ip-perl ibio-tee-perl

Для пущей убедительности можно поставит необходимые пакеты через CPAN

  perl -MCPAN -e "install Mail::IMAPClient"
  perl -MCPAN -e "install Term::ReadKey"
  perl -MCPAN -e "install IO::Socket::SSL"
  perl -MCPAN -e "install Digest::HMAC_MD5"
  perl -MCPAN -e "install URI::Escape"
  perl -MCPAN -e "install File::Copy::Recursive"
  perl -MCPAN -e "install IO::Tee"
  perl -MCPAN -e "install Unicode::String"
  perl -MCPAN -e "install Data::Uniqid"
  perl -MCPAN -e "install Authen::NTLM"

Клонируем репозиторий imapsync

git clone git://github.com/imapsync/imapsync.git

Запускаем установщик

cd imapsync
mkdir dist
sudo make install

Смотрим, что получилось

# imapsync -v
1.607

Читати далі

Zimbra: 241 BAD maximum literal size exceeded

Вот такая ошибка бывает в Zimbra
Чинится увеличение квот на размер сообщения встроеной утилитой zmprov
Заходим под пользователем zimbra

su zimbra

Просмотреть текущие параметры

zmprov getConfig zimbraFileUploadMaxSize
zmprov getConfig zimbraImapMaxRequestSize
zmprov getConfig zimbraMailContentMaxSize
zmprov getConfig zimbraMtaMaxMessageSize

Читати далі

snmpd: error on subcontainer ‘ia_addr’ insert (-1)

Если даная ошибка сыпется в лог с завидным постоянством, то в системе есть конфликт IP-адресов.
Нужно убедится, что у вас нет конфликтов, особенно присмотреться к IPv6 адресам
Как вариант – отключить IPv6
Либо можно понизить логирование самого snmpd демона
В файле /etc/default/snmpd немного поправив строку

Читати далі

Moto X – активировать меню Developer options

Для активации Developer options на Moto X нужна пара магических действий. – заходим в настройки телефона – переходим в последнее меню “о телефоне” (About Phone) – находим пункт “Версия сборки” – Build Number – тапаем на этот пункт 7раз подряд – теперь вы разработчик и появится пункт Developer options в основном меню настроек. Там есть … Читати далі

Asterisk: список стандартных переменных

Variables present in Asterisk 1.8 and forward: ${CDR(accountcode)} * – Account code (if specified) ${BLINDTRANSFER} – The name of the channel on the other side of a blind transfer ${BRIDGEPEER} – Bridged peer ${BRIDGEPVTCALLID} – Bridged peer PVT call ID (SIP Call ID if a SIP call) ${CALLERID(ani)} * – Caller ANI (PRI channels) ${CALLERID(ani2)} … Читати далі