0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

(リファレンス) - Git完全ガイド - 初心者から中級者向け

0
Last updated at Posted at 2025-11-15

(チートリファレンス) - Git完全ガイド - 初心者から中級者向け

(トップページはこちら) - (Gitで始める効率的な開発ワークフロー)

目次

  1. はじめに
  2. Gitの基本概念
  3. 初期設定
  4. 基本操作
  5. ブランチ操作
  6. リモートリポジトリとの連携
  7. よくある問題と解決方法
  8. チーム開発での運用
  9. 他のバージョン管理システムとの違い
  10. コマンドリファレンス

1. はじめに

このドキュメントは、Gitを使い始める方、または他のバージョン管理システム(Subversion、Perforce、CVS)から移行される方を対象としています。実務で必要となる知識を体系的にまとめています。


2. Gitの基本概念

2.1. 分散型バージョン管理システムとは

Gitは分散型バージョン管理システムです。SubversionやCVSのような集中型システムとは異なり、各開発者が完全なリポジトリのコピーを持ちます。

集中型との主な違い:

  • ローカルで完結する操作が多い(コミット、履歴閲覧、ブランチ作成など)
  • ネットワーク接続なしでも作業可能
  • すべての開発者が完全な履歴を保持

2.2. 3つの作業エリア

Gitでは以下の3つのエリアを理解することが重要です。

  1. ワーキングディレクトリ - 実際に編集作業を行うファイル群
  2. ステージングエリア(インデックス) - 次のコミットに含める変更を準備する場所
  3. リポジトリ - コミットされた変更の履歴

2.3. ファイルの状態

  • Untracked(未追跡) - Gitが管理していないファイル
  • Unmodified(未変更) - 最後のコミットから変更されていないファイル
  • Modified(変更済み) - 変更されたがまだステージングされていないファイル
  • Staged(ステージ済み) - 次のコミットに含める準備ができたファイル

3. 初期設定

3.1. 必須設定

Gitを使い始める前に、ユーザー情報を設定します。

# 名前の設定
git config --global user.name "山田太郎"

# メールアドレスの設定
git config --global user.email "yamada@example.com"

3.2. 推奨設定

# 出力の色付け
git config --global color.ui auto

# デフォルトブランチ名をmainに設定
git config --global init.defaultBranch main

# プル時の動作をrebaseに設定(履歴が直線的になります)
git config --global pull.rebase true

# 改行コードの自動変換(Windows)
git config --global core.autocrlf true

# 改行コードの自動変換(Mac/Linux)
git config --global core.autocrlf input

3.3. エディタの設定

# Visual Studio Code
git config --global core.editor "code --wait"

# Vim
git config --global core.editor vim

# Emacs
git config --global core.editor emacs

3.4. エイリアス設定

頻繁に使うコマンドを短縮できます。

git config --global alias.st status
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.ci commit
git config --global alias.unstage 'reset HEAD --'
git config --global alias.last 'log -1 HEAD'
git config --global alias.graph 'log --oneline --graph --all --decorate'

設定後は git st で git status を実行できます。

3.5. 設定の確認

# すべての設定を表示
git config --list

# 特定の設定を確認
git config user.name
git config user.email

4. 基本操作

4.1. リポジトリの作成

4.1.1. 新規プロジェクトの開始

# 現在のディレクトリをGitリポジトリとして初期化
git init

# 指定した名前のディレクトリを作成して初期化
git init プロジェクト名

4.1.2. 既存リポジトリのクローン

# リモートリポジトリをクローン
git clone https://gitlab.com/username/project.git

# クローン先のディレクトリ名を指定
git clone https://gitlab.com/username/project.git my-project

4.2. 基本的なワークフロー

日常的な作業の流れです。

# 1. 現在の状態を確認
git status

# 2. 変更をステージングエリアに追加
git add ファイル名              # 特定のファイル
git add .                       # カレントディレクトリ以下のすべて
git add -A                      # リポジトリ全体のすべて

# 3. コミット(変更を記録)
git commit -m "変更内容の説明"

# 4. リモートリポジトリへ送信
git push

補足:

  • git add はファイルをステージングエリアに追加します
  • git commit はステージングエリアの内容をローカルリポジトリに記録します
  • git push はローカルリポジトリの内容をリモートリポジトリへ送信します

4.3. 変更内容の確認

# ワーキングディレクトリとステージングエリアの差分
git diff

# ステージングエリアとリポジトリの差分
git diff --staged

# ワーキングディレクトリとリポジトリの差分
git diff HEAD

# 特定のファイルの差分
git diff ファイル名

# 2つのコミット間の差分
git diff コミットID1 コミットID2

4.4. 履歴の確認

# コミット履歴を表示
git log

# 簡潔な1行表示
git log --oneline

# グラフ表示
git log --graph --oneline --all

# 特定のファイルの履歴
git log ファイル名

# 特定の作成者のコミット
git log --author="山田"

# 期間を指定
git log --since="2024-01-01"
git log --since="2 weeks ago"

# 行ごとの変更履歴
git blame ファイル名

4.5. 変更の取り消し

4.5.1. ワーキングディレクトリの変更を破棄

# 特定のファイルの変更を破棄
git restore ファイル名

# すべてのファイルの変更を破棄
git restore .

# 旧コマンド(Git 2.23より前)
git checkout -- ファイル名

4.5.2. ステージングの取り消し

# ステージングを解除(変更は保持)
git restore --staged ファイル名

# すべてのステージングを解除
git restore --staged .

# 旧コマンド
git reset HEAD ファイル名

4.5.3. コミットの修正

# 直前のコミットを修正(まだpushしていない場合)
git commit --amend -m "修正後のメッセージ"

# ファイルを追加して直前のコミットをやり直す
git add 忘れたファイル
git commit --amend --no-edit

4.6. ファイルの削除と移動

# ファイルを削除(ワーキングディレクトリとリポジトリから)
git rm ファイル名

# ファイルを削除(リポジトリのみ。実ファイルは残す)
git rm --cached ファイル名

# ファイルの移動または名前変更
git mv 元のファイル名 新しいファイル名

5. ブランチ操作

5.1. ブランチとは

ブランチは開発の分岐点を作る機能です。新機能の開発や実験的な変更を、本流(通常はmainブランチ)に影響を与えずに行えます。

ブランチの利点:

  • 複数の機能を並行開発できます
  • 本番環境のコードを安定させたまま開発できます
  • 実験的な変更を気軽に試せます
  • 変更のレビューとテストを独立して行えます

5.2. ブランチの基本操作

# ブランチ一覧を表示
git branch                  # ローカルブランチ
git branch -a               # リモートブランチも含む
git branch -v               # 最新コミット情報付き

# 新しいブランチを作成
git branch ブランチ名

# ブランチを切り替え
git checkout ブランチ名
git switch ブランチ名       # 新しいコマンド

# ブランチ作成と同時に切り替え
git checkout -b ブランチ名
git switch -c ブランチ名    # 新しいコマンド

# ブランチ名の変更
git branch -m 古い名前 新しい名前

# ブランチの削除
git branch -d ブランチ名    # マージ済みの場合
git branch -D ブランチ名    # 強制削除

5.3. マージ

ブランチを統合する操作です。

# 現在のブランチに別のブランチをマージ
git merge ブランチ名

# マージコミットを必ず作成
git merge --no-ff ブランチ名

# マージを中止
git merge --abort

マージの動作:

マージ前:
main:    A - B - C
feature: A - B - D - E

マージ後:
main:    A - B - C - M (マージコミット)
              \   /
               D-E

5.4. リベース

コミット履歴を整理する操作です。

# 現在のブランチをmainブランチにリベース
git rebase main

# 対話的リベース(コミットの編集・統合など)
git rebase -i HEAD~3

# リベースを中止
git rebase --abort

# リベース続行(コンフリクト解決後)
git rebase --continue

リベースの動作:

リベース前:
main:    A - B - C
feature: A - B - D - E

リベース後:
main:    A - B - C
feature: A - B - C - D' - E'
              (featureをmainの先端に付け替え)

マージとリベースの違い:

  • マージ - ブランチの統合履歴が残る。履歴が分岐する
  • リベース - 履歴が直線的になる。分岐履歴は残らない

注意: リモートにpush済みのコミットはリベースしないでください。他の開発者に影響を与えます。

5.5. Cherry-pick

特定のコミットだけを別のブランチに適用します。

# 特定のコミットを現在のブランチに適用
git cherry-pick コミットID

# 複数のコミットを適用
git cherry-pick コミットID1 コミットID2

# コミットせずに変更のみ適用
git cherry-pick -n コミットID

使用例:
featureブランチのコミットDだけをmainブランチに取り込みたい場合

上記の図では、featureブランチのコミットDの内容を、mainブランチにD'としてコピーしています。

5.6. Stash(作業の一時退避)

作業途中の変更を一時的に退避できます。

# 変更を退避
git stash
git stash save "作業メモ"

# 未追跡ファイルも含めて退避
git stash -u

# 退避した変更を戻す
git stash pop              # 最新の退避を戻して削除
git stash apply            # 最新の退避を戻す(削除しない)
git stash apply stash@{2}  # 特定の退避を戻す

# 退避リストを表示
git stash list

# 退避の内容を確認
git stash show
git stash show -p          # 詳細な差分

# 退避を削除
git stash drop stash@{0}
git stash clear            # すべて削除

使用例:

  1. feature-aブランチで作業中
  2. 緊急でbugfixが必要になった
  3. git stash で作業を退避
  4. bugfixブランチで修正作業
  5. feature-aブランチに戻り git stash pop で作業再開

6. リモートリポジトリとの連携

6.1. リモートリポジトリの設定

# リモートリポジトリを追加
git remote add origin https://gitlab.com/username/project.git

# リモートリポジトリ一覧
git remote -v

# リモートリポジトリの詳細情報
git remote show origin

# リモートリポジトリのURLを変更
git remote set-url origin https://new-url.com/project.git

# リモートリポジトリを削除
git remote remove origin

6.2. プッシュ(送信)

# リモートに送信
git push

# 初回プッシュ時(アップストリームを設定)
git push -u origin main

# すべてのブランチをプッシュ
git push --all

# タグをプッシュ
git push --tags

# リモートブランチの削除
git push origin --delete ブランチ名

# 強制プッシュ(危険)
git push --force

# より安全な強制プッシュ
git push --force-with-lease

注意: --force は他の開発者の変更を上書きする可能性があります。チーム開発では避けてください。

6.3. フェッチとプル(取得)

# リモートの変更を取得(マージはしない)
git fetch

# すべてのリモートから取得
git fetch --all

# 削除されたリモートブランチの参照を削除
git fetch --prune

# リモートの変更を取得してマージ
git pull

# リモートの変更を取得してリベース
git pull --rebase

フェッチとプルの違い:

  • フェッチ - リモートの変更を取得のみ。ローカルブランチは変更しない
  • プル - リモートの変更を取得してローカルブランチにマージ

6.4. リモート追跡ブランチ

# リモート追跡ブランチからローカルブランチを作成
git checkout -b ローカルブランチ名 origin/リモートブランチ名

# 簡略記法(ブランチ名が同じ場合)
git checkout --track origin/ブランチ名

# 現在のブランチのアップストリームを設定
git branch --set-upstream-to=origin/main

7. よくある問題と解決方法

7.1. プッシュが拒否された場合

# エラー: ! [rejected] main -> main (fetch first)

# 解決方法1: プルしてからプッシュ
git pull --rebase
git push

# 解決方法2: 強制プッシュ(他の人の変更を消す可能性あり)
git push --force-with-lease

7.2. コンフリクト(競合)の解決

マージやリベース時に同じ箇所が変更されているとコンフリクトが発生します。

コンフリクトが発生する状況:

  • 同じファイルの同じ行を異なる内容に変更
  • 一方で削除、もう一方で変更
  • ファイルの移動や名前変更の競合

解決手順:

# マージ中にコンフリクト発生
git merge feature-branch
# CONFLICT (content): Merge conflict in file.txt

# 1. コンフリクトしているファイルを確認
git status

# 2. エディタでファイルを開くと以下のような表示
# <<<<<<< HEAD
# 自分の変更(現在のブランチ)
# =======
# 相手の変更(マージしようとしているブランチ)
# >>>>>>> feature-branch

# 3. 正しい内容に編集(マーカーを削除)

# 4. 解決したファイルをステージング
git add file.txt

# 5. マージを完了
git commit

# マージを中止する場合
git merge --abort

コンフリクト解決のコツ:

  • 両方の変更内容を理解してから判断します
  • 必要であれば両方の変更を組み合わせます
  • 動作確認を忘れずに行います
  • 不明な点は変更者に確認します

7.3. コミットの取り消し

# 直前のコミットを取り消す(変更は残す)
git reset --soft HEAD~1

# 直前のコミットとステージングを取り消す
git reset --mixed HEAD~1

# 直前のコミットを完全に取り消す(危険)
git reset --hard HEAD~1

# プッシュ済みのコミットを取り消す(安全)
git revert コミットID

reset と revert の違い:

  • reset - コミット履歴を削除する。プッシュ前のみ使用
  • revert - 取り消しのための新しいコミットを作成。プッシュ後も安全

7.4. 間違えたブランチにコミットした場合

# 正しいブランチに移動
git checkout 正しいブランチ

# 間違えたブランチの最新コミットを取り込む
git cherry-pick 間違えたブランチ

# 間違えたブランチに戻る
git checkout 間違えたブランチ

# 間違えたコミットを削除
git reset --hard HEAD~1

7.5. Detached HEAD状態から復帰

特定のコミットをチェックアウトするとDetached HEAD状態になります。

# 新しいブランチを作成して保存
git checkout -b 新しいブランチ名

# または元のブランチに戻る
git checkout main

7.6. .gitignoreが効かない場合

すでに追跡されているファイルは.gitignoreを追加しても無視されません。

# キャッシュをクリア
git rm -r --cached .
git add .
git commit -m ".gitignoreを適用"

7.7. 大きなファイルのプッシュエラー

# Git LFS(Large File Storage)を使用
git lfs install
git lfs track "*.psd"
git lfs track "*.zip"
git add .gitattributes
git add file.psd
git commit -m "LFSでファイルを追加"
git push

8. チーム開発での運用

8.1. ブランチ戦略

8.1.1. Git Flow

大規模プロジェクト向けの戦略です。

ブランチの役割:

  • main - 本番環境のコード
  • develop - 開発の主軸
  • feature/ - 機能開発
  • release/ - リリース準備
  • hotfix/ - 緊急修正

8.1.2. GitHub Flow

小規模プロジェクト向けのシンプルな戦略です。

ルール:

  1. mainブランチは常にデプロイ可能
  2. 機能開発はfeatureブランチで
  3. プルリクエストでレビュー
  4. マージ後は即座にデプロイ

8.1.3. GitLab Flow

環境ごとにブランチを持つ戦略です。

8.2. コミットメッセージの書き方

分かりやすいコミットメッセージを書くことが重要です。

推奨フォーマット:

種類: 50文字以内の要約

詳細な説明(必要な場合)
- 何を変更したか
- なぜ変更したか
- 関連するissue番号

Refs #123

種類の例:

  • feat: 新機能
  • fix: バグ修正
  • docs: ドキュメント
  • style: コードフォーマット
  • refactor: リファクタリング
  • test: テスト追加
  • chore: ビルド・設定変更

良い例:

feat: ユーザー認証機能を追加

JWTトークンによる認証システムを実装しました。

- パスワードのハッシュ化にbcryptを使用
- トークンの有効期限は24時間
- リフレッシュトークン機能を実装

Refs #123

悪い例:

修正

8.3. マージリクエストのワークフロー

# 1. 最新のmainを取得
git checkout main
git pull

# 2. 機能ブランチを作成
git checkout -b feature/new-feature

# 3. 作業してコミット
git add .
git commit -m "feat: 新機能を追加"

# 4. リモートにプッシュ
git push -u origin feature/new-feature

# 5. GitLabでマージリクエストを作成

# 6. レビュー後、修正があればコミット追加
git add .
git commit -m "fix: レビュー指摘事項を修正"
git push

# 7. マージ後、ローカルブランチを削除
git checkout main
git pull
git branch -d feature/new-feature

8.4. コードレビューのポイント

レビュアー側:

  • コードの意図を理解する
  • 建設的なフィードバックを提供
  • スタイルよりもロジックに注目
  • 質問形式でコメント

作成者側:

  • 小さな単位でプルリクエストを作成
  • 説明を丁寧に書く
  • テストを含める
  • レビューコメントに真摯に対応

9. 他のバージョン管理システムとの違い

9.1. Subversionとの比較

項目 Git Subversion
アーキテクチャ 分散型 集中型
リポジトリの場所 ローカルとリモート サーバー
オフライン作業 可能 制限あり
ブランチ 軽量・高速 ディレクトリコピー
リビジョン番号 SHA-1ハッシュ 連番
コミット ローカル サーバーへ即反映

主なコマンドの対応:

操作 Git Subversion
チェックアウト git clone svn checkout
更新 git pull svn update
コミット git commit + git push svn commit
変更確認 git status svn status
差分表示 git diff svn diff
履歴表示 git log svn log
ブランチ作成 git branch svn copy
ブランチ切替 git checkout svn switch

9.2. Perforceとの比較

項目 Git Perforce
大規模バイナリ Git LFS必要 標準対応
ファイルロック なし あり
部分チェックアウト sparse-checkout 標準対応
パフォーマンス 小〜中規模で高速 大規模で高速

主なコマンドの対応:

操作 Git Perforce
ワークスペース作成 git clone p4 client
最新取得 git pull p4 sync
編集開始 - p4 edit
変更送信 git commit + git push p4 submit
変更確認 git status p4 opened

9.3. CVSとの比較

項目 Git CVS
アトミックコミット あり なし
ディレクトリバージョニング あり なし
リネーム追跡 あり なし
ブランチ・タグ 軽量 重い
マージ 3-wayマージ ファイル単位

主なコマンドの対応:

操作 Git CVS
チェックアウト git clone cvs checkout
更新 git pull cvs update
コミット git commit + git push cvs commit
追加 git add cvs add
削除 git rm cvs remove
タグ付け git tag cvs tag

10. コマンドリファレンス

10.1. 初期設定

git config --global user.name "名前"
git config --global user.email "email@example.com"
git config --global color.ui auto
git config --global init.defaultBranch main
git config --list

10.2. リポジトリ操作

git init                                    # 初期化
git clone URL                               # クローン
git clone URL ディレクトリ名                # 名前指定クローン

10.3. 基本操作

git status                                  # 状態確認
git add ファイル名                          # ステージング
git add .                                   # すべてステージング
git commit -m "メッセージ"                  # コミット
git commit -am "メッセージ"                 # add + commit
git commit --amend                          # 直前のコミット修正
git diff                                    # 差分表示
git diff --staged                           # ステージング差分
git log                                     # 履歴表示
git log --oneline                           # 簡潔な履歴
git log --graph --all                       # グラフ表示
git show コミットID                         # コミット詳細

10.4. ブランチ操作

git branch                                  # ブランチ一覧
git branch ブランチ名                       # ブランチ作成
git checkout ブランチ名                     # ブランチ切替
git checkout -b ブランチ名                  # 作成+切替
git switch ブランチ名                       # 切替(新)
git switch -c ブランチ名                    # 作成+切替(新)
git merge ブランチ名                        # マージ
git merge --no-ff ブランチ名                # マージコミット作成
git rebase ブランチ名                       # リベース
git branch -d ブランチ名                    # ブランチ削除
git branch -D ブランチ名                    # 強制削除

10.5. リモート操作

git remote -v                               # リモート一覧
git remote add origin URL                   # リモート追加
git fetch                                   # 取得
git fetch --all                             # すべて取得
git pull                                    # 取得+マージ
git pull --rebase                           # 取得+リベース
git push                                    # 送信
git push -u origin ブランチ名               # 初回送信
git push --tags                             # タグ送信
git push origin --delete ブランチ名         # リモートブランチ削除

10.6. 変更の取り消し

git restore ファイル名                      # 変更破棄
git restore --staged ファイル名             # ステージング解除
git reset HEAD ファイル名                   # ステージング解除(旧)
git reset --soft HEAD~1                     # コミット取消(変更保持)
git reset --mixed HEAD~1                    # コミット+ステージング取消
git reset --hard HEAD~1                     # 完全取消
git revert コミットID                       # 打ち消しコミット作成
git clean -fd                               # 未追跡ファイル削除

10.7. Stash操作

git stash                                   # 退避
git stash save "メッセージ"                 # メッセージ付き退避
git stash list                              # 退避リスト
git stash show                              # 退避内容確認
git stash pop                               # 復元+削除
git stash apply                             # 復元(削除しない)
git stash drop                              # 削除
git stash clear                             # 全削除

10.8. タグ操作

git tag                                     # タグ一覧
git tag タグ名                              # タグ作成
git tag -a タグ名 -m "メッセージ"           # 注釈付きタグ
git tag -d タグ名                           # タグ削除
git push --tags                             # タグ送信

10.9. その他の便利なコマンド

git cherry-pick コミットID                  # 特定コミット適用
git blame ファイル名                        # 行ごとの変更者
git reflog                                  # 操作履歴
git bisect start                            # バイナリサーチ開始
git archive --format=zip HEAD > file.zip   # アーカイブ作成

10.10. 危険度別コマンド

10.10.1. 安全(読み取りのみ)

git status
git log
git diff
git show
git branch

10.10.2. 注意(ローカルのみ影響)

git add
git commit
git checkout
git merge
git stash

10.10.3. 危険(履歴を変更)

git reset --hard        # ローカル変更を削除
git push --force        # リモート履歴を上書き
git rebase             # 履歴を書き換え
git filter-branch      # 履歴全体を書き換え
git clean -fd          # 未追跡ファイル削除

11. .gitignoreの設定

プロジェクトで管理不要なファイルを指定します。

# OS
.DS_Store
Thumbs.db
desktop.ini

# エディタ
.vscode/
.idea/
*.swp
*.swo
*~

# 依存関係
node_modules/
venv/
env/
__pycache__/
*.pyc

# ビルド成果物
dist/
build/
*.exe
*.dll
*.so
*.dylib

# ログ
*.log
logs/
npm-debug.log*

# 環境設定(重要:機密情報を含むため)
.env
.env.local
.env.*.local
config.local.js
secrets.yml

# 一時ファイル
tmp/
temp/
*.tmp

12. トラブルシューティングフローチャート


13. まとめ

13.1. Gitの基本原則

  1. 小さく頻繁にコミット - 1つの変更は1つのコミットに。バグの特定や変更の追跡が容易になります
  2. 分かりやすいメッセージ - 何を変更したか、なぜ変更したかを記述。未来の自分や同僚のために
  3. ブランチを活用 - 機能ごとにブランチを作成。mainブランチは常に動作する状態に保ちます
  4. プッシュ前に確認 - git status と git log で確認。意図しない変更が含まれていないかチェック
  5. リモートは神聖 - プッシュ済みの履歴は変更しない。チームメンバーへの影響を考慮します

13.2. 作業の基本フロー

# 1. 最新の状態に更新
git checkout main
git pull

# 2. 作業ブランチを作成
git checkout -b feature/機能名

# 3. 作業を進める
# ファイルを編集...

# 4. 変更を確認
git status
git diff

# 5. ステージングしてコミット
git add .
git commit -m "feat: 機能を追加"

# 6. リモートにプッシュ
git push -u origin feature/機能名

# 7. マージリクエストを作成
# GitLabのWeb UIで実施

# 8. レビュー・マージ後、ローカルを更新
git checkout main
git pull
git branch -d feature/機能名

13.3. よく使うコマンドの早見表

目的 コマンド
状態確認 git status
変更内容確認 git diff
履歴確認 git log --oneline
ステージング git add ファイル名
コミット git commit -m "メッセージ"
プッシュ git push
プル git pull
ブランチ作成 git checkout -b ブランチ名
ブランチ切替 git checkout ブランチ名
マージ git merge ブランチ名
変更破棄 git restore ファイル名
コミット取消 git reset --soft HEAD~1
作業退避 git stash
作業復元 git stash pop

13.4. トラブル時の対処

問題 対処方法
プッシュ失敗 git pull --rebase → git push
間違えてコミット git reset --soft HEAD~1
間違えてステージング git restore --staged ファイル名
ファイルの変更を戻す git restore ファイル名
コンフリクト発生 ファイル編集 → git add → git commit
コンフリクト解決を中止 git merge --abort
作業中に別作業が必要 git stash → 作業 → git stash pop
Detached HEAD git checkout -b 新ブランチ名

13.5. 困ったときの鉄則

  1. まず git status を実行 - 現在の状態を把握します
  2. git log で履歴を確認 - 何が起きたのかを理解します
  3. git reflog で操作履歴を確認 - 最悪の場合でも復旧できます
  4. わからなければ git stash - 一旦退避して状況を整理します
  5. 強制コマンドは慎重に - --force や --hard は取り返しがつきません

13.6. 学習のヒント

  • まずローカルで練習 - テストリポジトリで自由に実験できます
  • エラーメッセージを読む - Gitのエラーメッセージは有益な情報を含んでいます
  • コマンドのヘルプを活用 - git help コマンド名 で詳細を確認できます
  • 小さく始める - 基本的な add、commit、push から始めて徐々に高度な機能へ
  • 実際のプロジェクトで使う - 日常的に使うことで自然に身につきます

このドキュメントを実務の参考にしてください。Gitは強力なツールですが、基本を押さえれば確実に使いこなせます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?