ここには、「フォーク」とは何かに関して誤解があります。フォークは実際には、ユーザーごとのブランチのセットにすぎません。フォークにプッシュすると、実際には元のリポジトリにプッシュされます。これが唯一のリポジトリであるためです。
フォークにプッシュし、コミットを記録してから元のリポジトリに移動し、コミット ID を使用してこれを試すことができます。コミットが元のリポジトリの「内」にあることがわかります。
これは非常に理にかなっていますが、明らかではありません (最近偶然発見しただけです)。
John がリポジトリ SuperProject をフォークすると、実際には、ソース リポジトリのすべてのブランチが「John.master」、「John.new_gui_project」などの名前で複製されるように見えます。
GitHub は「John」を「隠します」。私たちから、GitHub にリポジトリの独自の「コピー」があるという錯覚を与えてくれますが、必要もありませんし、必要もありません。
したがって、私のフォークのブランチ「マスター」は実際には「Korporal.master」という名前になっていますが、GitHub UI はこれを明らかにせず、「マスター」のみを表示します。
これは、私が最近行ってきたことに基づいて、とにかくボンネットの下で起こっていると思うことのほとんどであり、あなたがそれを熟考すると、非常に良いデザインです.
このため、Microsoft が Visual Studio Team Services に Git フォークを実装するのは非常に簡単だと思います。