git-filter-branch

    2热度

    1回答

    我需要分析整个历史中给定目录中的某些文件到底发生了什么,并且使用像git log the_directory这样的东西不够好。所以我尽管我会创建一个只包含相关文件的分支。 我写了一个perl脚本remove-all-but-stuff并验证它的工作正常。起初,我以为只是删除文件会做,但后来我固定它使用 system qw(git rm -r --ignore-unmatch --quiet), @

    0热度

    1回答

    我试图在git repo中移动一个子目录,成为一个新的存储库(保留现有的历史记录)。 以下是关于这方面的各种建议,我克隆了现有的repo,删除了远程,现在想使用git filter-branch命令从除新目录外的新repo中删除所有内容。但是当我运行该命令时,出现错误。 $ git filter-branch --subdirectory-filter myDirectory -- --all

    1热度

    1回答

    我正在准备svn2git迁移,而https://github.com/nirvdrum/svn2git一直非常有用,但我仍然以两个恶意代码作为结束。我已经能够清理其中大部分,但仍有一个。我有这样的历史: A1 - B1 - C1 - E1 - F1 \ A2 - B2 - C2 - D1 A1-C1和A2-C2是相同的,除了一个额外的子目录级别。 A2-C2实际上是svn迁移和

    1热度

    1回答

    我一直在遵循this answer from "Detach subdirectory into separate Git repository"上关于如何使用git subtree命令来将一个子目录拆分出git存储库的指示。它在第一个子目录上工作,但我的第二个目录被拆分为缺少提交。 我的目录树是这个样子: GitBooks | ------ SQLBasics | ------ RubyProg

    2热度

    1回答

    git-filter-branch有--env-filter,--tree-filter,--index-filter,--parent-filter,--msg-filter,--commit-filter,--tag-name-filter等 能所有这些可以一起使用,或者是一些mutatually排斥?例如,如果我想调整索引并更改提交者,我可以在同一次运行中使用--index-filter和-

    2热度

    1回答

    所以我们有一个用户添加,然后在她的工作区中删除一个大的文件目录它有两个不同的提交。然后,她将自己的变化推向了中央回购站,并且最终用户看起来像是一个noop。问题是我们的中央仓库因此大小增加了50倍。我已经尝试过滤分支的几件事情,它只是不工作。 因此,添加的文件夹位于根级别。它的名字叫。核心 我曾尝试基于链接以下过滤器分支:我已经试过像看起来 http://www.somethingorothers

    6热度

    2回答

    我们最近完成了从Mercurial到Git的转换,一切都很顺利,我们甚至能够获得所需的转换,以使存储库中的所有内容看起来/工作相对正确。我们增加了一个.gitignore,并开始进行。 但是,只要我们与我们的任何旧功能部门合并/合作,我们都会遇到一些极端的减速。稍微探索一下,我们发现.gitignore仅仅被添加到develop分支,当我们看到其他提交没有合并发展到他们的git chuggs,因为

    2热度

    3回答

    因此,我一直在寻找正确的方法来做到这一点,而我只是没有明确的命令行知识。 我有一个git repo,里面有很多资产。这就像我知道的主要罪。 回购已经变得太大了。我想清理它,这样我可以以编程方式从整个回购历史记录中删除HEAD中不存在的所有文件。我已经看到了可以指定文件路径的方法,但实际上,我正在说1000个以上的文件,这些文件已从我们的最终产品中删除,而我真的不想再购买我的repo文件。 更新:

    0热度

    1回答

    是否混帐提供一种方式来自动改写基于在.mailmap文件中指定的替代一个Git仓库历史的历史(见git help shortlog了解详细信息)? cd repository.git somecommand /path/to/.mailmap # <-- ???

    4热度

    2回答

    我可以使用什么命令在git存储库中查找空提交,即提交将被git filter-branch --prune-empty删除?