私は現在、2人の参加者(私と私の友人)を持つプロジェクトにgitを使用しています。だから私は次のようにした:リモートリポジトリとGITのローカルリポジトリとの同期はどうですか?
ローカルネットワーク上のどのマシンからでも常にアクセス可能なマシンにリポジトリを作成しました。
ローカルリポジトリを作成するそれぞれのローカルマシンにこのリポジトリをクローンしました。
ここで、3つのリポジトリのコピーがすべて同じ段階にある1つの時点で、ブランチをフォークし、そのブランチで何らかの開発を開始するとします。私はそれらの変更をリモートにプッシュし、リモートに新しいブランチが自動的に作成されていることがわかります。
他のマシンでは、同じブランチを同じ名前の新しいローカルブランチにプルするので、すべて同じ状態に戻ります。
私はこのフォークブランチで完了し、マスターとマージする必要があります。マスターにチェックアウトして、git merge my_branch
を実行しました。今、この変更をグローバルリポジトリと他のローカルリポジトリに反映させるにはどうすればよいですか?マージコマンドもそこに発行する必要がありますか?または、マージが自動的に同期されるようにプッシュ&プルする方法がありますか?
gitの哲学は何ですか?すべてのローカルリポジトリとグローバルリポジトリをコミットによって正確に同期させて、すべてのツリーがまったく同じになるようにする必要がありますか?または、個々のツリーが異なっていて、それに応じてリモートから引き出される必要があるブランチは何ですか?
(私は私が行っ必要何のためのコマンドを検索してGITを学んだ、しかし私は動作するようになっているかによって、非常に混乱しています)
私が作成したリモートリポジトリがあなたの後裸のリポジトリ
このような集中化されたワークフローは、セントラルリポジトリが裸のリポジトリであることに依存します。作業ディレクトリを持つリポジトリに移動することはできません。 – Gareth
@Gareth作成したリモートリポジトリは、裸のリポジトリでした。 – AnkurVj
@AnkurVjそれでは、あなたはうまくいくでしょう:)もちろん、他の誰にとっても役に立つメモです誰がこの疑問を抱えているのですか – Gareth