ブランチ名と参照名を使い分ける
モードを変えても入力は保持されます。mainとrefs/heads/mainを試すと違いを確認できます。単一階層の許可は参照名のスラッシュ要件だけを外します。
- 末尾のドットや連続したスラッシュが許可されるわけではありません。
Git & Version Control
名前またはハッシュを一つ入力し、構文エラーと命名上の助言を区別して確認します。
名前またはハッシュを入力してください。
ブラウザー内で検証します。入力の送信やリポジトリへのアクセスは行いません。
一つの値、最大4,096個のUTF-16コード単位。診断は50件ずつ表示します。
名前またはハッシュを入力してください。
Gitブランチ名チェックは、ブランチ作成時のエラーだけでは理由が分からない場合に役立ちます。貼り付けた空白や、パスの区切りに接したドットは、見た目だけでは見落としやすい箇所です。
最初に入力の用途を選んでください。mainはブランチ名として有効でも、通常の参照名としては区切りが足りません。数字だけの文字列も、選択したハッシュ方式によって完全なIDか短縮形かが変わります。
Gitブランチ名チェックでは入力を勝手に整形しません。問題のある行と列を示し、候補名は別の値として表示します。大文字や日本語に込めた意味を失う変更が、知らないうちに適用されることはありません。
リリースノートに載せる短縮ハッシュは、既存の文字列の先頭部分です。短くしてもオブジェクトを調べたことにはなりません。完全形と短縮形を区別し、不足している文字を推測して補うことはありません。
モードを変えても入力は保持されます。mainとrefs/heads/mainを試すと違いを確認できます。単一階層の許可は参照名のスラッシュ要件だけを外します。
SHA-1の完全形は40桁、SHA-256は64桁です。短縮形を許可すると4桁以上、完全形より短い値を受け付けます。40桁の値もSHA-256では短縮形です。
自動チェックは編集から350ミリ秒待って実行されます。無効にすると実行ボタンが現れ、Ctrl/Cmd + Enterでも検証できます。診断を押すと該当位置へ移動します。
HEADと先頭のハイフンはブランチ固有の制約です。参照名では単一階層を明示的に許可できます。git check-ref-formatの字面の規則を使い、過去のチェックアウト先へ展開しません。
ASCII制御文字、空白、禁止記号、..や@{の並びを検出します。各パス要素の先頭ドットと.lock終端も確認します。行と列は1から始まり、列とJSON内のオフセットはUTF-16コード単位で数えます。
ASCII文字を小文字化し、英数字と._-/以外をハイフンへ置き換えます。禁止された構造を整え、再検証した候補だけを表示します。日本語はローマ字化せず、残せる英数字がなければbranchを使います。
方式、桁数、完全形か短縮形かをレポートに記録します。大文字の16進文字も保持されます。先頭部分の表示はファイルのハッシュ計算ではなく、SHA-1からSHA-256への変換でもありません。
字面の名前にはブランチモードを使います。手元のシェルならgit check-ref-format --branchに適切に引用した名前を渡して確認できます。mainやmasterは一般的に使われますが、保護される場合があるだけで構文上の禁止名ではありません。
ASCII制御文字、空白、~、^、:、?、*、[、バックスラッシュなどは使えません。連続したドットや@{も禁止です。一方で閉じ角括弧の]や$を一律に禁止とは判定しません。シェルでは別途引用が必要な場合があります。
使えますが場所に条件があります。パス要素の先頭、名前全体の末尾、連続する二つのドットは無効です。a./bは有効ですがa/b.は無効です。.lockで終わる要素も拒否され、.LOCKとは区別されます。
Gitはリポジトリ内で一意になる接頭辞を選びます。指定できる最小長は4で、既定値はcore.abbrevの設定に依存します。このページの7文字は表示用の初期値であり、他のオブジェクトと衝突しない長さを保証しません。
対象リポジトリへの問い合わせが必要です。git cat-file -eなどでオブジェクトの存在を確かめられますが、コミット型かどうかも必要に応じて確認してください。桁数が正しい16進文字列というだけでは、実在するコミットとは言えません。
解決しませんでしたか?