0

プロジェクトAがあります。プロジェクトAは、github(ビジネス上の決定)だけでなく、perforceでもあります。それらは両方とも同期していません。git-p4 ツールhttp://git-scm.com/docs/git-p4を使用して、git の変更を perforce に送信できることがわかりました。問題は、それが言う最初の指示です:

git p4 clone //デポ/パス/プロジェクト

このコマンドは、git ハブに新しいリポジトリを作成します。私はそれを望んでいません。既存の perforce デポを既存の github リポジトリに接続してから、ファイルを github から perforce に同期させたいと考えています。出来ますか?

4

3 に答える 3

0

Git と Perforce の間の架け橋である Git Fusion をご覧になることをお勧めします。

http://www.perforce.com/git-fusion

この KB 記事では、Perforce とパブリック Git リポジトリの両方にあるプロジェクトで作業する方法の例を示します。

http://answers.perforce.com/articles/KB/7481/

お役に立てれば!

于 2015-02-13T14:30:36.257 に答える
0

基本的に、同じプロジェクトに 2 つの異なる歴史があるため、それらを調整する方法を見つける必要があります。

git-p4 は Perforce から同期できます (新しい git リポジトリを作成します)。その後、github を指す新しいリモートを追加し、そこからブランチを同期できます。

ただし、それは履歴のマージの問題には役立ちません。

次のいずれかを実行できます。

  1. Perforce を使用して、github の履歴を書き換えます
  2. Github の履歴を参照し、perforce 管理者/Perforce (会社) に Perforce の履歴を書き換えてもらいます。

2 はおそらく (政治的に) 不可能です。技術的に不可能かもしれません。Perforce は、履歴が変更されるのを防ぐように設計されています。

1 は、github リポジトリから複製されたすべての人を壊します。

于 2015-02-07T18:30:50.957 に答える
0

No.git p4は基本的に Perforce の単なるラッパーです。Git リポジトリへの変更を読み取り、適切な Perforce コマンドを発行してそれらをコミットします (逆も同様です。Perforce チェックアウトへの変更を読み取り、適切な Git コマンドを発行して、それに応じて Git リポジトリを更新します)。そのため、Perforce チェックアウトと、その Perforce チェックアウト通信できるローカル Git リポジトリが必要です。

于 2015-02-03T23:10:09.333 に答える