ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
エラーの全文
$ git checkout master
fatal: Not a valid object name: 'master'.
$ git log master
fatal: bad revision 'master'
$ git diff master
fatal: ambiguous argument 'master': unknown revision or path not in the working tree.
「master というブランチ(あるいはコミット)が見つからない」というエラーです。原因はだいたい 3 パターン。
原因 1: git init 直後で 1 コミットも無い
mkdir myproj && cd myproj
git init
git status
# On branch master
# No commits yet
git log master
# fatal: your current branch 'master' does not have any commits yet
ブランチ「ポインタ」は HEAD として存在するが、コミットが 0 件なので参照先のオブジェクトが無い状態。何か 1 つコミットすると解決します:
echo "# myproj" > README.md
git add README.md
git commit -m "Initial commit"
git log master # ← 通る
原因 2: デフォルトブランチが main(Git 2.28+)
Git 2.28(2020 年 7 月)以降、init.defaultBranch 設定でデフォルト名を変更可能になりました。GitHub / GitLab / 各種 OS パッケージはデフォルトを main に切り替えています。
git --version
# git version 2.39.0
git init
git status
# On branch main ← master ではない!
# No commits yet
git checkout master
# fatal: Not a valid object name: 'master'.
対処は 3 通り:
# A) main を master にリネーム(ローカル)
git branch -m main master
# B) これから新規 init するときのデフォルトを master へ
git config --global init.defaultBranch master
# C) main をそのまま使い、ドキュメント / CI を更新(推奨)
git config --global init.defaultBranch main
原因 3: GitHub のデフォルトブランチが main / 取り違え
2020 年 10 月から GitHub は新規リポジトリのデフォルトを main に。clone 直後にローカルにあるのは main で master は存在しません。
git clone https://github.com/user/repo.git
cd repo
git branch -a
# * main
# remotes/origin/HEAD -> origin/main
# remotes/origin/main
git checkout master
# fatal: Not a valid object name: 'master'.
# 正しくは
git checkout main
master から main へ完全移行する
# 1) ローカル master を main にリネーム
git branch -m master main
# 2) リモートに main を push
git push -u origin main
# 3) GitHub のデフォルトブランチを main に変更
# (Settings → Branches → Default branch)
# 4) リモート master を削除
git push origin --delete master
# 5) ローカルのリモートトラッキングを更新
git fetch --prune
git remote set-head origin main
その逆: main を master にしたい
# ローカル
git branch -m main master
# リモート
git push -u origin master
git push origin --delete main
# デフォルト変更(GitHub UI で)
# 新規 init のデフォルトを master に
git config --global init.defaultBranch master
HEAD だけ master に向けたい(コミット無し時)
git init 直後でまだコミットが無いまま master という名前にしたい:
git init
git symbolic-ref HEAD refs/heads/master
git status
# On branch master
# No commits yet
echo init > a.txt
git add a.txt
git commit -m "Init"
git log master # OK
関連する類似エラー
| メッセージ | 意味 / 対処 |
|---|---|
your current branch 'master' does not have any commits yet | git init 直後で 0 コミット。何か 1 つコミット |
error: pathspec 'master' did not match any file(s) | checkout 時、master ブランチもファイルも無い。git branch -a 確認 |
error: src refspec master does not match any | push 対象の master が無い。main を push、または rename |
fatal: ambiguous argument 'main': unknown revision | 逆向きで main が無い。git branch -a |
予防策: 設定を統一する
# 全プロジェクトで main を使う(推奨)
git config --global init.defaultBranch main
# 現在の設定確認
git config --global --get init.defaultBranch
# main
# CI / スクリプトでハードコードしている master を main に書き換える
# .github/workflows/*.yml の branches: [master] → [main]
# .gitlab-ci.yml only: [master] → [main]
# Docker タグや README のバッジリンクも要更新
FAQ
Q: チーム内で master と main が混在している
A: 一括移行スクリプトを用意し、リモートでリネーム → 各自 git fetch --prune; git branch -m master main; git branch -u origin/main を実行。
Q: GitHub Actions が master トリガで動かなくなった
A: .github/workflows/*.yml の on.push.branches を main に変更。
Q: 既存タグ / リリースは大丈夫?
A: タグはコミット SHA を直接指すのでブランチ名変更の影響なし。リリースは紐づくタグごとそのまま残ります。
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページはありません
- fatal: remote origin already exists.
- fatal: '~' does not appear to be a git repository
- Cannot rebase: You have unstaged changes. Please commit or stash them.
- remote: error: denying non-fast-forward refs/heads/master (you should pull first)
- error: pathspec ... did not match any file(s) known to git.
- The following untracked working tree files would be overwritten by checkout
- fatal: Not a valid object name: 'master'.
- Unlink of file 'ファイル名' failed. Should I try again? (y/n)
- Another git process seems to be running in this repository
- error: Your local changes to the following files would be overwritten by checkout:
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 Spring Frameworkのアノテーション一覧
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- PHPでのファイルアップロード方法|multipart/form-dataと$_FILES 2026-08-07 17:15:57
- PHP $_SERVERとは|DOCUMENT_ROOT・PHP_SELFなど主な要素 2026-08-07 17:15:57
- Scratchのアカウントの作り方|メールアドレスとユーザー名の登録手順 2026-08-07 17:15:57
- djangoにおけるMVCアプリケーション実装例 2026-08-07 17:15:57
- Bluetoothとは|仕組み・BLEとClassicの違い・用途 2026-08-07 17:15:57
- Spring Bootのテスト入門|@SpringBootTestとJUnitでの単体・結合テスト 2026-08-07 17:15:57
- Java とは?言語仕様・JVM・主要フレームワーク一覧 2026-08-07 17:15:56
- インストール方法(Windows版) 2026-08-07 17:15:56
- APIキー取得方法 2026-08-07 17:15:56
- 【PHPフレームワーク】Laravelの使い方 2026-08-07 17:15:56
- Scratch 作品の公開方法 2026-08-07 17:15:56
- Google OAuth 2.0 認証の実装方法 2026-08-07 17:15:56
- データベースとは?RDB / NoSQL / SQL の基礎 2026-08-07 17:15:56
- インストール(eclipseプラグイン) 2026-08-07 17:15:56
- Spring Frameworkの使い方 2026-08-07 17:15:56
コメントを削除してもよろしいでしょうか?