研修(SVNコマンド)
コマンドを一通り学んだところでSVNの壁を壊しにかかる。
目標:以前作成した応募フォーム.htmlをSVN管理できるようにする
1.リポジトリをチェックアウトする(サーバーにあるデータを初めてローカルで受け取る)
コマンド
$ svn co http://・・・/trunk リビジョン 1 をチェックアウトしました。 $ ls -la 合計 92 drwxr-xr-x 6 sato sato 4096 5月 27 16:47 . drwxr-xr-x 9 root root 4096 5月 25 10:27 .. -rw------- 1 sato sato 668 5月 27 13:42 .bash_history -rw-r--r-- 1 sato sato 304 5月 25 10:27 .bash_logout -rw-r--r-- 1 sato sato 191 5月 25 10:27 .bash_profile -rw-r--r-- 1 sato sato 124 5月 25 10:27 .bashrc -rw-r--r-- 1 sato sato 5619 5月 25 10:27 .canna drwxrwxr-x 3 sato sato 4096 5月 26 18:52 .subversion drwxr-xr-x 2 sato sato 4096 5月 25 16:33 public_html drwxrwxr-x 3 sato sato 4096 5月 26 18:57 trunk drwxrwxr-x 2 sato sato 4096 5月 27 16:42 work
svn co [リポジトリの場所] でリポジトリからデータをチェックアウトする
※svn checkout [リポジトリの場所]でも可
ローカルに必要なデータtrunkを持ってこれた
2.チェックアウトしたデータに応募フォームのデータを入れる(trunkフォルダ内にhtmlデータをコピペ)
コマンド
$ cp -r public_html trunk $ cd trunk $ ls -la 合計 32 drwxrwxr-x 4 sato sato 4096 5月 27 18:27 . drwxr-xr-x 6 sato sato 4096 5月 27 16:47 .. drwxrwxr-x 7 sato sato 4096 5月 27 18:20 .svn drwxr-xr-x 2 sato sato 4096 5月 27 18:27 public_html
trunk内にhtmlデータが入っているpublic_htmlフォルダをコピーできた
3.編集したtrunkをSVNリポジトリにコミット(ローカルにあるtrunkをSVNリポジトリに送って更新する)
コマンド
$ svn add trunk/public_html A trunk/public_html A trunk/public_html/finish.html A trunk/public_html/form.html A trunk/public_html/index.html A trunk/public_html/confirm.html $ cd trunk $ svn commit -m "test" 追加しています public_html 追加しています public_html/confirm.html 追加しています public_html/finish.html 追加しています public_html/form.html 追加しています public_html/index.html ファイルのデータを送信中です.... リビジョン 2 をコミットしました。
svn add [追加するデータ] で作業コピーにあるデータをリポジトリに追加する準備を行う。
A trunk/public_html はデータが追加準備であるということ
svn commit で実際にリポジトリへコミット(更新)する
svn commit -m "[コメント]"で履歴にコメントを残してコミット
念のためリポジトリのtrunkの更新情報を確認
$ svn log http://・・・/trunk/public_html ------------------------------------------------------------------------ r2 | sato | 2009-05-27 19:20:18 +0900 (水, 27 5月 2009) | 1 line test ------------------------------------------------------------------------
コメントの"test"があるためコミットできたことを確認
引っかかったところ
作業コピーの概念
コマンドを打つと度々次のようなエラー文が出た。
$ svn update http://・・・/trunk
svn: 'http://・・・' は作業コピーではありません
作業コピーはチェックアウトしたデータのこと、つまり今回は
trunkフォルダ
であることは分かった。
ただこれに対してaddやcommitを実行する際、自分の場所をどこにして実行すればいいかがまだいまいち掴めていない。
作業コピー内でやればいいのか、それとも作業コピーの一つ上でやればいいのか、それともあまり場所は関係ない?
問題が発生?
今回、public_htmlフォルダをコミットした。
public_htmlは本来、公開用のhtmlを置くなど、
重要なフォルダでかつ直下に様々なサイトのフォルダ、ファイルが置かれている。
なのでpublic_htmlという名前でコミットすること、
さらにpublic_htmlの直下にファイルを置くのは実際は危険と解釈。
よって名前変更、データの置き方を考慮してもう一度チェックアウトからやり直す。
というところで今日は力尽く。。。
明日、頭すっきりさせて頑張る。