在我的搜索引擎上查找文档时git-subtree将显示https://git-scm.com/docs/git-subtree的链接,但是当我访问该链接时,我会被重定向到https://git-scm.com/docs。
子树发生了什么?是已弃用还是这只是一个错误?如果它被弃用,是否有一个带有理由的公告以及可能取代它的建议(例如是否有计划引入git-subrepo)?
这可能是一个非常天真的问题,但我试图理解Git的Subtree和PHP的Composer依赖管理之间的效用差异.在转储Git子模块后我开始使用Git Subtrees.但现在有Composer(用于PHP).由于我的大部分项目都是基于PHP的,我正在考虑转储Subtrees以支持Composer.
例如,我有多个Wordpress站点.我想拉Wordpress本身和我想要使用的插件.我可以用Git Subtrees和Composer实现这一点,对吗?
如果我没有用例在上游子文件夹中提交/推送代码,但只希望将最新/特定版本提取到子文件夹中,那么Subtree和Composer是否提供相同类型的实用程序?
在我的用例中,我觉得Composer胜过Git Subtree更容易使用,更容易在子文件夹中获得另一个/更新版本的脚本,而不会将这些拉出的子文件夹文件提交到Git repo中.
对我的这种理解的任何想法?这种策略有问题吗?或者两者完全不同,没有任何相似之处?
我们遇到了以下命令的问题:
git subtree pull --prefix=Root squash root master
Run Code Online (Sandbox Code Playgroud)
正在将代码从根存储库中拉入。目录而不是Root目录。
该命令在过去运行良好。唯一的区别是,自从完成拉动以来已经有一段时间了,因此有很多要合并的更改。
我似乎找不到关于“ git subtree”的任何正式文档,但是与“ git pull -s subtree”一起使用的子树合并策略有很多。有什么区别(如果有)?
我正在尝试通过执行与我的子树的更新同步
git pull -s subtree react master
但是整个存储库被复制到错误的文件夹中,而不是我在添加新存储库作为子树时提到的文件夹。
如何删除子树或更改子树的目录?
更重要的是新的发明 - 蹦子树合并策略(不是新的git-子树命令)或git的子模块的命令(或者潜在的机制,如果有一个单独的一个对称的Git树指令相对于合并策略).
Git发行版中首先包含哪些内容?
链接到相关Git ML帖子的奖励积分.
我试过从Git提交历史中挖掘这些信息,但是在2007-2008两个功能中都丢失了.
我有一个很大的git repo,我想把它分成2.我能够使用"git filter-branch"或"git subtree split"来完成这个,但是这两种方法都创建了全新的commits-id(SHA).我知道我们正在重写历史,它会改变commit-id.
但是,即使在拆分回购后,我的要求也需要具有相同的commit-id.可能吗?
例:
有下面提交的git repo foo-bar.git
*foo-bar.git*
1fd3dsg refs #1 change-1 to foo
4sad2as refs #2 change-1 to bar
3edsads refs #3 change-2 to foo
5adsggh refs #4 change-2 to bar
Run Code Online (Sandbox Code Playgroud)
现在我们将repo foo-bar.git拆分为foo.git和bar.git.现在foo.git将获得为foo和bar.git做的所有提交将获得为bar提交的所有提交,但是他们的commit-id已经改变.
我得到了什么:
*foo.git*
s43dfsa refs #1 change-1 to foo
a234s2f refs #3 change-2 to foo
*bar.git*
1s3ds3q refs #2 change-1 to bar
3re2ef2s refs #4 change-2 to bar
Run Code Online (Sandbox Code Playgroud)
我期待的是什么.
*foo.git*
1fd3dsg refs #1 change-1 to foo
3edsads refs #3 change-2 to foo
*bar.git*
4sad2as …Run Code Online (Sandbox Code Playgroud)