To be a better coder
分类: LINUX
2018-01-18 14:42:14
如果你SVN客户端是用TortoiseSVN的话,先在SVN新建一个空的版本库并分配给你读写权限
(这一步通常需要SVN管理员才能操作),
然后用TortoiseSVN从客户端将这个空版本库checkout出来,
这会得到一个含隐藏的.svn文件夹的文件夹,然后将你的项目内容复制到这个文件夹中,
然后对这个文件夹点鼠标右键,选择commit,勾选所有要上传的文件,然后点确定就OK了。
======================================================
======================================================
======================================================
情况一:将项目中未加入版本控制的文件提交到版本库。 在使用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的所有代码都更新。==========================================================================================================
=====================================================1、将文件checkout到本地目录
svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/domain 简写:svn co2、往版本库中添加新的文件
svn add file 例如:svn add test.php(添加test.php) svn add *.php(添加当前目录下所有的php文件)3、将改动的文件提交到版本库
svn commit -m "LogMessage" [-N] [--no-unlock] PATH(如果选择了保持锁,就使用--no-unlock开关) 例如:svn commit -m "add test file for my test" test.php 简写:svn ci
注:需使用svn add 向版本库添加新文件后,才可使用 svn ci将文件提交到版本库。