Насколько я понимаю, вы хотите сделать две вещи:
- У вас есть текущая точка ветвления
master
на dev
- Есть пустая ветвь
master
.
Решение:
Переименуйте master
в dev
Хороший способ, как упоминали другие друзья.создайте новую ветку из последней master
, удалите master
и заново создайте новую master
.
git stash //save your current changes.
git pull // pull latest changes.
git checkout master //switch branche to master
git checkout -b dev // create new branch from master
git branch --set-upstream dev origin/dev //add tracking to new branch
git push //push new dev branch to server
- Иметь пустую ветку
master
.
Я думаю, что другие друзья поняли это по-другому, пожалуйста, дайте мне знать, что было полезно.
Как я понимаю, вы хотите, чтобы ваша ветка master
указывала на ваш первоначальный коммит (первый коммит наваш репозиторий), чтобы вы могли только выпустить слияния на вашем master
. Для этого вам нужно выполнить три шага:
Find first commit.
Delete old `master` branch. (it easier this way)
Have new `master` from first commit.
Вот как, я бы это сделал.
Найти первый коммит.
git log --reverse --oneline // top commit will be your first one. Copy it's hash (i.e.#1234)
Удалить старую master
ветку
Не забудьте переключить текущую ветвь на dev
.Вы не можете удалить ветку, в которой находитесь.
git branch -d master // delete local master branch
git push origin :master //delete remote master, this will be safe as we have a copy
Создать новую ветку master
из первого коммита.
git checkout -b #1234 // remember #1234 is your first commit id.
git branch --set-upstream master origin/master //add tracking to new branch
Пожалуйста, прости меня за плохое форматирование.
Счастливое кодирование