CTC 教育サービス
[IT研修]注目キーワード Python UiPath(RPA) 最新技術動向 Microsoft Azure Docker Kubernetes
皆さん、こんにちは。
南波真之(なんばさねゆき)と申します。
エンジニアが仕事の際に多く利用するツールやサービスというと、何を思い浮かべますでしょうか。例えばコードエディターの Visual Studio Code、コンテナ型の仮想環境を作成・移動・実行するためのプラットフォームであるDocker、AWSやMicrosoft Azureなどのクラウドサーバーなどたくさんあります。今回は、エンジニアが多く利用する技術・ツールである、GitとGitHubについて紹介します。
まずGitとGitHubの違いについては多くの情報がありますがここでも簡単にまとめます。Gitとは、Linuxを作ったリーナス・トーバルズ氏らによって開発された、バージョン管理を行うためのシステムです。エンジニアが開発作業を行う際には、ソースコードなどのファイルのバージョン管理は非常に重要になります。
バージョン管理をしない場合を考えてみると、何が最新のファイルかが分かりづらくなるため開発効率が低下する、同じファイルを編集していたことで開発状況に齟齬が発生する、バグやエラーが発生した際の原因究明や修正に時間がかかる、など多くのデメリットが存在します。
(参考) https://git-scm.com/
そこで、Gitを利用すると分散型のバージョン管理システムを採用しているため、上記のようなデメリットを払拭する事ができるため、現在のシステム開発にとって必要不可欠なシステムになります。GitはCUI(コマンド入力のインターフェース)ですが、無料で利用できるためエンジニアは早めに慣れておく必要があります。
Gitに名前は似ていますが、異なるサービスがGitHubです。こちらの方が有名かもしれません。GitHubは、プログラムのソースコードをオンライン上で共有・管理するサービスのことです。世界中の人が作ったソースコードを見たり利用したりできますし、クローズドに自分が関わるプロジェクトのソースコード管理としても利用可能です。Gitで実現できるバージョン管理をオンラインで利用できるようにすることで、より利便性を向上させています。GitHubの利用には、エンジニアはスピーディーにコマンドラインでgitコマンドを使ってファイル管理をしていきますので、Gitの知識がベースになります。
また、プロのエンジニアが公開している、アプリケーションのソースコードなどを見てみるのもとても勉強になります。
(参考) https://github.co.jp/
こういった背景から、GitHubは利用者がとても多いのですが、2023年1月にユーザーが1億人を達成したことを発表しました。GitHubの予想としては、2025年までにユーザー1億人というのが目標設定でしたので、2年も前倒しての達成ということになります。これは、2018年にMicrosoftがGitHubを買収して投資を加速させたという背景もあります。
(参考) https://github.blog/2023-01-25-100-million-developers-and-counting/
Git自体はバージョン管理システムですので、それ自体でなにかプログラムができるわけではありません。しかし、自分が習得するメインの言語で構築したシステムをどのように管理していくのか、チーム開発の場合に手戻りなく予定通りに開発ができるのかは、Gitのようなソースコード等ファイルのバージョン管理が十分にできるかが大きなポイントになります。
特に、若手のエンジニアや経験が浅いエンジニアはGitの基礎知識をつけることはエンジニアとしての業務を遂行していくために非常に重要な要素であると言えます。
お読みいただいているコラムを掲載しているCTC教育サービスは、国内でトップクラスのエンジニア教育コンテンツを提供しています。おすすめの研修を記載しておきますのでご興味がある方はご覧の上、ぜひお問い合わせください。
インフラエンジニアのためのGit/GitLab
https://www.school.ctc-g.co.jp/course/AD084.html
Git/GitLab基礎(バージョン管理とチーム開発の基礎)
https://www.school.ctc-g.co.jp/course/OSS001.html
[IT研修]注目キーワード Python UiPath(RPA) 最新技術動向 Microsoft Azure Docker Kubernetes