На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
  
> Не могу клонировать репозиторий Git , Git + Windows server 2008 + cygwin
    Есть задача ввести в эксплуатацию систему контроля версий (GIT)
    Сервер для GIT - Windows Server Standart x64 2008 R2
    Клиент - Windows 7 x64

    На сервере установлено:
    -Git-2.5.1-32-bit
    -Cygwin(openSSH сервер)

    На клиенте установлено:
    -Git-2.5.1-32-bit
    -TortoiseGit-1.8.15.0-64bit

    Последовательность установки>>
    Сервер:
    1. Установка Cygwin
    2. Установка openSSH сервера через Cygwin
    3. Настройка openSSH сервера на дефолтных настройках (Подключение только по паролю пользователь git)
    4. Установка Git-2.5.1-32-bit
    5. Добавлено в переменные среды на сервере
    "C:\Program Files (x86)\Git\cmd;C:\Program Files (x86)\Git\bin;C:\Program Files (x86)\Git\mingw32\libexec\git-core;C:\Program Files (x86)\Git\mingw32\bin"
    6. Создание репозитория с помощью GitGUI по пути C:\repo (вот что получилось C:\repo\.git)
    7. Установка прав на чтение и запись (вообщем на все и для всех) на папку C:\repo

    Клиент:
    1. Установка Git-2.5.1-32-bit
    2. установка TortoiseGit-1.8.15.0-64bit

    Результат:
    1. Клиент подключается к серверу по SSH (Putty) по логину git и паролю - удачно (значит SSH сервер работает)
    2. По пути C:\ ПКМ в контекстном меню выбираю Git clone...
    3. В открывшемся окне URL: ssh://git@сервер:/C:/repo
    4. Вводим пароль для пользователя git
    5. Ошибка:

    git.exe clone --progress -v "ssh://git@сервер:/C:/repo" "C:\repo"

    Cloning into 'C:\repo'...
    fatal: '/C:/repo' does not appear to be a git repository
    fatal: Could not read from remote repository.

    Please make sure you have the correct access rights
    and the repository exists.


    git did not exit cleanly (exit code 128) (8237 ms @ 14.09.2015 14:42:28)

    Подскажите пожалуйста возможные варианты решения проблемы, или подскажите в чем я не прав. Спасибо заранее.
      Говорит, что не может найти на сервере папку с репозиторием.
      Либо неправильно указан путь
      Либо в папке разрушена структура репозитория (что мало вероятно).

      Возможно путь к репозиторию на сервере надо указывать по-другому.

      Попробуй убрать слэш перед "C:/repo", похоже, на него ругается.
        Цитата amk @
        Попробуй убрать слэш перед "C:/repo", похоже, на него ругается.

        Ошибка после того как убрал слэш перед "C:/repo"

        git.exe clone --progress -v "ssh://git@сервер:C:/repo" "C:\repo"

        Cloning into 'C:\repo'...
        Unable to open connection:
        Host does not existfatal: Could not read from remote repository.

        Please make sure you have the correct access rights
        and the repository exists.


        git did not exit cleanly (exit code 128) (2215 ms @ 15.09.2015 8:07:25)
          <<<Обновленный порядок действий>>>

          Есть задача ввести в эксплуатацию систему контроля версий (GIT)

          Сервер для GIT - Windows Server Standart x64 2008 R2

          Клиент - Windows 7 x64

          На сервере установлено:

          -Git-2.5.1-32-bit

          -Cygwin(openSSH сервер)

          На клиенте установлено:

          -Git-2.5.1-32-bit

          -TortoiseGit-1.8.15.0-64bit

          Последовательность установки>>

          Сервер:

          Установка Cygwin
          Установка openSSH сервера через Cygwin
          Настройка openSSH сервера на дефолтных настройках (Подключение только по паролю пользователь git)
          Установка Git-2.5.1-32-bit
          Добавлено в переменные среды на сервере
          "C:\Program Files (x86)\Git\cmd;C:\Program Files (x86)\Git\bin;C:\Program Files (x86)\Git\mingw32\libexec\git-core;C:\Program Files (x86)\Git\mingw32\bin"
          Создание папки C:\gitrepo
          Установка прав на чтение и запись (вообщем на все и для всех) на папку C:\gitrepo
          В gitBASH переходим в C:\gitrepo

          $ cd C:\gitrepo

          Создал репозиторий

          $ git init --bare

          Клиент:

          Установка Git-2.5.1-32-bit
          установка TortoiseGit-1.8.15.0-64bit
          git config --global user.name и git config --global user.email выполнено
          Результат:

          Клиент подключается к серверу по SSH (Putty) по логину git и паролю - удачно (значит SSH сервер работает)
          По пути C:\ ПКМ в контекстном меню выбираю Git clone...
          В открывшемся окне URL: ssh://git@сервер:/cygdrive/c/gitrepo
          Вводим пароль для пользователя git
          Ошибка:
          git.exe clone --progress -v "ssh://git@сервер:/cygdrive/c/gitrepo" "C:\gitrepo"

          Cloning into 'C:\gitrepo'... fatal: '/cygdrive/c/gitrepo' does not appear to be a git repository fatal: Could not read from remote repository.

          Please make sure you have the correct access rights and the repository exists.

          git did not exit cleanly (exit code 128) (136079 ms @ 15.09.2015 10:39:34)
          в gitBASH команда git clone ssh://git@сервер:/cygdrive/c/gitrepo
          fatal: '/cygdrive/c/gitrepo' does not appear to be a git repository fatal: Could not read from remote repository.

          Please make sure you have the correct access rights and the repository exists.
          Подскажите пожалуйста возможные варианты решения проблемы, или подскажите в чем я не прав. Спасибо заранее.
            По идее сервер не должен давать возможности задавать абсолютные пути для репозитория, это несколько небезопасно. Он должен работать с относительными путями в какой-то папке(ах). Возможно это и сказывается.
              1) Заходим на сервер
              2) Запускаем cygwin
              3) Набираем which git
              4) Набираем `which git` --version

              Озвучиваем.

              То же самое приконнектившись как git по ssh.

              И потом еще выполнить те же команды, только из них убрать спецификацию диска Windoze вообще, то есть, что-то типа:

              gitBASH:
              $mkdir /var/tmp/gittest
              $ cd /var/tmp/gittest
              $ git init --bare

              На клиенте:
              git.exe clone --progress -v "ssh://git@сервер:/var/tmp/gittest" "gitrepo"
              Сообщение отредактировано: p1qb0d -
                Пользуйтесь коммерческим программным обеспечением и не будет таких проблем.
                Коммерческий код должен разрабатываться на коммерческом программном обеспечении.
                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                0 пользователей:


                Рейтинг@Mail.ru
                [ Script execution time: 0,0743 ]   [ 15 queries used ]   [ Generated: 9.12.24, 19:47 GMT ]