开发需求:因为QT项目是支持Windows和Ubuntu两个操作系统的代码,为了开发方便,配合代码版本管理需要,先在Windows操作系统下开发完项目基本功能,之后提交代码到GitLab,最后在Ubuntu系统下进行下载,调整开发。鉴于项目中很多第三方库文件需要不同平台下的编译版本,因此先将项目拆解成windows版和ubuntu版,之后可以采取合并分支和代码功能进行提交。
操作条件:
1、架设私有的gitlab服务器,假设可以通过网址http://gitlab.test.com访问登录
2、新建项目qtproject/qtproject-test,在项目下新建windows分支和ubuntu分支。
3、windows下提交qtproject-test到服务器
实现目标:
1、在Ubuntu18.04系统下获取最新的项目代码,提交到ubuntu分支下,后续可以进行在Ubuntu18.04操作系统下的QT开发调试工作。
2、完成Ubuntu下的开发工作后,提交代码到服务器的ubuntu分支。
详细步骤:
1、下载代码到本地
xqf222@xqf222:~/QtCode$ git clone -b windows 'http://gitlab.test.com/qtproject/qtproject-test.git'
正克隆到 'qtproject-test'…
输入帐号:
Username for 'http://gitlab.test.com': xiangqingfeng
输入密码:
Password for 'http://xiangqingfeng@gitlab.test.com':
remote: Enumerating objects: 1030, done.
remote: Total 1030 (delta 0), reused 0 (delta 0), pack-reused 1030
接收对象中: 100% (1030/1030), 29.35 MiB | 688.00 KiB/s, 完成.
处理 delta 中: 100% (245/245), 完成.
2、查看分支
xqf222@xqf222:~/QtCode$ git branch -a
3、切换目录
xqf222@xqf222:~/QtCode$ cd qtproject-test/
4、查看分支
xqf222@xqf222:~/QtCode/qtproject-test$ git branch
* windows
5、建立新的本地分支ubuntu
xqf222@xqf222:~/QtCode/qtproject-test$ git branch ubuntu
6、查询所有分支
xqf222@xqf222:~/QtCode/qtproject-test$ git branch -a
ubuntu
* windows
remotes/origin/HEAD -> origin/main
remotes/origin/main
remotes/origin/ubuntu
remotes/origin/windows
7、切换到本地ubuntu分支
xqf222@xqf222:~/QtCode/qtproject-test$ git checkout ubuntu
切换到分支 'ubuntu'
8、添加项目代码到ubuntu分支
xqf222@xqf222:~/QtCode/qtproject-test$ git add .
9、提交本地分支代码注释
xqf222@xqf222:~/QtCode/qtproject-test$ git commit -m 'ubuntu18.04下的项目代码'
位于分支 ubuntu
无文件要提交,干净的工作区
10、映射本地分支到服务器分支
xqf222@xqf222:~/QtCode/qtproject-test$ git remote add origin http://gitlab.test.com/qtproject/qtproject-test.git
fatal: 远程 origin 已经存在。
11、推送本地分支ubuntu代码到服务器分支ubuntu
xqf222@xqf222:~/QtCode/qtproject-test$ git push -u origin ubuntu
Total 0 (delta 0), reused 0 (delta 0)
remote:
remote: To create a merge request for ubuntu, visit:
remote: http://gitlab.test.com/qtproject/qtproject-test/-/merge_requests/new?merge_request%5Bsource_branch%5D=ubuntu
remote:
To http://gitlab.test.com/qtproject/qtproject-test.git
4ee1d11..1cb3bce ubuntu -> ubuntu
分支 'ubuntu' 设置为跟踪来自 'origin' 的远程分支 'ubuntu'。
12、进入GitLab服务器后台http://gitlab.test.com,查询提交qtproject/qtproject-test项目下的ubuntu分支代码,发现代码成功提交到服务器,操作完成。