これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド git-push です。
プログラム:
NAME
git-push - 関連オブジェクトとともにリモート参照を更新します
SYNOPSIS
git プッシュ [--すべて | --ミラー | --tags] [--follow-tags] [--atomic] [-n | --dry-run] [--receive-pack= ]
[--リポ= ] [-f | --force] [--prune] [-v | --冗長]
[-u | --セットアップストリーム]
[-[no-] signed | --sign =(true | false | if-asked)]
[--リース付き強制[= [: ]]]
[--検証なし] [ [ ...]]
DESCRIPTION
ローカル参照を使用してリモート参照を更新し、同時に、
与えられた参照。
リポジトリにプッシュするたびに、リポジトリで興味深いことが起こるようにすることができます。
セットアップ フック そこには。 ドキュメントを参照してください git 受信パックとします。
コマンドラインでプッシュする場所が指定されていない場合、 口論、
現在のブランチのbranch.*.remote設定を参照して、どこに保存するかを決定します。
押す。 構成が欠落している場合は、デフォルトで次のようになります。 起源.
コマンドラインでプッシュする対象が指定されていない場合... 引数または --all、
--mirror、--tags オプション、コマンドはデフォルトを検索します。 相談することで
Remote.*.push 設定が見つからない場合は、push.default 設定が適用されます。
何をプッシュするかを決定します (参照 git-config(1) Push.default の意味)。
コマンドラインでも設定でもプッシュする内容が指定されていない場合、デフォルトの
動作が使用されます。これは、push.default の単純な値に対応します: 現在の
ブランチは対応する上流ブランチにプッシュされますが、安全対策として、プッシュは
上流のブランチがローカルのブランチと同じ名前を持たない場合、処理は中止されます。
OPTIONS
プッシュ操作の宛先である「リモート」リポジトリ。 このパラメータは次のとおりです。
URL (以下の「GIT URL」セクションを参照) またはリモートの名前 (「セクション」を参照)
以下にリモートがあります)。
...
どの宛先参照をどのソースオブジェクトで更新するかを指定します。 の形式
パラメータはオプションのプラス + で、その後にソース オブジェクトが続きます。 、
コロン : が続き、その後に宛先参照が続きます。
の多くの場合、これはプッシュしたいブランチの名前ですが、任意の名前にすることができます。
master~1 や HEAD などの任意の「SHA-4 式」 (「 ギトレヴィジョンズ(7))。
のリモート側のどの参照がこのプッシュで更新されるかを示します。 任意
ここでは式を使用できません。実際の参照名を指定する必要があります。 git プッシュの場合
[ ]何もせずに引数は、次の場所で参照を更新するように設定されています。
との目的地リモコン付き。 .push 構成変数:
部分は省略できます。そのようなプッシュにより、次の参照が更新されます。 通常は何もせずに更新します
どれでもコマンドラインで。 それ以外の場合、次が欠落しています: 同じものを更新することを意味します
として参照してください。
によって参照されるオブジェクトを更新するために使用されますリモコンのリファレンス
側。 デフォルトでは、これは次の場合にのみ許可されますタグではありません (注釈が付けられているか、
軽量)、早送りできる場合のみ。 オプションをつけることで、
先頭に + を付けると、Git に更新するように指示できます。 によって許可されていない場合でも参照
デフォルト (早送りではないなど) これは、 マージを試みるの中へ
。 詳細については、以下の例を参照してください。
鬼ごっこrefs/tags/ と同じ意味です:refs/タグ/ 。
空を押すを削除できますリモートリポジトリからの参照。
特別な refspec : (または、非早送り更新を許可する場合は +:) は、Git にプッシュを指示します。
「一致する」ブランチ: ローカル側、リモート側に存在するすべてのブランチに対して
同じ名前のブランチがリモート側にすでに存在する場合は更新されます。
- すべて
すべてのブランチ (つまり、refs/heads/ の下の ref) をプッシュします。 他のものと一緒に使用することはできません。
- プルーン
ローカルに対応するブランチを持たないリモート ブランチを削除します。 たとえばリモコン
同じ名前のローカル ブランチが存在しない場合、ブランチ tmp は削除されます。
もっと。 これは refspec も考慮します (例: git Push --prune Remote)
refs/heads/*:refs/tmp/* は、次の場合にリモート refs/tmp/foo が確実に削除されるようにします。
refs/heads/foo は存在しません。
- 鏡
プッシュする各 ref に名前を付ける代わりに、refs/ の下にあるすべての ref (これは
refs/heads/、refs/remotes/、および refs/tags/ を含みますがこれらに限定されません)ミラーリングされます
リモートリポジトリに。 新しく作成されたローカル参照はリモートエンドにプッシュされます。
ローカルで更新された参照はリモート エンドで強制的に更新され、削除された参照は
リモートエンドから削除されました。 これは、構成オプションの場合のデフォルトです。
リモート。 .ミラーが設定されています。
-n、--ドライラン
実際に更新を送信する以外はすべて行います。
- 磁器
機械可読な出力を生成します。 各参照の出力ステータス行は次のようになります。
タブで区切られ、stderr ではなく stdout に送信されます。 の完全な記号名
参照が与えられます。
- 消去
リストされたすべての参照はリモート リポジトリから削除されます。 これは接頭辞と同じです
すべての参照にはコロンが付きます。
-タグ
に明示的にリストされている refspec に加えて、refs/tags の下にあるすべての refs がプッシュされます。
コマンドライン。
--フォロータグ
このオプションなしでプッシュされるすべての参照をプッシュし、注釈付きの参照もプッシュします
リモートから欠落しているが、コミットっぽいものを指している refs/tags 内のタグ
プッシュされている参照から到達可能です。 これは次のように指定することもできます
構成変数 push.followタグ。 詳細については、を参照してください。 push.followタグ in
git-configとします。
-[no-] signed、-sign =(true | false | if-asked)
GPG-プッシュリクエストに署名して、受信側の参照を更新し、
フックによってチェックされ、および/またはログに記録されます。 falseまたは--no-signedの場合、署名は行われません
試みた。 trueまたは--signedの場合、サーバーがサポートしていないとプッシュは失敗します
署名されたプッシュ。 if-askedに設定されている場合、サーバーが署名済みをサポートしている場合にのみ署名します
プッシュします。 gpg --signの実際の呼び出しが失敗した場合も、プッシュは失敗します。 見る ギット-
レシーブパック(1)受信側の詳細について。
--[no-]アトミック
可能な場合は、リモート側でアトミック トランザクションを使用します。 すべての参照は次のいずれかです
更新されるか、エラーが発生した場合、参照は更新されません。 サーバーがアトミックをサポートしていない場合
プッシュするとプッシュは失敗します。
--受信パック= 、 --exec=
への道 git 受信パック リモートエンドのプログラム。 プッシュするときに役立つことがあります
ssh経由でリモートリポジトリに移動し、上のディレクトリにプログラムがありません
デフォルトの$ PATH。
--[no-]リース付き強制、-リース付き強制= 、
--force-with-lease= :
通常、「git Push」は、その祖先ではないリモート参照の更新を拒否します。
ローカル参照はそれを上書きするために使用されます。
リモート参照の現在の値が次の場合、このオプションはこの制限をオーバーライドします。
期待値。 それ以外の場合、「git Push」は失敗します。
すでに公開したものをリベースする必要があると想像してください。 あなたはしなければならない
元の履歴を置き換えるために「早送りする必要がある」ルールをバイパスします。
リベースされた履歴とともに公開されました。 他の人があなたのオリジナルの上に構築した場合
リベース中に履歴を参照すると、リモートのブランチの先端が次のように進む可能性があります。
彼女がコミットし、盲目的に --force でプッシュすると、彼女の作業は失われます。
このオプションを使用すると、更新しようとしている履歴があなたが期待しているものであると言うことができます。
リベースして置き換えたい。 リモート参照がまだコミットを指している場合は、
指定されていれば、他の人がその参照に対して何もしていないと確信できます。 まるで
明示的にロックせずに参照を「リース」し、リモート参照は
「リース」がまだ有効な場合にのみ更新されます。
詳細を指定せずに --force-with-lease のみを指定すると、すべてのリモート参照が保護されます。
現在の値が
私たちが彼らのために用意したリモート追跡ブランチ。
--force-with-lease= 、期待値を指定せずに、
名前付き ref (単独) を更新する場合は、現在の値を次のようにする必要があります。
これは、リモート追跡ブランチと同じです。
--force-with-lease= : 指定されている場合、名前付き参照を (単独で) 保護します。
現在の値が指定された値と同じであることを要求することにより、更新されます。
価値(これは、リモート追跡ブランチとは異なることが許可されます)
refname に持っているか、そのようなリモート追跡ブランチを持つ必要すらありません
このフォームが使用される場合)。
--force-with-lease= 以外のすべての形式に注意してください。 : それは指定します
ref の期待される現在の値を明示的に示すのはまだ実験段階であり、
この機能の経験を積むにつれてセマンティクスが変わる可能性があります。
「--no-force-with-lease」は、コマンド上の以前のすべての --force-with-lease をキャンセルします。
ライン。
-f、-force
通常、コマンドは、の祖先ではないリモート参照の更新を拒否します。
ローカル参照はそれを上書きするために使用されます。 また、 --force-with-lease オプションを使用すると、
コマンドは、現在の値が実際の値と一致しないリモート参照の更新を拒否します。
期待した。
このフラグはこれらのチェックを無効にし、リモート リポジトリでコミットが失われる可能性があります。
注意して使用してください。
--force はプッシュされるすべての参照に適用されるため、 --force を使用することに注意してください。
Push.default は、一致するか、または設定された複数のプッシュ宛先に設定されます。
Remote.*.push は、現在のブランチ以外の参照 (ローカル参照を含む) を上書きする可能性があります。
厳密にリモートの対応者の背後にあります)。 XNUMX つだけを強制的にプッシュするには
ブランチでは、refspec の前に + を使用してプッシュします (例: git Pushorigin +master を強制するには
master ブランチへのプッシュ)。 を参照してください。 ...詳細については上記のセクションをご覧ください。
--repo=
このオプションは、 口論。 両方が指定された場合、
コマンドライン引数が優先されます。
-u、--set-upstream
最新のブランチ、または正常にプッシュされたブランチごとに、上流 (追跡) を追加します。
引数なしで使用される参照 git-プル(1) およびその他のコマンド。 詳細については、
ブランチ。 。マージ in git-configとします。
--[いいえ-]薄い
これらのオプションはに渡されます git 送信パック(1)。 薄い転写により大幅な低減が可能
送信者と受信者が多くの同じオブジェクトを共有する場合に送信されるデータの量。
一般。 デフォルトは --thin です。
-q、-quiet
エラーが発生しない限り、更新された参照のリストを含むすべての出力を抑制します。
進行状況は標準エラー ストリームには報告されません。
-v、-verbose
冗長に実行します。
- 進捗
進行状況は、デフォルトで標準エラー ストリームで報告されます。
-q が指定されていない限り、端末に接続されます。 このフラグは進行状況を強制します
標準エラーストリームが端末に向けられていない場合。
--no-recurse-submodules、--recurse-submodules=check|on-demand|no
プッシュされるリビジョンで使用されるすべてのサブモジュールのコミットが確実に行われるようにするために使用できます。
リモート追跡ブランチで利用できます。 もしも チェック が使用されている場合、Git はすべてを検証します。
プッシュされるリビジョンで変更されたサブモジュールのコミットは、少なくとも
サブモジュールのリモート XNUMX つ。 欠落しているコミットがある場合、プッシュは中止され、
ゼロ以外のステータスで終了します。 もしも オンデマンド で変更されたすべてのサブモジュールが使用されます。
プッシュされるリビジョンはプッシュされます。 オンデマンドで必要なものをすべてプッシュできなかった場合
リビジョンが変更された場合も中止され、ゼロ以外のステータスで終了します。 の値 いいえ or
--no-recurse-submodules Push.recurseSubmodules をオーバーライドするために使用できます。
サブモジュールの再帰が必要ない場合の構成変数。
--[いいえ-]確認する
プリプッシュフックを切り替えます(「 githook(5))。 デフォルトは --verify で、フックに
プッシュを防ぐチャンス。 --no-verify を使用すると、フックは完全にバイパスされます。
GIT URL
一般に、URL にはトランスポート プロトコル、サーバーのアドレスに関する情報が含まれています。
リモートサーバーとリポジトリへのパス。 トランスポート プロトコルによっては、
この情報は存在しない可能性があります。
Git は、ssh、git、http、および https プロトコルをサポートします (さらに、ftp および ftps も使用できます)
フェッチには rsync を使用し、フェッチとプッシュには rsync を使用できますが、これらは非効率的であり、
廃止されました。 使用しないでください)。
ネイティブ トランスポート (例: git:// URL) は認証を行わないため、一緒に使用する必要があります。
安全でないネットワークには注意してください。
次の構文を一緒に使用できます。
· ssh://[user@]host.xz[:port]/path/to/repo.git/
· git://host.xz[:port]/path/to/repo.git/
· http[s]://host.xz[:port]/path/to/repo.git/
· ftp[s]://host.xz[:port]/path/to/repo.git/
· rsync://host.xz/path/to/repo.git/
代替の scp に似た構文も ssh プロトコルで使用できます。
· [user@]host.xz:path/to/repo.git/
この構文は、最初のコロンの前にスラッシュがない場合にのみ認識されます。 これは役に立ちます
コロンを含むローカル パスを区別します。 たとえば、ローカル パス foo:bar は次のようになります。
SSH URL として誤解されないように、絶対パスまたは ./foo:bar として指定してください。
ssh および git プロトコルは、~username の拡張も追加でサポートします。
· ssh://[user@]host.xz[:port]/~[user]/path/to/repo.git/
· git://host.xz[:port]/~[user]/path/to/repo.git/
· [user@]host.xz:/~[user]/path/to/repo.git/
ローカル リポジトリの場合は、Git によってネイティブにサポートされており、次の構文を使用できます。
中古:
· /path/to/repo.git/
· file:///path/to/repo.git/
これら XNUMX つの構文は、クローン作成の場合を除き、ほとんど同等です。
--local オプション。 見る gitクローン詳細は(1)。
Git は、特定のトランスポート プロトコルの処理方法がわからない場合、
リモート- リモート ヘルパー (存在する場合)。 リモート ヘルパーを明示的にリクエストするには、
次の構文を使用できます。
· ::
どこパス、サーバーとパス、または任意の URL のような文字列を指定できます。
呼び出される特定のリモート ヘルパーによって認識されます。 見る gtremote ヘルパー(1)
詳細。
類似した名前のリモート リポジトリが多数あり、
異なる形式 (使用する URL が次の URL に書き換えられるなど)
work)、次のフォームの構成セクションを作成できます。
[URL " "]
= の代わりに
たとえば、次のようになります。
[URL "git://git.host.xz/"]
代わりに = host.xz:/path/to/
代わりに=仕事:
「work:repo.git」または「host.xz:/path/to/repo.git」のような URL は、任意の形式に書き換えられます。
URL を「git://git.host.xz/repo.git」にするコンテキスト。
URL をプッシュ専用に書き換える場合は、
形:
[URL " "]
プッシュの代わりに =
たとえば、次のようになります。
[URL "ssh://example.org/"]
PushInsteadOf = git://example.org/
「git://example.org/path/to/repo.git」のような URL は次のように書き換えられます。
プッシュの場合は「ssh://example.org/path/to/repo.git」ですが、プルでは引き続き元のものが使用されます
URL。
備考
URL の代わりに次のいずれかの名前を使用できます。 口論:
· Git 構成ファイル内のリモート: $GIT_DIR/config,
· $GIT_DIR/remotes ディレクトリ内のファイル、または
· $GIT_DIR/branches ディレクトリ内のファイル。
これらはすべて、コマンド ラインから refspec を省略することもできます。
git がデフォルトで使用する refspec が含まれています。
名前付き リモート in の監視 file
以前に使用して構成したリモートの名前を指定することもできます。
git-リモート(1) git-config(1) または、$GIT_DIR/config ファイルを手動で編集します。 URL
このリモートのは、リポジトリにアクセスするために使用されます。 このリモコンのrefspecは次のようになります。
コマンドラインで refspec を指定しない場合にデフォルトで使用されます。 のエントリ
設定ファイルは次のようになります。
[リモート] "]
URL =
プッシュURL =
プッシュ =
フェッチ =
のプッシュのみに使用されます。 これはオプションであり、デフォルトでは。
名前付き file in $GIT_DIR/リモート
$GIT_DIR/remotes にファイル名を指定することもできます。 このファイル内の URL
リポジトリにアクセスするために使用されます。 このファイル内の refspec がデフォルトとして使用されます
コマンドラインでrefspecを指定しない場合。 このファイルには次のものが含まれている必要があります
フォーマット:
URL: 上記のいずれかの URL 形式
押す:
引く:
プッシュ: 行は次によって使用されます。 git プッシュ およびプル: ラインは次によって使用されます。 git プル & git フェッチ.
追加のブランチ マッピングには、複数の Push: 行と Pull: 行を指定できます。
名前付き file in $GIT_DIR/ブランチ
$GIT_DIR/branches にファイル名を指定することもできます。 このファイル内の URL
リポジトリにアクセスするために使用されます。 このファイルは次の形式である必要があります。
#
必要とされている; # はオプションです。
操作に応じて、git は次のいずれかの refspec を使用します。
コマンドラインで指定します。 $GIT_DIR/branches 内のこのファイルの名前です。
とデフォルトはマスターです。
git fetch は以下を使用します。
参照/ヘッド/ :refs/heads/
git Push は以下を使用します。
ヘッド:refs/heads/
出力
「git Push」の出力は、使用されるトランスポート方法によって異なります。 このセクションでは、
Git プロトコルを介してプッシュするときの出力 (ローカルまたは ssh 経由)。
プッシュのステータスは表形式で出力され、各行がステータスを表します。
単一の参照の。 各行の形式は次のとおりです。
-> ( )
--porcelain が使用されている場合、出力の各行は次の形式になります。
\t : \t ( )
最新の参照のステータスは、--porcelain または --verbose オプションが使用されている場合にのみ表示されます。
フラグ
参照のステータスを示す XNUMX 文字:
(スペース)
早送りが成功した場合。
+
強制アップデートが成功した場合。
-
正常に削除された参照の場合。
*
正常にプッシュされた新しい参照の場合。
!
拒否されたかプッシュに失敗した参照の場合。 と
=
最新であり、プッシュする必要のなかった参照のために。
要約
正常にプッシュされた ref の概要には、ref の古い値と新しい値が表示されます。
git log への引数として使用するのに適した形式 (これは.. ほとんどの場合
ケース、および... 強制的な非早送り更新の場合)。
失敗したアップデートについては、詳細が表示されます。
拒否されました
Git は ref をまったく送信しようとしませんでした。これは通常、早送りではないためです。
そしてアップデートを強制しませんでした。
リモートが拒否されました
リモート エンドがアップデートを拒否しました。 通常、リモート側のフックが原因で発生します。または、
リモート リポジトリには次のいずれかの安全オプションが有効になっているためです。
accept.denyCurrentBranch (チェックアウトされたブランチへのプッシュ用)、
accept.denyNonFastForwards (強制的な非早送り更新用)、
accept.denyDeletes または accept.denyDeleteCurrent。 見る git-configとします。
リモート障害
おそらく次の理由により、リモート エンドは参照の更新の成功を報告しませんでした。
リモート側の一時的なエラー、ネットワーク接続の切断など
一時的なエラー。
から
プッシュされているローカル参照の名前からその refs/ を除いたもの/ プレフィックス。 の場合
削除の場合、ローカル参照の名前は省略されます。
〜へ
更新されるリモート参照の名前からその refs/ を除いたもの/ プレフィックス。
理由
人間が読める説明。 参照が正常にプッシュされた場合、説明はありません
が必要です。 失敗した参照については、失敗の理由が説明されます。
注意 わたしたち 早送り
更新により、コミット A をポイントしていたブランチ (またはより一般的には参照) が変更されるとき
別のコミット B を指す場合、B がコミット B である場合に限り、それは早送り更新と呼ばれます。
Aの子孫です。
A から B への早送り更新では、元のコミット A が構築したコミットのセット
on top は、新しいコミット B がその上にビルドするコミットのサブセットです。 したがって、そうではありません
あらゆる履歴を失います。
対照的に、非早送り更新では履歴が失われます。 たとえば、あなたと
他の誰かが同じコミット X から開始し、あなたはコミット B につながる履歴を構築しました
一方、他の人はコミット A につながる履歴を構築しました。履歴は次のようになります。
B
/
---X---A
さらに、他の人が A につながる変更をすでにプッシュしていたとします。
オリジナルのコミット X を取得した元のリポジトリ。
他の人が行ったプッシュにより、コミット X を指していたブランチが更新されました。
コミット A をポイントします。これは早送りです。
しかし、プッシュしようとすると、ブランチ (現在は A を指している) を次のように更新しようとします。
commit B。これは、 早送り。 これを実行すると、コミット A によって導入された変更が反映されます。
誰もが B の上に構築を開始するため、失われます。
このコマンドはデフォルトで、早送り以外の更新を許可せず、これを防止します。
歴史の喪失。
自分の作品(XからBまでの履歴)や他人の作品を失いたくない場合
(X から A までの履歴)、まずリポジトリから履歴を取得する必要があります。
双方が行った変更を含む履歴を作成し、結果をプッシュバックします。
「git pull」を実行して潜在的な競合を解決し、その結果を「git Push」することができます。 「ギット」
pull" はコミット A と B の間にマージ コミット C を作成します。
紀元前
/ /
---X---A
結果のマージコミットで A を更新すると早送りされ、プッシュは次のようになります。
受け入れた。
あるいは、「git pull」を使用して、X と B の間の変更を A の上にリベースすることもできます。
--rebase" を実行し、結果をプッシュバックします。リベースにより、
A の上で X と B の間で変更します。
BD
/ /
---X---A
繰り返しますが、このコミットで A を更新すると早送りされ、プッシュが受け入れられます。
次の場合に、非早送り拒否が発生する可能性があるもう XNUMX つの一般的な状況があります。
プッシュしようとすると、リポジトリにプッシュしているときでも可能です
それ以外の場合は押し込みます。 自分でコミット A をプッシュした後 (このセクションの最初の図)、
これを「git commit --amend」に置き換えてコミット B を生成し、それをプッシュしようとします。
なぜなら、あなたがすでにAを押し出したことを忘れていたからです。 そのような場合、そしてあなたがそうである場合にのみ、
その間、誰も以前のコミット A をフェッチしなかった(そしてその上にビルドを開始した)ことは確かです
その一番上)、「git Push --force」を実行して上書きできます。 言い換えれば、「git Push
--force" は、履歴を確実に失う場合のために予約されているメソッドです。
例
git push
gitプッシュのように動作します、 どこ現在のブランチのリモート (または
現在のブランチにリモートが構成されていない場合は、オリジン)。
gitプッシュオリジン
追加の構成を行わずに、現在のブランチを構成された上流にプッシュします。
(remote.origin.merge 構成変数) 現在の変数と同じ名前の場合
分岐し、それ以外の場合はプッシュせずにエラーが発生します。
いいえの場合のこのコマンドのデフォルトの動作が与えられると設定できます
リモートのプッシュ オプション、または Push.default 構成変数を設定します。
たとえば、デフォルトで現在のブランチのみをオリジンにプッシュするには、 git config を使用します。
リモート.オリジン.プッシュ ヘッド。 任意の有効な(以下の例のように)
git Push Origin のデフォルトとして設定されます。
git プッシュの起点:
「一致する」ブランチを原点にプッシュします。 見る上記の「オプション」セクションで、
「一致する」ブランチの説明。
git push origin master
ソース リポジトリでマスターと一致する参照を見つけます (おそらく、
refs/heads/master)、オリジンで同じ ref (例: refs/heads/master) を更新します。
リポジトリも一緒に。 マスターがリモートに存在しない場合は作成されます。
git push オリジン HEAD
現在のブランチをリモート上の同じ名前にプッシュする便利な方法。
git Push mothership master:satellite/master dev:satellite/dev
マスターと一致するソース参照 (例: refs/heads/master) を使用して参照を更新します。
これは、satellite/master (おそらく refs/remotes/satellite/master) に一致します。
母船のリポジトリ。 dev と Satellite/dev に対しても同じことを行います。
これは、 で実行される git Push を使用して、母艦上で実行される git fetch をエミュレートすることです。
衛星で行われた作業を統合するために反対方向に進み、多くの場合、
一方向でしか接続できない場合に必要です(つまり、衛星が ssh で接続できる)
母船ですが、母船は衛星への接続を開始できません。
ファイアウォールの内側にあるか、sshd が実行されていません)。
この git Push をサテライト マシンで実行した後、ssh で
mothership を実行し、そこで git merge を実行して、実行された git pull のエミュレーションを完了します。
母船上で衛星上で行われた変更をプルします。
git プッシュ オリジン HEAD:master
現在のブランチを、オリジン リポジトリ内のマスターに一致するリモート参照にプッシュします。
この形式は、ローカルのことを考えずに現在のブランチをプッシュするのに便利です。
名前。
git Push Origin master:refs/heads/experimental
現在のマスターをコピーして、元のリポジトリに実験的なブランチを作成します。
ブランチ。 このフォームは、リモートで新しいブランチまたはタグを作成する場合にのみ必要です。
ローカル名とリモート名が異なる場合のリポジトリ。 それ以外の場合は、参照
名前自体は機能します。
git プッシュオリジン:実験的
元のリポジトリで実験に一致する参照を見つけます (例:
refs/heads/experimental) を削除してください。
git プッシュ オリジン +dev:master
オリジン リポジトリの master ブランチを dev ブランチで更新し、
非早送り更新。 この できる 残す 参照されていない コミットする ぶら下がる in 起源
リポジトリ。 早送りができない次の状況を考えてみましょう。
o---o---o---A---B オリジン/マスター
\
X---Y---Z 開発者
上記のコマンドは、元のリポジトリを次のように変更します。
A---B (名前のないブランチ)
/
o---o---o---X---Y---Z マスター
コミット A と B はシンボリック名のブランチに属さなくなり、同様に
到達不能になる。 そのため、これらのコミットは、 git gc コマンドによって削除されます。
元のリポジトリ。
GIT
の一部 git(1)スイート
onworks.net サービスを使用してオンラインで git-push を使用する