可能重复:
使当前Git分支成为主分支
我的Git存储库中有两个分支:
masterseotweaks(最初创建master)我创建seotweaks的目的是迅速将其合并回来master.然而,那是三个月前,这个分支的代码是13个版本master.
它已经有效地成为我们的工作主分支,因为现在所有的代码master或多或少已经过时了.
我知道非常糟糕的做法,经验教训.
你知道如何master用那些替换分支的所有内容seotweaks吗?
我可以删除所有内容master并合并,但这不是最佳实践.
如果有一个我只有git://访问权限的存储库(并且通常只是push + pull),有没有办法以与我本地相同的方式重命名该存储库中的分支git://?
我有4个像主人一样的分支 - > origin/regacy,FeatureA - > origin/FeatureA.
如上所示,我键入了错误的名称.
所以我想重命名一个远程分支名称(origin/regacy => origin/legacy或origin/master)
我试着在下面命令:
git remote rename regacy legacy
Run Code Online (Sandbox Code Playgroud)
但是git console向我返回了错误消息.
error : Could not rename config section 'remote.regacy' to 'remote.legacy'
Run Code Online (Sandbox Code Playgroud)
我怎么解决这个问题?
我只是使用重命名我的本地分支
git branch -m oldname newname
Run Code Online (Sandbox Code Playgroud)
但这只会重命名分支的本地版本.如何在github中重命名一个?
有没有办法在本地重命名Git分支并将其推送到远程分支,即使已经有很多提交推送到远程分支?
或者,是否有必要创建新的本地分支,删除旧的本地分支,然后在远程存储库上重复该操作?
我们都听过一个人应该重订,从未发表的作品,它的危险,等等.但是,我还没有看到张贴如何处理的情况下衍合情况的任何食谱被出版.
现在,请注意,只有存储库仅由已知(并且最好是很小)的人群克隆,这才真正可行,这样无论谁推送rebase或重置,都可以通知其他人他们下次需要注意的时候取(!).
如果你没有本地提交foo并且它被重新定位,我看到的一个明显的解决方案将起作用:
git fetch
git checkout foo
git reset --hard origin/foo
Run Code Online (Sandbox Code Playgroud)
foo根据远程存储库,这将简单地抛弃本地状态以支持其历史记录.
但是,如果一个人在该分支机构进行了大量的本地更改,那么如何处理这种情况呢?
我在GitHub上找到了一个我想要分叉的存储库 - 但不是当前的版本.
我想分配回购,因为它有很多提交回来 - 这可能吗?回购没有标记任何版本,所以我不知道如何做到这一点.我可以显然复制代码,因为它在那个提交中,但我更愿意分叉,然后我得到链接回原始的回购.
我创建了一个本地分支X,在某些时候我推送到远程服务器(原点)
git push origin X
Run Code Online (Sandbox Code Playgroud)
我意识到将分支命名为X并希望它被称为Y是一个坏主意.问题是我已经将分支推送到了存储库.
从服务器上删除它并将其推送到这样的新名称是否安全?
push origin :X
// 'clone ' the branch under a new name locally ( X-> Y)
push origin Y
Run Code Online (Sandbox Code Playgroud)
已经从服务器获取的人将会发生什么.假设他们已经根据旧的X名称在本地创建了一个分支,但他们没有在本地进行任何更改,也没有将它们推送到旧X分支的服务器上.
我不确定我是如何进入这种状态的,但我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)
我该如何解决?
git ×8
git-branch ×4
rename ×3
github ×2
branch ×1
git-rebase ×1
git-reset ×1
git-svn ×1
merge ×1
rebase ×1
repository ×1