<?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>jjgod / blog &#187; cvs</title>
	<atom:link href="http://blog.jjgod.org/tag/cvs/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.jjgod.org</link>
	<description>Random notes &#38; thoughts by Jiang Jiang.</description>
	<lastBuildDate>Mon, 16 Jan 2012 11:08:59 +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>又土鳖了一把</title>
		<link>http://blog.jjgod.org/2008/03/17/mozilla-cvs-git/</link>
		<comments>http://blog.jjgod.org/2008/03/17/mozilla-cvs-git/#comments</comments>
		<pubDate>Sun, 16 Mar 2008 18:27:02 +0000</pubDate>
		<dc:creator>jjgod</dc:creator>
				<category><![CDATA[Miscs]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[build]]></category>
		<category><![CDATA[cvs]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[mozilla]]></category>
		<category><![CDATA[patch]]></category>

		<guid isPermaLink="false">http://blog.jjgod.org/2008/03/17/mozilla-cvs-git/</guid>
		<description><![CDATA[更新: gitmo 已经过期了，Sergey Yanovich 更新了 git repo 上的说明，现在应该用这个 client.sh 来更新。 今天实在是受不了 CVS 了：在 mozilla 这么大的树上用 cvs diff 简直是自虐，于是找来 mozilla cvs trunk 的 git mirror 来 clone，上次 clone 过一次发现缺东西不能编译，因为 mozilla cvs 树里有些东西是作为 external item 放在别的地方的，比如 nsprpub，但 git mirror (和 hg mirror) 都没有镜像这些。 因为看 mozilla.dev.platform 上有人贴了一个 gitmo 的脚本还方便，以为不会出问题的，结果还是出问题了。 为什么呢？因为 git 的 mirror 是用那个 repository 的几个 branch 来存这些 [...]]]></description>
			<content:encoded><![CDATA[<p><strong>更新</strong>: <a href="http://www.aasii.org/download/gitmo">gitmo</a> 已经过期了，Sergey Yanovich 更新了 <a href="http://repo.or.cz/w/mozilla-1.9.git">git repo</a> 上的说明，现在应该用这个 <a href="http://www.aasii.org/download/client.sh">client.sh</a> 来更新。</p>

<p>今天实在是受不了 CVS 了：在 mozilla 这么大的树上用 cvs diff 简直是自虐，于是找来 mozilla cvs trunk 的 <a href="http://repo.or.cz/w/mozilla-1.9.git/">git mirror</a> 来 clone，上次 clone 过一次发现缺东西不能编译，因为 mozilla cvs 树里有些东西是作为 external item 放在别的地方的，比如 nsprpub，但 git mirror (和 <a href="http://hg.mozilla.org/cvs-trunk-mirror">hg mirror</a>) 都没有镜像这些。</p>

<p>因为看 <a href="http://groups.google.com/group/mozilla.dev.platform">mozilla.dev.platform</a> 上<a href="http://groups.google.com/group/mozilla.dev.platform/browse_thread/thread/8918d92bd3ba7694">有人贴了</a>一个 <a href="http://www.aasii.org/download/gitmo">gitmo</a> 的脚本还方便，以为不会出问题的，结果还是出问题了。</p>

<p>为什么呢？因为 git 的 mirror 是用那个 repository 的几个 branch 来存这些 external items 的，每次我要用到这些 external items 来编译的时候，就把 checkout -b 一个 本地的 branch 出来，remote 的一个 branch 给 merge 进来，然后编译，问题是这些个 remote branch 的镜像更新似乎不如 CVS 上的勤，结果跟主干上的代码就不一致了。</p>

<p>虽然归根结地还是 mozilla 土鳖：CVS 这种原始社会的玩意早该淘汰了，但经验之谈是：除非对 Mozilla 的代码树结构以及它的编译系统很熟悉，否则如果自己要编译 Firefox 还是<a href="http://developer.mozilla.org/en/docs/Mozilla_Source_Code_Via_CVS">直接从 CVS 上取</a>最省事，出问题的概率最小。</p>

<p>哦，顺便说一句，最近解决了一个 Firefox 3 在 Mac OS X 10.5 上的一个比较严重的 <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=408965">bug</a>，涉及中文字体的载入和顺序，patch 已经进入主干，最新的 nightly build 中也已经包含，不妨试试。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jjgod.org/2008/03/17/mozilla-cvs-git/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

