svn commit (ci)
优质
小牛编辑
117浏览
2023-12-01
svn commit (ci) — 把工作副本里的修改发送到仓库中.
大纲
svn commit [
PATH
...]
描述
把工作副本里的修改发送到仓库中. 如果用户没有用选项 --file
(-F
) 或 --message
(-m
) 提供日志消息, svn 将打开一个文本编辑器供用户编写提交日志, 见 “通用配置选项”一节.
如果没有带上选项 --no-unlock
, svn commit 会把所有已提交的 PATH
上的锁令牌 (如果有的话) 发送给仓库, 并在提交完成后解锁.
提示 | |
---|---|
如果用户已经开始提交并且 Subversion 已经启动了一个文本编辑器 等待用户输入提交日志, 此时仍然可以中止提交. 如果用户希望中止提交, 只需要不保存提交日志并退出编辑器, 此时 Subversion 将会询问用户是 想中止提交, 还是不输入日志直接提交, 还是重新打开编辑器编写日志. |
选项
--changelist
(--cl
)ARG
--depth
ARG
--editor-cmd
CMD
--encoding
ENC
--file
(-F
)FILENAME
--force-log
--keep-changelists
--message
(-m
)MESSAGE
--no-unlock
--quiet
(-q
)--targets
FILENAME
--with-revprop
ARG
示例
把提交日志直接写在命令行上, 如果没有指定目标文件, 则默认提交的是 当前目录 (“.
”) 下的所有修改:
$ svn commit -m "added howto section." Sending a Transmitting file data . Committed revision 3.
提交 foo.c
的修改, 并从文件 msg
读取提交日志:
$ svn commit -F msg foo.c Sending foo.c Transmitting file data . Committed revision 5.
如果选项 --file
(-F
) 所指定的 文件处于版本控制中, 而你的确想从该文件中读取提交日志, 就要额外加上 选项 --force-log
:
$ svn commit -F file_under_vc.txt foo.c svn: E205004: Log message file is a versioned file; use '--force-log' to override $ svn commit --force-log -F file_under_vc.txt foo.c Sending foo.c Transmitting file data . Committed revision 6.
提交一个将被删除的文件:
$ svn commit -m "removed file 'c'." Deleting c Committed revision 7.