我想研究对由 SVN 管理的 Google Chrome 源代码所做的更改。可以在以下位置找到网络界面: http://src.chromium.org/viewvc/chrome/

我想知道是否有一个 GUI 前端可以让我在本地检查时间线。使用 git 我可以简单地运行 gitk foo.c.

我尝试了 qsvn 和 Rapidsvn 但不知道如何让它们完成这项工作。看来我必须在 GUI 中导入存储库,但我已经签出了存储库。

有帮助吗?

解决方案

与Git和Mercurial这样的分布式VC不同,在颠覆中,当我们进行结帐时,我们不会获得存储库的“克隆” - 只是一个特定的版本。

在RapidSVN中,我们可以单击一个文件,右键单击“选择日志...以获取文件更改的历史记录,但这涉及到服务器的连接以下载信息。 (一些客户喜欢Tortoisesvn缓存其中的一些客户,但不确定RapidSVN)。

其他提示

如果您喜欢从 svn-repo 浏览源代码,并且喜欢 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)

要回答我自己问题的第二部分,两者都 qsvnrapidsvn 当我已经检查了工作副本时,可以用于查看日志。在 qsvn, ,转到菜单 - >工作副本 - >添加。在 rapidsvn, ,转到菜单 - >书签 - >添加现有工作副本。

如@Raghuram所解释的那样,查看日志比Git慢得多。

我尝试了一些SVN客户,寻找的是 gitk (没有文件参数)。我认为,在大多数SVN客户端中显示特定文件的历史记录要比在整个项目中显示差异的历史记录更容易。

如果有一种方法可以同时查看提交消息,受影响的文件和差异,但是我没有在UI中找到它,请发表评论,让我知道我错过了什么。我怀疑任何本地SVN客户端都这样做,因为必须从服务器中获取旧版本。

最好,但不适用于现有的SVN结帐:

git-svn 首先要查看SVN存储库,然后获得完整的GIT功能。除非您制作一个浅水克隆,否则最初的结帐需要很长的时间才能长期使用。 如何git-svn克隆颠覆存储库中的最后n个修订版?

其他:

Rapidsvn: :将现有的存储库添加为“书签”。右键单击“”。 - >日志。这提供了所有修订,因此出现真的很慢。 “日志历史记录”对话框在单独的选项卡中具有日志消息,并影响了文件,因此您无法一次看到两者。 (但是,您可以将日志消息的开头视为修订表中的列)。发展停滞(https://github.com/rapidsvn/rapidsvn 2013年最后更改)

子开林: :Open Perspective-> SVN存储库探索。右键单击某些内容 - >显示历史记录。影响该文件或子树的SVN REV的修订列表迅速出现,因为默认情况下仅获取前25个。 (您可以获取更多或全部)。显示了受影响的路径,您可以看到当前版本,但我看不到获得差异的方法。 (除了一次一次文件外,右键单击一个文件并进行“比较...”,这会带来与之比较的菜单。)

兔子: :屏幕截图显示常用的修订 /日志消息 /受影响的文件3窗格设置,无差异。在图形文件浏览器(Nautilus(Gnome) / Thunar(XFCE))的顶部实现,无法作为独立应用程序可用。也不能用于海豚(KDE)。

子司令部: :Last版本= 2009年的2.0.0beta5。尝试使用它时崩溃了几次。

Svn-Workbench: :受影响的文件从修订列表中的新窗口中打开。它比其他事项要少得多。我也认为它已经被放弃了,应该提出可能。从Debian/Ubuntu删除,因此不会显示包装搜索。

QSVN: :没有尝试,因为当作者转向Git for Aspery时,上游开发停止了。

http://svn-ref.assembla.com/linux-svn-client-reviews.html 提到了一些封闭式商业SVN客户,我没有尝试过。我厌倦了在Gitk之外寻找Gitk的行为,然后继续前进,Git-SVN克隆了我感兴趣的仓库。难怪人们从SVN转移了SVN,因为它显然无法有效地显示出提交的差异。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top