<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:idx="urn:atom-extension:indexing" xmlns:gr="http://www.google.com/schemas/reader/atom/" xmlns:media="http://search.yahoo.com/mrss/" idx:index="no"><!--
Content-type: Preventing XSRF in IE.

--><generator uri="http://www.google.com/reader">Google Reader</generator><id>tag:google.com,2005:reader/user/09225720023138383018/label/jicknan</id><link rel="hub" href="http://pubsubhubbub.appspot.com/" /><title type="text">Jick Nan</title><gr:continuation>CNjLudK_x5AC</gr:continuation><author><name>jicknan</name></author><updated>2009-07-02T05:11:02Z</updated><subtitle type="html">The RSS feeds related with Jick Nan.</subtitle><logo>http://creativecommons.org/images/public/somerights20.gif</logo><link rel="self" href="http://feeds.feedburner.com/jicknan" type="application/atom+xml" /><feedburner:emailServiceId xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">jicknan</feedburner:emailServiceId><feedburner:feedburnerHostname xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://feedburner.google.com</feedburner:feedburnerHostname><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><entry gr:crawl-timestamp-msec="1246511462389"><id gr:original-id="tag:blogger.com,1999:blog-20188279.post-3227648081650532894">tag:google.com,2005:reader/item/e69210bf67d6df99</id><title type="html">四年</title><published>2009-07-02T04:38:00Z</published><updated>2009-07-02T04:38:44Z</updated><link rel="alternate" href="http://jicknan.blogspot.com/2009/07/blog-post.html" type="text/html" /><content xml:base="http://jicknan.blogspot.com/" type="html">新同事是今年的应届毕业生。&lt;br&gt;&lt;br&gt;新同事： 你来几年了？&lt;br&gt;我： 我 2005 年过来的。&lt;br&gt;新同事：wow，我 2005 年才上的大学。&lt;br&gt;&lt;br&gt;我忽然想起来前几天看到一个学弟写的毕业纪念文，他的四年完全是在新校区渡过的。&lt;br&gt;&lt;br&gt;是的，四年一个轮回。我的大学后四年也要过完了，就这么静悄悄地。&lt;br&gt; &lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/20188279-3227648081650532894?l=jicknan.blogspot.com"&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=Gro8GUn1b4w:BlbeWyhds8k:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=Gro8GUn1b4w:BlbeWyhds8k:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?i=Gro8GUn1b4w:BlbeWyhds8k:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>jick</name></author><source gr:stream-id="feed/http://jicknan.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://jicknan.blogspot.com/atom.xml</id><title type="html">风行</title><link rel="alternate" href="http://jicknan.blogspot.com/" type="text/html" /></source><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-sa/2.0/" /></entry><entry gr:crawl-timestamp-msec="1245863590636"><id gr:original-id="tag:blogger.com,1999:blog-20188279.post-7817671672369962492">tag:google.com,2005:reader/item/89f2cbcee057fae6</id><title type="html">最黑暗的一天</title><published>2009-06-24T16:57:00Z</published><updated>2009-06-24T16:57:54Z</updated><link rel="alternate" href="http://jicknan.blogspot.com/2009/06/blog-post.html" type="text/html" /><content xml:base="http://jicknan.blogspot.com/" type="html">Google.com 被 GFW 干掉了！&lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/20188279-7817671672369962492?l=jicknan.blogspot.com"&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=M5K8n4xsako:Ey6T7vhDS1A:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=M5K8n4xsako:Ey6T7vhDS1A:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?i=M5K8n4xsako:Ey6T7vhDS1A:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>jick</name></author><source gr:stream-id="feed/http://jicknan.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://jicknan.blogspot.com/atom.xml</id><title type="html">风行</title><link rel="alternate" href="http://jicknan.blogspot.com/" type="text/html" /></source><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-sa/2.0/" /></entry><entry gr:crawl-timestamp-msec="1227536884052"><id gr:original-id="tag:blogger.com,1999:blog-20188279.post-2041430042311732612">tag:google.com,2005:reader/item/fc49d07a409f9650</id><title type="html">[git_02]Git 的基本对象模型</title><published>2008-11-24T12:26:00Z</published><updated>2008-11-24T12:26:49Z</updated><link rel="alternate" href="http://jicknan.blogspot.com/2008/11/git02git.html" type="text/html" /><content xml:base="http://jicknan.blogspot.com/" type="html">&lt;font face="monospace"&gt;&lt;font color="#ffff00"&gt;&lt;b&gt;  1 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ff00"&gt;&lt;b&gt;diff --git a/text/02_Git_Object_Db_Basics/0_ Git_Object_Db_Basics.markdown b/text/02_Git_Object_Db_Basics/0_ Git_Object_Db_Basics.markdown&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt;  2 &lt;/b&gt;&lt;/font&gt;index a73e0fe..013d849 100644&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt;  3 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ff00"&gt;&lt;b&gt;--- a/text/02_Git_Object_Db_Basics/0_ Git_Object_Db_Basics.markdown     &lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt;  4 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ff00"&gt;&lt;b&gt;+++ b/text/02_Git_Object_Db_Basics/0_ Git_Object_Db_Basics.markdown     &lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt;  5 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ffff00"&gt;&lt;b&gt;@@ -1,55 +1,51 @@&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt;  6 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-## The Git Object Model ##&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt;  7 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+## Git 对象模型 ##&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt;  8 &lt;/b&gt;&lt;/font&gt; &lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt;  9 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-### The SHA ###&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 10 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+### SHA 值 ###&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 11 &lt;/b&gt;&lt;/font&gt; &lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 12 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-All the information needed to represent the history of a&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 13 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-project is stored in files referenced by a 40-digit &amp;quot;object name&amp;quot; that &lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 14 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-looks something like this:&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 15 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+表示一个项目历史的所有需要的信息都被储存在文件中，这些文件以一个 40 位&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 16 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+的"对象名称"引用，就像下面这个：&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 17 &lt;/b&gt;&lt;/font&gt;     &lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 18 &lt;/b&gt;&lt;/font&gt;     6ff87c4664981e4397625791c8ea3bbb5f2279a3&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 19 &lt;/b&gt;&lt;/font&gt;     &lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 20 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-You will see these 40-character strings all over the place in Git.&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 21 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-In each case the name is calculated by taking the SHA1 hash of the&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 22 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-contents of the object.  The SHA1 hash is a cryptographic hash function.&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 23 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-What that means to us is that it is virtually impossible to find two different&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 24 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-objects with the same name.  This has a number of advantages; among&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 25 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-others:&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 26 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 27 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-- Git can quickly determine whether two objects are identical or not,&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 28 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-  just by comparing names.&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 29 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-- Since object names are computed the same way in every repository, the&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 30 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-  same content stored in two repositories will always be stored under&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 31 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-  the same name.&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 32 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-- Git can detect errors when it reads an object, by checking that the&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 33 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-  object&amp;#39;s name is still the SHA1 hash of its contents.&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 34 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 35 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-### The Objects ###&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 36 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 37 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-Every object consists of three things - a **type**, a **size** and **content**.&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 38 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-The _size_ is simply the size of the contents, the contents depend on what&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 39 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-type of object it is, and there are four different types of objects: &lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 40 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-&amp;quot;blob&amp;quot;, &amp;quot;tree&amp;quot;, &amp;quot;commit&amp;quot;, and &amp;quot;tag&amp;quot;.&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 41 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 42 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-- A **&amp;quot;blob&amp;quot;** is used to store file data - it is generally a file.&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 43 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-- A **&amp;quot;tree&amp;quot;** is basically like a directory - it references a bunch of&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 44 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-    other trees and/or blobs (i.e. files and sub-directories)&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 45 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-- A **&amp;quot;commit&amp;quot;** points to a single tree, marking it as what the project&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 46 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-    looked like at a certain point in time.  It contains meta-information&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 47 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-    about that point in time, such as a timestamp, the author of the changes&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 48 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-    since the last commit, a pointer to the previous commit(s), etc.&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 49 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-- A **&amp;quot;tag&amp;quot;** is a way to mark a specific commit as special in some way.  It&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 50 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-    is normally used to tag certain commits as specific releases or something&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 51 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-    along those lines.&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 52 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 53 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-Almost all of Git is built around manipulating this simple structure of four&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 54 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-different object types.  It is sort of its own little filesystem that sits&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 55 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-on top of your machine&amp;#39;s filesystem.&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 56 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 57 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-### Different from SVN ###&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 58 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 59 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-It is important to note that this is very different from most SCM systems&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 60 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-that you may be familiar with.  Subversion, CVS, Perforce, Mercurial and the&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 61 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-like all use _Delta Storage_ systems - they store the differences between one&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 62 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-commit and the next.  Git does not do this - it stores a snapshot of what all&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 63 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-the files in your project look like in this tree structure each time you&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 64 &lt;/b&gt;&lt;/font&gt;&lt;font color="#ff6060"&gt;&lt;b&gt;-commit. This is a very important concept to understand when using Git.&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 65 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+你会在 Git 的各个地方看到这些 40 个字符组成的字符串。在每一种情况下，这个名字通过&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 66 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+计算对象内容的 SHA1 哈希值取得。 SHA1 哈希值是一个密码学哈希函数。对我们来说，&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 67 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+这意味着事实上不可能根据同一个名字找到两个不同的对象。这具有很多优势，其中：&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 68 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 69 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+- Git 可以很快地区分两个对象是不是相同的，只要比较名字。&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 70 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+- 因为在每个仓库中都以相同的方式计算对象名称，因此储存在两个仓库中的相同&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 71 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+  内容总是以相同的名字存储。&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 72 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+- Git 可以在读取一个对象的时候侦测错误，只要检查这个对象的名字是否仍然是它&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 73 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+  内容的 SHA1 哈希值。&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 74 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 75 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+### 对象 ###&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 76 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 77 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+每个对象包含三件事 ──**类型**，**大小**和**内容**。_大小_很简单，就是内容的&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 78 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+大小；内容则取决于对象的类型。对象有四种不同的类别： &amp;quot;blob&amp;quot;, &amp;quot;tree&amp;quot;, &amp;quot;commit&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 79 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+和 &amp;quot;tag&amp;quot;。&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 80 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 81 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+- 一个 **&amp;quot;blob&amp;quot;** 用来储存文件数据 ──它通常是一个文件。&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 82 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+- 一个 **&amp;quot;tree&amp;quot;** 基本上很像一个目录 ──它索引一组其他的 tree 或者/和&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 83 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+  blob （比如：文件和子目录）。&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 84 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+- 一个 **&amp;quot;commit&amp;quot;** 指向一个单独的 tree，作为项目在某个特定的时间点上的标记。&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 85 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+  它包含那个时间点的元信息，比如时间戳，最后 commit 为止的改变的作者，指向之前&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 86 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+  commit 的指针，等等。&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 87 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+- 一个 **&amp;quot;tag&amp;quot;** 是用来标记特定 commit 在某些方面特别的一种方法。它通常用来&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 88 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+  标记指定的 commit 作为特定的发行，或者累死的东西。&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 89 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 90 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+Git 几乎所有的建设都是围绕这种四个不同的对象类型组成的简单结构。它是一种构建&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 91 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+在你机器的文件系统之上的自由小文件系统。&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 92 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 93 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+### 和 SVN 的区别 ###&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 94 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 95 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+需要重点指出的是，这和你以前所熟悉的大多数 SCM 系统都非常不同。Subversion, CVS,&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 96 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+Perforce, Mercurial 以及所有类似使用 _Delta 存储_ 的系统储存一个 commit 和下一个&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 97 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+commit 之间的差别。Git 不这么做 ──你每次 commit 时，它储存你项目里每次 commit&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 98 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+的 tree 结构的所有文件的快照。这是使用 Git 时需要理解的重要观念。&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt; 99 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt;100 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+### 术语对照 ##&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt;101 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt;102 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+- object： 对象&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt;103 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+- model： 模型&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt;104 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+- hash：哈希&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt;105 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+- repository: 仓库&lt;/b&gt;&lt;/font&gt;&lt;br&gt; &lt;font color="#ffff00"&gt;&lt;b&gt;106 &lt;/b&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;&lt;b&gt;+- project：项目&lt;/b&gt;&lt;/font&gt;&lt;/font&gt; &lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/20188279-2041430042311732612?l=jicknan.blogspot.com"&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=0KhQilQXmNs:fbcpCwjLtl4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=0KhQilQXmNs:fbcpCwjLtl4:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?i=0KhQilQXmNs:fbcpCwjLtl4:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>jick</name></author><source gr:stream-id="feed/http://jicknan.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://jicknan.blogspot.com/atom.xml</id><title type="html">风行</title><link rel="alternate" href="http://jicknan.blogspot.com/" type="text/html" /></source><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-sa/2.0/" /></entry><entry gr:crawl-timestamp-msec="1227409624047"><id gr:original-id="tag:blogger.com,1999:blog-20188279.post-1625029704263624062">tag:google.com,2005:reader/item/52fb4c7c440fe7aa</id><title type="html">[git_0]介绍</title><published>2008-11-23T03:00:00Z</published><updated>2008-11-23T07:09:49Z</updated><link rel="alternate" href="http://jicknan.blogspot.com/2008/11/git0.html" type="text/html" /><content xml:base="http://jicknan.blogspot.com/" type="html">&lt;span style="font-family:monospace"&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;  1 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:lime"&gt;&lt;b&gt;diff --git a/text/01_Introduction/0_ Introduction.markdown b/text/01_Introduction/0_ Introduction.markdown&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;  2 &lt;/b&gt;&lt;/span&gt;deleted file mode 100644&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;  3 &lt;/b&gt;&lt;/span&gt;index 9c60fb9..0000000&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;  4 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:lime"&gt;&lt;b&gt;--- a/text/01_Introduction/0_ Introduction.markdown     &lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;  5 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:lime"&gt;&lt;b&gt;+++ /dev/null&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;  6 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;@@ -1,54 +0,0 @@&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;  7 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-## Welcome to Git ##&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;  8 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;  9 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-Welcome to Git - the fast, distributed version control system.&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 10 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 11 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-This book is meant to be a starting point for people new to Git to learn it &lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 12 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-as quickly and easily as possible.&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 13 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 14 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 15 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-This book will start out by introducing you to the way Git stores data, to &lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 16 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-give you the context for why it is different than other VCS tools.&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 17 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-This is meant to take you about 20 minutes.&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 18 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 19 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-Next we will cover **Basic Git Usage** - the commands you will be using 90% of &lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 20 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-the time.  These should give you a good basis to use Git comfortably for most&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 21 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-of what you're going to use it for.  This section should take you about 30 &lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 22 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-minutes to read through.&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 23 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 24 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-Next we will go over **Intermediate Git Usage** - things that are slightly more&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 25 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-complex, but may replace some of the basic commands you learned in the first &lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 26 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-section.  This will mostly be tricks and commands that will feel more &lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 27 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-comfortable after you know the basic commands.&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 28 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 29 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-After you have all of that mastered, we will cover **Advanced Git** - commands&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 30 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-that most people probably don't use very often, but can be very helpful in&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 31 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-certain situations.  Learning these commands should round out your day-to-day&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 32 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-git knowledge; you will be a master of the Git!&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 33 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 34 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-Now that you know Git, we will then cover **Working with Git**.  Here we will go&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 35 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-over how to use Git in scripts, with deployment tools, with editors and more.&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 36 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-These sections are meant to help you integrate Git into your environment.&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 37 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 38 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-Lastly, we will have a series of articles on **low-level documentation** that may&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 39 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-help the Git hackers who want to learn how the actual internals and protocols&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 40 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-work in Git.&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 41 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 42 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-### Feedback and Contributing ###&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 43 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 44 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-At any point, if you see a mistake or want to contribute to the book, you can &lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 45 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-send me an email at [schacon@gmail.com](mailto://schacon@gmail.com), or you&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 46 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-can clone the source of this book at &lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 47 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-[&lt;a href="http://github.com/schacon/gitscm%5D(http://github.com/schacon/gitscm)"&gt;http://github.com/schacon/gitscm](http://github.com/schacon/gitscm)&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 48 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-and send me a patch or a pull-request.&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 49 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 50 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-### References ###&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 51 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 52 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-Much of this book is pulled together from different sources and then added to.  &lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 53 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-If you would like to read some of the original articles or resources, please&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 54 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-visit them and thank the authors:&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 55 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 56 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-* [Git User Manual](&lt;a href="http://www.kernel.org/pub/software/scm/git/docs/user-manual.html)"&gt;http://www.kernel.org/pub/software/scm/git/docs/user-manual.html)&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 57 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-* [The Git Tutorial](&lt;a href="http://www.kernel.org/pub/software/scm/git/docs/gittutorial.html)"&gt;http://www.kernel.org/pub/software/scm/git/docs/gittutorial.html)&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 58 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-* [The Git Tutorial pt 2](&lt;a href="http://www.kernel.org/pub/software/scm/git/docs/gittutorial-2.html)"&gt;http://www.kernel.org/pub/software/scm/git/docs/gittutorial-2.html)&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 59 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-* ["My Git Workflow" blog post](&lt;a href="http://osteele.com/archives/2008/05/my-git-workflow)"&gt;http://osteele.com/archives/2008/05/my-git-workflow)&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 60 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:#ff6060"&gt;&lt;b&gt;-&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 61 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:lime"&gt;&lt;b&gt;diff --git "a/text/01_Introduction/0_ \344\273\213\347\273\215.markdown" "b/text/01_Introduction/0_ \344\273\213\347\273\215.markdown"&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 62 &lt;/b&gt;&lt;/span&gt;new file mode 100644&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 63 &lt;/b&gt;&lt;/span&gt;index 0000000..46154f3&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 64 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:lime"&gt;&lt;b&gt;--- /dev/null&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 65 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:lime"&gt;&lt;b&gt;+++ "b/text/01_Introduction/0_ \344\273\213\347\273\215.markdown"       &lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 66 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;@@ -0,0 +1,49 @@&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 67 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+## 欢迎使用 Git ##&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 68 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 69 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+欢迎使用 Git ──快速的、分布式的版本控制系统（VCS）。&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 70 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 71 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+这本书旨在为 Git 新人尽可能地提供一个快速的、容易的起点。&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 72 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 73 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+这本书的开始将为你介绍 Git 储存数据的方式，并给你上下文，以标明为什么它有别于&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 74 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+其他 VCS 工具。这将花费你大约 20 分钟的时间。&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 75 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 76 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+接下来我们将讲解 **Git 的基本用法** ── 这些命令是你 90% 的时间会用到的。这些&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 77 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+将给你一个良好的基础，使你舒服地用 Git 做绝大多数你想用它做的事情。你需要大概&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 78 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+30 分钟的时间来通读这一节。&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 79 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 80 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+再接下来，我们将到达 **Git 中级用法**，事情稍微复杂一些，但也许可以替代一些你在&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 81 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+第一节学到的基本命令。这大多数是一些技巧，并且在知道基本命令后，你在学习这些命令，&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 82 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+将感觉更为轻松。&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 83 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 84 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+在你掌握了以上知识后，我们将介绍 **高级 Git**，这些命令多数人都不会经常使用，但&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 85 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+在特定情形下却也非常有用。学习这些命令将助你跳出日常 Git 的知识；你将成为一个&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 86 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+Git 大师！&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 87 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 88 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+现在你知道 Git 了，我们将接着介绍 **和 Git 协同工作**。这里我梦将覆盖如何在脚本中&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 89 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+使用 Git，结合实施工具，结合编辑器，以及更多。这些章节旨在协助你将 Git 整合到你的&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 90 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+（开发）环境中。&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 91 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 92 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+最后，我们有一些列 **底层文档**，用来帮助 Git 黑客们学习 Git 的内在和协议。&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 93 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 94 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+### 反馈和参与 ###&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 95 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 96 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+任何时候，如果你看到了一个错误或者想要参与贡献这本书，你可以发邮件给我，地址是&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 97 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+[schacon@gmail.com](mailto://schacon@gmail.com)，或者你可以从&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 98 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+[&lt;a href="http://github.com/schacon/gitscm%5D(http://github.com/schacon/gitscm)"&gt;http://github.com/schacon/gitscm](http://github.com/schacon/gitscm)&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt; 99 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+克隆（clone）这本书的源代码，并给我发一个 patch 或者 pull-request。&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;100 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;101 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+中文译本的邮件地址： [jick.nan@gmail.com](mailto://jick.nan@gmail.com)&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;102 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+Git 克隆地址：&amp;lt;&lt;a href="http://github.com/jicknan/gitscm"&gt;http://github.com/jicknan/gitscm&lt;/a&gt;&amp;gt;&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;103 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;104 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+(P.S: 翻译这篇的时候，感谢某人在这寒冷的早晨帮我买鸡蛋饼 :P)&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;105 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;106 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+### 参考资料 ###&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;107 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;108 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+这本书的大部分都是从不同的来源整合并扩充而成的。如果你希望读一些原始的文章或者资源，&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;109 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+请访问他们并感谢这些作者：&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;110 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;111 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+* [Git User Manual](&lt;a href="http://www.kernel.org/pub/software/scm/git/docs/user-manual.html)"&gt;http://www.kernel.org/pub/software/scm/git/docs/user-manual.html)&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;112 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+* [The Git Tutorial](&lt;a href="http://www.kernel.org/pub/software/scm/git/docs/gittutorial.html)"&gt;http://www.kernel.org/pub/software/scm/git/docs/gittutorial.html)&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;113 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+* [The Git Tutorial pt 2](&lt;a href="http://www.kernel.org/pub/software/scm/git/docs/gittutorial-2.html)"&gt;http://www.kernel.org/pub/software/scm/git/docs/gittutorial-2.html)&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;114 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+* ["My Git Workflow" blog post](&lt;a href="http://osteele.com/archives/2008/05/my-git-workflow)"&gt;http://osteele.com/archives/2008/05/my-git-workflow)&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;/span&gt;&lt;p&gt;&lt;span style="font-family:monospace"&gt;&lt;span style="color:yellow"&gt;&lt;b&gt;115 &lt;/b&gt;&lt;/span&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:monospace"&gt;&lt;span style="color:cyan"&gt;小更新：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:monospace"&gt;&lt;span style="color:cyan"&gt;&lt;b&gt;Git 克隆地址：&lt;br&gt;&lt;br&gt;  * 英文版分枝： book&lt;br&gt;  * 中文版分枝： book-zh&lt;br&gt;&lt;br&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/20188279-1625029704263624062?l=jicknan.blogspot.com"&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=8iGOGrE96AY:GM510xTUbXI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=8iGOGrE96AY:GM510xTUbXI:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?i=8iGOGrE96AY:GM510xTUbXI:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>jick</name></author><source gr:stream-id="feed/http://jicknan.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://jicknan.blogspot.com/atom.xml</id><title type="html">风行</title><link rel="alternate" href="http://jicknan.blogspot.com/" type="text/html" /></source><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-sa/2.0/" /></entry><entry><title type="text">Tab Mix Plus [del.icio.us]</title><link rel="alternate" type="text/html" href="http://tmp.garyr.net/" /><category term="firefox" /><author><name>jicknan</name></author><updated>2008-09-05T09:12:35-07:00</updated><id>http://tmp.garyr.net/</id><taxo:topics xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/">
      <rdf:Bag xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
        <rdf:li rdf:resource="http://delicious.com/jicknan/firefox" />
      </rdf:Bag>
    </taxo:topics><cc:license xmlns:cc="http://web.resource.org/cc/" cc:license="http://creativecommons.org/licenses/by-nc-sa/2.5/" /></entry><entry><title type="text">NoScript - JavaScript/Java/Flash blocker for a safer Firefox experience! - what is it? - InformAction [del.icio.us]</title><link rel="alternate" type="text/html" href="http://noscript.net/" /><category term="firefox" /><author><name>jicknan</name></author><updated>2008-09-05T09:11:11-07:00</updated><id>http://noscript.net/</id><taxo:topics xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/">
      <rdf:Bag xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
        <rdf:li rdf:resource="http://delicious.com/jicknan/firefox" />
      </rdf:Bag>
    </taxo:topics><cc:license xmlns:cc="http://web.resource.org/cc/" cc:license="http://creativecommons.org/licenses/by-nc-sa/2.5/" /></entry><entry><title type="text">Firefox MLdonkey/eMule/aMule Protocol Handler [del.icio.us]</title><link rel="alternate" type="text/html" href="http://www.informatik.uni-oldenburg.de/~dyna/mldonkey/" /><category term="firefox" /><author><name>jicknan</name></author><updated>2008-09-05T09:10:58-07:00</updated><id>http://www.informatik.uni-oldenburg.de/~dyna/mldonkey/</id><taxo:topics xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/">
      <rdf:Bag xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
        <rdf:li rdf:resource="http://delicious.com/jicknan/firefox" />
      </rdf:Bag>
    </taxo:topics><cc:license xmlns:cc="http://web.resource.org/cc/" cc:license="http://creativecommons.org/licenses/by-nc-sa/2.5/" /></entry><entry><title type="text">Index of http://archlinux.gooth.cn/ [del.icio.us]</title><link rel="alternate" type="text/html" href="http://archlinux.gooth.cn/" /><category term="linux mirror" /><author><name>jicknan</name></author><updated>2008-08-14T01:38:16-07:00</updated><id>http://archlinux.gooth.cn/</id><content type="html">Athurg@linuxsir.org 的 Archlinux 镜像，Athurg 说会逐步加一些中文用户用到的包。速度未知，我目前用的是自己在公司内网架设的镜像 :-)</content><taxo:topics xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/">
      <rdf:Bag xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
        <rdf:li rdf:resource="http://delicious.com/jicknan/linux" />
        <rdf:li rdf:resource="http://delicious.com/jicknan/mirror" />
      </rdf:Bag>
    </taxo:topics><cc:license xmlns:cc="http://web.resource.org/cc/" cc:license="http://creativecommons.org/licenses/by-nc-sa/2.5/" /></entry><entry><title type="text">Index of debian.cn99.com/ [del.icio.us]</title><link rel="alternate" type="text/html" href="http://debian.cn99.com/" /><category term="linux mirror" /><author><name>jicknan</name></author><updated>2008-08-14T01:31:23-07:00</updated><id>http://debian.cn99.com/</id><content type="html">在国内 linux 爱好者中很著名的 cn99 的镜像站，包含 debian, ubuntu, fedora, centos, redhat, {Free,Open}BSD, eclipse, openfiler, oracle, postfix, tribox 镜像。</content><taxo:topics xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/">
      <rdf:Bag xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
        <rdf:li rdf:resource="http://delicious.com/jicknan/linux" />
        <rdf:li rdf:resource="http://delicious.com/jicknan/mirror" />
      </rdf:Bag>
    </taxo:topics><cc:license xmlns:cc="http://web.resource.org/cc/" cc:license="http://creativecommons.org/licenses/by-nc-sa/2.5/" /></entry><entry><title type="text">Index of ftp://ftp.shlug.org/ [del.icio.us]</title><link rel="alternate" type="text/html" href="ftp://ftp.shlug.org/" /><category term="linux mirror" /><author><name>jicknan</name></author><updated>2008-08-14T01:27:53-07:00</updated><id>ftp://ftp.shlug.org/</id><content type="html">上海 Linux 用户组的镜像站点，包括 gnu, debian, ubuntu, centos。这个站负载比较重，不过速度还好。</content><taxo:topics xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/">
      <rdf:Bag xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
        <rdf:li rdf:resource="http://delicious.com/jicknan/linux" />
        <rdf:li rdf:resource="http://delicious.com/jicknan/mirror" />
      </rdf:Bag>
    </taxo:topics><cc:license xmlns:cc="http://web.resource.org/cc/" cc:license="http://creativecommons.org/licenses/by-nc-sa/2.5/" /></entry><entry><title type="text">Index of mirror.rootguide.org/ [del.icio.us]</title><link rel="alternate" type="text/html" href="http://mirror.rootguide.org/" /><category term="linux mirror" /><author><name>jicknan</name></author><updated>2008-08-14T01:23:37-07:00</updated><id>http://mirror.rootguide.org/</id><content type="html">汉水的 Linux 镜像，包括 kernel.org 和 ubuntu。其中 kernel 可以使用 www.cn.kernel.org 域名访问，速度还不错。</content><taxo:topics xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/">
      <rdf:Bag xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
        <rdf:li rdf:resource="http://delicious.com/jicknan/linux" />
        <rdf:li rdf:resource="http://delicious.com/jicknan/mirror" />
      </rdf:Bag>
    </taxo:topics><cc:license xmlns:cc="http://web.resource.org/cc/" cc:license="http://creativecommons.org/licenses/by-nc-sa/2.5/" /></entry><entry gr:crawl-timestamp-msec="1217767051217"><id gr:original-id="tag:blogger.com,1999:blog-20188279.post-7850432980491564253">tag:google.com,2005:reader/item/6e6c345c5d6a7ce4</id><title type="html">菏泽欢迎你</title><published>2008-08-02T23:14:00Z</published><updated>2008-08-03T12:08:58Z</updated><link rel="alternate" href="http://jicknan.blogspot.com/2008/08/blog-post.html" type="text/html" /><content xml:base="http://jicknan.blogspot.com/" type="html">据说 7 月 28 日的新闻联播报道了，想必上网的不上网的都知道了。没错，就是那个菏泽老年版 MTV：&lt;br&gt;&lt;br&gt;&lt;embed align="middle" allowScriptAccess="never" height="400" src="http://player.youku.com/player.php/sid/XMzQyMDI4MTY=/v.swf" width="480" wmode="transparent" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;br&gt;&lt;br&gt;Blogger 插入视频好像有问题？ 直接给出 &lt;a href="http://v.youku.com/v_show/id_XMzQyMDI4MTY=.html"&gt;优酷上的链接&lt;/a&gt;。&lt;br&gt;&lt;br&gt;一些链接：&lt;br&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://spzx.foods1.com/show_537021.htm"&gt;小柯：老年版《北京欢迎你》最精彩！&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.qlwb.com.cn/display.asp?id=326207&amp;amp;fd=2008-08-02"&gt;齐鲁晚报：菏泽老年版《北京欢迎你》揭秘&lt;/a&gt; - 刘媛媛介绍，准备进录音棚录歌时，大伙儿你30元、我50元凑了780元，结果这段MTV的全部制作费只用去了500余元，还剩余200多元。&lt;/li&gt;&lt;li&gt;&lt;a href="http://xjpl.csonline.com.cn/3/200807/t20080731_840987.htm"&gt;老年版《北京欢迎你》，歌颂还是高兴？&lt;/a&gt; - 我们总是希望从最普通人的行动中去提炼宏大的叙述方式，但是却从不去注意普通人最本身的感受。我想，我的母亲她们也一样会唱这些奥运歌曲，没准什么时候我也会给他们拍一部歌唱奥运或者歌唱祖国的视频，但是我更愿意相信，那时候的她们只是为了让自己感到高兴，因为自己能唱歌，因为自己能进录像而高兴。&lt;/li&gt;&lt;/ul&gt;&lt;br&gt;&lt;br&gt;PS: 小柯的 blog 在新浪，我给的链接不是新浪的。新浪版也好找，却又出入。对比一下：&lt;br&gt;&lt;br&gt;...直到今天早上，一醒过来就接到一个一直特别了解我心思的朋友打来电话，让我上网搜索“老年版北京欢迎你”，于是我几乎是被电起来一样弹到电脑旁，降落后赶紧谷歌新浪一通搜索...&lt;br&gt;&lt;br&gt;...直到今天早上，一醒过来就接到一个一直特别了解我心思的朋友打来电话，让我上新浪“2008我最红-《北京欢迎你》唱”看“老年版北京欢迎你”，于是我几乎是被电起来一样弹到电脑旁，降落后赶紧谷歌新浪一通搜索...&lt;br&gt;&lt;br&gt;不知道是小柯觉悟高，还是新浪无耻？&lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/20188279-7850432980491564253?l=jicknan.blogspot.com"&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=k11JwN7EAn8:k9EGQCJiwm4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=k11JwN7EAn8:k9EGQCJiwm4:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?i=k11JwN7EAn8:k9EGQCJiwm4:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>jick</name></author><source gr:stream-id="feed/http://jicknan.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://jicknan.blogspot.com/atom.xml</id><title type="html">风行</title><link rel="alternate" href="http://jicknan.blogspot.com/" type="text/html" /></source><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-sa/2.0/" /></entry><entry gr:crawl-timestamp-msec="1217126460919"><id gr:original-id="tag:blogger.com,1999:blog-20188279.post-3086930627409047500">tag:google.com,2005:reader/item/d167277dcceb17ad</id><title type="html">Blogger 式微</title><published>2008-07-27T02:13:00Z</published><updated>2008-07-27T02:13:22Z</updated><link rel="alternate" href="http://jicknan.blogspot.com/2008/07/blogger.html" type="text/html" /><content xml:base="http://jicknan.blogspot.com/" type="html">&lt;div dir="ltr"&gt;很久没有写 Blog 了，最近写了一篇流水帐，第一选择竟然是豆瓣日记，这让我感到 Blogger 在我这里有点式微了。&lt;br&gt;&lt;br&gt;- 走出水泥盒子，走到阳光下的时候，我喜欢用 twitter 记录看到的，想到的。我可以一天推十余次，也可以十余天推一次，关键是：因为手机终端形影不离，我可以随时推一把。twitter 这种简单的形式让人欲罢不能，严格按时间排序也很适合做活动直播。相比之下，发篇 blog 就复杂多了。&lt;br&gt; &lt;br&gt;- 我也不喜欢在 Blogger 写评论类文字了，我喜欢在 friendfeed 讨论。在 Blogger，发布的是我对某件事的看法；而在 friendfeed，则是：这里有件事、物，我是这么看得，其他人是那么看的，集合在一起，就是讨论了；相比于一个人的诉说，我更喜欢讨论。&lt;br&gt; &lt;br&gt; - 写一篇 Blog 的时候，我并不知道我希望让哪些人看。我不希望自己的生活全部公开在网络，有时只要朋友看到就行了；我也不希望自己的阴暗心理被别人看到，这些就留给自己吧。豆瓣日记足够简单，又可以控制单篇日志的访问权限：是写给自己的，还是写给朋友的，或者谁都可以看？这是我比较喜欢的一点。没错，Blogger 也可以有权限控制，但那是关于整站的；并且，似乎豆瓣更生活一些。因此，一些生活的记录，可能就留在豆瓣了；而如果是技术性的总结，那还是在 blogger 比较合适，还可以有点个人信息发布。&lt;br&gt; &lt;br&gt;- 更要命的是，纯技术性总结，我更喜欢在本地的 wiki 里展现。和 Blogger 的篇目相比，wiki 更适合知识性文字的组织。&lt;br&gt;&lt;br&gt;如上，我的 Blogger 发贴越来越少了，直到我发现它的下一个价值。&lt;br&gt;&lt;br&gt;P.S. 恭贺陈老师 Blog 改版，久未更新的本 blog 也有幸忝列友情链接之中。陈老师以稳定、持续、高频率的更新，一直活跃在 Blogger 的一线，成为我 Google Reader 里最为活跃的 Blogger 之一  :P&lt;br&gt; &lt;/div&gt; &lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/20188279-3086930627409047500?l=jicknan.blogspot.com"&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=k3mnh2sx5sM:6s9dWWphUr4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=k3mnh2sx5sM:6s9dWWphUr4:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?i=k3mnh2sx5sM:6s9dWWphUr4:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>jick</name></author><source gr:stream-id="feed/http://jicknan.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://jicknan.blogspot.com/atom.xml</id><title type="html">风行</title><link rel="alternate" href="http://jicknan.blogspot.com/" type="text/html" /></source><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-sa/2.0/" /></entry><entry><title type="text">古书竖排文字转换器 [del.icio.us]</title><link rel="alternate" type="text/html" href="http://www.cshbl.com/gushu.html" /><category term="chinese" /><author><name>jicknan</name></author><updated>2008-07-02T00:10:12-07:00</updated><id>http://www.cshbl.com/gushu.html</id><content type="html">复古运动啊，以前在 telnet 的 BBS 见过，现在烧到 blog 了 :-)</content><taxo:topics xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/">
      <rdf:Bag xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
        <rdf:li rdf:resource="http://delicious.com/jicknan/chinese" />
      </rdf:Bag>
    </taxo:topics><cc:license xmlns:cc="http://web.resource.org/cc/" cc:license="http://creativecommons.org/licenses/by-nc-sa/2.5/" /></entry><entry><title type="text">start [ 中国 Linux 随谈] [del.icio.us]</title><link rel="alternate" type="text/html" href="http://www.chinalinux.org.cn/wiki/doku.php" /><category term="linux" /><author><name>jicknan</name></author><updated>2008-06-27T03:09:55-07:00</updated><id>http://www.chinalinux.org.cn/wiki/doku.php</id><content type="html">Linux 的新社区，CLF 的一帮人搞的。</content><taxo:topics xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/">
      <rdf:Bag xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
        <rdf:li rdf:resource="http://delicious.com/jicknan/linux" />
      </rdf:Bag>
    </taxo:topics><cc:license xmlns:cc="http://web.resource.org/cc/" cc:license="http://creativecommons.org/licenses/by-nc-sa/2.5/" /></entry><entry><title type="text">Google Account Multi-Login – Userscripts.org [del.icio.us]</title><link rel="alternate" type="text/html" href="http://userscripts.org/scripts/show/16341" /><category term="greasemonkey firefox" /><author><name>jicknan</name></author><updated>2008-06-26T00:31:39-07:00</updated><id>http://userscripts.org/scripts/show/16341</id><taxo:topics xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/">
      <rdf:Bag xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
        <rdf:li rdf:resource="http://delicious.com/jicknan/greasemonkey" />
        <rdf:li rdf:resource="http://delicious.com/jicknan/firefox" />
      </rdf:Bag>
    </taxo:topics><cc:license xmlns:cc="http://web.resource.org/cc/" cc:license="http://creativecommons.org/licenses/by-nc-sa/2.5/" /></entry><entry><title type="text">Personal Menu :: Firefox Add-ons [del.icio.us]</title><link rel="alternate" type="text/html" href="https://addons.mozilla.org/en-US/firefox/addon/3895" /><category term="firefox" /><author><name>jicknan</name></author><updated>2008-06-17T23:02:14-07:00</updated><id>https://addons.mozilla.org/en-US/firefox/addon/3895</id><content type="html">&amp;quot;Firefox菜单栏和工具栏的优化工具。我用它把菜单栏收缩到工具栏的图标中，以便显示更多的网页内容。&amp;quot;</content><taxo:topics xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/">
      <rdf:Bag xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
        <rdf:li rdf:resource="http://delicious.com/jicknan/firefox" />
      </rdf:Bag>
    </taxo:topics><cc:license xmlns:cc="http://web.resource.org/cc/" cc:license="http://creativecommons.org/licenses/by-nc-sa/2.5/" /></entry><entry><title type="text">upload2picasa - Google Code [del.icio.us]</title><link rel="alternate" type="text/html" href="http://code.google.com/p/upload2picasa/" /><category term="picasa python linux" /><author><name>jicknan</name></author><updated>2008-06-05T01:37:48-07:00</updated><id>http://code.google.com/p/upload2picasa/</id><taxo:topics xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/">
      <rdf:Bag xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
        <rdf:li rdf:resource="http://delicious.com/jicknan/picasa" />
        <rdf:li rdf:resource="http://delicious.com/jicknan/python" />
        <rdf:li rdf:resource="http://delicious.com/jicknan/linux" />
      </rdf:Bag>
    </taxo:topics><cc:license xmlns:cc="http://web.resource.org/cc/" cc:license="http://creativecommons.org/licenses/by-nc-sa/2.5/" /></entry><entry><title type="text">gdata-python-client - Google Code [del.icio.us]</title><link rel="alternate" type="text/html" href="http://code.google.com/p/gdata-python-client/" /><category term="api google python gdata" /><author><name>jicknan</name></author><updated>2008-06-05T01:34:48-07:00</updated><id>http://code.google.com/p/gdata-python-client/</id><taxo:topics xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/">
      <rdf:Bag xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
        <rdf:li rdf:resource="http://delicious.com/jicknan/api" />
        <rdf:li rdf:resource="http://delicious.com/jicknan/google" />
        <rdf:li rdf:resource="http://delicious.com/jicknan/python" />
        <rdf:li rdf:resource="http://delicious.com/jicknan/gdata" />
      </rdf:Bag>
    </taxo:topics><cc:license xmlns:cc="http://web.resource.org/cc/" cc:license="http://creativecommons.org/licenses/by-nc-sa/2.5/" /></entry><entry gr:crawl-timestamp-msec="1212592058690"><id gr:original-id="tag:blogger.com,1999:blog-20188279.post-6539105021210602062">tag:google.com,2005:reader/item/2c0072dc3dc4a505</id><title type="html">左小诅咒—尊敬</title><published>2008-06-04T14:30:00Z</published><updated>2008-06-04T14:30:16Z</updated><link rel="alternate" href="http://jicknan.blogspot.com/2008/06/blog-post.html" type="text/html" /><content xml:base="http://jicknan.blogspot.com/" type="html">&amp;quot;&lt;br&gt;　　当嘲笑你的人开始为你念诗 &lt;br&gt;　　"一个人要抬多少次头才看到蓝天？" &lt;br&gt;　　你即刻学会说套用的蹩脚诗： &lt;br&gt;　　一个人要哭多少次才能感到不委屈！ &lt;br&gt;　　 &lt;br&gt;　　所有的灯有灯罩是为更照亮人 &lt;br&gt;　　所有的人去点灯不是把它放在兜里 &lt;br&gt;　　那么所有的灯它为什么都有光环？ &lt;br&gt;　　掌权的人哟,知道的比我们多&lt;br&gt;&lt;br&gt;　　掌权者不哭泣怎么赢得人民 &lt;br&gt;　　掌权者不哭泣怎么赢得人民 &lt;br&gt;&amp;quot;&lt;br&gt;&lt;br&gt;&lt;a href="http://www.songtaste.com/song/11438/" rel="nofollow"&gt;http://www.songtaste.com/song/11438/&lt;/a&gt; &lt;br&gt; &lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/20188279-6539105021210602062?l=jicknan.blogspot.com"&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=L2WdcKv4I74:g7lD57Trm8A:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=L2WdcKv4I74:g7lD57Trm8A:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?i=L2WdcKv4I74:g7lD57Trm8A:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>jick</name></author><source gr:stream-id="feed/http://jicknan.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://jicknan.blogspot.com/atom.xml</id><title type="html">风行</title><link rel="alternate" href="http://jicknan.blogspot.com/" type="text/html" /></source><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-sa/2.0/" /></entry><entry><title type="text">picasa2flickr - flickr upload plugin for picasa [del.icio.us]</title><link rel="alternate" type="text/html" href="http://picasa2flickr.sourceforge.net/" /><category term="google photo picasa flickr" /><author><name>jicknan</name></author><updated>2008-06-03T21:23:38-07:00</updated><id>http://picasa2flickr.sourceforge.net/</id><taxo:topics xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/">
      <rdf:Bag xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
        <rdf:li rdf:resource="http://delicious.com/jicknan/google" />
        <rdf:li rdf:resource="http://delicious.com/jicknan/photo" />
        <rdf:li rdf:resource="http://delicious.com/jicknan/picasa" />
        <rdf:li rdf:resource="http://delicious.com/jicknan/flickr" />
      </rdf:Bag>
    </taxo:topics><cc:license xmlns:cc="http://web.resource.org/cc/" cc:license="http://creativecommons.org/licenses/by-nc-sa/2.5/" /></entry><entry><title type="text">Google Reader: Show Feed Favicons – Userscripts.org [del.icio.us]</title><link rel="alternate" type="text/html" href="http://userscripts.org/scripts/show/24371" /><category term="greasemonkey google" /><author><name>jicknan</name></author><updated>2008-06-03T10:06:17-07:00</updated><id>http://userscripts.org/scripts/show/24371</id><taxo:topics xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/">
      <rdf:Bag xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
        <rdf:li rdf:resource="http://delicious.com/jicknan/greasemonkey" />
        <rdf:li rdf:resource="http://delicious.com/jicknan/google" />
      </rdf:Bag>
    </taxo:topics><cc:license xmlns:cc="http://web.resource.org/cc/" cc:license="http://creativecommons.org/licenses/by-nc-sa/2.5/" /></entry><entry gr:crawl-timestamp-msec="1211184633715"><id gr:original-id="tag:blogger.com,1999:blog-20188279.post-6317042670170014210">tag:google.com,2005:reader/item/8b60949ad1555371</id><title type="html">一个 PHP setcookie() 的小问题</title><published>2008-05-19T07:02:00Z</published><updated>2008-05-19T07:02:16Z</updated><link rel="alternate" href="http://jicknan.blogspot.com/2008/05/php-setcookie.html" type="text/html" /><content xml:base="http://jicknan.blogspot.com/" type="html">碰到一个奇怪的问题：&lt;br&gt;&lt;br&gt;同一个 Apache/PHP Server，同一段 PHP 代码，在 Firefox 里可以成功设置 cookie，而 Opera/IE7 里却无法设置。&lt;br&gt;&lt;br&gt;怎么也想不明白，请教 Google， 在 php 的官方 setcookie() 手册页发现了问题的所在：&lt;br&gt;&lt;blockquote style="border-left:1px solid rgb(204, 204, 204);margin:0pt 0pt 0pt 0.8ex;padding-left:1ex"&gt; &lt;code&gt;&lt;span&gt;If you are having issues with IE7 and setcookie(), be sure to verify that the cookie is set via http for http sites, and https for https site. &lt;/span&gt;&lt;/code&gt;&lt;br&gt;&lt;code&gt;&lt;span&gt; &lt;/span&gt;&lt;/code&gt;&lt;br&gt;&lt;code&gt;&lt;span&gt; Also, if the time is incorrect on your server, IE7 will also disallow those cookies from being set.&lt;/span&gt;&lt;/code&gt;&lt;br&gt;&lt;/blockquote&gt;&lt;br&gt;（From: &lt;a href="http://www.php.net/manual/en/function.setcookie.php#72313"&gt;http://www.php.net/manual/en/function.setcookie.php#72313&lt;/a&gt;）&lt;br&gt; &lt;br&gt;我的问题出在时间上，我的 Server 时间现在还停留在 1999 年 XD。修改时间后，Opera/IE 都可以设置 cookie 了。&lt;br&gt;&lt;br&gt;由于对 php 所知不多，真正的原因我也说不上来，期待 php 高手答疑解惑。&lt;br&gt; &lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/20188279-6317042670170014210?l=jicknan.blogspot.com"&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=hUjH7i_fLpw:rKFBFXXZ_eU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=hUjH7i_fLpw:rKFBFXXZ_eU:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?i=hUjH7i_fLpw:rKFBFXXZ_eU:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>jick</name></author><source gr:stream-id="feed/http://jicknan.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://jicknan.blogspot.com/atom.xml</id><title type="html">风行</title><link rel="alternate" href="http://jicknan.blogspot.com/" type="text/html" /></source><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-sa/2.0/" /></entry><entry gr:crawl-timestamp-msec="1208866598820"><id gr:original-id="tag:blogger.com,1999:blog-20188279.post-7492797242105145067">tag:google.com,2005:reader/item/300743b591003db6</id><title type="html">主流 3G 标准线索</title><published>2008-04-22T10:59:00Z</published><updated>2008-04-22T10:59:11Z</updated><link rel="alternate" href="http://jicknan.blogspot.com/2008/04/3g.html" type="text/html" /><content xml:base="http://jicknan.blogspot.com/" type="html">目前主流的 3G 标准主要有三个：&lt;br&gt;* UMTS，于 GSM 兼容，固定速率 2Mbps，低速 384 kbps，快速移动 144kbps&lt;br&gt;* CDMA2000 已经有比较成熟的商用了。&lt;br&gt;* TD-SCMA 384kbps&lt;br&gt;&lt;br&gt;三个标准的发展线索：&lt;br&gt;* UMTS WCDMA -&amp;gt; HSDPA -&amp;gt; HSUPA -&amp;gt; HSPA+ -&amp;gt; LTE&lt;br&gt;* CDMA2000 -&amp;gt; EV-DO Rev.0 -&amp;gt; Rev.A -&amp;gt; Rev.B -&amp;gt; UMB&lt;br&gt; * TD-SCDMA&lt;br&gt;&lt;br&gt;其中 LTE/UMB 是未来的 4G 标准。GSM 是 2G，GPRS 2.5G，EGDE 2.75G&lt;br&gt;&lt;br&gt;3G/4G 的竞争者：&lt;br&gt;* WiFi: 802.11a/b/g/n 已经有了广泛应用&lt;br&gt;* WiMax: 802.16 发展了移动版，可以在不同的热点间切换，似乎已经有内置 WiMax 的笔记本了&lt;br&gt;* 802.20：还是纸上谈兵，如果在谈的话&lt;br&gt;* 移动电视网络/IPTV: 独立的芯片，独立的网络，将移动电视从传统移动网络中剥离&lt;br&gt; &lt;br&gt;WiFi/WiMax/802.20 可以提供快速的移动网络，并借助 VoIP 和 3G/4G 竞争。&lt;br&gt;&lt;br&gt;-- &lt;br&gt;每一个不曾起舞的日子都是对生命的辜负。&lt;br&gt;Gmail/Gtalk: &lt;a href="mailto:jick.nan@gmail.com"&gt;jick.nan@gmail.com&lt;/a&gt; &lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/20188279-7492797242105145067?l=jicknan.blogspot.com"&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=ef761cMz8fU:uvMtFrVmm0M:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=ef761cMz8fU:uvMtFrVmm0M:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?i=ef761cMz8fU:uvMtFrVmm0M:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>jick</name></author><source gr:stream-id="feed/http://jicknan.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://jicknan.blogspot.com/atom.xml</id><title type="html">风行</title><link rel="alternate" href="http://jicknan.blogspot.com/" type="text/html" /></source><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-sa/2.0/" /></entry><entry gr:crawl-timestamp-msec="1208866598819"><id gr:original-id="tag:blogger.com,1999:blog-20188279.post-3380939121198679318">tag:google.com,2005:reader/item/0250fb511341bdd0</id><title type="html">无线 ISM 2.4GHz 里的玩家</title><published>2008-04-22T10:36:00Z</published><updated>2008-04-22T10:36:20Z</updated><link rel="alternate" href="http://jicknan.blogspot.com/2008/04/ism-24ghz.html" type="text/html" /><content xml:base="http://jicknan.blogspot.com/" type="html">ISM 2.4GHz 是免许可频段，因此有很多玩家都想进来。&lt;br&gt;&lt;br&gt;++ Bluetooth (FHSS，调频扩展)&lt;br&gt;* 手机无线耳麦事实上的标准&lt;br&gt;* 缺点： BT 的同步时钟是电池杀手。&lt;br&gt;&lt;br&gt;++ ZigBee (DSSS, 直接序列扩展)&lt;br&gt;* 适合占空比低的传感器：工业应用和楼宇自动化&lt;br&gt;* 电池使用寿命长，健壮&lt;br&gt;*  缺点: 1) 在稍高速率、低延迟应用中(鼠标，键盘，遥控器等计算机周边设备）表现不好；2）协议复杂，成本过高。&lt;br&gt; &lt;br&gt;++ IrDA: 超短巨鹿(&amp;lt;5m) 点对点应用&lt;br&gt;&lt;br&gt;++ WirelessUSB(DSSS)&lt;br&gt;* 致力于解决简单的点对点，点对多应用，如计算机周边设备，遥控玩具，家庭自动化&lt;br&gt;* 主要设计考量低功耗和抗干扰&lt;br&gt;* 期望特点：低功耗，低延迟，低成本，高可靠&lt;br&gt;&lt;br&gt;++ Nordic WDP&lt;br&gt;* 跳出 FHSS/DSSS 之外，更简单、更低耗，目标是计算机周边&lt;br&gt;&lt;br&gt;++ WiFi - 无线局域网&lt;br&gt; &lt;br&gt;问题：PS3/Xbox360/WII 遥控器都是无线的，它们都用的什么技术呢？&lt;br&gt;&lt;br&gt;-- &lt;br&gt;每一个不曾起舞的日子都是对生命的辜负。&lt;br&gt;Gmail/Gtalk: &lt;a href="mailto:jick.nan@gmail.com"&gt;jick.nan@gmail.com&lt;/a&gt;&lt;br&gt; &lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/20188279-3380939121198679318?l=jicknan.blogspot.com"&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=XW6Ze5iuhLE:pTpuP-9JgZA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=XW6Ze5iuhLE:pTpuP-9JgZA:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?i=XW6Ze5iuhLE:pTpuP-9JgZA:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>jick</name></author><source gr:stream-id="feed/http://jicknan.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://jicknan.blogspot.com/atom.xml</id><title type="html">风行</title><link rel="alternate" href="http://jicknan.blogspot.com/" type="text/html" /></source><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-sa/2.0/" /></entry><entry gr:crawl-timestamp-msec="1207581480373"><id gr:original-id="tag:blogger.com,1999:blog-20188279.post-4969409168766658685">tag:google.com,2005:reader/item/a4568ec1108db64b</id><title type="html">苏州 SUN 开发者日小感</title><published>2008-04-07T15:01:00Z</published><updated>2008-04-07T15:46:57Z</updated><link rel="alternate" href="http://jicknan.blogspot.com/2008/04/sun.html" type="text/html" /><content xml:base="http://jicknan.blogspot.com/" type="html">第一次参加厂商组织的活动，其实源于自己的一个转变：多参加一些针对开发者的聚会。&lt;br&gt;&lt;br&gt;我本身不用 Java，也不用 Solaris，更没听说过 NetBeans。我比较感兴趣的议题是 MySQL 和 AJAX &amp;amp; web 2.0；我还想看一下 Open 的 Solaris 是什么样子的，一直在透过 Google Reader 看 &lt;a href="http://blogs.sun.com/yongsun/"&gt;Yong Sun 的 blog&lt;/a&gt;。&lt;br&gt;&lt;br&gt;苏州 SUN 开发者日同时还是苏州软件评测中心-SUN中国战略合作的签约仪式，这也解释了 SUN 来苏州的原因。&lt;br&gt;&lt;br&gt;会场没有网络，也没有提供电源，主要讲了四个题目： Java SE 6, Open Solaris, GlassFish, NetBeans。只有 OpenSolaris 有点兴趣，其他时间我透过 Moto E2/Opera Mini/GPRS 在 wikipedia 了解 Java，OpenSolaris, ZFS，还看了获赠的 《Solaris 内核结构》的序言 :-) 当然还通过 Moto E2 玩 twitter，听 MP3——移动网络太重要了，Moto E2 太重要了，可是 1) 电池不够用 2）E2 的中文输入法太难用。&lt;br&gt;&lt;br&gt;晚餐后，继续参加了自由讨论，主要是想认识苏州的开发者。期间谈到了 MySQL。感觉他们都没有搞明白为什么 SUN 收购 MySQL（当然我也不知道真的原因 :-) 他们言必称 SUN 是服务世界 500 强，他们说 SUN 正在想办法提高 MySQL 的性能；他们也提到了 startups，但也仅仅是提到而已。当然，更多的是 Java 之类，我没有什么兴趣，也就没有跟进讨论。许多朋友都是来自做软件外包的，经常切换工具，感觉很不利于开发者个人成长。&lt;br&gt;&lt;br&gt;引用 &lt;a href="http://twitter.com/Fenng/statuses/784415741"&gt;Fenng 的 tweet&lt;/a&gt; 做结：&lt;br&gt;&lt;blockquote style="border-left:1px solid rgb(204, 204, 204);margin:0pt 0pt 0pt 0.8ex;padding-left:1ex"&gt;厂家组织的活动都很没劲的。似乎他们从来就不调查参加者的需求 to @&lt;a href="http://twitter.com/jicknan"&gt;jicknan&lt;/a&gt;&lt;/blockquote&gt; &lt;div&gt; &lt;/div&gt;--&lt;br&gt;每一个不曾起舞的日子都是对生命的辜负。&lt;br&gt;Gmail/Gtalk: &lt;a href="mailto:jick.nan@gmail.com"&gt;jick.nan@gmail.com&lt;/a&gt;&lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/20188279-4969409168766658685?l=jicknan.blogspot.com"&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=8Qaq4nlfJAg:NwYyMsVrRjo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=8Qaq4nlfJAg:NwYyMsVrRjo:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?i=8Qaq4nlfJAg:NwYyMsVrRjo:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>jick</name></author><source gr:stream-id="feed/http://jicknan.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://jicknan.blogspot.com/atom.xml</id><title type="html">风行</title><link rel="alternate" href="http://jicknan.blogspot.com/" type="text/html" /></source><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-sa/2.0/" /></entry><entry gr:crawl-timestamp-msec="1203484611080"><id gr:original-id="tag:blogger.com,1999:blog-20188279.post-5147246110440940902">tag:google.com,2005:reader/item/79529b13fdb5f41d</id><title type="html">FriendFeed: 我的新欢</title><published>2008-02-20T05:09:00Z</published><updated>2008-02-20T05:09:44Z</updated><link rel="alternate" href="http://jicknan.blogspot.com/2008/02/friendfeed.html" type="text/html" /><content xml:base="http://jicknan.blogspot.com/" type="html">FriendFeed 是 2008 年才开始用的，现在已经深深吸引了我。那么，FriendFeed 是什么呢？&lt;br&gt;&lt;ul&gt;&lt;li&gt;&amp;quot;View the web through your friends&amp;#39; eyes.&amp;quot; - &lt;a href="http://friendfeed.com/bret"&gt;Bret Taylor&lt;/a&gt;&lt;/li&gt;&lt;li&gt;FriendFeed... you know, for your friends. - &lt;a href="http://friendfeed.com/ana"&gt;Ana&lt;/a&gt;&lt;/li&gt; &lt;li&gt;All right, two more: 1) &amp;quot;FriendFeed, it&amp;#39;s about your friends.&amp;quot; and 2) &amp;quot;FriendFeed, share the web.&amp;quot; - &lt;a href="http://friendfeed.com/cristoblanco"&gt;Chris White&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Talking is what makes sharing interesting. - &lt;a href="http://friendfeed.com/baychang"&gt;Bay Chang&lt;/a&gt;&lt;/li&gt; &lt;li&gt;"FriendFeed is a communication medium for sharing and discussing interesting stuff, such as news and photos" - &lt;a href="http://friendfeed.com/paul"&gt;Paul Buchheit&lt;/a&gt;&lt;/li&gt;&lt;li&gt;FriendFeed - Share and discuss interesting things with your friends. - &lt;a href="http://friendfeed.com/jicknan"&gt;You&lt;/a&gt;&lt;/li&gt; &lt;li&gt;Right... sharing without talking is monochromatic. - &lt;a href="http://friendfeed.com/baychang"&gt;Bay Chang&lt;/a&gt;&lt;/li&gt;&lt;li&gt;FriendFeed is for sharing and discussing interesting news, photos, and other things on the web. - &lt;a href="http://friendfeed.com/cristoblanco"&gt;Chris White&lt;br&gt; &lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;via:&lt;br&gt; 1) &lt;a href="http://friendfeed.com/e/96c0298e-0442-83e3-2cc8-80da5c9f0604"&gt;http://friendfeed.com/e/96c0298e-0442-83e3-2cc8-80da5c9f0604&lt;/a&gt;&lt;br&gt; 2) &lt;a href="http://friendfeed.com/e/034615de-def1-11dc-9cf9-003048343a40"&gt;http://friendfeed.com/e/034615de-def1-11dc-9cf9-003048343a40&lt;/a&gt;&lt;br&gt; &lt;br&gt;虽然已经很久没有在 blog 发帖了，但是我的 web 生活在继续，活动记录都在 &lt;a href="http://friendfeed.com/jicknan"&gt;http://friendfeed.com/jicknan&lt;/a&gt; 呢 :P&lt;br&gt;&lt;br&gt;FriendFeed 已经在影响我的上网习惯了，有些新闻性质的网页，我以后将通过 FF Share 出来，而不是先前的 digest of jicknan 或者 &lt;a href="http://del.icio.us"&gt;del.icio.us&lt;/a&gt;。&lt;br&gt; &lt;br&gt;分享有趣的东西，并和朋友们一起讨论，是件令人激动的事情，而 FriendFeed 正在做这些。&lt;br&gt;&lt;br&gt;-- &lt;br&gt;每一个不曾起舞的日子都是对生命的辜负。&lt;br&gt;Gmail/Gtalk: &lt;a href="mailto:jick.nan@gmail.com"&gt;jick.nan@gmail.com&lt;/a&gt;&lt;br&gt; &lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/20188279-5147246110440940902?l=jicknan.blogspot.com"&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=eKKIN1b82IA:q4D2OE1EFU8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=eKKIN1b82IA:q4D2OE1EFU8:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?i=eKKIN1b82IA:q4D2OE1EFU8:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>jick</name></author><source gr:stream-id="feed/http://jicknan.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://jicknan.blogspot.com/atom.xml</id><title type="html">风行</title><link rel="alternate" href="http://jicknan.blogspot.com/" type="text/html" /></source><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-sa/2.0/" /></entry><entry gr:crawl-timestamp-msec="1201236274786"><id gr:original-id="tag:blogger.com,1999:blog-20188279.post-3730689599485390895">tag:google.com,2005:reader/item/eeddfac47ea4d43b</id><title type="html">Fwd: 对Jserv的访问两篇</title><published>2008-01-24T16:37:00Z</published><updated>2008-01-25T05:00:03Z</updated><link rel="alternate" href="http://jicknan.blogspot.com/2008/01/fwd-jserv.html" type="text/html" /><content xml:base="http://jicknan.blogspot.com/" type="html">(Orz，还要发一篇，爆发了 :P)&lt;br&gt;Jserv 仅比我大一岁，可是已经参与众多 FOSS 社区项目，名满两岸了，很是崇拜。还是加点*我*看了两篇访问后的记录吧：&lt;br&gt;&lt;br&gt;涉及：&lt;br&gt;* Kernel&lt;br&gt;* Embedded: RTOS, i18n, Ajax&lt;br&gt;* System emulation&lt;br&gt;* X11: QT/Embedded, 新酷音输入法 chewing&lt;br&gt;&lt;br&gt;&lt;br&gt;* 2005 年初，成立 Jserv's lab&lt;br&gt;* 2007 年初，成立 Orzlab&lt;br&gt;&lt;br&gt;近来看了些输入法方面的，SunPinYin 是一个线索，Yong Sun 写了一系列的代码导读，很深入，对我理解输入法现状很有帮助，很感谢。&lt;br&gt;&lt;br&gt; &lt;div style="margin:0px 2px;padding-top:1px;background-color:rgb(195, 217, 255);font-size:1px ! important;line-height:0px ! important"&gt; &lt;/div&gt;  &lt;div style="margin:0px 1px;padding-top:1px;background-color:rgb(195, 217, 255);font-size:1px ! important;line-height:0px ! important"&gt; &lt;/div&gt;  &lt;div style="padding:4px;background-color:rgb(195, 217, 255)"&gt;&lt;h3 style="margin:0px 3px;font-family:sans-serif"&gt;Sent to you by jicknan via Google Reader:&lt;/h3&gt;&lt;/div&gt;  &lt;div style="margin:0px 1px;padding-top:1px;background-color:rgb(195, 217, 255);font-size:1px ! important;line-height:0px ! important"&gt; &lt;/div&gt;  &lt;div style="margin:0px 2px;padding-top:1px;background-color:rgb(195, 217, 255);font-size:1px ! important;line-height:0px ! important"&gt; &lt;/div&gt;  &lt;div style="margin:0px 10px;overflow:auto;font-family:sans-serif;width:100%"&gt;&lt;h2 style="margin:0.25em 0pt 0pt"&gt;&lt;div&gt;&lt;a href="http://blogs.sun.com/yongsun/entry/%E5%AF%B9jserv%E7%9A%84%E8%AE%BF%E9%97%AE%E4%B8%A4%E7%AF%87"&gt;对Jserv的访问两篇&lt;/a&gt;&lt;/div&gt;&lt;/h2&gt;  &lt;div style="margin-bottom:0.5em"&gt;via &lt;a href="http://blogs.sun.com/yongsun/"&gt;素心如何天上月 (Yong Sun's Blog)&lt;/a&gt; by yongsun on 11/18/07&lt;/div&gt;   &lt;a href="http://blog.linux.org.tw/%7Ejserv/"&gt;Jserv&lt;/a&gt;（黃敬群）是名满两岸的自由软件开发者，是我崇拜的青年才俊、技术偶像之一。我虽然痴长了几岁，但是在Linux和自由软件开发方面却是后学晚辈。下面是台湾的同业者对Jserv的访问，读后直觉得自己光阴虚度了 :$。&lt;br&gt;&lt;br&gt;&lt;a href="http://www.openfoundry.org/index.php?option=com_content&amp;amp;task=view&amp;amp;id=989"&gt;自由軟體開發者 Jserv 訪問 (上)&lt;/a&gt;&lt;br&gt;&lt;a href="http://www.openfoundry.org/index.php?option=com_content&amp;amp;task=view&amp;amp;id=1033"&gt;自由軟體開發者 Jserv 訪問 (下)&lt;/a&gt;&lt;br&gt;&lt;br&gt;记得我最初了解到Jserv，是2002或03年，读到他的一篇关于Qt/Embedded本地化的文章。后来逐步看到他在浏览器、嵌入式系统、图形库、Java虚拟机、输入法、Linux内核、实时系统等各个方面的成绩，对他的技术能力真是钦佩不已。而且Jserv还是一位兼具诗人气质、十分感性的青年，从他许多的blog中，可以看到他对人生许多富有哲理性的思考。&lt;br&gt;&lt;br&gt;后来虽然在网络上有一些联络，但对他个人却了解不多。这两篇访问，正好满足了我的好奇... ...&lt;br&gt;&lt;br&gt;希望他将Lab的事业拓展到大陆来。&lt;br&gt;&lt;/div&gt; &lt;br&gt; &lt;div style="margin:0px 2px;padding-top:1px;background-color:rgb(195, 217, 255);font-size:1px ! important;line-height:0px ! important"&gt; &lt;/div&gt;  &lt;div style="margin:0px 1px;padding-top:1px;background-color:rgb(195, 217, 255);font-size:1px ! important;line-height:0px ! important"&gt; &lt;/div&gt;  &lt;div style="padding:4px;background-color:rgb(195, 217, 255)"&gt;&lt;h3 style="margin:0px 3px;font-family:sans-serif"&gt;Things you can do from here:&lt;/h3&gt;  &lt;ul style="font-family:sans-serif"&gt;&lt;li&gt;&lt;a href="http://www.google.com/reader/view/feed%2Fhttp%3A%2F%2Fblogs.sun.com%2Fyongsun%2Ffeed%2Fentries%2Fatom?source=email"&gt;Subscribe to 素心如何天上月 (Yong Sun's Blog)&lt;/a&gt; using &lt;b&gt;Google Reader&lt;/b&gt;&lt;/li&gt;  &lt;li&gt;&lt;a href="http://www.google.com/reader/?source=email"&gt;Get started using Google Reader&lt;/a&gt; to easily keep up with &lt;b&gt;all your favorite sites&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;  &lt;div style="margin:0px 1px;padding-top:1px;background-color:rgb(195, 217, 255);font-size:1px ! important;line-height:0px ! important"&gt; &lt;/div&gt;  &lt;div style="margin:0px 2px;padding-top:1px;background-color:rgb(195, 217, 255);font-size:1px ! important;line-height:0px ! important"&gt; &lt;/div&gt;&lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/20188279-3730689599485390895?l=jicknan.blogspot.com"&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=EPcc2LkvWjM:IAi0zzomRCk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=EPcc2LkvWjM:IAi0zzomRCk:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?i=EPcc2LkvWjM:IAi0zzomRCk:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>jick</name></author><source gr:stream-id="feed/http://jicknan.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://jicknan.blogspot.com/atom.xml</id><title type="html">风行</title><link rel="alternate" href="http://jicknan.blogspot.com/" type="text/html" /></source><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-sa/2.0/" /></entry><entry gr:crawl-timestamp-msec="1201232661155"><id gr:original-id="tag:blogger.com,1999:blog-20188279.post-8096343153163976337">tag:google.com,2005:reader/item/bfb463e56dceb6f5</id><title type="html">Linux-based NAS 扩展到 4 bays</title><published>2008-01-25T03:28:00Z</published><updated>2008-01-25T11:14:24Z</updated><link rel="alternate" href="http://jicknan.blogspot.com/2008/01/linux-based-nas-4-bays.html" type="text/html" /><content xml:base="http://jicknan.blogspot.com/" type="html">写在前面：给 2008 的一个承诺就是多写写 Simple NAS 和嵌入式 Linux，就让这个帖子作为 NAS 的开端吧。&lt;br&gt;&lt;br&gt;&lt;a href="http://www.linuxdevices.com/news/NS6150725965.html"&gt;LinuxDevices 的消息&lt;/a&gt;，Qnap System 推出了 4-bay 的 NAS —— TS-409 Pro Turbo，这里是其规格：&lt;br&gt;&lt;ul&gt;&lt;li&gt;Processor — Marvell 5281 500MHz &lt;/li&gt;&lt;li&gt;Memory — 256MB DDR2 RAM; 8MB flash&lt;/li&gt;&lt;li&gt;Hard drive capacity — 4 x 3.5-inch SATA I/II drives (not included), up to 4TB internal, RAID 0/ 1/ 5/ 6/ 5+ support&lt;/li&gt;&lt;li&gt;LAN port — 1 x gigabit Ethernet (RJ-45)&lt;/li&gt;&lt;li&gt; USB — 3 x USB 2.0 (support printer, disk, digital camera, pen drive, card reader, and USB hub)&lt;/li&gt;&lt;li&gt;LEDs — USB, status, eSATA, HDD, LAN, power&lt;/li&gt;&lt;li&gt;Dimensions — 8.9 x 6.9 x 7.4 inches (225 x 176 x 188 mm)&lt;/li&gt;&lt;li&gt;Operating system — Linux (unspecified version) &lt;/li&gt;&lt;/ul&gt;这款产品是 TS-109/TS-209 的升级版，支持的硬盘数量从一颗到两颗，再到 TS-409 的四颗，最多支持到 4TB，这就是这个产品最大的卖点，NAS 的一个至关重要的参数还是最根本的看容量，其次应该是稳定性、性能和功能融合能力。&lt;br&gt;&lt;br&gt;我感兴趣的一些地方：&lt;br&gt;&lt;ul&gt;&lt;li&gt; 我目前在玩的 Processor 是 Marvell 5181，TS-409 使用的 5281 应该是其升级了。&lt;/li&gt; &lt;li&gt; 8MB Flash 能放下多少东西？我比较感兴趣这台 NAS 支持哪些扩展功能，这些没有在 LinuxDevices 新闻里出现。BT/HTTP/FTP downloader? UPnP AV media server? Web Station?... 我会继续跟进这款产品，应该会有一些更新。&lt;/li&gt;&lt;li&gt; 256MB DDR2 RAM - 我很羡慕这个数字。我玩过的最高记录是 64MB，但主要的还是 32MB，汗。RAM 搞大一点，性能会提高不少，这可能是 NAS 发展的一个趋势。 &lt;/li&gt;&lt;li&gt; 现在的 NAS 都是 SATA HDD 和 Gigabit Ethernet 了，IDE 被淘汰，毫无悬念。一个还没有出现的潜在趋势：随着 SSD 的提高与普及，Simple NAS 迟早也要支持的。&lt;a href="http://www.dbanotes.net/review/emc_ssd.html"&gt;Fenng 就提到 EMC 已经在其产品上应用 SSD 了&lt;/a&gt;，虽然那是在高端 &lt;span style="text-decoration:line-through"&gt;NAS&lt;/span&gt; SAN 上面。&lt;/li&gt;&lt;li&gt; 没有 Wireless。一般来讲，Wireless 是 router 的功能。NAS 连到带有 Wireless 的 router 上，也有可以无线访问了，要 NAS 本身带有 Wireless，似乎不太必要，况且现在 Wireless 几乎成了 router 的标配。我曾经做过一段 Wireless for NAS，虽然该型号终於夭折。&lt;br&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br&gt;--&lt;br&gt;每一个不曾起舞的日子都是对生命的辜负。&lt;br&gt;Gmail/Gtalk:  &lt;a href="mailto:jick.nan@gmail.com"&gt;jick.nan@gmail.com&lt;/a&gt;&lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/20188279-8096343153163976337?l=jicknan.blogspot.com"&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=IM7V6-3slI4:ZGFrL1HSpyw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=IM7V6-3slI4:ZGFrL1HSpyw:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?i=IM7V6-3slI4:ZGFrL1HSpyw:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>jick</name></author><source gr:stream-id="feed/http://jicknan.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://jicknan.blogspot.com/atom.xml</id><title type="html">风行</title><link rel="alternate" href="http://jicknan.blogspot.com/" type="text/html" /></source><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-sa/2.0/" /></entry><entry gr:crawl-timestamp-msec="1201212503644"><id gr:original-id="tag:blogger.com,1999:blog-20188279.post-5206117635849221289">tag:google.com,2005:reader/item/7d57031f275391cf</id><title type="html">Python 写的输入法： scim-python</title><published>2008-01-24T17:34:00Z</published><updated>2008-01-25T01:41:04Z</updated><link rel="alternate" href="http://jicknan.blogspot.com/2008/01/python-scim-python.html" type="text/html" /><content xml:base="http://jicknan.blogspot.com/" type="html">Linux 下输入法，我一开始使用的是 &lt;a href="http://www.fcitx.org/"&gt;fcitx&lt;/a&gt;，后来切换到 &lt;a href="http://www.scim-im.org/"&gt;scim&lt;/a&gt; 这个平台，但在 scim 里还是用得 fcitx，比较喜欢 fcitx 的输入习惯。也想过自己修改一下，或者 porting 新版的 fcitx 到 scim，但却一直没有行动。&lt;br&gt;&lt;br&gt;关注&lt;a href="http://blog.linux.org.tw/%7Ejserv/"&gt;  jserv's blog&lt;/a&gt;，经常看他提到&lt;a href="http://chewing.csie.net/"&gt;新酷音&lt;/a&gt;这个注音输入法，想来使用自己亲手打造的输入法也是很爽的事情，于是参与一个输入法项目的想法越来越强烈。当再次看到 Jserv 提到《 &lt;a href="http://blog.linux.org.tw/%7Ejserv/archives/001956.html"&gt;SunPinYin  引擎改以 CDDL / LGPL 2.1 雙重授權 &lt;/a&gt;》，我终于决定花点时间了解一下 Linux 下的输入法，然后选择一个加入开发。&lt;br&gt;&lt;br&gt;通过 &lt;a href="http://www.opensolaris.org/os/project/input-method/"&gt;SunPinyin&lt;/a&gt; 和新酷音这两个线索，我大体了解到比较现代的输入法都是基于统计语言模型(statistical language model, SLM)的智能引擎。而英文键盘到中文的转换方式主要有全拼、双拼、注音、五笔几种。新酷音是注音，在对岸使用。&lt;br&gt;&lt;br&gt;上述这些输入法，大都使用 C++ 编写，而我对 C++ 不是不在行。又因为精力问题，也不想花太多在 C++ 上。于是，当我看到 python 写的 &lt;a href="http://code.google.com/p/scim-python/"&gt;scim-python&lt;/a&gt; 输入法时，很是兴奋。Python 一直对我比较有吸引力，只是还没有等到好的切入机会。&lt;br&gt;&lt;a href="http://scim-python.googlecode.com/files/wiki-pinyin-4.png"&gt;&lt;img style="margin:0px auto 10px;display:block;text-align:center;width:320px" src="http://scim-python.googlecode.com/files/wiki-pinyin-4.png" alt="" border="0"&gt;&lt;/a&gt;&lt;br&gt;scim-python 最开始是由  &lt;a href="http://code.google.com/u/Shawn.P.Huang/"&gt; Shawn.P.Huang&lt;/a&gt; 在 2007 年 9 月开始开发的，他用 C++ 写了 scim 的 Python wrapper，而后在这个基础上又写了 EnglishWriter 和 Pinyin 输入法，后来 &lt;a href="http://code.google.com/u/yufanyufan/"&gt;yufanyufan&lt;/a&gt;, 参与进来，写了整句输入。目前 scim-python 使用的是搜狗拼音输入法开放的词库，从输入效果来看，还算不错，已经达到可以使用的级别。但目前功能上还比较薄弱，设计上的变数依然很大。&lt;br&gt;&lt;br&gt;--&lt;br&gt;每一个不曾起舞的日子都是对生命的辜负。&lt;br&gt;Gmail/Gtalk: &lt;a href="mailto:jick.nan@gmail.com"&gt;jick.nan@gmail.com&lt;/a&gt;&lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/20188279-5206117635849221289?l=jicknan.blogspot.com"&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=mg1lFAJj21Y:cvmVaPR9-2s:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=mg1lFAJj21Y:cvmVaPR9-2s:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?i=mg1lFAJj21Y:cvmVaPR9-2s:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>jick</name></author><source gr:stream-id="feed/http://jicknan.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://jicknan.blogspot.com/atom.xml</id><title type="html">风行</title><link rel="alternate" href="http://jicknan.blogspot.com/" type="text/html" /></source><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-sa/2.0/" /></entry><entry gr:crawl-timestamp-msec="1200562626955"><id gr:original-id="tag:blogger.com,1999:blog-20188279.post-2944137085488492907">tag:google.com,2005:reader/item/60a2c80532d905a7</id><title type="html">也说嵌入式移植的裁减</title><published>2008-01-16T20:14:00Z</published><updated>2008-01-17T10:44:49Z</updated><link rel="alternate" href="http://jicknan.blogspot.com/2008/01/blog-post_17.html" type="text/html" /><content xml:base="http://jicknan.blogspot.com/" type="html">因为需要重启 web station 的开发，因此翻了翻 bob 的旧文──这个 function 最开始就是他在做。看到 《&lt;span&gt;&lt;a href="http://www.cublog.cn/u/22617/showart.php?id=372050"&gt;作嵌入式，一定要学会裁减&lt;/a&gt;》一文，有些感慨。&lt;br&gt;&lt;br&gt;在该文中，bob 提到嵌入式裁减的四条路:&lt;br&gt;&lt;/span&gt;&lt;ol&gt;&lt;li&gt;strip - 去掉 binary 中在运行时用不到一些符号。这些符号在 debug 的时候要用到，但到板子上就不需要了。 &lt;/li&gt;&lt;li&gt;strace - 这可以说是 bob 的独门秘笈，他最先使用，也用的最多。核心细想就是："需要的一个不少， 不需要的一个不多"。&lt;/li&gt;&lt;li&gt;去掉不需要的功能 - bob 认为这是代码级别，比较高级一些。&lt;/li&gt;&lt;li&gt;扩充 Flash - 无法再减，无须再减。&lt;br&gt;&lt;/li&gt;&lt;/ol&gt;这些当然是我应该遵守的，但我还有个习惯：在做上面 4 步之前，我会充分利用 configure 的选项，尽量将不需要的功能通过 options 的调整关掉，在此称为 Setup 0。这和 Setup 3 是一样的目的，不过不是 code 级别，而是 compile 级别。&lt;br&gt;&lt;br&gt;这就是我的小感触。bob 是个善于总结的，我要向他学习，并跟着他顺道反思 :P&lt;br&gt;&lt;br&gt;--&lt;br&gt;每一个不曾起舞的日子都是对生命的辜负。&lt;br&gt;Gmail/Gtalk: &lt;a href="mailto:jick.nan@gmail.com"&gt;jick.nan@gmail.com&lt;/a&gt;&lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/20188279-2944137085488492907?l=jicknan.blogspot.com"&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=_HEALzlOy2A:qRvYzlj4zDQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=_HEALzlOy2A:qRvYzlj4zDQ:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?i=_HEALzlOy2A:qRvYzlj4zDQ:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>jick</name></author><source gr:stream-id="feed/http://jicknan.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://jicknan.blogspot.com/atom.xml</id><title type="html">风行</title><link rel="alternate" href="http://jicknan.blogspot.com/" type="text/html" /></source><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-sa/2.0/" /></entry><entry gr:crawl-timestamp-msec="1200413815292"><id gr:original-id="tag:blogger.com,1999:blog-20188279.post-6879616906859505886">tag:google.com,2005:reader/item/40db4655392ed009</id><title type="html">EGLIBC: Embedded GLIBC 体验</title><published>2008-01-15T11:39:00Z</published><updated>2008-01-15T11:40:01Z</updated><link rel="alternate" href="http://jicknan.blogspot.com/2008/01/eglibc-embedded-glibc.html" type="text/html" /><content xml:base="http://jicknan.blogspot.com/" type="html">&lt;a href="http://www.eglibc.org/home"&gt;EGLIBC&lt;/a&gt; 是一个小型化的 Glibc，由 &lt;span&gt;CodeSourcery 联合 freescale, montavista 和 windriver 等厂商合作开发。今天参照&lt;a href="http://jserv.sayya.org/embedded/toolchain-eglibc.sh"&gt; jserv 的脚本&lt;/a&gt; ，花了几个小时终于编出了。在此过程中，我深刻体会到一个强劲的 PC 对开发编译的重要性，目前用的单核 1.4GHz X31 明显不够用。&lt;br&gt;&lt;br&gt;编译时，我稍稍修改了一下 jserv 的脚本。修改后的版本放在了这里：&lt;br&gt;&lt;a href="http://jicknan.googlecode.com/svn/trunk/code/toolchain-eglibc.sh"&gt;http://jicknan.googlecode.com/svn/trunk/code/toolchain-eglibc.sh &lt;/a&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;在我的 slackware-current 上还有个问题：EGLIBC-HEADES 那一步 configure 的时候，会提示没有找到支持 long lines and -e 的 grep。看了一下 grep 的 man page，-e 是支持的，估计问题出在 long lines 上。我找到相应的(eglibc/libc{posix/glob, sysdeps/unix/sysv/linux}) configure，将检查出错跳过的地方注释掉(做 cross compiling 的时候，我经常这么干)，向下编译没有再出现问题。 &lt;br&gt;&lt;br&gt;其实工具生成之后，还需要编译个系统出来试试，我还没有合适的系统，仅仅测试了一个小程序。接下来打算做一个自己可以完全掌控的系统，编译器就用这个了。&lt;br&gt;&lt;br&gt;工作中所有的都是 prebuilt 的编译器，考虑的和其他组员一致，我也不好使用自己的工具了 :P 不过，现在工具好像也是出自 CodeSourcery。&lt;br&gt;&lt;br&gt;参考：&lt;br&gt;&lt;div&gt;&lt;div&gt; &lt;div title="Jun 1, 2007 1:22 PM"&gt;* jserv: &lt;a href="http://orzlab.blogspot.com/2007/05/eglibc.html"&gt;&lt;b&gt;EGLIBC&lt;/b&gt;初探&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br&gt; -- &lt;br&gt;每一个不曾起舞的日子都是对生命的辜负。&lt;br&gt;Gmail/Gtalk: &lt;a href="mailto:jick.nan@gmail.com"&gt;jick.nan@gmail.com&lt;/a&gt; &lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/20188279-6879616906859505886?l=jicknan.blogspot.com"&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=Ilevi1FYUec:dQ9nxvApjog:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=Ilevi1FYUec:dQ9nxvApjog:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?i=Ilevi1FYUec:dQ9nxvApjog:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>jick</name></author><source gr:stream-id="feed/http://jicknan.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://jicknan.blogspot.com/atom.xml</id><title type="html">风行</title><link rel="alternate" href="http://jicknan.blogspot.com/" type="text/html" /></source><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-sa/2.0/" /></entry><entry gr:crawl-timestamp-msec="1200030132129"><id gr:original-id="tag:blogger.com,1999:blog-20188279.post-5139466636049518524">tag:google.com,2005:reader/item/6d49e33b3c4a3fa9</id><title type="html">还是需要 wiki 做个人知识管理(PKM)</title><published>2008-01-10T17:04:00Z</published><updated>2008-01-11T13:47:51Z</updated><link rel="alternate" href="http://jicknan.blogspot.com/2008/01/wiki-pkm.html" type="text/html" /><content xml:base="http://jicknan.blogspot.com/" type="html">其实很早就尝试试用 wiki 做个人知识管理，2005 年尝试的是 pmwiki (php 写的，文本保存，不需要数据库）。后来空间没了，算是断了。在 2006 和 2007 年尝试过在本地架设 Moinmoin(Python, 免数据库) 和 Trac(Python, sqlite/mysql)。在线的尝试过 woodpecker 的Moinmoin，但这是中文 Python 开发者乐园，放杂七杂八的东西总感觉不好意思，虽然是在自己的页面。&lt;br&gt;&lt;br&gt;我对 wiki 系统的需求是：&lt;br&gt;* 便携。日常工作生活中，我要在 2 个网络环境，3 台 PC/NB，5 种系统中切换，必须保证每个系统都能方便的访问，架在 Internet 上似乎是惟一的选择。&lt;br&gt;* 稳定。个人知识管理么，要的就是积累，一要不出问题，二要活得长远。&lt;br&gt;* 速度。使用起来要流畅，不能在一个页面卡半天，但这也要好于 timeout 需要重来。&lt;br&gt;* 便于控制，操作简单，最好有权限控制。有些可以共享，有些则适合自己参考。&lt;br&gt;&lt;br&gt;比较一下 online/local 版本的不同： * online: 便携，其他都要看具体的服务方。&lt;br&gt;* local: 稳定好，速度没有瓶颈，便于控制，但就是 TMD 不便携。&lt;br&gt;&lt;br&gt;我在 web 上努力寻找合适的 PKM 系统：&lt;br&gt;* Google Docs 不够简单，编辑界面复杂，操作起来也不直接，速度也是个限制，不流畅。便携和稳定都还不错。目前主要用于查看/存放 Docs, Excel，虽然自己不生产这些东西，但别人生产的还是要兼容。&lt;br&gt;* Google Notebook 最近一两个月才开始用的多一些，改版后好用多了。可以用来保存看到的网页，配合 Firefox 插件效果更好，也可以存放一些简单的想法。但没有格式控制，也不能很好的组织知识的体系结构。&lt;br&gt;* MindMeister mind map 在线工具，但不是所有的知识都适合这种结构。&lt;br&gt;* ...&lt;br&gt;&lt;br&gt;努力之后，我还是发现需要一个 wiki 系统。现在开始从两方面解决这个问题：&lt;br&gt;* 寻找 online 的服务，重点考察稳定、速度与控制。&lt;br&gt;* 可以架在 web 上的系统，现在买的空间好像也很不稳定，因此这个系统需要满足：&lt;br&gt; * 兼容性。有尽可能多的候选空间可以跳，目前 php 的实现比较多。&lt;br&gt; * 备份、同步与恢复。随时做好换空间(不稳定，被阻尼，……）的准备，便于备份，便于同步，便于恢复。数据库倾向于 sqlite，不过声称支持的好像不多；其次可以考虑文件方式存储数据，像 pmwiki，但不便于同步；mysql 支持的挺多，也可以考虑，但比 sqlite 要复杂。&lt;br&gt;&lt;br&gt;你有更好的建议么？&lt;br&gt;&lt;br&gt;[update @Fri Jan 11 21:41:44 CST 2008] 在 &lt;a href="http://www.wikimatrix.org/"&gt;Wiki Matrix&lt;/a&gt; 比较了一番后，选了一个在线的 wiki 服务： &lt;a href="http://jicknan.wikidot.com/"&gt;wikidot&lt;/a&gt;。这类方案有个很大的弊端是可能被阻尼。&lt;br&gt;&lt;br&gt;--&lt;br&gt;每一个不曾起舞的日子都是对生命的辜负。&lt;br&gt;Gmail/Gtalk: &lt;a href="mailto:jick.nan@gmail.com"&gt;jick.nan@gmail.com&lt;/a&gt;&lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/20188279-5139466636049518524?l=jicknan.blogspot.com"&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=Nl2NWalcSvc:z6Dk0iWtpJk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=Nl2NWalcSvc:z6Dk0iWtpJk:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?i=Nl2NWalcSvc:z6Dk0iWtpJk:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>jick</name></author><source gr:stream-id="feed/http://jicknan.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://jicknan.blogspot.com/atom.xml</id><title type="html">风行</title><link rel="alternate" href="http://jicknan.blogspot.com/" type="text/html" /></source><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-sa/2.0/" /></entry><entry gr:crawl-timestamp-msec="1199552840638"><id gr:original-id="tag:blogger.com,1999:blog-20188279.post-3145330447901263318">tag:google.com,2005:reader/item/0edcdd8ad545fa6b</id><title type="html">软件与在线应用使用年结之2007</title><published>2008-01-05T15:55:00Z</published><updated>2008-01-05T15:55:16Z</updated><link rel="alternate" href="http://jicknan.blogspot.com/2008/01/2007.html" type="text/html" /><content xml:base="http://jicknan.blogspot.com/" type="html">一年了，总结一下，以记录使用习惯上的变化轨迹。&lt;br&gt;&lt;br&gt;Firefox 去年我的第一浏览器还是 Opera，今年已经变成了 Firefox。是 Firefox 的扩展将我绑在了其上： Adblock Plus 屏蔽广告；Gladder 使用在线代理去墙外兜风；Access Flickr! 显示墙外的图片；Google Gears 离线使用在线服务，在线的还是限于带宽，不够流畅；Google Notebook 记录零散的笔记；以及 Fenng 提到的 Twitter 扩展 TwitterFox 和 Hung 提到的 Picnik 截屏与在线图形编辑扩展。 &lt;br&gt;&lt;br&gt;Gmail 估计是 Firefox 里停留最多的页面了，配合 Gmail Talk 效果更佳 :P&lt;br&gt;&lt;br&gt;Greader 也是每天必玩的节目，很好，好强大。就是和 Google Gears 配合的还不太好。试用过抓虾，没用过鲜果。我是 RSS reader 使用者，而不再是试用者 :P&lt;br&gt;&lt;br&gt;&lt;a href="http://Blogger.com"&gt;Blogger.com&lt;/a&gt;  虽然 07 年发贴并不多，虽然即使发贴也用 Gmail email 过去，虽然发了贴在墙内也看不到，但是 Blogger 还是很重要的一环。07年，我仍然在写给自己。 &lt;br&gt;&lt;br&gt;Twitter 虽然三月份就注册了，但是并没有太玩，不敢太用，怕被口水淹没。开始用的是安静许多的 Saying@weazone，后来还是经不住 ocde 的诱惑，跑了去。但还是相当节制。直到前些天看到 Fenng 推荐了 TwitterFox，才算放开了一些。但目前 Twitter 还只是 tweet，像 Hung 那样 TwitterFeed 定向的，还是不敢 follow :-) &lt;br&gt;&lt;br&gt;LinkedIn 比较喜欢的一个服务，虽然年中才用。注册过若邻，但太热闹（感觉这类网站也不是那样的热闹发），不喜欢。Facebook 也是 SNS 之一，而且很热，但给我的感觉也很乱。这里应该有不少猎头，已经有两家大公司通过这里找到我了。&lt;br&gt;&lt;br&gt;Google Docs &amp;amp; WPS Office 主要是打开 M$ 的 office 文件，WPS Office 基本可以搞定，而且更小更快；Google Docs 则做一些编辑和共享。这一使用和车东很像。 &lt;br&gt;&lt;br&gt;豆瓣：去的不是太多，但每次要看书/音乐/电影的评价，都会想到这里。&lt;br&gt;&lt;br&gt;Picasa Web 这里有 1GB 空间，不必在乎每月的流量会否超过，我喜欢一次上传很多，picasa 桌面版配合的不错。&lt;br&gt;&lt;br&gt;财帮子  三月份一发布就开始用了，越用月舒服，基本上开基不用找别的网站了。&lt;br&gt;&lt;br&gt;其他的：原则上试用开源/免费的。中文输入法 Linux 用的是 scim+fcim，Win 下是谷歌拼音，编辑器用 Vim，Win 下的压缩/解压缩用 7-zip，抓包用 wireshark。 &lt;br&gt;&lt;br&gt;注意：都没有给链接，下面这个页面可以找到大部分： &lt;a href="http://jicknan.bplaced.net/link.html"&gt;http://jicknan.bplaced.net/link.html&lt;/a&gt;。&lt;br&gt;&lt;br&gt; 参考：&lt;br&gt; * HUNG: &lt;a href="http://www.wangtam.com/50226711/eaeieaecceaecc_133561.php" title="过去一年，天天使用的软件和在线应用"&gt;过去一年，天天使用的软件和在线应用 &lt;/a&gt;&lt;br&gt; * 车东: &lt;a href="http://www.chedong.com/blog/archives/001411.html"&gt;年终总结： 2007 chedong.com 小结&lt;/a&gt;&lt;br&gt; * David Yin: &lt;a href="http://seo.g2soft.net/2007/12/27/2007_web2_services_used_often.html"&gt;  2007年常用的Web 2.0服务&lt;/a&gt;&lt;br&gt; * Feng:&lt;a href="http://www.dbanotes.net/review/2007_web2_service_i_used.html"&gt;年度回顾：2007 年最常用的 Web 2.0 服务&lt;/a&gt;&lt;br&gt;&lt;br&gt;-- &lt;br&gt;每一个不曾起舞的日子都是对生命的辜负。|| Gmail/Gtalk:  &lt;a href="mailto:jick.nan@gmail.com"&gt;jick.nan@gmail.com &lt;/a&gt; &lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/20188279-3145330447901263318?l=jicknan.blogspot.com"&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=8jLx3VVpDys:NA1uHplsmv0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=8jLx3VVpDys:NA1uHplsmv0:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?i=8jLx3VVpDys:NA1uHplsmv0:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>jick</name></author><source gr:stream-id="feed/http://jicknan.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://jicknan.blogspot.com/atom.xml</id><title type="html">风行</title><link rel="alternate" href="http://jicknan.blogspot.com/" type="text/html" /></source><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-sa/2.0/" /></entry><entry gr:crawl-timestamp-msec="1199507455037"><id gr:original-id="tag:blogger.com,1999:blog-20188279.post-2113410518697466486">tag:google.com,2005:reader/item/28dcd5bf7ffcfcc2</id><title type="html">移动开发，第三次浪潮</title><published>2008-01-05T03:26:00Z</published><updated>2008-01-05T03:26:38Z</updated><link rel="alternate" href="http://jicknan.blogspot.com/2008/01/blog-post.html" type="text/html" /><content xml:base="http://jicknan.blogspot.com/" type="html">- 农业时代&lt;br&gt;- 工业时代&lt;br&gt;- 信息时代&lt;br&gt; * 大型机/小型机&lt;br&gt; *  PC 第一推动： IC 芯片&lt;br&gt; * Mobile Intenet/Mobile net&lt;br&gt;  * Symbian&lt;br&gt;  * Windows Mobile&lt;br&gt;   * BlackBerry&lt;br&gt;   * iPhone&lt;br&gt;   * Linux&lt;br&gt;    * Android: Linux + Java&lt;br&gt;    * OpenMoko &lt;br&gt;    * ...&lt;br&gt;&lt;br&gt;源于《程序员》(2008.1)的专题。&lt;br&gt;&lt;br&gt;-- &lt;br&gt;每一个不曾起舞的日子都是对生命的辜负。&lt;br&gt;Gmail/Gtalk: &lt;a href="mailto:jick.nan@gmail.com"&gt;jick.nan@gmail.com&lt;/a&gt; &lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/20188279-2113410518697466486?l=jicknan.blogspot.com"&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=98Q0QUJAI90:GbXWfZ2i4UE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/jicknan?a=98Q0QUJAI90:GbXWfZ2i4UE:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/jicknan?i=98Q0QUJAI90:GbXWfZ2i4UE:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>jick</name></author><source gr:stream-id="feed/http://jicknan.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://jicknan.blogspot.com/atom.xml</id><title type="html">风行</title><link rel="alternate" href="http://jicknan.blogspot.com/" type="text/html" /></source><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-sa/2.0/" /></entry></feed>
