将git-svn主分支重新指向trunk

Sco*_*ein 9 git-svn

我不确定我是如何进入这种状态的,但我master在本地git-svn repo上的分支似乎指向远程UAT分支.

git status
# On branch master nothing to commit (working directory clean)
git svn dcommit Committing to https://svn...com/MyRepo/branches/UAT ...
Run Code Online (Sandbox Code Playgroud)

我该如何解决?

me_*_*and 5

你要解决的是你的本地"主"分支是基于远程UAC分支,而不是远程主干.如果你很高兴丢失你的提交,你可以简单地运行下面的,这将检查主干,然后将主分支移动到你当前的点.

git checkout remotes/trunk
git checkout -B master
Run Code Online (Sandbox Code Playgroud)

如果你不想丢失你的提交,那么git rebase你的朋友.使用以下:

git rebase $(git merge-base remotes/UAC master) master --onto remotes/trunk
Run Code Online (Sandbox Code Playgroud)

这将解决UAC分支和本地主分支的公共父节点,从那里将所有提交到主分支的尖端到主干上,然后将主分支移动到那里.