0

私の新しいプロジェクトでは、チームと一緒にGitを使用します。独自のリモートリポジトリが必要です。このリモートリポジトリを形成して、コードをさらにプッシュします(このプロジェクトで作業しているチームは私たちだけではありません。プロジェクトはすでに存在し、そのためのgitリポジトリが存在します)。残念ながら、私たちはgitに精通していません。既存のリポジトリのクローンをリモートの場所に作成できます。その後、チームの他のメンバーは、離れた場所から自分のコンピューターにコピーを作成します。問題は、リモートリポジトリがそれ自体にプッシュできるようにするために「ベア」(それが何を意味するのかわかりません)でなければならないということです。ここでのベストアンサーによると:

Gitプッシュエラー'[リモート拒否]マスター->マスター(ブランチは現在チェックアウトされています)'

'(...)そのフォルダ内の.gitを除くすべてのファイルを削除する必要があります。データを失いたくありません。プロジェクトはすでに存在します。それに加えて、変更をさらに推し進めるためにどのように機能するかわかりません。

同じトピックで、私が使用できる素晴らしい2番目の答えがあります。リモートリポジトリに追加のブランチを作成しますが、追加の不要な存在(新しいブランチ)を作成するというアイデアは好きではありません。

これらすべてのリポジトリをどのように設定する必要がありますか?私は最初に書いたように、解決策についての説明をいただければ幸いです。私はgitに精通していません。

4

1 に答える 1

1

最初の質問は、チーム用に独自のリポジトリが必要な理由です。「すべての」リポジトリは、ライブ展開に使用されるリポジトリだと思います。したがって、このリポジトリを使用してプルするのが最も簡単な方法です。チーム用にdevなどの新しいブランチを作成すると、プロジェクトの一部を開発するためのブランチをさらに作成できます。たとえば、チームの誰かがゲストブックを開発する必要がある場合、彼はあなたがチームのために作成した開発ブランチをチェックします。その後、彼は「ゲストブック」と呼ばれる新しいブランチを作成します。たとえば、ブランチをチェックアウトしてアプリの開発を開始する必要があります。終了したら、ブランチ「guestbook」を「dev」ブランチにマージして、結果を確認します。開発ブランチが正常に機能している場合は、それをメインリポジトリのマスターブランチにマージして、機能を有効にすることができます。

別のサーバーに独自のリポジトリが本当に必要な場合は、gitinit--bareを使用してそこに新しいgitリポジトリを作成するだけです。プロジェクトをローカルコンピューターに複製または更新(フェッチ/プル)します。.git / configファイルのリモートオリジンを新しいサーバーに変更し、そこにプロジェクトをプッシュします。

それがお役に立てば幸いですが、もし私があなたなら、私は枝に固執するでしょう。いつの日か、チームの作業を元のプロジェクトに戻したいと思うかもしれません。同じプロジェクトの別のリポジトリで開発する場合は、それを達成するためにさらに多くの作業が必要になります。

于 2012-12-07T15:41:37.770 に答える