当前位置: 首页 > news >正文

【Git】git企业开发命令整理,以及注意点

1.git企业开发过程

业务的分支大概有以下几个:

master:代码随时可能上线

develop:代码最新

feature/xxx:实际业务开发分支

release/xxx:预发布分支

fix:修复bug分支

过程大概是这样的:

首先拉取远程仓库,切换到自己得分支进行开发本地feature/xxx,开发完成后,commit进行提交到本地,切换到本地develop,pull 下远程的develop,然后merge feature/xxx into develop,将本地develop push到远程的develop,发布测试QA,QA测试通过后,切换到本地master,pull 下远程的master,本地master得到最新master代码,将本地feature/xxx的代码merge into master中,然后将本地master代码push到远程的master。版本预发布,等等。

注意点:

①比如本地的master,根据本地的master切换出一个分支feature/login,修改完代码后没有commit,那么又直接checkout master,会造成本地feature/login上的代码自动合并到本地master上,所以写完代码后需要提交commit。

②在develop或者master分支 拉取后,合并代码后,需要再pull下远程的代码,

pull = fetch+merge

因为可能会有其他同学push了最新的代码,如果不pull,可能会造成冲突,还有可能造成覆盖远程的代码。

2.基本命令以及注意点如下:

# 配置用户名
git config --global user.name "test"# 配置邮箱
git config --global user.email "email"# 查看用户名
git config --global user.name# 查看邮箱
git config --global user.email# 查询配置
git config --global --list# 生成公钥
ssh-keygen -t rsa# 本地仓库初始化
git init # 修改或新增代码,添加到本地代码暂存区,工作区->暂存区
# 提交单个文件到暂存区
git add a.txt# 提交所有的文件到暂存区
git add .# 本地版本生成,提交,暂存区->本地仓库,每次commit,都会有一个版本记录的生成
git commit -m "提交文件内容说明"# 查看文件的状态, unstaged未暂存,staged已暂存
git status# 查看提交日志
git log[option]# 显示所有分支
git log --all--pretty=oneline  #将提交信息显示为一行--abbrev=commit   #使得输出的commitId更简短--graph           #以图的形式显示git log --pretty=oneline --abbrev-commit --all --graph# vim 编辑文件
vim 文件名# 版本回退,切换
git reset --hard commitID# 查看已经删除的文件记录
git reflog# 一些文件不想让git管理,创建.gitignore
touch .gitignore
vim .gitignore #将不需要管理的文件以及后缀输入# 关于HEAD HEAD指向谁,谁就是当前分支
有多个分支,只能对一个分支进行修改,这个分支称为当前分支。工作区看到的就是当前分支。 
是当前分支引用的指针,它总是指向某次commit,默认是上一次的commit。git 是如何知道你当前在哪个分支上工作的呢?其实答案也很简单,它保存着一个名为 HEAD 的特别指针。在 git 中,它是一个指向你正在工作中的本地分支的指针,可以将 HEAD 想象为当前分支的别名。# 查看分支
git branch # 新创建一个分支
git branch 分支名# 切换分支
git checkout 分支名# 创建并切换分支
git checkout -b 分支名  # 合并分支,比如合并到master,首先切换到master
git checkout mastergit merge dev01# 删除分支,-d需要做各种检查
git branch -d 分支名# 做强制删除
git branch -D 分支名# git冲突解决,
# 同一个文件的同一行
# HEAD 到 ==== 指向的是当前分支,
# ===== 到 >>>> dev是冲突分支
<<<<<<< HEAD
count=2
=======
count=1
>>>>>>> dev# 开发中使用的流程与原则# 连接到远程gitee
ssh -T git@gitee.com# 告诉本地远程仓库是哪一个
git remote add origin(远程仓库别名) 远程仓库地址
git remote add origin git@gitee.com:catchcode11/git_test.git# 查看远程仓库
git remote# 将本地代码推到远程仓库
git push origin 远程分支名
git push origin master(远程分支如果是master,那么后面的:master可以省略)# 将本地分支推到远程分支
git push origin 本地分支名:远程分支名
git push origin master:master# 强制推送
git push -f origin 本地分支:远程分支# 查看本地分支和远程分支的对应关系
git branch -vv# 
git remote -vv # 绑定本地分支和远程分支
git push --set-upstream origin master:master# 以下是设置的对应关系
$ git push --set-upstream origin master:master
Everything up-to-date
branch 'master' set up to track 'origin/master'.$ git branch -vvdev    c0cc516 update file03.txt count=1 dev
* master 15b61e1 [origin/master] git merge conflict# 克隆远程仓库到本地ssh
git clone <仓库路径> [本地目录]# 从远程仓库拉取代码到本地
# 抓取指令:将仓库的更新拉取到本地,但是不进行合并
git fetch [remote name][branch name]
git fetch origin/master# 拉取命令,就是将远程仓库的修改拉取到本地并进行合并,等同于fetch+merge
git pull [remote name][branch name]
git pull origin master# 在push到远程之前,先pull下远程仓库,把冲突解决掉。
git pull origin master,有conflict,在本地解决冲突。

http://www.lryc.cn/news/101556.html

相关文章:

  • 使用Django自带的后台管理系统进行数据库管理的实例
  • leetcode解题思路分析(一百四十五)1254 - 1266 题
  • 使用 GORM 连接数据库并实现增删改查操作
  • kafka集群搭建(Linux环境)
  • 树莓派本地快速搭建web服务器,并发布公网访问
  • 集合中的数据结构
  • CentOS 8 错误: Error setting up base repository
  • java外观模式
  • 3秒快速打开 jupyter notebook
  • 数据安全
  • 华为nat64配置
  • 从分片传输到并行传输之大文件传输加速技术
  • mybatisPlus入门篇
  • NineData支持最受欢迎数据库PostgreSQL
  • Redis配置类
  • 【前端知识】React 基础巩固(三十六)——RTK中的异步操作
  • 33. 本地记事本
  • Android Glide预处理preload原始图片到成品resource 预加载RecyclerViewPreloader,Kotlin
  • 亚马逊云科技全新Amazon Bedrock,助力客户构建生成式AI应用
  • 题解:ABC275 C-Counting Squares
  • 加载已训练好的目标检测YOLOv8,v5,v3,v6模型,对数据集中某张图片中的object打上方框、标出类别,并将图片保存到本地
  • 《零基础入门学习Python》第073讲:GUI的终极选择:Tkinter10
  • Shell脚本实现分库分表操作
  • 区块链实验室(12) - 网络拓扑对PBFT共识流量的影响
  • 聊聊这几年的科技风口
  • 【力扣每日一题】2023.7.30 环形链表2
  • Flink状态的理解
  • 6.3.tensorRT高级(1)-yolov5模型导出、编译到推理(无封装)
  • 如何利用设备数字化平台推动精益制造?
  • 使用Wps减小PDF文件的大小