Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
Subversionの基礎練習
[go: Go Back, main page]

Subversionの基礎練習

結城浩

バージョン管理ツールSubversionの基礎練習です。 Windows XPのコマンドプロンプトでSubversionの基本的なコマンドを動かしていきます。 Subversionを学び始めるきっかけにどうぞ。

目次

はじめに

Windows XPのコマンドプロンプトで、 バージョン管理ツールSubversionの基本的なコマンドを動かしてみましょう。

この文書の通りに実行すると、 基本的なSubversionのコマンドをひととおり試すことができます(できるはずです)。

バージョン管理というものやSubversionについての解説は省き、 オペレーションだけを示します。

ダウンロードとインストール

Subversion (subversion.tigris.org)Downloadsのページから、 Windows NT, 2000, XP and 2003 を探し、そこに書いてある文章、

The latest command-line binaries and libraries for Windows can be found in this directory of the file-sharing area.

this directoryというリンクをたどります。 ファイルの一覧が出るので、新しいものを選んでダウンロードします。

結城が以下で使ったファイルは、 svn-1.1.3-setup.exe です。

ダウンロードしたファイルを動かすとインストールが始まります。 インストール先はデフォルトのまま、 C:\Program Files\Subversion としました。

リポジトリ用のディレクトリを作ります

リポジトリ用のディレクトリC:\home\reposを作ります。

C:\> mkdir C:\home

C:\> mkdir C:\home\repos

リポジトリを初期化します

はじめにリポジトリを初期化します。 この初期化は、そのリポジトリを使う最初だけ行います。

C:\> svnadmin create C:\home\repos

新しいモジュールを作ってインポートします

新しいモジュールをリポジトリにインポートします。

ディレクトリとファイルを作成します

まずは作業場所を整え、readme.txtというファイルを作ります。

C:\> mkdir work

C:\> cd work

C:\work> mkdir myproject

C:\work> cd myproject

C:\work\myproject> echo This is readme file. > readme.txt      ※readme.txtを作った

C:\work\myproject> type readme.txt        ※内容の確認
This is readme file.

カレントディレクトリ以下を新しいモジュールmyprojectとしてリポジトリにインポートします

インポートするリポジトリは、file:///C:/home/repos/myprojectのようにURLで指定することに注意しましょう。

C:\work\myproject> svn import file:///C:/home/repos/myproject -m "Initial import."
Adding         readme.txt

Committed revision 1.

練習なので作業場所を削除します

C:\work\myproject> cd ..

C:\work> del myproject
C:\work\myproject\*、よろしいですか (Y/N)? y

C:\work> rmdir myproject

ここまでで、myprojectディレクトリの内容はなくなりましたが、 リポジトリにはmyprojectというモジュールがすでに登録されています。

チェックアウトして作業開始

myprojectモジュールをチェックアウトしよう

C:\work> svn checkout file:///C:/home/repos/myproject myproject
A  myproject\readme.txt
Checked out revision 1.

C:\work> cd myproject

C:\work\myproject> dir /b
readme.txt

C:\work\myproject> type readme.txt
This is readme file.

確かにreadme.txtが取り出せています。

実は、ここには管理用のディレクトリ .svn も隠し属性付きで作られています。

C:\work\myproject> dir /b/a       ※/aオプションで全部見る
.svn                            ※管理用のディレクトリ
readme.txt

差分を確認します

readme.txtファイルに一行追加してから、 リポジトリとの差分を確認してみましょう。

C:\work\myproject> echo Nice to meet you. >> readme.txt

C:\work\myproject> type readme.txt
This is readme file.
Nice to meet you.

C:\work\myproject> svn diff               ※差分を見てみよう
Index: readme.txt
===================================================================
--- readme.txt  (revision 1)
+++ readme.txt  (working copy)
@@ -1 +1,2 @@
 This is readme file.
+Nice to meet you

コミットすると編集結果がリポジトリに反映されます

作業コピーに加えた修正は、コミットしてはじめてリポジトリに反映されます。 コミットするときには、-mオプションで修正内容を書きます。

C:\work\myproject> svn commit -m "Add a greeting."
Sending        readme.txt
Transmitting file data .
Committed revision 2.

新しいファイルを追加します

リポジトリが修正されていないか確かめます

C:\work\myproject> svn update
At revision 2.

新しいhello.txtファイルを作ります

C:\work\myproject> echo Hello. > hello.txt

C:\work\myproject> type hello.txt
Hello.

hello.txtを追加します

C:\work\myproject> svn add hello.txt
A         hello.txt

コミットしてリポジトリに反映します

C:\work\myproject> svn commit -m "Add hello.txt."
Adding         hello.txt
Transmitting file data .
Committed revision 3.

新しいディレクトリを追加します

ディレクトリもファイルと同じように追加します

新しいディレクトリもファイルと同じように追加します。

C:\work\myproject> mkdir src

C:\work\myproject> svn add src
A         src

ディレクトリの中にファイルを作って追加します

C:\work\myproject> cd src

C:\work\myproject\src> ※ここで、エディタを使ってGood.javaを作成する

C:\work\myproject\src> type Good.java
public class Good {
    public static void main(String[] args) {
        System.out.println("Good");
    }
}

C:\work\myproject\src> svn add Good.java
A         Good.java

C:\work\myproject\src> svn commit -m "Add a Java source file."
Adding         src
Adding         src\Good.java
Transmitting file data .
Committed revision 4.

C:\work\myproject\src> cd ..

普段の作業はこんな風に進みます

C:\work\myproject> svn update
At revision 4.

C:\work\myproject> cd src

C:\work\myproject\src> ※ここで、エディタを使ってGood.javaを編集する

C:\work\myproject\src> type Good.java
public class Good {
    public static void main(String[] args) {
        System.out.println("Good!!");
    }
}

C:\work\myproject\src> svn diff                     ※差分を見てみよう
Index: Good.java
===================================================================
--- Good.java   (revision 4)
+++ Good.java   (working copy)
@@ -1,5 +1,5 @@
 public class Good {
     public static void main(String[] args) {
-        System.out.println("Good");
+        System.out.println("Good!!");
     }
 }

C:\work\myproject\src> svn commit -m "Add exclamations."
Sending        src\Good.java
Transmitting file data .
Committed revision 5.

C:\work\myproject\src> cd ..

Subversionの基礎練習は以上です。 お疲れさま。

この文書に書かなかったこと

関連リンク

更新履歴

ぜひ、感想をお送りください

あなたのご意見・感想をお送りください。 あなたの一言が大きなはげみとなりますので、どんなことでもどうぞ。

あなたの名前: メール:
学年・職業など: 年齢: 男性女性
(上の情報は、いずれも未記入でかまいません)


何かの理由でうまく送れない場合にはメールhyuki at hyuki dot comあてにお願いします。

豊かな人生のための四つの法則