首页 文章

svn在本地副本中修改的文件列表

提问于
浏览
56

我使用Tortoise客户端来检查/提交我对SVN的更改 . 但我发现这有点困难,因为我无法找到本地副本中更改的所有文件的列表 . 有没有我忽略的捷径或什么?

我是SVN的新手 . 仅供参考 .

12 回答

  • 0

    如果你真的想列出 modified files only ,你可以通过引导"M"来减少svn st的输出,这表明文件已被修改 . 我会这样做:

    svn st | grep ^M
    
  • 7

    svn status | grep 'M ' 在MacOSX上运行正常 .

    我刚试过这个 .

  • 2

    如果您只需要文件名,并且还想要添加任何文件(A) .

    svn st | grep ^[AM] | cut -c9-
    

    注意:前7列是一个字符宽,后跟一个空格,然后是文件名 .

  • 0

    这应该在Windows中执行:svn stat |找到“M”

  • -1

    svn状态| grep ^ M将列出被修改的文件 . M - 代表修改:)

  • 10

    龟甲中的“检查修改”命令将显示工作副本中所有已更改文件的列表 . “Commit”也会显示所有已更改的文件(然后您可以提交) . “还原”还会显示已更改的文件(然后您可以还原) .

  • 1

    我不熟悉乌龟,但是对于linux的颠覆,我会输入

    svn status
    

    一些谷歌搜索告诉我,龟也支持命令行突击队,在包含svn存储库的文件夹中尝试svn状态 .

  • 45

    我无法工作 svn status -q . 假设你在linux盒子上,只看到被修改的文件,运行: svn status | grep 'M ' 在Windows上我不知道你会做什么,也许是'FindStr'

  • 111

    下面的命令将在Windows中单独显示修改过的文件 .

    svn status | findstr "^M"
    
  • 30

    如上所述,您必须在GUI中使用 SVN Check for modification ,在CLI中使用 tortoiseproc.exe /command:repostatus /path:"<path-to-version-control-file-or-directory>" 来查看与 <path-to-version-control-file-or-directory> 的根相关的更改 .

    遗憾的是,但是此命令不会显示所有本地更改,它只会显示与请求的目录根相关的更改 . 单独进行的更改(如root子目录中的独立检出或孤立外部目录)将显示为Unversioned或Nested,您可能会错过提交/查找它们 .

    要避免这种情况,您必须调用 tortoiseproc.exe /command:repostatus /pathfile:"<path-to-file-with-list-of-items-to-lookup-from>" (请参阅命令行上的详细文档:https://tortoisesvn.net/docs/nightly/TortoiseSVN_en/tsvn-automation.html),或使用一些3dparty应用程序/实用程序/脚本来包装调用 .

    我已经编写了自己的一组脚本 for Windows 来自动调用 Total Commanderhttps://sf.net/p/contools/contools/HEAD/tree/trunk/Scripts/Tools/ToolAdaptors/totalcmd/README_EN.txt(搜索 TortoiseSVN

    - Opens TortoiseSVN status dialog for a set of WC directories (always opens to show unversioned changes).

    Command:   call_nowindow.vbs
    Arguments: tortoisesvn\TortoiseProcByNestedWC.bat /command:repostatus "%P" %S
    

    - Opens TortoiseSVN commit dialogs for a set of WC directories (opens only if has not empty versioned changes).

    Command:   call_nowindow.vbs
    Arguments: tortoisesvn\TortoiseProcByNestedWC.bat /command:commit "%P" %S
    

    有关最新详细信息,请参阅 README_EN.txt (您必须在使用之前执行 configure.bat 并自行复制其余脚本,如 call_nowindow.vbs ) .

  • 3

    使用Powershell,你可以这样做:

    # Checks for updates and changes in working copy.
    # Regex: Excludes unmodified (first 7 columns blank). To exclude more add criteria to negative look ahead.
    # -u: svn gets updates
    $regex = '^(?!\s{7}).{7}\s+(.+)';
    svn status -u | %{ if($_ -match $regex){ $_ } };
    

    这将包括 property 变化 . 这些显示在第2列中 . 它还将捕获第3-7列中显示的文件中的其他差异 .

    资料来源:

  • 0

    右键单击文件夹 - >单击Tortoise SVN - >检查是否有修改

相关问题