我使用svn将我的文本文件或我放在mac文件系统中的任何重要注释同步到我的服务器。因此,当我修改文件时,我使用Sublime来添加或删除svn-control下的文件,从而使用svn命令取消同步。
除了运行svn命令之外,我该如何解决?我知道我应该使用svn命令重命名或添加或删除文件,但如何不使用svn命令?在Windows中,我相信tortise SVN记录了这些变化,我们只需要提交但是有没有任何软件可以做同样的事情吗?
$ svn status
? MySql/MySQL_Start_On_Different_OS
! OS/Software/Nginx_Atmosphere.txt
! OS/Software/Nginx_Caching.txt
! OS/Software/Nginx_RpmInstallation.txt
! OS/Software/Nginx_Windows.txt
同样,我知道我可以通过svn add or svn remove <filename>
来修复上述状态。 Atleast有没有将!
转换为remove
和?
转换为add
的命令或脚本?
答案 0 :(得分:0)
至于问题的第一部分:既然你提到了TortoiseSVN,我认为你正在寻找一个svn的图形用户界面,它可以帮助你添加/删除文件。 Here是对OS X的可用客户端的简短概述。我个人使用过Cornerstone,并且对它有足够的满足感,虽然肯定有更便宜的选项,听起来也满足您的要求。
关于您正在寻找脚本解决方案的部分:使用
svn st | grep "^?" | awk '{print $2}' | xargs svn add
添加svn标记为unknown的所有文件(即?
)。使用
svn st | grep '^!' | awk '{print $2}' | xargs svn rm
删除所有已标记为已删除的文件(例如!
)。然后使用
svn ci -m "Your commit message goes here."