英語フランス語スペイン語

Ad


OnWorksファビコン

git-bundle - クラウドでオンライン

Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターを介して、OnWorks の無料ホスティング プロバイダーで git-bundle を実行します。

これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド git-bundle です。

プログラム:

NAME


git-bundle - アーカイブによってオブジェクトと参照を移動する

SYNOPSIS


git バンドル 作成する
git バンドル 確認する
git バンドル リストヘッド[ ...]
git バンドル 束ねる[ ...]

DESCRIPTION


一部のワークフローでは、XNUMX 台のマシン上で開発の XNUMX つ以上のブランチを実行する必要があります。
別のマシンにレプリケートされますが、XNUMX つのマシンを直接接続することはできません。
したがって、対話型 Git プロトコル (git、ssh、rsync、http) は使用できません。 これ
コマンドは以下のサポートを提供します git フェッチ および git プル オブジェクトをパッケージ化することで動作し、
元のマシンのアーカイブ内の参照を別のマシンにインポートする
リポジトリを使用して git フェッチ および git プル 何らかの手段でアーカイブを移動した後(例:
スニーカーネット)。 リポジトリ間には直接的な接続が存在しないため、ユーザーは次のことを行う必要があります。
宛先リポジトリが保持するバンドルの基礎を指定します: バンドル
ベース内のすべてのオブジェクトが宛先リポジトリにすでに存在していることを前提としています。

OPTIONS


作成する
という名前のバンドルを作成するために使用されます。 file。 これには、 git-rev-list-args 引数
バンドルの内容を定義します。

確認する
バンドル ファイルが有効であり、現在のファイルに正しく適用されることを確認するために使用されます。
リポジトリ。 これには、バンドル形式自体のチェックと、バンドル形式自体のチェックが含まれます。
前提条件のコミットが存在し、現在のリポジトリに完全にリンクされています。 git
バンドル 欠落しているコミットがある場合はそのリストを出力し、ゼロ以外のステータスで終了します。

リストヘッド
バンドルで定義されている参照をリストします。 参考文献のリストが後に続く場合は、
指定されたものと一致する参照が出力されます。

束ねる
バンドル内のオブジェクトをに渡します git インデックスパック リポジトリに保存するため、
定義されたすべての参照の名前を出力します。 参考文献のリストが指定されている場合のみ、
リスト内の参照と一致する参照が出力されます。 このコマンドは実際には配管です。
によってのみ呼び出されるように意図されている git フェッチ.


受け入れ可能な引数のリスト git 回転解析 および git リビジョンリスト (そして、
名前付き ref (以下の「参照の指定」を参照)、特定のオブジェクトを指定します。
輸送への言及。 たとえば、master~10..master とすると、現在のマスターが作成されます。
10 番目の祖先のコミット以降に追加されたすべてのオブジェクトとともにパッケージ化される参照。
使用できる参照とオブジェクトの数に明示的な制限はありません。
パッケージ化。

[ ...]
利用可能として報告される参照を制限するために使用される参照のリスト。 これは
主に役に立つ git フェッチ、要求された参照のみを受信することを期待します
必ずしもパック内のすべてを対象とするわけではありません (この場合、 git バンドル のように動作します git
フェッチパック).

指定する 参考文献


git バンドル で示される参照のみをパッケージ化します。 git ショーリファレンス: これも
ヘッド、タグ、およびリモート ヘッド。 master~1 などの参照はパッケージ化できませんが、パッケージ化できます。
基礎を定義するのに最適です。 複数のリファレンスがパッケージ化される場合があります。
複数の基準を指定できます。 パッケージ化されたオブジェクトは、
与えられた塩基の結合。 各基底は明示的に指定できます (例: ^master~10)。
暗黙的に (例: master~10..master、--since=10.days.ago master)。

使用される基礎が宛先によって保持されることが非常に重要です。 間違えても大丈夫です
これは注意が必要ですが、バンドル ファイルには既に存在するオブジェクトが含まれることになります。
これらは宛先で解凍するときに無視されるためです。

実施例


マシン A 上のリポジトリ R1 から別のリポジトリに履歴を転送するとします。
マシン B 上のリポジトリ R2。何らかの理由で、A と B の間の直接接続はできません。
許可されていますが、何らかのメカニズム (CD、電子メールなど) を介して A から B にデータを移動することはできます。 私たちはそうしたいです
R2 のブランチ マスターで行われた開発で R1 を更新します。

プロセスをブートストラップするには、まず基礎を持たないバンドルを作成します。 あなた
簡単にするために、タグを使用して最後に処理したコミットまでを記憶できます。
後で増分バンドルを使用して他のリポジトリを更新するには、次のようにします。

マシンA$ cd R1
machineA$ git Bundle create file.bundle master
machineA$ git tag -f lastR2bundle master

次に、file.bundle をターゲット マシン B に転送します。このバンドルは
既存のオブジェクトを抽出する必要がある場合は、マシン B に新しいリポジトリを作成できます
そこからクローンを作成することで、

machineB$ git clone -b master /home/me/tmp/file.bundle R2

これにより、結果として得られるリポジトリに「origin」というリモートが定義され、フェッチできるようになります。
そして束から引き抜きます。 R2 の $GIT_DIR/config ファイルには次のようなエントリが含まれます。

[リモート「原点」]
URL = /home/me/tmp/file.bundle
fetch = refs/heads/*:refs/remotes/origin/*

結果のmine.gitリポジトリを更新するには、
増分更新を含むバンドルは /home/me/tmp/file.bundle に保存されます。

元のリポジトリでさらに作業を行った後、増分バンドルを作成できます。
他のリポジトリを更新するには:

マシンA$ cd R1
machineA$ git Bundle create file.bundle lastR2bundle..master
machineA$ git tag -f lastR2bundle master

次に、バンドルを他のマシンに転送して /home/me/tmp/file.bundle を置き換えます。
そこから引っ張ります。

マシンB$ cd R2
machineB$ git プル

対象となる受信者のリポジトリに必要なコミットがどこまであるかがわかっている場合は、
オブジェクトの場合、その知識を使用して根拠を指定し、制限するカットオフ ポイントを与えることができます。
結果として得られるバンドルに含まれるリビジョンとオブジェクト。 前の例では、
この目的のために lastR2bundle タグを使用しますが、他のオプションを使用することもできます。
git-ログ(1) コマンド。 さらに例を示します。

次の両方に存在するタグを使用できます。

$ git Bundle create mybundle v1.0.0..master

時間に基づいた基準を使用できます。

$ git Bundle create mybundle --since=10.days master

コミット数を使用できます。

$ git Bundle create mybundle -10 master

git-bundle verify を実行して、作成されたバンドルから抽出できるかどうかを確認できます。
根拠を持って:

$ git Bundle verify mybundle

これにより、バンドルから抽出するために必要なコミットがリストされます。
それらを持っていない場合はエラーが発生します。

受信側リポジトリの観点から見ると、バンドルは通常のリポジトリと同じです
そこからフェッチまたはプルします。 たとえば、フェッチ時に参照をマップできます。

$ git fetch mybundle master:localRef

どのようなリファレンスが提供されているかも確認できます。

$ git ls-remote mybundle

GIT


の一部 git(1)スイート

onworks.net サービスを使用してオンラインで git-bundle を使用する


無料のサーバーとワークステーション

Windows と Linux のアプリをダウンロード

Linuxコマンド

Ad