HEADLINE

HEADLINE


【Git】git branch -a に残る削除済みリモートブランチの正体と解消方法

git branch -a に残る削除済みリモートブランチ

Git を使って開発していると、
GitHub 上では消えているはずのブランチが、ローカルでは残って見える
という現象に遭遇することがあります。

error: unable to delete 'feat/base': remote ref does not exist
error: failed to push some refs

発生した状況

以下のような流れで問題が起きました。

  1. git branch -a を実行
  2. remotes/origin/feat/base が表示される
  3. GitHub の Web サイトを見ると、そのブランチはすでに削除済み
  4. 削除しようとして以下を実行
git push origin :feat/base

エラーが出る

結論:原因は「ローカルのリモート追跡情報が古い」

この問題の原因はとてもシンプルです。

GitHub 上の状態と、ローカルに保存されている origin/* 情報がズレている

git branch -a で表示される
remotes/origin/*実体ではなくキャッシュ情報 です。

つまり、

  • GitHub:すでに削除済み
  • ローカル:まだ「あることになっている」

という状態になっていました。


正しい解決方法(これだけでOK)

git fetch --prune を実行する

git fetch --prune

このコマンドを実行すると、

  • リモート(GitHub)に存在しないブランチを
  • ローカルの remotes/origin/* から自動削除

してくれます。

実行後に確認:

git branch -a

remotes/origin/feat/base が消えていれば解消完了です


なぜ git push origin :branch は失敗したのか?

git push origin :feat/base

このコマンドは、

「リモートに存在する feat/base を削除せよ」

という意味です。

しかし今回は、

  • すでに GitHub 側にブランチが存在しない
  • 削除対象が見つからない

ため、

remote ref does not exist

というエラーになりました。

操作自体は間違っていません。
単に「もう消えていた」だけです。


今後ズレを防ぐおすすめ設定

毎回 --prune を付けるのが面倒な場合は、
以下を設定しておくと便利です。

git config --global fetch.prune true

これにより、

  • git fetch
  • git pull

を実行するたびに、
不要なリモート追跡ブランチを自動で削除 してくれます。


よくある勘違いポイント

  • git branch -a に出ている = GitHub に存在する
  • ⭕ 実際は「ローカルに残っている情報」なだけ

Git は「安全側」に倒れる設計のため、
勝手にブランチを消さない のが仕様です。


まとめ

  • GitHub で消したブランチが git branch -a に残ることがある
  • 原因はローカルのリモート追跡情報のズレ
  • 解決方法はこれだけ👇
git fetch --prune
  • 定期的にズレを防ぐなら fetch.prune = true を設定

URLエンコード・Base64・Quoted-Printable

URLエンコード・Base64・Quoted-Printable イメージ

Web開発やAPI連携、メール送信をしていると
URLエンコードBase64Quoted-Printable
という言葉を目にすることがあります。

一見似ているこれらの「エンコード方式」ですが、
目的も使いどころもまったく異なります。

この記事では、それぞれの

  • 仕組み(概要)
  • 文字列の変換例
  • 特徴と用途の違い

をわかりやすく解説します

URLエンコード(Percent Encoding)とは

URLエンコードの概要

URLエンコードは、
URLで使用できない文字を安全な形式に変換する仕組みです。

URLでは日本語やスペース、記号の多くが使えないため、
それらを %XX(16進数)形式に変換します。


URLエンコードの例

# 元の文字列
謹賀新年
# URLエンコード後(UTF-8)
%E8%AC%B9%E8%B3%80%E6%96%B0%E5%B9%B4
URLエンコード スクショ

URLエンコードの特徴

  • % + 16進数で表現
  • UTF-8のバイト列を1バイトずつ変換
  • URLやクエリパラメータで必須
  • 人間には読みにくいがURL安全

主な使用場面

  • クエリパラメータ
  • フォーム送信(GET)
  • 検索URL

Base64

Base64は、
バイナリデータを英数字のみの文字列に変換する方式です。

画像・音声・ファイルなどを
テキストしか扱えない環境で送信するために使われます。


Base64の例

# 元の文字列
謹賀新年
# Base64エンコード後
6Ky56LOA5paw5bm0
Base64 スクショ

Base64の特徴

  • 使用文字:英数字 + + / =
  • データサイズが約1.33倍に増える
  • URLではそのまま使えない
  • 汎用性が非常に高い

主な使用場面

  • Data URL(画像埋め込み)
  • API通信
  • Basic認証

Quoted-Printableとは

Quoted-Printableは、
主にメール本文向けのエンコード方式です。

ASCII文字はそのまま残し、
日本語などの非ASCII文字だけを =XX 形式で変換します。

Quoted-Printableの例

# 元の文字列
謹賀新年
# Quoted-Printable後 (UTF-8)
=E8=AC=B9=E8=B3=80=E6=96=B0=E5=B9=B4 
Quoted-Printable スクショ

Quoted-Printableの特徴

  • ASCII文字が可読なまま
  • =XX 形式
  • メールの文字化け防止に有効
  • 76文字改行制限あり

主な使用場面

  • メール本文(text/plain / text/html)
  • MIMEエンコード
  • メールサーバー間通信

項目 URLエンコード Base64 Quoted-Printable
主用途 URL バイナリ転送 メール
表記形式 %XX 英数字 + 記号 =XX
可読性
サイズ増加 小〜中
URL安全 ×

Big Five(五因子モデル)診断 | 5つの観点から“傾向”とは

Big Five(五因子モデル)

Big Five(五因子モデル)診断とは?

Big Five(五因子モデル)は、心理学で広く使われている性格特性モデルです。
人の性格を「良い・悪い」で判断するのではなく、5つの観点から“傾向”として捉えることが特徴です。

  • 外向性(Extraversion)
  • 協調性(Agreeableness)
  • 誠実性(Conscientiousness)
  • 神経症傾向(Neuroticism)
  • 開放性(Openness)

この診断では、それぞれの因子を0〜100のスコアで可視化し、あなたの性格のバランスを直感的に確認できます。

ビッグファイブ

この診断でわかること

  • 自分がどんな場面でストレスを感じやすいか
  • 人付き合いにおける距離感や関わり方の傾向
  • 仕事・学習で自分に合いやすい進め方

結果はレーダーチャートとコメントで表示され、
スマホでも見やすく、直感的に理解できる設計になっています。

結果は画像でシェア可能

診断結果は画像として生成でき、X(旧Twitter)などのSNSへそのまま共有できます。
PWA対応のため、スマホではアプリ感覚で利用できます。

ご利用にあたって

本診断は自己理解を深めるための簡易チェックです。
医療的・専門的な診断を目的としたものではありません。

直感でサクッと答えることで、今のあなたの傾向がより分かりやすく表れます。

ビッグファイブ