diff --git a/Modified_git_default_branch.md b/Modified_git_default_branch.md new file mode 100644 index 0000000..67150fb --- /dev/null +++ b/Modified_git_default_branch.md @@ -0,0 +1,65 @@ +# Reset git服务器的操作记录 + +## 操作背景 + +由于对master主分支执行git merge命令(merge的分支中有问题),需要将maser主分支git reset到merge之前的状态。故进行操作修改并记录。 + +## 操作方法 + +操作前需在本地保有applications库4.2/daily-build分支 + +第一,浏览器登录gitlab.rd.in.linx服务器进行操作: + +1.创建新分支备份。在applications库下,选择commits中的Branches,点击“NEW BRANCH”创建新分支(4.2/daily-build的备份分支,分支名daily-build-backup)。 + +2.修改默认保护设置。点击Settings设置->“Protected Branches”,将daily-build-backup添加到保护列表,取消4.2/daily-build的保护。 + +3.切换默认主分支。点击Settings设置->“Project Settings",修改Default Branch,将4.2/daily-build改为daily-build-backup + +第二,本地操作4.2/daily-build分支: + +1.更新本地applications库的4.2/daily-build分支。执行git pull,获取4.2/daily-build的最新状态。 + +2.将远程服务器的4.2/daily-build分支删除。执行git push origin :4.2/daily-build + +3.将本地4.2/daily-build分支回复到merge之前的状态。使用git log查看,然后获取到需reset到的commit号,执行git reset ”commit号“。 + +4.将4.2/daily-build提交到远程服务器。执行git push origin 4.2/daily-build:4.2/daily-build + +最后,修改服务上的分支保护及默认主分支: + +1.修改默认保护设置。点击Settings设置->“Protected Branches”,将4.2/daily-build添加到保护列表。 + +2.切换默认主分支。点击Settings设置->“Project Settings",修改Default Branch,将daily-build-backup改回4.2/daily-build。 + +##用户使用注意 + +经过以上修改后,其他用户在本地使用时,git push可能会出现问题。 + +若有问题,可进行如下操作,重新创建本地4.2/daily-build分支。操作示例如下: + +``` +rocky@linx:~/applications$ git branch + 4.2/2494 + 4.2/2499 + 4.2/2512 + 4.2/2517 + 4.2/2535 + 4.2/2561 +* 4.2/daily-build +rocky@linx:~/applications$ git checkout -b 4.2/daily-build-new remotes/origin/4.2/daily-build +分支 4.2/daliy-build-new 设置为跟踪来自 origin 的远程分支 4.2/daily-build。 +切换到一个新分支 '4.2/daliy-build-new' +rocky@linx:~/applications$ git branch + 4.2/2494 + 4.2/2499 + 4.2/2512 + 4.2/2517 + 4.2/2535 + 4.2/2561 + 4.2/daily-build +* 4.2/daily-build-new +rocky@linx:~/applications$ git branch -D 4.2/daily-build +已删除分支 4.2/daily-build(曾为 597f901)。 +rocky@linx:~/applications$ git checkout -b 4.2/daily-build remotes/origin/4.2/daily-build +```