Skip to content

smkwlab/master-template

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

下川研修士論文テンプレート

0. 初期設定

これは、九州産業大学大学院情報科学研究科下川研究室で利用している修士論文のテンプレートリポジトリである。 下川研では、修士論文を作成する標準的な環境として、LaTeX と GitHub を利用する。 文章作成に LaTeX、バージョン管理およびバックアップとして GitHub を使う。

1. 基本的な使い方

修士論文を執筆する上で、論文をバージョン管理していく。 第1版である初版、それに対する添削結果を受けて執筆した改定版、 最終的に、修論提出締切日に提出する提出版など。

下川研では、これらを第n版として番号で管理し、版毎に Git 上にブランチを作成する。 基本的には以下の手順で執筆作業をすすめる。 これらの具体的な作業内容については2.具体的な作業内容で説明する。

  1. テンプレートリポジトリをコピーして自分のリポジトリーを作る
  2. リポジトリーをPCにクローンする
  3. aldc (Add Linx DevContainer)を使って 下川研 LaTeX 環境を構築する
  4. この時点で一度 commit, push をする(mainブランチを更新する)
  5. 自分のリポジトリーで、作業用ブランチを作成する
    • 今後、作業用ブランチは下川への提出毎に新たに作成する
  6. 作業用ブランチ上でレポートを作成(更新)する
  7. 添削を依頼するために Pull Request を送る
  8. 提出したので、次の作業用ブランチを作成する
  9. 下川から OK のリプライが来たら終了。NG だった場合は、下川からのリプライにしたがって、8. で作成した新しい作業用ブランチ上でレポートを更新(5. に戻る)

2. 具体的な作業内容

以下の説明の section の枝番号は 1. の箇条書きの番号と対応している。

2.1 自分用のリモートリポジトリの作成

  1. ブラウザでこのリポジトリーにアクセスし Use this template ボタンをクリック
  2. リポジトリ作成画面になる
    • Ownersmkwlab のまま
    • Repository name は、 k99rs999-sotsuron のように自分の学籍番号を入れ、さらに卒業論文であることが分かるような名前にする
    • 公開範囲は Private のまま
  3. Create repository from template ボタンをクリック

2.2 リポジトリをローカルにコピーし、作業用ワーキングディレクトリを作成

  1. 作成されたリポジトリーの画面で Code ボタンをクリック
  2. Open with GitHub Desktop をクリック
  3. 自分のPCでリポジトリーを置くディレクトリを確認して Clone ボタンをクリック

2.3 aldc によるLaTeX環境の構築

  1. aldcインストール方法に従って作業する

2.4 commit, push

  1. LaTeX環境構築終了時点で、main ブランチに commit と push をする
    • GitHub Desktop, git コマンドライン何を使っても良い
    • コミットメッセージは自由。お勧めは LaTeX環境構築

2.5 目次案の記述

  1. おそらく目次案の作成が終わっていると思うので、作成済みの目次案を元に sotsuron.texchapter, section, subsection などを記述していく
  2. VSCode 上で ▷ ボタンをクリックすることで sotsuron.pdf を生成
    • ▷の右横の虫眼鏡が右下に描かれたアイコンをクリックすることでVSCode上で PDF をプレビューできる

2.6 第1版用作業ブランチを作成

  1. GitHub Desktop のウィンドウの最上部には、3つのボタンが並んでいる。 一番左側がリポジトリの選択。一番右側が中央リポジトリとのやり取りの処理。 そして、真ん中にあるのがブランチ処理。
Current Branch
main

と描かれたボタンがある。このボタンの一番右端のを押す。 2. 表示されるメニュー中のNew Branch ボタンをクリック 3. Create a Branchというダイアログが出るので、Name1st-draft とする。草稿第1版という意味 4. Create Branch ボタンをクリック 5. Publish branch ボタンをクリック 6. 先程の真ん中のボタンが、以下に変わる。

Current Branch
1st-draft

2.7 編集作業

  1. GitHub Desktop で現在の草稿用ブランチが選択されていることを確認して sotsuron.tex を編集
    • Open in Visual Studio Code をクリックして Visual Studio Code で作業
    • このとき、Visual Studio Code の左下に、ブランチの名前が表示されている
    • 必要に応じて別のファイル(画像など)を追加したりして良い
  2. ファイルを保存する度に textlint による自動チェックが起動する
    • チェック結果が VSCode問題 に表示されるので内容を確認し適宜対応
  3. VSCode 上で ▷ ボタンをクリックすることで PDF が生成される
    • ▷の右横の虫眼鏡が右下に描かれたアイコンをクリックすることでVSCode上でプレビューできる
  4. プレビューに問題ないことを確認したら、GitHub Desktop で commit
  5. Push origin をクリックして、リモートリポジトリーに Push
  6. 1.に戻る

2.8 添削依頼

  1. sotsuron.pdf を印刷し、その印刷版を読み(可能であれば音読)、推敲。問題があれば、2.4に戻る
  2. GitHub Desktop で Create Pull Request をクリックして、Pull Request を作成
  3. ブラウザが開くので、Title現在のブランチ名 を記述
    • Title はデフォルトでなんらかの文字列が入っているが、それは削除する。
    • 現在のブランチ名 とは、最初であれば 1st-draft であり、2回めであれば 2nd-draftになるはず
  4. Write タブに変更点などを記述
  5. Create pull request ボタンをクリック

2.9 次版用ブランチ作成

  1. GitHub Desktop で Current Branch ボタンをクリック
  2. New Branch ボタンをクリック
  3. Name2nd-draft など、次の版であることが分かる名前にする
  4. 下の Create branch based on... は直前の草稿のブランチ (次が 2nd-draft なら前は 1st-draft) を選択
  5. Create branch ボタンをクリック
  6. Publish branch ボタンをクリック

2.10 添削結果待ち

  1. 下川からの返事を待つ
  2. 返事の内容は、リモートリポジトリの Pull Requests タブの中にある
    • そこにも見当たらなければ 1 Closed のようなリンクをクリックすると見えるはず
    • 見当たらなければ下川に問い合わせる
    • 下川は、添削結果を返信する際に、皆さんの草稿用ブランチの内容を main ブランチに反映させる作業(merge) もしている
    • したがって、返信が来たときには、リポジトリ上の main ブランチは提出した草稿と同じ内容に更新されている
  3. OK ならば以下の通り
    • 最終版の原稿に final というタグを打つ
      • GitHub Desktop の History で一番上にある履歴を右クリック
      • Create Tag... をクリック
      • Namefinal と入力し Create Tag ボタンをクリック
      • 提出終了。お疲れ様。
  4. NG ならば現在の草稿上で編集(2.4に戻る)

2.11 作業サンプル

擬似的に 2.1〜2.8 の操作をサンプルリポジトリで実施してみた。 ただし、aldc 開発以前に実施したので、aldc に関する履歴はない。 Github 上で、Insights → Network と選択することで、ブランチ分岐を確認できる。

目次案提出までは、main ブランチで作業。 その後 1st-draft ブランチを作成し、その上で作業。 1st-draft 提出時に pull request を作成し、toshi0806 に review をリクエスト。 その後 2nd-draft ブランチを作成し、その上で作業。 添削終了後に pull request を main に merge。 2nd-draft 提出時も pull request を作成し、toshi0806 に review をリクエスト。 その後 3rd-draft ブランチで作業中。

3. 修士論文の書き方 (thesis.tex の更新)

3.1 修士論文としての注意事項

  • 提出締め切りを念頭に置いて執筆を進めること

3.2 日本語的な注意事項

  • である体で書くこと
  • 長い文を書かず、適切に文を分割すること
    • 「が」で続けるのは良くない
  • 適切な内容で段落を分割すること
  • 文の途中に箇条書きを入れないこと
  • すべての図や表は本文中で参照すること
  • まとめは感想ではない。
    • 今後の課題を除いて、それ以前の本文で記述されていないことを、まとめに書いてはいけない

3.3 LaTeX的な注意事項

  • 図や表にはキャプションを入れる
  • 原則として、1文1行で記述すること
    • 差分が見やすいし、編集指示も出しやすい
  • \\ による改行は tabular 環境以外では原則として使用不可

4. GitHub actions

このリポジトリには2つの GitHub action が設定されている

4.1 Reviewer 割当

Pull Request を発行すると、auto_assign_myteams.yml に基づき Reviewers と Assigneess を自動で設定する。 デフォルトでは、どちらも下川(toshi0806)を指定している。 下川研の学生はこのままで問題ない。 他の研究室の学生が利用する場合には、ここの設定を変更すること。

この機能が不要な場合には auto_assign_myteams.yml を削除する。

4.2 PDF 生成

Pull Request を発行すると、thesis.tex と abstract.tex から PDF を自動生成し、 GitHub 上の Release に配置する。

TeX 環境を持っていない人に PDF を見てもらうのに利用できる。 ただし、ここで作成された Release は一般公開はされない。

この機能が不要な場合には check.yml を削除する。

5. その他

質問があれば、遠慮なく smkwlabML ML へ。 きっと、他の人も困っている。 疑問と回答はみんなで共有しよう。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published