“svn log”没有显示所有最近的提交

时间:2013-05-28 08:14:03

标签: svn

注意:对于经验丰富的SVN用户来说,这可能是一个明智的选择,但它让我困扰了很长时间......所以我希望这会帮助像我这样的人!

从命令行发出svn log后,我注意到最近几条提交消息丢失了。我知道这些消息已正确保存在我的存储库中,因为它们出现在我的SVN客户端(RapidSVN)中。我无法弄清楚为什么使用命令行版本的svn看不到它们。

以下答案......

4 个答案:

答案 0 :(得分:99)

问题与我对svn log显示的内容的理解不足有关。如果没有提供其他参数,它将从日志的工作副本输出日志消息,而不是从实际存储库输出。因此,发布svn update将使工作副本与存储库保持同步,然后svn log将反映所有最近的提交。咄! ; - )

答案 1 :(得分:14)

如果您希望在不更新的情况下查看完整日志(正如我在处理旧版本时有时会这样做),您可以运行:

svn log -r HEAD:0

或者,为了便于查看:

svn log -r HEAD:0 | less

答案 2 :(得分:0)

您还可以通过指定存储库的URL明确告诉svn log去服务器。

例如

svn log svn://your-server/trunk

或更概括地说:

svn log ^/

答案 3 :(得分:0)

我今天遇到了同样的问题,并以为我丢失了更改而感到震惊。

它的发生仅仅是由于颠覆的怪异。工作副本的概念设置为最初签出的修订版。工作副本修订不会被新的提交更改。需要svn update才能将工作副本修订版本更新/同步到存储库。不确定我是否会在每种情况下都这样做。

PS:git好得多。