【初心者向け】GitHub(×GitHub 〇Git)のインストール
GitHubをインストールする、という点で少し混乱しているかもしれません。GitHubは、一般的にブラウザ上で操作するウェブサービスであり、ローカル環境にソフトウェアをインストールするものではありません。
GitHubの主な機能
- バージョン管理: コードの変更履歴を管理し、過去のバージョンに戻したり、チームで共同作業を円滑に行うことができます。
- コード共有: プログラムコードを公開したり、他の開発者と共同で開発することができます。
- コラボレーション: IssueやPull Requestを使って、チームメンバーとコミュニケーションを取りながら開発を進めることができます。
もし、GitHubをローカルにインストールしたいとお考えでしたら、Gitという分散型バージョン管理システムをインストールすることになります。
というわけで、Gitのインストールについてブログ記事を書きたいと思います。
はじめに
- Gitってそもそも何?
皆さんは、一度書いた文章を何度も修正したり、画像ファイルを何度も保存したりした経験はありませんか?Gitは、そんな時に大活躍するツールです。
Gitは、ファイルの変更履歴を記録して管理するためのシステムのことです。プログラミングをする人だけでなく、文章を書いたり、デザインをする人にとっても、とても便利なツールなんです。
- なぜGitを使うの?メリットがいっぱい!
Gitを使うと、どんなメリットがあるのでしょうか?
過去のバージョンに戻せる: 間違えてファイルを消してしまったり、前のバージョンの方が良かった!なんて時でも、簡単に過去の状態に戻すことができます。
チームで共同作業がスムーズ: 複数人で一つのプロジェクトを進める時、Gitを使えば誰がどの部分を修正したか、いつ修正したかが一目瞭然。バッティングを防ぎ、効率的に作業を進めることができます。
安全に作業できる: Gitは、変更履歴を細かく記録してくれるので、安心して作業を進めることができます。万が一問題が発生しても、原因を特定しやすくなります。
オンラインで共有できる: GitHubなどのサービスを使えば、自分の作った作品を世界中の人と共有することができます。
- GitとGitHubの違いって?
よく混同されるGitとGitHubですが、少し違います。
Git: ファイルの変更履歴を管理するシステムそのもの。
GitHub: Gitを使って作ったプロジェクトをオンラインで公開したり、共同作業をするためのプラットフォーム。
準備
-
事前に必要なもの (OSの種類など)
コンピュータ: Windows、macOS、Linuxなど、お使いのコンピュータで大丈夫です。
OSの種類を確認しておく必要があります。 -
アカウント作成 (GitHubアカウントの作成)
GitHubは、Gitで作成したプロジェクトをオンラインで共有したり、共同作業をするためのプラットフォームです。Gitを使う上で、GitHubのアカウントを作成しておくことをおすすめします。
GitHubのアカウント作成手順は、GitHubの公式サイトから簡単にできます。
GitHub公式サイト: https://github.com/
Gitのインストール
Windowsでのインストール方法を解説します。
Windows用gitのサイトを開きます。
ダウンロードをクリックします。
Information
これからインストールしようとしているGitが、**GNU General Public License(GNU一般公衆利用許諾契約、通称GPL)**というライセンスの下で提供されていることを説明しています。
GNU GPLとは? ソフトウェアの著作権に関するルールを定めたライセンスの一種です。GPLのもとで提供されているソフトウェアは、基本的に誰でも自由に使用・改変・再配布することができます。ただし、改変して再配布する場合は、元のソフトウェアのライセンス条件を継承しなければなりません。
GNU General Public Licenseを読んで next をクリックします。
Select Destination Location
インストール先のフォルダを指定して(デフォルトでOK)、Nextをクリックします。
Select Components
この画面は、Git for Windowsのインストール中に表示される、インストールする機能を選択する画面です。
機能を指定して(デフォルトでOK)、Nextをクリックします。
- Additional icons On the Desktop: デスクトップにGit関連のショートカットアイコンを作成するかどうかを選択します。
- Windows Explorer integration: Windowsエクスプローラー上でGit関連の操作を行えるようにします。
- Open Git Bash here: Windowsエクスプローラー上で右クリックしたフォルダを、Git Bash(Gitのコマンドラインインターフェース)で開けるようにします。
- Open Git GUI here: Windowsエクスプローラー上で右クリックしたフォルダを、Git GUI(Gitのグラフィカルユーザーインターフェース)で開けるようにします。
- Git LFS (Large File Support): 大きなファイルを効率的に管理するための機能です。
- Associate .git configuration files with the default text editor: .gitという拡張子の設定ファイルを、デフォルトのテキストエディタで開けるようにします。
- Associate .sh files to be run with Bash: .shファイル(Bashスクリプト)をダブルクリックすると、Bashで実行されるように設定します。
- Check daily for Git for Windows updates: Git for Windowsのアップデートを毎日確認するかどうかを選択します。
- (NEW!) Add a Git Bash Profile to Windows Terminal: Windows TerminalにGit Bashのプロファイルをを追加します。
Select Start Menu Folder
Git for Windowsのインストール中に表示される、スタートメニューに作成されるショートカットの場所を選ぶ画面です。
スタートメニューへの表示を指定して、Nextをクリックします。(デフォルトでOK)
- Select Start Menu Folder: スタートメニューに作成されるフォルダを選択する、という意味です。
- Git: デフォルトで「Git」というフォルダが作成されます。
- Browse: フォルダを自分で指定したい場合にクリックします。
- Don't create a Start Menu folder: スタートメニューにショートカットを作成しない場合にチェックします。
Choosing the default editor userd by Git
この画面は、Git for Windowsのインストール中に表示される、Gitで使用するデフォルトのエディタを選択する画面です。
選択してNextをクリックします。(デフォルトでOK)
Vim以外のエディタを使いたい場合: ドロップダウンリストから「Vim」以外のエディタを選択するか、もしくは「Browse」ボタンを押して、任意のエディタを指定します。
Adfusting the name of the initial branch in new repositories
この画面は、Git for Windowsのインストール中に表示される、新しく作成するリポジトリの初期ブランチ名を設定する画面です。Gitで新しいリポジトリを作成する際に、初期のブランチ名(開発の起点となる分岐)をここで指定します。
選択してNextをクリックします。(デフォルトでOK)
- Let Git decide: Gitに任せる、という意味です。Gitはデフォルトで「master」というブランチ名を設定しますが、将来的にこのデフォルト名が変更される可能性があります。
- Override the default branch name for new repositories: デフォルトのブランチ名を変更する、という意味です。
main: ここで指定した名前が、新しく作成されるリポジトリの初期ブランチ名になります。「main」は、近年よく使われるようになったブランチ名です。
This setting does not affect existing repositories: この設定は、すでに存在するリポジトリには影響しません。
Adfustion your PATH enviroment
この画面では、Gitのコマンドをどの環境から実行するかを設定します。つまり、コマンドプロンプトやPowerShellなど、どのツールからgitコマンドを使えるようにするかを決めるということです。
選択してNextをクリックします。(デフォルトでOK)
- Use Git from Git Bash only:Git Bash しか使わない場合に選びます。
このオプションを選ぶと、PATH環境変数が変更されず、GitコマンドはGit Bashからしか実行できなくなります。
最も安全な設定ですが、他のコマンドプロンプトからはGitが使えません。 - Git from the command line and also from 3rd-party software (Recommended):推奨される設定です。
コマンドプロンプト、PowerShell、Git Bash、そしてGitを必要とするサードパーティ製のソフトウェアからもGitコマンドが使えるようになります。
PATH環境変数は最小限にしか変更されず、他のコマンドと干渉する可能性が低いです。 - Use Git and optional Unix tools from the Command Prompt:コマンドプロンプトからGitコマンドだけでなく、findやsortなどのUnixツールも使えるようにします。
注意: Windowsのコマンドと名前が衝突する可能性があります。このオプションを選ぶ際は、その影響を理解している必要があります。
Choosing the SSH executable
この画面では、Gitがリモートリポジトリと通信する際に使用するSSHクライアントを選択します。SSHクライアントとは、安全にリモートコンピュータと接続するためのソフトウェアです。
選択してNextをクリックします。(デフォルトでOK)
- Use bundled OpenSSH:Gitに同梱されているOpenSSHを使用します。
Gitのインストール時に一緒にインストールされるOpenSSHを使用するため、設定が簡単です。 - Use external OpenSSH:別途インストールしたOpenSSHを使用します。
既に別のOpenSSHをインストールしている場合や、特定のバージョンを使いたい場合に選択します。Gitは独自のOpenSSHをインストールせず、PATH環境変数に設定されたOpenSSHを使用します。
Choosing HTTPS transport backend
この画面では、GitがHTTPS接続でリモートリポジトリと通信する際に使用するSSL/TLSライブラリを選択します。SSL/TLSライブラリは、インターネット通信の安全性を担保するための技術です。
選択してNextをクリックします。(デフォルトでOK)
- Use the OpenSSL library:OpenSSLライブラリを使用します。
OpenSSLは、広く利用されているSSL/TLSライブラリです。
ca-bundle.crtファイルを使用して、サーバー証明書の検証を行います。 - Use the native Windows Secure Channel library:WindowsのネイティブなSecure Channelライブラリを使用します。
Windowsの証明書ストアを使用して、サーバー証明書の検証を行います。
企業の内部CA証明書も利用できるため、社内ネットワークでの利用に適しています。
Configurring the line ending conversions
この画面では、Gitがテキストファイルの改行コードをどのように扱うかを設定します。改行コードは、テキストファイルの行の終わりを示す記号で、WindowsとUnix系OSでは異なる形式が使われるため、注意が必要です。
私はWindowsしか使っていないので、「Checkout as-is, commit as-is」を選択してNextをクリックします。
- Checkout Windows-style, commit Unix-style line endings:チェックアウト(ファイルを取得)する際はWindows形式の改行コード(CRLF)を使用し、コミット(変更を保存)する際はUnix形式の改行コード(LF)に変換します。クロスプラットフォームなプロジェクトで、Windows環境で作業する際に推奨される設定です。
- Checkout as-is, commit Unix-style line endings:チェックアウトする際は、元のファイルの改行コードをそのまま使用し、コミットする際はUnix形式の改行コード(LF)に変換します。Unix系OSで作業する際に推奨される設定です。
- Checkout as-is, commit as-is:チェックアウトする際もコミットする際も、元のファイルの改行コードをそのまま使用します。改行コードの変換を行わないため、クロスプラットフォームなプロジェクトでは推奨されません。
Configuring the terminal emulator to use with Git Bash
この画面では、Git Bashで使用するターミナルエミュレータを選択します。ターミナルエミュレータとは、コマンドを入力してプログラムを実行するための画面のことで、Git Bashを使う際に表示される黒い画面を指します。
選択してNextをクリックします。(デフォルトでOK)
- Use MinTTY (the default terminal of MSYS2):MinTTYというターミナルエミュレータを使用します。MinTTYは、Git for Windowsに同梱されている、機能が豊富なターミナルエミュレータです。ウィンドウサイズを変更できたり、非矩形の選択ができたり、Unicodeに対応しているなど、使い勝手が非常に良いです。ただし、Windowsのコンソールプログラム(Pythonなど)をMinTTY上で直接実行するには、winptyというツールを使う必要があります。
- Use Windows' default console window:Windowsの標準のコンソールウィンドウ(cmd.exe)を使用します。Windowsの標準的なコマンドプロンプトであるcmd.exeを使用します。Pythonやnode.jsなどのWindowsのコンソールプログラムとの相性は良いですが、スクロールバック機能が制限されていたり、Unicodeに対応するために設定が必要だったり、Windows 10以前ではウィンドウサイズが自由に変更できなかったり、テキストの選択範囲が矩形に限られていたりと、機能が制限されています。
Choose the default behavior of 'git pull'
この画面では、Gitのgit pullコマンドを実行した際のデフォルトの動作を設定します。git pullコマンドは、リモートリポジトリから変更をローカルリポジトリに取り込むためのコマンドです。この設定によって、git pullを実行したときに、どのように変更が取り込まれるかが決まります。
選択してNextをクリックします。(デフォルトでOK)
- Fast-forward or merge:可能であればfast-forward(高速転送)を行い、そうでない場合はマージコミットを作成します。リモートブランチがローカルブランチの先頭に位置している場合、ローカルブランチをリモートブランチの先端に直接移動させることができます。これをfast-forwardと呼びます。fast-forwardできない場合は、マージコミットを作成することで、ローカルブランチとリモートブランチの変更を統合します。
最も一般的な設定であり、多くの場合、この設定で問題なく動作します。 - Rebase:リベースを行います。ローカルブランチの変更を、リモートブランチに適用し直します。リベースは、コミット履歴をきれいに保つことができる一方で、複雑な状況では意図しない結果になる可能性もあります。
- Only ever fast-forward:常にfast-forwardのみを行います。fast-forwardできない場合は、エラーになります。厳密なワークフローを管理したい場合に適しています。
Choose a credential helper
この画面では、Gitがリモートリポジトリにアクセスする際に、認証情報(ユーザー名とパスワードなど)をどのように管理するかを設定します。
選択してNextをクリックします。(デフォルトでOK)
- Git Credential Manager:Git Credential Managerを使用します。Git Credential Managerは、クロスプラットフォームで動作する認証情報管理ツールです。一度認証情報を登録しておけば、次回以降は手動で入力する必要がなくなります。今後のGit Credential Managerに関する情報へのリンクも提供されています。
- None:認証情報ヘルパーを使用しません。毎回、ユーザー名とパスワードを手動で入力する必要があります。
COnfiguring extra options
この画面では、Gitの追加機能を有効にするかどうかを設定します。これらの機能は、Gitの操作をより効率的にしたり、特定の環境で役立つ機能です。
選択してNextをクリックします。(デフォルトでOK)
- Enable file system caching:ファイルシステムのキャッシュを有効にします。Gitの特定の操作において、ファイルシステムのデータを一度に大量に読み込んでメモリにキャッシュします。これにより、処理速度が大幅に向上します。一般的に、この機能を有効にすることで、Gitの操作がより高速になります。
- Enable symbolic links:シンボリックリンクを有効にします。シンボリックリンクとは、あるファイルやディレクトリへのショートカットのようなものです。この機能を有効にすることで、シンボリックリンクをGitで管理できるようになります。シンボリックリンクを使用するには、システムの設定で「SeCreateSymbolicLink」権限が必要になります。
既存のリポジトリには影響を与えません。
Configuring experimintal options
Installをクリックします。
Installing
Completing the Git Setup Wizard
この画面は、Gitのインストールが完了したことを示しています。
Finishをクリックします。
Launch Git Bash: Git Bashを起動するオプションです。チェックを入れると、セットアップ完了後にGit Bashが自動的に起動します。
View Release Notes: リリースノートを表示するオプションです。チェックを入れると、Gitの最新バージョンに関する情報が表示されます。
これでGitのインストールが完了しました
基本操作
また次の回に
リポジトリの作成
ファイルの追加・変更・削除
コミット
プッシュ
プル
ブランチ
マージ
GitHubとの連携
またそのうち・・・
リモートリポジトリの設定
プッシュとプル
GitHub Actions (自動化)
まとめ
他のサイトをみて、なんとなくデフォルトで進めていたGitのインストールを、1つずつGeminiに解説してもらいました。よくわからず適当に進めていたことも、意味が分かってよかったです。
今後の学習について
基本操作やGitHubとの連携については、また次の機会に書きます。
Discussion