13

私は自分のプロジェクト ファイル リポジトリとしてGitHubを使用するのが好きです。しかし、このコンピューターの別のディレクトリ パスにリポジトリを作成できるとしたら、もっと興味があります。次に、新しい作業ディレクトリにリポジトリを作成します。

GitHubを ローカルに作成する予定でした。私はこれについて検索してきましたが、代わりにgitoliteなどを使用する必要があると多くの人が答えています。問題 私は Windows を使用しており、コマンド ラインを使用してすべての手順を実行したいと考えています。

作業ディレクトリ以外の別のディレクトリにリポジトリを作成し、そのリポジトリをローカル ネットワーク内の他の端末にクローンできるようにするには、どのコマンド ラインを入力すればよいですか。


LINKING TERMINAL を Windows ホストにリンクする

へのパスを持つリポジトリ ディレクトリを作成しましたUsers\username\GIT\project.git。コマンドラインgit clone file://{IPv4 server address}/Users/username/GIT/project.gitリターンを使用して端末をリンクしようとしています

fatal: '/{IPv4 server address}/Users/username/GIT/project.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

どうすればこれを解決できますか? 私のホストは Windows 7 で実行されており、接続端末は Ubuntu 12.04 LTS と MacOS Mavericks を使用します。


トラックを更新

  1. 質問の本文を更新しました。どのような手順を踏むべきかわかりません。
  2. ローカル ネットワークを介したリポジトリ共有について、LINKING TERMINAL to Windows Hostの質問を挿入しました。
4

3 に答える 3

15

git repo と local clone を作成する簡単な方法を尋ねているのではないでしょうか?

  1. を使用してgitリポジトリを作成しますgit init --bare
  2. を使用して他の場所から複製するgit clone --local /path/your/local/repo/

ローカル ネットワークの場合、Windows 共有またはその他のファイル共有が機能する場合があります。

しかし、単純な方法は機能するだけで、最善または適切な方法ではありません。GitHub にはプル リクエスト、イシュー トラック、権限制御機能はありません。git commit やその他の複雑な作業を管理するには、gitolite や gerrit などの管理システムが必要です。Windows システムでは機能しないものもあります。

無料のプライベート リポジトリのみが必要な場合は、bitbucket を使用します。

Windows 共有から複製します。

git clone file:////{IPv4 server address}/share_name/path_to_your_.git_dir

ホスト コンピューターでは、repo ディレクトリを「share_name」で共有する必要があります。例: repo.git の親ディレクトリ

見る:

于 2013-11-18T04:37:20.840 に答える
3

問題の説明を正しく読んだら、--local次のように clone コマンドのスイッチを使用して、ローカルの git リポジトリを別のフォルダーに簡単に複製できます。

git clone --local /git/source_repo/project /home/username/workdir/project

どこ

/git/source_repo/projectレポの安全なコピーです(必要に応じて個人的なものと呼んでくださいGitHub)。

/home/username/workdir/projectは作業フォルダです。頻繁にコミットしたい任意のフォルダーにすることができます

スイッチの説明:

- ローカル

クローン元のリポジトリがローカル マシン上にある場合、このフラグは通常の「git 対応」トランスポート メカニズムをバイパスし、オブジェクトと参照ディレクトリの下にある HEAD とすべてのコピーを作成してリポジトリをクローンします。.git/objects/ ディレクトリの下のファイルは、可能な限りスペースを節約するためにハードリンクされています。

リポジトリがローカル パスとして指定されている場合 (例: /path/to/repo)、これがデフォルトであり、 --local は基本的にノーオペレーションです。リポジトリが URL として指定されている場合、このフラグは無視されます (ローカル最適化は使用されません)。--no-local を指定すると、/path/to/repo が指定されたときにデフォルトが上書きされ、代わりに通常の git トランスポートが使用されます。

ハードリンクの代わりにコピーを強制するには (リポジトリのバックアップを作成しようとしている場合は望ましいかもしれません)、それでも通常の "git 対応" トランスポート メカニズムを回避するには、 --no-hardlinks を使用できます。

--ハードリンクなし

.git/objects ディレクトリの下にファイルをコピーして、ローカル ファイル システムのリポジトリからクローン作成プロセスを最適化します。

詳細については、ドキュメントを参照してください

更新 1 :

Windows で Git サーバーをセットアップするには、GitStackcommercialと呼ばれるこの (オープン ソース) ソフトウェアを試すことができます。

便利な GitStack リソース:

  1. GitStack のインストール手順
  2. Github の GitStackのソースコードへのリンク
于 2013-11-12T17:07:49.357 に答える
1

ローカルのベア リポジトリを作成するためのコマンドは、実際には非常に単純です。

git clone --bare my_project my_project.git
Initialized empty Git repository in /my/projects/my_project.git/

これらをローカルで (たとえば、USB 接続のストレージ デバイスなどから) 使用している限り、これですべてです。複製、プッシュ、プルなどのために、コマンドをそのレポに向けるだけです。

これらの手順はサーバーでセットアップするためのものですが、これらの手順はローカル リポジトリの作成にも非常に役立つことがわかりました: http://git-scm.com/book/en/Git-on-the-Server-Getting-Git-サーバー上

于 2013-11-12T17:07:56.710 に答える