GitLab 常用 Git 命令新手指南

gitlab在团队合作里面十分重要,下面是我在项目里遇到的最常用的git命令。

一、核心开发规范

在团队开发中,必须遵守以下原则:

1.禁止直接在 master 等公共分支开发

2.所有开发必须在个人分支完成

3.开发完成后通过 Merge Request 合并

这样可以避免代码冲突和污染主分支


二、日常开发常用命令

1. 获取代码

克隆仓库

复制代码
git clone git@gitlab.com:username/project-name.git

指定分支克隆

复制代码
git clone -b dev git@gitlab.com:username/project-name.git

拉取最新代码(自动合并)

复制代码
git pull
git pull origin master

推荐方式(更安全)

复制代码
git fetch origin
git merge origin/dev

2. 分支操作

创建并切换分支

复制代码
git checkout -b feature/user-login

或

复制代码
git switch -c feature/user-login

切换分支

复制代码
git switch master

查看分支

复制代码
git branch
git branch -a

删除分支

复制代码
git branch -d feature/user-login
git push origin --delete feature/user-login

合并分支

复制代码
git switch master
git merge feature/user-login

3. 提交代码

查看状态

复制代码
git status

查看改动

复制代码
git diff
git diff --cached

添加文件

复制代码
git add 文件
git add 目录

提交代码

复制代码
git commit -m "提交说明"

修改最近一次提交

复制代码
git commit --amend -m "新的提交说明"

推送代码

复制代码
git push -u origin 分支名

查看日志

复制代码
git log --oneline
git log --graph --oneline --all

4. 撤销操作

撤销未添加的修改

复制代码
git restore 文件名

撤销已 add

复制代码
git restore --staged 文件名

撤销提交

复制代码
git reset --soft HEAD~1
git reset --hard HEAD~1

临时保存代码

复制代码
git stash
git stash pop

三、标准开发流程

这是日常开发最推荐的流程:

复制代码
git clone git@gitlab.com:username/project-name.git

cd project-name

git checkout -b feature/xxx

git status
git add .
git commit -m "功能说明"

git push -u origin feature/xxx

然后在 GitLab 提交 Merge Request


四、日常同步主分支

为了避免冲突,需要经常同步主分支:

复制代码
git switch master
git pull origin master

git switch feature/xxx
git rebase master

五、rebase 冲突处理

当出现冲突时:

复制代码
git add 冲突文件
git rebase --continue

放弃操作:

复制代码
git rebase --abort

六、rebase 使用说明

作用:

1.同步主分支代码

2.保持提交历史整洁

3.减少无用 merge

整理提交记录:

复制代码
git rebase -i HEAD~4

注意事项:

只在个人分支使用

不要在公共分支使用

rebase 后需要强制推送:

复制代码
git push -f

七、一句话总结开发流程

创建分支 开发代码 提交代码 推送远程 提交合并请求

相关推荐
YIN_尹1 小时前
【git原理与使用】git基本操作及底层原理(二)
大数据·git·elasticsearch
北京云帆互联科技2 小时前
云帆培训考试系统更新说明:v9.3.0
java·学习
sxlishaobin4 小时前
Maven Setting详解
java·学习·maven
程序员爱德华7 小时前
Git 命令
git
Cry丶20 小时前
Git Rebase 操作备忘
git·rebase
li星野1 天前
相位补偿学习记录:把被颅骨“打乱“的声波重新对齐
学习
Z21-X1 天前
云原生运维学习笔记:ECShop全链路容器化部署与Docker底层资源隔离深度剖析
运维·笔记·学习·云原生
red_redemption1 天前
自由学习记录(230)
学习
你叶不叶1 天前
abap git 如何从 gitee上在线拉取数据(上一步已经配置好证书)
git·gitee·sap·abapgit
晓梦林1 天前
BUUCTF-菜刀流量-MISC-学习笔记
笔记·学习