公司gitlab开发

  • Workspace:工作区

  • Index / Stage:暂存区

  • Repository:仓库区(或本地仓库)

  • Remote:远程仓库

git常用命令

#  下载一个项目和它的整个代码历史

$   git clone [url]

#  下载一个项目且指定分支

$   git clone -b [分支名] [url]

#  显示有变更的文件

$   git status

#  添加当前目录的所有文件到暂存区

$   git add .

#  列出所有本地分支

$   git branch

#  列出所有远程分支

$   git branch -r

#  新建一个分支,并立即切换到该分支

$   git checkout -b [branch]

#  提交暂存区到仓库区

$   git commit -m "message"

#  取回远程仓库的变化,与本地分支合并

$   git pull origin [url]

#  上传本地指定分支到远程仓库

$   git push origin [url]

#  显示当前分支的版本历史

$   git log

#  显示暂存区和工作区的差异

$   git diff

 

gitlab上的开发流程

一,开发

1,在gitlab上创建分支A

2,在自动化更新平台创建分支A的静态资源端口,告诉php端口号

3,在分支A开发完提交到远程分支A,在自动化平台上更新分支A静态资源端口

二,提测

1,在分支A上进行bug修改

三,上线到预生产主干

1,在gitlab上发起请求合并分支A到分支develop

2,合并完成后,在自动化更新平台上更新到pre

四,上线

1,在自动化更新平台点项目上线(分支develop合并到了分支release)

2,发上线邮件

3,上线完成后在gitlab上合并分支release到master

合并到master时,并指派给项目owner(或Review)

 1.提交 Merge Request 后, 被指派人可通过 @someone 邀请一个或多个额外的 Reviewer (它们会收到邮件通知)

 2.被邀请的 Reviewer 看过代码后, 可回复:thumbsup:+1表示通过, 反之给出修改建议。

# git 开发上线操作流程

git 检出地址分为 http 和 ssh 的方式。
使用ssh在配置ssh-key(配置方式参考官网说明文档)之后的操作可以不用输入用户名和密码。

## 命令行操作
全局配置:
提交代码的log里面会显示提交者的信息
git config --global user.name [username]
git config --global user.email [email]

注意: 此处一般是在第一次使用git的时候去设置或者想要修改配置信息的时候设置。
如果是基于原有业务开发的话, 直接新建一个目录进行一下操作。

### 1. 创建分支并检出分支
git clone 项目地址(ssh)

    git clone -b develop  项目地址(下拉develop)
git checkout feature-xxx(分支名称)

### 2. 拉取最新代码
在当前分支目录
git pull 
拉取制定分支
git pull origin feature-xxx(分支名称)

### 3. 修改提交代码
检出代码并做了修改之后:
git status (查看当前修改状态)
- 提交修改到本地仓库
git add . ("."表示提交当前目录下所有的修改)
git add xxx (提交指定目录)
git add -a (提交所有修改)
git commit -m "修改的注释信息"(一定要详细)

### 4. 推送到远程分支
git push origin feature-xxx

### 5. 代码合并(以把feature -xxx 合并到 develop 为例)
1) git pull origin feature-xxx (合并之前做一次更新,以免有新的修改)
2) git checkout develop

3)git pull develop 
4) git merge feature-xxx
合并之后如果有冲突, 在控制台会给出冲突文件,解决冲突之后再去提交推送。

### 6. 冲突的解决方式
在git pull / git push / git maerge 的时候,如果两个分支对代码都有修改的
情况下会有冲突。控制台会输出对应的冲突文件,找到对应的文件进行修改,修改完之后再去走add , commit , push。


### 7. 代码回滚
git log (可以查看所有的提交历史记录,可以带参数,具体使用详情自行搜索)
回滚的操作允许回滚到制定的提交版本:
git reset --hard [要回滚的版本hash版本号]

原文地址:https://www.cnblogs.com/webrqy/p/6183942.html