問題タブ [git-fast-import]
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-p4 同期
perforce リポジトリをミラーリングしようとしていますが、git-p4 はメイン ブランチで十分に機能します。に電話するだけgit-p4 rebase
です。また、別のブランチをミラーリングしようとしていますが、そう簡単にはうまくいきません。a を実行できると思ったのですが、git-p4 rebase --branch=p4/whatever //open/branches/whatever
これらrebase
のタグを無視しているように見えます。sync
代わりに a を実行すると、次のエラー メッセージが表示されます。fast-import failed: warning: Not updating refs/heads/p4/whatever (new tip 14f7e14e5079bb730363440901adee102e5f04c9 does not contain 0ca89b0333f408367e3676720b109a08cc40b3ae)
私の最初のインポートは @all との同期でした。更新できないのはなぜですか、それともこれを行うための別の/より良い方法はありますか?
git - gitfast-コミット順序のインポート
私はPlasticSCM / Gitの高速エクスポート/高速インポートスイートを作成していますが、いくつかの問題が見つかりました。
私がドキュメントから読んだように:
この設計により、フロントエンドプログラムは無制限の数のブランチを同時に処理し、ソースデータから利用可能な順序でコミットを生成できます。
しかし、「エクスポーター」を実装すると、まだ作成されていないコミットを参照できないことがわかります。たとえば、最初にソースよりもマージのコミット先を導入し、次にソースを参照するだけで、機能しないとします。
したがって、私が理解している限り、「ソースから利用可能な順序でコミットを生成する」という文は単に間違っており、git fast-importは実際にコミットを順番に提供する必要があり、参照は前に導入されたオブジェクトにのみ存在できます。
それが正しいか?
ありがとう。
git - gitfast-import--export-marksフラグ
git fast-import --export-marksは、マークを作成したコミットハッシュに関連付けるファイルをエクスポートできます。
これまでのところ、マークは入力で提供されたものではなく、入力に関連しないいくつかの「内部マーク」であることがわかりました。
インポート/エクスポートの相互運用性については、元のマークを保持していれば、はるかに優れているのではないでしょうか。
git - fast-import / fast-export git / bzr:履歴の整合性に対するmarksファイルの重要性は何ですか?
現在、git-bzr-ngを使用してbzrリポジトリから多数のブランチをインポートしていますが、インポートしたブランチごとに異なるターゲットブランチを使用すると、ツールが同じインポートマークファイルとエクスポートマークファイルを使用しないことがわかりました。
git fast-importドキュメントを読み、bzr fast-importドキュメントの例を確認すると、同じリポジトリから複数の関連するがマージされていないブランチをインポートするときに、同じマークのファイルを使用する必要があることがわかります。
質問は、これは本当にどれほど重要ですか?これらのマークファイルが何から保護するのかについての適切な説明を見つけることができなかったので、それらを正しく使用せずに複数のブランチがインポートされたのか、祖先を正しく識別するのに問題があるのか、それともパフォーマンスのためだけなのかは不明です後続のブランチのインポート/エクスポートを高速化する理由。
git - git fast-import ストリームのマージ セマンティクスは何ですか?
バージョン管理リポジトリの履歴を編集し、VCS 間でプロジェクトの履歴を移動するために使用できる reposurgeon というオープンソース ツールを作成し、維持しています。最近、Subversion のダンプ ファイルとリポジトリの読み取りを完全にサポートしました。しかし、reposurgeon がまだうまく機能していないことが 1 つあります。それは、git スタイルの DAG マージにコピーすることによって行われた Subversion ブランチのマージを変換することです。
この部分を正しく理解するには、git fast-import ストリームでのマージ コミットのセマンティクスを、私よりもはるかによく理解する必要があります。私の質問は、マージ コミット後に表示されるはずのコンテンツのバージョンについてです。
もちろん、マージコミットに添付されたファイルの変更により、その内容がそこに表示されます。私の質問は、コミットによって触れられていないパスに関するものです。
パスが、マージの祖先の 1 つのコミット チェーンのみにコンテンツを持っている場合、コンテンツは表示されるはずだと思います。あれは正しいですか?
パスにマージの祖先の複数のコミット チェーンのコンテンツがある場合、どのバージョンが表示されますか?
ファイルがマージへのいくつかのパスに沿って削除された場合、マージ リビジョンでいつ削除されるかを予測するルールは何ですか?
git - SourceAnywhere からの Git/GitHub インポート
現在、バージョン管理サーバーとしてSourceAnywhere Hostedを使用しています。GitHub への移行を検討しており、8 年以上の歴史を維持したいと考えています。
他の誰かがこの移行を正常に完了し、ツール/プロセスを共有しようとしていますか?
今、これが以前に行われたことがないと仮定するとfast-import
、SourceAnywhere SDK またはコマンド ライン クライアントを使用して git スクリプトを作成することを考えていると思います。git は初めてなので、出発点として紹介できる既存のスクリプトやリソースはありますか?
git - bazaar を commit-properties を使用して git に移行し、リンクのバグを修正
私たちは数年間 bazaar-vcs を使用していましたが、長年の厄介なバグのために git に移行することに決め、bzr の開発を中止しました。
bazaar を使用している間、bazaar ( http://doc.bazaar.canonical.com/bzr.dev/en/user-reference/bugs-help.html ) の「バグ追跡メタデータ」機能を広範囲に使用しました。したがって、すべてのバグ修正コミットには、対応する mantis-bug-Id への ID が含まれていたため、ソースと mantis の間のリンクが得られました。
私たちの commit-message には mantis-id が含まれていません。「metadata-feature」のみを使用しました。
これらの情報を失わないことが非常に重要であるため、このバグ リンクを何らかの形で移行するための解決策が必要です。
fast-import/fast-export コマンドを使用して、bazaar リポジトリを git にエクスポート/インポートしようとしました。
bzr fast-export --no-plain --rewrite-tag-names /var/www/source_branch/ | git高速インポート
残念ながら、次のエラーが表示されます。
ただし、オプション--no-plainの代わりに--plainを使用すると、インポートは機能しますが、バグへのすべての接続が失われます。
私たちにとって非常に重要なこれらすべてのバグリンクを失うことなく、bzr から git に移行するための解決策/回避策はありますか?
[編集] : 非常に単純な高速インポート/高速エクスポート ファイル形式を分析しました。ファイルを変更し、(プロパティのバグ...) 行を対応するコミット メッセージ行に移動するスクリプトを作成できるはずです。ただし、すぐに使えるソリューションがある場合は、喜んでお知らせします:)
git - なぜgit fast-importファイルモードがハードコードされているのですか?
CVS リポジトリを GIT に変換しようとしていますが、奇妙な問題に直面しました:
git fast-import
ファイル モード 100755 と 100644 がハードコードされています。
ソース:
// https://github.com/git/git/blob/master/fast-import.c 2272-2288
誰かが私にそのような解決策の理由を説明してもらえますか?
git - 72GB のダンプファイルを git にインポートするにはどうすればよいですか?
古い cvs リポジトリを cvs2git (cvs2svn) で移行しました。結果のダンプ ファイルは 72GB になり、git fast-import を使用してダンプをインポートしようとすると、メモリ不足エラーのために常に失敗します。
致命的:メモリ不足、malloc が失敗しました (6196691 バイトを割り当てようとし ました)
これにより、私のシステムには 32GB の RAM と 50GB のスワップがあります。Git 1.8.3.4 (gcc44、python2.6.8、cvs2svn2.4.0) を使用して Red Hat 5.3 でインポートを実行しています。また、スタック サイズとファイル記述子の制限を解除しようとしましたが、メモリ エラーはまだ残っています。
誰にもアイデアはありますか?
git - Bzr 高速エクスポート リターン bzr: 壊れたパイプ
bzr リポジトリを git にエクスポートする必要があります。これを行うには、を使用しようとしていますbzr fast-export --git-branch=mybranch --plain | git fast-import --force
。bzr は実行を開始しますが、停止してエラーを返します。
誰か助けて!ありがとう!