刚进公司,如何优雅的使用git?

2023-10-28 05:40
文章标签 使用 优雅 git 公司 刚进

本文主要是介绍刚进公司,如何优雅的使用git?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、前言

实习的时候,组内的大佬让我们去下载公司的代码去看,并且要求使用非master分支(如next分支)进行开发,当时我和另外两个应届的同学都去尝试拉分支,结果发现拉下来的都不next分支,而是master分支,后来通过查找资后知道一种好的直接拉取指定分支的办法,在这里,我想记录下一些重要的地方,不会叙述太多git的知识点。

二、准备工作

1、下载git(windos)工具,配置好邮箱和用户名,并生成你自己的公钥。(密钥生成可见:https://blog.csdn.net/csdn_blog_lcl/article/details/53172885)
2、我们在自己的工作目录新建一个文件夹project,用来存放我们的项目。

三、git克隆分支的方式介绍

当你进入到公司的git类网站上,会发现一般提供了两种克隆分支的方式:
1、SSH方式,可以免密登录,git拉取代码和提交分支都可以免密,但是要去git网站上配置SSH Key,添加自己生产的公钥。
2、HTTPS方式:可以不用去git网站上配置SSH Key,但是克隆、提交和拉取分支代码都需要输入用户名和密码,比较麻烦(新手推荐用这个)。

四、如何克隆指定分支?

以next分支为例,git地址为HTTPS方式为例,方便讲解。
1、打开之前建好的project文件夹,右键选择Git Bash Here,弹出git窗口
2、初始化本地仓库:git init
3、关联远程仓库:git remote add origin “HTTPS地址”
在这里插入图片描述
我红色划掉的部分就是HTTPS地址啦,复制下来。
4、拉取指定next分支:git clone -b next “git地址”
上面命令中的-b(branch)就是克隆的时候指定分支。
如果此时你是在git网站上添加了密钥,并且git地址是SSH方式的地址,那么可以直接克隆下来。如果你用的是HTTPS方式,你就需要输入用户名密码进行克隆。

五、如何优雅的在分支上开发?

刚克隆下来的next分支在本地也叫next,通常我们不建议直接在这个分支上开发,而是新建一个分支。
1、git checkout -b next-dev (创建并切换到next-dev分支上)
2、我们可以在next-dev上愉快的写我们的代码,写完后可把代码提交到本地仓库:
(1)、git add . (".“的意思就是保存添加所有修改到暂存区)
(2)、git commit -m “注释” (将暂存区中的修改提交到本地仓库)
3、开发完成后我们可将next-dev分支合并到本地next分支上:
(1)切换到本地next分支:git checkout next (切换分之前,需要先在next-dev上commit更改到本地仓库)
(2)本地next分支更新:git pull origin next (当你合并分支的时候,可能其他同事又提交了新的内容)
(3)在本地next分支上去合并next-dev分支:git merge next-dev。(若分支合并出现冲突,这里推荐使用idea集成git工具在idea中去合并冲突,因为比较方便的就能查看到冲突代码块)
4、提交本地next到远程next: git pull origin next:next (”:“前面的是本地分支的名字,”:"后面的是远程分支的名字)

六、为什么不直接在本地next分支上开发,而另创一个next-dev分支呢?

当你直接在本地next分支上开发时,考虑这样的一个场景:测试或者产品火急火燎的告诉你线上出了一个小bug你需要马上修改掉,这个bug很快就能解决,但是你的本地next分支还处于开发状态(甚至是编译都不能通过的状态,你需要注释你的修改或者再去重新拉一个next分支修改bug(这多慢呀!))。但是当你只是在next-dev分支上开发时,你只需提交当前修改并切换到本地next分支上去修改就行了,修改完后切换next-dev继续开发即可。

七、常用命令

初始化本地仓库:git init
本地仓库关联远程仓库:git remote add origin “git 地址”
查看已关联的仓库:git remote -v
切换关联仓库(如想要从HTTPS方式的关联仓库切换到SSH方式关联的仓库):
(1)、取消关联:git remote remove origin
(2)、重新关联:git remote add origin “git SSH方式的地址”
查看所有的分支:git branch -a
更新分支列表(当你不能查看到完整的分支列表时):git fetch
切换分支:git checkout 分支名
创建分支:git branch 分支名
强制删除分支(可删除当前分支):git branch-D 分支名
非强制删除分支(不可删除当前分支):git branch -d 分支名
创建并切换到新分支:git checkout -b 分支名
克隆远程仓库的项目代码:git clone “远程仓库地址”
克隆远程仓库指定分支的代码:git clone “远程仓库地址”
拉取远程分支:git pull 远程分支
提交变更到本地仓库:git commit -m “修改信息注释”:
将你的分支推到远程仓库:git push origin “本地分支名”:远程分支名
撤销本地commit:
(1)、git log 查看commit_id
(2)、git reset --hard commit_id
查看当前仓库的状态(你修改了哪些,哪些保存到了本地仓库,哪些没有):git status
查看提交历史:git log

八、注意事项

1、提交前先git pull是一个好习惯,更新别人提交的代码,避免冲突。
2、为防止我们的误操作,如不小心按到键盘在配置文件中多加了一个字母。我们可以使用idea中的git compare去查看本地分支与远程分支中的差异,确定都是我们自己的正确修改后再提交。
3、分支切换前需要先commit保存修改到本地仓库,不然切换不会成功,强行切换会导致当前分支被覆盖。
4、在git里面总是有后悔药吃的,所以大胆搞,出错了大不了回滚。

这篇关于刚进公司,如何优雅的使用git?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/291057

相关文章

中文分词jieba库的使用与实景应用(一)

知识星球:https://articles.zsxq.com/id_fxvgc803qmr2.html 目录 一.定义: 精确模式(默认模式): 全模式: 搜索引擎模式: paddle 模式(基于深度学习的分词模式): 二 自定义词典 三.文本解析   调整词出现的频率 四. 关键词提取 A. 基于TF-IDF算法的关键词提取 B. 基于TextRank算法的关键词提取

使用SecondaryNameNode恢复NameNode的数据

1)需求: NameNode进程挂了并且存储的数据也丢失了,如何恢复NameNode 此种方式恢复的数据可能存在小部分数据的丢失。 2)故障模拟 (1)kill -9 NameNode进程 [lytfly@hadoop102 current]$ kill -9 19886 (2)删除NameNode存储的数据(/opt/module/hadoop-3.1.4/data/tmp/dfs/na

Hadoop数据压缩使用介绍

一、压缩原则 (1)运算密集型的Job,少用压缩 (2)IO密集型的Job,多用压缩 二、压缩算法比较 三、压缩位置选择 四、压缩参数配置 1)为了支持多种压缩/解压缩算法,Hadoop引入了编码/解码器 2)要在Hadoop中启用压缩,可以配置如下参数

Makefile简明使用教程

文章目录 规则makefile文件的基本语法:加在命令前的特殊符号:.PHONY伪目标: Makefilev1 直观写法v2 加上中间过程v3 伪目标v4 变量 make 选项-f-n-C Make 是一种流行的构建工具,常用于将源代码转换成可执行文件或者其他形式的输出文件(如库文件、文档等)。Make 可以自动化地执行编译、链接等一系列操作。 规则 makefile文件

使用opencv优化图片(画面变清晰)

文章目录 需求影响照片清晰度的因素 实现降噪测试代码 锐化空间锐化Unsharp Masking频率域锐化对比测试 对比度增强常用算法对比测试 需求 对图像进行优化,使其看起来更清晰,同时保持尺寸不变,通常涉及到图像处理技术如锐化、降噪、对比度增强等 影响照片清晰度的因素 影响照片清晰度的因素有很多,主要可以从以下几个方面来分析 1. 拍摄设备 相机传感器:相机传

pdfmake生成pdf的使用

实际项目中有时会有根据填写的表单数据或者其他格式的数据,将数据自动填充到pdf文件中根据固定模板生成pdf文件的需求 文章目录 利用pdfmake生成pdf文件1.下载安装pdfmake第三方包2.封装生成pdf文件的共用配置3.生成pdf文件的文件模板内容4.调用方法生成pdf 利用pdfmake生成pdf文件 1.下载安装pdfmake第三方包 npm i pdfma

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

git使用的说明总结

Git使用说明 下载安装(下载地址) macOS: Git - Downloading macOS Windows: Git - Downloading Windows Linux/Unix: Git (git-scm.com) 创建新仓库 本地创建新仓库:创建新文件夹,进入文件夹目录,执行指令 git init ,用以创建新的git 克隆仓库 执行指令用以创建一个本地仓库的

【北交大信息所AI-Max2】使用方法

BJTU信息所集群AI_MAX2使用方法 使用的前提是预约到相应的算力卡,拥有登录权限的账号密码,一般为导师组共用一个。 有浏览器、ssh工具就可以。 1.新建集群Terminal 浏览器登陆10.126.62.75 (如果是1集群把75改成66) 交互式开发 执行器选Terminal 密码随便设一个(需记住) 工作空间:私有数据、全部文件 加速器选GeForce_RTX_2080_Ti

【Linux 从基础到进阶】Ansible自动化运维工具使用

Ansible自动化运维工具使用 Ansible 是一款开源的自动化运维工具,采用无代理架构(agentless),基于 SSH 连接进行管理,具有简单易用、灵活强大、可扩展性高等特点。它广泛用于服务器管理、应用部署、配置管理等任务。本文将介绍 Ansible 的安装、基本使用方法及一些实际运维场景中的应用,旨在帮助运维人员快速上手并熟练运用 Ansible。 1. Ansible的核心概念