4

(96 ファイル) コードの次の 2 つのバリアントがあり、それらの唯一の違いは括弧内にあります。

  1. DOUBLE-PRECIION (すべての変数は REAL*8 として定義され、すべての数値は 1234D+02 のように定義されます)
  2. QUADRUPLE-PRECISION (すべての変数は REAL*16 として定義され、すべての数値は 1234Q+02 のように定義されます)

ソフトウェアで何かを変更するたびに、この変更が上記のコードの両方のバリアントで一貫していることを望みます。

Git(ハブ)では、次のことを行う必要があります:

  1. 別のリポジトリを構築します (変更を簡単にマージするにはどうすればよいですか?)、
  2. 別のブランチを作成します (ただし、すべてのコードをマージする場合はブランチが最適と思われます)。
  3. フォークを作成します (ただし、これはメイン ブランチにプッシュできない人向けのようです) ?

関連する質問がいくつかありますが、私が望んでいるものではありません。私は彼らの答えを飲み込まなかった理由を書きました:

  1. git を使用して異なるバージョンのコードを同時に維持する: Tobu の回答によると、「多くの場合、git cherry-pickが機能しない可能性があります」
  2. git を使用して Web アプリケーションの複数のバージョンを管理する: git サブモジュールを提案していますが、そうしない理由があります。
  3. ソースコードのバリアントを追跡する: #defineを使用することをお勧めしますが、FORTRAN に相当するものはありますか?
  4. 1 つの GIT リポジトリでプロジェクトの 2 つのバージョンを追跡する方法は? : 「一般的な」コードの 3 番目のブランチを提案しますが、2 つ以上のブランチを使用する利点はわかりません。ここで git cherry-pick を使用する必要はありませんか?
4

1 に答える 1