情理B2 アルゴリズムとデータ構造Bの13班グループワーク用レポジトリです
エントリーポイントはsrc/main.c src/ ... コードがある obj/ ... ここに中間生成物(*.o)が置かれるようになっている
# wsl上のgrpwkディレクトリに移動する
# windows側から移動するときは, windowsのファイル(win+Eとかで出るやつ)からレポジトリのファイルまで移動してCtrl+L => wsl => Enterで行くと速い
cd ...../grpwk
# 最新のmasterブランチを実行するならpullしてくる(失敗したらgit stashとかする)
git pull origin master
# 精度のテストをする
make test
makeがないって言われたらmakeを入れてください..
# Makefileをもとにコンパイル
make
# 実行
./grpwk <入力ファイル> <出力ファイル>
とすると, 5つのテストデータを順にテストする.
make test ARG="--search-limit 9000 --search-method SIMPLE_BM --remaining FILL_WITH_A"
などとして引数をあたえることで, 探索方法などを変えて実行できる. 現在は --search-limit, --search-method, --markov の3つのオプションがある.
bm_searchなど, 自分が制作したライブラリが間違っていないかテストする
make unit_test
でunit_testを行うようにしたい
make 13.tar
で提出ファイルである13.tarを生成します
まず, masterブランチは常に動くようにしたいので, masterブランチへの直接pushは控える.
機能追加する際は, git checkout -b ブランチ名
などでmasterブランチから自分のブランチを切り出して, そこで作業する.
作業が終了したら, github.comのこのレポジトリのページから作業ブランチからmasterブランチへのpull requestを送る. それを誰かにレビューしてもらってマージする.
c言語ファイルを追加するときは, .cファイルとそれに対応した.hファイルを用意する. 例えばhoge.cを作るときはhoge.hも作る. .hファイルのほうに関数定義や構造体定義をして, その実装を.cファイルでやる.
また, ファイルを追加したときは, MakefileのSRCに空白区切りで追加したファイルを列挙する.
まずレポジトリを作ってないなら
git clone https://github.com/WBelucky/grpwk.git
他の人が更新したものを持ってくる
git pull origin ブランチ名
自分のブランチを作ってそこに移動する
git checkout -b 作るブランチ名
ブランチを移動する
git checkout ブランチ名
ファイルを変更したら変更したファイルをgit に認識させる
git add 変更したファイル名かディレクトリ名
ファイルの更新を確定する
git commit -m "ここにコミットメッセージを書く(~~を修正, 追加とか)"
ファイルをリモート(github.com)に上げる ブランチ名はリモートに上げるブランチ(masterブランチに直接pushは良くない)
git push origin ブランチ名