Разность SVN через 2 различных репозитория

dates <-  1:100
returns <- runif(100)
yticks_val <- pretty_breaks(n=5)(returns)
plot(dates, returns, yaxt="n")
axis(2, at=yticks_val, lab=percent(yticks_val))

Основные характеристики:

  1. Нет необходимости явно добавлять «%»
  2. Вручную исправьте количество y-тиков, чтобы соответствовать дальнейшим графикам. Здесь я выбрал 5.

See

Объединение двух ответов вместе @rengis @vladiim

21
задан gagneet 3 August 2009 в 08:31
поделиться

5 ответов

Я не знаю встроенной функции подрывной деятельности, которая позволила бы это, но вы могли бы создать полную проверку обоих репозиториев и использовать утилиту командной строки diff для сравнения обеих рабочих копий:

diff -w -u -r -N WorkingCopy1 WorkingCopy2

-w , чтобы игнорировать все пробелы -u для использования единого формата сравнения (например, Subversion) -r для рекурсивного -N , чтобы новые файлы появлялись в патче

Это, конечно, не самый быстрый подход, но может быть приемлемым для одноразового процесса. Вы также можете создать патч, перенаправив вывод в файл diff -w -u -r -N WorkingCopy1 WorkingCopy2> wc1-to-wc2.patch

Если вы используете Windows, win32 сборки diff и патч можно найти здесь: http://gnuwin32.sourceforge.net/packages/diffutils.htm

25
ответ дан 29 November 2019 в 06:27
поделиться

Лучшим инструментом для этого слияния может быть git-svn. Если URL-адреса двух репозиториев - $ URL1 и $ URL2, попробуйте:

$ git svn clone $URL1 svn1
$ git svn clone $URL2 svn2
$ cd svn1
$ git fetch ../svn2
$ git diff FETCH_HEAD master

Чтобы игнорировать изменения пробелов, используйте git diff -w

5
ответ дан 29 November 2019 в 06:27
поделиться

Вы можете использовать такой инструмент, как kdiff3, чтобы просто сравнить извлеченные рабочие копии из обоих репозиториев. (Просто наведите его на два каталога, и он рекурсивно сравнит все файлы в них.)

3
ответ дан 29 November 2019 в 06:27
поделиться

Наверное, проще всего проверить обе ветки и использовать такой инструмент, как winmerge (который позволит вам игнорировать пробелы и выполнять множественное сравнение)

1
ответ дан 29 November 2019 в 06:27
поделиться

Скопируйте второй репозиторий в первый, используя что-нибудь вроде следующего в рабочей копии первого репозитория:

svn cp svn://url/to/the/second/repo branches/second_repo

Зарегистрируйтесь и выполните регулярное слияние из новой ветки в вашу магистраль.

Это объяснение предполагает, что вы используете наиболее распространенный макет репозитория svn (ветки /, теги / и / trunk как каталоги верхнего уровня), и поэтому он может быть необходимо адаптировать команду копирования.

Также обратите внимание, что некоторые графические интерфейсы для SVN также поддерживают этот режим копирования. В SmartSVN команда называется «Копировать из URL».

1
ответ дан 29 November 2019 в 06:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: