情况一:将项目中未加入版本控制的文件提交到版本库。
在使用WINDOW下的SVN客户端工具时,在提交一个项目的文件时,如果有未加入版本库的文件,这时可以先将未加入的文件选中,然后一起提交。
但在LINUX命令行中,如果一个项目中新创建了一个文件new.php,那么我们可以使用如下命令来进行版本的提交。
~@bash svn add new.php
~@bash svn ci -m=hqlong
但如果有多个文件时,我一直都是一个一个的添加。比如。有a.php,b.php,c.php.那么提交操作如下:
~@bash svn add a.php,b.php,c.php
~@bash ci -m=hqlong
一直以后,新添加的文件不多,所以也就没有注意这个。今天当我查看项目的版本状态时,发现很多文件都没有加入版本库,本想按照老方法一个一个的添加,但始终想着是否有另外一种方式,一次性全部提交。所以就请教了我的两位大学同学(小黑、杨煌)。答案如下:
将同一目录下的未加入版本库的文件提交到版本库。
~@bash svn add *
注意上面只是针对同一目录的文件,如果目录下还有目录,这时上面的命令提交就不行了。如果是二级目录的话。操作命令如下:
~@bash svn add */*
当然三目录依次类推。
~@bash svn add */*/*
那么如果里面有很多级目录,该怎么办呢?或者说根本不清楚究竟有多少级。
这时使用通配符“*”,来解决一切未知的答案。
~@bash svn add */**/*
注意上面第三个“*”,它代表了我们所担心的那个未知数。
情况二:更新或者提交源码时,不提交某一特定文件。
当很多人同时开发一个项目,项目的配置文件可能在不同的开发人员的机器上,会有不同。当每次更新整个项目时,希望更新全部的文件但除了配置文件以外。
又如配置文件为config.php.
这时我们可以使用正则来排除我们所不需要提交的代码。
提交代码命令如下
~@bash svn ci !(config.php) -m=hqlong
表示除了config.php以外的代码,都提交到版本库中。
更新代码命令如下
~@bash svn up !(config.php)
表示除了config.php的所有代码都更新。