Есть ли в git параметр, позволяющий клону использовать http в одной ОС и ssh в другой? - PullRequest
2 голосов
/ 04 августа 2011

Краткий вопрос
Есть ли параметр с git, позволяющий клону использовать http в одной ОС и ssh в другой?Для точного использования: Возможно использовать протокол http (клонированный в Windows) на терминале Mac OS X, который обычно использует соединения SSH

Фон
У меня есть Macbook Pro, который я подключаюзагрузка с Mac OS X и Windows 7. У меня есть общая карта Express-34, на которой я храню все свои репозитории / рабочие каталоги.Я использую это, чтобы я мог работать со стороны Mac или Windows без проблем (до сих пор).На данный момент я не могу зафиксировать / обновить какие-либо изменения из репозиториев, которые я клонирую / извлекаю из Windows.Стоит отметить, что репозитории git, которые я клонирую с Mac, отлично работают в Windows, но никак не наоборот.

Информация о системе
Windows 7:
Черепаховый мерзавец и черепаха SVN

OS X:
Доморощенный установленный мерзавец и SVN

Обновление
Сейчас я делюсь одной проверкой SSH (на уровне проекта) как на Mac OS X Lion, так и на Windows 7. Это работает, когда я загружаюсь как в Win 7, так и когдаоно виртуализировано внутри Льва.

1 Ответ

1 голос
/ 04 августа 2011

Если я понимаю, что вы спрашиваете, я не думаю, что это возможно, используя то же имя remote .Конкретный пульт всегда определяется URL-адресом, который указывает протокол.Однако вы можете добавить новый пульт с другим URL-адресом, который использует другой протокол.

Проблема с этим заключается в том, что у вас будет один и тот же пульт с двумя разными именами в одном и том же хранилище.Это означает, что все удаленные ветви (origin / master и т. Д.) Будут продублированы и будут синхронизированы, что вызовет проблемы с любым поведением git, которое зависит от имен ветвей вместо хэшей SHA.

Например, предположиму вас есть удаленное имя с именем «windows», которое указывает http, и удаленное имя «mac», которое указывает ssh.Предположим, ваш репозиторий находится позади вашего пульта, который вы обновляете в OSX, используя git fetch / merge, теперь mac / master обновлен, а windows / master - нет.Это может не иметь большого значения для вас, но это означает, что отслеживание ветвей и другое поведение, зависящее от имени ветви, может работать не так, как вы ожидаете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...