草庐IT

compiled_filter

全部标签

git - 使用 'git filter-branch' 来更正最后 N 次提交中的提交者日期?

我最近需要使用“gitam”向我的存储库应用16个补丁,并且我小心翼翼地为每个补丁使用“--committer-date-is-author-date”。但是,我还需要为每个am'd补丁调整提交消息,并且——在我完成所有16个补丁之后——我发现“commit--amend”增加了每个补丁的提交者时间戳。我最终了解到我的问题可以一举解决gitrebase--committer-date-is-author-date但在尝试使用“filter-branch”解决我的问题之前,它没有用。我很好奇我做错了什么。这是我的尝试:gitfilter-branch--env-filter\'expor

git - 在 filter-branch 之后将每个人重新定位到更改的 git 历史记录

我们的git存储库在其历史记录中有一堆不再需要的大文件。我想使用ProGit中解释的过滤器分支技术删除它们:http://git-scm.com/book/en/v2/Git-Internals-Maintenance-and-Data-Recovery然后我将使用gitpush--forceall将其发送到我们的共享存储库,如下所述:UpdateadevelopmentteamwithrewrittenGitrepohistory,removingbigfiles但是。ProGit说我需要让每个人都rebase,因为我正在改变历史。我们只是很少使用rebase,通常只是作为一种替代的

git filter-branch 被拒绝后的 git push

我将一个git仓库分成3个。我使用了Detach(move)subdirectoryintoseparateGitrepository分离文件夹并将它们成功推送到新的gitrepos。在现有存储库中,我使用以下命令清除移动的目录。gitfilter-branch-f--index-filter"gitrm-q-r-f--cached--ignore-unmatchlib/xxx/$REPO"--prune-emptyHEAD现在当我做gitst在原始repo协议(protocol)中,我得到:#Onbranch1.5.0nothingtocommit(workingdirectoryc

git - 如何从 'git filter-branch' 获取旧的->新的重写提交 SHA 列表?

运行gitfilter-branch后,我如何获得由filter-branch重写为新的对应提交SHA的旧提交SHA列表?例如,类似于:b19fd985746c1f060f761d42d353e387bec243fb->c8ab40ef9bae3b58642a8d1e5b90720d093a60b5c5ebba1eeb92ca76c0effa32de14178ec7f07db6->4d5a9958b98dbcfa47ce1354bb2af4cc77904639705f71543235b872ca3e1067538e36d14044429d->d2aafbd6e5b91955b62dee

git - 标签可以在 git filter-branch 和 rebase 之后自动移动吗?

编辑问题归结为“gitrebase也可以被指示为标签rebase吗?”但对原始问题的回答也会有所帮助。询问Howtoprependthepasttoagitrepository?我关注了theseinstructions.编辑>然后我重新定位以包含一个只在快照中的文件,参见here./edit>由于历史被重写(由gitfilter-branch或gitrebase或两者?)所有标签仍在原始时间线上*,我想以某种方式将它们移动到新的一个。我想我让所有带有标签的提交消息都是独一无二的,这样我就可以尝试编写一个使用它们的脚本,但是更通用的gitmove-tags会更好。那么,有没有办法解决“

git - 使用 git-filter-branch 提取多个目录

我有一个很大的存储库,目前在顶级子文件夹中包含多个项目,比如/a、/b、/c和/d。现在我想将该存储库分成两个不同的存储库:一个包含/a和/b,另一个包含/c和/d。我知道gitfilter-branch--subdirectory-filter,它非常适合提取单个目录,但它似乎不能一次提取多个目录。我也知道gitfilter-branch--prune-empty--tree-filter,它允许我删除所有内容,但两个想要的目录。这感觉不完全正确,因为我必须手动指定所有可能存在的顶层目录。有没有更好的方法从一个大仓库中提取两个目录?PS:当然,使用gitfilter-branch以外

git - 在一系列提交上运行 filter-branch

gitfilter-branch--env-filter'exportGIT_AUTHOR_EMAIL="foo@example.com"exportGIT_AUTHOR_NAME="foo"'--commita..commitb您想重写哪个ref的结果?看来filter-branch不允许您使用范围符号使用两个任意引用之间的范围。如果这种方法不可行,那么在一系列连续提交(分支历史中的某处)上运行过滤器的最直接的方法是什么。 最佳答案 正如@kan所说,您不能在历史中间应用过滤器分支。你必须从你已知的提交申请到历史结束gitfilt

git - rsync 根据 .gitignore & .hgignore & svn :ignore like --filter=:C 排除

Rsync包含一个漂亮的选项--cvs-exclude以“以与CVS相同的方式忽略文件”,但CVS已经过时多年。有没有办法让它也排除现代版本控制系统(Git、Mercurial、Subversion)会忽略的文件?例如,我有很多从GitHubcheckout的Maven项目。通常它们包括一个.gitignore至少列出target,默认的Maven构建目录(可能出现在顶层或子模块中)。由于这些目录的内容完全是一次性的,而且它们可能比源代码大得多,所以我想在使用rsync进行备份时将它们排除在外。当然我可以明确地--exclude=target/但这会意外地抑制不相关的目录,这些目录恰好

linux - autoconf 在 Linux Mint 上提示 "C compiler cannot create executables"

我正在尝试在32位和64位安装上安装LinuxMint16'petra'。我的电脑没有互联网连接,因此必须手动安装所有附加软件。作为一名开发人员,我认为我会尝试使用wxWidgets安装代码块,因此请按照以下位置的说明进行操作:http://wiki.codeblocks.org/index.php?ti为了执行安装,我似乎需要先决条件,所以请按照在上找到的说明进行操作https://developer.gnome.org/gtk3/stable...lding.html下载glib'stuff',解压并运行配置。正是在这一点上,事情失败了。我在终端中收到一条消息,指出C编译器无法创建

Linux Yum 致命 Python 错误 : pycurl: libcurl link-time version is older than compile-time version

所以这个错误让我发疯,我在网上搜索了很多次,运行了一些东西但没有结果。使用yum时出现以下错误。[root@texaspycurl-7.19.0]#yumupdateFatalPythonerror:pycurl:libcurllink-timeversionisolderthancompile-timeversionAborted[root@texaspycurl-7.19.0]#rpm-qa|greppycurlpython-pycurl-7.19.0-8.el6.i686[root@texaspycurl-7.19.0]#rpm-qa|grepcurlcurl-7.19.7-26