Виртуальный Mac?

git-subtree хорош, но, вероятно, это не тот, который вам нужен.

Например, если projectA является каталогом, созданным в B, после git subtree,

git log projectA

перечисляет только одно сообщение: слияние. Коммиты из объединенного проекта предназначены для разных путей, поэтому они не отображаются.

Ответ Greg Hewgill близок, хотя на самом деле он не говорит, как переписать пути.

< hr>

Решение на удивление просто.

(1) В A,

PREFIX=projectA #adjust this

git filter-branch --index-filter '
    git ls-files -s |
    sed "s,\t,&'"$PREFIX"'/," |
    GIT_INDEX_FILE=$GIT_INDEX_FILE.new git update-index --index-info &&
    mv $GIT_INDEX_FILE.new $GIT_INDEX_FILE
' HEAD

Примечание: Это перезаписывает историю, поэтому, если вы намереваетесь продолжать использовать это репо A, вы можете сначала клонировать (копировать) его исходную копию.

(2) Затем в B запустите

git pull path/to/A

Voila! У вас есть каталог projectA в B. Если вы запустите git log projectA, вы увидите все коммиты с A.


В моем случае мне нужны два подкаталога: projectA и projectB. В этом случае я также сделал шаг (1) на B.

10
задан Wilka 22 August 2008 в 15:08
поделиться

4 ответа

Законно выполнить Сервер Mac OS X в виртуальной машине на аппаратных средствах Apple. Все другие формы виртуализации Mac OS X в настоящее время запрещаются.

12
ответ дан 3 December 2019 в 15:37
поделиться

По закону необходимо купить Mac. "Возможно" работать (по крайней мере, Tiger) в VMware - опыт не оптимален, но можно сделать это. Также возможно выполнить OS X на аппаратных средствах ПК; однако, это - упражнение в недопустимом программном обеспечении и взломы.

2
ответ дан 3 December 2019 в 15:37
поделиться

Я выполнил OSX под VMware, и я могу сказать Вам с уверенностью, что это не среда, в которой Вы нашли бы удобным для разработки приложений. Это было едва (не действительно) применимо для тестирования Mac определенные ошибки браузера, которые не могли быть воспроизведены в Safari в Windows.

С другой стороны, если бы Ваши аппаратные средства поддерживаются OSx86, можно выполнить его исходно на разумных скоростях, и я ожидал бы, что это сделает довольно хорошую dev среду.

Для всех случаев я собираюсь предположить, что Вы имеете легальную лицензию OS X и не возражаете против легальной неоднозначности выполнения его на аппаратных средствах, которые лицензия явно запрещает (законность неясна, imo, но я действительно думаю, что Вы были бы в порядке пока не пиратская копия).

2
ответ дан 3 December 2019 в 15:37
поделиться

К сожалению, нет никакого легального способа выполнить OS X в виртуальной машине.

Для разработки приложений для iPhone Вы, вероятно, не нуждаетесь в особенно раскормленной машине, поэтому возможно, изучаете захват мини-Mac? Они - самые дешевые Mac, которые Вы можете получить и должны, вероятно, быть очень хорошо для того, чтобы сделать работу iPhone. Плюс, теперь у Вас есть Mac, который можно использовать для тестирования других вещей также!:)

1
ответ дан 3 December 2019 в 15:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: