rcmdnk's blog

実用 Subversion 第2版

SVN Tips.

Sponsored Links

ファイルを実行ファイルにする

SVNに実行ファイルとして登録したいとき、 最初から実行ファイルとして登録すると他でチェックアウトしても実行ファイル として作られますが、 一度普通のファイルとして管理下に加えた後に実行ファイルとしたい場合、 chmod 755 fileみたいにしてもSVNでのファイルのタイプは変更されません。

$ svn ls
test.sh
$ ls -l
-rw-r--r-- ... test.sh
$ svn status
$ chmod 755 test.sh
$ svn status
$

と何も起こりませんしコミットもできません。

ファイルの内容を変更してコミットしても、他の場所で チェックアウトすると644な実行ファイルでない形でコピーが作られます。

SVN上でのファイルタイプを変更するには

$ svn propset svn:executable on test.sh
property 'svn:executable' set on 'test.sh'

と、svn propset(またはsvn psetsvn ps)というコマンドを使って svn:executableという特性を追加します。

各ファイルがどのような特性を持ってるかは

$ svn proplist test.sh
Properties on 'test.sh':
  svn:executable

と、svn proplist(またはisvn plistsvn pl)を使って見れます。

この特性を削除するには

$ snv propdel svn:executable test.sh
property 'svn:executable' deleted from 'test.sh'.

svn propdel(またはsvn pdelsvn pd)を使います。

後、どうでもいいことですが何故かpropsetはメッセージの後にピリオドが付いてないのに propdelの方は付いてますね。 (ちょっとWebにあるexampleを幾つか見たところやはりそうらしい。。。)

その他のSVN Tips:

SVN tips

  • @入りファイル
  • svnのdiff
  • ファイルだけチェックアウト
  • プロテクト
  • SVNで接続のチェック
Sponsored Links
Sponsored Links

« シェルコマンドの意味を説明してくれるコマンド Bash/Zshで'source'するファイルの中でで自分のパスを取得する »