Git ・Github の安全なコードを管理・ローカルで作業

GitHubからプロジェクトを取得(クローン)

方法①: HTTPS を使う

git clone https://github.com/ユーザー名/リポジトリ名.git

方法②: SSH を使う(SSH 設定済みの場合)

git clone git@github.com:ユーザー名/リポジトリ名.git

クローン後は、作業フォルダへ移動

🔹 現在のブランチを確認,main などのブランチが表示されるはず。

cd sample-project
git branch
 

📌 1. ブランチを作成する

前提条件 リポジトリの準備 すでに Git リポジトリが存在している (git init または git clone 済み) git status を実行し、作業ディレクトリがクリーンであることを確認(未コミットの変更がない)
リモートとの同期、
最新の状態からブランチを作成するために、git pull origin main などで最新の変更を取得しておく( git checkout main # main ブランチに移動ここに居るここに居る前提)

✅ 方法①: ターミナルで作成 VS Code を開く(作成したproject のフォルダを開く)
ターミナルを開く(⌘ + ~ または Terminal > New Terminal)新しいブランチを作成する

   git checkout -b feature-branch    又は git switch -c feature-branch

現在のブランチを確認する

git branch
✅ feature-branch に切り替わっていればOK!

git remote -v
✅ リモートリポジトリの名前(通常は origin)と、それに対応するURLが表示されます。

git remote show origin
✅ より詳しいリモートリポジトリの詳細情報
  

✅ 方法②: VS Code の GUI で作成 VS Code の左下にあるブランチ名をクリック「+ Create New Branch」を選択
ブランチ名を入力(例: feature-branch)Enterキーを押してブランチ作成 自動で新しいブランチに切り替わる!


📌 2. コードを編集し、コミットする

✅ ファイルを変更して保存  >  エディタでコードを編集  > 保存(⌘ + S) 
✅ 変更をステージング(add)>  ターミナルで以下を実行:

   git add .
  
または、VS Code の「ソース管理」タブ(左側の Git アイコン)で変更を選択し、「+」をクリック。
✅ コミット
 git commit -m "新しい機能を追加"

または、VS Code の「ソース管理」タブでメッセージを入力し、「✔(チェックマーク)」をクリック。

📌 3. GitHub にプッシュ

 ターミナルで:
 git push origin feature-branch
または、VS Code の「ソース管理」タブの「...」メニューから「Push」を選択。

📌 4. Pull Request(PR)を作成 (git merge feature-branch は不要)

1

✅新しいブランチで開発 まず、ローカルで新しいブランチを作成し、変更を加えます。

git checkout -b feature-branch  
     
git add .                      
git commit -m "新機能を追加"     
git push origin feature-branch     # 終わってたらパス 🙅

2.Pull Request

✅ GitHub にアクセス > リポジトリを開く>「Pull requests」タブをクリック(画面上部のメニューにある) >「New pull request」ボタンをクリック。> マージ元(feature-branch)とマージ先(main)を選択。・マーク左側の記入枠: base(統合先のブランチ、通常は main)・右側の記入枠: compare(統合元のブランチ、通常は feature-branch) ・ 矢印(←): compare の変更を base に統合する ことを示す。  >「Create pull request」ボタンをクリック。  > タイトルと説明を記入し、再度「Create pull request」ボタンを押す。
「Pull requests」→「New pull request」
 feature-branch → main を選択
 変更を確認して「Create pull request」

3

✅コードレビュー(必要に応じて) 他のメンバーがPRをレビューし、フィードバックをもらう。 修正が必要なら、feature-branch に変更を加えて git push origin feature-branch で更新。 問題がなければ承認を得る。

4

✅PRを main にマージする手順
GitHubのPRページを開く 「Merge pull request」ボタンをクリック 「Confirm merge」ボタンをクリック(マージの確定) (任意)「Delete branch」ボタンを押して、不要な feature-branch を削除

5

5✅ローカルの main を最新に更新 リモートの main に変更がマージされたので、ローカル環境も更新する。
ローカル環境も更新
git checkout main  # mainブランチに移動
git pull origin main  # 最新の状態に更新
git branch -d feature-branch  # ローカルの feature-branch を削除(不要なら)

📌 5. 作業終了後、ブランチを削除

✅ マージが完了したら、ブランチを削除して整理:
     git branch -d feature-branch
   git branch -D feature-branch        
     git push origin --delete feature-branch 
  
   1行目:ローカルブランチの削除      
   2行目:-dオプションは、マージされていない変更があれば警告を表示します。
             もし強制的に削除したい場合は、-Dオプションを使用できます:
   3行目:ローカルおよびリモートの両方で feature-branch が削除されます

   解説
         git branch -d feature/add-login                    
         git branch -D feature/add-login                    
         git push origin --delete feature/add-login         
         又は  git push origin :feature/add-login         
         git fetch --prune                 

    1行目:ローカルブランチの削除
    2行目:未マージのブランチを強制削除(注意⚠️)
    3行目:リモートブランチの削除(GitHub などのリモートリポジトリ)
    4行目:リモートリポジトリ上の feature/add-login を削除
    5行目:削除されたリモートブランチの情報をローカルからも消す(リストを整理)
🔹 これでブランチをきれいに管理 ローカルブランチ削除 →git branch -d feature/add-login リモートブランチ削除 →git push origin --delete feature/add-login ローカルのリモート情報を整理 →git fetch --prune

🔹 簡単に
         git branch -d feature-branch
         git push origin --delete feature-branch

         git fetch --prune
🎯 まとめ

✅ VS Code で Git ブランチを作成・編集・プッシュする流れ ブランチ作成(ターミナル or GUI)
コード編集 & 保存
コミット(add → commit)
GitHub にプッシュ
Pull Request(PR)で main に統合
不要なブランチを削除
👩‍💻 VS Code なら Git 操作が簡単!

Git - feature-branch の変更を main に反映させる方法

ブランチ feature-branch で作業を進めた後、その変更を元のブランチ(例えば main)に反映させるには、マージ または リベース の方法を使います。

1. feature-branch を main にマージする方法

まず、main ブランチに切り替えます。

git checkout main

次に、feature-branchmain にマージします。

git merge feature-branch

これで、feature-branch の変更内容が main に統合されます。

最後に、マージした内容をGitHubにプッシュします。

git push origin main

2. feature-branch を main にリベースする方法

リベースを使うと、feature-branch の変更履歴を main の上に直線的に積み上げることができます。

まず、main ブランチに切り替えます。

git checkout main

次に、feature-branchmain にリベースします。

git rebase feature-branch

これで、mainfeature-branch の変更が反映されます。

リベース後、変更内容をGitHubにプッシュします。

git push origin main

もしリベース後にコンフリクトが発生した場合、コンフリクトを解消した後に以下のコマンドを実行します:

git rebase --continue

3. コンフリクトの解決

マージ時やリベース時にコンフリクトが発生することがあります。その場合は、該当するファイルを修正し、コンフリクトを解消した後にコミットします。

これらの手順で、feature-branch の変更を元の main ブランチに反映できます。

どちらの方法を選ぶかは、履歴がきれいに保たれるリベースや、単純に変更を統合したいマージを選ぶことができます。

GitHubの認証方法の選択肢

1. Personal Access Token (PAT) を使用する場合

GitHubのトークン設定ページ

Personal Access Tokenを生成

GitHubにログイン後、Personal Access Token を生成します。

必要なスコープ(権限)を選択します。例えば、repo 権限を選択してリポジトリへのアクセスを許可します。

git push 時にPATを使用

git push コマンドを実行すると、認証を求められます。

ユーザー名にはGitHubのユーザー名を入力し、パスワードの代わりに PAT を入力します。

2. SSHを使用する場合

SSHキーの設定

まず、SSHキー を生成して、GitHubアカウントに登録する必要があります。以下のコマンドでSSHキーを生成します:

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

生成したSSH公開鍵(~/.ssh/id_rsa.pub)をGitHubに登録します。GitHubのSSHキー設定ページで公開鍵を追加できます。

リモートURLをSSHに変更

リモートURLをSSH形式に変更することで、今後のプッシュにおいてパスワードを求められず、SSHキーで認証されるようになります。

git remote set-url origin git@github.com:username/repository.git

これにより、git push 実行時にSSH経由で認証され、パスワードやPATを毎回入力する必要がなくなります。

認証の再設定

もし認証情報が正しくない場合、以下の方法で認証を再設定できます:

Credential Helperをリセット

Gitが保存している認証情報を削除して、再度認証を求められるようにします:

git credential-osxkeychain erase

認証情報を手動で設定

git config を使って、ユーザー名やメールアドレスを手動で設定します:

git config --global user.name "your_username"
git config --global user.email "your_email@example.com"

これで、git push を行う際に、再度認証情報が求められるようになります。

上記の方法で、認証情報を適切に設定した後、GitHubへのプッシュを行うことができます。