Late code contribution

偶然发现server.el里的server-running-p应该是用来检测是否有emacs server已经启动,但实际上却没有作用。前后看了看,原来是server-socket-dir的设置有问题,于是自己做了修改,把server-running-p里面的server-socket-dir换成了(or server-socket-dir (format “/tmp/
emacs%d” (user-uid))),这样就可以了。

其实这个问题上周四就发现了,拖了拖,到周六晚上无聊的时候才在gnu.emacs.bug上发了帖子,第二天早上发现有了回帖,原来人家刚刚修改过,只是方法不太一样,我也没仔细看,便以为问题还在,冒冒失失地发了帖子。第一次试图给自由软件贡献代码就这样失败了。:-(

整个事情的发展还真符合我的性格,呵呵!

git

git上手的难度堪比学习emacs,虽说都是版本控制工具,可是跟CVS、Subversion有太多的不同。要不是发现了git-emacs,恐怕还是没有勇气尝试。获得git-emacs及其文档的方式如下:

$ git clone git://github.com/tsgates/git-emacs.git

也可以在线http://tsgates.cafe24.com/git/git-emacs.html查看。基本的功能都有,但是git实在是有太多的命令和用法,很多情况下还是要用命令行。其实这些都不是问题,关键还是git太不一样了。举个例子,git commit并不会提交修改的文件,一定要用git commit -a;git声称其track的是文件的内容,而不是文件本身,这句话一直不太理解。

上手的时候可以参考Everyday GIT With 20 Commands Or So,至少可以做到知其然,尽管不知其所以然。一定要尽早尝试,我看过各式各样的文档好多个,仍然不知道怎么用,直到真正用起来,才有了一点感受。总之,理论基础要有,但实践更重要。