我的父存储库包含主分支,开发,发布和功能分支。我想创建一个只有master,development和release分支的fork。
这可能与GIT有关。我如何实现这一目标?
答案 0 :(得分:0)
这取决于你只想要某些分支的意思。或者更重要的是,你希望从只拥有某些分支机构中获得什么。
如果它只是在git branch --list --all
时想要一个较短的引用列表那么简单,那么Alejandro Montilla的建议(fork然后删除分支)应该可以工作。
如果父级仓库在未合并的分支中具有相当大的大小,并且您想要回收该空间,那就更难了。删除分支后,您必须确保gc
清除它。您始终可以gc
本地仓库,但当它托管在服务上时,它们可能会也可能不会控制垃圾收集。
也许你想要一些更复杂的东西......很多人似乎找到了一个历史,它保留了原来的分支拓扑结构“混乱”,并且他们想要“清理它” - 这是各种变基操作背后的动机。这不仅需要摆脱合并的分支,还需要摆脱合并历史中的(一行)提交。对现有历史记录执行此操作并不是一种简单的方法(如果这样做,生成的仓库和父仓库之间的任何关系都将不可避免地丢失)。因此,如果这就是您所追求的目标,您可以考虑重新构建问题,以便如何为历史记录提供更好的日志输出。