| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > УП: Инструменты > Настройка git |
| Автор: AnacRon 14.6.2009, 17:17 |
| Доброго времени суток! Не стал стоздавать дополнительно темы, думаю и эта сойдет для моего вопроса. Люди умоляю помогите разобраться! 2 дня гуглю читаю да все никак до моеня не дойдет. Проблема следующая: имею 2 машины (с Виндой) на работе и дома! так же дома стоит типа сервер-шлюз (Линкс Debian, для изучения и тестов всяких) так вот т.к. имею пару нароботок в плане программирования и часто приходится дома и в пути что-то доделывать. Для упрощения ведения проектов решился воспользоваться Git`ом. Приятная легкая и достаточно удобная веСЧ. Проблема у меня с настройкой.... в качестве локального на линуксе Git работает притезий нет, но как только пробую в репазиторий что-то за коминить с Виндовых тачек так мне сразу отворот поворот... нет соединения! хотелось бы пошаговую иструкцию на такой случай или что-то типа того н а подобный случай. буду признателен любой помощи. З.Ы. я так понял что Git не только с привязкой SSH работает? |
| Автор: JSinx 16.6.2009, 16:24 |
| Не могу разобраться в ssh авторизацией и вообще началом работы репозитория git :( Использую в качестве GUI - http://code.google.com/p/tortoisegit/downloads/list и скачал мобильную версию Git ( PortableGit 1.6.3.2 ). Зарегистрировал проект на indefero.net У пользователя там нужно указать публичный SSH ключ. Ключ генерю ssh-keygen.exe, приватный ключ конвертирую утилитой puttygen (получается ppk файл), публичный указываю в свойствах профиля ( indefero ). Затем выбираю папку, делаю Clone, указываю путь до репозитория и путь к файлу с приватным ключом ( ppk ). Но у меня ругается : fatal: The remote end hung up unexpectedly Попробовал через консоль, говорит что доступ запрещен и та же ошибка: Permission Denied (Public Key) fatal: The remote end hung up unexpectedly Помогите разобраться, что делаю не так |
| Автор: AnacRon 18.6.2009, 13:41 | ||
с ssh разобрался на половину! делая теперь конект таким образом git clone ssh://user@my_server/path_to_repozitore/ name_my_ local_repozitore и все работает. зетем и pull и push работают. не всегда только удобно работать из консоли, в качестве гуя использую родной Git GUI. проблема теперь с коннектом по ssh-ключам. правда пока нет времени разбираться! на донном этапе достачно доступа по логину и паролю. Спасибо ценный мануал! попадался он мне и раньше, но мой английский страдает очень сильно! в помощь переводчик... |
| Автор: JSinx 18.6.2009, 14:17 |
| Я в целом тоже разобрался Для тестов завел еще репозиторий на sourceforge, там вообще все просто и в мануале написано что делать Я же совершил 2 ошибки: 1) Для правильной работы ключей надо запустить утилиту ssh-agent (вместе с git идет), там добавить ppk ключ. 2) Я пытался залить все через адрес git://path_to_repozitore/ name_my_ local_repozitore, а нужно было user@my_server/path_to_repozitore/ name_my_ local_repozitore Если кому либо нужны будут git репозитарии, можно по выбирать на http://git.or.cz/gitwiki/GitHosting. Там есть бесплатные и для приватных проектов. |
| Автор: JSinx 2.7.2009, 14:19 | ||
| Еще возникла проблема, что с командной строки отказывается работать, хотя через TortoiseGit работает. Конкретно проблема возникла с assemble.com Почитав советы на форумах, нашел решение. В папке .ssh (которая находиться в "\Documents and Settings\<пользователь>\.ssh\) создаем файл config:
где private_key - имя файла с приватным ключем (на сайте естественно указываем публичный ключ), после этого у меня все разаботало и из командной строки. Так же есть подозрение, что в портативной версии что-то не так с авторизацией. Поэтому если пользуетесь портативной версией и не можете настроить авторизацию, попробуйте поставить через инсталлятор нормальную |
| Автор: JSinx 11.8.2009, 21:36 |
| Возникли проблемы при работе в висте (хотя у знакомого все нормально работает). Отказывается запускаться sh.exe ( VirtualAlloc pointer is null .... ). Погуглил и нашел решение http://dmitrygusev.blogspot.com/2009/07/fix-msysgit-install.html Сделать это можно с помощью http://repo.or.cz/w/msysgit.git?a=blob_plain;f=bin/rebase.exe;hb=full. Выполнить rebase.exe -b 0x40000000 msys-1.0.dll Если не поможет 0x40000000 - попробовать другую цифирку. |
| Автор: x0123456789 8.5.2011, 19:23 |
| Самый простой способ создать удалённый Git-репозиторий под windows: (можно шпарить с выключенным мозгом прямо по пунктам как терминатор) (0) Скачать: VirtualBox-4.0.6-71416-Win ubuntu-11.04-server (1) В Windows Установить VirtualBox и запустить. (2) В VirtualBox создать виртуальную машину Linux/Ubuntu. В свойствах Сеть выбрать Включить сетевой адаптер, выбрать Тип подключения: Сетевой мост, выбрать Имя: указать имя реально задействованного сетевого адаптера. В свойствах Система/Порядок загрузки указать первую загрузку: CD/DVD-ROM В разделе Носители/IDE контроллер добавить образ ubuntu-11.04-server.iso (3) В VirtualBox установить ubuntu-11.04-server. Для этого нажать Старт выртуальной машины. Язык выбрать English. выбрать SSH сервер Http proxy пропустить. Рекомендую выбрать имя пользователя 'git'. В конце перед перезагрузкой Ubuntu на виртуальной машине в меню/Устройства/Приводы оптических дисков отключить ubuntu-11.04-server.iso (4) В Windows-Menu/Панель управления/Сеть и интернет/Центр управления сетями и общим доступом: выбрать: Virtual Box Host-Only Network/Свойства поставить галку: VirtualBox Bridget Networking Driver добавить: Служба (5) В ubuntu залогиниться и определить свой IP, выполнив: $ ifconfig У меня оказалася такой:192.168.0.100 (6) Из windows-a проверить доступность IP ubuntu: > ping 192.168.0.100 > ipconfig // определить ip windows-a // у меня оказался 192.168.0.101 (7) Из ubuntu проверить доступность IP windows-a $ ping 192.168.0.101 // указать ip полученный в предыдущем пункте (6) В ubuntu установить git-core: $ sudo apt-get install git-core (8) В ubuntu добавить в конец файла /etc/ssh/sshd_config строку: AllowUsers git и перезапустить ssh $ sudo echo "AllowUsers git" >> /etc/ssh/sshd_config $ sudo /etc/init.d/ssh restart (9) В ubuntu создать голый репозиторий: $ cd // переместиться в домашнюю директорию /home/git $ mkdir proj.git // создать директорию проекта $ cd proj.git // переместиться туда $ git init --bare // создать 'голый' репозиторий (10) В windows в директории с проектом создать локальный git-репозиторий и выполнить комит. > git init > git add . > git commit -m "proverka" (11) Связать его с удалённым и слить на сервер. > git remote add origin ssh://[email protected]:22/home/git/proj.git > git push origin master Фсё! |