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
七、一句话总结开发流程
创建分支 开发代码 提交代码 推送远程 提交合并请求