gpt4 book ai didi

git - 如何有效地 rebase 和推送本地 git 分支?

转载 作者:太空狗 更新时间:2023-10-29 12:44:42 25 4
gpt4 key购买 nike

我们正在使用我克隆的中央 git 存储库,我正在本地分支上工作。

当我想让我的更改在中央存储库中可用时,我必须发出以下命令(从 mybranch 开始):

#Stash local changes not yet ready for checkin
git stash

#Make sure we have all changes from the central repository
git checkout master
git pull

#Rebase local changes
git checkout mybranch
git rebase

#Push changes
git checkout master
git merge mybranch
git push

#Back to my branch and continue work
git checkout mybranch
git stash apply

我想知道是否可以使用更少的 git 命令来实现相同的目标。 mastermybranch 之间的几次切换特别烦人,因为我们的存储库相当大,所以它们需要一些时间。

最佳答案

如果您不需要更新本地主分支,则无需触及它,这似乎导致了很多不必要的分支切换。

这是一个更精简的工作流程。

git fetch

# ensure that everything is committed
# perhaps git commit -a is required...

git rebase origin/master


# If you don't want to push the very latest commits you might
# want to checkout a parent or ancestor of the current commit
# to test that the proposed commit passes tests, etc.
# e.g. git checkout HEAD~n

# push to the remote master
git push origin HEAD:master

# if you checked out a parent, go back to the original branch
git checkout mybranch

如果您对父级提交非常有信心,您可以跳过 checkout 步骤并执行以下操作,但我强烈建议您不要这样做。发布未经测试的提交不是“最佳实践”。

git push origin HEAD^:master

关于git - 如何有效地 rebase 和推送本地 git 分支?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/945372/

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