如何查看SVN工作副本中每个文件的修订号?

Cas*_*tro 6 svn version-control version

我在同一个工作副本中与另一个开发人员合作(我知道这是一个坏主意),我们通常会更新单个文件,现在我们有一些修订版本的文件和另一个版本的文件.如何查看包含各自修订号的文件列表?(工作副本在linux框中,我们正在使用svn命令行.

在此先感谢您的帮助

Dmi*_*kov 7

在您的工作副本中试试这个

svn info *
Run Code Online (Sandbox Code Playgroud)

要么

svn info -R *
Run Code Online (Sandbox Code Playgroud)

以递归方式查看所有文件和目录

您可以键入svn help info以查看其他选项


Sin*_*hak 5

svn -R list --verbose
Run Code Online (Sandbox Code Playgroud)

它会给出这样的输出

109 作者姓名 3818 2012 年 11 月 20 日 JSON/xyz.json


Cas*_*tro 0

最后,我使用了 Dmitry Yudakov 发布的命令和 js-rhino 中的一个小脚本的组合解决方案。现在我可以找到具有不同修订号的所有文件,执行以下操作:

svn info -R > tmp_info rhino read-svn.js | svn info -R > tmp_info rhino read-svn.js | grep -v 295

/* The script */ 
lines = readFile("tmp_info").split("\n");  
lines.pop();
String.prototype.trim = function() {
  return this.replace(/^\s+|\s+$/g,"");
}
var idx = 0;
var files = [];
files[0] = {};
var line;
for (i in lines) {
  line = lines[i].toString();
  if(line.length) { 
    key = line.split(':')[0];
    if(key == 'Name' || key == 'Revision' || key == 'Path')
      files[idx][key] = line.split(':')[1];
  } else {
    idx++;
    files[idx] = {};
  }
}

print( 'files : ' + files.length + "\n");
for (i = 0; i< files.length ; i++) {
  var file = files[i];
  if(typeof(file.Name) !== "undefined")
    print(" REVISION: " + file.Revision.trim() + ' -  ' + file.Path.trim() +'/' + file.Name.trim() );
}
Run Code Online (Sandbox Code Playgroud)