2. Project management

Class site

Project Management

Class video

Fab-20190123B_Review00 Kota!!
Fab-20190123D_Lesson01: project management Fab-20190128A_Recitation01: version control

Assignment

work through a git tutorial
build a personal site in the class archive describing you and your final project

Learning outcomes

  • Explore and use website development tools
  • Identify and utilise version control protocols

Have you?

  • Made a website and described how you did it
  • Introduced yourself
  • Documented steps for uploading files to archive
  • Pushed to the class archive
  • Signed and uploaded Student Agreement

For Japanese

Repository

  • GitLabを使用します
  • GitLabへのログイン
    • Username and email: email address (registrationで使用したもの)
    • Password: Student ID (すぐに変更して下さい)
    • fablabsボタンは押さないように
  • Studentのサイト
    • Markdownのテンプレートが既に各受講生のRepoにアップロードされています
    • mkdocs.ymlの中身を自分用に変更します
    • 1度目の編集がトリガーとなって自分のサイトが作られます
    • とりあえずこのテンプレートのサイトを使って大丈夫ですが、最終的にはHTMLでサイトを作ることを勧めています
  • Notification setting
    • Fab Academy 2019 ClassのNotification settingをGlobalからWatchにします
    • Fab Academy 2019 Classの Issue がメールで届くようになります
  • 権限
    • 自分のRepoの権限はMasterです。大きなファイルの削除も出来ます。
    • インストラクターには lab groupと担当する受講生のRepoのMaster権限があります
  • Repoのサイズ
    • おおよそ300MB(各週1-2MB程度が目安)
    • サイズの大きい受講生はリストアップされ、小さくするように指摘されます
    • 特に画像ファイルには注意 TIP - Image optimization and why to do it
    • ファイルサイズの確認: $ du -s * | sort -rn
    • 画像ファイルはリサイズしてRepoに含めます(Google Driveなどから外部リンクすると最終評価の時に修正を指示されます。基準として10MBを超えるものは外部に保存します。)
    • Remember that The Global Evaluation team should be able to pull and then assess your work offline.
    • ImageMagic: 写真やスクリーンショットのリサイズに使用できる
    • ffmpeg: 動画の圧縮やエンコード方式変更などに使用できる(画像ファイルの変更も可能)
    • ImageOptim:サイズを変えずに画質でファイルサイズを小さくするMacAPP,Win用の代替えソフトの紹介あり
    • 毎週作ったデータをRepoに含めますが、リンクはページの最後など分かりやすい場所にまとめて置きましょう(Global Evaluatorの作業効率化に協力=自分の内容の評価が早く進んで修正の指示が早く来るようになる)

Agreements

Git

class archive

  • git tutorial をやってみる

  • コマンドライン

    • Windows
      • git: windows-key > Git > Git Bash
      • class archive: Windows Subsystem of Linux > bash
    • Mac
      • Launchpad > その他 > ターミナル
  • versionの確認(gitがインストール済かの確認)

$ git --version
  • ダウンロード

    • git
    • GUI Clients
    • 勉強なので両方使ってみましょう(ドキュメントもしましょう)
  • パスを通す

    • 最新版をインストールしても古いバーションが表示される場合はパスを通す
    • ref. Gitのパスを確認する
  • セットアップ
    local identity

$ git config –-global user.name “YOUR_USERNAME”  
$ git config -–global user.email “jSmith@mail.com” 

SSH keyが既にあるかの確認

$ cd  
$ cd .ssh/  (.sshフォルダがない場合はSSH keyはない。.sshフォルダも次のssh-keygenで作られる)
$ ls  
id_rsa      (private key: PC内で照合されるもの)
id_rsa.pub  (public key: GitLabにコピーするもの)

ない場合又は違うキーを使う場合

$ cd ~/.ssh/
$ ssh-keygen
Enter file in which to save the key (/Users/me/.ssh/id_rsa): エンターで~/.ssh/id_rsaが作られるorファイル名で今の階層に作成される
Enter passphrase (empty for no passphrase): エンターでパスワードなし
Enter same passphrase again: エンターでパスワードなし

権限をオーナーのみ参照可能に設定

$ cd ~/.ssh/
$ ls -l
-rw------- 1 myusername staff 00 1 23 12:34 id_rsa
-rw-r--r-- 1 myusername staff 00 1 23 12:34 id_rsa.pub
$ chmod 600 id_rsa
$ ls -l
-rw------- 1 myusername staff 00 1 23 12:34 id_rsa

id_rsa.pubの内容をコピー

$ cd ~/.ssh/
$ cat id_rsa.pub
ssh-rsa......local 最初から最後まで全てコピーする

GitLabにコピーしたid_rsa.pubの内容を保存
GitLab > 右上アイコン > Setting > SSH Key > Key > ペースト > タイトルをつけて保存

PCにローカルRepoをクローンする
GitLabのRepo (Kannai student/your.name)からSSHアドレスをコピー

$ cd
$ mkdir fabacademy ローカルのRepoをその中に作るためのフォルダを作る(既存ファオルダでも可)
$ cd fabacademy/
$ git clone git@gitlab.fabcloud.org:academany/fabacademy/2019/labs/kannai/students/my-name.git コピーしたSSHアドレスをペースト
Enter passphrase for key ‘/User/me/.ssh/id_rsa’: エンター(パスワードを設定した場合は入力)
$ ls
your-name クローンされてローカルRepoになったフォルダ
$ cd your-name
$ ls -la
.git 中に.gitがあればgit管理されている証拠
README.md
docs
mkdocs.yml
requirements.txt

ローカルRepoにファイルを追加する

$ cd
$ cd fabacademy
$ cd your.name
$ ls
$ nano test.md
    # header
    - local repo
Exit コントロール+x > Save? Y > File Name: test.md エンター
$ ls
test.md

変更分をGitLabに更新する

$ git add . 
$ git status
$ git commit -m 'add test.md'
$ git status
$ git push

GitLabでtest.mdを編集

    # header
    - local repo
    - remote repo

local repoに変更を反映

$ git pull

gitの練習
今の時点ではコンフリクトが起きても修正は楽なので、今のうちに練習しておく

サイトの確認

自分のpersonal siteが反映されたか確認

mkdocs.yml をカスタマイズ

自分の中身に変更する

プロフィールページを作成

docs/about/index.md

ドキュメンテーション

  • プロフィール: 職業・経歴などのバックグラウンドなど、詳しく書いてある方が発表の時にたくさん参照してくれます
  • week1
    • Final Projectのスケッチ、アイデア、各週の宿題を含めたスケジュール感
  • week2
    • Gitチュートリアルを読んで学んだこと(読んだだけだと評価者に伝わらないので、感想・メモ・画像などを載せること)
    • Gitの環境をどうやってつくったか
    • サイトはどうやって作ったか(.md、.html、エディッタ、low level HTML)
  • Final Project ページ
    • 構成を考えて計画的に書き加えていく

読みましょう

  • 2018 FabAcademy Recitation動画
    • FAB-20180129A_RECITATION02 GITLAB by Fiore: https://vimeopro.com/academany/fab-2018/video/253336757
    • 資料: http://fab.academany.org/2018/recitations/gitlab.html#1

For Next Week

model (raster, vector, 2D, 3D, render, animate, simulate, …) a possible final project, and post it on your class page