草庐IT

git - 重置 git 子树中的差异计数

使用git-subtree,在运行gitsubtreesplit时要计算的差异数量会随着时间的推移而增加,达到可能导致拆分花费很长时间的值。解决这个问题的一种方法是gitrm路径,提交它,然后gitsubtreeadd它回来。是否有更简单/更清晰的重置子树的方法? 最佳答案 在进行拆分时,可以使用--rejoin选项,它的存在似乎正是为了重用已经发生的拆分。--rejoin::Thisoptionisonlyvalidforthesplitcommand.Aftersplitting,mergethenewlycreatedsynt

git - "Fatal: bad object"使用 git 子树推送时出错

这是一个新手问题,但我正处于解决这个问题的Guzzle之下。我继承了一个git子树的奇怪问题,似乎是repo损坏。场景如下:项目B正在使用基于git的项目A的子树。部分部署脚本使用将子树推送到项目B的存储库:gitsubtreepush-Psub/path/name--squashgit@github.com:MyCo/project_b.gitprojectb_branch它开始推送提交并失败"fatal:badobject{sha}"我在源代码库的git日志中搜索了SHA。它出现在提交中:git-subtree-dir:app/assets/uigit-subtree-split:

git - "Fatal: bad object"使用 git 子树推送时出错

这是一个新手问题,但我正处于解决这个问题的Guzzle之下。我继承了一个git子树的奇怪问题,似乎是repo损坏。场景如下:项目B正在使用基于git的项目A的子树。部分部署脚本使用将子树推送到项目B的存储库:gitsubtreepush-Psub/path/name--squashgit@github.com:MyCo/project_b.gitprojectb_branch它开始推送提交并失败"fatal:badobject{sha}"我在源代码库的git日志中搜索了SHA。它出现在提交中:git-subtree-dir:app/assets/uigit-subtree-split:

git - 从分支添加 git 子树

我正在尝试使用gitsubtreeadd向我的项目添加一个repo(称为cow)。特别是,我想添加分支stable(不是master分支)。我试过:gitsubtreeadd-Pcowhttps://github.com/geoffryan/cow.gitstable但这返回了错误'stable'doesnotrefertoacommit.我也试过:gitsubtreeadd-Pcowhttps://github.com/geoffryan/cow.gitcow/stable'cow/stable'doesnotrefertoacommit.和:gitsubtreeadd-Pcowht

git - 从分支添加 git 子树

我正在尝试使用gitsubtreeadd向我的项目添加一个repo(称为cow)。特别是,我想添加分支stable(不是master分支)。我试过:gitsubtreeadd-Pcowhttps://github.com/geoffryan/cow.gitstable但这返回了错误'stable'doesnotrefertoacommit.我也试过:gitsubtreeadd-Pcowhttps://github.com/geoffryan/cow.gitcow/stable'cow/stable'doesnotrefertoacommit.和:gitsubtreeadd-Pcowht

Git 在将更新 merge 到我的子树时感到困惑

我们之前在主存储库中使用了许多子模块,但为了提高项目的可维护性,我们启动了一个实验分支,我们将它们全部替换为子树。这很好用-但现在当我尝试更新其中一个子树时,它错误地将更新merge到一个完全错误的目录中,该目录甚至不是子树。主存储库,其中分支“子树”包含实验分支,是:git://github.com/hugowetterberg/goodold_drupal.git要merge更新的存储库来自:git://github.com/voxpelli/drupal-oembed.git边做边merge:gitmerge-ssubtreeoembed/master更新应merge到的路径:s

Git 在将更新 merge 到我的子树时感到困惑

我们之前在主存储库中使用了许多子模块,但为了提高项目的可维护性,我们启动了一个实验分支,我们将它们全部替换为子树。这很好用-但现在当我尝试更新其中一个子树时,它错误地将更新merge到一个完全错误的目录中,该目录甚至不是子树。主存储库,其中分支“子树”包含实验分支,是:git://github.com/hugowetterberg/goodold_drupal.git要merge更新的存储库来自:git://github.com/voxpelli/drupal-oembed.git边做边merge:gitmerge-ssubtreeoembed/master更新应merge到的路径:s

git 子树 : possible to change subtree branch/path in a forked repository?

在存储库A中,文件夹sub包含为存储库S的git子树-指向master分支机构。我已经将存储库Afork到F中。现在我想在F中执行以下操作之一:更改sub以使用S的不同分支(即develop分支)或者:更改sub以完全使用不同的存储库其中任何一种可能吗?如果可能,如何实现?会有任何我应该知道的副作用吗?当我merge更改(pull请求)时,如何确保我的子树更改不会在存储库A中更新?我的意思是除了隔离提交。 最佳答案 如果您使用gitsubtree(而不是gitsubmodule)创建子树,那么它只是一个普通目录。要将它切换到另一个分

git 子树 : possible to change subtree branch/path in a forked repository?

在存储库A中,文件夹sub包含为存储库S的git子树-指向master分支机构。我已经将存储库Afork到F中。现在我想在F中执行以下操作之一:更改sub以使用S的不同分支(即develop分支)或者:更改sub以完全使用不同的存储库其中任何一种可能吗?如果可能,如何实现?会有任何我应该知道的副作用吗?当我merge更改(pull请求)时,如何确保我的子树更改不会在存储库A中更新?我的意思是除了隔离提交。 最佳答案 如果您使用gitsubtree(而不是gitsubmodule)创建子树,那么它只是一个普通目录。要将它切换到另一个分

Git:子树 merge 到一个深度嵌套的子目录中?

我正在尝试使用git的子树merge策略,其中我要merge到的子目录嵌套得相当深——目前有四层深。我遵循了指示here要将模块存储库添加为远程,请运行gitread-tree以将远程代码放入我本地存储库的子目录中,然后提交这些更改。当我尝试将更改从远程pull并merge到我的主项目的master分支时,我的问题就来了。上面页面的第5步建议使用-s子树开关进行gitpull。当我的子目录是一层、两层或三层而不是四层时,这对我来说是正确的。这是merge到2层深的子目录的结果。可以看到sites/all/中的README文件已经正确更新。在我的远程仓库中,自述文件位于根目录中。$git