shapefileなどのGISデータをバージョン管理するとき、ふつうにgitやsvnなどでファイルそのものをバージョン管理するという方法もありますが、GeoGigという、GISデータに特化したバージョン管理プログラムがあるということで、試してみます。
環境
今回は次の環境を使用します。GeoGigの本体はjarファイルですので、Javaの動作環境を用意します。
- OS…Windows 8.1 Pro
- Java…Java SE Development Kit 8u45
事前準備
まず、GeoGigのサイトからzipファイルをダウンロードし、任意の場所に展開します。中にbinというフォルダーがあるので、このフォルダーをPATH環境変数に追加しておきます。
実行
GeoGigのチュートリアルが用意されているので、それを参考にしながら実行していきます。サンプルデータとなるshapefileもチュートリアルのページからダウンロードできます。
リポジトリ作成
まずはgeogig用のリポジトリを作る必要があります。任意の場所に空のフォルダーを作成し(今回はC:\work\geogigというフォルダーを作りました)、コマンドプロンプトでgeogig initと打ちます。C:\work\geogig>geogig init
Initialized empty Geogig repository in C:\work\geogig\.geogig
ユーザー情報の設定
ユーザーの名前とemailを設定しておかないと、あとでファイルをデータをする際にエラーになるので、先に設定しておきます。C:\work\geogig>geogig config user.name testuser
C:\work\geogig>geogig config user.email testuser@test.com
shapefileの登録
いよいよデータを登録してみます。チュートリアルのサンプルデータは、ポリゴンが3個のshapefileになっています。
登録するには、まずimportコマンドでデータをGeoGig内にインポートし、それからadd⇒commitの順番でコマンドを実行します。
C:\work\geogig>geogig shp import c:\work\tutorial_data\snapshot1\parks.shp
Importing from shapefile c:\work\tutorial_data\snapshot1\parks.shp
Importing parks (1/1)...
33%
3 distinct features inserted in 296.7 ms
Building final tree...
3 features tree built in 16.85 ms
100%
c:\work\tutorial_data\snapshot1\parks.shp imported successfully.
C:\work\geogig>geogig add
Counting unstaged elements...4
Staging changes...
100%
3 features and 1 trees staged for commit
0 features and 0 trees not staged for commit
C:\work\geogig>geogig commit -m "first version"
100%
[f157afde4e55026608733c1d50ab4935db33fb17] first version
Committed, counting objects...3 features added, 0 changed, 0 deleted.
内容の確認
lsコマンドを実行すると、parksというディレクトリ?の中に、3つのフィーチャーが作られていることがわかります。C:\work\geogig>geogig lsshowコマンドで、データの中身を見ることができます。
Root tree/
parks/
C:\work\geogig>geogig ls parks
parks/
3
2
1
まずはparksの定義を見てみます。
C:\work\geogig>geogig show parks
TREE ID: cfe448b15b03dc1f9fe687643f16fb9f01aa2a5a
SIZE: 3
NUMBER Of SUBTREES: 0
DEFAULT FEATURE TYPE ID: c202e4dc0bbeaf2cbb068a5f0b168099832455da
DEFAULT FEATURE TYPE ATTRIBUTES
the_geom: <MULTIPOLYGON>
owner: <STRING>
agency: <STRING>
name: <STRING>
usage: <STRING>
parktype: <STRING>
area: <DOUBLE>
perimeter: <DOUBLE>
次に、1つのフィーチャーを見てみます。座標と属性値が見られます。
C:\work\geogig>geogig show parks/1
ID: 75a0cbf170714fb1b60f0bd80fddeac8fbfb2429
FEATURE TYPE ID: c202e4dc0bbeaf2cbb068a5f0b168099832455da
ATTRIBUTES
----------
the_geom: MULTIPOLYGON (((-122.87290806613127 42.335410926692404, -122.87265408473853 42.335482522206775, -122.87253735255466 42.33526317433605, -122.87279895095871 42.3351865382066, -122.87290806613127 42.335410926692404)))
owner: Jackson County
agency: Jackson County
name: Bear Creek Channel
usage: Public
parktype: Riparian
area: 600.217529296875
perimeter: 98.3058889120852
blameコマンドで、フィーチャーのジオメトリや属性値をいつ誰が更新したかがわかるようです。
C:\work\geogig>geogig blame parks/1とりあえず今回はここまで。
parktype: Riparian f157afd testuser testuser@test.com 2015-05-31 01:04:54
area: 600.217529296875 f157afd testuser testuser@test.com 2015-05-31 01:04:54
perimeter: 98.3058889120852 f157afd testuser testuser@test.com 2015-05-31 01:04:54
name: Bear Creek Channel f157afd testuser testuser@test.com 2015-05-31 01:04:54
the_geom: MULTIPOLYGON (((-122.87290806613127 42.335410926692404, -122.87265408473853 42.335482522206775, -122.87253735255466 42.33526317433605, -122.87279895095871 42.3351865382066, -122.87290806613127 42.335410926692404))) f157afd testuser testuser@test.com 2015-05-31 01:04:54
owner: Jackson County f157afd testuser testuser@test.com 2015-05-31 01:04:54
usage: Public f157afd testuser testuser@test.com 2015-05-31 01:04:54
agency: Jackson County f157afd testuser testuser@test.com 2015-05-31 01:04:54
0 件のコメント:
コメントを投稿