2016-12-06 16 views
0

これは愚かな質問の場合は私をキックしてください、しかし私はcrowdsource経験する必要があります。2つの異なるソースから同じリポジトリに2つのGitブランチを作成するにはどうすればよいですか?

私は2つの異なるサーバー上にコードを持っています - 基本的に同じアプリケーションの開発元とソースですが、まったく同じではなく、同じ歴史を持っていません - コーディング標準/基本的には存在しない。私は、生産コード(マスタブランチ)用のGitリポジトリを作成し、すべてをアップロードしました。幸せな日々、素晴らしい時間、すべてが良いです。

私はdevのコードを同じリポジトリに追加するが、別のブランチとして追加したい。 git checkout --orphan <branch>を読んだところ、これは私の選択肢かもしれないようですが、わかりません。私はデベロッパーサーバーで初期化され、孤立したブランチをチェックアウトして、次にgit add -allを初期化してレポにプッシュする(新しいブランチにはコミット、更新など)、現在のレポのリモートを追加しますか? ?どのようにしてdevサーバー上のファイルで既存の混乱からoriginを追加しますか?

私はGitにとても慣れ親しんでいますが、この問題に遭遇したことはありません。私のGoogle-fooは失敗しました。

あなたのご協力/ご叱責をいただければ幸いです。

+0

'git branch'には' --orphan'がありません。あなたは 'git checkout -orphan'を意味しましたか?いずれにしても、 '--orphan'はブランチ*名前*(それがなければならない程度)だけであり、主にGitが次の*新しい*コミットを追加する方法です。 2つの別々のリポジトリを "融合"する予定がある場合、 '--orphan'はまったく役に立たない。既存のリポジトリから 'git fetch'を実行すると、そのコミットをそのまま受け取ります。コミットは*履歴です*履歴はありません*履歴はありません。*新しいコミットを作成するのではなく、別のGitから既存の履歴を取得するだけです。 – torek

答えて

2

はい、git checkout --orphan devを使用して実現し、git add .git pushを使用できます。

しかし、また、別の方法は(DEVコード-devの枝のためのdevのレポを作成し、生産レポにプッシュ)あなたの情報のために、そこにある:

  1. devに関するGitのリポジトリを作成します。コード(ブランチを開発)生産レポで
  2. バッシュ、リモートのためのdevのレポを追加し、git remote add -f origin2 <URL for dev repo>
  3. git checkout origin2/dev
  4. git checkout –b dev
  5. を使用0
  6. git push origin dev
+0

私はそんなことを考えていないので、そんなダム・ダムのように感じます。ありがとう@マリーナmsft – Francois

+0

+1あなたが示唆した他の方法は、それは既存のレポの新しいブランチにフォルダをマージするはるかにクリーンな方法です。 – Tyler

0

私が理解するところでは、実動コード(マスターブランチ)を持つブランチが1つあります。さて、あなたは同じリポジトリにdevコードを追加したいと思います。 --orphanを使用した場合、最初のコミットはまったく新しい履歴を持ち、マスターブランチ上のコミットには関係しません。それでも先に進むことはできますが、混乱するかもしれません。

あなたのレポに新しいブランチを作成し、そのブランチにdevコードを追加することをお勧めします。それは依然としてリポジトリに存在しますが、マスターブランチから分離されています。これは物事を整理しておくべきです。

関連する問題