Я занимаюсь разработкой мультиплатформенного программного обеспечения и должен разрабатывать, собирать и тестировать как на Windows, так и на OS X.
Очень часто я нахожусь в ситуации, когда я вносил некоторые изменения в одну ОС, которые почти наверняка что-то сломали в другой. Например, программное обеспечение поддерживает более 10 различных целевых платформ, и для некоторых из них двоичные файлы создаются на базе Windows, для других на OS X та же кодовая база используется в проектах Visual Studio в Windows и в проектах Xcode в OS X. Итак, когда я, например, добавляю новый исходный файл, он, конечно, должен быть добавлен ко всем проектам, или необходимо запустить сценарии сборки, чтобы проверить, все ли еще собирается для каждой платформы и так далее.
Делать это с контролем версий далеко от идеала: фиксировать изменения с одного компьютера, обновлять на другом, настраивать, что можно только там протестировать, снова проверять и обновлять на первом компьютере, чтобы увидеть, все ли там работает. - много ревизий, в которых что-то сломано для какой-то платформы. Мы используем систему управления версиями (svn) для работы с несколькими разработчиками над одними и теми же проектами, и это прекрасно, но не совсем правильно делить локальные материалы в процессе разработки между двумя компьютерами одного и того же разработчика.
Поэтому я ищу хорошее решение для совместного использования одних и тех же локальных версий одних и тех же файлов между двумя компьютерами (с разными ОС). По сути, как будто кто-то обращается к одному и тому же жесткому диску с обоих компьютеров.
Я уже пробовал с сетью поделиться моей рабочей SVN-копией на компьютере Windows со всеми компьютерами в сети, которые вошли в систему с моей учетной записью пользователя домена и затем получили доступ к этой папке с компьютера Mac с помощью smb, но, к сожалению, Xcode, похоже, имеет серьезные проблемы с таким подходом: более 95% сборок, которые обычно были бы успешными, терпят неудачу, потому что Xcode не может получить доступ для чтения к некоторому исходному файлу в общей папке. Несколько секунд спустя, без каких-либо изменений, при попытке сборки в другой раз, он обрабатывает файл просто отлично, но отказывает в другом, для которого у него не было проблем в прошлый раз, и так далее. Решения и рабочие области нашего программного обеспечения среднего размера, с несколькими разработчиками, несколькими десятками проектов, которые зависят друг от друга, и многими сотнями исходных файлов, поэтому, если для каждого исходного файла я получаю только ошибку чтения в одной из ста пытается, все еще почти невозможно восстановить половину рабочего пространства Xcode без ошибки доступа для чтения ни для одного из исходных файлов.
Есть ли какие-либо решения для совместного использования папок, которые работают более надежно с XCode?