5

GIT のドキュメントを読みましたが、最新バージョンのコードを別のディレクトリに単純にコピーする (またはデプロイする) 方法がわかりませんでした。もちろんcopy -r code /path/to/another/dir、単に . そして、私はそれを必要としません。隠しファイル (または元のファイルのコピー) をすべて使わずに生のファイルをコピーする簡単な方法はありますか?

4

2 に答える 2

5

オプション 1: .git サブディレクトリを除外する

Git リポジトリの標準設定があると仮定すると、プロジェクトのルートにあるすべてのものをコピーするだけで、.gitサブディレクトリは除外できます。

どうやら、次を使用してbash端末でrsyncこれを行うことができます:

rsync -av --exclude='.git' source destination

しかし、 Windows でどうやってそれを行うことができるかわかりませんcopy

オプション 2: git アーカイブのエクスポート

別のオプションは、次を使用することgit archiveです。

git archive --format zip --output "output.zip" master -0

圧縮されていないアーカイブを提供します(-0は圧縮されていないことを示すフラグです)。これに関する問題は、アーカイブからファイルを抽出する必要があることです。

bash シェルや Cygwin などで Unix ツールにアクセスできる場合は、これらの Unix ツールをjanos's answerで使用することもできます。「git エクスポート」の実行方法 (「svn エクスポート」など)も参照してください。

# オプション 3: git ls-files を使用する

引数を間違った順序 (ソースではなく宛先ディレクトリとしてファイル) に渡しているため、編集で実際にこれに問題があるためcp、今のところスクラッチします。

もう 1 つのオプションは、Git が作業コピーで追跡しているすべてのファイルのリストを取得し、それらを引数として copy コマンドに渡すことです。Unix の例を次に示しcpます。

git ls-files | xargs cp <destination-root>
于 2013-08-14T05:33:58.987 に答える