sponsor Vim development Vim logo Vim Book Ad

svnTools : Perform subversion commands from within vim.

 script karma  Rating 20/10, Downloaded by 737  Comments, bugs, improvements  Vim wiki

created by
Javier Puigdevall
 
script type
utility
 
description
Allows to launch several svn commands from within vim.

Also at: https://github.com/javipv/svnTools

Use :Svnh to show a command help.

- Info commands:
    Svni                 : get current revision info.
    Svnif                : get current file revision info.

- Blame commands:
    Svnbl                : get blame of current file.
    Svnblv               : get verbose blame of current file.

- Status commands:
    Svnst                : show file's status (conceal symbols: X and ?).
    Svnsta               : show status files (show all symbols).
    Svnstf               : show current file status.
    Svnstd               : show current directory status.
    Svnsth               : show the svn status symbols' help.

- Log commands:
    Svnl [NUM]           : get subversion log (num. commits, defaults to 3000).
    Svnls PATTERN [NUM]  : log search pattern (num. commits, defaults to 3000).
    Svnlf FILEPATH       : show file log.

- Diff commands:
    Svndf                 : get diff of changes on current file.
    Svndd                : get diff of changes on current directory.
    Svnda                : get diff of changes on current workind directory.

- Diff files with vimdiff commands:
    Svnvda               : show (vimdiff) all files with changes (alows to skip binaries).
    SvnvdA               : show (vimdiff) selected files with changes (alows to skip binaries).
    Svnvdf                : show (vimdiff) current file changes.
    Svnvdd               : show (vimdiff) current directory changes.
    Svnvdr REV        : show revision log and open the selected revision changes with vimdiff.          
                                                                                                                                                                    
- Directory compare commands (sandbox compare):
    Svndc DIR1 DIR2        : show (diff) changes between two directories.
    SvndC DIR1 DIR2       : show (diff) changes between two directories, skip binaries.
    Svnvdc DIR1 DIR2      : show (vimdiff) changes between two directories.
    SvnvdC DIR1 DIR2     : show (vimdiff) changes between two directories, skip binaries, files not differing.
                                                                                                                                                                                                                                                                               - Revision commands:
    Svnr REV                     : get diff of selected revision number.
    Svncr REV                   : cat revision number

- Conflicts commands:
    Svnm [LAYOUT]            : merge all conflicts with vimdiff. Layouts: 0 1 2 (default layout: 2).
    Svnmf [LAYOUT]           : merge current file conflict with vimdiff. Layouts: 0 1 2 (default layout: 2).
    Svnmp FILE [LAYOUT]  : merge file conflict with vimdiff. Layouts: 0 1 2 (default layout: 2).
    Svnres [all]                     : perform svn resolve. Use 'all' to resolve all conflicts.
    Svnmh                            : show merge layout help.

- Password settings:
  Optional, if you don't want to use keyring or similar programs.
  The svn password will only be stored for the current vim session.
    let g:svnTools_userAndPsswd = 1
    let g:svnTools_svnUser = "MY_SVN_USER"
    let g:svnTools_storeSvnPsswd = 1
 
install details
Minimum version: Vim 7.0+
Recomended version: Vim 8.0+

Install vimball:
download svnTools_2.0.1.vmb
vim svnTools_2.0.1.vmb
:so %
:q
 

rate this script Life Changing Helpful Unfulfilling 
script versions (upload new version)

Click on the package to download.

package script version date Vim version user release notes
svnTools_2.0.1.vmb 2.0.1 2022-02-25 7.0 Javier Puigdevall - New: command Vdd, compare with vimdiff all files found on different directories.
    allows to filter files (flags: +fileX, -fileY), skip/keep-only binaries (flags: SB, BO) and/or skip/keep-only equal files (flags: SE, EO).
- New: command Vdf, compare current file with same file on a different directory.
    When the structure paths are the same in both sides, passing as argument the other working directory is enough. ex: 'Vdf ~/Projects/dir2/'
    When comparing directories on the same path, only need to change the directory name. ex: compare same file on sandbox1 with dir2: 'Vdf sandbox1 dir2'
    When comparing directories on the same path, only need to change the directory part to be replaced.ex: compare same file on dir1 with dir2: 'Vdf 1 2'
- New: commands SvnD, SvnDD and SvnDA. Advanced diff on path, allows to filter files (flags: +fileX, -fileY), and skip/keep-only binaries (flags: SB, BO).
- New: commands SvnVD, SvnVDD and SvnVDA. Advanced vimdiff on path, allows to filter files (flags: +fileX -fileY), and skip/keep-only binaries (flags: SB, BO).
- New: Svndc and Svnvdc admit flags SE and SB to skip equal files and binary files. use falgs C1 or C2 to check only changes on path1 or path2.
svnTools_2.0.0.vmb 2.0.0 2022-01-21 7.4 Javier Puigdevall - REFACTORING of the plugin to divide in different files.
- New: on SvnvdC and Svnvdc commands: allow to skip or keep only the files matching the required patterns.
- New: Svnedit command, not showing the plugint/svnTools.vim file.
  New autoload/svnTools/ folder to save the plugin files.
- New: save and restore changes' functions: Svncsv, Svncvd, Svncvdd, Svncr.
  Allowing to save, compare and restore changes.
  Every time we save changes a new  directory is created: _svnTools_changes_YYMMDD_HHMMSS/
  Every modified file is saved as: dir1___dir2___dir3__filename.ext
- New: Svnpwd command, enter user and password.
- New: on Svndvda, Svnvdd commands: allow user to select the files to perform the vimdiff.
- New: on Svndvda, Svnvdd commands: allow user to filter files adding splace separated filter patterns.
svnTools_1.0.6.vmb 1.0.6 2021-05-28 7.0 Javier Puigdevall - New: Svndvdr command, when placed on an svn log and diff file (obtained from Svnr, Svnda, Svndd or Svndf), for each file open the vimdiff of the current log's file revision.                                                                                                                                                                                                                            
- New configuration option g:svnTools_userAndPsswd to use non interactive snv and send user and password in the same command: let g:svnTools_userAndPsswd = 1                                                                                                                                                                                                                                  
- New options to manage svn user and password: g:svnTools_svnUser, g:svnTool_storeSvnPsswd.
svnTools_1.0.5.vmb 1.0.5 2021-02-26 7.0 Javier Puigdevall - New: Svnlr command, when placed on an svn log file, for each revision
  number get its log and diff changes.
- Fix Svnm command, treat status ' C ' as file in conflict.
- Fix Svnm command, treat status !.*C as file in conflict.
- Fix Svnm command, do not try opening merge tool when file in confict is not found.
- Fix GetStatusFilesList function, file path is last column not second one.
- New Svnvmb command, development command to create a vimball release of the plugin.
svnTools.vmb 1.0.4 2020-12-16 7.0 Javier Puigdevall - New on Svnda, Svndd, Svndf: do not allow to modify or save the revision file on vimdiff.                                                                                                                                                                                                                                    
- New Svndc command, show diff between files with changes on two different directories.                                                                                                                                                                                                                                      
- New Svndc command, show diff between files with changes on two different directories, skip binary files.                                                                                                                                                                                                                    
- New Svnmh command: show merge layout help.  
svnTools.vmb 1.0.3 2020-12-10 7.0 Javier Puigdevall - New SvnvdA command. For every modifed file, allows user to get vimdiff, skip (this/all/none) file,                                                                                                                                                                                                                          
    skip (this/all/none) binaries.                                                                                                                                                                                                                                                                                            
- New on Svnvdf/Svnvdd/Svnvda check if file is binary, ask user to skip binary files.                                                                                                                                                                                                                                        
- New on Svnvdc will now show only files with differecnes, omitt any files that do not differ.                                                                                                                                                                                                                                
- New Svnvdca command to show all changes between directories.                                                                                                                                                                                                                                                                
- Fix GetStatusFilesString issue affecting svnTools#VimDiffCompareDirChanges.                                                                                                                                                                                                                                                
- Add Svnm command to merge commit upon conflict.                                                                                                                                                                                                                                                                            
- Add Svnrv command to resolve commit conflicts.                                                                                                                                                                                                                                                                              
- Add Svnst commands to show svn status.                                                                                                                                                                                                                                                                                      
- Adapt to jobs.vim 0.1.0                                                                                                                                                                                                                                                                                                    
- Add Svnvdr command to show vimdiff on files modified on selected revision.
svnTools.tar.gz 1.01 2020-06-22 7.0 Javier Puigdevall Initial upload
ip used for rating: 13.58.112.1

If you have questions or remarks about this site, visit the vimonline development pages. Please use this site responsibly.
Questions about Vim should go to the maillist. Help Bram help Uganda.
   
Vim at Github