У меня есть репозиторий на моей локальной машине под SVN. По разным причинам ветка SVN, над которой я работаю, заблокирована, и я не должен создавать другую ветку. Я хотел бы иметь возможность делать много локальных коммитов через Mercurial, а затем копировать / передавать эти изменения на сетевой диск, чтобы они создавали резервные копии каждую ночь. Когда ветка SVN снова откроется, я внесу последние изменения в нее.
Ничто из этого не кажется необычным. Я сделал свое локальное репо, внес в него некоторые изменения и зафиксировал их. Затем я сделал пустой репо на удаленном диске и попытался hg push
внести изменения. Через несколько часов было сделано всего 33%. Общий объем репо составляет около 80 МБ (6,7 ГБ файлов в папке с кодом). Я действительно не хочу ждать целый день каждый раз, когда делаю коммит.
Я решил взять с собой сумку hg push
и использовать вместо нее hg clone
.
Все прошло так (с помощью PowerShell):
PS C:\Dev\Projects\Project1> hg status
PS C:\Dev\Projects\Project1> hg clone H:\Repo\Projects
**abort: repository H:\Repo\Projects not found!**
Хорошо, мне, очевидно, нужен репозиторий в H: \ Repo \ Projects. Поэтому я иду туда и использую hg init
, чтобы создать пустой репозиторий. После этого я пытаюсь это:
PS C:\Dev\Projects\Project1> hg clone H:\Repo\Projects
destination directory: Projects
**abort: destination 'Projects' is not empty**
Что здесь хочет Mercurial? Пустой каталог? Ну нет, тогда он не может найти репо. Пустой репо? Нет, тогда это говорит мне, что пункт назначения не пуст. Совершенно новая папка типа hg clone H:\Repo\Projects\TheNewFolder
? Нет, тогда я получаю сообщение о том, что репо не найдено.
Каков наилучший (или любой) способ сделать это? Я, кажется, застрял между "берет весь день" или "не работает вообще".