190

ディレクトリgitを複製しないなど、複製を行うときに渡すフラグはありますか? そうでない場合は、クローン後にディレクトリ.gitを削除するフラグはどうですか?.git

4

5 に答える 5

270

使用する

git clone --depth=1 --branch=master git://someserver/somerepo dirformynewrepo
rm -rf ./dirformynewrepo/.git
  • depth オプションは、そのレポを取得するために可能な限り最小限の履歴をコピーするようにします。
  • ブランチ オプションはオプションであり、指定されていない場合はデフォルトのブランチが取得されます。
  • 2 行目で、ディレクトリdirformynewrepoが Git リポジトリではなくなります。
  • 再帰的なサブモジュールのクローンを作成している場合、深さとブランチのパラメーターはサブモジュールに適用されません。
于 2012-07-16T04:32:59.567 に答える
34

ファイルのみが必要なため、それを git リポジトリとして扱う必要はありません。

rsync -rlp --exclude '.git' user@host:path/to/git/repo/ .

これはローカル パスとリモート ssh/rsync パスでのみ機能します。リモート サーバーが git:// または https:// アクセスのみを提供する場合は機能しない可能性があります。

于 2012-07-16T03:04:30.783 に答える
20

または、Node.jsがインストールされている場合は、次のコマンドを使用できます。

npx degit GIT_REPO

npxNode が付属しており、最初にインストールせずにノードベースのバイナリ パッケージを実行できます (または、最初degitに を使用してグローバルにインストールできますnpm i -g degit)。

Degitは、Svelte と Rollup の作成者である Rich Harris によって作成されたツールであり、git フォルダーを保持せずにリポジトリを複製することにより、新しいプロジェクトをすばやく作成するために使用します。ただし、一度レポを複製するために使用することもできます...

于 2020-03-18T22:10:31.453 に答える
-1

あなたはいつでもできる

git clone git://repo.org/fossproject.git && rm -rf fossproject/.git
于 2012-07-16T02:34:17.787 に答える