部署gitlab,模拟开发流程。

安装gitlab

yum install https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-12.5.2-ce.0.el7.x86_64.rpm

配置

vim /etc/hosts

将所在主机以及对应的ip地址写入

 

vim /etc/gitlab/gitlab.rb

将external_url变量的地址修改为gitlab所在地址

 

 重新加载配置内容。

gitlab-ctl reconfigure

gitlab-ctl restart

查看日志:

# gitlab-ctl tail

建议gitlab机器内存>=4G

在web上登录界面

 

Gitlab邮箱配置

修改配置文件

vim /etc/gitlab/gitlab.rb

 重新加载配置

gitlab-ctl reconfigure

#测试配置是否成功

# gitlab-rails console

 使用流程

1. 账号申请

2. 客户端安装

3. SSH key使用

4. 新建项目规则

5. 项目检出check

6. 创建分支branch

7. 代码提交Commit

8. 代码拉取Pull

9. 代码推送Push

10. 代码标签tag

11. 代码冲突解决

12. 创建忽略文件

13. Git Flow实战

创建组

 创建成员

 加入组

 客户端安装   

创建一个win10的虚拟机

安装git,安装过程略。   

 然后安装TortoiseGit。

生成SSHkey。     创建一个SSH Key,在任意文件夹下点击右键,选择 Git GUI Here。在弹出的程序中选择主菜单的【Help】→【Show SSH Key】

 如果没有Key,则点击“Generate Key”生成一个SSH Key:

Gitlab 配置SSH keys。 打开Gitlab登录自己的账户, 1.进入用户设置, 找到SSHkeys 2.点击右侧 Add SSH Key 3.输入上一步生成的key 4.点击Add key 即添加成功一个key

添加

继续添加用户bob和tom,开发人员 

新建项目规则     创建新项目:创建一个属于dev组的项目app1 

 新建项目规则     为项目创建master

新建项目规则     项目经理制定开发计划--创建里程碑

 新建项目规则     项目经理制定开发计划--分配任务

 创建一些议题

项目检出 以tom为例: 这里只是需要把TortoiseGit设置网络里面的ssh客户端位置C:\Program Files\TortoiseGit\bin\TortoiseGitPlink.exe,修改成成git安装目录下的ssh.exe即可。如果你安装过程已经选择了使用OpenSSH方式我想这里也应该不用修改了。不然拉取等操作的时候都会提示需要输入密码。 

 

项目检出 以tom为例:

 创建分支和切换分支 以tom为例:

 

 提交

发出请求合并 以tom为例:登录gitlab

确认请求合并 pm登录后确认合并请求 

关闭任务 pm关闭任务

拉取 tom再次开发,需要pull获取最新版本库

 

Gitlab备份与恢复 

备份管理 配置文件中加入:

# vim /etc/gitlab/gitlab.rb

gitlab_rails['backup_path'] = '/data/backup/gitlab'

gitlab_rails['backup_keep_time'] = 604800

如果自定义备份目录需要赋予git权限

mkdir /data/backup/gitlab -p

chown -R git.git /data/backup/gitlab

重置配置:gitlab-ctl reconfigure

设定计划任务: 定时任务Crontab中加入

0 2 * * * /usr/bin/gitlab-rake gitlab:backup:create

策略建议:本地保留三到七天,在异地备份永久保存

手动备份测试:gitlab-rake gitlab:backup:create

# ls /data/backup/gitlab/

1576053273_2019_12_11_12.5.2_gitlab_backup.tar

注意:gitlab.rb 和 gitlab-secrets.json 两个文件包含敏感信息。未被备份到备份文件中。需要手动备份

恢复管理

停止数据写入服务

gitlab-ctl stop unicorn

gitlab-ctl stop sidekiq

gitlab-rake gitlab:backup:restore

BACKUP=1576053273_2019_12_11_12.5.2

# date -d @1576053273

2019年 12月 11日 星期三 16:34:33 CST

备份tar包一定要放到备份路径下。恢复是删除原有数据,恢复备份tar包中的数据。

如果是在其他服务器恢复备份,一定要记得将 gitlab.rb 和 gitlab-secrets.json 手动复制到相应路径下。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在性能测试、功能测试、兼容性测试、安全性测试、稳定性测试和用户管理界面开发中,以下是一个技术可控性分析的示例: 1. 性能测试的技术可控性分析: - 选择适当的性能测试工具,如Apache JMeter或LoadRunner,以便能够模拟高并发访问和大量数据处理。 - 针对数据库查询优化和索引设计,使用合适的技术和查询语句,以提高系统的响应时间和处理能力。 - 使用缓存技术,如Redis或Memcached,以减轻数据库负载,提高系统的性能和响应速度。 - 采用负载均衡技术,如Nginx或HAProxy,以实现水平扩展和分布式部署,以增加系统的容量和可扩展性。 2. 功能测试的技术可控性分析: - 选择适当的自动化测试框架和工具,如Selenium或Cypress,以提高测试效率和可重复性。 - 使用Mock对象或模拟器来模拟外部依赖,以减少对真实环境的依赖,增加测试的可控性。 - 采用持续集成和持续交付(CI/CD)技术,如Jenkins或GitLab CI/CD,以自动化测试流程部署过程,确保功能的稳定性和一致性。 3. 兼容性测试的技术可控性分析: - 使用跨浏览器测试工具,如BrowserStack或Selenium Grid,以确保系统在不同浏览器和版本上的兼容性。 - 采用响应式设计和移动优先策略,以确保系统在不同设备和屏幕尺寸上的适配性和可用性。 - 使用适当的CSS预处理器,如Sass或Less,以提高样式表的可维护性和兼容性。 4. 安全性测试的技术可控性分析: - 使用漏洞扫描工具,如Nessus或OpenVAS,以发现系统中的安全漏洞和弱点。 - 应用安全编码规范和最佳实践,如OWASP Top 10,以防止常见的安全漏洞,如跨站脚本攻击(XSS)或SQL注入。 - 实施访问控制和身份验证机制,如OAuth或JWT,以确保只有授权用户可以访问敏感数据和功能。 5. 稳定性测试的技术可控性分析: - 使用监控和日志分析工具,如ELK Stack或Prometheus,以实时监测系统的性能和稳定性指标,并进行故障排查和性能优化。 - 实施故障恢复机制,如备份和恢复策略、容错和冗余机制,以确保系统在故障情况下的可用性和恢复能力。 6. 用户管理界面开发的技术可控性分析: - 使用现代前端框架,如React或Vue.js,以提高开发效率和用户界面的交互性。 - 采用响应式设计和可访问性标准,以确保用户界面在不同设备和用户需求下的可用性和易用性。 - 使用UI组件库或UI设计规范,如Ant Design或Material Design,以确保用户界面的一致性和可维护性。 通过对以上技术可控性的分析,可以选择适当的技术和工具,以满足性能、功能、兼容性、安全性、稳定性和用户界面开发的要求,并确保系统的质量和可靠性。同时,还需要考虑到团队的技术能力和项目需求,以做出合适的技术选择。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值