web-dev-qa-db-ja.com

ローカルマシンにgitリポジトリを設定する

ローカルシステムにgitリポジトリをセットアップするにはどうすればよいですか? (私はwindozeボックスにいます)

これは私が達成しようとしている設定です:(すべてが私のローカルマシンにあります)

  • ホストフォルダー(中央リポジトリのように機能)
  • クライアントフォルダ

すべての開発をクライアントフォルダーで実行したい。完了したら、それをHostフォルダーにプッシュします。


これは私がやったことです:(Windowsでgit bashを使用して)

  • cd d:/ adinsert
  • mkdirホスト
    • cDホスト
    • git init

cDC:/

  • mkdirクライアント
    • cDクライアント
    • git init
    • git remote add Origin d:/ Host //クライアントフォルダーにいくつかのファイルを追加してコミットしました
    • git push originマスター

Originにデータをプッシュすると、gitは多くのリモートエラーを吐き出します。ただし、ホストを裸のgitにすると、正常にプッシュされます。

通常のgitとベアgitの違いがわかりません。マニュアルから、私が理解したのは、差分を格納するため、および元のファイルを格納したくない場合に、裸のgitが使用されていることだけでした。しかし、私はファイルをホストに保存したいと思います。どうやってやるの ?

16
brainydexter

「通常のgit」と「ベアgit」の違いは、ベアリポジトリにはnotに作業ディレクトリがあることです。回復が難しい問題に遭遇する可能性があるため、通常のgitリポジトリには決してプッシュしないでください。常に裸のリポジトリにプッシュします。

ファイルのコピーが表示される「ホスト」が必要な場合は、3番目のリポジトリをセットアップし、ホストから複製します。 Hostファイルを更新したいときはいつでも:

  • git Push作業ディレクトリからメインリポジトリを更新します
  • git pullホストディレクトリから、オリジンからプルする

ベアリポジトリにコミット後フックを設定して、2番目のステップを自動的に実行することもできます。

15
Greg Hewgill

clientディレクトリに.gitディレクトリ。 bareバージョンは基本的には.git作業コピーのないディレクトリの内容。

最も簡単な方法は、それを複製することです(別のリポジトリをセットアップしようとするのではありません)。

C:/から:

git clone d:/Host client

これは、「ホスト」リポジトリを複製し、「クライアント」と呼ばれるフォルダの下に保存することを意味します。

3
RDL

クライアントフォルダーに新しいgitリポジトリを作成しないでください。ホストリポジトリのクローンを作成します

cd client
git clone d:/adinsert/Host
1
Kristian