<?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>sevenJ&#039;s Chaos</title>
	<atom:link href="http://www.sevenj.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.sevenj.org</link>
	<description>something about something!</description>
	<lastBuildDate>Sun, 09 May 2010 11:06:13 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>linux下的几个画图小工具</title>
		<link>http://www.sevenj.org/2009/07/26/linux%e4%b8%8b%e7%9a%84%e5%87%a0%e4%b8%aa%e7%94%bb%e5%9b%be%e5%b0%8f%e5%b7%a5%e5%85%b7/</link>
		<comments>http://www.sevenj.org/2009/07/26/linux%e4%b8%8b%e7%9a%84%e5%87%a0%e4%b8%aa%e7%94%bb%e5%9b%be%e5%b0%8f%e5%b7%a5%e5%85%b7/#comments</comments>
		<pubDate>Sun, 26 Jul 2009 15:41:40 +0000</pubDate>
		<dc:creator>sevenJ</dc:creator>
				<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://www.sevenj.org/2009/07/26/linux%e4%b8%8b%e7%9a%84%e5%87%a0%e4%b8%aa%e7%94%bb%e5%9b%be%e5%b0%8f%e5%b7%a5%e5%85%b7/</guid>
		<description><![CDATA[linux下的几个用来方便把实验数据转换成图形表示的小工具： gnuplot： plotutils： graphviz：（其实一点都不小）。 egpyt:create call graph from gcc RTL dump.]]></description>
			<content:encoded><![CDATA[<p>linux下的几个用来方便把实验数据转换成图形表示的小工具：</p>
<p>gnuplot：</p>
<p>plotutils：</p>
<p>graphviz：（其实一点都不小）。</p>
<p>egpyt:create call graph from gcc RTL dump.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sevenj.org/2009/07/26/linux%e4%b8%8b%e7%9a%84%e5%87%a0%e4%b8%aa%e7%94%bb%e5%9b%be%e5%b0%8f%e5%b7%a5%e5%85%b7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>mysqlbinlog显示&#8217;load data infile&#8217;时产生临时文件</title>
		<link>http://www.sevenj.org/2009/07/26/mysqlbinlog%e6%98%be%e7%a4%baload-data-infile%e6%97%b6%e4%ba%a7%e7%94%9f%e4%b8%b4%e6%97%b6%e6%96%87%e4%bb%b6/</link>
		<comments>http://www.sevenj.org/2009/07/26/mysqlbinlog%e6%98%be%e7%a4%baload-data-infile%e6%97%b6%e4%ba%a7%e7%94%9f%e4%b8%b4%e6%97%b6%e6%96%87%e4%bb%b6/#comments</comments>
		<pubDate>Sun, 26 Jul 2009 15:34:37 +0000</pubDate>
		<dc:creator>sevenJ</dc:creator>
				<category><![CDATA[mysql]]></category>
		<category><![CDATA[mysqlbinlog]]></category>

		<guid isPermaLink="false">http://www.sevenj.org/2009/07/26/mysqlbinlog%e6%98%be%e7%a4%baload-data-infile%e6%97%b6%e4%ba%a7%e7%94%9f%e4%b8%b4%e6%97%b6%e6%96%87%e4%bb%b6/</guid>
		<description><![CDATA[在用mysqlbinlog查看binlog的时候，碰到&#8217;load data infile&#8217;时，mysqlbinlog会在tmp-dir目录下生成临时文件来模拟&#8217;load data infile&#8217;语句的执行。]]></description>
			<content:encoded><![CDATA[<p>在用mysqlbinlog查看binlog的时候，碰到&#8217;load data infile&#8217;时，mysqlbinlog会在tmp-dir目录下生成临时文件来模拟&#8217;load data infile&#8217;语句的执行。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sevenj.org/2009/07/26/mysqlbinlog%e6%98%be%e7%a4%baload-data-infile%e6%97%b6%e4%ba%a7%e7%94%9f%e4%b8%b4%e6%97%b6%e6%96%87%e4%bb%b6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FLUSH TABLES WITH READ LOCK已修复的bug</title>
		<link>http://www.sevenj.org/2009/07/26/flush-tables-with-read-lock%e5%b7%b2%e4%bf%ae%e5%a4%8d%e7%9a%84bug/</link>
		<comments>http://www.sevenj.org/2009/07/26/flush-tables-with-read-lock%e5%b7%b2%e4%bf%ae%e5%a4%8d%e7%9a%84bug/#comments</comments>
		<pubDate>Sun, 26 Jul 2009 15:31:38 +0000</pubDate>
		<dc:creator>sevenJ</dc:creator>
				<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://www.sevenj.org/2009/07/26/flush-tables-with-read-lock%e5%b7%b2%e4%bf%ae%e5%a4%8d%e7%9a%84bug/</guid>
		<description><![CDATA[&#160;&#160;&#160; 在mysql-4.1.3之前，&#8217;flush tables with read lock’ does not block commit; 所以在执行mysqldump的时候想要得到一致的数据需要shutdown mysqld。]]></description>
			<content:encoded><![CDATA[<p>&#160;&#160;&#160; 在mysql-4.1.3之前，&#8217;flush tables with read lock’ does not block commit; 所以在执行mysqldump的时候想要得到一致的数据需要shutdown mysqld。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sevenj.org/2009/07/26/flush-tables-with-read-lock%e5%b7%b2%e4%bf%ae%e5%a4%8d%e7%9a%84bug/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>rrdtool的使用</title>
		<link>http://www.sevenj.org/2009/07/26/rrdtool%e7%9a%84%e4%bd%bf%e7%94%a8/</link>
		<comments>http://www.sevenj.org/2009/07/26/rrdtool%e7%9a%84%e4%bd%bf%e7%94%a8/#comments</comments>
		<pubDate>Sun, 26 Jul 2009 15:30:19 +0000</pubDate>
		<dc:creator>sevenJ</dc:creator>
				<category><![CDATA[software]]></category>
		<category><![CDATA[rrdtool]]></category>

		<guid isPermaLink="false">http://www.sevenj.org/2009/07/26/rrdtool%e7%9a%84%e4%bd%bf%e7%94%a8/</guid>
		<description><![CDATA[rrdtool采用的是自己的round robin database.理解它的内部存储格式就可以知道怎么使用rrdtool。rrdtool有很多命令，其中最主要的是create命令。 rrdtool create 用法： rrdtool create filename [--start&#124;-b start time] [--step&#124;-s step] [DS:ds-name:DST:dst arguments] [RRA:CF:cf arguments] 其中start time是表示数据只记录大于这个时间的值，它是以1970-01-01开始的秒数。 step表示每次记录的时间间隔。 DS:ds-name:DST:dst arguments DS是关键字，ds-name是数据库内部表示的名字。DST有GAUGE, COUNTER, DERIVE, ABSOLUTE，COMPUTE几种。 DST defines the Data Source Type. The remaining arguments of a data source entry depend on the data source type. For GAUGE, COUNTER, DERIVE, and ABSOLUTE the format [...]]]></description>
			<content:encoded><![CDATA[<p>rrdtool采用的是自己的round robin database.理解它的内部存储格式就可以知道怎么使用rrdtool。rrdtool有很多命令，其中最主要的是create命令。</p>
<p>rrdtool create 用法：</p>
<p>rrdtool create filename [--start|-b start time] [--step|-s step] [DS:ds-name:DST:dst arguments] [RRA:CF:cf arguments]</p>
<p>其中start time是表示数据只记录大于这个时间的值，它是以1970-01-01开始的秒数。</p>
<p>step表示每次记录的时间间隔。</p>
<p>DS:ds-name:DST:dst arguments</p>
<p>DS是关键字，ds-name是数据库内部表示的名字。DST有GAUGE, COUNTER, DERIVE, ABSOLUTE，COMPUTE几种。</p>
<p>DST defines the Data Source Type. The remaining arguments of a data source entry depend on the data    <br />source type. For GAUGE, COUNTER, DERIVE, and ABSOLUTE the format for a data source entry is:     <br />DS:ds-name:GAUGE | COUNTER | DERIVE | ABSOLUTE:heartbeat:min:max</p>
<p>For COMPUTE data sources, the format is:    <br />DS:ds-name:COMPUTE:rpn-expression</p>
<p>前4种的区别:</p>
<div align="left">
<pre>     Values       = 300, 600, 900, 1200
     Step         = 300 seconds
     COUNTER DS   =    1,  1,   1,    1
     DERIVE DS    =    1,  1,   1,    1   (可以为负数）
      ABSOLUTE DS  =    1,  2,   3,    4
     GAUGE DS     = 300, 600, 900, 1200

RRA:CF:cf argumnets
    RRA:AVERAGE | MIN | MAX | LAST:xff:steps:rows
    RRA是关键字，CF为集合函数，可以是MIN,MAX,AVERAGE,LAST.xff表示超过这个数是认为unknow，
    steps表示计算的间隔，rows表示记录的行数。</pre>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.sevenj.org/2009/07/26/rrdtool%e7%9a%84%e4%bd%bf%e7%94%a8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>rrdtool简单教程</title>
		<link>http://www.sevenj.org/2009/07/26/rrdtool%e7%ae%80%e5%8d%95%e6%95%99%e7%a8%8b/</link>
		<comments>http://www.sevenj.org/2009/07/26/rrdtool%e7%ae%80%e5%8d%95%e6%95%99%e7%a8%8b/#comments</comments>
		<pubDate>Sun, 26 Jul 2009 15:28:14 +0000</pubDate>
		<dc:creator>sevenJ</dc:creator>
				<category><![CDATA[software]]></category>
		<category><![CDATA[rrdtool]]></category>

		<guid isPermaLink="false">http://www.sevenj.org/2009/07/26/rrdtool%e7%ae%80%e5%8d%95%e6%95%99%e7%a8%8b/</guid>
		<description><![CDATA[rrdtool教程 介绍： RRDtool是代表 “Round Robin Database tool” 。 所谓的“Round Robin” 其实是一种存储数据的方式，使用固定大小的空间来存储数据，并有一个指针指向最新的数据的位置。我们可以把用于存储数据的数据库的空间看成一个圆，上面有很多刻度。这些刻度所在的位置就代表用于存储数据的地方。所谓指针，可以认为是从圆心指向这些刻度的一条直线。指针会随着数据的读写操作自动移动。要注意的是，这个圆没有起点和终点，所以指针可以一直移动，而不用担心到达终点后就无法前进的问题。在一段时间后，当所有的空间都存满了数据，就又从头开始存放。这样整个存储空间的大小就是一个固定的数值。所以RRDtool就是使用类似的方式来存放数据的工具，RRDtool所使用的数据库文件的后缀名是 &#8216;.rrd’。 要加深理解rrdtool的使用，可以先了解round robin database的原理及存储结构。 rrd文件结构： char cookie[4] &#8216;RRD\0&#8242; RRD文件标志 char version[5] &#8217;0003\0&#8242; RRD文件版本 double float_cookie 8.642135E130 Magic number unsigned long ds_cnt 定义的DS个数 unsigned long rra_cnt 定义的RRA个数 unsigned long pdp_step pdp时间间隔 unival par[10] 保留，未使用 char ds_nam[DS_NAM_SIZE] DS的名称，DS_NAM_SIZE=20 %19[a-zA-Z0-9_-] char dst[DST_SIZE] DS的类型，DST_SIZE=20。%19[A-Z] 目前有5种： GAUGE COUNTER DERIVE [...]]]></description>
			<content:encoded><![CDATA[<h3>rrdtool教程</h3>
<h5>介绍：</h5>
<p>RRDtool是代表 “Round Robin Database tool” 。</p>
<p>所谓的“Round Robin” 其实是一种存储数据的方式，使用固定大小的空间来存储数据，并有一个指针指向最新的数据的位置。我们可以把用于存储数据的数据库的空间看成一个圆，上面有很多刻度。这些刻度所在的位置就代表用于存储数据的地方。所谓指针，可以认为是从圆心指向这些刻度的一条直线。指针会随着数据的读写操作自动移动。要注意的是，这个圆没有起点和终点，所以指针可以一直移动，而不用担心到达终点后就无法前进的问题。在一段时间后，当所有的空间都存满了数据，就又从头开始存放。这样整个存储空间的大小就是一个固定的数值。所以RRDtool就是使用类似的方式来存放数据的工具，RRDtool所使用的数据库文件的后缀名是 &#8216;.rrd’。</p>
<p>要加深理解rrdtool的使用，可以先了解round robin database的原理及存储结构。</p>
<h5>rrd文件结构：</h5>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td valign="top" width="235">
<p>char cookie[4]</p>
</td>
<td valign="top" width="61">
<p>&#8216;RRD\0&#8242;</p>
</td>
<td valign="top" width="272">
<p>RRD文件标志</p>
</td>
</tr>
<tr>
<td valign="top" width="235">
<p>char version[5]</p>
</td>
<td valign="top" width="61">
<p>&#8217;0003\0&#8242;</p>
</td>
<td valign="top" width="272">
<p>RRD文件版本</p>
</td>
</tr>
<tr>
<td valign="top" width="235">
<p>double float_cookie</p>
</td>
<td valign="top" width="61">
<p>8.642135E130</p>
</td>
<td valign="top" width="272">
<p>Magic number</p>
</td>
</tr>
<tr>
<td valign="top" width="235">
<p>unsigned long ds_cnt</p>
</td>
<td valign="top" width="61"></td>
<td valign="top" width="272">
<p>定义的DS个数</p>
</td>
</tr>
<tr>
<td valign="top" width="235">
<p>unsigned long rra_cnt</p>
</td>
<td valign="top" width="61"></td>
<td valign="top" width="272">
<p>定义的RRA个数</p>
</td>
</tr>
<tr>
<td valign="top" width="235">
<p>unsigned long pdp_step</p>
</td>
<td valign="top" width="61"></td>
<td valign="top" width="272">
<p>pdp时间间隔</p>
</td>
</tr>
<tr>
<td valign="top" width="235">
<p>unival par[10]</p>
</td>
<td valign="top" width="61"></td>
<td valign="top" width="272">
<p>保留，未使用</p>
</td>
</tr>
<tr>
<td valign="top" width="235">
<p>char ds_nam[DS_NAM_SIZE]</p>
</td>
<td valign="top" width="61"></td>
<td valign="top" width="272">
<p>DS的名称，DS_NAM_SIZE=20</p>
<p>%19[a-zA-Z0-9_-]</p>
</td>
</tr>
<tr>
<td valign="top" width="235">
<p>char dst[DST_SIZE]</p>
</td>
<td valign="top" width="61"></td>
<td valign="top" width="272">
<p>DS的类型，DST_SIZE=20。%19[A-Z]</p>
<p>目前有5种：</p>
<p><i>GAUGE COUNTER </i></p>
<p><i>DERIVE ABSOLUTE</i></p>
<p><i>COMPUTE</i></p>
</td>
</tr>
<tr>
<td valign="top" width="235">
<p>unival par[10]</p>
</td>
<td valign="top" width="61"></td>
<td valign="top" width="272">
<p>DS的参数队列，</p>
<p>前4种的参数有：<i>heartbeat</i><b>:</b><i>min</i><b>:</b><i>max</i></p>
<p>后1种的参数有：<i>rpn-expression</i></p>
</td>
</tr>
<tr>
<td valign="top" width="235">
<p>. . . . . .</p>
</td>
<td valign="top" width="61">
<p>ds_cnt</p>
<p>次</p>
</td>
<td valign="top" width="272"></td>
</tr>
<tr>
<td valign="top" width="235">
<p>char cf_nam[CF_NAM_SIZE]</p>
</td>
<td valign="top" width="61"></td>
<td valign="top" width="272">
<p>CF的名称，CF_NAM_SIZE=20，%19[A-Z]</p>
<p>目前有9种：</p>
<p>AVERAGE, MIN, MAX, LAST </p>
<p>HWPREDICT , SEASONAL</p>
<p>DEVPREDICT , DEVSEASONA</p>
<p>FAILURES</p>
</td>
</tr>
<tr>
<td valign="top" width="235">
<p>unsigned long row_cnt</p>
</td>
<td valign="top" width="61"></td>
<td valign="top" width="272">
<p>存储记录的行数，超过后会循环覆盖</p>
</td>
</tr>
<tr>
<td valign="top" width="235">
<p>unsigned long pdp_cnt</p>
</td>
<td valign="top" width="61"></td>
<td valign="top" width="272">
<p>cf函数执行时，需要的pdp个数</p>
</td>
</tr>
<tr>
<td valign="top" width="235">
<p>unival par[MAX_RRA_PAR_EN]</p>
</td>
<td valign="top" width="61"></td>
<td valign="top" width="272">
<p>RRA的参数队列，MAX_RRA_PAR_EN=10</p>
</td>
</tr>
<tr>
<td valign="top" width="235">
<p>. . . . . .</p>
</td>
<td valign="top" width="61">
<p>rra_cnt</p>
<p>次</p>
</td>
<td valign="top" width="272"></td>
</tr>
<tr>
<td valign="top" width="235">
<p>time_t last_up</p>
</td>
<td valign="top" width="61"></td>
<td valign="top" width="272">
<p>最后一次更新的秒数部分</p>
</td>
</tr>
<tr>
<td valign="top" width="235">
<p>long last_up_usec</p>
</td>
<td valign="top" width="61"></td>
<td valign="top" width="272">
<p>最后一次跟新的微秒数部分</p>
</td>
</tr>
<tr>
<td valign="top" width="235">
<p>char last_ds[LAST_DS_LEN]</p>
</td>
<td valign="top" width="61"></td>
<td valign="top" width="272">
<p>最后一次更新后ds的值</p>
<p>LAST_DS_LEN=30</p>
</td>
</tr>
<tr>
<td valign="top" width="235">
<p>unival scratch[10]</p>
</td>
<td valign="top" width="61"></td>
<td valign="top" width="272">
<p>最后一次更新后pdp的相关数值，包括：</p>
<p>PDP_unkn_sec_cnt，此次step以来未知的秒数</p>
<p>PDP_val，此次step的pdp值，根据dst的不同，</p>
<p>算法也不相同</p>
</td>
</tr>
<tr>
<td valign="top" width="235">
<p>. . . . . .</p>
</td>
<td valign="top" width="61">
<p>ds_cnt</p>
<p>次</p>
</td>
<td valign="top" width="272"></td>
</tr>
<tr>
<td valign="top" width="235">
<p>Unival scratch[MAX_CDP_PAR_EN]</p>
</td>
<td valign="top" width="61"></td>
<td valign="top" width="272">
<p>最后一次更新后cdp的相关数值</p>
</td>
</tr>
<tr>
<td valign="top" width="235">
<p>. . . . . .</p>
</td>
<td valign="top" width="61">
<p>ds_cnt</p>
<p>* </p>
<p>rra_cnt</p>
<p>次</p>
</td>
<td valign="top" width="272"></td>
</tr>
<tr>
<td valign="top" width="235">
<p>unsigned long cur_row</p>
</td>
<td valign="top" width="61"></td>
<td valign="top" width="272">
<p>指向RRA当前的记录</p>
</td>
</tr>
<tr>
<td valign="top" width="235">
<p>. . . . . .</p>
</td>
<td valign="top" width="61">
<p>rra_cnt</p>
<p>次</p>
</td>
<td valign="top" width="272"></td>
</tr>
<tr>
<td valign="top" width="568">
<p>*RRA 0</p>
<p>(0,0) . . . . . . . . . . . . . . . . . . . . . . . . . ( ds_cnt -1 , 0)</p>
<p>.</p>
<p>.</p>
<p>.</p>
<p>(0, row_cnt -1) . . . . . . . . . . . (ds_cnt -1, row_cnt -1)</p>
<p>*RRA 1</p>
<p>*RRA 2</p>
<p>*RRA rra_cnt -1</p>
</td>
</tr>
</tbody>
</table>
<h5>RRD术语：</h5>
<p>ds：&#160;&#160; Data Source (ds) providing input to the database.</p>
<p>dst： Data Source Type (dst).</p>
<p>pdp： Primary Data Point (pdp).</p>
<p>cf：&#160;&#160; Consolidation Function (cf).</p>
<p>cdp： Consolidated Data Point (cdp) is the long term storage format for data in the rrd database.</p>
<p>rra： Round Robin Archive (rra). This is the place where the consolidated data points (cdp) get stored.</p>
<h5>Create语法：</h5>
<blockquote><p>rrdtool create filename [--start|-b start time] [--step|-s step] \</p>
<p>[DS:ds-name:DST:dst arguments] \</p>
<p>[RRA:CF:cf arguments]</p>
</blockquote>
<p>step：Specifies the base interval in seconds with which data will be fed into the RRD。</p>
<p>dst argumet： 有heartbeat:min:max组成。其中最小，最大值表示pdp的范围，可以为UNKNOW。heartbeat：表示2次采样之间最大有效的时间间隔。</p>
<h5>CHANGELOG:</h5>
<p>Rrdtool-1.2.28后，对pdp的取UNKNOW值有点不同。查看了changelog，原来是作为bug修复了。</p>
<h4>参考：</h4>
<p><a href="http://www.rrdtool.org">http://www.rrdtool.org</a></p>
<p><a href="http://bbs.chinaunix.net/viewthread.php?tid=864861&amp;highlight=rrdtool">http://bbs.chinaunix.net/viewthread.php?tid=864861&amp;highlight=rrdtool</a></p>
<p><a href="http://bbs.chinaunix.net/viewthread.php?tid=552220&amp;highlight=rrdtool">&#160;</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.sevenj.org/2009/07/26/rrdtool%e7%ae%80%e5%8d%95%e6%95%99%e7%a8%8b/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[Q&amp;A] svn导出指定目录到新库</title>
		<link>http://www.sevenj.org/2009/06/07/qa-svn%e5%af%bc%e5%87%ba%e6%8c%87%e5%ae%9a%e7%9b%ae%e5%bd%95%e5%88%b0%e6%96%b0%e5%ba%93/</link>
		<comments>http://www.sevenj.org/2009/06/07/qa-svn%e5%af%bc%e5%87%ba%e6%8c%87%e5%ae%9a%e7%9b%ae%e5%bd%95%e5%88%b0%e6%96%b0%e5%ba%93/#comments</comments>
		<pubDate>Sun, 07 Jun 2009 16:50:31 +0000</pubDate>
		<dc:creator>sevenJ</dc:creator>
				<category><![CDATA[software]]></category>
		<category><![CDATA[svn]]></category>

		<guid isPermaLink="false">http://www.sevenj.org/?p=7</guid>
		<description><![CDATA[Q：如何从svn版本库中导出一个目录到一个新的版本库中，并且保存原有的commit log？ A: 基本的步骤如下： 1.从sevenj中导出整个库的内容 sevenj$ svnadmin dump /var/svn/sevenj &#62; sevenj.dump 2.从sevenj.dump文件中过滤出要导出的目录 sevenj$ cat sevenj.dump &#124; svndumpfilter  include /note/ &#62; note.dump 3.把过滤后的文件重新导入到新库中 sevenj$ svnadmin load /var/svn/new –parent-dir note &#60; note.dump Other： svndumpfilter在过滤的时候可以对版本号进行处理： sevenj$ svmdumpfilter help include usage: svndumpfilter include PATH_PREFIX&#8230; Valid options: &#8211;drop-empty-revs        : Remove revisions emptied by filtering. &#8211;renumber-revs           : Renumber revisions left after [...]]]></description>
			<content:encoded><![CDATA[<p>Q：如何从svn版本库中导出一个目录到一个新的版本库中，并且保存原有的commit log？</p>
<p>A: 基本的步骤如下：</p>
<blockquote><p>1.从sevenj中导出整个库的内容</p>
<p>sevenj$ svnadmin dump /var/svn/sevenj &gt; sevenj.dump</p>
<p>2.从sevenj.dump文件中过滤出要导出的目录</p>
<p>sevenj$ cat sevenj.dump | svndumpfilter  include /note/ &gt; note.dump</p>
<p>3.把过滤后的文件重新导入到新库中</p>
<p>sevenj$ svnadmin load /var/svn/new –parent-dir note &lt; note.dump</p></blockquote>
<p>Other：</p>
<ol>
<li>
<div>svndumpfilter在过滤的时候可以对版本号进行处理：</div>
<blockquote><p>sevenj$ svmdumpfilter help include</p>
<p>usage: svndumpfilter include PATH_PREFIX&#8230;</p>
<p>Valid options:<br />
&#8211;drop-empty-revs        : Remove revisions emptied by filtering.<br />
&#8211;renumber-revs           : Renumber revisions left after filtering.<br />
&#8211;skip-missing-merge-sources : Skip missing merge sources.<br />
&#8211;targets ARG               : Pass contents of file ARG as additional args<br />
&#8211;preserve-revprops      : Don&#8217;t filter revision properties.<br />
&#8211;quiet                         : Do not display filtering statistics.</p></blockquote>
</li>
<li>
<div>svn dump文件格式：</div>
<blockquote><p><a title="subversion导出文件格式" href="http://svn.collab.net/repos/svn/trunk/notes/dump-load-format.txt" target="_blank">http://svn.collab.net/repos/svn/trunk/notes/dump-load-format.txt</a></p></blockquote>
</li>
<li><a title="http://subversion.tigris.org/links.html" href="http://subversion.tigris.org/">http://subversion.tigris.org/</a> 主页上有很多关于subversion的额外的小工具。</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.sevenj.org/2009/06/07/qa-svn%e5%af%bc%e5%87%ba%e6%8c%87%e5%ae%9a%e7%9b%ae%e5%bd%95%e5%88%b0%e6%96%b0%e5%ba%93/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

