• git的使用流程及git命令总结


    一、git的基本流程

    1、从远端拉取要开发的代码

     git clone  项目git地址链接

    2、新建分支

    git checkout -b  分支名

    3、开发代码

    • 改版本号
    • 写代码

    注:改版本号

    (1)前端---package.json中版本+1

    (2)后端--pom.xml文件中版本+1

    • 非release分支---版本号一般格式为【版本号-分支名-SNAPSHOT
    • release分支--直接版本号
    • 为了版本号防止在多个pom文件中改漏,可以先在一个主pom文件中修改,然后利用命令统一更新【  mvn -N versions:update-child-modules】    

    4、将开发代码存到暂存区

    git add 文件路径   //上传具体的某个修改的文件

    git add .   //上传所有修改的文件

    5、将开发代码提交到本地git仓库

    git commt -m "本次提交的描述"

    6、检查是否有同分支的开发冲突

    git pull origin 分支名  //将远端别人push上去的代码拉下来对比一下是否有冲突

    7、将代码推到远端仓库

    git push origin 分支名   //push到远端

    二、git命令总结

    (一)常用命令详解

    1、git clone

    • git clone  远端库项目URL    //将远端项目拉至本地仓库的当前目录下
    • git clone 远端库项目URL   本地目录名   //将远端项目拉至本地仓库的指定目录下

    2、git checkout

    • git checkout -b  分支名   //基于当前分支拉一个新分支,有就切换至该分支,没有就创建一个名为此的分支
    • git checkout  分支名       //切至某个分支
    • git checkout  某文件路径   //忽略某个修改后的文件

    注:git checkout -b 一般用于创建新分支

           git checkout   一般用于切换已有分支

    举例: 

    •   git checkout -b f1 remotes/origin/master    //将远端master分支拉至本地并创建本地f1 分支(只能继承远端master分支现有的内容)
    • git checkout -b f1.  //基于当前分支拉一个f1分支(可以继承当前分支的所有内容)
    • git checkout -b relases 1.0.0  //基于当前分支创建一个release分支
    • git checkout  f1   //从当前分支切换到已有的f1分支上

    3、git status

    •  作用:查看当前修改了的文件
    • git add前,git status得到的修改了的文件状态为红色
    • git add 后但未commit,git status得到的修改了的文件状态为绿色

    4、git add

    • git add . //提交所有修改的文件

    • git add *.java  //提交所有java后缀的修改的文件

    • git add 具体文件路径   //提交某个修改的文件

    注:git add 前可以git status查看修改了哪些文件一下

    4、git commit

    • git commit   //提交代码到本地git仓库,这样运行会跳到一个编辑写提交注释的页面
    • git commit   -m  “提交注释”   //一步到位,不仅提交代码到本地git仓库还添加了提交注释

    注:若进入编辑页面,添加注释步骤如下

    • 先输入一个i代表insert输入
    • 然后输入相应注释,比如:添加了某功能(中英文都行,推荐英文)

    • 按【esc】退出编辑模式

    • 输入:wq      保存并退出     :q! 表示强制退出)

    5、git merge

    • git merge 分支名   //将本地仓库某分支合并到本地分支
    • git merge origin/分支名  //将远程仓库某分支合并到本地分支

    注:谁合并谁以当前所在分支为准,均是将其他的分支合并到当前分支

            当前项目分支为f1,git merge release1.1.0   就是将1.0.0合并到f1

            当前项目分支为release1.0.0,git merge f1   就是将f1合并到1.0.0

    6、git pull

    • git pull     //相当于gitgit fetch + git merge ,将远程的该分支的内容拉到本地并合并到本地分支

    • git pull origin 分支名  //也可以这么写

    注:提交代码前先pull一下,避免多人协作冲突(在自己修改过程中远程有新的更新)

           有冲突的话,进入冲突的文件查看,再和合作人check一下

           也可以起到从远端拉最新代码的作用

    7、git push

    • giit push   //提交代码到远程仓库,这种容易出现远程分支与本地分支没有建立关联情况

    • git push origin 本地分支名   //将本地创建的分支提交到git远程仓库中去,这样可避免上面问题

    8、git branch

    •  git branch  //查看当前所处分支
    • git branch --set-upstream-to=origin/远程分支名 本地分支名    //将远程分支与本地新建的分支关联起来(解决上面git push本地远程分支没有关联问题l)


    9、git diff

    • git diff  文件1相对路径 文件2相对路径  //展示文件1与文件2的区别(修改了哪些内容)

    注:

    • 绝对路径:/ 从根目录开始的   如:/home/a/
    • 相对路径:相对当前目录开始的  如,当前在根目录则  home/a/

    10、git log

    • git log //查看commit记录
    • git log | grep 该分支最后提交的号   //查看当前分支是否merge过某分支
    •  git log --graph --decorate --oneline --all  //展示每一次commit在哪些分支中

    •  git reflog --date=local | grep 分支名   //展示每一个操作的内容及时间,可用于查看分支基于哪个分支拉的

    11、git reset

    •  git reset HEAD    //撤回所有add的代码
    • git reset HEAD  某文件   //撤回该文件add的代码
    • git reset  版本号 //撤回commit的代码回滚到该版本

    (二)易混相近命令解析

    1、git clone和git fetch区别

        详见:https://www.cnblogs.com/tangxuliang/p/11950995.html

    2、git reset HEAD和git reset 区别

          git reset HEAD   //撤回add的代码

          git reset   //撤回commit的代码

    参考:

    https://blog.csdn.net/wangkai6666/article/details/120810363

    https://blog.csdn.net/a303015136/article/details/103371690

  • 相关阅读:
    腾讯mini项目-【指标监控服务重构-会议记录】2023-07-06
    浅克隆和深克隆的详细教程~
    《JavaSE-第十九章》之Collection
    ssm+jsp黄梅戏曲艺剧团管理系统
    移知丨一个芯片工程师的ADC学习笔记 (一)
    剑指 Offer II 039. 直方图最大矩形面积
    mac版微信小程序反编译学习
    Spring Boot + Vue的网上商城之基于用户的协同过滤的商品推荐实现
    详解VC++动态链接库中的结构成员规则与调用约定
    【机器学习】python机器学习使用scikit-learn对模型进行微调:使用RandomizedSearchCV对pipline进行参数选择
  • 原文地址:https://blog.csdn.net/qq_44641527/article/details/126733594