2

私はgitを初めて使用し、物事を理解し始めたばかりですリモート開発サーバーとローカルマシンでgitを理解しようとしています。リモート サーバーとローカル マシン (OSX) の両方に git を正常にインストールしました。私は Tower と呼ばれる Mac git クライアントを使用しています。ここに私のジレンマがあります...

リモートサーバーにベアリポジトリを正常に作成できますが、問題はありません。次に、Tower を開き、リモート リポジトリをローカル マシンにクローンしようとします。私もそれを行うことができました.リモートリポジトリをローカルマシンに正常に複製できます. ただし、新しいファイルをローカル ブランチに追加し、その変更をコミットしてリモート リポジトリにプッシュすると、成功したと表示されますが、リモート リポジトリの場所を確認すると、そこに新しいファイルはありませんか?

Tower は、ファイルがリモート リポジトリに存在することを示しています。そのリポジトリを新しいローカル ブランチにチェックアウトすると、以前のコミット履歴とファイルが正常にプルされますが、ファイルがリモート リポジトリに保存されている場所が見つかりません。 .

ここで何が欠けていますか?どんなアドバイスでも大歓迎です、ありがとう!

4

1 に答える 1

2

それらは Git オブジェクトとして保存されています。ベア リポジトリには作業ディレクトリがないため、サーバーにファイルがチェックアウトされることはありません。データはobjects、オブジェクトのコンテンツの SHA1 ハッシュをキーとして、ディレクトリの下にある Git 独自のコンテンツ アドレス指定可能なファイル システムに格納されます。オブジェクトには、ブロブ (ファイル データ)、ツリー (ファイルとツリーのリスト)、およびコミット (作成者名、タイムスタンプ、コミット メッセージ、親コミット オブジェクト ID、およびコミットに対応するツリー オブジェクト ID などのメタデータ) が含まれます。

(オブジェクトは、ディレクトリの下にあるパックにまとめることもできますobjects/pack。)

于 2011-08-28T07:56:02.993 に答える