From bf4d3037181ce5e6fd8525adc0c2ff75211b25c0 Mon Sep 17 00:00:00 2001 From: "Xu, Shunxuan" Date: Wed, 18 Nov 2015 09:49:44 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0reset=E8=BF=9C=E7=A8=8B?= =?UTF-8?q?=E6=9C=8D=E5=8A=A1=E5=99=A8git=E4=B8=BB=E5=88=86=E6=94=AF?= =?UTF-8?q?=E5=88=B0merge=E5=89=8D=E7=8A=B6=E6=80=81=E7=9A=84=E6=93=8D?= =?UTF-8?q?=E4=BD=9C=E7=BA=AA=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 新文件: Modified_git_default_branch.md Signed-off-by: Xu, Shunxuan --- Modified_git_default_branch.md | 65 ++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 Modified_git_default_branch.md 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 +```