2014年1月26日日曜日

「gitについて習わんとな」の巻

gitはモデルを簡単にアップデートしてくれるので便利なツールだがカスタマイズされたサーバー上とは異なる内容の同一ファイルの管理方法がよくわからん。例えばさっきFABMモデルをアップデートしてみると:

$ git pull
remote: Counting objects: 702, done.
remote: Compressing objects: 100% (516/516), done.
remote: Total 589 (delta 421), reused 102 (delta 67)
Receiving objects: 100% (589/589), 202.05 KiB | 0 bytes/s, done.
Resolving deltas: 100% (421/421), completed with 83 local objects.
From git://fabm.git.sourceforge.net/gitroot/fabm/fabm
   75702b8..aa096ca  master     -> origin/master
Updating 75702b8..aa096ca
error: Your local changes to the following files would be overwritten by merge:
compilers/compiler.GFORTRAN
src/fabm_library.F90
src/models/Makefile
src/models/gotm/npzd/npzd.F90
Please, commit your changes or stash them before you can merge.
Aborting

こうなっていくつかのファイルがアップデートできなかったとなる。

GOTMは大丈夫だった。ほとんど何もいじってないから妥当か:

$ git pull
remote: Counting objects: 229, done.
remote: Compressing objects: 100% (182/182), done.
remote: Total 182 (delta 133), reused 0 (delta 0)
Receiving objects: 100% (182/182), 30.97 KiB | 0 bytes/s, done.
Resolving deltas: 100% (133/133), completed with 32 local objects.
From git://git.code.sf.net/p/gotm/code
   02338d5..744d4d8  master     -> origin/master
   7527471..ea5f858  ice        -> origin/ice
Updating 02338d5..744d4d8
Fast-forward
 doc/gotm_pub.bib                | 145 +++++++++++++++++++++-
 src/Rules.make                  |   4 -
 src/airsea/airsea.F90           |   4 +-
 src/airsea/airsea_variables.F90 |   3 +-
 src/extras/bio/bio.F90          |  29 ++++-
 src/fabm/gotm_fabm.F90          | 266 ++++++++++++++++++++++++++--------------
 src/fabm/gotm_fabm_output.F90   | 103 ++++++++++++----
 src/gotm/gotm.F90               |  42 +++++--
 src/meanflow/meanflow.F90       |   4 +-
 src/output/ncdfout.F90          |  18 ++-
 src/output/output.F90           |  40 +++---

 11 files changed, 487 insertions(+), 171 deletions(-)

→今週の課題はgitを理解すること。少なくともモデル開発の支障がない範囲の理解ができればいい。

0 件のコメント:

コメントを投稿