我想知道是否有人可以向我解释如何将GIT合并到一个新的分支,然后清除master以获得master clean工作目录。
换句话说:主人 - > PHP,因为master现在将拥有Python。
答案 0 :(得分:3)
如果还没有人克隆你的回购,那么一个解决方案就是:
PHP
分支,其中master当前为Python
提示请参阅:
git checkout master
git branch PHP
git checkout Python
git checkout -B master Python
git checkout -b|-B <new_branch> [<start point>]
此表单通过更新索引,工作树和
HEAD
来切换分支,以反映指定的分支或提交。如果给出
-B
,则创建<new_branch>
(如果它不存在);否则,它被重置。这是
的交易等价物
$ git branch -f <branch> [<start point>]
$ git checkout <branch>
但是如果其他人克隆了你的回购,你需要重置master的内容,保留所有以前的提交。
对于不存在的merge -s theirs
(你丢弃当前内容并将其替换为另一个分支,如巡回案例中的Python
),这将是一个很好的案例:
有关详情,请参阅“git command for making one branch like another”
(首先通过PHP
当前master
所在的PHP
分支开始,如上所述:该位不会发生变化,并标记{{1}}更新需要从现在开始的位置)
答案 1 :(得分:1)
“主人”只是一个名字。这是默认设置,但没有什么神奇之处。
您可以使用git branch -m master PHP
然后检查您正在调用“干净”的任何历史提交(使用git log
来确定),然后git branch master
在此时创建一个主分支。