git 如何将开发人员分支重置为主分支

huus2vyu  于 2022-12-25  发布在  Git
关注(0)|答案(6)|浏览(270)

我有develop & master分支,我的develop分支现在很乱,我想重置它,使它作为我的master的副本。我不确定是否合并masterdevelop将使他们两个相同。尝试合并后,我得到了许多冲突,我解决了他们使用:

git checkout develop
git merge origin/master
//got many conflicts
git checkout . --theirs

这是否足以使develop分支成为与master完全相同副本?
谢啦,谢啦

46qrfjad

46qrfjad1#

如果希望两个分支相同,则

// from Develop and assuming your master is up to date with origin/master
git reset --hard master
6qqygrtg

6qqygrtg2#

如果要使developmaster相同,最简单的方法就是重新创建指针:

git branch -f develop master

或者,如果您已经 checkout 了develop

git reset --hard develop master

注意这两个选项都会删除develop中所有不在master中的历史记录,如果这样做不合适,你可以创建一个镜像master最新状态的提交来保存它:

git checkout develop
git merge --no-commit master
git checkout --theirs master .
git commit
noj0wjuj

noj0wjuj3#

重置上次提交

git reset HEAD~
bsxbgnwa

bsxbgnwa4#

例如,使staging分支与develop相同,可以简单地重新创建指针:
首先,通过运行以下命令,确保本地开发分支使用origin/develop更新:git checkout develop && git pull origin develop
然后 checkout 目标分支(在本例中为staginggit checkout staging
最后但并非最不重要的是重置目标分支git reset --hard develop
强行推送更改(git会抱怨本地指针地址不同)git push -f
差不多就是这样了!

osh3o9ms

osh3o9ms5#

如果所有其他方法都失败了,您可以删除当前分支,然后直接从master重新创建它。

git branch -D develop
git checkout master
git checkout -b develop
7gyucuyw

7gyucuyw6#

我有点晚了,但是,在将我的dev分支合并到master并推送到服务器之后,我做了以下操作:
第一个月
git checkout development
git merge origin/master
git push
dev分支比master分支提前一个提交,其他开发人员不必担心development分支中的所有提交都被重置。

相关问题