git subtree 高频使用方法

subtree 高频使用方法

官网


添加新的子项目

subtree

git subtree add --prefix=example-submodule https://github.com/githubtraining/example-submodule master --squash

subtree 命令添加一个子目录,其中包含来自example-submodule. 最常见的做法是使用--squash选项将子项目的历史合并到一个提交中,然后将其嫁接到父项目的现有树上。您可以省略--squash保留子项目指定分支的所有历史记录的选项。

查看子项目的差异

subtree

无需特殊命令

使用子项目克隆存储库

subtree

无需特殊命令

引入超级项目更新

subtree

无需特殊命令

改变分支

subtree

无需特殊命令

引入子项目更新

subtree

git subtree pull --prefix=example-submodule https://github.com/githubtraining/example-submodule master --squash

您可以通过将子树 URL 添加为远程来缩短命令:

git remote add sub-remote https://github.com/githubtraining/example-submodule.git

master您可以通过替换为所需的参考(例如stablev1.0)来添加/拉取其他参考。

对子项目进行更改

在大多数情况下,最佳做法是在子项目存储库的单独克隆中进行更改并将它们拉入父项目。如果这不切实际,请遵循以下说明:

subtree

不需要特殊命令,更改将在父项目分支上提交。

可以创建对子项目和父项目的混合更改的提交,但通常不鼓励这样做。

将更改推送到子项目存储库

subtree

git subtree push --prefix=example-submodule https://github.com/githubtraining/example-submodule master

高效配置

subtree

我们已经知道了git subtree 的命令的基本用法,但是上述几个命令还是显得有点复杂,特别是子仓库的源仓库地址,特别不方便记忆。
这里我们把子仓库的地址作为一个remote,方便记忆:

git remote add -f libpng https://github.com/test/libpng.git
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值