GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。
与SVN最大的区别就在于它是分布式版本管理系统,而SVN是集中式版本管理系统。
今天公司安排前辈给我们讲解下gitlab,这篇博客就是一篇整理。
基本用法:
1.特性:存储快照,而非新旧文件的区别。
- git命令
clone 项目地址 克隆项目
git init 初始化
add 文件名 创建文件
commit -m‘’ 补充一些信息。 注意空格 。
commit –amend 修改之前commit提交的信息
push –set-upstream origin master 连接远端并push.
push 提交
pull 合并代码,pull有fetch和diff两个操作。
pull –rebase 推荐
分支切换
branch create-py 新建分支
checkout create-py 切换分支
vim hello.py 新建文件
add . 加入所有文件
checkout - 返回之前分支
merge create-py merger分支到主干
stash 存储当前分支
stash pop 解开当前分支某一个文件,多个文件,多次pop
checkout -b nice-java 创建并切换该分支。
分支命名:
feature
hotfix
refactor
enhance
eg: feature/hello_java
workflow 工作流
mast
dev
test
release
merge request 和 rebase 变基