Название

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.