美文网首页学习Git使用GIT
前端常用的git工作流 git完整使用流程

前端常用的git工作流 git完整使用流程

作者: 爱学习的小仙女早睡早起 | 来源:发表于2021-09-02 16:19 被阅读0次

    前端所有的git使用场景和命令都在这里啦,持续更新~~~

    安装 git

    要检查是否安装了Git,在cmd终端运行:

    $ git version
    git version 2.27.0.rc1.windows.1
    

    配置 git

    我们只需要配置一些东西

    git config --global user.name "前端xx"           # 你的名字
    git config --global user.email  xx@qq.com     # 你的邮箱
    

    name和email对应上就设置好了
    提交到github 电脑git要登github账号; 提交到gitlab 电脑git要登gitlab账号

    自己上传新项目代码到仓库

    git创建仓库,并提交代码(第一次创建并提交)

    git init     //把这个目录变成Git可以管理的仓库
    git add README.md   // 文件添加到仓库
    // 不但可以跟单一文件,还可以跟通配符,更可以跟目录。
    git add .       // 一个点就把当前目录下所有未追踪的文件全部add了 
    git commit -m "first commit"    //把文件提交到仓库
    git remote add origin url.git       // 关联远程仓库       https方式
    // 例如:git remote add origin git@github.xxx/practice.git
    git push -u origin master       //把本地库的所有内容推送到远程库上
    

    第一次提交本地仓库到远程,使用密钥SSH的方式

    在个人中心的密钥设置中,填入自己电脑的密钥

    git init
    git add .    // 全部文件提交到暂存区,后续改动可以追踪文件的变化
    git commit -m "first commit"   // 提交到本地仓库
    git remote add origin SSH地址         // 关联远程仓库       SSH方式
    git push -u origin master  // 将本地库推送到远程
    

    从仓库克隆新项目代码到本地

    git  clone  github.xxx/practice.git
    

    git clone代码之后 远程分支有很多,怎么把远程分支弄下来

    git fetch
    git checkout -b feature origin/feature     // 把feature弄下来  本地feature对应远程feature
    

    远程别人新建了分支,本地怎么切换分支

    git fetch
    git checkout -b feature origin/feature
    

    从远程仓库中拉一个本地不存在的分支:
    git checkout -b 本地分支名 origin/远程分支名
    该命令会创建一个本地分支并,并与远程分支关联,并自动切换到这个本地分支。

    别人新建的分支,你看不到,想要拉到本地来

    别人新建了分支branch2   
    
    git branch -a   // 查看所有分支:本地分支和远程分支
    git fetch origin branch2   //  把远程的branch2抓下来  这个抓下来只是能看到分支
    git branch -a   //   此时就能看到branch2   
    git checkout -b branch2 origin/branch2   // 把远程的branch2代码搞下来
    
    相关的还有以下命令
    
    1. 刷新远程分支的命令行:git remote update origin -p 
    
    2. 抓取远程分支,需要切换:git fetch origin branch_name
    
    3. 本地分支与远程分支相关联,便于git pull, git push ,  
    使用 git branch --set-upstream-to=origin/<branch>
    
    

    关于分支

    查看远程分支: git branch -a
    查看本地分支:git  branch
    创建分支:git  branch  <name>         // <name>是分支名
    切换分支:git  checkout  <name>
    创建+切换分支:git  checkout  -b  <name>
    合并某分支到当前分支:git  merge  <name>      // 把其他分支合并到master后,还要git push
    删除本地分支:git  branch  -d  <name>
    



    image.png

    新建分支, 你创建一个新分支并提交

    git branch -a  // 查看所有分支:本地分支和远程分支
    git branch 新分支
    git checkout 新分支   // 切换到新分支上
    git branch -a  // 查看新分支是否建成功
    git push --set-upstream origin  新分支    // 把新分支提交到代码库 别人也能看见
    

    你创建一个新分支,指定推送到远程某分支

    git branch -b  task         //  新建task分支 并切换到task分支
    // ......代码开发完成后,此时我在task分支
    // 依旧要先git add .  和 git commit -m "这里写提交的是什么内容"
    git push origin  task    // 将所在的分支指定推送到task
    git push origin  major    // 将所在的分支指定推送到major 
    
    // .......又做了一些开发
    git push origin  task    // 将所在的分支指定推送到task
    // 这样每次提交都要把分支带上   因为本地的task没又和远程的task关联上
    
     git branch --set-upstream-to=origin/<taskBranch>  // 将本地分支与taskBranch关联上
    // 关联后就可以直接git push了
    
    // 推荐第一次提交新创建的分支,用 git push --set-upstream origin  新分支 这种方式,第一次就关联上了
    
    

    删除分支

    删除本地分支  git branch -d dev
    删除远程分支 git push origin --delete branch,    该指令也会删除追踪分支
    

    修改分支名字

    1. 本地分支重命名(还没有推送到远程)
    git branch -m oldName newName
    
    
    
    2. 远程分支重命名 (已经推送远程-假设本地分支和远程对应分支名称相同)
    a. 重命名远程分支对应的本地分支
    git branch -m oldName newName
    
    b. 删除远程分支
    git push --delete origin oldName
    
    
    c. 上传新命名的本地分支
    git push origin newName
    
    d.把修改后的本地分支与远程分支关联 
    git branch --set-upstream-to origin/newName
    

    合并分支

    git  merge  <name>    // 合并某分支到当前分支 
    git push   // 把合并后的内容整个分支一起提交
     //  例如: 把其他分支合并到master后,还要git push
    

    关于撤销操作

    git add的撤销:git reset
    git commit的撤销:git commit --amend  撤销提交到本地版本库
    git push的撤销: git reset --soft HEAD~1
    git merge取消合并: git merge --abort
    
    
    git 合并已提交,撤销合并:
        git reset --soft:
              将分支回退到指定提交,工作区维持现状不变,暂存区会在现有基础上增加该commit之后的提交。
    
        git reset --mixed: 
             (默认操作)将分支回退到指定提交,暂存区也被同步为该指定提交,工作区保持不变。
    
        git reset --hard: 
              将分支回退到指定分支,暂存区和工作区都会被同步为该指定的提交。
    

    git提交前报eslint错误 提交忽略eslint

    git commit --no-verify -m "提交时的注释"
    

    追加修改到最后一次commit

    适用对最后一次提交失误的地方进行修改,提交后而不产生新的commit记录

    追加修改到最后一次commit
    第一步:修改文件 然后git add指定的文件 (注意对文件只需要add不需要commit)
    第二步:git commit --amend
    第三步:输入 r
    第四步:输入 :wq  回车
    第五步:推送到远程: git push --force
    

    修改上一次提交的备注信息

    第一步:git commit --amend
    第二步:输入 e
    第三步:修改提交的备注信息
    第四步:按esc键
    第五步:输入 :wq  回车
    第六步:推送到远程: git push --force
    

    git 合并远程仓库上多个提交记录

    • 将最后两次提交记录去掉,最后两次的提交内容归到倒数第三次提交上
    第一步:git reset --soft HEAD~2   
    第二步:git commit --amend
    第三步:按esc键
    第四步:输入 :q  回车
    第五步:推送到远程: git push --force
    
    • 将最后两次提交记录,归结到一次新的提交记录上
    第一步:git reset --soft HEAD~2   
    第二步:git commit -m "这次提交包含了之前最后两次的内容"
    第三步:推送到远程: git push --force
    

    vscode装的好用的git插件:

    git graph
    git history
    git lens

    电脑配置多个git账号

    控制面板\所有控制面板项\凭据管理器

    持续更新中.....

    相关文章

      网友评论

        本文标题:前端常用的git工作流 git完整使用流程

        本文链接:https://www.haomeiwen.com/subject/neqmiltx.html