名前

svn commit — 作業コピーの変更点をリポジトリに送ります。

書式

svn commit [PATH...]

説明

作業コピーの変更点をリポジトリに送ります。--file--message オプションを指定して、コミットにログメッセージを指定しない場合、svn は、コミットメッセージを作成させるため、エディタを起動します。config項 にある editor-cmd をご覧ください。

svn commit は、--no-unlock を指定しなければ、見つかったロックトークンを送信し、コミットされたすべての PATHS 上にあるロックを (再帰的に) 開放します。

ティップ

コミットを始め、Subversion がメッセージ作成のためのエディタを起動した後でも、まだ変更をコミットせず中断できます。コミットを取り消す場合、コミットメッセージを保存せずに単にエディタを終了してください。Subversion はコミットを中断するか、メッセージなしで継続するか、メッセージを再編集するかを聞いてきます。

別名

ci (「check in」 の短縮形です。「co」 ではありません。「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
ファイルのデータを送信しています .
リビジョン 3 をコミットしました。

ファイル foo.c (コマンドラインに明示) の変更点を、ファイル msg の内容をコミットメッセージとしてコミットします。

$ svn commit -F msg foo.c
Sending        foo.c
ファイルのデータを送信しています .
リビジョン 5 をコミットしました。

コミットメッセージとして、--file で指定したファイルがバージョン管理下にある場合、以下のように、--force-log オプションを渡す必要があります。

$ svn commit --file file_under_vc.txt foo.c
svn: ログメッセージファイルはバージョン管理下にあります
svn: ログメッセージファイルがバージョン管理されているファイルです。無効にするには '--force-log' を用いてください

$ svn commit --force --file-log file_under_vc.txt foo.c
Sending        foo.c
ファイルのデータを送信しています .
リビジョン 6 をコミットしました。

削除準備したファイルをコミットするには以下のようにします。

$ svn commit -m "removed file 'c'."
Deleting       c

リビジョン 7 をコミットしました。