• git之工作中实际应用篇(非常适合刚到公司上班但是git不太熟又不好意思问同事的友友)


    前言

    此篇用于记录笔者在工作中用到git遇到的问题及大部分的操作。

    区别于理论,这篇更具针对性,掌握这些,基本的面试及工作足以应对。

    之前还写过一篇理论篇,是最基础的一些知识,供参考:

    git保姆级教程(概述、理论、指令、创建及代码初始化完整步骤、分支与冲突、遇到的问题)

    当你刚到一个公司

    刚到一个公司,我们需要拉取代码,这个时候,需要用到克隆。

    git clone xxx
    
    • 1

    在远程仓库复制url,就可以克隆项目。但只是原封不动的把代码拿了下来。一般拿到的都是该项目的主分支master。

    想要看到当前分支,我们可以用到:

    git branch
    
    • 1

    看到自己所在分支,加入我们要拉取最新分支,有多种途径。一般情况下,我们需要先建立一个本地分支,再拉取远程分支。

    有一步到位的做法:

    git checkout -b dev origin/devYuan
    
    • 1

    origin左侧是我们建立的一个本地分支,origin右边则是我们需要拉取的远程分支。

    到这一步,我们的代码拉取下来,并且也与新的分支建立了联系。

    写代码,交自己的分支

    我们拉下代码后,在本地分支自己的代码上做了修改。怎么提交?

    首先,我们需要让本地暂存我们的修改:

    git add .
    
    • 1

    如果要提交,则:

    git commit -m '注释'
    
    • 1

    在commit中,一般情况下一定要写注释。可以把自己当天做的什么东西,用简短的文字一起提交。这个就是提交到了本地仓库

    如何推送到远程?如果你还没有推送过你的分支,你需要在远程建立一个新的分支,并且push代码:

    git push --set-upstream origin xxx
    
    • 1

    这一步做完,你就可以在远程仓库上看到你的最新分支了。注意,这个xxx是我们本地当前的分支。这个也可以通过刚刚讲过的git branch来查看。

    提交并推送了代码,但是有所更改

    刚刚我们已经在远程创建了一个分支,但是我们发现有一个地方有点问题,于是修改了代码。修改代码之后,我们再提交到远程分支,就不必像刚刚那样大费周折,直接:

    git push
    
    • 1

    就可以更新我们的远程分支。

    第二天拉取代码

    我们和同事用的是一个仓库,但是不同分支,大家有不同的版本,于是第二天,我们需要拉取同事的代码。

    但是拉取代码,并不是说,自己写的那一部分就不要了。

    一般情况下,我们可以先,建立一个本地分支:

    git checkout -b xxx
    
    • 1

    创建了一个本地分支,然后拉取同事的代码:

    git pull origin xxx(同事的分支名)
    
    • 1

    拉下来之后,git可能会报错,是因为有冲突。冲突,是因为我跟同事改的代码,改了一个地方,但是有两种写法,那么应该听谁的呢?这个时候就需要和同事商量,一般情况下,编译器中的工作树种都可以看到,比如我们的vscode。可以在上面进行选择。

    但是如果不想合并代码,想直接拉取该怎么办?这个时候我们就可以先提交到本地一版,先add,再commit。或者我们可以用到:

    git stash 
    
    • 1

    把现在的代码放到暂存区,这个时候我们就可以正常拉取同事的代码,并且自己写的代码也没有丢失了。

    切换分支

    假如我们本地有多个分支,但是要查看不同分支,就需要从这个分支切换到另一个分支,我用的最多的是:

    git checkout xxx
    
    • 1

    敲黑板,如果切换分支都报错,那么也需要走一遍add,commit流程,或者stash。大多都能解决问题。

    远程分支太多&&本地仓库太多

    如果是涉及到分支开发,那么可能一段时间内分支会有很多,这样的话其实会对效率有一些影响。所以每过一段时间,我们都需要清理本地分支,或者本地仓库。

    很简单,远程分支清理:

    git push origin --delete xxx
    
    • 1

    本地分支清理:

    git branch -d xxx
    
    • 1

    本地删除如果报错:

    git branch -D xxx
    
    • 1

    可以解决大部分问题。

    checkout检出失败的情况

    如果分支存在,但是检出失败,可能是因为,本地并没有及时更新分支。

    我们先来聊一下,如何更新本地查看远程分支时,远程分支是完整的,首先,本地查看远程分支:

    git branch -r
    
    • 1

    如果分支不全,那么检出是失败的,我们在本地更新一下:

    git fetch
    
    • 1

    之后就可以用上述聊到的git checkout…来正常检出了。

    未完待续

    以上是我在上班的时候,遇到问题,解决问题的一些方法,都总结在这里。刚来上班的我只懂理论,在git这条路上,探索了很多,也失败,着急了很多次,最后通过资料的搜索与学习,一点点学习到,尝试用,并熟练。
    在这里插入图片描述

    我知道后面我还会遇到很多问题,都会在这篇博客中记载。也欢迎大家关注,欢迎指正,有什么问题欢迎评论区一起交流!学习是永无止境的,祝大家渐入佳境!!

  • 相关阅读:
    如何解决msvcr100.dll丢失问题?5个实用的解决方法分享
    Parallels Desktop 19 for Mac(PD19虚拟机)详细图文安装教程分享
    小学生python游戏编程arcade----游戏界面按钮实现事件实现的三种方法
    机器学习:人工智能的子领域之一
    Javaweb之HTML,CSS的详细解析
    HarmonyOS学习--三方库
    UniVue更新日志:使用ObservableList优化LoopList/LoopGrid组件的使用
    UE5 局域网联机,寻找会话失败。
    【数组的中心位置】python实现-附ChatGPT解析
    【Redis】Hash类型
  • 原文地址:https://blog.csdn.net/zxdznyy/article/details/132886306