含有章节索引的中文 文章模板

-- hoxide [2004-08-15 23:26:13]

1. emacs中的subversion

简述

1.1. 安装

1.2. 配置

  • 如前所述,在.emacs里加入:

 (load "d:/emacs/site-lisp/psvn.el")

1.3. 使用

  • svn的emacs接口与rcs,cvs的接口不太一样不能用C-x v v等操作,而是通过 M-x svn-status 进入一个类似目录管理的界面,这个界面的有关键邦定:

;; g     - svn-status-update:               run 'svn status -v'
;; C-u g - svn-status-update:               run 'svn status -vu'
;; =     - svn-status-show-svn-diff         run 'svn diff'
;; l     - svn-status-show-svn-log          run 'svn log'
;; i     - svn-status-info                  run 'svn info'
;; r     - svn-status-revert                run 'svn revert'
;; V     - svn-status-resolved              run 'svn resolved'
;; U     - svn-status-update-cmd            run 'svn update'
;; c     - svn-status-commit-file           run 'svn commit'
;; a     - svn-status-add-file              run 'svn add'
;; +     - svn-status-make-directory        run 'svn mkdir'
;; R     - svn-status-mv                    run 'svn mv'
;; C-d   - svn-status-rm                    run 'svn rm'
;; M-c   - svn-status-cleanup               run 'svn cleanup'
;; b     - svn-status-blame                 run 'svn blame'
;; RET   - svn-status-find-file-or-examine-directory
;; ^     - svn-status-examine-parent
;; ~     - svn-status-get-specific-revision
;; E     - svn-status-ediff-with-revision
;; s     - svn-status-show-process-buffer
;; e     - svn-status-toggle-edit-cmd-flag
;; ?     - svn-status-toggle-hide-unknown
;; _     - svn-status-toggle-hide-unmodified
;; m     - svn-status-set-user-mark
;; u     - svn-status-unset-user-mark
;; $     - svn-status-toggle-elide
;; DEL   - svn-status-unset-user-mark-backwards
;; * !   - svn-status-unset-all-usermarks
;; * ?   - svn-status-mark-unknown
;; * A   - svn-status-mark-added
;; * M   - svn-status-mark-modified
;; .     - svn-status-goto-root-or-return
;; f     - svn-status-find-file
;; o     - svn-status-find-file-other-window
;; v     - svn-status-view-file-other-window
;; I     - svn-status-parse-info
;; P l   - svn-status-property-list
;; P s   - svn-status-property-set
;; P d   - svn-status-property-delete
;; P e   - svn-status-property-edit-one-entry
;; P i   - svn-status-property-ignore-file
;; P I   - svn-status-property-ignore-file-extension
;; P C-i - svn-status-property-edit-svn-ignore
;; P k   - svn-status-property-set-keyword-list
;; P y   - svn-status-property-set-eol-style
;; h     - svn-status-use-history
;; q     - svn-status-bury-buffer

上面的纯粹是从psvn.el的代码里抄出来的, 可以看的资料实在不多, 如果想深入了解,还是那句话---看代码.

1.3.1. svn的菜单

  • 在svn-status模式下,emacs会有一个svn菜单,汇集了几乎所有的svn命令.

1.3.2. commit

  • 同样缩写是ci,svn里面叫commit,cvs里也叫commit.用起来其实差不多,执行commit命令后会出现一个编辑窗口要求输入日志,输完日志后怎么吧它传给svn,困惑了我半天,后来用了一下VC才根据mini-buffer的提示才知道原来是C-c C-c,在svn里面也是这个命令(居然没提示,偶这只菜鸟想了半天:P).

1.3.3. 同时处理多个文件

  • svn-status下add了一堆文件后做commit. 嗯?怎么只能commit一个文件? 回头看了一下少得可怜的帮助,发现有个mark功能,试试吧所有要ci的文件全mark,然后在ci,果然可以了,ci一堆文件.