• How to use “svn add” recursively in Linux shell?


    This command will add any un-versioned files listed in svn st command output to subversion.

    Note that any filenames containing whitespace in the svn stat output will not be added. Further, odd behavior might occur if any filenames contain '?'s.

    svn st | grep ? | tr -s ' ' | cut -d ' ' -f 2 | xargs svn add
    

    or if you are good at awk:

    svn st | grep ? | awk '{print $2}' | xargs svn add
    

    Explanation:

    Step 1: svn st command

    [user@xxx rails]$svn st
    ?       app/controllers/application.rb
    M       app/views/layouts/application.html.erb
    ?       config/database.yml
    

    Step 2: We grep the un-versioned file with grep command:

    [user@xxx rails]$svn st | grep ?
    ?       app/controllers/application.rb
    ?       config/database.yml
    

    Step 3: Then remove the squeeze the space between ? and file path by using tr command:

    [user@xxx rails]$svn st | grep ? | tr -s ' '
    ? app/controllers/application.rb
    ? config/database.yml
    </pre>
    

    Step 4: Then select second column from the output by using cut command:

    [user@xxx rails]$svn st | grep ? | tr -s ' ' | cut -d ' ' -f 2
    app/controllers/application.rb
    config/database.yml
    

    Step 5: Finally, passing these file paths as standard input to svn add command:

    [user@xxx rails]$svn st | grep ? | tr -s ' ' | cut -d ' ' -f 2 | xargs svn add
    A       app/controllers/application.rb
    A       config/database.yml
    

     

  • 相关阅读:
    1034: [ZJOI2008]泡泡堂BNB
    1084: [SCOI2005]最大子矩阵
    1046: [HAOI2007]上升序列
    LIS最长上升子序列模板
    1070: [SCOI2007]修车
    1057: [ZJOI2007]棋盘制作
    1066: [SCOI2007]蜥蜴
    1059: [ZJOI2007]矩阵游戏
    1050: [HAOI2006]旅行comf
    1083: [SCOI2005]繁忙的都市
  • 原文地址:https://www.cnblogs.com/AloneSword/p/5095890.html
Copyright © 2020-2023  润新知