简体   繁体   English

如何使用svn命令行:“ svn log -l 3”显示正确的历史记录?

[英]How to use svn command line: “svn log -l 3” to show proper history?

I work at a company for contracting work, and they use svn command line and text diff by ssh'ing to the Linux desktop. 我在一家公司从事合同工作,他们通过ssh'到Linux桌面使用svn命令行和文本差异。 For the command to show 3 log items: 对于显示3个日志项的命令:

svn log -l 3

I wonder why it doesn't show the history I just committed? 我想知道为什么它不显示我刚刚承诺的历史? The file is in one of the sub-directories. 该文件位于子目录之一中。

So for example, if I do a 例如,如果我做一个

svn log -l 3 foo/bar/abc.html

then the log history will show the commit I just did one minute ago. 然后日志历史记录将显示我在一分钟前所做的提交。 But the first command line I posted, it will only show the log that is 10 days ago and committed by someone else. 但是我发布的第一个命令行只会显示10天前由其他人提交的日志。 Is there a way to make it work like Tortoise or Versions, so that it will show the log history for the current directory and down, or for the whole project? 有没有办法使它像Tortoise或Versions一样工作,以便显示当前目录和向下目录或整个项目的日志历史记录?

This is because your commit has created a mixed-revision working copy. 这是因为您的提交已创建混合修订版工作副本。

See the "Why does svn log Not Show Me What I Just Committed?" 请参阅“为什么svn log不显示我刚刚提交的内容?” section of the svnbook here: http://svnbook.red-bean.com/en/1.7/svn.tour.history.html#svn.tour.history.log 此处的svnbook部分: http ://svnbook.red-bean.com/en/1.7/svn.tour.history.html#svn.tour.history.log

It'll reference the "Updates and commits are separate" section which goes into more details on mixed-revisions. 它将引用“更新和提交是分开的”部分,该部分将详细介绍混合修订。

You can either update your working copy with svn update before running the log command or you can use svn log -l 3 -r HEAD:1 to bypass the default revision range being BASE:1 (and to see the current log without having to update your working copy first). 您可以在运行log命令之前使用svn update更新工作副本,也可以使用svn log -l 3 -r HEAD:1绕过默认的修订范围BASE:1(并且无需更新即可查看当前日志)您的工作副本)。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM