Preview ng leksyon

GitHubとリモートリポジトリ: クラウドでのコード管理

ローカル作業からチーム開発へ: remoteの概念、ローカルリポジトリとGitHubの連携方法、push・pull・fetchの違いについて解説します。これらのコマンドはよく混同されがちですが、それぞれの役割を明確に説明します。また、就職活動でも必須スキルであるSSHキーを使った認証設定についても詳しく取り上げます。

リモートリポジトリ origin push / pull / fetch
Ano ang matututunan mo sa leksyong ito
  • GitHubでリポジトリを作成し、ローカルプロジェクトと連携して変更をpushで公開できるようになります。
  • fetchとpullの違いを理解し、チーム開発で適切に使い分けられるようになります。
  • プロフェッショナルが行う方法で、パスワード不要のSSH認証をGitHubに設定できるようになります。

Simula ng leksyon

なぜリモートリポジトリが必要なのか?

  • ローカルリポジトリ:自分のパソコン内のみ
  • リモートリポジトリ:チームのためのクラウドストレージ
  • 全員が同じ場所で変更を確認・追加できる
  • インターネット経由でリアルタイムに同期可能

個人開発であれば、ローカルのGitリポジトリで十分です。しかし、チームで開発する場合、共通の作業スペースが必要になります。リモートリポジトリは、全メンバーがアクセスできるコードの一元管理場所となります。これは、複数人で同時編集が可能なGoogle ドキュメントのようなものです。チームメンバーの変更をリアルタイムで確認し、プルリクエストを通じてコードレビューを行い、異なる機能を並行して開発できます。リモートリポジトリがなければ、ファイルのバージョン管理は混乱し、メールでのファイル送受信が頻繁に行われることになるでしょう。

ローカルリポジトリとリモートリポジトリの関係

  • Origin:デフォルトのリモートリポジトリ名
  • Push:変更をサーバーに送信
  • Pull:サーバーから変更を取得
  • 各リポジトリは独立し、完全な履歴を保持

ローカルリポジトリとリモートリポジトリは、「push」と「pull」の2つのコマンドでデータをやり取りします。デフォルトでは、メインのリモートリポジトリは「origin」と呼ばれます。ただし、これは単なるファイルのコピーではありません。各リポジトリは独立しており、完全な変更履歴を含んでいます。ローカルでコミットした内容は、pushコマンドで送信するまで自分だけのもの。また、チームメイトがコードを更新した場合は、pullコマンドで最新の状態に同期する必要があります。

1つのローカル、複数のリモート

  • 複数のリモートリポジトリを接続可能
  • Origin — GitHub上の個人用フォーク
  • Upstream — プロジェクトの元リポジトリ
  • 変更を簡単に同期可能

プロジェクトは複数のリモートリポジトリに同時に接続できます。例えば、originはGitHub上の個人用フォーク、upstreamはメインプロジェクトのリポジトリです。この構成により、元のソースから簡単に更新を取得しながら、自分のコピーに変更を加えることができます。これは、フォークを最新の状態に保つ必要があるオープンソースプロジェクトで特に便利です。いつ、どの変更をupstreamから自分のoriginに取り込むかは自分で決められます。リモートリポジトリの仕組みを理解したところで、GitHubに自分のリポジトリを作成しましょう。

# 新しいリモートリポジトリを追加
git remote add upstream https://github.com/original/project.git

# すべてのリモートリポジトリを表示
git remote -v

# upstreamからローカルブランチに変更を取得
git fetch upstream

git checkout main
git merge upstream/main

# 変更を自分のoriginにプッシュ
git push origin main

Buong leksyon ay para sa subscription

30 pang slide sa buong bersyon.

Mabubuksan ang video, lahat ng slide, tala, pagsusulit, AI tutor, at interview pagkatapos mag-sign in at mag-subscribe.

Mag-sign in o magparehistro Mag-subscribe

Nilalaman ng leksyon

  1. なぜリモートリポジトリが必要なのか?
  2. ローカルリポジトリとリモートリポジトリの関係
  3. 1つのローカル、複数のリモート
  4. GitHubで新しいリポジトリを作成
  5. READMEとライセンス - 最初のコミット
  6. ローカルリポジトリとGitHubを連携する
  7. リポジトリのクローンとは?
  8. クローンの2つの方法:HTTPSとSSH
  9. 実践:リポジトリをクローンする
  10. クローン後の設定を確認
  11. GitHubでパスワード認証が非推奨な理由
  12. SSHキーの仕組み
  13. SSHキーの作成方法
  14. GitHubにキーを追加
  15. コードをクラウドに送信: git push
  16. アップストリームブランチの設定
  17. プッシュ時のコンフリクト解決
  18. Git pull: クラウドとの同期
  19. git pullの内部動作
  20. git pullでよくある問題
  21. git pullが危険な理由
  22. Git fetch:安全な変更の取得
  23. 実践:fetchで変更を確認する
  24. fetchをpullの代わりに使用する場面
  25. 他人のブランチへのPush:プロセスを壊す理由
  26. 正しい方法:変更用に独自のブランチを作成
  27. 静かなる惨事:プルがあなたの変更を消し去るとき
  28. 救世主コマンド:git stashの活用
  29. GitHub:あなたのコードのためのクラウド収納
  30. SSHキーの設定:デジタルパスポート
  31. フォークからプルリクエストまで:チーム開発の流れ
  32. プルリクエスト:通常のプッシュとの違い
  33. まとめと課題

Mga artikulo tungkol sa araling ito

Lahat ng leksyon ng kurso

  1. はじめに:ゼロから始めるGit - 自信を持って使える開発者を目指して
  2. Gitはなぜ必要なのか?~採用で求められるスキル~
  3. インストールとセットアップ:Gitの初回起動準備
  4. 最初のリポジトリ: init、add、commit、そしてインデックスの魔法
  5. Git履歴の読み方: log, diff, showと過去の履歴を辿る
  6. ブランチ: コードの並行現実
  7. ミスをなかったことに:restore、reset、revert ─ 正しい使い方と危険な落とし穴
  8. GitHubとリモートリポジトリ: クラウドでのコード管理
  9. チームワーク:フォーク、フィーチャーブランチ、プルリクエスト
  10. マージコンフリクト:慌てずに理解して解決する
  11. 実践的なチーム開発におけるGitワークフロー:最適な選択方法
  12. 上級者向けツール:rebase、stash、cherry-pick、タグ
  13. 最終プロジェクト:実際のチーム開発をシミュレートする