プログラミングを学び始めると、必ずと言っていいほど「GitHub」という言葉を耳にします。
「よく聞くけど、何に使うの?」「Ubuntuでどうやって使えばいいの?」と疑問に思う方も多いはずです。
GitHubは、世界中の開発者がコードを共有し、協力して開発するための巨大なプラットフォームなんです。
今回は、UbuntuでGitHubを使い始めるための手順を、初心者の方でも分かるように丁寧に解説していきますね。
GitHubとは何か?
コードの「保管庫+SNS」のような存在
GitHub(ギットハブ)は、プログラムのソースコードを保存・管理・共有できるWebサービスです。
2008年にサービスが開始され、2018年にマイクロソフトが買収しました。
簡単に言うと:
- Dropboxのように:コードをクラウドに保存できる
- Googleドキュメントのように:複数人で同時に作業できる
- Twitterのように:他の人の作品を見たり、フォローしたりできる
こうした機能を兼ね備えたプラットフォームなんです。
オープンソースの中心地
GitHubには、世界中の開発者が作った無数のオープンソースプロジェクトが公開されています。
有名なプロジェクトの例:
- Linux カーネル
- Visual Studio Code
- TensorFlow(機械学習フレームワーク)
- React(Webフレームワーク)
- WordPress
誰でも自由にコードを見たり、ダウンロードしたり、改良提案を送ったりできます。
GitとGitHubの違い
Gitは「ツール」、GitHubは「サービス」
よく混同されますが、GitとGitHubは別物です。
Git(ギット)
- バージョン管理システム(ソフトウェア)
- コンピューターにインストールして使う
- コマンドラインで操作する
- ローカル(自分のPC)で動作する
- 2005年にリーナス・トーバルズが開発
GitHub(ギットハブ)
- Gitリポジトリのホスティングサービス
- Webブラウザで使える
- Gitの機能を使いやすくしたプラットフォーム
- クラウド上で動作する
- コードレビュー、Issue管理など追加機能が豊富
例えで理解する
Git:スマホのカメラ機能
GitHub:Instagram
カメラ(Git)で写真を撮って、Instagram(GitHub)にアップロードして共有する、という関係に似ています。
UbuntuにGitをインストールする
パッケージマネージャーで簡単インストール
GitHubを使うには、まずGitをUbuntuにインストールする必要があります。
インストール手順:
- ターミナルを開く
- Ctrl + Alt + T で起動できます
- パッケージリストを更新
sudo apt update
- Gitをインストール
sudo apt install git
- インストール確認
git --version
表示例:
git version 2.34.1
これでGitのインストールは完了です。
初期設定
Gitを使う前に、ユーザー情報を設定しておきましょう。
ユーザー名を設定:
git config --global user.name "あなたの名前"
メールアドレスを設定:
git config --global user.email "your.email@example.com"
設定確認:
git config --list
このメールアドレスは、後でGitHubアカウントと紐付けるので、GitHubで使うメールアドレスを指定してください。
GitHubアカウントの作成
無料で始められる
GitHubを使うには、アカウント登録が必要です。
登録手順:
- GitHubのウェブサイトにアクセス
https://github.com - Sign upをクリック
画面右上にあるボタンです - 必要情報を入力
- メールアドレス
- パスワード
- ユーザー名
- 認証パズル
- メール認証
登録したメールアドレスに届いた確認コードを入力 - プロフィール設定
簡単なアンケートに答えます(スキップも可能)
これでGitHubアカウントの作成は完了です。
プランの選択
GitHubには複数のプランがあります:
Free(無料)
- 無制限のパブリックリポジトリ
- 無制限のプライベートリポジトリ
- 基本的な機能は全て使える
- 個人利用には十分
Pro(有料)
- 高度な機能が追加される
- 通常は不要
まずは無料プランで始めましょう。
SSH接続の設定
パスワード入力なしで安全に接続
GitHubとの通信には、SSH(Secure Shell)という暗号化された接続方法を使うのが一般的です。
これを設定すると、毎回パスワードを入力しなくても安全にアクセスできるようになります。
SSH鍵の生成
1. SSH鍵を作成
ssh-keygen -t ed25519 -C "your.email@example.com"
Enterキーを3回押すと、デフォルト設定で鍵が生成されます。
2. SSH鍵の確認
cat ~/.ssh/id_ed25519.pub
「ssh-ed25519」で始まる長い文字列が表示されます。これが公開鍵です。
GitHubに公開鍵を登録
1. 公開鍵をコピー
上記コマンドで表示された文字列を全てコピーします。
2. GitHubにアクセス
ブラウザでGitHubにログインします。
3. Settings(設定)を開く
右上のアイコンをクリック → Settings
4. SSH and GPG keysを選択
左サイドバーから選びます。
5. New SSH keyをクリック
6. 鍵を追加
- Title:分かりやすい名前(例:Ubuntu Desktop)
- Key:コピーした公開鍵を貼り付け
- Add SSH keyをクリック
7. 接続テスト
ssh -T git@github.com
成功すると、以下のようなメッセージが表示されます:
Hi ユーザー名! You've successfully authenticated...
基本的な使い方
リポジトリとは
リポジトリ(repository)は、プロジェクトのファイルや変更履歴を保存する「貯蔵庫」のようなものです。
一つのプロジェクトに対して、一つのリポジトリを作成します。
既存のリポジトリをクローンする
他の人が作ったプロジェクトをダウンロードすることをクローン(clone)と言います。
例:人気のプロジェクトをクローン
cd ~
git clone https://github.com/torvalds/linux.git
これで、Linuxカーネルのソースコードがlinux
というフォルダにダウンロードされます。
新しいリポジトリを作成する
自分のプロジェクトをGitHubで管理する場合の手順です。
GitHubでリポジトリを作成:
- GitHubにログイン
- 右上の「+」→「New repository」をクリック
- リポジトリ名を入力(例:my-first-project)
- Public(公開)またはPrivate(非公開)を選択
- 「Create repository」をクリック
ローカルとGitHubを連携:
# プロジェクトフォルダを作成
mkdir my-first-project
cd my-first-project
# Gitリポジトリとして初期化
git init
# ファイルを作成
echo "# My First Project" > README.md
# ファイルをステージング
git add README.md
# 最初のコミット
git commit -m "Initial commit"
# GitHubと連携(SSH接続の場合)
git remote add origin git@github.com:あなたのユーザー名/my-first-project.git
# GitHubにアップロード
git branch -M main
git push -u origin main
これで、あなたのコードがGitHub上に公開されます。
よく使う基本コマンド
ファイルの変更を記録する
1. ファイルの変更状態を確認
git status
どのファイルが変更されたか、どのファイルがまだコミットされていないかが分かります。
2. 変更をステージング
# 特定のファイルを追加
git add ファイル名
# 全ての変更を追加
git add .
ステージングは「この変更を記録対象にする」という意味です。
3. 変更をコミット
git commit -m "変更内容の説明"
コミットは「この時点の状態を保存する」という意味。
メッセージには、何を変更したかを簡潔に書きます。
良いコミットメッセージの例:
- “Fix login button bug”
- “Add user profile page”
- “Update README with installation steps”
4. GitHubにプッシュ
git push origin main
ローカルの変更をGitHub上のリポジトリに反映させます。
最新の変更を取得する
他の人が変更した内容をダウンロードすることをプル(pull)と言います。
git pull origin main
チーム開発では、作業を始める前に必ずプルして最新状態にしましょう。
ブランチの使い方
複数の作業を並行して進める
ブランチ(branch)は、メインの開発ラインから分岐させた「平行世界」のようなものです。
新機能の開発や実験的な変更を、本体に影響を与えずに試せます。
ブランチの基本操作
新しいブランチを作成:
git branch feature-login
ブランチを切り替え:
git checkout feature-login
または、作成と切り替えを同時に:
git checkout -b feature-login
現在のブランチを確認:
git branch
ブランチをマージ(統合):
# mainブランチに戻る
git checkout main
# feature-loginブランチの変更を取り込む
git merge feature-login
ブランチを削除:
git branch -d feature-login
ブランチ戦略
実際のプロジェクトでは、以下のようなブランチ構成がよく使われます:
- main(またはmaster):安定版のコード
- develop:開発中のコード
- feature/新機能名:個別の新機能開発用
- hotfix/バグ名:緊急のバグ修正用
GitHubの便利な機能
Issue(イシュー)
バグ報告や機能リクエストを管理できる掲示板のような機能です。
使い方:
- リポジトリの「Issues」タブをクリック
- 「New issue」をクリック
- タイトルと説明を記入
- Submit
チームメンバーとのコミュニケーションに便利です。
Pull Request(プルリクエスト)
自分の変更を本体に取り込んでもらうための「提案」機能です。
流れ:
- ブランチで作業する
- GitHubにプッシュする
- Pull Requestを作成する
- レビューを受ける
- 承認されたらマージ
オープンソースプロジェクトへの貢献では必須の機能ですね。
GitHub Actions
自動テストやデプロイなどを設定できるCI/CD機能です。
コードをプッシュすると自動的にテストが実行される、といった自動化が可能になります。
Gist
短いコードスニペットやメモを共有できる機能です。
ちょっとしたコードを公開したい時に便利ですね。
よくあるトラブルと解決法
パスワード認証が拒否される
2021年8月以降、GitHubはHTTPS接続でのパスワード認証を廃止しました。
解決法:
- SSH接続を使う(推奨)
- Personal Access Token(PAT)を使う
Permission deniedエラー
SSH接続時に権限エラーが出る場合です。
解決法:
- SSH鍵が正しく生成されているか確認
ls -la ~/.ssh
- SSH agentに鍵を登録
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519
- GitHubに公開鍵が正しく登録されているか確認
コンフリクト(衝突)が発生
複数人で同じファイルを編集すると、マージ時に衝突することがあります。
解決法:
- 衝突箇所を確認
git status
- ファイルを開いて手動で修正
<<<<<<< HEAD
あなたの変更
=======
他の人の変更
>>>>>>> branch-name
- どちらを採用するか決めて、マーカー(
<<<<<<<
など)を削除 - 修正をコミット
git add .
git commit -m "Resolve merge conflict"
.gitignoreファイル
特定のファイルをGitの管理対象から除外したい場合に使います。
例:
# .gitignoreファイルの内容
*.log
node_modules/
.env
__pycache__/
これで、ログファイルや設定ファイル、ライブラリなどを除外できます。
よくある質問
GitHub DesktopとCLIの違いは?
GitHub Desktopは、グラフィカルなインターフェースを持つGitクライアントです。
マウス操作でGitを使えるため、初心者には使いやすいでしょう。
コマンドライン(CLI)は、ターミナルでコマンドを打って操作します。
慣れれば高速で、細かい制御も可能です。
両方使えるようになるのが理想ですが、まずはどちらか使いやすい方から始めましょう。
プライベートリポジトリは有料?
いいえ、無料プランでも無制限にプライベートリポジトリを作成できます。
公開したくないコードも安心して管理できますね。
Gitのコミットを取り消したい
直前のコミットを修正:
git commit --amend
コミットを取り消してファイルは残す:
git reset --soft HEAD~1
コミットもファイルの変更も取り消す(注意):
git reset --hard HEAD~1
ただし、すでにプッシュしたコミットを取り消すのは慎重に。
まとめ:GitHubでコードを世界に公開しよう
GitHubは、現代のソフトウェア開発に欠かせないプラットフォームです。
Ubuntuでは、コマンドラインから簡単にGitをインストールして使い始められます。
この記事のポイント:
- GitHubはコードのホスティングサービス
- Gitはバージョン管理ツール(ローカルで動作)
- UbuntuではaptコマンドでGitをインストール
- SSH接続を設定すると便利で安全
- clone、add、commit、pushが基本操作
- ブランチで複数の作業を並行管理
- IssueやPull Requestでチーム開発が円滑に
- トラブルは落ち着いて一つずつ解決
最初は難しく感じるかもしれませんが、実際に使っていくうちに自然と慣れていきます。
まずは自分のプロジェクトを一つ作って、GitHubにアップロードしてみてください。
あなたのコードが世界に公開される瞬間は、とてもワクワクしますよ!
コメント