これは、Ubuntu Online、Fedora Online、Windowsオンラインエミュレータ、MAC OSオンラインエミュレータなど、複数の無料オンラインワークステーションのいずれかを使用して、OnWorks無料ホスティングプロバイダーで実行できるコマンドgit-check-ref-formatです。
プログラム:
NAME
git-check-ref-format - 参照名が適切に構成されていることを確認します
SYNOPSIS
git チェック参照フォーマット [ - ノーマライズ]
[--[no-]allow-onelevel] [--refspec-pattern]
git チェック参照フォーマット - 支店
DESCRIPTION
指定された 参照名 受け入れられるかどうかは判定され、受け入れられない場合はゼロ以外のステータスで終了します。
Gitでは、ブランチとタグを指定するために参照が使用されます。ブランチヘッドは
refs/heads階層に格納され、タグはrefs/tags階層に格納される。
名前空間(通常は$GIT_DIR/refs/headsと$GIT_DIR/refs/tagsディレクトリ、または
参照が git gc によってパックされている場合、ファイル $GIT_DIR/packed-refs 内のエントリ。
Git では、参照の命名方法について次のルールが適用されます。
1. 階層的(ディレクトリ)なグループ化のためにスラッシュ/を含めることができますが、スラッシュで区切られた
コンポーネントはドット . で始まるか、シーケンス .lock で終わることができます。
2. 少なくともXNUMXつは含まれている必要があります /. これにより、次のようなカテゴリの存在が強制されます。
heads/、tags/ などですが、実際の名前は制限されません。--allow-onelevel が
オプションが使用される場合、このルールは免除されます。
3. どこにも XNUMX つの連続したドットを持つことはできません。
4. ASCII制御文字(つまり、値がXNUMX進数より小さいバイト)を含めることはできません。
\040、または \177 (DEL)、スペース、チルダ ~、キャレット ^、またはコロン : を任意の場所に使用できます。
5. 疑問符「?」、アスタリスク「*」、開き括弧「[」はどこにも使用できません。
このルールの例外については、以下の --refspec-pattern オプションを参照してください。
6. スラッシュで始まったり終わったり、複数の連続したスラッシュを含むことはできません(
このルールの例外については、以下の --normalize オプションを参照してください)
7. ドットで終わることはできません。
8. シーケンス @{ を含めることはできません。
9. 単一の文字 @ は使用できません。
10. \ を含めることはできません。
これらのルールにより、シェルスクリプトベースのツールで参照名やパス名を簡単に解析できるようになります。
参照名が引用符なしで(誤って)使用された場合にシェルによって展開され、また回避されます
特定の参照名表現における曖昧さ( ギトレヴィジョンズ(7)):
1. 二重ドット..はref1..ref2のようによく使われますが、文脈によってはこの表記法が
^ref1 ref2 を意味します (つまり、ref1 と ref2 には存在しません)。
2. チルダ ~ とキャレット ^ は接尾辞を導入するために使用されます n番目の 親 はがす タマネギ
操作。
3. コロン:はsrcref:dstrefのように使用され、「srcrefの値を使用して、それを
フェッチおよびプッシュ操作で「dstref」を使用します。また、特定のオブジェクトを選択するためにも使用できます。
など git 猫ファイル: 「git cat-file blob v1.3.3:refs.c」。
4. at-open-brace @{ は、reflog エントリにアクセスするための表記として使用されます。
--branch オプションを使用すると、「前のブランチ構文」@{-n}が拡張されます。例えば、
@{-1}は、最後にいたブランチを参照する方法です。このオプションは、
磁器は、ブランチ名が期待される場所であればどこでもこの構文を受け入れるため、
ブランチ名を入力しました。
OPTIONS
--[no-]allow-onelevel
1レベルのrefnames(つまり、
複数の / で区切られたコンポーネント)。デフォルトは --no-allow-onelevel です。
--refspec-パターン
解釈するrefspecの参照名パターンとして(リモート
リポジトリ)。このオプションを有効にすると、 1つの*を含めることができます
refspec 内 (例: foo/bar*/baz または foo/bar*baz/ であり、foo/bar*/baz* ではない)。
- ノーマライズ
ノーマライズ 参照名 先頭のスラッシュ(/)文字を削除し、
名前構成要素間の隣接するスラッシュを1つのスラッシュにまとめます。正規化された
refname が有効な場合は、それを標準出力に出力し、ステータス 0 で終了します。
(--print は --normalize の非推奨の表記方法です。)
例
· 前のブランチの名前を出力します:
$ git check-ref-format --branch @{-1}
· 新しいブランチに使用する参照名を決定します。
$ ref=$(git check-ref-format --normalize "refs/heads/$newbranch") ||
die "ブランチ名として '$newbranch' は使用しません。"
GIT
の一部 git(1)スイート
onworks.net サービスを使用して git-check-ref-format をオンラインで使用する