sammyppr

View on GitHub

メディア表現 VI 11.バージョン管理

メディア表現 VI TOP に戻る


目次


本日の内容

をやっていきましょう。


前回のおさらい

Teams, Slack等プロジェクトをするために便利なツールはどんどん使っていってくださいね。

Notionもどんどんカスタマイズして使いやすくしていきましょう。


バージョン管理

バージョン管理とは?

現在でも課題提出などで当てはまるかもしれませんが、仕事をし始めるとたくさんの書類を作成することとなります。

そして、

等の理由により修正を加えることが日常的に起こります。

そうすると

ということを管理したくなります。後で、「あ、やっぱり前の方が良かったので、元に戻して!」なんて指示もあったりします。

これは、いわゆる文書だけでなく、デザイン、映像等全てに当てはまることです。

この時に、元に戻る方法を忘れてしまうと非常に困ります。さて、どうしたものでしょうか?


ファイル名等によるバージョン管理

一番オーソドックスなのは、

等のように、ファイル名にバージョン、日付、日時を付加して管理する方法です。(.txtとテキストファイルになっていますが、どんな拡張子でも利用できます。)

個人的にはこの方法が確実なため、現在も利用しています。

ちなみに、イラストレーターの入稿時、テキストをアウトライン化することがあります。 後で、誤字に気づいた時に、管理をしていないと困るため

と、アウトライン化する前、後のファイルを保存しておきます。誤字があたっときには「名刺_20221125.ai」をコピーして

等とリネームして、修正を加えます。


ファイルの比較

少し修正しただけだと、どこを修正したのか確認するのが大変な時があります。 テキストファイルであれば、diffというコマンドを利用すると簡単に比較できます。

やってみよう

  1. diff_text.zipをダウンロードして解凍する。
  2. わかりやすくするためにデスクトップに移動
  3. コマンド+スペースでSpotlightを出してターミナルを開く
  4. username$ の後に **cd **(cdスペース)と入力、デスクトップのdiff_testフォルダをドラッグ&ドロップ
  5. **cd /Users/sammy/Desktop/diff_test **みたいになったらリターン(作業するフォルダを指定しています)
  6. diff syllubus_ver10.txt syllubus_ver11.txt と入力してリターン

すると、2箇所のファイルの違う箇所がリストアップされます。

diffの説明

他にも「5d4」とあれば、5行目が削除(delete)されて、4行まで詰められたという意味になります。

ちょっと使いづらいですね。

VSCodeでやってみよう

  1. VSCodeで新しいウィンドウを開く
  2. 二つのファイルをドラッグ&ドロップ
  3. syllubus_ver10.txtをアクティブに
  4. Command+Shift+PでCompareと入力し、「ファイル:アクティブファイルを比較しています」を選択
  5. syllubus_ver11.txtを選択

左右にウィンドウが分かれ、比較することができます。

右上の「…」からインラインビューを選択すると、一つのウィンドウで異なっている部分が上下に並んで比較することができます。

2つのファイルの内容を比較して差分を表示する


バージョン管理システム

バージョン管理システムとは

手作業ではバージョン管理が大変だよね、ということでバージョン管理システムというものが開発されます。

参考:Gitが出来るまでの歴史と将来の展望(バージョン管理システム)

個人的にはWebの仕事において、バージョン管理の必要に迫られていたため、Subversionあたりを試した記憶があります。でも、あまり使い勝手が良くなくて、結局手動での管理をしていました。

ですが、現場を離れてGitがさらに注目されているなぁ、と感じ始めました。至る所で使われている時代の流れを感じました。

また、このようなTweetが目につくようになりました。

情報系学科で教員はGitを教えろ

プログラマーやWebデザイナーあたりでは当たり前に利用されていています。

Gitはテキストファイル・バイナリファイル対応なため、文書全てを管理することが可能ということを意味しています。

というわけで、情報系学科?ですが、情報デザインとしては知っておいてほしいとの思いでシラバスに追加しました。

実際、特別講師の先輩に聞いても当たり前のように業務で利用しているとのことです。

Gitとは?

Gitで管理しているファイルであれば、コンピュータ上でファイルの編集履歴を管理できるので、古いバージョンから新しいバージョンまでの管理が簡単に行うことができます。

Gitでできること

誰が使える?

テキストファイル・バイナリーファイル、なんでも扱えるため、

に限らず、あらゆる事務作業に利用できます。

Gitの構成

リポジトリ

ファイルやディレクトリを入れておくもので、二つに分かれます。

普段の作業はローカルリポジトリで行い、共有するときにリモートリポジトリに作業内容を上げることができます。

コミット

ファイルの保存をもう少し大きくした感じで、「この作業が終わったよ」「ここ修正したよ」という宣言みたいなものです。

作業や修正は複数ファイルにわたることがあるため、

の二つがあります。

クローン

リモートリポジトリからローカルリポジトリに丸ごとダウンロードしてくる機能となります。

プル

リモートディレクトリとローカルリポジトリとの差の部分だけダウンロードして情報を最新にする機能です。

プッシュ

ローカルリポジトリにあるファイルをリモートリポジトリに上げる機能です。

ブランチ

複数人で作業していると、Aさんはこのファイルをいじってるけど、Bさんはこのファイルをいじっている、ということが起こり、混乱の元となります。

そのため、ブランチ、という考え方を使って分岐して作業をします。

マージ

ブランチで作業しているものがOKになると、主となるマスターブランチと統合する必要があります。これをマージと言います。

ブランチ・マージは次のような関係になります。

ブランチ・マージ

GitHubとは?

GitHubはWebサービスで、リモートリポジトリを管理するものです。 Web用のUIがあるため、便利に利用することができます。

他にも

等あるのですが、現状Github一人勝ちのようです。 Google Trend : Github, Bitbucket, Gitlab

そして2018年にはマイクロソフトが買収を行いました。

使ってみよう

OSのバージョン等によって差がありそうですが、やってみましょう。

gitのインストール

  1. Command+スペースでterminalと入力して、terminal.app(ターミナル)を開く
  2. git – versionと入力してリターンと押すと、コマンドラインツールをインストールするように促されるので、インストール
  3. 改めてgit – versionでバージョンが出ればインストール完了

gitの初期設定

自分が誰かを設定しておきましょう。

$ git config --global user.name "ユーザーネーム"
$ git config --global user.email "eメールアドレス"

とターミナルで入力しておきましょう。 $マークは入力しません。スペースに気をつけましょう。 ユーザーネーム、日本語やめておきましょう。例えばこんな感じです。

$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com

GitHubのアカウントを作成しよう

  1. GitHubにアクセス
  2. GitHubの登録の緑ボタンをクリック
  3. ユーザ名・メールアドレス・パスワードを入力して、人間であることを証明してくださいw。ユーザ名はドメインにも使われます。(sammypprのように)
  4. 「Welcome to GitHub」と表示されて何点か質問されますが、スルーしてもOKそうです。「Complete setup」をクリックしましょう。
  5. メールが届くので、「Verify email address」をクリックして終わりです。

GitHub上でリモートリポジトリを作成しよう

最近挙動が違うかもしれませんが…

  1. Create repositoryをクリック
  2. name your new repository…のところにtest-git
  3. Publicを選択
  4. Add a README fileにチェック
  5. Create repositoryをクリック
  6. Codeをクリックすると、リモートリポジトリのURLが表示されるので、URL右のボタンを押して、コピーしておきましょう。

VSCodeでクローンする

  1. VSCodeで新しいウィンドウ
  2. アイコンの上から3番目をクリック
  3. Clone Repositoryをクリック
  4. コピーしたURLをペーストしてClone from GitHubをクリック
  5. 許可を求めてくるので、許可(Allow)
  6. ブラウザでサインイン
  7. VSCodeを開くか聞かれたら開く
  8. OK
  9. もう一度Clone Repository
  10. ローカルリポジトリの場所を指定してクローン

ローカルリポジトリにファイルを追加してプッシュまで

  1. アイコンの一番上をクリック
  2. test.txtとしてファイルを作り、なんでもいいので、中身を書いて保存しましょう。
  3. 上から3番目のアイコンをクリック
  4. Changesにtest.txtがあるはずです。ファイル名右の+を押すと、StagedChangesに移ります。これ、説明したインデックスのところです。一時的においておきます。
  5. Messageに初めてのコミットとか書いてCommit。次にSync Changesとすると、プッシュされリモートリポジトリに変更が反映されます。
  6. ファイルに追記して、Sync Changesまでを2,3回やってみましょう。メッセージも適当に中身変えましょう。

コミットの確認

コミットの履歴を見るために拡張機能入れます。

  1. 拡張機能でGit Historyを検索してインストール
  2. test.txtがアクティブな状態でCtrl+Shift+Pでgit logと入力して、「Git: View History(git log)」を実行
  3. コミット履歴が表示されます。
  4. 古い方のコミットを押してからViewを押せば、その当時のファイルの内容を表示することができます。

バージョン管理どうですか???

GitHubでできること

元々gitはコマンドライン(ターミナル)で使うことを想定されていますが、VSCodeのおかげで少し難しさは消えたのではないでしょうか。

ここまででいっぱいな気がするので、ここまでにしておきますが、

等もできます。

ぜひ色々試してみてください。

GitHubを使ってMarkdown文書を5ステップでホームページとして公開する方法

参考