问题描述:
在商城中通过网页上传的png文件无法自动添加到版本库中。
查找过程:
通过程序分析,增加的主要是数据文件,主要分布在data目录中。
svn list /home/ggg --depth=infinity --password=123 可查看当前已在版本库中的文件列表。
svn info /home/ggg 看查看版本情况
通过分析知道,在页面中添加的文件未在版本管理中,需要手动添加到版本控制中,并提交至版本控制。
解决办法,针对 data目录,增加shell文件。
#!/bin/sh
svn add /home/ggg/data --depth=infinity --force --password=123
svn ci -m "commit automatic" /home/ggg --password=123
可以使用svn add的--force递归到版本化的目录下
svn常用命令可参考博文http://blog.csdn.net/limingzhong198/article/details/22394809 Linux(CentOS)下SVN命令使用实例
0 、add命令:
查看帮助:[root@samba ~]# svn add --help;
命令说明:Put files and directories under version control, scheduling them for addition to repository. They will be added in next commit.
即:这个说明的红色加粗部分很重要,后面说明;
使用方法:add PATH...;
命令参数:分为 Valid options 和 Global options两种(help命令可查,此处略);
使用实例:[root@samba ant]# svn add *.java(可以使用通配符)
ant目录的完整目录是:/trunk/src/com/ant,在添加项目之前我们需要执行 cd /trunk/src/com/ant 命令,否则会出现问题。
过程结果:
svn add test.java
问题说明 1、重复添加问题:
过程结果:
svn add *.java
提示结果:‘Test.java’已经处于svn版本控制执行。
问题说明 2、退出 /trunk/src/com/ant 目录,再执行svn add *.java:
过程结果:
svn add *.java
svn . not a working copy
提示结果:‘.’不在工作目录。
问题说明 3、在 /trunk/src/com/ant 目录下新建目录 test,在 test 目录下新建 Test.java 文件,然后在 test 目录下再执行 svn add *.java:
过程结果:
提示结果:‘.’不在工作目录。
我们回到 test 目录上级目录 ant,在执行 svn add *
过程结果:
可以看到:我们新建的目录和文件都添加成功。
注:在此实例中,我们需要注意的是,我们大部分操作都必须处于svn版本控制的工作目录。
1、checkout版本库
先把upload 目录改名;
svn co svn://127.0.0.1/lbypmall /home/upload
2、更新版本库 svn update svn://127.0.0.1/lbypmall $WEB --username mxh --password 123 --no-auth-cache
3、提交(commit)本地文档到服务器 命令:svn commit -m “” [directory|file] svn ci -m “” [directory|file]
4、更新(update)服务器数据到本地 命令:svn update [directory|file] svn up [directory|file]
5、往版本库中添加新的文件 svn add file 例如:svn add test.php(添加test.php) svn add *.php(添加当前目录下所有的php文件)
6、查看日志 命令:svn log [directory|file]