C# (5) フォークへのマージ

Small Basic Online のリポジトリが更新されました。前回レポートした Issues #44~#47 が修正されたようなので確認したいと思います。
・フォークしたリモートリポジトリへのマージ
・リモートリポジトリからローカルへのプル
・ビルド
・レポートした Issues の動作確認
という手順になりますが、今回はオリジナルのリポジトリ sb/smallbasic-editor からフォークした nonkit/smallbasic-edior へのマージについて、第3回にも簡単に説明しましたが、改めて詳しく説明します。
この手順は私がリモートにもリポジトリ nonkit/smallbasic-editor を作ったので必要になる手順です。直接 sb/smallbasic-editor からローカルレポジトリ経由でプルする場合は、以下の手順を省略できます。
緑の [New pull request] ボタンを押します。
New_pull_request
マージ先に nonkit/smallbasic-editor を指定します。
Comparing_changes
するとマージ元が nonkit/smallbasic-editor だったため、双方が同じブランチになって There isn’t anything to compare. (なにも比較するものがありません)と表示されます。そこで compare across forks (フォーク同士の比較)というリンクをクリックします。
Compare_across_forks
再びリポジトリが表示されるので、今度はマージ元に sb/smallbasic-editor を指定します。
Choose_a_head_repository
すると問題がなければ緑の [Create pull request ] ボタンが出現するので、これを押してプルリクエストを作成します。
Create_pull_request
次の画面ではプルリクエストのタイトル、コメントを入力し、必要に応じて右側の欄にも情報を入力します。今回は担当に自分を指定し、分類として作成した sync というラベルを設定しました。入力後 [Create Pull Request] ボタンを押します。
Pull_request_title
これでプルリクエストが作成されたので、[Merge pull request] ボタンを押してリクエストを受け入れます。
Merge_pull_request
さらに [Confirm merge] ボタンを押します。
Confirm_merge
紫の Merged が表示されればマージの終了です。
Merged
(つづく)

TypeScript (4) Git と GitHub

今回はソースコードのバージョンを管理するツール Git と GitHub について説明します。

Git はオープンなオペレーティングシステム Linux の生みの親であるリーナス・トーバルズ氏が開発したバージョン管理システムです。リポジトリと呼ばれるアーカイブにソースコードの差分を登録し、変更箇所を比較したり、元の版に戻したりすることができます。一連の変更に対するコメントも残せます。

Git はもともとはコマンド形式でしたが、今はさまざまなツールから呼び出せるようになっています。このシリーズでは次回 Visual Studio Code の中から使ってみる予定です。

Git ではローカルフォルダにあるソースコードから管理対象を選んでローカルのリポジトリにある時点のソースコードを登録します。その際にいくつかの手順があります。ざっくり言うと、まずステージングエリアに変更したソースを追加します。この状態で、リポジトリにある以前の版と今回ローカルに編集した版の差分を確認できます。関連するソースコードをステージングしたところで、コミットというコマンドによりリポジトリに差分情報を書き込みます。

そして、GitHub というツールはオンライン上でリポジトリを管理するシステムで、これにより世界中の人たちがソースコードのさまざまなバージョンを共有できるようになりました。オープンソースを支えているシステムだと言えるのではないでしょうか。

最近、たまたま本屋さんで『いちばんやさしい Git & GitHub の教本』という本を見かけたので購入しました。イラスト入りで Git や GitHub のちょっとややこしい手順が分かりやすく解説されているほか、Visual Studio Code についても触れられているので、ホームページのソースを管理したい方にもオススメです。

この本にも詳しく書いてありますが、Git は https://git-scm.com/ からダウンロードしインストールできます。GitHub は https://github.com/ でアカウントを登録して利用します。ちなみに私のアカウントは https://github.com/nonkit です。すでに Small Basic Online v1.0 をフォークという機能で複製したものが、https://github.com/nonkit/SmallBasic-Online です。

今回の Git と GitHub についての説明はここまでとします。

さて、ここで読者のみなさまにお詫びがあります。実は上記の Small Basic Online v1.0 は全面的な方針の変更があり、TypeScript ベースではなく、C# ベースで開発されることになりました。したがって、この連載も見直しをせざるを得ない状況となりました。

そこで、C# ベースの Small Basic Online については新たな連載を始めます。この連載では TypeScript ベースの Small Basic Online で多少の修正をして動作確認するところまでをあと何回かに掲載してひとまず終了したいと思います。新しいコードベースでも一部 TypeScript が使われているので、その話をこちらにまたちょこっと書くかもしれません。

とはいえ、今回の Git / GitHub や次回予定の Visual Studio Code などは知っていて損のない情報だと思いますで、引き続き読んでいただけると嬉しいです。

(つづく)