所以我想导出从特定提交ID开始到今天的所有文件(可能包括后续提交),所以我这样做:gitdiff-tree-r--no-commit-id--name-only--diff-filter=ACMRT$commitId|xargstar-rf输出.tar但是,似乎此输出文件仅在指定的提交ID($commitId)中被修改。虽然我正在寻找的是它应该导出从指定提交ID开始到今天的所有文件(包括在此期间可能发生的任何进一步提交)。 最佳答案 gitdiff-z--name-only--diff-filterACMRT${commitId}~
我正在使用gitlab。当我进入界面时,我可以在每个分支上以zip、tar或其他格式下载源代码。我正在制作rpm规范文件,我需要能够使用命令行下载tarball。因为我添加了我的rsakey,所以我可以毫无问题地进行gitclone:gitclonehttp://gitlab/group/project.gitCloninginto'project'...remote:Countingobjects:1885,done.remote:Compressingobjects:100%(826/826),done.remote:Total1885(delta1194),reused1496(
我可以通过分两步将其推送到存储库来备份我的本地.git:gitpush--all~/gitrepogitpush--tags~/gitrepo我可以使用gitbundle备份它.我可以通过简单地复制整个目录或将其归档(压缩!)来备份它:tar-zcvfgitrepo.tgz.git并且可能有additional备份entire的方法本地.git.现在的问题是它们是否真的等价?(例如,不推送logs子目录)gitpush方法与gitbundle相比有什么优势?tar-zcvf可以被认为是“完美的git备份”吗? 最佳答案 我使用Git
我正在设置部署脚本。基本流程是:将更改推送到服务器上的裸存储库然后根据新的标签为发布创建一个新的文件夹。使用gitarchive将文件移动到发布目录运行一些迁移脚本并将其上线(如果一切成功)。问题是我的存储库包含一个子模块,它没有被放入存档中,因此也没有被放入发布目录中。我看过git-archive-all,但这不适用于裸存储库。如果不行,我正在考虑,使存储库不裸露,并更新工作副本,这将允许我使用git-archive-all。或者在服务器上有子模块的第二个裸存储库,我可以从中获取存档(必须对此进行调查以确保我获得正确的修订版)。 最佳答案
我正在使用git-archive来归档git仓库中的一个子目录,如下所示:gitarchive-o../subarchive.zipHEADsubdir/*然而,生成的存档保持subdir/目录结构,即内容是:subdir/whatever.jsmorestuff.js当我真的想要存档根目录下的whatever.js和morestuff.js时。怎么办?谢谢。 最佳答案 你可以这样做:gitarchive-o../subarchive.zipHEAD:subdir顺便说一句,如果您以这种形式使用它,那么使用该命令并查看它会生成什么的
注意:从tar版本1.27或更高版本开始覆盖符号链接(symboliclink)下面我试图说明问题到底是什么。dirtmp1的内容file1.txtfile2.txt创建上述目录的代码rm-f-rdirtmp1&&mkdirdirtmp1&&cddirtmp1&&touchfile1.txt&&touchfile2.txt&&ls-al创建符号链接(symboliclink)cd..ln-sdirtmp1/symlink1现在创建包含名称为symlink1的tar文件mkdirdirtmp1cddirtmp1mkdirsymlink1&&cdsymlink1&&touchiNeedTh
我想知道如何将tar.gz文件打包成shell脚本,就像idk**.bin那样。所以我可以在一个shell文件而不是tar.gz中交付程序 最佳答案 有一个LinuxJournalarticle详细解释如何执行此操作,以及用于打包有效载荷的代码等。正如EtanReisner在他的评论中所说,提取/安装脚本知道如何切断其尾部以获得先前连接的有效载荷。以下是其工作原理的示例:#!/bin/bash#aself-extractingscriptheader#thiscanbeanypreferredoutputdirectorymkdir
从广义上讲,我想要的是直接的tar到tar转换,其中结果的根仅包含原始目录的特定目录子树。举例说明,假设我只想要gitwebdirectory来自git的存储库。运行$gitarchive--prefix=git-gitweb/mastergitweb|tartf-给予git-gitweb/git-gitweb/gitweb/git-gitweb/gitweb/INSTALLgit-gitweb/gitweb/Makefilegit-gitweb/gitweb/READMEgit-gitweb/gitweb/gitweb.perlgit-gitweb/gitweb/static/git
关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。这个问题似乎不是关于aspecificprogrammingproblem,asoftwarealgorithm,orsoftwaretoolsprimarilyusedbyprogrammers的.如果您认为这个问题是关于anotherStackExchangesite的主题,您可以发表评论,说明问题可能在哪里得到解答。关闭5年前。Improvethisquestion我收到了.tar.gz类型的文件,但我使用的应用程序只接受.zip文件。我需要一种在不丢失任何数据的情况下将.tar.gz文件转换为
我正在尝试使用bash脚本和CRON任务根据昨天的日期备份集合文件夹。网站的文件夹结构是这样的:/home/admin/domains/mysite.com/public_html/media/2014/March我想将该文件夹备份到此文件:/home/admin/domains/mysite.com/public_html/bk/mediabackup-March-2014.tar.gz因此创建了这个脚本:#!/bin/bashNOW=$(date-d"12hoursago"'+%m')NOWYEAR=$(date-d"12hoursago"'+%Y')MONTHS=(DummyJa