Я использую Pycharm
для написания некоторого кода у меня есть МНОГО небольших функций, которые должны быть расположены с отступом в класс и недостаточно терпения сделать все это один за другим. В Pycharm
можно использовать alt-click
добавить несколько каре. Однако в Ubuntu alt-click
перетащит окно. Как я могу отключить alt-click
на Ubuntu как конфигурация системы, для использования его для нескольких каре?
Я нашел это использование ответа dconf write /org/gnome/desktop/wm/preferences/mouse-button-modifier '"<Alt>"'
но это, кажется, ничего не делает, и alt-drag/click
все еще вытягивает окно с ним.
Самый простой путь использует:
svnadmin dump path/to/repos > repos.out
Это создаст мобильный формат для Вашего репозитория (с историей) в файле repos.out
. Можно затем использовать
svnadmin load path/to/newrepos < repos.out
загрузить Ваш 'выведенный' репозиторий в новый или существующий.
Глава 5. Обслуживание репозитория-> Мигрирующие Данные Репозитория В другом месте имеет это примечание об использовании svnadmin dump
с версии 1.7:
Формат дампа репозитория Подверсии описывает имеющие версию изменения репозитория только. Это не будет содержать информации о незафиксированных транзакциях, пользователь соединяет пути файловой системы, репозиторий или настройки конфигурации сервера (включая сценарии рычага), и так далее.
В версии 1.7 Подверсии существует новая команда, svnrdump
, который может использоваться, чтобы получить доступ к удаленному репозиторию и генерировать тот же вывод формата дампа, как сгенерирован эти svnadmin dump
команда. Это позволяет Вам использовать svnrdump
с svnadmin load
для передачи репозитория Подверсии.
Видят svnrdump— Удаленная Миграция данных Репозитория Подверсии , который имеет объяснение новой команды.
В Главе 5 красной книги, раздел Мигрирующие Данные Репозитория В другом месте имеют миграцию данных Репозитория подраздела с помощью svnrdump
, который упоминает:
главная разница [между
svnrdump
иsvnadmin dump
] - то, что вместо того, чтобы требовать прямого доступа к репозиторию,svnrdump
работает удаленно, с помощью тех же самых протоколов Доступа к репозиторию (RA), которые делает клиент Подверсии. По сути, Вы, возможно, должны были бы обеспечить учетные данные аутентификации. Кроме того, Ваши удаленные взаимодействия [так] подвергаются любым ограничениям авторизации, настроенным на сервере Подверсии.
я также предположил бы, что ограничения svnadmin dump
относительно настроек конфигурации сервера, таких как рычаги не могут быть переданы, также относился бы svnrdump
.
Используйте svnsync
— команда Subversion Repository Mirroring :
svnsync
Подверсия удаленный инструмент зеркального отражения репозитория. Помещенный просто, это позволяет Вам воспроизводить изменения одного репозитория в другой.
документация Подверсии для эти svnsync
команда имеет соблюдающее предупреждение (с версии 1.7) допущение, что, после того как некоторые другие команды SVN используются для изменения зеркального репозитория, svnsync
не должен использоваться с тем конкретным зеркалом снова:
svnsync
очень чувствительно к изменениям, внесенным в зеркальном репозитории, которые не были сделаны как часть операции зеркального отражения. Для предотвращения этого лучше, если этиsvnsync
процесс является единственным процессом, разрешенным изменить зеркальный репозиторий.
Я думаю, что нужно указать, что файл дампа, созданный путем использования
svnadmin dump path/to/repos > dumpfile
, может быть создан (из svn 1.7 и дальше) использование команды
svnrdump dump url_to_repos > dumpfile
, Это полезно при выполнении от удаленного компьютера а не сервера.
В случае, если это помогает другим, существует svn2svn для воспроизведения changesets от одного репозитория Подверсии до другого:
Для миграции репозитория от одного сервера до другого следующего версии шаги, которые необходимо выполнить.
Шаг 1: Выведите все версии репозитория в файл дампа. У Вас могли бы быть тысячи версий в существующем репозитории. Таким образом, можно создать файл дампа с помощью следующего сценария.
# Here “i” is the version starting number, and “j” is the maximum version number of your existing #repository.
j=4999;
for ((i=0;i<=$j;i++));
do
# your-unix-command-here
echo $i
svnadmin dump <old_server_repository_location > -r $i –incremental > <dump_location>/$i.dump
done
В вышеупомянутом сценарии Вы могли бы получить полный дамп старого репозитория в зависимости от доступности пространства, или можно взять дамп в коротком интервале (т.е. от 0-5000, затем от 5001-10000 и так далее).
Шаг 2: Выполните вышеупомянутый сценарий с помощью ниже команды. В зависимости от версии ядра необходимо выполнить любой из ниже двух запросов.
$ bash dump.sh > stdout.sh
$ ./sh dump.sh > stdout.sh
Это запишет все команды, необходимо было выполнить использование вышеупомянутой команды в stdout.sh файл. Можно отследить этот файл для будущей ссылки.
Шаг 3: Проверьте, открыт ли брандмауэр для номера порта 22 между старым и новым сервером. Если это не открыто, то попросите, чтобы Ваш администратор сделал это доступным.
Шаг 4: Теперь скопируйте все файлы дампа, сгенерированные со старого репозитория SVN на новый сервер с помощью ниже команды.
$ sftp xxxx@<new_server>
Connecting to <new_server>…
Password:
sftp> mput *.dump <new_server>/dump_location
В вышеупомянутой команде, xxxx
пользователь, который делает операцию. В процессе выполнения sftp Вы копируют файлы дампа со старого сервера на новый сервер.
Шаг 5: Создайте новый репозиторий к новому Серверу
$ svnadmin create <new_repository>
Шаг 6: Теперь используйте ниже сценария для загрузки всех файлов дампа.
# Here “i” is the version starting number, and “j” is the maximum version number of your existing #repository.
j=4999;
for ((i=0;i<=$j;i++));
do
# your-unix-command-here
echo $i
svnadmin load –bypass-prop-validation <new_repository> < dump_location /$i.dump
done
Только после вышеупомянутых шести простых шагов Вы сможете переместить свой существующий репозиторий в новый репозиторий. Посредством этого процесса Вы не должны волноваться о поврежденных изменениях Вашего существующего репозитория.
Как предложено в книге Подверсии:
svnadmin dump path/to/repos_src \
| svndumpfilter include path/inside/svn/to/directory \
| svnadmin load path/to/repos_dst
С примером:
svnadmin dump /var/lib/svn/old_repo \
| svndumpfilter include trunk/my_project/common_dir \
| svnadmin load /var/lib/svn/new_repo
Если Вы не хотите историю, можно использовать svn export
получить чистую папку без .svn
папки и затем svn import
в Ваш другой репозиторий.
С историей необходимо было бы использовать svnadmin dump
. Вы затем использовали бы svndumpfilter
для фильтрации только для частей или путей, Вы хотите использовать перед использованием svnadmin load
.
Темы для чтения:
Можно создать использование файла дампа svnadmin dump
, затем импортируйте в новый репозиторий с svnadmin load
.
Используя CCSM (менеджер по Настройкам CompizConfig) я смог изменить настройки alt-click
кому: cntrl-alt-click
Сделать так:
sudo apt install compizconfig-settings-manager