如何git归档项目目录

时间:2012-09-01 05:32:38

标签: git

我的项目目录结构如下:

my_project/
    .git/
    a_dir/
    another_file.py
    some_file.py

当我运行git archive链接时:

git archive --format=tar.gz -o ../my_project-0.1.0.tar.gz  v0.1.0

它存档my_project的内容,但不存档my_project目录。当我解压缩归档时,默认情况下会在当前工作目录中提取所有目录和文件。我希望我的存档扩展到名为my_project-0.1.0的子目录。我可以在git命令行上执行此操作吗?我的存储库设置错了吗?

2 个答案:

答案 0 :(得分:3)

使用--prefix。来自the docs

  

--prefix=<prefix>/
  将<prefix>/添加到存档中的每个文件名。

因此你可以这样做:

git archive --format=tar.gz --prefix=my_project/ -o ../my_project-0.1.0.tar.gz v0.1.0

尾随/非常重要。

答案 1 :(得分:0)

我会回答我自己的问题。

像这样执行git存档:

git archive --format=tar.gz --prefix=my_project-0.1.0/ -o ../my_project-0.1.0.tar.gz  v0.1.0

注意前缀的尾随/后面。