-
1. はじめに
- 1.1 バージョン管理について
- 1.2 Gitの簡単な歴史
- 1.3 Gitとは?
- 1.4 コマンドライン
- 1.5 Gitのインストール
- 1.6 Gitの初回設定
- 1.7 ヘルプの入手
- 1.8 まとめ
-
2. Gitの基本
- 2.1 Gitリポジトリの取得
- 2.2 リポジトリへの変更の記録
- 2.3 コミット履歴の表示
- 2.4 変更の取り消し
- 2.5 リモートとの連携
- 2.6 タグ付け
- 2.7 Gitエイリアス
- 2.8 まとめ
-
3. Gitブランチ
- 3.1 ブランチの概要
- 3.2 基本的なブランチとマージ
- 3.3 ブランチ管理
- 3.4 ブランチワークフロー
- 3.5 リモートブランチ
- 3.6 リベース
- 3.7 まとめ
-
4. サーバー上のGit
- 4.1 プロトコル
- 4.2 サーバーにGitを導入する
- 4.3 SSH公開鍵の生成
- 4.4 サーバーのセットアップ
- 4.5 Gitデーモン
- 4.6 スマートHTTP
- 4.7 GitWeb
- 4.8 GitLab
- 4.9 サードパーティホストオプション
- 4.10 まとめ
-
5. 分散Git
- 5.1 分散ワークフロー
- 5.2 プロジェクトへのコントリビューション
- 5.3 プロジェクトのメンテナンス
- 5.4 まとめ
-
6. GitHub
- 6.1 アカウント設定と構成
- 6.2 プロジェクトへのコントリビューション
- 6.3 プロジェクトのメンテナンス
- 6.4 組織の管理
- 6.5 GitHubのスクリプト
- 6.6 まとめ
-
7. Gitツール
- 7.1 リビジョン選択
- 7.2 インタラクティブステージング
- 7.3 スタッシュとクリーン
- 7.4 作業への署名
- 7.5 検索
- 7.6 履歴の書き換え
- 7.7 リセットの解説
- 7.8 高度なマージ
- 7.9 Rerere
- 7.10 Gitを使ったデバッグ
- 7.11 サブモジュール
- 7.12 バンドル
- 7.13 置換
- 7.14 資格情報の保存
- 7.15 まとめ
-
8. Gitのカスタマイズ
- 8.1 Gitの設定
- 8.2 Git属性
- 8.3 Gitフック
- 8.4 Gitによるポリシー実施の例
- 8.5 まとめ
-
9. Gitと他のシステム
- 9.1 クライアントとしてのGit
- 9.2 Gitへの移行
- 9.3 まとめ
-
10. Gitの内部構造
- 10.1 プラミングとポーセリン
- 10.2 Gitオブジェクト
- 10.3 Git参照
- 10.4 パックファイル
- 10.5 Refspec
- 10.6 転送プロトコル
- 10.7 メンテナンスとデータ復旧
- 10.8 環境変数
- 10.9 まとめ
-
A1. 付録A:その他の環境でのGit
- A1.1 グラフィカルインターフェース
- A1.2 Visual StudioでのGit
- A1.3 Visual Studio CodeでのGit
- A1.4 IntelliJ / PyCharm / WebStorm / PhpStorm / RubyMineでのGit
- A1.5 Sublime TextでのGit
- A1.6 BashでのGit
- A1.7 ZshでのGit
- A1.8 PowerShellでのGit
- A1.9 まとめ
-
A2. 付録B:アプリケーションへのGitの組み込み
- A2.1 コマンドラインGit
- A2.2 Libgit2
- A2.3 JGit
- A2.4 go-git
- A2.5 Dulwich
-
A3. 付録C:Gitコマンド
- A3.1 セットアップと設定
- A3.2 プロジェクトの取得と作成
- A3.3 基本的なスナップショット
- A3.4 ブランチとマージ
- A3.5 プロジェクトの共有と更新
- A3.6 検査と比較
- A3.7 デバッグ
- A3.8 パッチ
- A3.9 メール
- A3.10 外部システム
- A3.11 管理
- A3.12 プラミングコマンド
6.1 GitHub - アカウント設定と構成
GitHubは、Gitリポジトリのための最大のホストであり、何百万もの開発者とプロジェクトにとっての中心的なコラボレーションポイントです。すべてのGitリポジトリの大部分がGitHubでホストされており、多くのオープンソースプロジェクトがGitホスティング、問題追跡、コードレビューなどにそれを使用しています。そのため、Gitオープンソースプロジェクトの直接的な一部ではありませんが、Gitを専門的に使用する際に、いつかGitHubとやり取りする必要がある可能性は十分にあります。
この章では、GitHubを効果的に使用する方法について説明します。アカウントの登録と管理、Gitリポジトリの作成と使用、プロジェクトに貢献するための一般的なワークフロー、プロジェクトへの貢献を受け入れる方法、GitHubのプログラムによるインターフェース、そして全体的にあなたの生活を楽にするための多くの小さなヒントについて説明します。
自分のプロジェクトをホストするためにGitHubを使用したり、GitHubでホストされている他のプロジェクトとコラボレーションしたりすることに関心がない場合は、Gitツールに進んでも問題ありません。
アカウント設定と構成
最初に必要なことは、無料のユーザーアカウントを設定することです。単純にhttps://github.comにアクセスし、まだ使用されていないユーザー名を選択し、メールアドレスとパスワードを入力して、大きな緑色の「GitHubにサインアップ」ボタンをクリックします。

次に表示されるのは、アップグレードされたプランの料金ページですが、これは今は無視しても大丈夫です。GitHubから、提供したアドレスを確認するためのメールが送信されます。これを実行してください。後でわかるように、これは非常に重要です。
注意
|
GitHubは、一部の高度な機能を除いて、ほとんどすべての機能を無料アカウントで提供しています。 GitHubの有料プランには、高度なツールや機能、無料サービスの上限引き上げが含まれていますが、本書ではそれらについては扱いません。利用可能なプランとその比較に関する詳細については、https://github.com/pricingをご覧ください。 |
画面左上のOctocatロゴをクリックすると、ダッシュボードページに移動します。これでGitHubを使用する準備が整いました。
SSHアクセス
現時点では、https://
プロトコルを使用してGitリポジトリに接続し、先ほど設定したユーザー名とパスワードで認証を行うことができます。ただし、パブリックプロジェクトを単純にクローンするだけであれば、サインアップする必要すらありません。先ほど作成したアカウントは、後でプロジェクトをフォークしたり、フォークしたリポジトリにプッシュしたりする際に使用します。
SSHリモートを使用したい場合は、公開鍵を設定する必要があります。まだお持ちでない場合は、「SSH公開鍵の生成」を参照してください。ウィンドウの右上にあるリンクを使用して、アカウント設定を開きます。

次に、左側の「SSH keys」セクションを選択します。

そこから、「Add an SSH key」ボタンをクリックし、キーに名前を付け、~/.ssh/id_rsa.pub
(または付けた名前)の公開鍵ファイルの内容をテキストエリアに貼り付け、「Add key」をクリックします。
注意
|
SSHキーには、後で思い出せるような名前を付けるようにしてください。各キーに名前(例:「My Laptop」または「Work Account」)を付けることができるため、後でキーを失効させる必要がある場合に、どのキーを探しているのかを簡単に識別できます。 |
アバター
次に、必要に応じて、自動生成されたアバターを自分の選択した画像に置き換えることができます。まず、「SSH Keys」タブの上にある「Profile」タブに移動し、「Upload new picture」をクリックします。

ハードドライブにあるGitロゴのコピーを選択し、トリミングする機会が与えられます。

これで、サイト上でインタラクションする場所であればどこでも、ユーザー名の横にアバターが表示されるようになります。
もし人気のあるGravatarサービス(WordPressアカウントによく使用されます)にアバターをアップロードしている場合、そのアバターがデフォルトで使用されるため、この手順を行う必要はありません。
メールアドレス
GitHubがGitコミットをユーザーにマッピングする方法は、メールアドレスによるものです。コミットで複数のメールアドレスを使用しており、GitHubにそれらを適切にリンクさせたい場合は、管理セクションのEmailsセクションに使用したすべてのメールアドレスを追加する必要があります。

「すべてのメールアドレスを追加」では、可能性のあるさまざまな状態を確認できます。一番上のアドレスは確認済みで、プライマリアドレスとして設定されています。つまり、通知と領収書が届く場所です。2番目のアドレスは確認済みであるため、必要に応じてプライマリとして設定できます。最後のアドレスは未確認であるため、プライマリアドレスにすることはできません。GitHubがサイト上の任意のリポジトリのコミットメッセージでこれらのいずれかを確認すると、ユーザーにリンクされるようになります。
二段階認証
最後に、セキュリティを強化するために、二段階認証(「2FA」)を設定することを強くお勧めします。二段階認証は、パスワードが何らかの形で盗まれた場合にアカウントが侵害されるリスクを軽減するために、近年ますます普及している認証メカニズムです。有効にすると、GitHubは2つの異なる認証方法を要求するため、そのうちの1つが侵害されたとしても、攻撃者はアカウントにアクセスできなくなります。
二段階認証の設定は、アカウント設定の「Security」タブにあります。

「Set up two-factor authentication」ボタンをクリックすると、設定ページに移動し、セカンダリコードを生成するために電話アプリを使用するか(「時間ベースのワンタイムパスワード」)、ログインするたびにGitHubにSMSでコードを送信してもらうかを選択できます。
どちらの方法を優先するかを選択し、2FAの設定手順に従うと、アカウントのセキュリティが少し向上し、GitHubにログインするたびにパスワードに加えてコードを入力する必要があります。