gpt4 book ai didi

Git 子树工作流程

转载 作者:太空狗 更新时间:2023-10-29 13:52:22 24 4
gpt4 key购买 nike

在我当前的项目中,我使用的是开源论坛 ( https://github.com/vanillaforums/Garden )。我正计划做这样的事情:

git remote add vanilla_remote https://github.com/vanillaforums/Garden.git
git checkout -b vanilla vanilla_remote/master
git checkout master
git read-tree --prefix=vanilla -u vanilla

这样我就可以更改 vanilla 文件夹(比如更改配置)并将其提交到我的 master 分支,我也可以切换到我的 vanilla 分支来获取更新。我的问题是当我尝试将分支 merge 在一起时

git checkout vanilla
git pull
git checkout master
git merge --squash -s subtree --no-commit vanilla
git commit -a -m "update commit"

问题是“更新提交”在我的提交之上并“覆盖”了我的更改。我宁愿在更新之上重播我的提交。有没有一种简单的方法可以做到这一点?我不太擅长 git,所以也许这是错误的方法。另外,我真的不想将我的历史与普通历史混为一谈。

最佳答案

我完成了这个方案:

<醇>
  • 在我的开发分支上处理子树中的文件。

  • 用压扁的开发提交更新子树分支:

    git merge -s subtree --squash --no-commit development

  • 使用远程存储库更新子树分支。

  • 使用压缩的子树 提交更新开发:

    git merge --squash -s subtree --no-commit subtree

  • 关于Git 子树工作流程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6475083/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com