有时,RCS 控制下的文件在未锁定时被修改(= 由我检出以进行修改)。
(在这些情况下,它实际上被 RCS 设置为只读以防止此类修改;但它可能是 /etc/ 下的配置文件,因为我正在升级包而被修改。)
然后通常我还是想提交新的修改,就好像在修改之前已经签出最后一个修订版。
那么如何进行最好呢?
我通常使用 Emacs VC,并执行C-x v v
检出和检入。但如果文件尚未预先检出,则此操作将失败。有没有办法专门从 Emacs 内部进行?但是也欢迎使用 shell 命令回答。
其实要简单得多。您可以将rcs -l
其锁定,然后再次尝试将其重新签入。
我假设你问这个问题时的情况是这样的:
$ echo v1 >foo
$ ci -u -t-"Test file." foo
$ chmod u+w foo
$ echo v2 >foo
Run Code Online (Sandbox Code Playgroud)
此时,ci
和co
都会失败:
$ co -l foo
foo,v --> foo
revision 1.1 (locked)
writable foo exists; remove it? [ny](n):
$ ci -u foo
foo,v <-- foo
ci: foo,v: no lock set by username
Run Code Online (Sandbox Code Playgroud)
这是锁定文件并提交更改的方法:
$ rcs -l foo
RCS file: foo,v
1.1 locked
done
$ ci -u -m"Second revision." foo
foo,v <-- foo
new revision: 1.2; previous revision: 1.1
done
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6037 次 |
最近记录: |