svn log / diff фронтэнд вроде gitk? - PullRequest
14 голосов
/ 17 декабря 2010

Я хочу изучить изменения, внесенные в исходный код Google Chrome, который управляется SVN. Веб-интерфейс можно найти на http://src.chromium.org/viewvc/chrome/

Я хотел бы знать, есть ли интерфейс с графическим интерфейсом, который позволяет мне просматривать временную шкалу локально. С помощью git я могу просто запустить gitk foo.c.

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

Ответы [ 4 ]

27 голосов
/ 04 марта 2011

если вам нравится просматривать исходники из svn-репо, и вам нравится gitk, почему бы не использовать gitk? просто сделай

git svn init http://subversion.domain.org/repos
git svn fetch
git svn rebase

и у вас есть svn репо, "преобразованное" в локальное репозиторий git, где вы можете использовать gitk
Если вы хотите обновить локальное git-репо, просто запустите fetch & rebase
для получения дополнительной информации, посмотрите на git-svn (1)

3 голосов
/ 17 декабря 2010

В отличие от распределенных VCS, таких как git и mercurial, в Subversion мы не получаем «клон» хранилища, когда мы делаем извлечение - просто конкретная версия.

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

2 голосов
/ 18 декабря 2010

Чтобы ответить на вторую часть моего собственного вопроса, и qsvn, и rapidsvn можно использовать для просмотра журналов, когда я уже извлек рабочую копию. В qsvn перейдите в Меню -> Рабочая копия -> Добавить. В rapidsvn перейдите в Меню -> Закладки -> Добавить существующую рабочую копию.

Просмотр журнала намного медленнее, чем в git, как объясняет @ Raghuram.

0 голосов
/ 25 апреля 2015

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

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

лучше, но не работает с существующей проверкой SVN:

git-svn чтобы сначала оформить svn репо, а затем вы получите все возможности GIT.Начальная проверка занимает ДЕЙСТВИТЕЛЬНО много времени для проектов с длинной историей, если только вы не сделаете мелкий клон: Как git-svn клонировать последние n ревизий из хранилища Subversion?

others:

rapidsvn : добавить существующее хранилище в качестве «закладки».Щелкните правой кнопкой мыши на «.»-> Журнал.Это выбирает ВСЕ ревизии, так что это действительно медленно.Диалоговое окно «Журнал журнала» содержит сообщение журнала и затронутые файлы на отдельных вкладках, поэтому вы не можете видеть оба сразу.(Однако вы можете увидеть начало сообщения журнала в виде столбца в таблице редакций).Разработка остановлена ​​(https://github.com/RapidSVN/RapidSVN последнее изменение 2013-май)

затмение с субклипсом : Открытая перспектива -> Исследование репозитория SVN.Щелкните правой кнопкой мыши на что-нибудь -> Показать историю.Список версий SVN-версий, влияющих на этот файл или поддерево, быстро появляется, так как по умолчанию он выбирает только первые 25.(вы можете получить больше или все).Отраженные пути отображаются, и вы можете видеть текущую версию, но я не вижу способа получить diff.(за исключением, может быть, одного файла за раз, щелкнув правой кнопкой мыши по файлу и выполнив команду «Сравнить ...», которая вызывает меню с чем сравнивать.)

RabbitVCS : скриншот показывает 3-х панельные настройки обычных ревизий / сообщений журнала / затронутых файлов, без различий.Реализован поверх графического файлового браузера (Nautilus (GNOME) / Thunar (Xfce)), недоступен в качестве отдельного приложения.Также недоступно для Dolphin (KDE).

subcommander : последний выпуск = 2.0.0beta5 от 2009 года. Сбой пару раз при попытке его использовать.

svn-workbench : затронутые файлы открываются в новом окне из списка ревизий.Это гораздо менее удобно, чем другие вещи.Кроме того, я думаю, что это заброшено, и должно быть.удалить из Debian / Ubuntu, чтобы он не отображал запросы на поиск пакетов.

qsvn : не пробовал, так как первичная разработка остановилась, когда автор переключился на git для всего.

http://svn -ref.assembla.com / linux-svn-client-reviews.html упоминает пару коммерческих SVN-клиентов с закрытым исходным кодом, которые я не пробовал.Мне надоело искать поведение gitk за пределами gitk, и я просто пошел вперед и git-svn клонировал интересующее меня хранилище. Неудивительно, что люди переключаются с SVN, поскольку он, очевидно, не может эффективно показывать различия для коммита.

...