2012-04-01 5 views
2

На моей рабочей станции у меня есть репозиторий SVN. Я использую его как на рабочей станции, так и на ноутбуке. На рабочей станции я могу получить доступ к репозиторию локально, но на ноутбуке я должен подключиться к Интернету для доступа к репозиторию. Это не удобно, потому что я не могу работать с самолетами/поездами и другими местами без Интернета (я хочу сравнить версии и т. Д.).Как разделить хранилище svn между двумя компьютерами

Было бы гораздо удобнее иметь КОПИЮ репозитория svn на ноутбуке, но мне нужна обновленная копия.

Наиболее тривиальным решением было бы хранить репозиторий svn в облаке, например https://www.dropbox.com, поэтому в любое время репозиторий обновляется на одном компьютере, он будет обновляться на другом компьютере.

Но я не хочу использовать Dropbox по соображениям безопасности, я не хочу хранить конфиденциальные файлы где-то в Интернете и, вероятно, незашифрованные.

Что еще я могу сделать? Я хочу синхронизировать две копии репозитория автоматически, но я не хочу хранить его в Интернете. Вероятно, ноутбук каждый раз, когда появляется интернет, должен «получать» обновленную копию с рабочей станции, и каждый раз, когда репозиторий обновляется на ноутбуке, он должен автоматически переводить новую версию на рабочую станцию?

Я понимаю, что SVN не предназначен, чтобы сделать такие вещи, но, как я единственный commiter в хранилище и у меня есть только рабочее место и ноутбук, мы можем предположить, что конфликт никогда не происходит ...

ответ

6

Подвинься к распределенной системы контроля версий, такой как git или Mercurial. Subversion позволяет иметь один центральный репозиторий в одном месте. Попытка репликации самого репо означала бы большой риск потери данных или несоответствий.

+0

Я полностью удовлетворен svn. И сохранение svn в Dropbox решит все мои проблемы, кроме безопасности. В репозитории есть только один коммитер, и это я! – javapowered

+0

Вы полностью удовлетворены, но вам нужно каким-то образом переместить хранилище между разными ПК. И DVCS позволяет вам делать это без каких-либо головных болей - вы будете просто перемещать папку на USB-накопителе. –

0

Почему вы не используете хостинг для исходного кода, например bitbucket? У них также есть частные хранилища.

+0

Я слышал об этом. но мне не нравится идея хранения репозитория где-то в Интернете, незашифрованном – javapowered

+0

Итак .. если вам не нравится, вы должны попробовать попробовать dvcs как git или mercurial, например @Anders Abel say :) – martinusadyh

0

Если вы действительно настроены на сохранение копии своего репозитория в двух местах (что, как указывали другие, странно, но это ваша жизнь), вы всегда можете зашифровать свой репозиторий локально после каждой фиксации и поставьте это на Dropbox. Всякий раз, когда вам нужно переключиться на свой ноутбук, просто возьмите версию Dropbox и расшифруйте ее. Думаю, вам придется постоянно переписывать свои репозитории в каждом месте при каждом обновлении, но в противном случае он, похоже, делает то, что вы хотите.

+0

как я могу сделать это автоматически ? может ли visualsvn server encript сам и будет ли это безопасно? – javapowered

+0

@javapowered - это никак не функция VisualSVN Server. Если вы хотите что-то ** очень необычно ** от него - вы можете ** заказать заказ и купить ** необходимую функциональность –