Название

svn commit — Фиксирует сделанные вами изменения рабочей копии в хранилище.

Формат

svn commit [PATH...]

Описание

Фиксирует сделанные вами изменения рабочей копии в хранилище. Если вы не воспользовались ни --file, ни --message параметром, svn запустит внешний редактор для составления комментария. Обращайтесь за подробностями к описанию параметра editor-cmd в «Config».

svn commit отправит хранилищу все рекурсивно найденные метки блокировок и разблокирует соответствующие этим меткам ресурсы, если не был указан параметр --no-unlock. Место поиска задается указанием PATH.

[Подсказка] Подсказка

Если вы начали фиксацию изменений и Subversion запустила ваш внешний редактор для составления комментария, вы все еще можете прервать операцию фиксации изменений. Если вы хотите отменить фиксации, просто выйдете из редактора без сохранения изменений. Subversion заинтересуется - хотите ли вы прервать операцию, продолжить без описания изменений или же редактировать описания изменений снова.

Альтернативные имена

ci (сокращение от «check in»; a не «co», что есть сокращение для «checkout»)

Изменяет

Как рабочую копию, так и хранилище

Требует доступа к хранилищу

Да

Параметры

--message (-m) TEXT
--file (-F) FILE
--quiet (-q)
--no-unlock
--non-recursive (-N)
--targets FILENAME
--force-log
--username USER
--password PASS
--no-auth-cache
--non-interactive
--encoding ENC
--config-dir DIR

Примеры

Зафиксировать изменения файлов в хранилище из текущего каталога («.») и его подкаталогов, задав пояснение изменений в командной строке:

$ 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), вы должны задать параметр --force-log для явного выражения своих намерений:

$ svn commit --file file_under_vc.txt foo.c
svn: The log message file is under version control
svn: Log message file is a versioned file; use '--force-log' to override

$ svn commit --force-log --file 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.