greencape / monorepo
该工具是git命令的部分替代品,利用`git-subtree`来管理monorepos。
1.0.1
2022-08-05 13:46 UTC
README
该工具是git命令的部分替代品,利用git-subtree
来管理monorepos。
安装
命令
mono init
初始化一个新的项目。创建一个本地git仓库,并执行一个空的初始提交。如果您已经在git下并拥有一个干净的工作树,则不需要初始化项目。
概要
$ mono init
mono add
为存储在<directory>
中的<url>
仓库添加(创建、导入)名为<name>
的子项目。
概要
$ mono add [--name=<name>] <directory> <url>
mono split
将<directory>
的内容转换为名为<name>
的子项目,并拥有自己的仓库在<url>
。
概要
$ mono split --dir=<directory> <name> <url>
mono rename
将名为<old>
的子项目重命名为<new>
。所有子项目的配置设置都将更新。
概要
$ mono rename <old> <new>
mono merge
将名为<name>
的子项目集成到主项目中。所有子项目的配置设置都将移除。
概要
$ mono merge <name>
mono remove
移除名为<name>
的子项目。所有子项目的配置设置都将移除。
概要
$ mono remove <name>
mono pull
从<commit>
获取并合并最近的变化到<name>
子项目中。这不会移除您自己的本地更改;它只是将这些更改合并到最新的<commit>
。使用--squash
,只创建包含所有更改的一个提交,而不是合并整个历史。
如果您使用--squash
,合并方向不一定是向前的;您可以使用此命令从v2.5回滚到v2.4,例如。如果您的合并引入了冲突,您可以使用常规方式解决它。
概要
$ mono pull [--squash|--no-squash] <name> [<commit>]
mono push
将名为<name>
的子项目推送到配置的仓库和<ref>
。这可以用来将子项目推送到远程仓库的不同分支。
概要
$ mono push <name> [<ref>]
另请参阅