プログラミング ITインフラ

フリーランスエンジニア必須知識!! Githubによるコード管理

  1. HOME >
  2. 開発・基盤 >
  3. プログラミング >

フリーランスエンジニア必須知識!! Githubによるコード管理

概要

ソースコード管理はGithubを利用することが多いです。最近ではソースコードを含めてプロジェクトを管理するのにGithubを利用することが多いです。

Githubはなくてな貼らないシステムでエンジニアとしては必須知識です。

Githubに思うこと

A君
Githubってよく聞くけどわからない

Githubを具体的にどう操作すればいいの?
Aさん

B君
簡単に学びたいけどどうすればいい?

Githubについて

Githubの代表的な機能はソースコード管理です。現在は様々な機能があります。機能は以下の通りです。

  • ソースコード管理
  • リポジトリ管理
  • プロジェクト管理

Githubのメイン機能 ソースコード管理

ソースコード管理

「いつ」「誰が」「どのプログラミングコードを」追加・変更したのか履歴を管理します。

複数人で構成されたのチームでGithubを利用することを想定しているのでソースコードを誰が追加したか、そしていつ追加されたのか知ることでもし修正しないといけないときプログラムを追加した人に対応をお願いすることができます。

私の使い方

新しい機能を追加するとき新たなブランチを作成し、その新しいブランチで実装していきます。作成中にこの機能が不要になった場合や大幅な機能改修が必要で新しい機能を削除するときはマスターブランチに戻ればこの不要になった新機能を前の状態に戻すことができます。

ソースコードを公開しているプロジェクト

GitHubはソースコードを公開しているプロジェクトがあります。世界中の人々がソースコードを公開しているため莫大な数のリポジトリが世の中に公開されていることになります。

様々なプログラミング言語やインフラの設定を公開しています。そのリポジトリのコードを参考にして実装することもあります。

CI/CD

CI/CDとは「Continuous Integration/Continuous Delivery」の略で、日本語では継続的インティグレーション/継続的デリバリーといいます。CI/CDは1つの技術を指すものでなく、ソフトウェアの変更を常にテストして自動で本番環境にリリース可能な状態にしておく、ソフトウェア開発の手法を意味します。CI/CDを取り入れると、バグを素早く発見したり、変更を自動でリリースしたりできるようになります。

その中でCircleCIというソフトはGithubをトリガーにして起動するプログラムになります。

例えばGithubの更新をしたタイミングでCircleCIが自動で起動してテストコードを起動されます。起動してエラーが出ればGithubでエラーを知らせることができます。

リベース

コミットする際にコメントをするのですが無駄なコメントを書いてわからないことをしたらコミットログを削除して意味のあるコミットのみを残します。

余計なコミットログを削除するには以下のコマンドでコミットをマージします。

Git rebase -I HEAD~5

githubをある程度詳しい方

リベースなど複雑な機能を利用できる人はフリーランスエージェントでバリバリ仕事が可能かと思います。経験を積んだ方はこちらで仕事の紹介を受けてはいかがでしょう。

レバテックフリーランス 止まらない案件と終わらない高単価

BigData Navi 機械学習エンジニア・データサイエンティスト専門のフリーランス案件情報サイト

High Performer フリーランス・ITエンジニアの案件紹介サービス

Githubの意外な便利な使い方

プログラミングのコードを管理するツールですがWardやExcelといったファイルや画像も取り扱うことができます。

WardやExcelをバージョン管理するのもいいのではないでしょうか。

Githubの便利機能

リポジトリ管理

そのレポジトリを作成し、プログラミングコードの管理をします。リポジトリは「公開」・「非公開」の2種類選択することができます。

無料アカウントの場合は非公開プロジェクトを3人まで共有できます。有料アカウントは非公開プロジェクトを無制限に共有できます。

プロジェクト管理

レポジトリというプログライミングコード群があります。これは一つのプロジェクト単位で置く場合が多いです。

Zenhubと言う機能があります。GitHub Issueをチケットとしてカンバン方式で進捗を管理できるプロジェクト管理ツールです。GitHub Issueをチケットとしてカンバン方式で進捗を管理できるプロジェクト管理ツールです。

issue単位に期限や進捗具合を管理することができ、ステータスも持つことができます。

Githubを学ぶためには

プログラミングスクールではGithubの使い方を学ぶことができます。Githubはフリーランスだけでなく全てのエンジニアにとって必須の知識です。そのためどこのプログラミングスクールでも教えています。

侍エンジニア 無料体験レッスン予約受付中

DMM Webキャンプ 転職、就職を本気で考えている方向けのプログラミングスクールです。

GEEK JOB 社会人転職コース無料体験・説明会の申し込み


-プログラミング, ITインフラ

© 2020 スリーネクスト