問題タブ [git-archive]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
git - git 不正なファイル番号
git archive
現在取り組んでいるシステムの新しいバージョンを試してみましたが、突然、git archive
使用していたコマンドが機能しなくなりました。
git archive
の後に を使用します。これgit diff + filters
は、タグ付けされたバージョン間の差分を取得するためだけに必要です。
現在、次のエラーのため、バージョンの変更を含むアーカイブ (zip パッケージ) を生成できません。sh.exe": /bin/git: Bad file number
を試してみたところgit diff + filters (ACMRT and stuff)
、正しい差分が表示されたので、差分の問題を破棄しました。後で、`git archive
テストファイルを使用して唯一の方法を試しましたが、同様に機能しました。しかし、両方を一緒に使用すると、エラーが発生します。
誰もこのようなものを見たことがありますか?
ありがとう!
git - git-archive は、コミット日が異なるファイルで同じコミット日を表示します
git には、コミット日が異なる 2 つのファイルがあります。しかし、私が作成するgit-archive
と、同じコミット日が表示されます。なぜですか?
出力ではgit-log
、コミット日が異なります (1 秒) が、で生成されたファイルgit-archive
のコミット日は同じです
git - pyinstaller は git アーカイブのような文字列を置き換えます
コマンドをgit archive
使用すると、ソースにテキストを挿入できます。例: コードに文字列がある場合
文字列はコミット日付に置き換えられます。
pyinstaller と spec ファイルを使用して、似たようなものを作ることができますか? (構築過程で文字列を更新)
git - git archive : export-ignore、ディレクトリを無視
私はこれを含むgitリポジトリを持っています.gitattributes
:
しかし、私が作るとき:
ディレクトリで、archive_dir
ディレクトリを取得し、次のようにhooks
しtests
ます。
なんで?
私のgitバージョンは1.7.9です。
git - ステージングされていない変更を含む git アーカイブ
私は自分のrpmを構築しています。通常、興味のあるコミットまたはタグから tarball を取得するために git アーカイブを使用します (タグ 1.0 を配置したとします):
今、まだコミットしていないローカル開発を行っていて、アーカイブを取得したいとします。コミットせずにこれを取得する方法はありますか?
編集次のようなものを使用できます:
しかし、それにはすべてのバイナリと、私が好まない他の追跡されていないファイルが含まれます...
git - 最初/最初のコミットなしの Git アーカイブ
選択したコミット以降、git リポジトリから tar アーカイブを作成する方法は?
この質問は、最初のコミットを除くすべての変更を Git アーカイブするのに似ていますが、git パッチ ファイルではなく、結果として .tar アーカイブが必要です。
説明: 拡張機能を作成するための実際のメカニズムがない奇妙な PHP CMS の「モジュール」を作成します。モジュールを出荷するには、変更したファイルのみをクライアントに送信する必要がありますが、すべての CMS ファイルを Git の下に置く必要があります (すべて最初のコミットでのみ追加されます)。
git - Git: リモート サーバーから特定のリビジョンを取得する
テストアーキテクチャをセットアップしています。このシステムでは、VM はコードの特定のリビジョンをテストする必要があります。VM は完全にクリーンで、リポジトリのローカル (更新可能な) バージョンがありません。コードは、git という名前のユーザーを使用して ssh を介して、オンサイトの git サーバーでホストされています。私は両方のマシンを完全に制御しています。
簡単な解決策は次のとおりです。
これは機能しますが、やりすぎです。完全な履歴をネットワーク経由で転送します。これは、可能であれば避けたいことです。
git clone
オプションを取ることができるドキュメントから私には思え--branch
ますが、これでは特定のリビジョンを指定できません。もしそうなら、これと組み合わせて--depth 1
私にとってはうまくいくでしょう。
別の方法は、 を使用することgit archive --remote
です。これが任意のリビジョンを取得できるようにすることのセキュリティへの影響を理解しています。この場合、それは問題ではないので、実行します
git サーバーで git ユーザーとして。
これで、git ユーザーのシェルで、次のことができます。
また、VMから実行できます
ただし、機能しないのは次のとおりです。
はい、私は同じレポを指しています。そのリビジョンは間違いなくレポにあります。リビジョン番号では機能しません。1 つのケースとして考えられるのは、コマンドが ssh 経由で実行される場合、デフォルト~/.gitconfig
ファイルが読み取られないことですが、これに関する情報は見つかりませんでした。
現在、git ユーザーのシェルとして bash を使用しています。将来的には制限付きシェルで動作する予定ですが、基本的な問題を示すために、通常のシェルを使用したかったのです。
クリーンなマシンに単一のリビジョンを取得する方法に関する一般的な意見と、リビジョンで git アーカイブを使用できないという特定の問題の解決策の両方に興味があります。
編集: torek はバージョンについていくつかのアイデアをくれました (私は OSX で実行し、git 1.8.5.2 ストックを使用し、brew を介して 2.0.1 をインストールしました)、git-upload-archive
何が起こっているのかを把握するために小さなラッパー スクリプトを作成しました。ラッパー スクリプト:
--exec
このスクリプトを実行するオプションを指定して git-archive を呼び出します。
書かれているバージョンは 2.0.1 です。ただし、同じ問題は解決しません...ローカルから-remoteを使用してgit-archiveを呼び出すことができ、sha1uploadarchive.allowunreachable
が設定されている場合、リモートではできません。興味深いことに、( の/tmp/stdin
) 要求はどちらの場合もまったく同じですが、応答は異なります。私が見る限り、これは ssh で起動した場合に git-upload-archive が正しい構成を取得していないためです。これは、レポでローカル構成を使用して表示できます。その場合は機能します (これが機能しなかったというコメントでの私の発言は、実際に拾っていたため/usr/bin/git-upload-archive
です。この構成フラグを許可しない古いバージョン)。
/usr/local/bin/git upload-archive
この問題は、代わりに を呼び出すことで実際に解決できます/usr/local/bin/git-upload-archive
。これは git-archive の引数として指定することもできます:--exec='/usr/local/bin/git-upload-archive'
動作しません--exec='/usr/local/bin/git upload-archive'
。
したがって、問題は現在機能しています。git-upload-archive が構成を取得しない理由に (学術的な観点から) 興味があります。おそらく、これは git プロジェクトに報告すべきバグです。
git - git アーカイブに .git プロジェクトが存在するディレクトリを含めることはできますか?
git アーカイブに .git プロジェクトが存在するディレクトリを含めることはできますか?
たとえば、ディレクトリ構造が次のようになっているとします。
デフォルトでは、git アーカイブを実行すると、次のような ZIP ファイルになります。
コマンドに親ディレクトリも含めることができる方法があるかどうか疑問に思っていarchive
ます。たとえば、次のようになります。
git - 「git archive」の --remote オプションをローカル リポジトリで使用できますか?
git archive
別のディレクトリからローカル リポジトリで実行しようとすると
このコマンドは、以下の出力で失敗します。リモートオプションは受け付けていないようです。
リポジトリ ディレクトリに切り替えて、リモート オプションなしで実行すると問題ありません。すなわち
使用されている --remote 構文に問題がありますか? または --remote オプションがローカル リポジトリでサポートされていませんか?