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

news2024/11/24 20:53:17

目录

  • 前言
  • 当你刚到一个公司
  • 写代码,交自己的分支
  • 提交并推送了代码,但是有所更改
  • 第二天拉取代码
  • 切换分支
  • 远程分支太多&&本地仓库太多
  • checkout检出失败的情况
  • 未完待续

前言

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

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

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

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

当你刚到一个公司

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

git clone xxx

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

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

git branch

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

有一步到位的做法:

git checkout -b dev origin/devYuan

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

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

写代码,交自己的分支

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

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

git add .

如果要提交,则:

git commit -m '注释'

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

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

git push --set-upstream origin xxx

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

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

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

git push

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

第二天拉取代码

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

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

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

git checkout -b xxx

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

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

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

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

git stash 

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

切换分支

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

git checkout xxx

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

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

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

很简单,远程分支清理:

git push origin --delete xxx

本地分支清理:

git branch -d xxx

本地删除如果报错:

git branch -D xxx

可以解决大部分问题。

checkout检出失败的情况

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

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

git branch -r

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

git fetch

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

未完待续

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1009761.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

无涯教程-JavaScript - FALSE函数

描述 FALSE函数返回逻辑值FALSE。 语法 FALSE () 争论 FALSE函数没有参数。 Notes 您还可以在工作表或公式中直接键入FALSE单词,Microsoft Excel会将其解释为逻辑值FALSE。 提供FALSE功能主要是为了与其他电子表格程序兼容。 适用性 Excel 2007,Excel 2010,Excel 2013…

【用unity实现100个游戏之11】复刻经典mirror消消乐游戏

文章目录 前言开始项目开始一、方块网格生成二、方块交换三、添加交换的动画效果四、水平消除检测五、垂直消除检测六、完善删除功能七、效果优化(移动方块后再进行消除检测)八、方块下落十、方块填充十一、后续 源码参考完结 前言 欢迎来到经典消消乐游…

数据清洗:数据挖掘的前期准备工作

⭐️⭐️⭐️⭐️⭐️欢迎来到我的博客⭐️⭐️⭐️⭐️⭐️ 🐴作者:秋无之地 🐴简介:CSDN爬虫、后端、大数据领域创作者。目前从事python爬虫、后端和大数据等相关工作,主要擅长领域有:爬虫、后端、大数据…

释放潜能!RunnerGo:性能测试的全新视角

在数字化时代,性能测试已成为企业持续发展的关键一环。但面对繁杂的工具和流程,很多企业却陷入了无从选择的困境。现在,一款名为RunnerGo的全新性能测试工具正悄然崭露头角。 RunnerGo,一款由国内开发者自主研发的全栈式性能测试…

最新模块化设计小程序系统源码完整版:开源可二开,支持DIY

随着互联网的快速发展,小程序已成为各行各业开展业务的重要工具。而模块化设计小程序系统源码完整版则是一种高效、灵活、易维护的解决方案。 分享一个最新的模块化设计小程序系统源码完整版,源码开源可二开,支持自由DIY设计,含完…

华为云新用户:定义,优惠券及专享活动

在当今的数字化时代,云计算已成为企业与个人的必备服务。华为云,作为全球领先的云计算服务提供商,吸引了众多新用户的关注。本文将详细介绍华为云新用户的定义、优惠券及专享活动相关内容,帮助大家更好地了解华为云新用户优惠政策…

win10win11截图技巧——不用安装其他截图工具或者运行其他截图工具,就可以截图,win10和win11可用

快捷键shift wins可以调出来windows自带的截图工具。 测试了一下win10和win11都可以用。 可以截图的方式有: 1,全屏截图, 2,窗口截图, 3,任意截图, 4,画矩形截图 以下内容来自…

算法竞赛入门【码蹄集新手村600题】(MT1280-1300)C语言

算法竞赛入门【码蹄集新手村600题】(MT1280-1300)C语言 目录MT1281 N的M次方MT1282 Disarium数MT1283 区间Disarium数MT1284 快乐数MT1285 忠实数MT1286 忠实数序列MT1287 ASCII值MT1288 谁在说谎MT1289 调和级数不等式MT1290 级数MT1291 级数IIMT1292 某级数MT1293…

一百七十七、Hive——海豚调度执行Hive的.sql文件

一、目的 对于Hive数仓,每一层的建库建表SQL语句都各自放在一个.sql文件里,然后用海豚调度执行一下Hive的.sql文件 二、实施步骤 (一)第一步,上传.sql文件到海豚调度器上 (二)第二步&#xf…

分享一个java技术开发的springboot线上问卷调查可视化系统源码 lw 调试

💕💕作者:计算机源码社 💕💕个人简介:本人七年开发经验,擅长Java、Python、PHP、.NET、微信小程序、爬虫、大数据等,大家有这一块的问题可以一起交流! 💕&…

帝国CMS的Sitemap网站地图生成插件下载及教程

具体使用方法: 第一步:解压下载 stitemap 压缩包; 第二步:修改config.php里的网址为自己的网址。 1、如果网站站点是响应式的直接选择pc即可。 2、如果电脑站和手机站不一样则都需要修改。 第三步:将解压出的“sitema…

4.docker容器编排(docker compose 与 docker swarm)

本文目录 1.容器编排2.Docker Compose1.Docker Compose 安装2.Docker Compose 示例1.使用 docker-compose 启动 nginx2.docker compose 常用命令3.校验 docker-compose.yml 是否有错误4.创建服务&#xff0c;启动容器5.弹性伸缩<扩缩容> 3.Docker Swarm1.Swarm 架构图2.S…

华为云云耀云服务器实例管理域名

目录 域名概述 通过域名访问网站流程 域名注册、解析和备案的关系 域名解析 如何修改 域名概述 部署一个网站或Web应用后&#xff0c;若要使该网站能够在Internet上通过域名直接访问&#xff0c;需要为网站注册域名、备案以及配置解析。 通过域名访问网站流程 1、注册域…

虚拟电影 故事板创作 Frameforge Studio 4.0.6 Crack

虚拟电影工作室 故事板创作 Frameforge Storyboard Studio 4.0.6 是一个功能齐全的故事板程序&#xff0c;由著名导演及其要求共同创建。该软件将节省大量的时间&#xff0c;金钱和头痛&#xff0c;如果你是一个导演&#xff0c;在电影行业工作或VFX主管-这就是你要找的&#x…

小程序分销商城功能展示;

很多客户想要搭建自己的小程序商城&#xff0c;各家公司报价也是从几百到几千都不等&#xff0c;那么商城小程序开发到底需要多少钱呢&#xff1f;商城小程序一般要做哪些功能呢&#xff1f; 1、商品展示 一个商城型小程序&#xff0c;商品展示功能是必须要有的&#xff0c;这…

全球与中国BGO晶体市场:增长趋势、竞争格局与前景展望

BGO晶体&#xff0c;全名为Bismuth Germanate Scintillation Crystal&#xff08;铋锗酸盐闪烁晶体&#xff09;&#xff0c;是一种用于探测放射性粒子和射线的闪烁晶体材料。它的主要成分是铋氧化物&#xff08;Bi4Ge3O12&#xff09;&#xff0c;其中铋和锗的特性使得这种晶体…

用 Canvas 画简易手电筒

本文章适合人群: 具备 html、js 基础的人对于想入门 canvas 的人 本文章较为简单&#xff0c;大佬可略过 实验结果 一个跟随着鼠标移动的圆圈。 教学 要实现一个动态手电筒效果&#xff0c;我们可以使用Canvas来绘制一个黑色的遮罩层&#xff0c;并通过鼠标或触摸事件来控…

JLink更新固件成砖头的QA

问题&#xff1a;用了新版的keil&#xff0c;更新固件后不能用了&#xff0c;怎么办啊 插上Jlink之后&#xff0c;驱动提醒您更新最新的V11版本固件&#xff0c;然后点了更新&#xff0c;更新结束之后/重新上电之后&#xff0c;Jlink的灯会变成红色闪烁5次然后变绿色&#xff0…

本地项目上传至码云gitee

1、springboot-mgx是需要上传的项目 2、码云后台创建一个新的仓库 3、创建完成后&#xff0c;复制下来https链接&#xff0c;后面要用到。 4、进入项目要上传的文件中 5、对git进行初始化&#xff0c;git指令 git init 6、 上传项目至gitee &#xff08;1&#xff09;连接远…

热烈祝贺润物成功入选航天系统采购供应商库

经过航天系统采购平台的严审&#xff0c;湖北润物食品有限公司成功入选中国航天系统采购供应商库。航天系统采购平台是航天系统内企业采购专用平台&#xff0c;服务航天全球范围千亿采购需求&#xff0c;目前&#xff0c;已有华为、三一重工、格力电器、科大讯飞等企业、机构加…