<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>GzV8.com &#187; svn</title>
	<atom:link href="http://www.gzv8.com/archives/tag/svn/feed" rel="self" type="application/rss+xml" />
	<link>http://www.gzv8.com</link>
	<description>互联网引擎</description>
	<lastBuildDate>Thu, 06 Jan 2011 04:08:28 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Nginx 配置中，屏蔽.svn文件夹的正则表达式写法</title>
		<link>http://www.gzv8.com/archives/179</link>
		<comments>http://www.gzv8.com/archives/179#comments</comments>
		<pubDate>Thu, 11 Mar 2010 07:09:29 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Nginx]]></category>
		<category><![CDATA[cvs]]></category>
		<category><![CDATA[svn]]></category>
		<category><![CDATA[屏蔽]]></category>

		<guid isPermaLink="false">http://www.gzv8.com/?p=179</guid>
		<description><![CDATA[项目使用了 svn 同步。
在web目录下，所有的文件夹中都会有 .svn 文件。
该文件在Linux系统中是隐藏的，但在Nginx的http访问，却能直接用url来进入。
这么相当危险，人家很可能能通过这样获取到你的源码。
所以，我们要在 Nginx 配置中把这一目录的访问都拒绝掉。
由于其 .svn 的目录名较为特殊，需要用到正则表达式，写法如下：
        location ~ ^(.*)\/\.svn\/{
        deny all;
        }
同理，.cvs 也需要这样。
]]></description>
			<content:encoded><![CDATA[<p>项目使用了 svn 同步。<br />
在web目录下，所有的文件夹中都会有 .svn 文件。<br />
该文件在Linux系统中是隐藏的，但在Nginx的http访问，却能直接用url来进入。<br />
这么相当危险，人家很可能能通过这样获取到你的源码。</p>
<p>所以，我们要在 Nginx 配置中把这一目录的访问都拒绝掉。<br />
由于其 .svn 的目录名较为特殊，需要用到正则表达式，写法如下：</p>
<p>        location ~ ^(.*)\/\.svn\/{<br />
        deny all;<br />
        }</p>
<p>同理，.cvs 也需要这样。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gzv8.com/archives/179/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>linux下svn命令大全</title>
		<link>http://www.gzv8.com/archives/104</link>
		<comments>http://www.gzv8.com/archives/104#comments</comments>
		<pubDate>Thu, 11 Mar 2010 04:35:20 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux & Unix]]></category>
		<category><![CDATA[svn]]></category>

		<guid isPermaLink="false">http://www.gzv8.com/?p=104</guid>
		<description><![CDATA[1、将文件checkout到本地目录
svn checkout path（path是服务器上的目录）
例如：svn checkout svn://192.168.1.1/pro/domain
简写：svn co
2、往版本库中添加新的文件
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
4、加锁/解锁
svn lock -m “LockMessage“ [--force] PATH
例如：svn lock -m “lock test file“ test.php
svn unlock PATH
5、更新到某个版本
svn update -r m path
例如：
svn update如果后面没有目录，默认将当前目录以及子目录下的所有文件都更新到最新版本。
svn update -r 200 test.php(将版本库中的文件test.php还原到版本200)
svn update test.php(更新，于版本库同步。如果在提交的时候提示过期的话，是因为冲突，需要先update，修改文件，然后清除svn resolved，最后再提交commit)
简写：svn up
6、查看文件或者目录状态
1）svn status [...]]]></description>
			<content:encoded><![CDATA[<p>1、将文件checkout到本地目录<br />
svn checkout path（path是服务器上的目录）<br />
例如：svn checkout svn://192.168.1.1/pro/domain<br />
简写：svn co<br />
2、往版本库中添加新的文件<br />
svn add file<br />
例如：svn add test.php(添加test.php)<br />
svn add *.php(添加当前目录下所有的php文件)<br />
3、将改动的文件提交到版本库<br />
svn commit -m “LogMessage“ [-N] [--no-unlock] PATH(如果选择了保持锁，就使用–no-unlock开关)<br />
例如：svn commit -m “add test file for my test“ test.php<br />
简写：svn ci<br />
4、加锁/解锁<br />
svn lock -m “LockMessage“ [--force] PATH<br />
例如：svn lock -m “lock test file“ test.php<br />
svn unlock PATH<br />
5、更新到某个版本<br />
svn update -r m path<br />
例如：<br />
svn update如果后面没有目录，默认将当前目录以及子目录下的所有文件都更新到最新版本。<br />
svn update -r 200 test.php(将版本库中的文件test.php还原到版本200)<br />
svn update test.php(更新，于版本库同步。如果在提交的时候提示过期的话，是因为冲突，需要先update，修改文件，然后清除svn resolved，最后再提交commit)<br />
简写：svn up<br />
6、查看文件或者目录状态<br />
1）svn status path（目录下的文件和子目录的状态，正常状态不显示）<br />
【?：不在svn的控制中；M：内容被修改；C：发生冲突；A：预定加入到版本库；K：被锁定】<br />
2）svn status -v path(显示文件和子目录状态)<br />
第一列保持相同，第二列显示工作版本号，第三和第四列显示最后一次修改的版本号和修改人。<br />
注：svn status、svn diff和 svn revert这三条命令在没有网络的情况下也可以执行的，原因是svn在本地的.svn中保留了本地版本的原始拷贝。<br />
简写：svn st<br />
7、删除文件<br />
svn delete path -m “delete test fle“<br />
例如：svn delete svn://192.168.1.1/pro/domain/test.php -m “delete test file”<br />
或者直接svn delete test.php 然后再svn ci -m ‘delete test file‘，推荐使用这种<br />
简写：svn (del, remove, rm)<br />
8、查看日志<br />
svn log path<br />
例如：svn log test.php 显示这个文件的所有修改记录，及其版本号的变化<br />
9、查看文件详细信息<br />
svn info path<br />
例如：svn info test.php<br />
10、比较差异<br />
svn diff path(将修改的文件与基础版本比较)<br />
例如：svn diff test.php<br />
svn diff -r m:n path(对版本m和版本n比较差异)<br />
例如：svn diff -r 200:201 test.php<br />
简写：svn di<br />
11、将两个版本之间的差异合并到当前文件<br />
svn merge -r m:n path<br />
例如：svn merge -r 200:205 test.php（将版本200与205之间的差异合并到当前文件，但是一般都会产生冲突，需要处理一下）<br />
12、SVN 帮助<br />
svn help<br />
svn help ci<br />
——————————————————————————<br />
以上是常用命令，下面写几个不经常用的<br />
——————————————————————————<br />
13、版本库下的文件和目录列表<br />
svn list path<br />
显示path目录下的所有属于版本库的文件和目录<br />
简写：svn ls<br />
14、创建纳入版本控制下的新目录<br />
svn mkdir: 创建纳入版本控制下的新目录。<br />
用法: 1、mkdir PATH…<br />
2、mkdir URL…<br />
创建版本控制的目录。<br />
1、每一个以工作副本 PATH 指定的目录，都会创建在本地端，并且加入新增<br />
调度，以待下一次的提交。<br />
2、每个以URL指定的目录，都会透过立即提交于仓库中创建。<br />
在这两个情况下，所有的中间目录都必须事先存在。<br />
15、恢复本地修改<br />
svn revert: 恢复原始未改变的工作副本文件 (恢复大部份的本地修改)。revert:<br />
用法: revert PATH…<br />
注意: 本子命令不会存取网络，并且会解除冲突的状况。但是它不会恢复<br />
被删除的目录<br />
16、代码库URL变更<br />
svn switch (sw): 更新工作副本至不同的URL。<br />
用法: 1、switch URL [PATH]<br />
2、switch –relocate FROM TO [PATH...]<br />
1、更新你的工作副本，映射到一个新的URL，其行为跟“svn update”很像，也会将<br />
服务器上文件与本地文件合并。这是将工作副本对应到同一仓库中某个分支或者标记的<br />
方法。<br />
2、改写工作副本的URL元数据，以反映单纯的URL上的改变。当仓库的根URL变动<br />
(比如方案名或是主机名称变动)，但是工作副本仍旧对映到同一仓库的同一目录时使用<br />
这个命令更新工作副本与仓库的对应关系。<br />
17、解决冲突<br />
svn resolved: 移除工作副本的目录或文件的“冲突”状态。<br />
用法: resolved PATH…<br />
注意: 本子命令不会依语法来解决冲突或是移除冲突标记；它只是移除冲突的<br />
相关文件，然后让 PATH 可以再次提交。<br />
18、输出指定文件或URL的内容。<br />
svn cat 目标[@版本]…如果指定了版本，将从指定的版本开始查找。<br />
svn cat -r PREV filename &gt; filename (PREV 是上一版本,也可以写具体版本号,这样输出结果是可以提交的)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gzv8.com/archives/104/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

