контроль источника, когда вдали от офиса

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

Моя идеальная система позволила бы мне проверять ревизии в репозитории на моем ноутбуке, которые затем синхронизировались с нашим основным SVN-репозиторием при подключении к сети компании. при синхронизации с основным репозиторием было бы хорошо, если бы можно было поддерживать отдельные регистрации и комментарии.

У меня не всегда будет интернет-соединение, поэтому VPN - не лучшее решение.

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

Кто-нибудь знает какие-либо инструменты, которые помогут мне достичь этого?

Спасибо

15.12.2008 15:02:47
5 ОТВЕТОВ

Это принцип GIT (своего рода новая подрывная деятельность). Git имеет локальный репозиторий. Для SVN у меня есть VPN для компании, так что я все еще могу использовать SVN Server из дома, возможно, это может быть решением, чтобы избежать изменения системы репозитория (я знаю, что вы не всегда подключены ... но хорошо .. без изменений это может быть VPN или GIT).

3
15.12.2008 15:05:27
Нет, git - это не «новая подрывная деятельность», это совершенно другая VCS.
bortzmeyer 19.12.2008 08:53:26

Не уверен, что стандартный SVN может это сделать. Я знаю, что это то, для чего были созданы системы распределенного управления версиями (среди прочего).

Вы можете попробовать SVK, который по сути является децентрализованной модификацией SVN.

3
15.12.2008 15:05:47
Правильно, стандартный SVN не может этого сделать. Но SVK - это больше, чем просто модификация SVN, это слой поверх SVN, который добавляет эти децентрализованные поведения.
jmanning2k 15.12.2008 16:25:31
Да, SVK - это правильный ответ на вопрос OP (я действительно чувствую, что голосую против всех, кто предложил другую VCS: OP, вероятно, не может переключать VCS компании по своему желанию!)
bortzmeyer 19.12.2008 08:52:35

Любая децентрализованная / распределенная VCS может сделать это в определенной степени, я бы порекомендовал Mercurial over git, потому что его пользовательский интерфейс намного ближе к SVN. У меня есть несколько SVN-репозиториев, за которыми я следую и играю с Mercurial. В Mercurial также есть утилита TortoiseHg для Windows-машин.

1
15.12.2008 15:10:05

Очевидные ответы будут Mercurial и Git.

Я добавлю один из левого поля: Perforce. Хотя он не распространяется по-настоящему, как Mercurial или Git, люди упускают замечательную функцию:

«Согласовать автономные работы»

Это часть клиента P4V. Вы можете быть вне офиса даже без подключения к интернету. Он не будет отслеживать отдельные, автономные регистрации, но позволит вам отслеживать то, что изменилось. Это облегчает вам регистрацию без пропущенных изменений, как только вы вернетесь в офис.

Поскольку вы упоминаете SVN, вы, вероятно, не ищете коммерческого решения. Но я не могу не рекомендовать его в любом случае. Выдувает СВН из воды.

1
15.12.2008 15:38:51
Я безумно часто использую функцию «примирить». Это очень полезно, когда я поддерживаю код в моем СЦ и клиенте одновременно. Perforce очень быстрый. Я запускаю перформанс на моем домашнем сервере и ssh туннель к нему со своим ноутбуком от всех моих клиентов (кроме странного «вот ноутбук, пользуйтесь им, а не вашими»)
darron 15.12.2008 17:20:51
Это также бесплатно для 2 пользователей и до 5 рабочих пространств. Я в настоящее время использую бесплатную версию. 5 рабочих пространств - убийца ... особенно при запуске большого количества виртуальных машин. :(
darron 15.12.2008 17:22:01
Я обнаружил, что могу уменьшить количество рабочих пространств, очистив поле хоста рабочего пространства, чтобы его можно было использовать для разных клиентов. Затем я использую один и тот же корень для нескольких машин. Это не решает проблему, но подходит для некоторых случаев, когда вы можете выполнить принудительную синхронизацию.
Mike 17.12.2008 18:24:24

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

0
5.01.2009 09:49:39